| 1 | PRCFFU13 ;WISC/SJG-ROUTINE TO PROCESS OBLIGATIONS CONT ;6/13/94  14:34
 | 
|---|
| 2 | V ;;5.1;IFCAP;;Oct 20, 2000
 | 
|---|
| 3 |  ;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
| 4 |  ; Allows FIscal to edit Cost Center and BOCs prior to 1358 obligation
 | 
|---|
| 5 | 1358 ; 1358 Correction
 | 
|---|
| 6 |  N CCEDIT,BOCEDIT D PROMPT
 | 
|---|
| 7 |  Q:'Y!($D(DIRUT))
 | 
|---|
| 8 |  S ESIGCHK=$$VERIFY^PRCSC1(OB) I 'ESIGCHK W !!,"This 1358 Miscellaneous Obligation has been tampered with.  Please notify IFCAP APPLICATION COORDINATOR." Q
 | 
|---|
| 9 |  S (BOCEDIT,CCEDIT)=0
 | 
|---|
| 10 |  S OLDCC=$P(TRNODE(3),U,3),OLDBOC=+$P(TRNODE(3),U,6)
 | 
|---|
| 11 |  W !! K MSG S MSG="...now editing Cost Center and BOC information..." D EN^DDIOL(MSG) K MSG W !
 | 
|---|
| 12 |  D OB^PRCS58OB(DA)
 | 
|---|
| 13 |  S:+OLDCC'=+NEWCC CCEDIT=1 S:+OLDBOC'=+NEWBOC BOCEDIT=1
 | 
|---|
| 14 |  I CCEDIT!(BOCEDIT) D   Q
 | 
|---|
| 15 |  .S FISCEDIT=1,ESIGMSG="",ROUTINE=$T(+0)
 | 
|---|
| 16 |  .D RECODE^PRCSC1(OB,.ESIGMSG)
 | 
|---|
| 17 |  .I ESIGMSG<1 D
 | 
|---|
| 18 |  ..S:'$D(ROUTINE) ROUTINE=$T(+0)
 | 
|---|
| 19 |  ..W !!,$$ERROR(ROUTINE,ESIGMSG)
 | 
|---|
| 20 |  ..W:ESIGMSG=0!(ESIGMSG=-3) !,"Notify IFCAP APPLICATION COORDINATOR!",$C(7)
 | 
|---|
| 21 |  ..S DIR(0)="EAO",DIR("A")="Press RETURN to continue" D ^DIR K DIR
 | 
|---|
| 22 |  ..Q
 | 
|---|
| 23 |  .N X S X=$P($G(TRNODE(4)),U,5) D VER^PRCH58OB(.PRC,.X) I X]"" D
 | 
|---|
| 24 |  ..S PO=POIEN K ^PRC(442,POIEN,22) S NODE=$G(^PRC(442,POIEN,22,0)) I NODE="" D
 | 
|---|
| 25 |  ...S ^PRC(442,POIEN,22,0)="^"_$P(^DD(442,41,0),U,2)
 | 
|---|
| 26 |  ...N DA S DIE=442,DA=POIEN,DR="3///^S X=+NEWBOC" D ^DIE K DIE,DR
 | 
|---|
| 27 |  ...D MSG1,NODE22^PRCFFU5
 | 
|---|
| 28 |  .Q
 | 
|---|
| 29 |  D MSG6
 | 
|---|
| 30 |  Q
 | 
|---|
| 31 | PROMPT ; Prompt for user
 | 
|---|
| 32 |  S DIR(0)="Y",DIR("A")="Should the Cost Center or BOC information be edited at this time",DIR("B")="NO"
 | 
|---|
| 33 |  S DIR("?")="Enter 'NO' or 'N' or 'RETURN' if no editing is needed."
 | 
|---|
| 34 |  S DIR("?",1)="Enter '^' to exit the option."
 | 
|---|
| 35 |  S DIR("?",2)="Enter 'YES' or 'Y' to edit this information."
 | 
|---|
| 36 |  W ! D ^DIR K DIR
 | 
|---|
| 37 |  Q
 | 
