| [613] | 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 | 
|---|