193 lines
8.0 KiB
Mathematica
193 lines
8.0 KiB
Mathematica
OOPSDOL2 ;WIOFO/CAH-CA2 EXTRACT FOR DOL ;3/15/00
|
|
;;2.0;ASISTS;;Jun 03, 2002
|
|
EN ; Entry
|
|
N OCC,NAME,FN,KK,D62,D126,D226,D227
|
|
S OOPSAR("CA")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA")))
|
|
S OOPSAR("CA2A")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2A")))
|
|
S OOPSAR("CA2B")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2B")))
|
|
S OOPSAR("CA2C")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2C",0)))
|
|
S OOPSAR("CA2D")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2D",0)))
|
|
S OOPSAR("CA2E")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2E",0)))
|
|
S OOPSAR("CA2ES")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2ES")))
|
|
S OOPSAR("CA2F")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2F",0)))
|
|
S OOPSAR("CA2G")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2G",0)))
|
|
S OOPSAR("CA2H")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2H")))
|
|
S OOPSAR("CA2I")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2I")))
|
|
S OOPSAR("CA2J")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2J")))
|
|
S OOPSAR("CA2K")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2K",0)))
|
|
S OOPSAR("CA2L")=$$UP^OOPSUTL4($G(^OOPS(2260,OOPDA,"CA2L")))
|
|
OP02 ; Seg OP02
|
|
K OPX
|
|
N OFF
|
|
S OFF=$$GET1^DIQ(2260,OOPDA,"73:1")
|
|
S OPX="OP02^"_$E("00",$L(OFF)+1,2)_OFF
|
|
S OPX=OPX_U_$P(OOPSAR("CA2I"),U,1)_U_$P(OOPSAR("CA2I"),U,2)
|
|
S OPX=OPX_U_$P(OOPSAR("CA2I"),U,3)_U_$$GET1^DIQ(2260,OOPDA,"240:1")
|
|
S OPX=OPX_U_$E($P(OOPSAR("CA2I"),U,5),1,5)_U_$P(OOPSAR("CA2H"),U,1)
|
|
S OPX=OPX_U_$P(OOPSAR("CA2H"),U,2)_U_$P(OOPSAR("CA2H"),U,3)
|
|
S OPX=OPX_U_$$GET1^DIQ(2260,OOPDA,"233:1")_U_$E($P(OOPSAR("CA2H"),U,5),1,5)
|
|
S OPX=OPX_U_U_U_"^|"
|
|
D STORE^OOPSDOLX
|
|
OP03 ; Seg OP03
|
|
K OPX
|
|
S OPX="OP03^"_$$GET1^DIQ(2260,OOPDA,60,"E")
|
|
S OPX=OPX_U_$P(OOPSAR("CA"),U,5)
|
|
S D62=$$GET1^DIQ(2260,OOPDA,"62:1")
|
|
S D126=$$GET1^DIQ(2260,OOPDA,"126:1")
|
|
S D226=$$GET1^DIQ(2260,OOPDA,"226:1")
|
|
S D227=$$GET1^DIQ(2260,OOPDA,"227:1")
|
|
S OPX=OPX_U_$E("000",$L(D226)+1,3)_D226
|
|
S OPX=OPX_U_$E("0000",$L(D227)+1,4)_D227
|
|
S OPX=OPX_U_$E("00",$L(D62)+1,2)_D62
|
|
S OPX=OPX_U_$E("00",$L(D126)+1,2)_D126
|
|
S OPX=OPX_U_$$DC^OOPSUTL3($P(OOPSAR("CA2J"),U,8))
|
|
S NAME=$$GET1^DIQ(2260,OOPDA,"265:.01"),FN=$P(NAME,",",2)
|
|
S OPX=OPX_U_$E($P(NAME,","),1,20)
|
|
F KK=1:0:1 Q:$E(FN,KK)'=" " S FN=$E(FN,KK+1,$L(FN))
|
|
S OPX=OPX_U_$E($P(FN," "),1,10)_U_$E($P(FN," ",2),1,10)
|
|
S OPX=OPX_U_$P(OOPSAR("CA2H"),U,8)_U_$$MKNUM^OOPSUTL2($P(OOPSAR("CA2H"),U,9))
|
|
S OPX=OPX_U_$$DC^OOPSUTL3($P(OOPSAR("CA2ES"),U,6))
|
|
S OPX=OPX_U_$$DC^OOPSUTL3($P(OOPSAR("CA2J"),U,6))_U_"^|"
|
|
D STORE^OOPSDOLX
|
|
OP04 ; Seg OP04
|
|
K OPX
|
|
N CAT,GRADE,STEP
|
|
S CAT=$$GET1^DIQ(2260,OOPDA,2,"I")
|
|
S GRADE=$P(OOPSAR("2162A"),U,12),STEP=$P(OOPSAR("2162A"),U,13)
|
|
I STEP="N" S STEP=" N" ; special case on step = N
|
|
S OPX="OP04^"_$$DC^OOPSUTL3($P(OOPSAR("CA2ES"),U,3))
|
|
I $P(OOPSAR("CA2J"),U,9) D
|
|
.S Y=$P(OOPSAR("CA2J"),U,9) D DD^%DT S Y=$P($TR(Y,":",""),"@",2)
|
|
.S OPX=OPX_U_$$DC^OOPSUTL3($P($P(OOPSAR("CA2J"),U,9),"."))_Y
|
|
I '$P(OOPSAR("CA2J"),U,9) S OPX=OPX_U
|
|
I $P(OOPSAR("CA2J"),U,12) D
|
|
.S Y=$P(OOPSAR("CA2J"),U,12) D DD^%DT S Y=$P($TR(Y,":",""),"@",2)
|
|
.S OPX=OPX_U_$$DC^OOPSUTL3($P($P(OOPSAR("CA2J"),U,12),"."))_Y
|
|
I '$P(OOPSAR("CA2J"),U,12) S OPX=OPX_U
|
|
S OPX=OPX_"^^^"_$P(OOPSAR("CA2J"),U,7)
|
|
S OPX=OPX_U_$E($P(OOPSAR(0),U,13),1,2)
|
|
;V2.0 1/9/02 - fix Grade/Step, send nill if Volunteer or Fee Basis
|
|
I (CAT=2)!($$GET1^DIQ(2260,OOPDA,63)="OT") S OPX=OPX_U_""
|
|
E S OPX=OPX_U_$E("00",$L(GRADE)+1,2)_GRADE
|
|
I (CAT=2)!($$GET1^DIQ(2260,OOPDA,63)="OT") S OPX=OPX_U_""
|
|
E S OPX=OPX_U_$E("00",$L(STEP)+1,2)_STEP
|
|
I $P(OOPSAR("CA2A"),U,8)=1!($P(OOPSAR("CA2A"),U,8)=4)!($P(OOPSAR("CA2A"),U,8)=5)!($P(OOPSAR("CA2A"),U,8)=7) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
I $P(OOPSAR("CA2A"),U,8)=2!($P(OOPSAR("CA2A"),U,8)=4)!($P(OOPSAR("CA2A"),U,8)=6)!($P(OOPSAR("CA2A"),U,8)=7) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
I $P(OOPSAR("CA2A"),U,8)=3!($P(OOPSAR("CA2A"),U,8)=5)!($P(OOPSAR("CA2A"),U,8)=6)!($P(OOPSAR("CA2A"),U,8)=7) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
S OPX=OPX_U_"Y^Y^Y^Y"
|
|
S OPX=OPX_U_"^^ASISTS^C2^Y"
|
|
S OPX=OPX_U ;Date of this Notice
|
|
S OPX=OPX_U_$P(OOPSAR("CA2B"),U) ;Illness Occurred Location
|
|
S OPX=OPX_U_$P(OOPSAR("CA2B"),U,2) ;Illness Occurred Address
|
|
S OPX=OPX_U_$P(OOPSAR("CA2B"),U,3) ;Illness Occurred City
|
|
S OPX=OPX_U_$$GET1^DIQ(2260,OOPDA,"212:1") ;Illness Occurred State
|
|
S OPX=OPX_U_$E($P(OOPSAR("CA2B"),U,5),1,5)_"^|"
|
|
D STORE^OOPSDOLX
|
|
OP05 ; Seg OP05
|
|
K OPX
|
|
S OPX="OP05^"_$P(OOPSAR("CA2L"),U)_U_$P(OOPSAR("CA2L"),U,2)
|
|
S OPX=OPX_U_$P(OOPSAR("CA2L"),U,3)_U_$P(OOPSAR("CA2L"),U,4)
|
|
S OPX=OPX_U_$$GET1^DIQ(2260,OOPDA,"262:1")_U_$E($P(OOPSAR("CA2L"),U,6),1,5)
|
|
I $P(OOPSAR("CA2J"),U)'="" S OPX=OPX_U_1
|
|
E S OPX=OPX_U
|
|
S NAME=$P(OOPSAR("CA2J"),U),FN=$P(NAME,",",2)
|
|
F KK=1:0:1 Q:$E(FN,KK)'=" " S FN=$E(FN,KK+1,$L(FN))
|
|
S OPX=OPX_U_$E($P(NAME,","),1,20)_U_$E($P(FN," "),1,10)_U_$E($P(FN," ",2),1,10)
|
|
I $P(OOPSAR("CA2J"),U)'="" S OPX=OPX_U_$$GET1^DIQ(2260,OOPDA,"270:1")
|
|
I $P(OOPSAR("CA2J"),U,2)'="" D
|
|
.S OPX=OPX_U_$P(OOPSAR("CA2J"),U,2)_U_$P(OOPSAR("CA2J"),U,3)
|
|
.S OPX=OPX_U_$$GET1^DIQ(2260,OOPDA,"248:1")_U_$E($P(OOPSAR("CA2J"),U,5),1,5)
|
|
I $P(OOPSAR("CA2J"),U,2)="" S OPX=OPX_"^^^^"
|
|
S OPX=OPX_U_"^^|"
|
|
D STORE^OOPSDOLX
|
|
OP06 ; Seg OP06
|
|
S DATA=$$CONV^OOPSUTL5($P(OOPSAR("CA2I"),U,8))
|
|
K OPX
|
|
S OPX="OP06"
|
|
F X=1:1:7 D ;Loop for seven days of the week
|
|
.I DATA[X D
|
|
..S OPX=OPX_U_"Y"
|
|
..S OPX=OPX_U_$$HM^OOPSUTL3($P(OOPSAR("CA2I"),U,6))_U_$$HM^OOPSUTL3($P(OOPSAR("CA2I"),U,7))
|
|
.I DATA'[X S OPX=OPX_"^N^^"
|
|
; Generate Occ Code for DOL transfer
|
|
S OCC=$$GET1^DIQ(2260,OOPDA,15) ; Occupation code from PAID
|
|
S OCC=$S(OCC<2300:"G"_OCC,(OCC>2499&(OCC<9001)):"W"_OCC,(OCC=9999):"Z"_OCC,1:"")
|
|
S OPX=OPX_U_OCC_U_$P(OOPSAR("CA2A"),U,9)_"^|"
|
|
D STORE^OOPSDOLX
|
|
OP07 ; Seg OP07 RELATIONSHIP OF ILLNESS TO EMP (Word Processing)
|
|
I $G(OOPSAR("CA2C"))'="",($P(OOPSAR("CA2C"),U,4)'=0) D
|
|
. S OPFLD=216,SEG="OP07"
|
|
. D WP^OOPSDOLX
|
|
OP08 ; Seg OP08
|
|
K OPX
|
|
S OPX="OP08^^^^^^^"
|
|
I $P(OOPSAR("CA2L"),U,7)'="" S OPX=OPX_97_U
|
|
E S OPX=OPX_U
|
|
; patch 11 - moved Witness indicator to correct piece
|
|
S OPX=OPX_"N^^^^^^^^^^^|"
|
|
D STORE^OOPSDOLX
|
|
OP13 ; Seg OP13 Nature of Disease/Illness (Word Processing)
|
|
I $G(OOPSAR("CA2D"))'="",($P(OOPSAR("CA2D"),U,4)'=0) D
|
|
.S OPFLD=217,SEG="OP13"
|
|
.D WP^OOPSDOLX
|
|
OP14 ;Seg OP14 Supervisor Exception
|
|
S S97=$P(OOPSAR("CA2L"),U,7) ; patch 11, don't send if only a space
|
|
I (S97'=""),(S97'=" ") D
|
|
.K OPX
|
|
.S OPX="OP14^1^1^"_S97_"^|" ;Supervisor Exception
|
|
.D STORE^OOPSDOLX
|
|
K S97
|
|
OP15 ; Seg OP15
|
|
K OPX
|
|
S OPX="OP15^"_$$DC^OOPSUTL3($P(OOPSAR("CA2J"),U,11))
|
|
S OPX=OPX_U_$$DC^OOPSUTL3($P(OOPSAR("CA2B"),U,6))
|
|
S OPX=OPX_U_$$DC^OOPSUTL3($P(OOPSAR("CA2B"),U,7))
|
|
S OPX=OPX_U_$$DC^OOPSUTL3($P($P(OOPSAR("CA2J"),U,10),"."))
|
|
S Y=$P(OOPSAR("CA2J"),U,10) D DD^%DT S Y=$P($TR(Y,":",""),"@",2)
|
|
S OPX=OPX_Y
|
|
I $G(OOPSAR("CA2C"))'="",($P(OOPSAR("CA2C"),U,4)'=0) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
I $G(OOPSAR("CA2K"))'="",($P(OOPSAR("CA2K"),U,4)'=0) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
I $G(OOPSAR("CA2E"))'="",($P(OOPSAR("CA2E"),U,4)'=0) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
I $G(OOPSAR("CA2G"))'="",($P(OOPSAR("CA2G"),U,4)'=0) S OPX=OPX_U_"Y"
|
|
E S OPX=OPX_U_"N"
|
|
I $G(OOPSAR("CA2F"))'="",($P(OOPSAR("CA2F"),U,4)'=0) S OPX=OPX_U_"Y^|"
|
|
E S OPX=OPX_U_"N^|"
|
|
D STORE^OOPSDOLX
|
|
OP16 ; Seg OP16 Work Duty Changed (Word Processing)
|
|
I $G(OOPSAR("CA2K"))'="",($P(OOPSAR("CA2K"),U,4)'=0) D
|
|
.S OPFLD=257,SEG="OP16"
|
|
.D WP^OOPSDOLX
|
|
OP17 ; Seg OP17 Claim not Filed (Word Processing)
|
|
I $G(OOPSAR("CA2E"))'="",($P(OOPSAR("CA2E"),U,4)'=0) D
|
|
.S OPFLD=218,SEG="OP17"
|
|
.D WP^OOPSDOLX
|
|
OP18 ; Seg OP18 Medical Report Delay (Word Processing)
|
|
I $G(OOPSAR("CA2G"))'="",($P(OOPSAR("CA2G"),U,4)'=0) D
|
|
.S OPFLD=220,SEG="OP18"
|
|
.D WP^OOPSDOLX
|
|
OP19 ; Seg OP19 Employee Statement Delayed (Word Processing)
|
|
I $G(OOPSAR("CA2F"))'="",($P(OOPSAR("CA2F"),U,4)'=0) D
|
|
.S OPFLD=219,SEG="OP19"
|
|
.D WP^OOPSDOLX
|
|
OP20 ; Seg OP20
|
|
K OPX
|
|
I $P(OOPSAR("2162B"),U,4)'="" D
|
|
.S OPX="OP20^"_"P"_U_$$GET1^DIQ(2260,OOPDA,"30:1")_"^|" D STORE^OOPSDOLX
|
|
.Q
|
|
; Only send Primary Body part at this time - per AAC 6/30/2000
|
|
; I $P(OOPSAR("2162B"),U,8)'="" D
|
|
; . N OPX
|
|
; . S OPX="OP20^"_"S"_U_$$GET1^DIQ(2260,OOPDA,"30.1:1")_"^|" D STORE^OOPSDOLX
|
|
; . Q
|
|
OP21 ; Seg OP21 Define for future use
|
|
OP22 ; Seg OP22 Define for future use
|
|
EXIT ; exit the routine
|
|
K IEN,DATA,MAX
|
|
Q
|