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 Dec 13, 2024@02:02:21 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