- OOPSGUI2 ;WIOFO/CVW-RPC routines ;9/19/01
- ;;2.0;ASISTS;**2,4,8**;Jun 03, 2002
- ;
- GET(RESULTS,INPUT) ; Get Case data from 2260 or 2264
- ;NOTE: changed in patch 5 to set the file to retrieve data from
- ; based on the form sent in.
- ; Input: INPUT - IEN^FORM where IEN = ASISTS IEN and
- ; FORM = Either "CA1","CA2","CA7","2162", or "DUAL"
- ; Output: RESULTS - Array of data from the file, each element in the
- ; is based on the field number in the file.
- N NODE,PIECE,FNUM,IEN,VAR,FORM,FLDCNT,INVFLDS,FILE
- ;Define fields that should never be returned
- S INVFLDS="^19^20^21^22^23^24^25^122^224^"
- S IEN=+$G(INPUT),FORM=$P($G(INPUT),U,2),FLDCNT=0
- I '$G(IEN) Q
- S FILE=2260 I $G(FORM)="CA7" S FILE=2264,INVFLDS=""
- I '$D(^OOPS(FILE,$G(IEN),0)) D Q
- . S (RESULTS,RESULTS(1))="-1^IEN:"_IEN_" not found in the file"
- I "CA1^CA2^CA7^2162^DUAL"'[FORM!(FORM="") D Q
- . S (RESULTS,RESULTS(1))="-2^FORM:"_FORM_" not valid, must be CA1, CA2, CA7, DUAL or 2162"
- S NODE="" F S NODE=$O(^DD(FILE,"GL",NODE)) Q:NODE="" D
- .S PIECE=0 F S PIECE=$O(^DD(FILE,"GL",NODE,PIECE)) Q:PIECE="" D
- ..S FNUM=0 F S FNUM=$O(^DD(FILE,"GL",NODE,PIECE,FNUM)) Q:FNUM="" D
- ...I INVFLDS[("^"_FNUM_"^") Q
- ...I ($E(NODE,1,$L(FORM))'=FORM),(NODE'=0),(NODE'="CA"),(NODE'["WC"),(NODE'["DUAL") Q
- ...;patch 5 if form = DUAL, only get DUAL nodes (there are 2) data
- ...I FORM["DUAL",($E(NODE,1,4)="DUAL") D
- ....S RESULTS(FNUM)=$$GET1^DIQ(FILE,IEN,FNUM)
- ...I FORM'="DUAL",($E(NODE,1,4)'="DUAL") D
- ....S RESULTS(FNUM)=$$GET1^DIQ(FILE,IEN,FNUM)
- ....I FILE=2260 D
- .....I FNUM=13 S RESULTS(FNUM)=RESULTS(FNUM)_" = "_$$GET1^DIQ(2260,IEN,FNUM_":99")
- .....I FNUM=53!(FNUM=53.1) S RESULTS(FNUM)=RESULTS(FNUM)_"^"_$$GET1^DIQ(2260,IEN,FNUM,"I")
- .....I FNUM=76!(FNUM=79) S RESULTS(FNUM)=$$GET1^DIQ(2260,IEN,FNUM,"I")
- ...S FLDCNT=FLDCNT+1
- Q
- WITR(RESULTS,IEN) ;Return entries from the witness multiple
- ; Input: IEN - The ASISTS IEN used to pull info from file 2260.
- ; Output: RESULTS - array with Witness data and associated comment
- ;
- N SUBN,COUNT,STATE,WDT
- S (SUBN,COUNT)=0,(STATE,WDT)=""
- F S SUBN=$O(^OOPS(2260,IEN,"CA1W",SUBN)) Q:'SUBN D
- . S RESULTS(COUNT)=$G(^OOPS(2260,IEN,"CA1W",SUBN,0))
- . S STATE=$$EXTERNAL^DILFD(2260.0125,3,"",$P(RESULTS(COUNT),U,4))
- . S WDT=$$EXTERNAL^DILFD(2260.0125,5,"",$P(RESULTS(COUNT),U,6))
- . S $P(RESULTS(COUNT),U,4)=STATE,$P(RESULTS(COUNT),U,6)=WDT
- . S $P(RESULTS(COUNT),U,7)=SUBN
- . S COUNT=COUNT+1
- . S RESULTS(COUNT)=$G(^OOPS(2260,IEN,"CA1W",SUBN,1))
- . S COUNT=COUNT+1
- Q
- DEFMD(RESULTS,IEN) ;
- ;Send in the Case IEN, return an array of
- ;(0)="1^Valid Results" or "0^No Valid Results"
- ;(1)=PROVIDER NAME
- ;(2)=PROVIDER ADDRESS
- ;(3)=PROVIDER CITY
- ;(4)=PROVIDER STATE
- ;(5)=PROVIDER ZIP CODE
- ;(6)=PROVIDER TITLE
- N STA,PSTA,PIEN
- S (STA,PSTA,PIEN)=""
- S RESULTS(0)="0^No Valid Results"
- Q:+IEN'>0
- S STA=$P($G(^OOPS(2260,IEN,"2162A")),U,9)
- Q:+STA'>0
- S PIEN=$O(^OOPS(2262,1,1,"B",STA,PIEN))
- Q:+PIEN'>0
- I $P($G(^OOPS(2262,1,1,PIEN,0)),U,2)'="" D
- .S RESULTS(0)="1^Valid Results"
- .S RESULTS(1)=$P($G(^OOPS(2262,1,1,PIEN,0)),U,2)
- .S RESULTS(2)=$P($G(^OOPS(2262,1,1,PIEN,0)),U,3)
- .S RESULTS(3)=$P($G(^OOPS(2262,1,1,PIEN,0)),U,4)
- .S PSTA=$$FIND1^DIC(2262.03,",1,","Q",STA)
- .I PSTA S PSTA=PSTA_",1," S RESULTS(4)=$$GET1^DIQ(2262.03,PSTA,"4:.01")
- .S RESULTS(5)=$P($G(^OOPS(2262,1,1,PIEN,0)),U,6)
- .S RESULTS(6)=$P($G(^OOPS(2262,1,1,PIEN,0)),U,7)
- .S RESULTS(6)=$$EXTERNAL^DILFD(2262.03,6,"",RESULTS(6))
- Q
- REPLWP(RESULTS,INPUT,DATA) ;
- ;Replace Word Processing Fields
- ; Input: INPUT - The file, field and IEN of record to WP field to
- ; be changed in the format FILE^FIELD^IEN
- ; Input DATA - List or pointer for data that is to replace the
- ; existing WP data.
- ; Output: RESULTS - array with results or messages.
- ; Retrieve file and field information.
- N FILE,FIELD,IEN,ROOT,NODE,LINE,CNT,NEWTXT
- S FILE=$P($G(INPUT),U),FIELD=$P($G(INPUT),U,2),IEN=$P($G(INPUT),U,3)
- S ROOT=$$ROOT^DILFD(FILE,0,"GL")
- S NODE=$$GET1^DID(FILE,FIELD,"","GLOBAL SUBSCRIPT LOCATION")
- S NODE=$P(NODE,";",1)
- ; Kill the existing WP data/node
- K @(ROOT_"IEN,NODE)")
- ; Insert the new data
- S (LINE,CNT)=0
- K NEWTXT
- F D Q:+LINE'>0
- .S LINE=$O(DATA(LINE)) Q:+LINE'>0 S CNT=LINE
- .S NEWTXT=$G(DATA(LINE))
- .S @(ROOT_"IEN,NODE,LINE,0)")=NEWTXT
- S @(ROOT_"IEN,NODE,0)")="^^"_CNT_"^"_CNT_"^"_DT_"^^"
- Q
- DTVALID(RESULTS,IDT,PDT,FLAG) ;Compare Date(s)/Time(s)
- ; Input IDT - This is the base date/time in external form
- ; PDT - This is the compare date/time in external form
- ; FLAG - -2 means PDT must be < IDT (The DAY only)
- ; FLAG - -1 means PDT must be < IDT (The DAY&TIME)
- ; FLAG - 1 means PDT must be > IDT (The DAY&TIME)
- ; FLAG - 2 means PDT must be > IDT (The DAY only)
- ;Output RESULTS - "VALID DATE" for valid, "DATE ERROR" for invalid
- S FLAG=+$G(FLAG)
- I FLAG="" S RESULTS(0)="FLAG ERROR" Q
- I IDT="" S RESULTS(0)="DATE ERROR" Q
- I PDT="" S RESULTS(0)="DATE ERROR" Q
- S IDT=$$DTI^OOPSGUI2(IDT)
- S PDT=$$DTI^OOPSGUI2(PDT)
- I FLAG=-2 D
- .S IDT=$P(IDT,"."),PDT=$P(PDT,".")
- .I (PDT<IDT)!(PDT=IDT) S RESULTS(0)="VALID DATE" Q
- .I PDT>IDT S RESULTS(0)="DATE ERROR" Q
- I FLAG=-1 D
- .I PDT<IDT S RESULTS(0)="VALID DATE" Q
- .I (PDT>IDT)!(PDT=IDT) S RESULTS(0)="DATE ERROR" Q
- I FLAG=0 D
- .I PDT=IDT S RESULTS(0)="VALID DATE" Q
- .I (PDT<IDT)!(PDT>IDT) S RESULTS(0)="DATE ERROR" Q
- I FLAG=1 D
- .I PDT>IDT S RESULTS(0)="VALID DATE" Q
- .I (PDT<IDT)!(PDT=IDT) S RESULTS(0)="DATE ERROR" Q
- I FLAG=2 D
- .S IDT=$P(IDT,"."),PDT=$P(PDT,".")
- .I (PDT>IDT)!(PDT=IDT) S RESULTS(0)="VALID DATE" Q
- .I PDT<IDT S RESULTS(0)="DATE ERROR" Q
- Q
- DTI(X) ;Convert and External date to an internal one
- N Y,%DT
- S %DT="T" D ^%DT
- Q Y
- SETFIELD(RESULTS,INPUT,VALUE) ;Set a single field in file 2260
- ;Input - INPUT Contains the IEN of the record and the field number to
- ; be modified in the format IEN^FIELD
- ; VALUE This required parm is the external value to be used.
- ;Output - RESULTS - status message of the file/set.
- N DA,DIE,DR,IEN,FLDNUM
- S DR=""
- S RESULTS(0)="UPDATE FAILED"
- S IEN=$P($G(INPUT),U)
- I '$G(IEN) Q
- S FLDNUM=$P($G(INPUT),U,2)
- I '$D(^OOPS(2260,IEN,0))!(FLDNUM="") Q
- S DIE="^OOPS(2260,",DA=IEN
- S DR(1,2260,1)=FLDNUM_"///^S X=VALUE"
- D ^DIE
- I $G(Y)="" D
- . S RESULTS(0)="UPDATE COMPLETE"
- . ; if setting field 71, need to send bulletin
- . I FLDNUM=71,($$GET1^DIQ(2260,IEN,71,"I")'="Y") D WCPBOR^OOPSMBUL(IEN)
- . ; 01/02/04 Patch 4 llh - if case closed, sent bulletin
- . I FLDNUM=51,(VALUE="Closed") D CLSCASE^OOPSMBUL(IEN)
- Q
- ADDWITN(RESULTS,IEN,INFO,COMMENT) ;Add Witness info for IEN in 2260
- ; Input - IEN - IEN of case that needs witness info created.
- ; INFO - Name, Street, City, State, Zip, Date of Witness in
- ; format, NAME^STREET^CITY^STATE^ZIP
- ; COMMENT - Witness Comment Text
- ; Output - RESULTS Text indicating status of insert
- N DR,DIE,DA,DIC,DD,DO,DLAYGO,INPUT,NAME,STREET,CITY,STATE,ZIP,WITDATE
- S RESULTS(0)="WITNESS CREATION FAILED"
- I '$G(IEN) Q
- I '$D(^OOPS(2260,IEN,0)) Q
- S DA(1)=IEN
- S DLAYGO=2260,DIC="^OOPS(2260,"_DA(1)_",""CA1W"","
- S DIC(0)="L"
- S X=$P(INFO,U)
- D FILE^DICN
- S DA=+Y
- S DIE="^OOPS(2260,"_DA(1)_",""CA1W"",",DR=""
- I DA=-1 Q
- S NAME=$P($G(INFO),U)
- S STREET=$P($G(INFO),U,2)
- S CITY=$P($G(INFO),U,3)
- S STATE=$P($G(INFO),U,4)
- S ZIP=$P($G(INFO),U,5)
- S WITDATE=$P($G(INFO),U,6)
- S DR(1,2260.0125,1)=".01///^S X=NAME"
- S DR(1,2260.0125,2)="1///^S X=STREET"
- S DR(1,2260.0125,3)="2///^S X=CITY"
- S DR(1,2260.0125,4)="3///^S X=STATE"
- S DR(1,2260.0125,5)="4///^S X=ZIP"
- S DR(1,2260.0125,6)="5///^S X=WITDATE"
- D ^DIE
- S DR="6///^S X=COMMENT"
- D ^DIE
- S RESULTS(0)="WITNESS CREATION SUCCESSFUL"
- Q
- DELWITN(RESULTS,INPUT) ;Deletes the Witness information for a claim
- ; Input - INPUT, this is the IEN for the case and the witness number
- ; format IEN^witness number for the selected witness
- ; Output - RESULTS - String indicating the status of the delete
- N DA,DIK,IEN,WITNO
- S RESULTS(0)="DELETION FAILED"
- I INPUT="" Q
- S IEN=$P($G(INPUT),U)
- I '$G(IEN) Q
- S WITNO=$P($G(INPUT),U,2)
- I '$G(WITNO) Q
- I '$D(^OOPS(2260,IEN,"CA1W",WITNO,0)) Q
- S DA(1)=IEN
- S DA=WITNO
- S DIK="^OOPS(2260,"_DA(1)_",""CA1W"","
- D ^DIK
- I $G(Y)'="" D Q
- .S RESULTS(0)="SUCCESSFULLY DELETED"
- Q
- EDTWITN(RESULTS,INPUT,INFO,COMMENT) ;Update Witness Info for 2260 rec
- ; Input:INPUT - IEN and Witness Number in format IEN^WIT
- ; INFO - Name, Street, City, State, Zip, Date of Witness in
- ; format, NAME^STREET^CITY^STATE^ZIP
- ; COMMENT - Text of Witness comment
- ; Output:RESULTS - String listing result of update.
- N DA,DIE,DR,NAME,STREET,CITY,STATE,ZIP,WITDATE,IEN,WITNO
- S RESULTS(0)="EDIT FAILED"
- S IEN=$P($G(INPUT),U)
- S WITNO=$P($G(INPUT),U,2)
- I '$D(^OOPS(2260,IEN,"CA1W",WITNO,0)) Q
- S DA(1)=IEN,DR=""
- S DA=WITNO
- S DIE="^OOPS(2260,"_DA(1)_",""CA1W"","
- S NAME=$P($G(INFO),U)
- S STREET=$P($G(INFO),U,2)
- S CITY=$P($G(INFO),U,3)
- S STATE=$P($G(INFO),U,4)
- S ZIP=$P($G(INFO),U,5)
- S WITDATE=$P($G(INFO),U,6)
- S DR(1,2260.0125,1)=".01///^S X=NAME"
- S DR(1,2260.0125,2)="1///^S X=STREET"
- S DR(1,2260.0125,3)="2///^S X=CITY"
- S DR(1,2260.0125,4)="3///^S X=STATE"
- S DR(1,2260.0125,5)="4///^S X=ZIP"
- S DR(1,2260.0125,6)="5///^S X=WITDATE"
- D ^DIE
- S DR="6///^S X=COMMENT"
- D ^DIE
- S RESULTS(0)="EDIT SUCCESSFULL"
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HOOPSGUI2 9636 printed Jan 18, 2025@02:40:14 Page 2
- OOPSGUI2 ;WIOFO/CVW-RPC routines ;9/19/01
- +1 ;;2.0;ASISTS;**2,4,8**;Jun 03, 2002
- +2 ;
- GET(RESULTS,INPUT) ; Get Case data from 2260 or 2264
- +1 ;NOTE: changed in patch 5 to set the file to retrieve data from
- +2 ; based on the form sent in.
- +3 ; Input: INPUT - IEN^FORM where IEN = ASISTS IEN and
- +4 ; FORM = Either "CA1","CA2","CA7","2162", or "DUAL"
- +5 ; Output: RESULTS - Array of data from the file, each element in the
- +6 ; is based on the field number in the file.
- +7 NEW NODE,PIECE,FNUM,IEN,VAR,FORM,FLDCNT,INVFLDS,FILE
- +8 ;Define fields that should never be returned
- +9 SET INVFLDS="^19^20^21^22^23^24^25^122^224^"
- +10 SET IEN=+$GET(INPUT)
- SET FORM=$PIECE($GET(INPUT),U,2)
- SET FLDCNT=0
- +11 IF '$GET(IEN)
- QUIT
- +12 SET FILE=2260
- IF $GET(FORM)="CA7"
- SET FILE=2264
- SET INVFLDS=""
- +13 IF '$DATA(^OOPS(FILE,$GET(IEN),0))
- Begin DoDot:1
- +14 SET (RESULTS,RESULTS(1))="-1^IEN:"_IEN_" not found in the file"
- End DoDot:1
- QUIT
- +15 IF "CA1^CA2^CA7^2162^DUAL"'[FORM!(FORM="")
- Begin DoDot:1
- +16 SET (RESULTS,RESULTS(1))="-2^FORM:"_FORM_" not valid, must be CA1, CA2, CA7, DUAL or 2162"
- End DoDot:1
- QUIT
- +17 SET NODE=""
- FOR
- SET NODE=$ORDER(^DD(FILE,"GL",NODE))
- if NODE=""
- QUIT
- Begin DoDot:1
- +18 SET PIECE=0
- FOR
- SET PIECE=$ORDER(^DD(FILE,"GL",NODE,PIECE))
- if PIECE=""
- QUIT
- Begin DoDot:2
- +19 SET FNUM=0
- FOR
- SET FNUM=$ORDER(^DD(FILE,"GL",NODE,PIECE,FNUM))
- if FNUM=""
- QUIT
- Begin DoDot:3
- +20 IF INVFLDS[("^"_FNUM_"^")
- QUIT
- +21 IF ($EXTRACT(NODE,1,$LENGTH(FORM))'=FORM)
- IF (NODE'=0)
- IF (NODE'="CA")
- IF (NODE'["WC")
- IF (NODE'["DUAL")
- QUIT
- +22 ;patch 5 if form = DUAL, only get DUAL nodes (there are 2) data
- +23 IF FORM["DUAL"
- IF ($EXTRACT(NODE,1,4)="DUAL")
- Begin DoDot:4
- +24 SET RESULTS(FNUM)=$$GET1^DIQ(FILE,IEN,FNUM)
- End DoDot:4
- +25 IF FORM'="DUAL"
- IF ($EXTRACT(NODE,1,4)'="DUAL")
- Begin DoDot:4
- +26 SET RESULTS(FNUM)=$$GET1^DIQ(FILE,IEN,FNUM)
- +27 IF FILE=2260
- Begin DoDot:5
- +28 IF FNUM=13
- SET RESULTS(FNUM)=RESULTS(FNUM)_" = "_$$GET1^DIQ(2260,IEN,FNUM_":99")
- +29 IF FNUM=53!(FNUM=53.1)
- SET RESULTS(FNUM)=RESULTS(FNUM)_"^"_$$GET1^DIQ(2260,IEN,FNUM,"I")
- +30 IF FNUM=76!(FNUM=79)
- SET RESULTS(FNUM)=$$GET1^DIQ(2260,IEN,FNUM,"I")
- End DoDot:5
- End DoDot:4
- +31 SET FLDCNT=FLDCNT+1
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +32 QUIT
- WITR(RESULTS,IEN) ;Return entries from the witness multiple
- +1 ; Input: IEN - The ASISTS IEN used to pull info from file 2260.
- +2 ; Output: RESULTS - array with Witness data and associated comment
- +3 ;
- +4 NEW SUBN,COUNT,STATE,WDT
- +5 SET (SUBN,COUNT)=0
- SET (STATE,WDT)=""
- +6 FOR
- SET SUBN=$ORDER(^OOPS(2260,IEN,"CA1W",SUBN))
- if 'SUBN
- QUIT
- Begin DoDot:1
- +7 SET RESULTS(COUNT)=$GET(^OOPS(2260,IEN,"CA1W",SUBN,0))
- +8 SET STATE=$$EXTERNAL^DILFD(2260.0125,3,"",$PIECE(RESULTS(COUNT),U,4))
- +9 SET WDT=$$EXTERNAL^DILFD(2260.0125,5,"",$PIECE(RESULTS(COUNT),U,6))
- +10 SET $PIECE(RESULTS(COUNT),U,4)=STATE
- SET $PIECE(RESULTS(COUNT),U,6)=WDT
- +11 SET $PIECE(RESULTS(COUNT),U,7)=SUBN
- +12 SET COUNT=COUNT+1
- +13 SET RESULTS(COUNT)=$GET(^OOPS(2260,IEN,"CA1W",SUBN,1))
- +14 SET COUNT=COUNT+1
- End DoDot:1
- +15 QUIT
- DEFMD(RESULTS,IEN) ;
- +1 ;Send in the Case IEN, return an array of
- +2 ;(0)="1^Valid Results" or "0^No Valid Results"
- +3 ;(1)=PROVIDER NAME
- +4 ;(2)=PROVIDER ADDRESS
- +5 ;(3)=PROVIDER CITY
- +6 ;(4)=PROVIDER STATE
- +7 ;(5)=PROVIDER ZIP CODE
- +8 ;(6)=PROVIDER TITLE
- +9 NEW STA,PSTA,PIEN
- +10 SET (STA,PSTA,PIEN)=""
- +11 SET RESULTS(0)="0^No Valid Results"
- +12 if +IEN'>0
- QUIT
- +13 SET STA=$PIECE($GET(^OOPS(2260,IEN,"2162A")),U,9)
- +14 if +STA'>0
- QUIT
- +15 SET PIEN=$ORDER(^OOPS(2262,1,1,"B",STA,PIEN))
- +16 if +PIEN'>0
- QUIT
- +17 IF $PIECE($GET(^OOPS(2262,1,1,PIEN,0)),U,2)'=""
- Begin DoDot:1
- +18 SET RESULTS(0)="1^Valid Results"
- +19 SET RESULTS(1)=$PIECE($GET(^OOPS(2262,1,1,PIEN,0)),U,2)
- +20 SET RESULTS(2)=$PIECE($GET(^OOPS(2262,1,1,PIEN,0)),U,3)
- +21 SET RESULTS(3)=$PIECE($GET(^OOPS(2262,1,1,PIEN,0)),U,4)
- +22 SET PSTA=$$FIND1^DIC(2262.03,",1,","Q",STA)
- +23 IF PSTA
- SET PSTA=PSTA_",1,"
- SET RESULTS(4)=$$GET1^DIQ(2262.03,PSTA,"4:.01")
- +24 SET RESULTS(5)=$PIECE($GET(^OOPS(2262,1,1,PIEN,0)),U,6)
- +25 SET RESULTS(6)=$PIECE($GET(^OOPS(2262,1,1,PIEN,0)),U,7)
- +26 SET RESULTS(6)=$$EXTERNAL^DILFD(2262.03,6,"",RESULTS(6))
- End DoDot:1
- +27 QUIT
- REPLWP(RESULTS,INPUT,DATA) ;
- +1 ;Replace Word Processing Fields
- +2 ; Input: INPUT - The file, field and IEN of record to WP field to
- +3 ; be changed in the format FILE^FIELD^IEN
- +4 ; Input DATA - List or pointer for data that is to replace the
- +5 ; existing WP data.
- +6 ; Output: RESULTS - array with results or messages.
- +7 ; Retrieve file and field information.
- +8 NEW FILE,FIELD,IEN,ROOT,NODE,LINE,CNT,NEWTXT
- +9 SET FILE=$PIECE($GET(INPUT),U)
- SET FIELD=$PIECE($GET(INPUT),U,2)
- SET IEN=$PIECE($GET(INPUT),U,3)
- +10 SET ROOT=$$ROOT^DILFD(FILE,0,"GL")
- +11 SET NODE=$$GET1^DID(FILE,FIELD,"","GLOBAL SUBSCRIPT LOCATION")
- +12 SET NODE=$PIECE(NODE,";",1)
- +13 ; Kill the existing WP data/node
- +14 KILL @(ROOT_"IEN,NODE)")
- +15 ; Insert the new data
- +16 SET (LINE,CNT)=0
- +17 KILL NEWTXT
- +18 FOR
- Begin DoDot:1
- +19 SET LINE=$ORDER(DATA(LINE))
- if +LINE'>0
- QUIT
- SET CNT=LINE
- +20 SET NEWTXT=$GET(DATA(LINE))
- +21 SET @(ROOT_"IEN,NODE,LINE,0)")=NEWTXT
- End DoDot:1
- if +LINE'>0
- QUIT
- +22 SET @(ROOT_"IEN,NODE,0)")="^^"_CNT_"^"_CNT_"^"_DT_"^^"
- +23 QUIT
- DTVALID(RESULTS,IDT,PDT,FLAG) ;Compare Date(s)/Time(s)
- +1 ; Input IDT - This is the base date/time in external form
- +2 ; PDT - This is the compare date/time in external form
- +3 ; FLAG - -2 means PDT must be < IDT (The DAY only)
- +4 ; FLAG - -1 means PDT must be < IDT (The DAY&TIME)
- +5 ; FLAG - 1 means PDT must be > IDT (The DAY&TIME)
- +6 ; FLAG - 2 means PDT must be > IDT (The DAY only)
- +7 ;Output RESULTS - "VALID DATE" for valid, "DATE ERROR" for invalid
- +8 SET FLAG=+$GET(FLAG)
- +9 IF FLAG=""
- SET RESULTS(0)="FLAG ERROR"
- QUIT
- +10 IF IDT=""
- SET RESULTS(0)="DATE ERROR"
- QUIT
- +11 IF PDT=""
- SET RESULTS(0)="DATE ERROR"
- QUIT
- +12 SET IDT=$$DTI^OOPSGUI2(IDT)
- +13 SET PDT=$$DTI^OOPSGUI2(PDT)
- +14 IF FLAG=-2
- Begin DoDot:1
- +15 SET IDT=$PIECE(IDT,".")
- SET PDT=$PIECE(PDT,".")
- +16 IF (PDT<IDT)!(PDT=IDT)
- SET RESULTS(0)="VALID DATE"
- QUIT
- +17 IF PDT>IDT
- SET RESULTS(0)="DATE ERROR"
- QUIT
- End DoDot:1
- +18 IF FLAG=-1
- Begin DoDot:1
- +19 IF PDT<IDT
- SET RESULTS(0)="VALID DATE"
- QUIT
- +20 IF (PDT>IDT)!(PDT=IDT)
- SET RESULTS(0)="DATE ERROR"
- QUIT
- End DoDot:1
- +21 IF FLAG=0
- Begin DoDot:1
- +22 IF PDT=IDT
- SET RESULTS(0)="VALID DATE"
- QUIT
- +23 IF (PDT<IDT)!(PDT>IDT)
- SET RESULTS(0)="DATE ERROR"
- QUIT
- End DoDot:1
- +24 IF FLAG=1
- Begin DoDot:1
- +25 IF PDT>IDT
- SET RESULTS(0)="VALID DATE"
- QUIT
- +26 IF (PDT<IDT)!(PDT=IDT)
- SET RESULTS(0)="DATE ERROR"
- QUIT
- End DoDot:1
- +27 IF FLAG=2
- Begin DoDot:1
- +28 SET IDT=$PIECE(IDT,".")
- SET PDT=$PIECE(PDT,".")
- +29 IF (PDT>IDT)!(PDT=IDT)
- SET RESULTS(0)="VALID DATE"
- QUIT
- +30 IF PDT<IDT
- SET RESULTS(0)="DATE ERROR"
- QUIT
- End DoDot:1
- +31 QUIT
- DTI(X) ;Convert and External date to an internal one
- +1 NEW Y,%DT
- +2 SET %DT="T"
- DO ^%DT
- +3 QUIT Y
- SETFIELD(RESULTS,INPUT,VALUE) ;Set a single field in file 2260
- +1 ;Input - INPUT Contains the IEN of the record and the field number to
- +2 ; be modified in the format IEN^FIELD
- +3 ; VALUE This required parm is the external value to be used.
- +4 ;Output - RESULTS - status message of the file/set.
- +5 NEW DA,DIE,DR,IEN,FLDNUM
- +6 SET DR=""
- +7 SET RESULTS(0)="UPDATE FAILED"
- +8 SET IEN=$PIECE($GET(INPUT),U)
- +9 IF '$GET(IEN)
- QUIT
- +10 SET FLDNUM=$PIECE($GET(INPUT),U,2)
- +11 IF '$DATA(^OOPS(2260,IEN,0))!(FLDNUM="")
- QUIT
- +12 SET DIE="^OOPS(2260,"
- SET DA=IEN
- +13 SET DR(1,2260,1)=FLDNUM_"///^S X=VALUE"
- +14 DO ^DIE
- +15 IF $GET(Y)=""
- Begin DoDot:1
- +16 SET RESULTS(0)="UPDATE COMPLETE"
- +17 ; if setting field 71, need to send bulletin
- +18 IF FLDNUM=71
- IF ($$GET1^DIQ(2260,IEN,71,"I")'="Y")
- DO WCPBOR^OOPSMBUL(IEN)
- +19 ; 01/02/04 Patch 4 llh - if case closed, sent bulletin
- +20 IF FLDNUM=51
- IF (VALUE="Closed")
- DO CLSCASE^OOPSMBUL(IEN)
- End DoDot:1
- +21 QUIT
- ADDWITN(RESULTS,IEN,INFO,COMMENT) ;Add Witness info for IEN in 2260
- +1 ; Input - IEN - IEN of case that needs witness info created.
- +2 ; INFO - Name, Street, City, State, Zip, Date of Witness in
- +3 ; format, NAME^STREET^CITY^STATE^ZIP
- +4 ; COMMENT - Witness Comment Text
- +5 ; Output - RESULTS Text indicating status of insert
- +6 NEW DR,DIE,DA,DIC,DD,DO,DLAYGO,INPUT,NAME,STREET,CITY,STATE,ZIP,WITDATE
- +7 SET RESULTS(0)="WITNESS CREATION FAILED"
- +8 IF '$GET(IEN)
- QUIT
- +9 IF '$DATA(^OOPS(2260,IEN,0))
- QUIT
- +10 SET DA(1)=IEN
- +11 SET DLAYGO=2260
- SET DIC="^OOPS(2260,"_DA(1)_",""CA1W"","
- +12 SET DIC(0)="L"
- +13 SET X=$PIECE(INFO,U)
- +14 DO FILE^DICN
- +15 SET DA=+Y
- +16 SET DIE="^OOPS(2260,"_DA(1)_",""CA1W"","
- SET DR=""
- +17 IF DA=-1
- QUIT
- +18 SET NAME=$PIECE($GET(INFO),U)
- +19 SET STREET=$PIECE($GET(INFO),U,2)
- +20 SET CITY=$PIECE($GET(INFO),U,3)
- +21 SET STATE=$PIECE($GET(INFO),U,4)
- +22 SET ZIP=$PIECE($GET(INFO),U,5)
- +23 SET WITDATE=$PIECE($GET(INFO),U,6)
- +24 SET DR(1,2260.0125,1)=".01///^S X=NAME"
- +25 SET DR(1,2260.0125,2)="1///^S X=STREET"
- +26 SET DR(1,2260.0125,3)="2///^S X=CITY"
- +27 SET DR(1,2260.0125,4)="3///^S X=STATE"
- +28 SET DR(1,2260.0125,5)="4///^S X=ZIP"
- +29 SET DR(1,2260.0125,6)="5///^S X=WITDATE"
- +30 DO ^DIE
- +31 SET DR="6///^S X=COMMENT"
- +32 DO ^DIE
- +33 SET RESULTS(0)="WITNESS CREATION SUCCESSFUL"
- +34 QUIT
- DELWITN(RESULTS,INPUT) ;Deletes the Witness information for a claim
- +1 ; Input - INPUT, this is the IEN for the case and the witness number
- +2 ; format IEN^witness number for the selected witness
- +3 ; Output - RESULTS - String indicating the status of the delete
- +4 NEW DA,DIK,IEN,WITNO
- +5 SET RESULTS(0)="DELETION FAILED"
- +6 IF INPUT=""
- QUIT
- +7 SET IEN=$PIECE($GET(INPUT),U)
- +8 IF '$GET(IEN)
- QUIT
- +9 SET WITNO=$PIECE($GET(INPUT),U,2)
- +10 IF '$GET(WITNO)
- QUIT
- +11 IF '$DATA(^OOPS(2260,IEN,"CA1W",WITNO,0))
- QUIT
- +12 SET DA(1)=IEN
- +13 SET DA=WITNO
- +14 SET DIK="^OOPS(2260,"_DA(1)_",""CA1W"","
- +15 DO ^DIK
- +16 IF $GET(Y)'=""
- Begin DoDot:1
- +17 SET RESULTS(0)="SUCCESSFULLY DELETED"
- End DoDot:1
- QUIT
- +18 QUIT
- EDTWITN(RESULTS,INPUT,INFO,COMMENT) ;Update Witness Info for 2260 rec
- +1 ; Input:INPUT - IEN and Witness Number in format IEN^WIT
- +2 ; INFO - Name, Street, City, State, Zip, Date of Witness in
- +3 ; format, NAME^STREET^CITY^STATE^ZIP
- +4 ; COMMENT - Text of Witness comment
- +5 ; Output:RESULTS - String listing result of update.
- +6 NEW DA,DIE,DR,NAME,STREET,CITY,STATE,ZIP,WITDATE,IEN,WITNO
- +7 SET RESULTS(0)="EDIT FAILED"
- +8 SET IEN=$PIECE($GET(INPUT),U)
- +9 SET WITNO=$PIECE($GET(INPUT),U,2)
- +10 IF '$DATA(^OOPS(2260,IEN,"CA1W",WITNO,0))
- QUIT
- +11 SET DA(1)=IEN
- SET DR=""
- +12 SET DA=WITNO
- +13 SET DIE="^OOPS(2260,"_DA(1)_",""CA1W"","
- +14 SET NAME=$PIECE($GET(INFO),U)
- +15 SET STREET=$PIECE($GET(INFO),U,2)
- +16 SET CITY=$PIECE($GET(INFO),U,3)
- +17 SET STATE=$PIECE($GET(INFO),U,4)
- +18 SET ZIP=$PIECE($GET(INFO),U,5)
- +19 SET WITDATE=$PIECE($GET(INFO),U,6)
- +20 SET DR(1,2260.0125,1)=".01///^S X=NAME"
- +21 SET DR(1,2260.0125,2)="1///^S X=STREET"
- +22 SET DR(1,2260.0125,3)="2///^S X=CITY"
- +23 SET DR(1,2260.0125,4)="3///^S X=STATE"
- +24 SET DR(1,2260.0125,5)="4///^S X=ZIP"
- +25 SET DR(1,2260.0125,6)="5///^S X=WITDATE"
- +26 DO ^DIE
- +27 SET DR="6///^S X=COMMENT"
- +28 DO ^DIE
- +29 SET RESULTS(0)="EDIT SUCCESSFULL"
- +30 QUIT