| [613] | 1 | OOPSEMP1 ;HINES/WAA,GTD-E/E Employee data Routines ;3/25/98
 | 
|---|
 | 2 |  ;;2.0;ASISTS;;Jun 03, 2002
 | 
|---|
 | 3 |  ;;
 | 
|---|
 | 4 |  ; Employee/Person Address is now only stored in the 2162A node
 | 
|---|
 | 5 |  ; of file 2260.  Prior to patch 3 it was stored in the CA1A and
 | 
|---|
 | 6 |  ; CA2A nodes depending on which form was entered.  The address
 | 
|---|
 | 7 |  ; is only 'pulled' from this location when printing either form.
 | 
|---|
 | 8 |  ;
 | 
|---|
 | 9 | EN1(CALLER) ;  Main Entry Point
 | 
|---|
 | 10 |  ;INPUT:
 | 
|---|
 | 11 |  ;     CALLER = "E" FOR EMPLOYEE
 | 
|---|
 | 12 |  ;            = "S" FOR SUPERVISOR
 | 
|---|
 | 13 |  ;            = "O" FOR SAFETY OFFICER
 | 
|---|
 | 14 |  ;            = "W" FOR WORKERS COMP
 | 
|---|
 | 15 |  ;
 | 
|---|
 | 16 |  N SSN,IEN,FLD,ODESC,CAT,PAYP,OUT
 | 
|---|
 | 17 |  S IEN=0,MAX1=528
 | 
|---|
 | 18 |  Q:DUZ<1
 | 
|---|
 | 19 |  Q:$G(^VA(200,DUZ,1))=""
 | 
|---|
 | 20 |  I CALLER="E" D  Q:$G(SSN)=""  Q:$D(^OOPS(2260,"SSN",SSN))<1
 | 
|---|
 | 21 |  .S SSN=$P(^VA(200,DUZ,1),U,9)
 | 
|---|
 | 22 |  .I '$G(SSN) W !!,"No SSN on file for this Employee" Q
 | 
|---|
 | 23 |  .I $D(^OOPS(2260,"SSN",SSN))<1 D
 | 
|---|
 | 24 |  ..W !!,"An Accident Report has not been created for this Employee"
 | 
|---|
 | 25 |  D  Q:IEN<1
 | 
|---|
 | 26 |  .N DIC,X,INT
 | 
|---|
 | 27 |  .S DIC="^OOPS(2260,"
 | 
|---|
 | 28 |  .I CALLER="E" S DIC("S")="I $$EMP^OOPSUTL1(Y,SSN)"
 | 
|---|
 | 29 |  .I CALLER="S" S DIC("S")="I $$SUP^OOPSEMP1(DUZ,Y)"
 | 
|---|
 | 30 |  .I CALLER="O" S DIC("S")="I $$SAFE^OOPSEMP1(Y)"
 | 
|---|
 | 31 |  .; PATCH 10
 | 
|---|
 | 32 |  .I CALLER="W" S DIC("S")="I $$SCR^OOPSWCSE(Y)"
 | 
|---|
 | 33 |  . ; Patch 5 - new Personnel status logic, make sure it's an employee
 | 
|---|
 | 34 |  .S DIC("S")=DIC("S")_",$$ISEMP^OOPSUTL4(Y)"
 | 
|---|
 | 35 |  .S DIC(0)="AEMNZ",DIC("A")="   Select Case: "
 | 
|---|
 | 36 |  .D ^DIC
 | 
|---|
 | 37 |  .Q:Y<1
 | 
|---|
 | 38 |  .Q:$D(DTOUT)!($D(DUOUT))
 | 
|---|
 | 39 |  .S IEN=$P(Y,U)
 | 
|---|
 | 40 |  .Q
 | 
|---|
 | 41 | FORM S FORM=$$GET1^DIQ(2260,IEN,52,"I")
 | 
|---|
 | 42 |  S FORM=$S(FORM=1:"CA1",FORM=2:"CA2",1:"")
 | 
