- IBOHLSE ;ALB/BAA - IB HELD CHARGES LIST MANAGER ;08-SEP-2015
- ;;2.0;INTEGRATED BILLING;**554**;21-MAR-94;Build 81
- ;Per VA Directive 6402, this routine should not be modified.
- ;
- EN ; -- main entry point for HELD CHARGES EXPAND
- ; add code to do filters here
- ;
- D EN^VALM("IB HELD CHARGES EXPAND")
- Q
- ;
- HDR ; -- header code
- ;
- S VALM("TITLE")=" Expanded Held Charges"
- S XQORM("B")="QUIT"
- Q
- ;
- INIT ; -- init variables and list array
- ; input - none
- ; output ^TMP($J,"IBOHLSE")
- N DFN,CNT,NAME,IBIEN,REC,CLINIC,LST
- S REC=^TMP($J,"IBOHLSE")
- S DFN=$P(REC,U,1),CNT=$P(REC,U,2)
- S NAME=$P(REC,U,3),IBIEN=$P(REC,U,4)
- S LST=$P(REC,U,5),CLINIC=$P(REC,U,6)
- D BLD
- Q
- ;
- BLD ; build data to display
- N CNT,SS,LINE,XX,RX,GMT,IB0,IB1,PATIEN,XX
- N EADAT,EAWHO,LUDAT,LUWHO
- S (CNT,VALMCNT)=0
- S IB0=^IB(IBIEN,0)
- S IB1=^IB(IBIEN,1)
- S SS=$$GET1^DIQ(2,DFN,.09)
- ;
- D FULL^VALM1
- D SET^VALM10(1,"PATIENT : "_NAME_" - "_SS,"")
- ;
- D SET^VALM10(2,"TYPE : "_$$GET1^DIQ(350.1,$P(IB0,U,3),.01),"")
- ;
- D SET^VALM10(3,"RESULTING FROM : "_$P(IB0,U,4),"")
- ;
- S LINE="",LINE=$$SETL(LINE,$$GET1^DIQ(350.21,$P(IB0,U,5),.01),"STATUS : ",1,38)
- S LINE=$$SETL(LINE,$$FMTE^XLFDT($P(IB0,U,17),"2DZ"),"EVENT DATE : ",40,38)
- D SET^VALM10(4,LINE,"")
- ;
- S LINE="",LINE=$$SETL(LINE,$P(IB0,U,9),"PARENT : ",1,38)
- S LINE=$$SETL(LINE,$P(IB0,U,7),"CHARGE : ",40,38)
- D SET^VALM10(5,LINE,"")
- ;
- D SET^VALM10(6,"INSTITUTION : "_$$GET1^DIQ(4,$P(IB0,U,13),.01)_" : "_LST_" - "_CLINIC,"")
- ;
- D SET^VALM10(7,"BILLED : "_$$FMTE^XLFDT($P(IB0,U,14),"2DZ")_" - "_$$FMTE^XLFDT($P(IB0,U,15),"2DZ"),"")
- ;
- S LINE="",LINE=$$SETL(LINE,$$GET1^DIQ(4,$P(IB0,U,13),.01),"AR BILL # : ",1,38)
- S LINE=$$SETL(LINE,$$FMTE^XLFDT($P(IB0,U,18),"2DZ"),"LAST BILLED : ",40,38)
- D SET^VALM10(8,LINE,"")
- ;
- D SET^VALM10(9,"IB COPAY TRANS # : "_$$GET1^DIQ(354.71,$P(IB0,U,19),.01),"")
- D SET^VALM10(10,"CLINIC STOP : "_$$GET1^DIQ(352.5,$P(IB0,U,20),.01),"")
- ;
- S GMT=$P(IB0,U,21)
- D SET^VALM10(11,"GMT RELATED : "_$S(GMT=1:"Yes",1:"No"),"")
- D SET^VALM10(12,"PFSS ACCT REF : "_$$GET1^DIQ(375,$P(IB0,U,22),.01),"")
- ;
- S EAWHO=$$GET1^DIQ(200,$P(IB1,U,1),.01)
- S EADAT=$$FMTE^XLFDT($P(IB1,U,2),"2DZ")
- D SET^VALM10(13,"ENTRY ADDED : "_EAWHO_" "_EADAT,"")
- ;
- S LUWHO=$$GET1^DIQ(200,$P(IB1,U,3),.01)
- S LUDAT=$$FMTE^XLFDT($P(IB1,U,4),"2DZ")
- D SET^VALM10(14,"LAST UPDATED : "_LUWHO_" "_LUDAT,"")
- ;
- D SET^VALM10(15,"CHAMPVA ADM DATE : "_$$FMTE^XLFDT($P(IB1,U,5),"2DZ"),"")
- D SET^VALM10(16,"ON HOLD DATE : "_$$FMTE^XLFDT($P(IB1,U,6),"2DZ"),"")
- D SET^VALM10(17,"HOLD-REVIEW DATE : "_$$FMTE^XLFDT($P(IB1,U,7),"2DZ"),"")
- S VALMBCK="R",VALMBG=1,VALMCNT=16
- Q
- ;
- HELP ; -- help code
- N X
- S X="?" D DISP^XQORM1 W !!
- Q
- ;
- EXIT ; -- exit code
- ;K ^TMP($J)
- D ^%ZISC
- I
- S VALMBCK="R" Q
- Q
- ;
- SETL(LINE,DATA,LABEL,COL,LNG) ; Creates a line of data to be set into the body
- ; of the worklist
- ; Input: LINE - Current line being created
- ; DATA - Information to be added to the end of the current line
- ; LABEL - Label to describe the information being added
- ; COL - Column position in line to add information add
- ; LNG - Maximum length of data information to include on the line
- ; Returns: Line updated with added information
- ;S LINE=LINE_$J("",(COL-$L(LABEL)-$L(LINE)))_LABEL_$E(DATA,1,LNG)
- N NEW
- S NEW=LABEL_$E(DATA,1,LNG)
- S $E(LINE,COL)=NEW
- Q LINE
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBOHLSE 3410 printed Feb 18, 2025@23:52:10 Page 2
- IBOHLSE ;ALB/BAA - IB HELD CHARGES LIST MANAGER ;08-SEP-2015
- +1 ;;2.0;INTEGRATED BILLING;**554**;21-MAR-94;Build 81
- +2 ;Per VA Directive 6402, this routine should not be modified.
- +3 ;
- EN ; -- main entry point for HELD CHARGES EXPAND
- +1 ; add code to do filters here
- +2 ;
- +3 DO EN^VALM("IB HELD CHARGES EXPAND")
- +4 QUIT
- +5 ;
- HDR ; -- header code
- +1 ;
- +2 SET VALM("TITLE")=" Expanded Held Charges"
- +3 SET XQORM("B")="QUIT"
- +4 QUIT
- +5 ;
- INIT ; -- init variables and list array
- +1 ; input - none
- +2 ; output ^TMP($J,"IBOHLSE")
- +3 NEW DFN,CNT,NAME,IBIEN,REC,CLINIC,LST
- +4 SET REC=^TMP($JOB,"IBOHLSE")
- +5 SET DFN=$PIECE(REC,U,1)
- SET CNT=$PIECE(REC,U,2)
- +6 SET NAME=$PIECE(REC,U,3)
- SET IBIEN=$PIECE(REC,U,4)
- +7 SET LST=$PIECE(REC,U,5)
- SET CLINIC=$PIECE(REC,U,6)
- +8 DO BLD
- +9 QUIT
- +10 ;
- BLD ; build data to display
- +1 NEW CNT,SS,LINE,XX,RX,GMT,IB0,IB1,PATIEN,XX
- +2 NEW EADAT,EAWHO,LUDAT,LUWHO
- +3 SET (CNT,VALMCNT)=0
- +4 SET IB0=^IB(IBIEN,0)
- +5 SET IB1=^IB(IBIEN,1)
- +6 SET SS=$$GET1^DIQ(2,DFN,.09)
- +7 ;
- +8 DO FULL^VALM1
- +9 DO SET^VALM10(1,"PATIENT : "_NAME_" - "_SS,"")
- +10 ;
- +11 DO SET^VALM10(2,"TYPE : "_$$GET1^DIQ(350.1,$PIECE(IB0,U,3),.01),"")
- +12 ;
- +13 DO SET^VALM10(3,"RESULTING FROM : "_$PIECE(IB0,U,4),"")
- +14 ;
- +15 SET LINE=""
- SET LINE=$$SETL(LINE,$$GET1^DIQ(350.21,$PIECE(IB0,U,5),.01),"STATUS : ",1,38)
- +16 SET LINE=$$SETL(LINE,$$FMTE^XLFDT($PIECE(IB0,U,17),"2DZ"),"EVENT DATE : ",40,38)
- +17 DO SET^VALM10(4,LINE,"")
- +18 ;
- +19 SET LINE=""
- SET LINE=$$SETL(LINE,$PIECE(IB0,U,9),"PARENT : ",1,38)
- +20 SET LINE=$$SETL(LINE,$PIECE(IB0,U,7),"CHARGE : ",40,38)
- +21 DO SET^VALM10(5,LINE,"")
- +22 ;
- +23 DO SET^VALM10(6,"INSTITUTION : "_$$GET1^DIQ(4,$PIECE(IB0,U,13),.01)_" : "_LST_" - "_CLINIC,"")
- +24 ;
- +25 DO SET^VALM10(7,"BILLED : "_$$FMTE^XLFDT($PIECE(IB0,U,14),"2DZ")_" - "_$$FMTE^XLFDT($PIECE(IB0,U,15),"2DZ"),"")
- +26 ;
- +27 SET LINE=""
- SET LINE=$$SETL(LINE,$$GET1^DIQ(4,$PIECE(IB0,U,13),.01),"AR BILL # : ",1,38)
- +28 SET LINE=$$SETL(LINE,$$FMTE^XLFDT($PIECE(IB0,U,18),"2DZ"),"LAST BILLED : ",40,38)
- +29 DO SET^VALM10(8,LINE,"")
- +30 ;
- +31 DO SET^VALM10(9,"IB COPAY TRANS # : "_$$GET1^DIQ(354.71,$PIECE(IB0,U,19),.01),"")
- +32 DO SET^VALM10(10,"CLINIC STOP : "_$$GET1^DIQ(352.5,$PIECE(IB0,U,20),.01),"")
- +33 ;
- +34 SET GMT=$PIECE(IB0,U,21)
- +35 DO SET^VALM10(11,"GMT RELATED : "_$SELECT(GMT=1:"Yes",1:"No"),"")
- +36 DO SET^VALM10(12,"PFSS ACCT REF : "_$$GET1^DIQ(375,$PIECE(IB0,U,22),.01),"")
- +37 ;
- +38 SET EAWHO=$$GET1^DIQ(200,$PIECE(IB1,U,1),.01)
- +39 SET EADAT=$$FMTE^XLFDT($PIECE(IB1,U,2),"2DZ")
- +40 DO SET^VALM10(13,"ENTRY ADDED : "_EAWHO_" "_EADAT,"")
- +41 ;
- +42 SET LUWHO=$$GET1^DIQ(200,$PIECE(IB1,U,3),.01)
- +43 SET LUDAT=$$FMTE^XLFDT($PIECE(IB1,U,4),"2DZ")
- +44 DO SET^VALM10(14,"LAST UPDATED : "_LUWHO_" "_LUDAT,"")
- +45 ;
- +46 DO SET^VALM10(15,"CHAMPVA ADM DATE : "_$$FMTE^XLFDT($PIECE(IB1,U,5),"2DZ"),"")
- +47 DO SET^VALM10(16,"ON HOLD DATE : "_$$FMTE^XLFDT($PIECE(IB1,U,6),"2DZ"),"")
- +48 DO SET^VALM10(17,"HOLD-REVIEW DATE : "_$$FMTE^XLFDT($PIECE(IB1,U,7),"2DZ"),"")
- +49 SET VALMBCK="R"
- SET VALMBG=1
- SET VALMCNT=16
- +50 QUIT
- +51 ;
- HELP ; -- help code
- +1 NEW X
- +2 SET X="?"
- DO DISP^XQORM1
- WRITE !!
- +3 QUIT
- +4 ;
- EXIT ; -- exit code
- +1 ;K ^TMP($J)
- +2 DO ^%ZISC
- +3 IF $TEST
- +4 SET VALMBCK="R"
- QUIT
- +5 QUIT
- +6 ;
- SETL(LINE,DATA,LABEL,COL,LNG) ; Creates a line of data to be set into the body
- +1 ; of the worklist
- +2 ; Input: LINE - Current line being created
- +3 ; DATA - Information to be added to the end of the current line
- +4 ; LABEL - Label to describe the information being added
- +5 ; COL - Column position in line to add information add
- +6 ; LNG - Maximum length of data information to include on the line
- +7 ; Returns: Line updated with added information
- +8 ;S LINE=LINE_$J("",(COL-$L(LABEL)-$L(LINE)))_LABEL_$E(DATA,1,LNG)
- +9 NEW NEW
- +10 SET NEW=LABEL_$EXTRACT(DATA,1,LNG)
- +11 SET $EXTRACT(LINE,COL)=NEW
- +12 QUIT LINE