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

ACRFIVD.m

Go to the documentation of this file.
  1. ACRFIVD ;IHS/OIRM/DSD/THL,AEF - INVOICE DISPLAY; [ 03/24/2005 1:31 PM ]
  1. ;;2.1;ADMIN RESOURCE MGT SYSTEM;**16**;JUL 31, 2001
  1. ;;ROUTINE TO CONTROL DISPLAY, SELECTION, ENTRY OF INVOICE NUMBERS
  1. EN Q
  1. DISPLAY ;EP;TO DISPLAY INVOICES FOR A DOCUMENT/RECEIVING REPORT
  1. Q:'$G(ACRDOCDA)
  1. I '$D(^ACRINV("C",ACRDOCDA)) D D A1
  1. .W !!,"NO Invoices currently on file for DOCUMENT NO.: ",$P(^ACRDOC(ACRDOCDA,0),U,2)," ",$P(^(0),U)
  1. K ^TMP("ACRINV",$J)
  1. N ACR,ACRJ,ACRN
  1. S (ACR,ACRJ)=0
  1. F S ACR=$O(^ACRINV("C",ACRDOCDA,ACR)) Q:'ACR S X=$G(^ACRINV(ACR,0)) I $P(X,U)]"" S ACRJ=ACRJ+1,^TMP("ACRINV",$J,"INV",$P(X,U),ACRJ)=ACR_U_$P(X,U)_U_$P(X,U,4)
  1. S ACRMAX=ACRJ
  1. S ACRN=""
  1. F S ACRN=$O(^TMP("ACRINV",$J,"INV",ACRN)) Q:ACRN="" D
  1. .S ACRJ=0
  1. .F S ACRJ=$O(^TMP("ACRINV",$J,"INV",ACRN,ACRJ)) Q:'ACRJ S ^TMP("ACRINV",$J,ACRJ)=^TMP("ACRINV",$J,"INV",ACRN,ACRJ)
  1. D DISP^ACRFIVDX
  1. Q
  1. EDIT ;EP;TO ADD OR EDIT INVOICE NUMBERS
  1. Q:'$G(ACRDOCDA)!'$D(ACRVDA)
  1. F D EDIT1 Q:$D(ACRQUIT)!$D(ACROUT)
  1. ESET Q:'$G(ACRMAX)!$D(ACROUT)
  1. I ACRMAX=1 S Y=1 D ES1 Q
  1. S DIR(0)="LOA^1:"_$G(ACRMAX)
  1. ;S DIR("A",1)="Select ALL INVOICES to include in" ;ACR*2.1*16.06 IM15505
  1. S DIR("A",1)="Select THE INVOICE to be included in the" ;ACR*2.1*15.06 IM15505
  1. S DIR("A")="PAID FOR/ACH ADDENDUM for this payment: "
  1. W !
  1. D DIR^ACRFDIC
  1. Q:$D(ACROUT)!$D(ACRQUIT) ;ACR*2.1*16.06 IM15505
  1. I Y<1 D G ESET
  1. .;W !!,"You must indicate ALL invoices which are included in this" ;ACR*2.1*16.06 IM15505
  1. .;W !,"payment so the system knows which to include in the PAID FOR" ;ACR*2.1*16.06 IM15505
  1. .;W !,"field or ACH ADDENDUM." ;ACR*2.1*16.06 IM15505
  1. .W !!,"You must indicate the invoice that will be included in this" ;ACR*2.1*16.06 IM15505
  1. .W !,"payment so the system knows which to include in the PAID FOR" ;ACR*2.1**16.06 IM15505
  1. .W !,"or ACH ADDENDUM field." ;ACR*2.1**16.06 IM15505
  1. S ACRY=","_ACRY
  1. S X=0
  1. F S X=$O(^TMP("ACRINV",$J,X)) Q:'X I ACRY'[(","_X_",") K ^TMP("ACRINV",$J,X)
  1. ESET1 Q:$D(ACROUT)
  1. I $P(ACRY,",",2),'$P(ACRY,",",3) S Y=$P(ACRY,",",2) I $G(^TMP("ACRINV",$J,+Y)) D ES1 Q
  1. S DIR(0)="NOA^1:"_$G(ACRMAX)
  1. S DIR("A",1)="Select the INVOICE to use for"
  1. S DIR("A")="calculation of payment due dates: "
  1. S DIR("B")=$P(ACRY,",",2)
  1. W !
  1. D DIR^ACRFDIC
  1. Q:$D(ACROUT)!$D(ACRQUIT)
  1. I Y<1!'$D(^TMP("ACRINV",$J,+Y)) D G ESET1
  1. .W !!,"You must indicate which is the PRIMARY Invoice so the system"
  1. .W !,"will know which dates to use to calculate when payment is due."
  1. ES1 S ACRINVDA=+$G(^TMP("ACRINV",$J,Y))
  1. D SETDOC:ACRINVDA
  1. EEXIT K ACRQUIT,ACRINVDA
  1. Q
  1. EDIT1 D DISPLAY
  1. K ACRQUIT
  1. I '$D(^ACRINV("C",ACRDOCDA)) S DIR(0)="SO^2:ADD Invoice"
  1. E S DIR(0)="SO^1:EDIT Invoice;2:ADD Invoice;3:REMOVE Invoice"
  1. S DIR("A")="Which one"
  1. W !
  1. D DIR^ACRFDIC
  1. I +Y<1 S ACRQUIT="" Q
  1. I Y=1 D E1 S Y=1
  1. I Y=2 D A1 S Y=2
  1. I Y=3 D D1 S Y=3
  1. Q
  1. E1 ;SELECT AND EDIT INVOICE
  1. Q:'$G(ACRMAX)
  1. S DIR(0)="NO^1:"_ACRMAX
  1. S DIR("A")="Edit which one"
  1. W !
  1. D DIR^ACRFDIC
  1. Q:$D(ACROUT)!$D(ACRQUIT)
  1. I +Y<1!$D(ACRQUIT)!'$G(^TMP("ACRINV",$J,+Y)) K ACRQUIT Q
  1. S (ACRINVDA,DA)=+^TMP("ACRINV",$J,Y)
  1. E11 S DIE="^ACRINV("
  1. S DR="[ACR INVOICE EDIT]"
  1. D DIE^ACRFDIC
  1. Q
  1. A1 ;ADD AN INVOICE
  1. S DIR(0)="FO^1:30"
  1. S DIR("A")="Invoice Number"
  1. W !
  1. D DIR^ACRFDIC
  1. I Y=""!(Y["^") K ACRQUIT Q
  1. S ACRINV=Y
  1. I $D(^ACRINV("B",Y)) D DUP I $D(ACRQUIT) K ACRQUIT Q
  1. S DIC="^ACRINV("
  1. S DIC(0)="L"
  1. S DIC("DR")=".02////"_ACRDOCDA_";.06////"_ACRVDA
  1. D FILE^ACRFDIC
  1. S (ACRINVDA,DA)=+Y
  1. D E11
  1. Q
  1. DUP ;INDICATE DUPLICATE INVOICE
  1. S ACRINVDA=$O(^ACRINV("B",Y,0))
  1. Q:'ACRINVDA
  1. W !!,"INVOICE NUMBER ",Y," is already on file for"
  1. W !,"DOCUMENT NUMBER: ",$P($G(^ACRDOC(+$P($G(^ACRINV(ACRINVDA,0)),U,2),0)),U)
  1. W !,"VENDOR.........: ",$P($G(^AUTTVNDR(+$P($G(^ACRINV(ACRINVDA,0)),U,6),0)),U)
  1. S DIR(0)="YO"
  1. S DIR("A")="Add this as new INVOICE"
  1. S DIR("B")="NO"
  1. W !
  1. D DIR^ACRFDIC
  1. I Y'=1 S ACRQUIT="" Q
  1. S Y=ACRINV
  1. Q
  1. D1 ;SELECT AND EDIT INVOICE
  1. Q:'$G(ACRMAX)
  1. S DIR(0)="NO^1:"_ACRMAX
  1. S DIR("A")="REMOVE which one"
  1. W !
  1. D DIR^ACRFDIC
  1. I +Y<1!$D(ACRQUIT) K ACRQUIT Q
  1. S DA=+^TMP("ACRINV",$J,Y)
  1. K ^TMP("ACRINV",$J,Y)
  1. S DIK="^ACRINV("
  1. D DIK^ACRFDIC
  1. Q
  1. SETDOC ;SET DATE OF INVOICE AND DATE INVOICE RECEIVED IN FMS DOCUMENT FILE
  1. N X
  1. S X=$G(^ACRINV(+ACRINVDA,0))
  1. Q:X=""
  1. S ACRINV=$P(X,U) ;RESET NUMBER IN CASE OF EDIT ;ACR*2.1*16.06 IM15505
  1. S DA=ACRDOCDA
  1. S DIE="^ACRDOC("
  1. S DR="103200.1////"_$P(X,U,4)_";103200.2////"_$P(X,U,3)
  1. D DIE^ACRFDIC
  1. Q