|---|
 | 43 |  Q:FORM=""
 | 
|---|
 | 44 |  ; Patch 8 - changed call from local subroutine, only Signature that
 | 
|---|
 | 45 |  ; can be cleared is Employee.
 | 
|---|
 | 46 |  I CALLER="E" D CLRES^OOPSUTL1(IEN,CALLER,FORM)
 | 
|---|
 | 47 |  ; Patch 8 - Get Occupation Desc from paid, only call if employee
 | 
|---|
 | 48 |  S FLD=16,ODESC=""
 | 
|---|
 | 49 |  I $$GET1^DIQ(2260,IEN,2,"I")=1 S ODESC=$$PAID^OOPSUTL1(IEN,FLD)
 | 
|---|
 | 50 |  ; Get Pay Plan from PAID, if Per Status (CAT) = 2 Set PAYP = "VO"
 | 
|---|
 | 51 |  S PAYP="",CAT=""
 | 
|---|
 | 52 |  S CAT=$$GET1^DIQ(2260,IEN,2,"I")
 | 
|---|
 | 53 |  I CAT<3 D
 | 
|---|
 | 54 |  . I CAT=1 S PAYP=$$PAID^OOPSUTL1(IEN,20) I $G(PAYP)'="" S PAYP=$$PAYP^OOPSUTL1(PAYP)
 | 
|---|
 | 55 |  . I CAT=2 S PAYP="VO"
 | 
|---|
 | 56 |  ; patch 10 - Bill of Rights enhancement
 | 
|---|
 | 57 |  I CALLER="E" S OUT="" D  I OUT G EXIT      ; if OUT, ^'d out of option
 | 
|---|
 | 58 |  . I $$GET1^DIQ(2260,IEN,71,"I")'="Y" D BOR
 | 
|---|
 | 59 |  . I $$GET1^DIQ(2260,IEN,71,"I")'="Y" D WCPBOR^OOPSMBUL(IEN)
 | 
|---|
 | 60 |  . Q:OUT
 | 
|---|
 | 61 |  N DR,DIE,SIGN2,OOPS
 | 
|---|
 | 62 |  ; Patch 8 - had to split routine due to size
 | 
|---|
 | 63 |  I FORM="CA1" D ^OOPSEMPB
 | 
|---|
 | 64 |  I FORM="CA2" D ^OOPSEMP2
 | 
|---|
 | 65 |  S DIE="^OOPS(2260,",DA=IEN
 | 
|---|
 | 66 |  D ^DIE
 | 
|---|
 | 67 |  I $D(Y)'=0 G EXIT
 | 
|---|
 | 68 |  I CALLER="E" D
 | 
|---|
 | 69 |  . N SIGN
 | 
|---|
 | 70 |  . ; patch 10 - bill of rights enhancement
 | 
|---|
 | 71 |  . I $$GET1^DIQ(2260,IEN,71,"I")'="Y" D  Q
 | 
|---|
 | 72 |  .. W !?5,"Claim cannot be signed until the Bill of Rights Statement is understood."
 | 
|---|
 | 73 |  . D SIGN(FORM)
 | 
|---|
 | 74 |  . Q:$G(SIGN)=""
 | 
|---|
 | 75 |  . I $P(SIGN,U) D EMP^OOPSVAL1          ; new call patch 8
 | 
|---|
 | 76 |  I CALLER="W" D
 | 
|---|
 | 77 |  . W !!,"Checking for Safety and Emp Health Ok to sign for Employee."
 | 
|---|
 | 78 |  . D WCPS4E^OOPSWCSE
 | 
|---|
 | 79 | EXIT ; quit the routine
 | 
|---|
 | 80 |  K HSA,CIT,MAX,MAX1,STA,ZIP
 | 
|---|
 | 81 |  Q
 | 
|---|
 | 82 | SAFE(IEN) ; Safety Officer Screen
 | 
|---|
 | 83 |  N VIEW,FORM,TYPE
 | 
|---|
 | 84 |  S VIEW=1
 | 