|---|
| 38 |  ; Message processing
 | 
|---|
| 39 | MSG1 K MSG W !! S MSG="...now recalculating FMS accounting lines..." D EN^DDIOL(MSG) K MSG W !
 | 
|---|
| 40 |  Q
 | 
|---|
| 41 |  ;
 | 
|---|
| 42 | MSG2 K MSG W !! S MSG(1)="...Cost Center is missing - cannot continue..."
 | 
|---|
| 43 | MSG21 S MSG(2)=" ",MSG(3)="No further action is being taken on this obligation."
 | 
|---|
| 44 |  D EN^DDIOL(.MSG) K MSG W !
 | 
|---|
| 45 |  Q
 | 
|---|
| 46 |  ;
 | 
|---|
| 47 | MSG3 K MSG W !! S MSG="BOC "_+SA_" is not valid with Cost Center "_$P(PO(0),U,5)_"."
 | 
|---|
| 48 |  D EN^DDIOL(MSG) K MSG W !
 | 
|---|
| 49 |  Q
 | 
|---|
| 50 |  ;
 | 
|---|
| 51 | MSG4 W !! S DIR(0)="Y",DIR("A",1)="I will now enter BOC "_+SA_" on all line items.",DIR("A")="Is this OK",DIR("B")="YES"
 | 
|---|
| 52 |  D ^DIR K DIR
 | 
|---|
| 53 |  Q
 | 
|---|
| 54 |  ;
 | 
|---|
| 55 | MSG5 K MSG W !! S MSG="...now changing the BOCs on all line items..."
 | 
|---|
| 56 |  D EN^DDIOL(MSG) K MSG W !
 | 
|---|
| 57 |  Q
 | 
|---|
| 58 | MSG6 I (CCEDIT=1)!(BOCEDIT=1) Q
 | 
|---|
| 59 |  K MSG W !!
 | 
|---|
| 60 |  S MSG(1)=" ",MSG(2)=" "
 | 
|---|
| 61 |  S:CCEDIT=0 MSG(1)="Cost Center has not changed.",MSG(3)=" "
 | 
|---|
| 62 |  S:BOCEDIT=0 MSG(2)="BOC has not changed.",MSG(4)=" "
 | 
|---|
| 63 |  S MSG(5)="No further editing is being done on this obligation.",MSG(6)=" "
 | 
|---|
| 64 |  S MSG(7)="Returning to the Obligation processing."
 | 
|---|
| 65 |  D EN^DDIOL(.MSG) K MSG W !
 | 
|---|
| 66 |  Q
 | 
|---|
| 67 | ERROR(ROUTINE,ERROR) ;
 | 
|---|
| 68 |  I ROUTINE'="PRCUESIG" G NEXT
 | 
|---|
| 69 |  I ERROR=-3 Q "NO SIGNATURE BLOCK IN FILE 200."
 | 
|---|
| 70 |  I ERROR=-2 Q "TIME OUT OCCURRED DURING SIGNING PROCESS."
 | 
|---|
| 71 |  I ERROR=-1 Q "USER CANCELLED SIGNING PROCESS."
 | 
|---|
| 72 |  I ERROR=0 Q "INVALID SIGNATURE ENTERED."
 | 
|---|
| 73 |  Q "PROBLEM WITH ELECTRONIC SIGNATURE.  ERROR= "_ERROR_" CALLING ROUTINE "_ROUTINE
 | 
|---|
| 74 | NEXT I ERROR=-4 Q "CAN'T RE-SIGN RECORD."
 | 
|---|
| 75 |  I ERROR=-3 Q "NO VALID USER NUMBER FOR FILING."
 | 
|---|
| 76 |  I ERROR=-2 Q "NO SIGNATURE BLOCK IN FILE 200."
 | 
|---|
| 77 |  I ERROR=-1 Q "A REQUIRED RECORD IS NULL."
 | 
|---|
| 78 |  Q "PROBLEM WITH ELECTRONIC SIGNATURE.  ERROR= "_ERROR_" CALLING ROUTINE "_ROUTINE
 | 
|---|
| 79 |  Q
 | 
|---|