[613] | 1 | OOPSWCE ;WIOFO/LLH-Workers Comp Edit routine ;3/23/00
|
---|
| 2 | ;;2.0;ASISTS;;Jun 03, 2002
|
---|
| 3 | ;;
|
---|
| 4 | EN1(CALLER) ; Main Entry Point
|
---|
| 5 | N CA,CASIGN,DIC,DONE,FORM,IEN,OOPS,OUT,SIGN,SSN,SUP,X,WOK,WCPDO
|
---|
| 6 | S (DONE,OUT,IEN)=0
|
---|
| 7 | S WOK=1 ; to set cross reference
|
---|
| 8 | Q:DUZ<1
|
---|
| 9 | Q:$G(^VA(200,DUZ,1))=""
|
---|
| 10 | ; Select a Case
|
---|
| 11 | S DIC="^OOPS(2260,"
|
---|
| 12 | S DIC("S")="I $$WC^OOPSWCE(Y)"
|
---|
| 13 | S DIC(0)="AEMNZ",DIC("A")=" Select Case: "
|
---|
| 14 | D ^DIC
|
---|
| 15 | Q:Y<1
|
---|
| 16 | Q:$D(DTOUT)!($D(DUOUT))
|
---|
| 17 | S IEN=$P(Y,U)
|
---|
| 18 | D ^OOPSDIS ; Display header info
|
---|
| 19 | S (FORM,CA)=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 20 | S FORM=$S(FORM=1:"CA1",FORM=2:"CA2",1:"")
|
---|
| 21 | S CASIGN=$P($$EDSTA^OOPSUTL1(IEN,"S"),U,CA) ; Super signed CA form
|
---|
| 22 | D FORMS ; Process correct form
|
---|
| 23 | I OUT=2 G EXIT
|
---|
| 24 | ; If controled fields have been edited, clear Sup fields, get re-signed
|
---|
| 25 | I $D(OOPS) S DONE=$$CHGES(DONE) I DONE D CLRFLDS,SUPFLDS D:'OUT SUPSIGN
|
---|
| 26 | I OUT G EXIT
|
---|
| 27 | ; Need to have WC enter Supervisor fields
|
---|
| 28 | I 'CASIGN D SUPFLDS D:'OUT SUPSIGN
|
---|
| 29 | EXIT ; Validate and allow user to sign if all required fields complete
|
---|
| 30 | N DIR,Y
|
---|
| 31 | I OUT=1 D
|
---|
| 32 | . S DIR("A")="You '^'d out, Do you want to Sign"
|
---|
| 33 | . S DIR(0)="SBM^Y:Yes;N:No"
|
---|
| 34 | . D ^DIR
|
---|
| 35 | . I Y="Y" S OUT=0
|
---|
| 36 | I 'OUT D SIGNS(FORM) ; Sign/validate Document
|
---|
| 37 | L -^OOPS(2260,IEN)
|
---|
| 38 | Q
|
---|
| 39 | ;
|
---|
| 40 | FORMS ; Process Form
|
---|
| 41 | N DA,DIE,DR,FLD,I,MAX,MAX1,RET,SAL,PAY
|
---|
| 42 | N AIEN,AGN,ADD,CITY,STATE,ZIP
|
---|
| 43 | N PNAME,PADD,PCITY,PSTATE,PZIP,PTITLE,STAT,SIEN
|
---|
| 44 | ; Patch 11 - Default Chargeback code, next 6 lines
|
---|
| 45 | N OWCP,STA
|
---|
| 46 | S OWCP=""
|
---|
| 47 | S STA=$$GET1^DIQ(2260,IEN,13,"I")
|
---|
| 48 | I STA S OWCP=$$FIND1^DIC(2262.03,",1,","Q",STA)
|
---|
| 49 | I OWCP S OWCP=OWCP_",1," S OWCP=$$GET1^DIQ(2262.03,OWCP,.7)
|
---|
| 50 | I 'OWCP S OWCP=""
|
---|
| 51 | S MAX1=528 ; Max length on some WP fields
|
---|
| 52 | ; Get Default retirement from PAID - FLD = paid value
|
---|
| 53 | S FLD=28,SAL=""
|
---|
| 54 | S SAL=$$PAID^OOPSUTL1(IEN,FLD)
|
---|
| 55 | S FLD=26,RET=""
|
---|
| 56 | S RET=$$PAID^OOPSUTL1(IEN,FLD)
|
---|
| 57 | S RET=$S(RET="FULL CSRS":"CSRS",RET="FERS":"FERS",1:"OTHER")
|
---|
| 58 | S FLD=19,PAY=""
|
---|
| 59 | S PAY=$$PAID^OOPSUTL1(IEN,FLD)
|
---|
| 60 | S PAY=$S(PAY="PER ANNUM":"ANNUAL",PAY="PER HOUR":"HOURLY","PER DIEM":"DAILY","BIWEEKLY":"BI-WEEKLY",1:"")
|
---|
| 61 | ; If WCP has signed, clear signature - added 5/19/00
|
---|
| 62 | I $$GET1^DIQ(2260,IEN,67)'="" D CLRES^OOPSUTL1(IEN,"W",FORM)
|
---|
| 63 | ; If Super has not signed, prompt WC to continue or not
|
---|
| 64 | I 'CASIGN D WCSIGN Q:OUT
|
---|
| 65 | ; If Super has signed and person editing form is not Supervisor who
|
---|
| 66 | ; signed, then check for edits on certain fields. ONLY FOR CA1
|
---|
| 67 | I FORM="CA1",CASIGN,($$GET1^DIQ(2260,IEN,169,"I")'=DUZ) D WCEDIT
|
---|
| 68 | L +^OOPS(2260,IEN):2
|
---|
| 69 | E W !!?5,"Another user is editing this entry. Try later." S OUT=2 Q
|
---|
| 70 | I FORM="CA1" D CA1^OOPSWCE1 Q:OUT
|
---|
| 71 | I FORM="CA2" D CA2^OOPSWCE2 Q:OUT
|
---|
| 72 | S DIE="^OOPS(2260,",DA=IEN
|
---|
| 73 | D ^DIE
|
---|
| 74 | I ($D(Y)'=0)!($G(DIRUT)=1) S OUT=1
|
---|
| 75 | Q
|
---|
| 76 | WC(IEN) ; Selection Screen
|
---|
| 77 | ; Input - IEN Internal entry number of case
|
---|
| 78 | ; Output - VIEW If 0 case not accessible, if 1 case selectable
|
---|
| 79 | ;
|
---|
| 80 | N VIEW,FORM
|
---|
| 81 | S VIEW=1
|
---|
| 82 | S FORM=$$GET1^DIQ(2260,IEN,52,"I")
|
---|
| 83 | I '$P($$EDSTA^OOPSUTL1(IEN,"E"),U,FORM) S VIEW=0 ;Employee not signed
|
---|
| 84 | I $$GET1^DIQ(2260,IEN,66)'="" S VIEW=0 ;Case sent to DOL
|
---|
| 85 | I $$GET1^DIQ(2260,IEN,51,"I")'=0 S VIEW=0 ;Case is not open
|
---|
| 86 | I '$$ISEMP^OOPSUTL4(IEN) S VIEW=0 ;not employee
|
---|
| 87 | Q VIEW
|
---|
| 88 | WCEDIT ; check for edits by WC
|
---|
| 89 | ; Get data from fields 146, 147, 148, 149, 163, 164, 165.
|
---|
| 90 | N DA,DIC,DIQ,DR,%X,%Y
|
---|
| 91 | K OOPS
|
---|
| 92 | S DIC=2260,DR="146;147;148;149;163",DA=IEN,DIQ="OOPS",DIQ(0)="I"
|
---|
| 93 | D EN^DIQ1
|
---|
| 94 | S %X="^OOPS(2260,IEN,""CA1J"",",%Y="OOPS(2260,IEN,""CA1J""," D %XY^%RCR
|
---|
| 95 | S %X="^OOPS(2260,IEN,""CA1K"",",%Y="OOPS(2260,IEN,""CA1K""," D %XY^%RCR
|
---|
| 96 | Q
|
---|
| 97 | WCSIGN ; Prompt user to continue as Supervisor if Super has not signed form
|
---|
| 98 | N DIR,Y
|
---|
| 99 | S DIR("A")="Are you signing for the Supervisor"
|
---|
| 100 | S DIR("A",1)="The Supervisor has not signed the "_FORM_". To continue"
|
---|
| 101 | S DIR("A",2)="editing, you will need to sign as Supervisor."
|
---|
| 102 | S DIR(0)="SBM^Y:Yes;N:No"
|
---|
| 103 | D ^DIR
|
---|
| 104 | I Y'="Y" S OUT=1
|
---|
| 105 | Q
|
---|
| 106 | SUPSIGN ; Sign/validate Document
|
---|
| 107 | N DIR,ES,SUPSIGN,VALID,Y
|
---|
| 108 | S VALID=0
|
---|
| 109 | D VALIDATE^OOPSUTL4(IEN,FORM,"S",.VALID)
|
---|
| 110 | I 'VALID S OUT=2 Q ; not valid, sup not signed
|
---|
| 111 | S DIR("A")="Sign as Supervisor"
|
---|
| 112 | S DIR(0)="SBM^Y:Yes;N:No"
|
---|
| 113 | D ^DIR
|
---|
| 114 | I Y'="Y" S OUT=2 ; sup 'signed, WC cant sign
|
---|
| 115 | I Y="Y" D
|
---|
| 116 | . S SUPSIGN=$$SIG^OOPSESIG(DUZ,IEN)
|
---|
| 117 | . S ES=$S(FORM="CA1":"CA1ES",FORM="CA2":"CA2ES",1:0)
|
---|
| 118 | . I $G(ES)'="" S $P(^OOPS(2260,IEN,ES),U,4,6)=SUPSIGN
|
---|
| 119 | Q
|
---|
| 120 | SIGNS(FORM) ;
|
---|
| 121 | N PAYPLAN,DA,DIE,DR,VALID
|
---|
| 122 | S VALID=0,SIGN=""
|
---|
| 123 | S PAYPLAN=$$GET1^DIQ(2260,IEN,63)
|
---|
| 124 | I '$P($$EDSTA^OOPSUTL1(IEN,"S"),U,CA) D Q ; Super hasn't signed
|
---|
| 125 | . W !!,"Supervisor has not signed "_FORM
|
---|
| 126 | D VALIDATE^OOPSUTL4(IEN,FORM,"W",.VALID)
|
---|
| 127 | I 'VALID Q
|
---|
| 128 | ; V2.0 1/9/02 - fixes for Fee Basis, Non-Paid Employees
|
---|
| 129 | I $$GET1^DIQ(2260,IEN,2,"I")=6 D Q
|
---|
| 130 | .W !,"This person is not in the PAID Employee File and does not appear "
|
---|
| 131 | .W !,"eligible to submit a claim to DOL. Please check with your"
|
---|
| 132 | .W !,"Human Resources Department for assistance. Sending a paper"
|
---|
| 133 | .W !,"hardcopy may be necessary, if allowable."
|
---|
| 134 | I (PAYPLAN="OT"),'$$VALEMP^OOPSUTL6 D Q
|
---|
| 135 | .W !,"This person does not appear to be eligible for submitting a claim"
|
---|
| 136 | .W !,"to DOL, please review the RETIREMENT, GRADE, STEP, PAY"
|
---|
| 137 | .W !,"PLAN, PAY RATE and PAY RATE PER Fields. You may need to"
|
---|
| 138 | .W !,"contact your Human Resources Department or IRM for assistance."
|
---|
| 139 | N DIR,Y
|
---|
| 140 | W !
|
---|
| 141 | S DIR("A")="OK to transmit to DOL"
|
---|
| 142 | S DIR(0)="SBM^Y:Yes;N:No"
|
---|
| 143 | D ^DIR
|
---|
| 144 | I Y="Y" S SIGN=$$SIG^OOPSESIG(DUZ,IEN)
|
---|
| 145 | ; if signed, file and send bulletin
|
---|
| 146 | I $P(SIGN,U) D
|
---|
| 147 | . S DR="",DIE="^OOPS(2260,",DA=IEN
|
---|
| 148 | . S DR(1,2260,1)="67////^S X=$P(SIGN,U)"
|
---|
| 149 | . S DR(1,2260,5)="68////^S X=$P(SIGN,U,2)"
|
---|
| 150 | . S DR(1,2260,10)="69////^S X=$P(SIGN,U,3)"
|
---|
| 151 | I $P(SIGN,U) D ^DIE,WCP^OOPSMBUL(IEN,"S")
|
---|
| 152 | Q
|
---|
| 153 | CLRFLDS ; Clear Supervisor Signature fields
|
---|
| 154 | N DR,DA,DIE
|
---|
| 155 | ; Clear Supervisor Signature
|
---|
| 156 | ; Added next line for ASISTS V2.0 11/09/01
|
---|
| 157 | I '$$BROKER^XWBLIB D
|
---|
| 158 | . W !!,"Worker's Comp edit of special fields occurred, Supervisor"
|
---|
| 159 | . W !,"signature fields cleared, you will need to sign as Supervisor."
|
---|
| 160 | D CLRES^OOPSUTL1(IEN,"S",FORM)
|
---|
| 161 | ; If get in this subroutine, need to set flag that Super needs to
|
---|
| 162 | ; be notified of edits even if user ^'s out
|
---|
| 163 | S DR="",DIE="^OOPS(2260,",DA=IEN
|
---|
| 164 | S DR(1,2260,35)="199////Y"
|
---|
| 165 | D ^DIE
|
---|
| 166 | Q
|
---|
| 167 | SUPFLDS ; Get Supervisor signature related data for CA1 only
|
---|
| 168 | I OUT Q
|
---|
| 169 | N DR,DA,DIE,SUP
|
---|
| 170 | S DR="",DIE="^OOPS(2260,",DA=IEN
|
---|
| 171 | ; Clear Super Title and Phone # and set DR array
|
---|
| 172 | I FORM="CA1" D
|
---|
| 173 | . S SUP=$$GET1^DIQ(200,DUZ,.01)
|
---|
| 174 | . S $P(^OOPS(2260,IEN,"CA1L"),U,4,5)="^"
|
---|
| 175 | . S DR(1,2260,1)="W !!,"" Worker's Compensation Signing for Supervisor"",!"
|
---|
| 176 | . S DR(1,2260,5)="W !,"" Signature of Supervisor and Filing Instructions"""
|
---|
| 177 | . S DR(1,2260,10)="W !,"" -----------------------------------------------"""
|
---|
| 178 | . S DR(1,2260,15)="S ITEM=38 D EXCEPT^OOPSUTL2;168 EXCEPTION"
|
---|
| 179 | . S DR(1,2260,16)="I X'="""",'$$VCHAR^OOPSUTL4(X) W !,""Invalid character entered, (~,`,@,#,$,%,^,*,_,|,\,},{,[,],>, or <),"",!,""please edit."",! S Y=168"
|
---|
| 180 | . S DR(1,2260,20)="W !,"" NAME OF SUPERVISOR.: ""_SUP"
|
---|
| 181 | . S DR(1,2260,25)="172 SUPERVISOR'S TITLE.;I X="""" S Y=172"
|
---|
| 182 | . S DR(1,2260,26)="I X'="""",'$$VCHAR^OOPSUTL4(X) W !,""Invalid character entered, (~,`,@,#,$,%,^,*,_,|,\,},{,[,],>, or <),"",!,""please edit."",! S Y=172"
|
---|
| 183 | . S DR(1,2260,30)="173 OFFICE PHONE.......;I X="""" S Y=173"
|
---|
| 184 | . ; Patch 8 - added error checking on phone per DOL requirement
|
---|
| 185 | . S DR(1,2260,35)="I $TR(X,""/-*#"","""")'?10N W !?3,""Phone number must include area code and 7 digits only. Example 703-123-8789"" S Y=173"
|
---|
| 186 | D ^DIE
|
---|
| 187 | I ($D(Y)'=0)!($G(DIRUT)=1) S OUT=2
|
---|
| 188 | Q
|
---|
| 189 | CHGES(DONE) ; Verify changes have been made to controlled fields
|
---|
| 190 | ; Can quit as soon as any change is discovered
|
---|
| 191 | ; Input - none
|
---|
| 192 | ; Output - DONE if 1, at least 1 field edited, else no edits (0)
|
---|
| 193 | ;
|
---|
| 194 | N I,LINE,LP
|
---|
| 195 | F I=146:1:149,163 D Q:DONE
|
---|
| 196 | . I $$GET1^DIQ(2260,IEN,I,"I")'=OOPS(2260,IEN,I,"I") S DONE=1 Q
|
---|
| 197 | I 'DONE F I="CA1J","CA1K" I $D(OOPS(2260,IEN,I)) D Q:DONE
|
---|
| 198 | . S LINE=$P(^OOPS(2260,IEN,I,0),U,4)
|
---|
| 199 | . I LINE'=$P(OOPS(2260,IEN,I,0),U,4) S DONE=1 Q
|
---|
| 200 | . F LP=1:1:LINE D Q:DONE
|
---|
| 201 | .. I ^OOPS(2260,IEN,I,LP,0)'=OOPS(2260,IEN,I,LP,0) S DONE=1 Q
|
---|
| 202 | Q DONE
|
---|