Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: IBY621PO

IBY621PO.m

Go to the documentation of this file.
  1. IBY621PO ;AITC/DM - Post-Installation for IB patch 621; 22-MAY-2018
  1. ;;2.0;INTEGRATED BILLING;**621**;21-MAR-94;Build 14
  1. ;;Per VA Directive 6402, this routine should not be modified.
  1. ;
  1. POST ; POST ROUTINE(S)
  1. N IBXPD,XPDIDTOT
  1. S XPDIDTOT=3
  1. ;
  1. ; Create/update the EICD extract
  1. D CHKEICD(1)
  1. ;
  1. ; Send site registration message to FSC
  1. D REGMSG(2)
  1. ;
  1. ; Check/remove any link from an insurance to the National EICD Payer
  1. D CHKLNK(3)
  1. ;
  1. ; Displays the 'Done' message and finishes the progress bar
  1. D MES^XPDUTL("")
  1. D MES^XPDUTL("POST-Install Completed.")
  1. Q
  1. ;
  1. REGMSG(IBXPD) ; send site registration message to FSC
  1. D BMES^XPDUTL(" STEP "_IBXPD_" of "_XPDIDTOT)
  1. D MES^XPDUTL("-------------")
  1. D MES^XPDUTL("Sending site registration message to FSC ... ")
  1. ;
  1. I '$$PROD^XUPROD(1) D MES^XPDUTL(" N/A - Not a production account - No site registration message sent") G REGMSGQ
  1. D MES^XPDUTL("Sending site registration message to FSC ... ")
  1. D ^IBCNEHLM
  1. ;
  1. REGMSGQ ;
  1. Q
  1. ;
  1. CHKLNK(IBXPD) ; Due to a timing issue with the National EICD Payer
  1. ;It's possible that a client linked an insurance to the EICD payer
  1. ;This is not allowed. Any such link will be removed
  1. N IBEICDPY,IBIEN
  1. D BMES^XPDUTL(" STEP "_IBXPD_" of "_XPDIDTOT)
  1. D MES^XPDUTL("-------------")
  1. D MES^XPDUTL("Verifying Insurance links to payers...")
  1. ;
  1. S IBEICDPY=0
  1. S IBEICDPY=$O(^IBE(365.12,"B","ELECTRONIC COVERAGE DISCOVERY",IBEICDPY))
  1. I 'IBEICDPY D BMES^XPDUTL("The Electronic Insurance Coverage Discovery Payer has not been established") G CHKLNKQ
  1. S IBIEN=0
  1. F S IBIEN=$O(^DIC(36,"AC",IBEICDPY,IBIEN)) Q:'IBIEN D
  1. . S DIE="^DIC(36,",DA=IBIEN,DR="3.1///@" D ^DIE ; remove the link
  1. . W !,"Insurance:"_IBIEN_" "_$$GET1^DIQ(36,IBIEN_",","NAME")
  1. . K DIE,DA,DR
  1. ;
  1. CHKLNKQ ;
  1. Q
  1. ;
  1. CHKEICD(IBXPD) ; Create or update the EICD Extract
  1. N IBFDA,IBSETIEN,IBERR,IBEXT4,IBEXTIEN
  1. D BMES^XPDUTL(" STEP "_IBXPD_" of "_XPDIDTOT)
  1. D MES^XPDUTL("-------------")
  1. D MES^XPDUTL("Create/update the EICD Extract parameters... ")
  1. ;
  1. S IBEXT4=+$$FIND1^DIC(350.9002,",1,","BQX","4","B")
  1. I 'IBEXT4 D G CHKEICDQ
  1. . W !," Creating a new EICD batch extract record..."
  1. . S IBEXTIEN="+1,1,"
  1. . S IBSETIEN(1)=4 ;for safety, force new IEN to 4
  1. . S IBFDA(350.9002,IBEXTIEN,.01)="4" ; BATCH EXTRACTS
  1. . S IBFDA(350.9002,IBEXTIEN,.02)="1" ; Active?
  1. . S IBFDA(350.9002,IBEXTIEN,.03)="" ; SELECTION CRITERIA #1
  1. . S IBFDA(350.9002,IBEXTIEN,.04)="" ; SELECTION CRITERIA #2
  1. . S IBFDA(350.9002,IBEXTIEN,.05)=99999 ; MAXIMUM EXTRACT NUMBER
  1. . S IBFDA(350.9002,IBEXTIEN,.06)="1" ; SUPPRESS BUFFER CREATION
  1. . S IBFDA(350.9002,IBEXTIEN,.07)=31 ; START DAYS
  1. . S IBFDA(350.9002,IBEXTIEN,.08)=9 ; DAYS AFTER START
  1. . S IBFDA(350.9002,IBEXTIEN,.09)=365 ; FREQUENCY
  1. . ;
  1. . D UPDATE^DIE(,"IBFDA","IBSETIEN","IBERR")
  1. . I $G(IBERR("DIERR",1,"TEXT",1))'="" W !,"ISSUE CREATING EXTRACT: "_$G(IBERR("DIERR",1,"TEXT",1))
  1. ;
  1. I IBEXT4 D G CHKEICDQ
  1. . W !," Updating existing EICD batch extract record..."
  1. . S IBEXTIEN=IBEXT4_",1,"
  1. . S IBFDA(350.9002,IBEXTIEN,.02)="1" ; Active?
  1. . S IBFDA(350.9002,IBEXTIEN,.03)="" ; SELECTION CRITERIA #1
  1. . S IBFDA(350.9002,IBEXTIEN,.04)="" ; SELECTION CRITERIA #2
  1. . S IBFDA(350.9002,IBEXTIEN,.05)=99999 ; MAXIMUM EXTRACT NUMBER
  1. . S IBFDA(350.9002,IBEXTIEN,.06)="1" ; SUPPRESS BUFFER CREATION
  1. . S IBFDA(350.9002,IBEXTIEN,.07)=31 ; START DAYS
  1. . S IBFDA(350.9002,IBEXTIEN,.08)=9 ; DAYS AFTER START
  1. . S IBFDA(350.9002,IBEXTIEN,.09)=365 ; FREQUENCY
  1. . ;
  1. . D FILE^DIE(,"IBFDA","IBERR")
  1. . I $G(IBERR("DIERR",1,"TEXT",1))'="" W !,"ISSUE UPDATING EXTRACT: "_$G(IBERR("DIERR",1,"TEXT",1))
  1. ;
  1. CHKEICDQ ;
  1. Q
  1. ;