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

PRCH58OB.m

Go to the documentation of this file.
  1. PRCH58OB ;WISC/CLH-OBLIGATE,ADJUST 1358 ;11/28/94 15:06
  1. V ;;5.1;IFCAP;;Oct 20, 2000
  1. ;Per VHA Directive 10-93-142, this routine should not be modified.
  1. COB(DA,TRNODE,PO,OB,X) ;
  1. ;enter transaction information onto PO
  1. ;kills TMP("NEWDATE"),TMP("NEWACC")
  1. N DATE,FLAG,I,J,PRCBBFY,SUBSTA,X
  1. S $P(PO(0),"^",3,9)=$P(TRNODE(3),"^",1,3)_"^"_$P(TRNODE(3),"^",6,9)
  1. S X=$P(PO(0),"^",7)+$P(PO(0),"^",9)
  1. S $P(PO(0),"^",11,12)=X_"^"_OB
  1. S $P(PO(0),"^",15)=$P(TRNODE(4),"^")
  1. F I=6,8 S $P(PO(0),"^",I)=+$P(PO(0),"^",I)
  1. S PO(1)=$P(TRNODE(3),"^",4,5)
  1. ;
  1. L +^PRC(442,DA)
  1. S ^PRC(442,DA,0)=PO(0)
  1. S $P(^PRC(442,DA,1),"^",1,2)=$P(PO(1),"^",1,2)
  1. S:$P(PO(0),"^",3)]"" ^PRC(442,"E",$P($P(PO(0),"^",3)," "),DA)=""
  1. S:$P(PO(1),"^")]"" ^PRC(442,"D",$P(PO(1),"^"),DA)=""
  1. I $D(PRCFA("RETRAN")),'PRCFA("RETRAN") D NODE22^PRCFFU5
  1. S PRCBBFY=$P(TRNODE(3),U,11)
  1. S SUBSTA=$P(TRNODE(0),"^",10)
  1. S:'$D(TMP("NEWDATE")) TMP("NEWDATE")=""
  1. S:'$D(TMP("NEWACC")) TMP("NEWACC")="0^NO"
  1. S DATE=$P(TMP("NEWDATE"),U)
  1. S FLAG=$P(TMP("NEWACC"),U)
  1. S DIE=442
  1. S DR="26///^S X=PRCBBFY;29///^S X=DATE;30///^S X=FLAG;31///^S X=SUBSTA"
  1. D ^DIE
  1. K DIE,DR
  1. K TMP("NEWDATE")
  1. K TMP("NEWACC")
  1. I $P($G(^PRC(442,DA,12)),"^",2)]"" D
  1. . D REMOVE^PRCHES5(DA),ENCODE^PRCHES5(DA,$P(^PRC(442,DA,1),"^",10))
  1. . QUIT
  1. L -^PRC(442,DA)
  1. Q
  1. ;
  1. PAT(DA,PODA,PO,PATNUM) ;get pat info, kill PRCHPO
  1. S (PO,PODA)=DA
  1. S PO(0)=$G(^PRC(442,PODA,0))
  1. S PATNUM=$P(PO(0),U)
  1. K PRCHPO
  1. Q
  1. ;
  1. ADJ(DIC,PRC,DA) ;
  1. S DIC("A")="Select OBLIGATION NUMBER: "
  1. S DIC(0)="AEQZ"
  1. S D="D"
  1. S DIC("S")="I $P(^(0),U,2)=""O"",$P(^(0),U,4)=1,PRC(""SITE"")=+^(0),+PRC(""CP"")=+$P($P(^(0),U),""-"",4)"
  1. D IX^DIC
  1. Q
  1. ;
  1. VER(PRC,X) ;verify entry
  1. S X=$O(^PRC(442,"B",PRC("SITE")_"-"_X,0))
  1. Q
  1. ;
  1. PO(DA,PO) ;PO data for adjustments
  1. N I
  1. F I=0,1,7,8 S PO(I)=$G(^PRC(442,DA,I))
  1. Q
  1. ;
  1. OLDTT(DA,X) ;old code sheet info
  1. S X=$E($G(^PRC(442,DA,10,1,0)),1,6)
  1. Q
  1. ;
  1. POADJ(PO,PODA,TRNODE,AMT) ;set adjustments in 442
  1. N DIE,DR,DA,X,X1
  1. S X1=AMT
  1. S:AMT<0 AMT=-AMT
  1. S DIE="^PRC(442,"
  1. S DA=PODA
  1. S DR="92///^S X=$S($P(PO(0),U,16)]"""":$P(PO(0),U,16),1:$P(PO(0),U,15))+X1;91///^S X=$P(PO(0),U,15)+X1;7.2///^S X=AMT;3.4///^S X=$P(PO(0),U,7)+$P(TRNODE(3),U,7);94///^S X=$P(PO(8),U,1)+X1"
  1. S:$P(PO(0),U,9) DR=DR_";4.4///^S X=$P(PO(0),U,9)+$P(TRNODE(3),U,9)"
  1. D ^DIE
  1. S PO(0)=^PRC(442,PODA,0)
  1. S X=100
  1. S DA=PODA
  1. D ENF^PRCHSTAT
  1. S:X1'=AMT AMT=X1
  1. Q
  1. ;
  1. OBLK(PODA,PRCA) ;look up obligation number
  1. N DIC,Y
  1. S DIC="^PRC(442,"
  1. S DIC(0)="AEMNQZ"
  1. S DIC("A")="Select OBLIGATION NUMBER: "
  1. S DIC("S")="I $P(^(0),U,2)=21"
  1. S:$G(PRCA) DIC("S")=DIC("S")_","_"+$P(^(0),U,3)=PRCA"
  1. D ^DIC
  1. I +Y<0 S PODA=0 Q
  1. S PODA=+Y
  1. S PODA(0)=Y(0)
  1. S PODA(1)=$P(Y,U,2)
  1. S PODA(2)=$P(Y(0),U,3)
  1. Q
  1. ;
  1. BAL(PODA,AMT) ;set the 8th node equal to obligation amount
  1. S ^PRC(442,PODA,8)=AMT_"^0^0"
  1. Q
  1. ;
  1. KILL(PO) ;if 1358 obligation not completed, set dollar amounts on PAT to 0
  1. ;delete 'PRIMARY 2237' field, set status to 'CANCELLED ORDER'
  1. ;and delete references to pat number on original request.
  1. N ZZX,XXZ,DIE,DR,X,Y,TRDA,DA
  1. D WAIT^PRCFYN
  1. S ZZX=^PRC(442,PO,0)
  1. S $P(ZZX,U,15,16)="0^0"
  1. F XXZ=7,9 S $P(ZZX,U,XXZ)=0 S $P(ZZX,U,12)=""
  1. S ^PRC(442,PO,0)=ZZX
  1. K XXZ,^(9)
  1. S DA=+$P(ZZX,U,12)
  1. I $D(^PRCS(410,DA,0)) S DIE="^PRCS(410,",DR="52///@;24///@" D ^DIE K DIE,DA,DR,ZZX
  1. S (X,Y)=45,DA=PO
  1. D UPD^PRCHSTAT
  1. K DIE,DA,DR,X,Y
  1. S X="PAT Number "_PATNUM_" has been cancelled."
  1. D MSG^PRCFQ W !
  1. S X="Status on 1358 remains 'Pending Fiscal Action'.*"
  1. D MSG^PRCFQ
  1. S TRDA=+$P(ZZX,U,12)
  1. I $D(^PRCS(410,TRDA,0)) D KILL^PRCS58OB(TRDA)
  1. Q
  1. ;
  1. BAL1(PODA,AMT) ;Set liquidation balance
  1. S:$G(^PRC(442,+PODA,8)) $P(^(8),"^",2)=AMT
  1. Q