|---|
 | 85 |  S (TYPE,FORM)=$$GET1^DIQ(2260,IEN,52,"I"),FORM=$S(FORM=1:"CA1",FORM=2:"CA2",1:"")
 | 
|---|
 | 86 |  ; Patch 8 - if ok to send to DOL cant edit
 | 
|---|
 | 87 |  I $$GET1^DIQ(2260,IEN,67)'="" S VIEW=0
 | 
|---|
 | 88 |  I $P($$EDSTA^OOPSUTL1(IEN,"E"),U,TYPE) S VIEW=0   ;Emp Signed
 | 
|---|
 | 89 |  I $P($$EDSTA^OOPSUTL1(IEN,"S"),U,TYPE) S VIEW=0           ;Super Signed
 | 
|---|
 | 90 |  I $$GET1^DIQ(2260,IEN,51,"I")'=0 S VIEW=0                 ;Case not open
 | 
|---|
 | 91 |  Q VIEW
 | 
|---|
 | 92 | SUP(DUZ,IEN) ; Supervisor Screen
 | 
|---|
 | 93 |  N VIEW,FORM,SIGN,FORMS
 | 
|---|
 | 94 |  S VIEW=1
 | 
|---|
 | 95 |  S (FORMS,FORM)=$$GET1^DIQ(2260,IEN,52,"I"),FORM=$S(FORM=1:"CA1",FORM=2:"CA2",1:"")
 | 
|---|
 | 96 |  I $P($$EDSTA^OOPSUTL1(IEN,"E"),U,FORMS) S VIEW=0 ; Employee Signed
 | 
|---|
 | 97 |  I $P($$EDSTA^OOPSUTL1(IEN,"S"),U,FORMS) S VIEW=0 ; Super Signed
 | 
|---|
 | 98 |  I $$GET1^DIQ(2260,IEN,51,"I")'=0 S VIEW=0 ; Case is not open
 | 
|---|
 | 99 |  ; Patch 8 - if ok to send to DOL cant edit
 | 
|---|
 | 100 |  I $$GET1^DIQ(2260,IEN,67)'="" S VIEW=0
 | 
|---|
 | 101 |  I $$GET1^DIQ(2260,IEN,53,"I")'=DUZ,$$GET1^DIQ(2260,IEN,53.1,"I")'=DUZ S VIEW=0 ; Not Supervisor for case
 | 
|---|
 | 102 |  Q VIEW
 | 
|---|
 | 103 | SIGN(FORM) ; Sign/validate Document
 | 
|---|
 | 104 |  N EMP,INC,VALID
 | 
|---|
 | 105 |  S VALID=0,SIGN=""
 | 
|---|
 | 106 |  S INC=$$GET1^DIQ(2260,IEN,52,"I")
 | 
|---|
 | 107 |  W ! D VALIDATE^OOPSUTL4(IEN,FORM,"E",.VALID)
 | 
|---|
 | 108 |  I 'VALID Q
 | 
|---|
 | 109 |  I CALLER="E" D
 | 
|---|
 | 110 |  . I $$GET1^DIQ(200,DUZ,20.4)="" D
 | 
|---|
 | 111 |  .. W !!,"Please enter a Signature Code.",!
 | 
|---|
 | 112 |  .. D ^XUSESIG
 | 
|---|
 | 113 |  . S SIGN=$$SIG^OOPSESIG(DUZ,IEN)
 | 
|---|
 | 114 |  Q
 | 
|---|
 | 115 | BOR ; patch 10 - does employee understand Bill of Rights
 | 
|---|
 | 116 |  N DIE,DA,DR
 | 
|---|
 | 117 |  S DA=IEN,DIE="^OOPS(2260,",DR=""
 | 
|---|
 | 118 |  W !
 | 
|---|
 | 119 |  S DR(1,2260,1)="71I have read and understood the Employee Bill of Rights:"
 | 
|---|
 | 120 |  D ^DIE I $D(Y) S OUT=1
 | 
|---|
 | 121 |  Q
 | 
|---|