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

ABMDPAY2.m

Go to the documentation of this file.
  1. ABMDPAY2 ; IHS/ASDST/DMJ - Payment of Bill - Part 2 ;
  1. ;;2.6;IHS 3P BILLING SYSTEM;;NOV 12, 2009
  1. ;
  1. CHK ;EP for Additional Payment Checks
  1. S ABMP("CDFN")=+ABMP("BILL")
  1. I ABMP("SPAY") S DIE="^ABMDBILL(DUZ(2),",DR=".16////A",DA=ABMP("BDFN") D ^DIE Q
  1. I ABM("OB")'=0 D G PAZ
  1. .W !!?16,"(Unobligated Balance: ",$FN(ABM("OB"),",",2),")"
  1. .W !!?10,"The Bill can not be closed nor secondary billing occur until"
  1. .W !?10,"the unobligated balace is eliminated."
  1. .D OBIL
  1. D:ABM("OB")=0 CBIL
  1. I $P(ABMP("SIS"),U,2)>0 W !!?5,"A Sister Bill (",$P(ABMP("SIS"),U),") exists with an unobligated balance, it",!?5,"must be resolved before proceeding to bill a secondary entity." G PAZ
  1. I +ABMP("BILL")=$P(^ABMDBILL(DUZ(2),ABMP("BDFN"),0),U) G PAZ
  1. I '$D(^ABMDCLM(DUZ(2),ABMP("CDFN"),0)) W !!,"Claim Number: ",+ABMP("BILL"),?22,"- has previously been CANCELLED, thus further",!?24,"billing is not possible." G PAZ
  1. N I S I=0 F S I=$O(^ABMDBILL(DUZ(2),ABMP("BDFN"),13,I)) Q:'I D
  1. .Q:$P(^ABMDBILL(DUZ(2),ABMP("BDFN"),13,I,0),"^",3)'="I"
  1. .S DA(1)=ABMP("CDFN"),DIE="^ABMDCLM(DUZ(2),"_DA(1)_",13,",DA=I,DR=".03////C" D ^DIE K DR
  1. I '$P(ABM("TOT"),U,2),'$P(ABM("TOT"),U,3) W !!?10,"The bill has been paid in full with no deductible or",!?10,"write-off, thus no further billing is possible." D CCLM G PAZ
  1. W !!,"Checking for Secondary Billing...",!,"---------------------------------"
  1. UNBILL W !!,"Unbilled Sources: "
  1. S (ABM("HIT"),ABM("CNT"))=0
  1. I $P($G(^AUTNINS(ABMP("INS"),2)),U)="N" D CCLM G PAZ
  1. S ABMVDFN=$G(ABMP("VDFN")),ABMPDFN=ABMP("PDFN"),ABMVDT=ABMP("VDT")
  1. D ELG^ABMDLCK(ABMVDFN,.ABML,ABMPDFN,ABMVDT)
  1. N I S I=0 F S I=$O(ABML(I)) Q:'I D
  1. .N J S J=0 F S J=$O(ABML(I,J)) Q:'J D
  1. ..Q:$D(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,"B",J))
  1. ..S ABM("PRI")=I,ABM("INS")=J
  1. ..D ADD^ABMDE2E
  1. S ABM="" F ABM("I")=1:1 S ABM=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,"C",ABM)) Q:'ABM D
  1. .S ABM("X")=$O(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,"C",ABM,""))
  1. .I "PIFL"[$P(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,ABM("X"),0),U,3) S ABM("INSCO")=$P(^(0),U) D
  1. ..Q:$P($G(^AUTNINS(ABM("INSCO"),2)),U)="I" Q:$P($G(^(1)),U,7)=4
  1. ..W:ABM("CNT") ! S ABM("CNT")=ABM("CNT")+1
  1. ..W ?18,"[",ABM("CNT"),"] ",$P(^AUTNINS(ABM("INSCO"),0),U) S ABM(ABM("CNT"))=ABM("X")
  1. I ABM("CNT")=0 D G PAZ
  1. .D CCLM
  1. .W "NONE",!!,"Since there are no unbilled sources no further billing is possible."
  1. S ABM("HIT")=ABM(1)
  1. ;
  1. S ABM("AMT")=$P(ABM("TOT"),U,2) I $P(^ABMDBILL(DUZ(2),ABMP("BDFN"),2),U,4) S DIE="^ABMDBILL(DUZ(2),",DA=ABMP("BDFN"),DR=".24////0" D ^DIE
  1. I '$P(ABM("TOT"),U,3) G CONT
  1. W ! S DIR(0)="Y",DIR("A")="Apply write off to next bill (Y/N)",DIR("B")="N" D ^DIR K DIR Q:$D(DIRUT) S ABM("Y")=Y D I ABM("Y")'=1 D CCLM G PAZ
  1. .Q:ABM("Y")'=1
  1. .S DIE="^ABMDBILL(DUZ(2),",DA=ABMP("BDFN"),DR=".24////"_Y D ^DIE
  1. .S ABM("AMT")=ABM("AMT")+$P(ABM("TOT"),U,3)
  1. ;
  1. CONT I 'ABM("AMT"),'$D(ABMP("SIS")) W !!,"Since there is no uncollected balance no futher billing is possible." D CCLM G PAZ
  1. I "UC"'[$P($G(^ABMDCLM(DUZ(2),ABMP("CDFN"),0)),U,4) W !!?5,"Claim: ",+ABMP("BILL")," is in EDIT MODE thus can only be entered through",!?5,"the EDIT CLAIM DATA Option." G PAZ
  1. I '$P(ABM("TOT"),U),'$P(ABM("TOT"),U,2),$P(^ABMDBILL(DUZ(2),ABMP("BDFN"),2),U,4) G OCLM
  1. S DA(1)=ABMP("CDFN"),DIE="^ABMDCLM(DUZ(2),"_DA(1)_",13,",DA=ABM("HIT"),DR=".03////I" D ^DIE
  1. ;
  1. OCLM S DA=ABMP("CDFN")
  1. S DIE="^ABMDCLM(DUZ(2),",DR=".04////E;.14////@;.08////"_$P(^ABMDCLM(DUZ(2),ABMP("CDFN"),13,ABM("HIT"),0),U)
  1. D ^DIE
  1. W !!,"Claim Number: ",+ABMP("BILL")," is now Open for Editing!",!
  1. K DIR S DIR(0)="Y",DIR("A")="Enter CLAIM EDITOR for APPROVAL of Secondary Entity (Y/N)",DIR("B")="Y" D ^DIR K DIR Q:$D(DIRUT)!'$G(Y)
  1. S DA=+ABMP("BILL")
  1. N ABMP S ABMP("PAYM")=1,ABMP("CDFN")=DA
  1. D EXT^ABMDE
  1. S ABMP("PAYM")=1
  1. Q
  1. ;
  1. CCLM Q:$P(ABMP("SIS"),U,2)>0 S DA=ABMP("CDFN"),DIE="^ABMDCLM(DUZ(2),",DR=".04////C" D ^DIE
  1. Q
  1. ;
  1. KCLM S DA=+ABMP("BILL") Q:'$D(^ABMDCLM(DUZ(2),DA)) D ^ABMDEDIK
  1. W !!,"Claim Number: ",DA," has been deleted!"
  1. Q
  1. ;
  1. CBIL ;EP for Closing Bill
  1. S DIE="^ABMDBILL(DUZ(2),",DA=ABMP("BDFN"),DR=".04////C;.17///@" D ^DIE K DR
  1. Q
  1. ;
  1. OBIL S DIE="^ABMDBILL(DUZ(2),",DA=ABMP("BDFN"),DR=".04////P" D ^DIE K DR
  1. Q
  1. PAZ ;END OF PAGE
  1. K DIR W ! S DIR(0)="E" D ^DIR K DIR
  1. Q