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

ABMDELOO.m

Go to the documentation of this file.
  1. ABMDELOO ; IHS/ASDST/DMJ - Claim Looping Utility ;
  1. ;;2.6;IHS 3P BILLING SYSTEM;**9**;NOV 12, 2009
  1. ;
  1. ; IHS/DSD/LSL 03/20/98 Set ABMPERM("EDITOR") when looping
  1. ; through flagged as billable cross-reference to
  1. ; avoid user being kicked out to menu.
  1. ;
  1. ; IHS/SD/SDR - v2.5 p12 - UFMS
  1. ; If user isn't logged into cashiering session they can't do
  1. ; this option
  1. ;
  1. K ABM,ABMP,ABMPP,DIC,ABMX,ABMV,ABMZ,ABMC,ABMU,ABML,DIROUT,DIRUT,DTOUT,DUOUT
  1. I $P($G(^ABMDPARM(DUZ(2),1,0)),"^",15)'="Y" D Q
  1. .W !!?5,*7,"ACCESS to the CLAIM EDITOR is DENIED until SITE PARAMETERS file",!?5,"has been Reviewed!"
  1. .S DIR(0)="E" D ^DIR K DIR
  1. S ABMPERM("EDITOR")=1
  1. ;
  1. ; var def: ABMPP("STATUS") is defined as the status for looping
  1. ; where: 0 - looping is active
  1. ; 1 - looping is completed
  1. ; 2 - looping is terminated
  1. ;
  1. ;start new code abm*2.6*9 NOHEAT - ensure UFMS is setup
  1. I $P($G(^ABMDPARM(DUZ(2),1,4)),U,15)="" D Q
  1. .W !!,"* * UFMS SETUP MUST BE DONE BEFORE ANY BILLING FUNCTIONS CAN BE USED! * *",!
  1. .S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
  1. ;end new code
  1. I $P($G(^ABMDPARM(DUZ(2),1,4)),U,15)=1 D Q:+$G(ABMUOPNS)=0
  1. .S ABMUOPNS=$$FINDOPEN^ABMUCUTL(DUZ)
  1. .I +$G(ABMUOPNS)=0 D Q
  1. ..W !!,"* * YOU MUST SIGN IN TO BE ABLE TO PERFORM BILLING FUNCTIONS! * *",!
  1. ..S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
  1. ;
  1. D ^ABMDESEL Q:$D(DTOUT)!$D(DUOUT)!$D(DIROUT)
  1. S ABMPP("STATUS")=0
  1. S ABMPP("CLM")=0 F S ABMPP("CLM")=$O(^ABMDCLM(DUZ(2),"AS","O",ABMPP("CLM"))) D Q:ABMPP("STATUS")
  1. .I 'ABMPP("CLM") S ABMPP("STATUS")=1 Q
  1. .S ABMP("HIT")=0,ABM=ABMPP("CLM") D ^ABMDECHK K ABM Q:'ABMP("HIT")
  1. .W !!,"LOOPING through CLAIMS with a Status of ROLLED-In Edit Mode...."
  1. .S ABMPERM("EDITOR")=1
  1. .S ABMP("CDFN")=ABMPP("CLM") D EXT^ABMDE
  1. .Q:ABMPP("STATUS")=2
  1. .D ASK
  1. G XIT:ABMPP("STATUS")'=1
  1. S ABMPP("STATUS")=0,ABMPP("TIME1")=$P($H,",",2)
  1. S ABMPP("CLM")=0 F S ABMPP("CLM")=$O(^ABMDCLM(DUZ(2),"AS","E",ABMPP("CLM"))) D Q:ABMPP("STATUS")
  1. .I $D(ABMPP("TIME1")) S ABMPP("TIME2")=$P($H,",",2) I ABMPP("TIME2")-ABMPP("TIME1")>5 D WAIT^DICD S ABMPP("TIME1")=ABMPP("TIME2")
  1. .I 'ABMPP("CLM") S ABMPP("STATUS")=1 Q
  1. .S ABMP("HIT")=0,ABM=ABMPP("CLM") D ^ABMDECHK K ABM Q:'ABMP("HIT")
  1. .K ABMPP("TIME1")
  1. .W !!,"LOOPING through CLAIMS with a Status of IN EDIT MODE...."
  1. .S ABMPERM("EDITOR")=1
  1. .S ABMP("CDFN")=ABMPP("CLM") D EXT^ABMDE
  1. .Q:ABMPP("STATUS")=2
  1. .D ASK
  1. .S ABMPP("TIME1")=$P($H,",",2)
  1. G XIT:ABMPP("STATUS")'=1
  1. ;
  1. S ABMPP("STATUS")=0
  1. S ABMPP("CLM")=0 F S ABMPP("CLM")=$O(^ABMDCLM(DUZ(2),"AS","F",ABMPP("CLM"))) D Q:ABMPP("STATUS")
  1. .I 'ABMPP("CLM") S ABMPP("STATUS")=1 Q
  1. .S ABMP("HIT")=0,ABM=ABMPP("CLM") D ^ABMDECHK K ABM Q:'ABMP("HIT")
  1. .W !!,"LOOPING through CLAIMS with a Status of FLAGGED AS BILLABLE...."
  1. .S ABMPERM("EDITOR")=1
  1. .S ABMP("CDFN")=ABMPP("CLM") D EXT^ABMDE
  1. .Q:ABMPP("STATUS")=2
  1. .I ABMPP("STATUS") D ASK
  1. TT G XIT
  1. ;
  1. ASK G LOOP:'$D(^XUSEC("ABMDZ MANAGEMENT",DUZ))!'ABMPP("STATUS")
  1. K DIR W !! S DIR(0)="SO^1:CONTINUE LOOPING;2:DELETE CLAIM;3:QUIT"
  1. S DIR("A")="Desired ACTION",DIR("B")=1
  1. D ^DIR K DIR
  1. I Y'=2 S ABMPP("STATUS")=$S(Y'=1:2,1:0) Q
  1. S ABMP("CDFN")=ABMPP("CLM") D ENT^ABMDECAN
  1. ;
  1. LOOP W ! K DIR S DIR(0)="YO",DIR("A")="Want to Continue LOOPING (Y/N)",DIR("B")="Y" D ^DIR S ABMPP("STATUS")=$S($G(Y):0,1:2)
  1. Q
  1. ;
  1. XIT K ABMPP
  1. Q