- IB20P359 ;ISP/RRA - Post-Init routine for IB*2.0*359 ; 11/8/06 3:14pm
- ;;2.0;INTEGRATED BILLING;**359**;21-MAR-94;Build 9
- POST ; This routine makes a call to GETWNR^IBCNSMM1 to verify that what
- ; is returned by this function is actually what the user wants.
- ; Since this patch relies on a free text field to be entered
- ; according to site/plan standardization any site that does not
- ; comply with this standardization may experience error or
- ; incorrect data.
- ;
- ;
- Q
- EN ;Call the function and store the results
- K IBWNRPL,IBPRTA,IBPRTB,IBERR,IBERCTR,IBPRTAGN,IBPRTBGN
- S IBERCTR=9 ;FIRST 9 LINES OF IBERR() ARE USED IN FORMATTING THE REPORT SENT TO IB EDI SUPERVISORS
- D MES^XPDUTL("CHECKING FOR PROBLEMATIC ENTRIES IN THE GROUP INSURANCE PLAN FILE...")
- D MES^XPDUTL("")
- S IBWNRPL=$$GETWNR^IBCNSMM1
- S IBPRTA=$P(IBWNRPL,"^",3),IBPRTB=$P(IBWNRPL,"^",5)
- D IBPRTA,IBPRTB
- I IBERCTR=9 D MES^XPDUTL("NO POTENTIAL ISSUES WITH GROUP INSURANCE PLAN FILE FOUND")
- I IBERCTR>9 D MES^XPDUTL("POTENTIAL ISSUES FOUND - MESSAGE WILL BE SENT TO IB EDI SUPERVISOR MAIL GROUP"),IBSNDMSG
- Q
- ;
- ;
- IBPRTA ;PROCESS THE RETURNED IBPRTA FOR POTENTIAL ERRORS
- I '$G(IBPRTA) S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="-0 Results found for Standard Medicare (WNR) plan PART A." D Q ;NO PART A PLAN FOUND
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="Please verify Standard Medicare (WNR) plan PART A is setup properly"
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)=""
- S IBPRTA=$G(^IBA(355.3,IBPRTA,0))
- S IBPRTAGN=$P(IBPRTA,"^",4)
- S IBPRTAGN=$TR(IBPRTAGN,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
- I IBPRTAGN["RR"!(IBPRTAGN["RAIL") S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="-The GROUP NUMBER for Plan A has characteristics of a Railroad plan." D
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="GROUP NUMBER = "_IBPRTAGN
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="Please verify this plan is in fact a standard Part A plan - (ien = "_+IBPRTA_")"
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)=""
- Q
- ;
- ;
- IBPRTB ;PROCESS THE RETURNED IBPRTB FOR POTENTIAL ERRORS
- I '$G(IBPRTB) S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="-0 Results found for Standard Medicare (WNR) plan PART B." D Q ;NO PART B PLAN FOUND
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="Please verify Standard Medicare (WNR) plan PART B is setup properly."
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)=""
- S IBPRTB=$G(^IBA(355.3,IBPRTB,0))
- S IBPRTBGN=$P(IBPRTB,"^",4)
- S IBPRTBGN=$TR(IBPRTBGN,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
- I IBPRTBGN["RR"!(IBPRTBGN["RAIL") S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="-The GROUP NUMBER for Plan B has characteristics of a Railroad plan." D
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="GROUP NUMBER = "_IBPRTBGN
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)="Please verify this plan is in fact a standard Part B plan - (ien = "_+IBPRTB_")"
- .S IBERCTR=IBERCTR+1,IBERR(IBERCTR)=""
- Q
- ;
- ;
- IBSNDMSG ;SEND MESSAGE TO IB EDI SUPERVISOR MAIL GROUP
- N IBPARAM,XMDUZ,XMSUB,XMTEXT,XMY
- S XMSUB="Potential issues with the GROUP INSURANCE PLAN (355.3) file"
- S XMDUZ=DUZ,XMTEXT="IBERR"
- S IBPARAM("FROM")="PATCH IB*2.0*359 POST INSTALL"
- S XMY("G.IB EDI SUPERVISOR")=""
- S IBERR(1)="This report is designed to find inconsistencies in the GROUP INSURANCE"
- S IBERR(2)="PLAN (355.3) file. There are functions in IB that rely on standard naming"
- S IBERR(3)="conventions when fields are entered for the Medicare (WNR) Plans A and B."
- S IBERR(4)="These functions operate under the premise that Part A and Part B plans"
- S IBERR(5)="use GROUP NAME (.03) fields of ""PART A"" and ""PART B"" respectively."
- S IBERR(6)=""
- S IBERR(7)=""
- S IBERR(8)="POSSIBLE ERRORS-"
- S IBERR(9)="-------------------------------------------------------------------------"
- D SENDMSG^XMXAPI(XMDUZ,XMSUB,XMTEXT,.XMY,.IBPARAM,"","")
- D MES^XPDUTL("MESSAGE SENT")
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIB20P359 3837 printed Apr 23, 2025@18:16:49 Page 2
- IB20P359 ;ISP/RRA - Post-Init routine for IB*2.0*359 ; 11/8/06 3:14pm
- +1 ;;2.0;INTEGRATED BILLING;**359**;21-MAR-94;Build 9
- POST ; This routine makes a call to GETWNR^IBCNSMM1 to verify that what
- +1 ; is returned by this function is actually what the user wants.
- +2 ; Since this patch relies on a free text field to be entered
- +3 ; according to site/plan standardization any site that does not
- +4 ; comply with this standardization may experience error or
- +5 ; incorrect data.
- +6 ;
- +7 ;
- +8 QUIT
- EN ;Call the function and store the results
- +1 KILL IBWNRPL,IBPRTA,IBPRTB,IBERR,IBERCTR,IBPRTAGN,IBPRTBGN
- +2 ;FIRST 9 LINES OF IBERR() ARE USED IN FORMATTING THE REPORT SENT TO IB EDI SUPERVISORS
- SET IBERCTR=9
- +3 DO MES^XPDUTL("CHECKING FOR PROBLEMATIC ENTRIES IN THE GROUP INSURANCE PLAN FILE...")
- +4 DO MES^XPDUTL("")
- +5 SET IBWNRPL=$$GETWNR^IBCNSMM1
- +6 SET IBPRTA=$PIECE(IBWNRPL,"^",3)
- SET IBPRTB=$PIECE(IBWNRPL,"^",5)
- +7 DO IBPRTA
- DO IBPRTB
- +8 IF IBERCTR=9
- DO MES^XPDUTL("NO POTENTIAL ISSUES WITH GROUP INSURANCE PLAN FILE FOUND")
- +9 IF IBERCTR>9
- DO MES^XPDUTL("POTENTIAL ISSUES FOUND - MESSAGE WILL BE SENT TO IB EDI SUPERVISOR MAIL GROUP")
- DO IBSNDMSG
- +10 QUIT
- +11 ;
- +12 ;
- IBPRTA ;PROCESS THE RETURNED IBPRTA FOR POTENTIAL ERRORS
- +1 ;NO PART A PLAN FOUND
- IF '$GET(IBPRTA)
- SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="-0 Results found for Standard Medicare (WNR) plan PART A."
- Begin DoDot:1
- +2 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="Please verify Standard Medicare (WNR) plan PART A is setup properly"
- +3 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)=""
- End DoDot:1
- QUIT
- +4 SET IBPRTA=$GET(^IBA(355.3,IBPRTA,0))
- +5 SET IBPRTAGN=$PIECE(IBPRTA,"^",4)
- +6 SET IBPRTAGN=$TRANSLATE(IBPRTAGN,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
- +7 IF IBPRTAGN["RR"!(IBPRTAGN["RAIL")
- SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="-The GROUP NUMBER for Plan A has characteristics of a Railroad plan."
- Begin DoDot:1
- +8 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="GROUP NUMBER = "_IBPRTAGN
- +9 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="Please verify this plan is in fact a standard Part A plan - (ien = "_+IBPRTA_")"
- +10 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)=""
- End DoDot:1
- +11 QUIT
- +12 ;
- +13 ;
- IBPRTB ;PROCESS THE RETURNED IBPRTB FOR POTENTIAL ERRORS
- +1 ;NO PART B PLAN FOUND
- IF '$GET(IBPRTB)
- SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="-0 Results found for Standard Medicare (WNR) plan PART B."
- Begin DoDot:1
- +2 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="Please verify Standard Medicare (WNR) plan PART B is setup properly."
- +3 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)=""
- End DoDot:1
- QUIT
- +4 SET IBPRTB=$GET(^IBA(355.3,IBPRTB,0))
- +5 SET IBPRTBGN=$PIECE(IBPRTB,"^",4)
- +6 SET IBPRTBGN=$TRANSLATE(IBPRTBGN,"abcdefghijklmnopqrstuvwxyz","ABCDEFGHIJKLMNOPQRSTUVWXYZ")
- +7 IF IBPRTBGN["RR"!(IBPRTBGN["RAIL")
- SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="-The GROUP NUMBER for Plan B has characteristics of a Railroad plan."
- Begin DoDot:1
- +8 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="GROUP NUMBER = "_IBPRTBGN
- +9 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)="Please verify this plan is in fact a standard Part B plan - (ien = "_+IBPRTB_")"
- +10 SET IBERCTR=IBERCTR+1
- SET IBERR(IBERCTR)=""
- End DoDot:1
- +11 QUIT
- +12 ;
- +13 ;
- IBSNDMSG ;SEND MESSAGE TO IB EDI SUPERVISOR MAIL GROUP
- +1 NEW IBPARAM,XMDUZ,XMSUB,XMTEXT,XMY
- +2 SET XMSUB="Potential issues with the GROUP INSURANCE PLAN (355.3) file"
- +3 SET XMDUZ=DUZ
- SET XMTEXT="IBERR"
- +4 SET IBPARAM("FROM")="PATCH IB*2.0*359 POST INSTALL"
- +5 SET XMY("G.IB EDI SUPERVISOR")=""
- +6 SET IBERR(1)="This report is designed to find inconsistencies in the GROUP INSURANCE"
- +7 SET IBERR(2)="PLAN (355.3) file. There are functions in IB that rely on standard naming"
- +8 SET IBERR(3)="conventions when fields are entered for the Medicare (WNR) Plans A and B."
- +9 SET IBERR(4)="These functions operate under the premise that Part A and Part B plans"
- +10 SET IBERR(5)="use GROUP NAME (.03) fields of ""PART A"" and ""PART B"" respectively."
- +11 SET IBERR(6)=""
- +12 SET IBERR(7)=""
- +13 SET IBERR(8)="POSSIBLE ERRORS-"
- +14 SET IBERR(9)="-------------------------------------------------------------------------"
- +15 DO SENDMSG^XMXAPI(XMDUZ,XMSUB,XMTEXT,.XMY,.IBPARAM,"","")
- +16 DO MES^XPDUTL("MESSAGE SENT")
- +17 QUIT