| 1 | OOPSVAL1 ;HINES/WAA,GTD-Validate and Sign data Routines ;3/25/98
|
---|
| 2 | ;;2.0;ASISTS;;Jun 03, 2002
|
---|
| 3 | ;;
|
---|
| 4 | ; Note: At EMP+18 added check to see if code being executed from
|
---|
| 5 | ; the broker. ASISTS V2.0
|
---|
| 6 | ;
|
---|
| 7 | EN1(CALLER) ; Main Entry Point
|
---|
| 8 | ;INPUT:
|
---|
| 9 | ; CALLER = "E" FOR EMPLOYEE
|
---|
| 10 | ; = "S" FOR SUPERVISOR
|
---|
| 11 | ; = "O" FOR SAFETY OFFICER
|
---|
| 12 | ; = "W" FOR WORKER'S COMP
|
---|
| 13 | ;
|
---|
| 14 | N SSN,IEN,SIGN,EDIT,FORM,GRP,SUP,I,CIT,HSA,STA,ZIP
|
---|
| 15 | S IEN=0
|
---|
| 16 | Q:DUZ<1
|
---|
| 17 | Q:$G(^VA(200,DUZ,1))=""
|
---|
| 18 | I CALLER="E" S SSN=$P(^VA(200,DUZ,1),U,9) Q:$D(^OOPS(2260,"SSN",SSN))<1
|
---|
| 19 | D Q:IEN<1
|
---|
| 20 | .N DIC,X
|
---|
| 21 | .S DIC="^OOPS(2260,"
|
---|
| 22 | .I CALLER="E" S DIC("S")="I $$EMPSCR^OOPSVAL1(Y)"
|
---|
| 23 | .I CALLER="S" S DIC("S")="I $$SUPSCR^OOPSVAL1(Y)"
|
---|
| 24 | .I CALLER="O" S DIC("S")="I $$SAFSCR^OOPSVAL1(Y)"
|
---|
| 25 | .I CALLER="W" S DIC("S")="I $$WCSCR^OOPSVAL1(Y)"
|
---|
| 26 | .S DIC("S")=DIC("S")_",'$$GET1^DIQ(2260,Y,51,""I"")"
|
---|
| 27 | .S DIC(0)="AEMNZ",DIC("A")=" Select Case: "
|
---|
| 28 | .D ^DIC
|
---|
| 29 | .Q:Y<1
|
---|
| 30 | .Q:$D(DTOUT)!($D(DUOUT))
|
---|
| 31 | .S IEN=$P(Y,U)
|
---|
| 32 | .Q
|
---|
| 33 | I CALLER="O" D
|
---|
| 34 | .S FORM="2162"
|
---|
| 35 | .D FORM
|
---|
| 36 | .Q
|
---|
| 37 | I CALLER="E" D
|
---|
| 38 | .S FORM=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 39 | .S FORM=$S(FORM=1:"CA1",FORM=2:"CA2",1:"")
|
---|
| 40 | .I FORM'="" D FORM
|
---|
| 41 | .Q
|
---|
| 42 | I CALLER="S" D
|
---|
| 43 | .N CNT,PAUSE,OUT,FORM,EDIT
|
---|
| 44 | .S (PAUSE,OUT)=0
|
---|
| 45 | .; Do block below needed so that for loop below only runs for "S"
|
---|
| 46 | .D
|
---|
| 47 | ..N INC,STAT,ESTAT
|
---|
| 48 | ..S INC=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 49 | ..S STAT=$$EDSTA^OOPSUTL1(IEN,"S")
|
---|
| 50 | ..; added check for employee having signed CA1
|
---|
| 51 | ..S ESTAT=$$EDSTA^OOPSUTL1(IEN,"E")
|
---|
| 52 | ..; if employee signed ok to let super select if no forms signed
|
---|
| 53 | ..I $P(ESTAT,U,INC) D
|
---|
| 54 | ...I '$P(STAT,U,INC),'$P(STAT,U,3) D SELECT^OOPSSUP1 Q
|
---|
| 55 | ...S EDIT=$S('$P(STAT,U,3):2162,'$P(STAT,U,INC):$P("CA1^CA2",U,INC),1:"")
|
---|
| 56 | ..I '$P(ESTAT,U,INC) D ; Employee has not signed CA1/CA2
|
---|
| 57 | ...I '$P(STAT,U,3) S EDIT=2162 Q
|
---|
| 58 | ...S EDIT=""
|
---|
| 59 | .I EDIT="" Q
|
---|
| 60 | .F CNT=1:1 S FORM=$P(EDIT,U,CNT) Q:FORM="" D:PAUSE END Q:OUT D
|
---|
| 61 | ..D FORM S PAUSE=1
|
---|
| 62 | ..Q
|
---|
| 63 | .Q
|
---|
| 64 | I CALLER="W" D
|
---|
| 65 | .S FORM=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 66 | .S FORM=$S(FORM=1:"CA1",FORM=2:"CA2",1:"")
|
---|
| 67 | . N DIR,Y
|
---|
| 68 | . S WOK=1
|
---|
| 69 | . W !
|
---|
| 70 | . S DIR("A")="OK to transmit to DOL"
|
---|
| 71 | . S DIR(0)="SBM^Y:Yes;N:No"
|
---|
| 72 | . D ^DIR
|
---|
| 73 | . I Y="Y",FORM'="" D FORM
|
---|
| 74 | .Q
|
---|
| 75 | EXIT ;
|
---|
| 76 | K SUP,WOK ; left over from ^OOPSDIS
|
---|
| 77 | Q
|
---|
| 78 | EMPSCR(IEN) ;
|
---|
| 79 | N VIEW
|
---|
| 80 | S VIEW=1
|
---|
| 81 | I '$$EMP^OOPSUTL1(IEN,SSN) S VIEW=0
|
---|
| 82 | E D
|
---|
| 83 | .N INC
|
---|
| 84 | .S INC=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 85 | .I $P($$EDSTA^OOPSUTL1(IEN,"E"),U,INC) S VIEW=0
|
---|
| 86 | .Q
|
---|
| 87 | Q VIEW
|
---|
| 88 | SUPSCR(IEN) ;
|
---|
| 89 | N VIEW
|
---|
| 90 | S VIEW=1
|
---|
| 91 | I '$$SUPSCR^OOPSUTL2(DUZ,IEN) S VIEW=0
|
---|
| 92 | E D
|
---|
| 93 | .N INC,STAT,ESTAT,CAT
|
---|
| 94 | .S CAT=$$GET1^DIQ(2260,IEN,2,"I") ; Personnel status
|
---|
| 95 | .S INC=$$GET1^DIQ(2260,IEN,52,"I") ; Injury/Illness
|
---|
| 96 | .S STAT=$$EDSTA^OOPSUTL1(IEN,"S") ; sup signed forms
|
---|
| 97 | .S ESTAT=$$EDSTA^OOPSUTL1(IEN,"E") ; emp signed forms
|
---|
| 98 | .; Added Non-PAID employee to check, not emp, 2162 signed
|
---|
| 99 | .; Patch 5 - logic changed for new Personnel Categories
|
---|
| 100 | .I '$$ISEMP^OOPSUTL4(IEN),$P(STAT,U,3) S VIEW=0 Q
|
---|
| 101 | .; super signed 2162 and CA1/CA2
|
---|
| 102 | .I $P(STAT,U,INC),$P(STAT,U,3) S VIEW=0 Q
|
---|
| 103 | .; emp not signed CA1/CA2, super signed 2162, not signed CA1/CA2 - no
|
---|
| 104 | .I '$P(ESTAT,U,INC),$P(STAT,U,3),'$P(STAT,U,INC) S VIEW=0 Q
|
---|
| 105 | .Q
|
---|
| 106 | Q VIEW
|
---|
| 107 | WCSCR(IEN) ; Patch 8 - Worker's Comp Screen
|
---|
| 108 | N INC,VIEW,ESTAT,STAT
|
---|
| 109 | S VIEW=1
|
---|
| 110 | S INC=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 111 | S ESTAT=$$EDSTA^OOPSUTL1(IEN,"E") ;really defensive code
|
---|
| 112 | I '$P(ESTAT,U,INC) S VIEW=0 ;should never be needed
|
---|
| 113 | S STAT=$$EDSTA^OOPSUTL1(IEN,"S") ;super must have signed
|
---|
| 114 | I '$P(STAT,U,INC) S VIEW=0
|
---|
| 115 | I $$GET1^DIQ(2260,IEN,66)'="" S VIEW=0 ;Case sent to DOL
|
---|
| 116 | I $$GET1^DIQ(2260,IEN,67)'="" S VIEW=0 ;WC already signed
|
---|
| 117 | I $$GET1^DIQ(2260,IEN,51,"I")'=0 S VIEW=0 ;Case is not open
|
---|
| 118 | I '$$ISEMP^OOPSUTL4(IEN) S VIEW=0 ;not employee
|
---|
| 119 | Q VIEW
|
---|
| 120 | SAFSCR(IEN) ;
|
---|
| 121 | N VIEW
|
---|
| 122 | S VIEW=1
|
---|
| 123 | I '$$SAFETY^OOPSUTL2(IEN) S VIEW=0
|
---|
| 124 | I $$EDSTA^OOPSUTL1(IEN,"O") S VIEW=0
|
---|
| 125 | Q VIEW
|
---|
| 126 | END ;End of Form pause
|
---|
| 127 | N DIR
|
---|
| 128 | W !
|
---|
| 129 | S DIR(0)="E" D ^DIR
|
---|
| 130 | S:$D(DIRUT) OUT=1 Q
|
---|
| 131 | Q
|
---|
| 132 | FORM ;Select Form
|
---|
| 133 | D:'$G(PAUSE,0) ^OOPSDIS
|
---|
| 134 | N OUT
|
---|
| 135 | I CALLER="E" D Q:$G(OUT)
|
---|
| 136 | . I $$GET1^DIQ(2260,IEN,71,"I")'="Y" D BOR^OOPSEMP1
|
---|
| 137 | . I $$GET1^DIQ(2260,IEN,71,"I")'="Y" D Q
|
---|
| 138 | .. W !?5,"Claim cannot be signed until the Bill of Rights Statement is understood."
|
---|
| 139 | .. D WCPBOR^OOPSMBUL(IEN)
|
---|
| 140 | .. S OUT=1
|
---|
| 141 | I '$G(OUT) D SIGN(FORM) Q:(+SIGN=0)
|
---|
| 142 | I CALLER="E",($$GET1^DIQ(2260,IEN,71,"I")="Y") D EMP
|
---|
| 143 | I CALLER="S" D SUP
|
---|
| 144 | I CALLER="O" D SAF
|
---|
| 145 | I CALLER="W" D WCP
|
---|
| 146 | Q
|
---|
| 147 | SIGN(FORM) ; Sign/validate Document
|
---|
| 148 | N EMP,INC,VALID,OUT
|
---|
| 149 | S VALID=0,SIGN=""
|
---|
| 150 | S INC=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 151 | D VALIDATE^OOPSUTL4(IEN,FORM,CALLER,.VALID)
|
---|
| 152 | I 'VALID D END Q
|
---|
| 153 | S SIGN=$$SIG^OOPSESIG(DUZ,IEN)
|
---|
| 154 | Q
|
---|
| 155 | EMP ; Employee Sign off
|
---|
| 156 | N RECORD,UNIREP,X,X1,X2
|
---|
| 157 | S UNIREP=""
|
---|
| 158 | S RECORD=$G(^OOPS(2260,IEN,"CA"))
|
---|
| 159 | S X=$P($G(^VA(200,DUZ,20)),U,2)
|
---|
| 160 | S X1=DUZ
|
---|
| 161 | I FORM="CA1" D
|
---|
| 162 | . I '$$BROKER^XWBLIB S $P(^OOPS(2260,IEN,"CA1ES"),U,1,3)=SIGN
|
---|
| 163 | . S X2=$$CA1SUM^OOPSUTL6()
|
---|
| 164 | I FORM="CA2" D
|
---|
| 165 | . I '$$BROKER^XWBLIB S $P(^OOPS(2260,IEN,"CA2ES"),U,1,3)=SIGN
|
---|
| 166 | . S X2=$$CA2SUM^OOPSUTL6()
|
---|
| 167 | D EN^XUSHSHP
|
---|
| 168 | S $P(RECORD,U,9)=1
|
---|
| 169 | S $P(RECORD,U,7)=X
|
---|
| 170 | S ^OOPS(2260,IEN,"CA")=RECORD
|
---|
| 171 | D EMP^OOPSMBUL(IEN)
|
---|
| 172 | ; patch 10 - bill of rights enhancement
|
---|
| 173 | I (CALLER="E")&('$$BROKER^XWBLIB) D
|
---|
| 174 | . D CONSENT
|
---|
| 175 | . I $$GET1^DIQ(2260,IEN,72,"I")="Y" D UNION
|
---|
| 176 | . I UNIREP D CONSENT^OOPSMBUL(IEN,UNIREP)
|
---|
| 177 | Q
|
---|
| 178 | SUP ;Supervisor Sign off
|
---|
| 179 | I FORM="CA1" S $P(^OOPS(2260,IEN,"CA1ES"),U,4,6)=SIGN
|
---|
| 180 | I FORM="CA2" S $P(^OOPS(2260,IEN,"CA2ES"),U,4,6)=SIGN
|
---|
| 181 | I FORM="2162" S $P(^OOPS(2260,IEN,"2162ES"),U,1,3)=SIGN D SAFETY^OOPSMBUL(IEN)
|
---|
| 182 | ; Patch 8
|
---|
| 183 | I FORM'="2162" D SUPS^OOPSMBUL(IEN),UNION^OOPSMBUL(IEN)
|
---|
| 184 | Q
|
---|
| 185 | WCP ; Patch 8
|
---|
| 186 | I FORM="CA1" S $P(^OOPS(2260,IEN,"WCES"),U,1,3)=SIGN
|
---|
| 187 | I FORM="CA2" S $P(^OOPS(2260,IEN,"WCES"),U,1,3)=SIGN
|
---|
| 188 | N DA,DR,DIE
|
---|
| 189 | I $P(SIGN,U) D
|
---|
| 190 | . S DR="",DIE="^OOPS(2260,",DA=IEN
|
---|
| 191 | . S DR(1,2260,1)="67////^S X=$P(SIGN,U)"
|
---|
| 192 | . S DR(1,2260,5)="68////^S X=$P(SIGN,U,2)"
|
---|
| 193 | . S DR(1,2260,10)="69////^S X=$P(SIGN,U,3)"
|
---|
| 194 | . D ^DIE
|
---|
| 195 | D WCP^OOPSMBUL(IEN,"S")
|
---|
| 196 | Q
|
---|
| 197 | SAF ; Safety Officer Sign off
|
---|
| 198 | I FORM="2162" S $P(^OOPS(2260,IEN,"2162ES"),U,4,6)=SIGN
|
---|
| 199 | Q
|
---|
| 200 | CONSENT ; patch 10 - Employee consent to release information to union
|
---|
| 201 | N DIC,DIE,DA,DR,OOPS
|
---|
| 202 | S DA=IEN,DIC="^OOPS(2260,",OUT=""
|
---|
| 203 | K DIQ S DIQ(0)="IE"
|
---|
| 204 | S DIQ="OOPS",DR=".01;2;3;4;7;13;14;16;17;18;52;53;53.1" D EN^DIQ1
|
---|
| 205 | S DR=""
|
---|
| 206 | W !!,"My consent is given for the release of case number "_OOPS(2260,IEN,.01,"E")
|
---|
| 207 | W !,"information for review by local bargaining units for accident and"
|
---|
| 208 | W !,"illness tracking purposes only. Name, address, social security "
|
---|
| 209 | W !,"number, date of birth, and telephone number will not be included"
|
---|
| 210 | W !,"in the information provided to the bargaining units."
|
---|
| 211 | W !!,"With your consent, the following information will be provided"
|
---|
| 212 | W !,"to the local bargaining unit for your review."
|
---|
| 213 | W !!,"Dt/Tme Occurrence: ",OOPS(2260,IEN,4,"E")
|
---|
| 214 | W ?40," Inj/Ill: ",OOPS(2260,IEN,52,"E")
|
---|
| 215 | W !," Personnel Status: ",OOPS(2260,IEN,2,"E")
|
---|
| 216 | W ?40," Sex: ",OOPS(2260,IEN,7,"E")
|
---|
| 217 | W !," Station Number: ",OOPS(2260,IEN,13,"I")
|
---|
| 218 | W ?40," Education: ",$E(OOPS(2260,IEN,18,"E"),1,26)
|
---|
| 219 | W !," Cost Center/Org: ",OOPS(2260,IEN,14,"E")
|
---|
| 220 | W ?40," Grade/Stp: ",OOPS(2260,IEN,16,"E")_"/"_OOPS(2260,IEN,17,"E")
|
---|
| 221 | W !," Supervisor: ",$E(OOPS(2260,IEN,53,"E"),1,19)
|
---|
| 222 | W ?40,"Type Incid: ",$E(OOPS(2260,IEN,3,"E"),1,26)
|
---|
| 223 | W !," Secondary Super: ",$E(OOPS(2260,IEN,53.1,"E"),1,20),!
|
---|
| 224 | S DR(1,2260,1)="72Consent Given://^S X=""N"""
|
---|
| 225 | W !!?5,"If you give consent, you will be prompted to select the"
|
---|
| 226 | W !?5,"Union to send the bulletin to. The bulletin will be sent"
|
---|
| 227 | W !?5,"immediately after the Union has been selected.",!
|
---|
| 228 | S DIE="^OOPS(2260,"
|
---|
| 229 | D ^DIE I $D(Y) S OUT=1
|
---|
| 230 | Q
|
---|
| 231 | UNION ; Get the Union Representative's DUZ
|
---|
| 232 | N DIC,DA,Y
|
---|
| 233 | S DIC="^OOPS(2263.7,",DIC(0)="AEQZ"
|
---|
| 234 | S DIC("A")="Select UNION to send bulletin to: "
|
---|
| 235 | D ^DIC
|
---|
| 236 | I +Y S UNIREP=$$GET1^DIQ(2263.7,+Y,2,"I")
|
---|
| 237 | I 'UNIREP D
|
---|
| 238 | . W !!?3,"Cannot sent a bulletin to Union, No Union Representative name was selected"
|
---|
| 239 | . W !?3,"or one is not on file. Contact your Workers' Compensation Specialist."
|
---|
| 240 | Q
|
---|