| [613] | 1 | PRCOVL ;WISC/DKM/BGJ-IFCAP AR VENDOR EDIT ROUTINE ;[10/19/98 2:36pm]
 | 
|---|
 | 2 | V ;;5.1;IFCAP;**7**;Oct 20, 2000
 | 
|---|
 | 3 |  ;Per VHA Directive 10-93-142, this routine should not be modified.
 | 
|---|
 | 4 |  ;
 | 
|---|
 | 5 | EN ; -- main entry point for PRCO VENDOR EDIT FOR AR
 | 
|---|
 | 6 |  ; FIRST LETS SEE IF THERE ARE ANY VENDOR RECORDS TO EDIT.
 | 
|---|
 | 7 |  S COUNT=$O(^PRCF(422.2,"B","AR-EDIT-01",0)) G:COUNT'>0 NONE
 | 
|---|
 | 8 |  S COUNT=$P($G(^PRCF(422.2,COUNT,0)),U,2) G:COUNT'>0 NONE
 | 
|---|
 | 9 |  K COUNT
 | 
|---|
 | 10 |  ;
 | 
|---|
 | 11 |  ; GET TERMINAL ATTRIBUTES.
 | 
|---|
 | 12 |  ;
 | 
|---|
 | 13 |  I '$D(IOF)!('$G(IOST(0))) S IOP="HOME" D ^%ZIS K IOP
 | 
|---|
 | 14 |  S X="IORVON;IORVOFF" D ENDR^%ZISS
 | 
|---|
 | 15 |  S PRCO("RV1")=$G(IORVON),PRCO("RV0")=$G(IORVOFF)
 | 
|---|
 | 16 |  S PRCO("XY")="N DX,DY S (DX,DY)=0 "_$G(^%ZOSF("XY"))
 | 
|---|
 | 17 |  D EN^VALM("PRCO VENDOR EDIT FOR AR")
 | 
|---|
 | 18 |  Q
 | 
|---|
 | 19 |  ;
 | 
|---|
 | 20 | HDR ; -- header code
 | 
|---|
 | 21 |  S VALMHDR(1)="Edit vendor selected by AR user"
 | 
|---|
 | 22 |  Q
 | 
|---|
 | 23 |  ;
 | 
|---|
 | 24 | INIT ; -- init variables and list array
 | 
|---|
 | 25 |  K ^TMP("PRCOVL",$J)
 | 
|---|
 | 26 |  S LOST=0
 | 
|---|
 | 27 |  S NAME=""
 | 
|---|
 | 28 |  I $O(^PRC(440.3,"AE",NAME))="" W !,"No Vendor records to edit." G NONE
 | 
|---|
 | 29 | INITA D CLEAN^VALM10
 | 
|---|
 | 30 |  S COUNT=0
 | 
|---|
 | 31 |  S LINENO=0
 | 
|---|
 | 32 |  S NAME=""
 | 
|---|
 | 33 |  F  S NAME=$O(^PRC(440.3,"AE",NAME)) Q:NAME=""  D
 | 
|---|
 | 34 |  .  S LIST=0
 | 
|---|
 | 35 |  .  F  S LIST=$O(^PRC(440.3,"AE",NAME,LIST)) Q:LIST=""  D
 | 
|---|
 | 36 |  .  .  S NAME=$S($G(NAME)]"":NAME,1:$P($G(^PRC(440,LIST,0)),U)) Q:NAME=""
 | 
|---|
 | 37 |  .  .  I $G(^PRC(440.3,LIST,"AR"))']"" D  Q
 | 
|---|
 | 38 |  .  .  .  K ^PRC(440.3,LIST)
 | 
|---|
 | 39 |  .  .  .  K ^PRC(440.3,"AD",NAME,LIST,LIST)
 | 
|---|
 | 40 |  .  .  .  K ^PRC(440.3,"AE",NAME,LIST,LIST)
 | 
|---|
 | 41 |  .  .  .  Q
 | 
|---|
 | 42 |  .  .  S VDA=0
 | 
|---|
 | 43 |  .  .  F  S VDA=$O(^PRC(440.3,"AE",NAME,LIST,VDA)) Q:VDA=""  D
 | 
|---|
 | 44 |  .  .  .  S COUNT=COUNT+1
 | 
|---|
 | 45 |  .  .  .  S SENT=$P($G(^PRC(440.3,VDA,"AR")),U,5)
 | 
|---|
 | 46 |  .  .  .  S OK=$P($G(^PRC(440.3,VDA,"AR")),U,4)
 | 
|---|
 | 47 |  .  .  .  S TAX=$P($G(^PRC(440,VDA,3)),U,8)
 | 
|---|
 | 48 |  .  .  .  S X=$$SETFLD^VALM1(COUNT,"","NUMBER")
 | 
|---|
 | 49 |  .  .  .  S X=$$SETFLD^VALM1(NAME,X,"VENDOR")
 | 
|---|
 | 50 |  .  .  .  S X=$$SETFLD^VALM1(TAX,X,"TAX ID/SSN")
 | 
|---|
 | 51 |  .  .  .  S X=$$SETFLD^VALM1(OK,X,"OK")
 | 
|---|
 | 52 |  .  .  .  S X=$$SETFLD^VALM1(SENT,X,"SENT")
 | 
|---|
 | 53 |  .  .  .  S LINENO=LINENO+1
 | 
|---|
 | 54 |  .  .  .  D SET^VALM10(COUNT,X,LINENO)
 | 
|---|
 | 55 |  .  .  .  S ^TMP("PRCOVL",$J,LINENO)=COUNT_"^"_LIST
 | 
|---|
 | 56 |  .  .  .  Q
 | 
|---|
 | 57 |  .  .  Q
 | 
|---|
 | 58 |  .  Q
 | 
|---|
 | 59 |  S VALMCNT=COUNT
 | 
|---|
 | 60 |  S LN=$O(^PRCF(422.2,"B","AR-EDIT-01",0))
 | 
|---|
 | 61 |  S $P(^PRCF(422.2,LN,0),U,2)=COUNT
 | 
|---|
 | 62 |  Q
 | 
|---|
 | 63 |  ;
 | 
|---|
 | 64 | HELP ; -- help code
 | 
|---|
 | 65 |  S X="?" D DISP^XQORM1 W !!
 | 
|---|
 | 66 |  Q
 | 
|---|
 | 67 |  ;
 | 
|---|
 | 68 | EXIT ; -- exit code
 | 
|---|
 | 69 |  Q
 | 
|---|
 | 70 |  ;
 | 
|---|
 | 71 | EXPND ; -- expand code
 | 
|---|
 | 72 |  Q
 | 
|---|
 | 73 |  ;
 | 
|---|
 | 74 | NONE ; COME HERE IF THERE ARE NO VENDOR RECORDS TO EDIT.
 | 
|---|
 | 75 |  W !!,"There are no vendor records to edit at this time."
 | 
|---|
 | 76 | NONE1 S DIR(0)="E"
 | 
|---|
 | 77 |  S DIR("A")="Enter RETURN to continue"
 | 
|---|
 | 78 |  D ^DIR
 | 
|---|
 | 79 |  K DIR
 | 
|---|
 | 80 |  Q
 | 
|---|
 | 81 |  ;
 | 
|---|
 | 82 | REV ;COMPLETE REVIEW OF VENDOR ENTRY
 | 
|---|
 | 83 |  N SPACE,VALMY,IEN,PRCOI,PRCOIN,DIC,DA,DR,DIQ,DIR,Y
 | 
|---|
 | 84 |  D EN^VALM2(XQORNOD(0),"OS")
 | 
|---|
 | 85 |  S PRCOI=0
 | 
|---|
 | 86 |  S PRCOI=$O(VALMY(PRCOI)) G:'PRCOI REVQ
 | 
|---|
 | 87 |  S PRCOIN=$G(^TMP("PRCOVL",$J,PRCOI))
 | 
|---|
 | 88 |  S IEN=+$P(PRCOIN,U,2)
 | 
|---|
 | 89 |  D FULL^VALM1
 | 
|---|
 | 90 | REV1 W @IOF
 | 
|---|
 | 91 |  K PRCORVP
 | 
|---|
 | 92 |  S DIC="^PRC(440,",DA=IEN,DR=".01:46",DIQ="PRCORVP",DIQ(0)="E"
 | 
|---|
 | 93 |  D EN^DIQ1
 | 
|---|
 | 94 |  S $P(SPACE," ",24)=" "
 | 
|---|
 | 95 |  W !!,"           Vendor Name: "_$$FIELD(IEN,.01)
 | 
|---|
 | 96 |  W ?70,"PAGE: 1"
 | 
|---|
 | 97 |  W !,"      Ordering Address: "_$$FIELD(IEN,1)
 | 
|---|
 | 98 |  W:$$FIELD(IEN,2)]"" !,SPACE_$$FIELD(IEN,2)
 | 
|---|
 | 99 |  S X="        City,State,ZIP: "
 | 
|---|
 | 100 |  S:$$FIELD(IEN,4.2)]"" X=X_$$FIELD(IEN,4.2)_", "
 | 
|---|
 | 101 |  S:$$FIELD(IEN,4.4)]"" X=X_$$FIELD(IEN,4.4)_" "
 | 
|---|
 | 102 |  S X=X_$S($L($$FIELD(IEN,4.6))=9:$E($$FIELD(IEN,4.6),1,5)_"-"_$E($$FIELD(IEN,4.6),6,9),1:$$FIELD(IEN,4.6))
 | 
|---|
 | 103 |  W !,X
 | 
|---|
 | 104 |  W !!,"              FMS Name: "_$$FIELD(IEN,34.5)
 | 
|---|
 | 105 |  W !!," *     Payment ADDRESS: "_$$FIELD(IEN,17.3)
 | 
|---|
 | 106 |  W !,"                        "_$$FIELD(IEN,17.4)
 | 
|---|
 | 107 |  W:$$FIELD(IEN,17.5)]"" !,SPACE_$$FIELD(IEN,17.5)
 | 
|---|
 | 108 |  W:$$FIELD(IEN,17.6)]"" !,SPACE_$$FIELD(IEN,17.6)
 | 
|---|
 | 109 |  S X=" *      City,State,ZIP: "
 | 
|---|
 | 110 |  S:$$FIELD(IEN,17.7)]"" X=X_$$FIELD(IEN,17.7)_", "
 | 
|---|
 | 111 |  S:$$FIELD(IEN,17.8)]"" X=X_$$FIELD(IEN,17.8)_" "
 | 
|---|
 | 112 |  S X=X_$S($L($$FIELD(IEN,17.9))=9:$E($$FIELD(IEN,17.9),1,5)_"-"_$E($$FIELD(IEN,17.9),6,9),1:$$FIELD(IEN,17.9))
 | 
|---|
 | 113 |  W !,X
 | 
|---|
 | 114 |  W !!,"PAYMENT CONTACT PERSON: "_$$FIELD(IEN,17)
 | 
|---|
 | 115 |  W !,"  PAYMENT PHONE NUMBER: "_$$FIELD(IEN,7.2)
 | 
|---|
 | 116 |  W !
 | 
|---|
 | 117 |  W !,"     * = REQUIRED FIELD"
 | 
|---|
 | 118 |  W !
 | 
|---|
 | 119 |  S DIR(0)="E"
 | 
|---|
 | 120 |  D ^DIR
 | 
|---|
 | 121 |  K DIR
 | 
|---|
 | 122 |  W !
 | 
|---|
 | 123 |  G:Y'=1 REVEXIT
 | 
|---|
 | 124 |  W @IOF
 | 
|---|
 | 125 |  W !!,"           Vendor Name: "_$$FIELD(IEN,.01)
 | 
|---|
 | 126 |  W ?70,"PAGE: 2"
 | 
|---|
 | 127 |  W !!,"       FMS VENDOR CODE: "_$$FIELD(IEN,34)
 | 
|---|
 | 128 |  W !,"          ALT-ADDR-IND: "_$$FIELD(IEN,35)
 | 
|---|
 | 129 |  W !," *          TAX ID/SSN: "_$$FIELD(IEN,38)
 | 
|---|
 | 130 |  W !," *      SSN/TAX ID IND: "_$$FIELD(IEN,39)
 | 
|---|
 | 131 |  W !!,"        NON-RECURRING/"
 | 
|---|
 | 132 |  W !,"      RECURRUNG VENDOR: "_$$FIELD(IEN,36)
 | 
|---|
 | 133 |  W !!," 1099 VENDOR INDICATOR: "_$$FIELD(IEN,41)
 | 
|---|
 | 134 |  W !," *         VENDOR TYPE: "_$$FIELD(IEN,44)
 | 
|---|
 | 135 |  W !,"      DUN & BRADSTREET: "_$$FIELD(IEN,18.3)
 | 
|---|
 | 136 |  W !
 | 
|---|
 | 137 |  W !,"     * = REQUIRED FIELD"
 | 
|---|
 | 138 |  W !
 | 
|---|
 | 139 |  S DIR(0)="E"
 | 
|---|
 | 140 |  S DIR("A")="Enter RETURN to continue"
 | 
|---|
 | 141 |  D ^DIR
 | 
|---|
 | 142 |  K DIR
 | 
|---|
 | 143 | REVEXIT I $G(RETURN)=961 G REVQ
 | 
|---|
 | 144 |  S VALMBCK="R",VALMBG=1
 | 
|---|
 | 145 | REVQ Q
 | 
|---|
 | 146 |  ;
 | 
|---|
 | 147 | FIELD(IEN,FIELD) ;FETCH EXTERNAL VALUE OF FIELD
 | 
|---|
 | 148 |  ;FOR RECORD 'IEN' FROM FILE 440.3
 | 
|---|
 | 149 |  S FIELD=$G(PRCORVP(440,IEN,FIELD,"E"))
 | 
|---|
 | 150 |  Q FIELD
 | 
|---|
 | 151 |  ;
 | 
|---|
 | 152 | EDIT ;EDIT THIS VENDOR
 | 
|---|
 | 153 |  N PRCOI,PRCOIN,IEN,RETURN
 | 
|---|
 | 154 |  D EN^VALM2(XQORNOD(0),"OS")
 | 
|---|
 | 155 |  S PRCOI=0
 | 
|---|
 | 156 |  S PRCOI=$O(VALMY(PRCOI))
 | 
|---|
 | 157 |  G:'PRCOI REVQ
 | 
|---|
 | 158 |  S PRCOIN=$G(^TMP("PRCOVL",$J,PRCOI))
 | 
|---|
 | 159 |  S IEN=+$P(PRCOIN,U,2)
 | 
|---|
 | 160 |  S SENT=$P($G(^PRC(440.3,IEN,"AR")),U,5)
 | 
|---|
 | 161 |  I SENT]"" W !!,"This record has already been sent to Austin or FISCAL." D NONE1 G EDITEX
 | 
|---|
 | 162 |  D FULL^VALM1
 | 
|---|
 | 163 |  W @IOF
 | 
|---|
 | 164 |  S NAME=$P($G(^PRC(440,IEN,0)),U)
 | 
|---|
 | 165 |  W:NAME]"" !!?11,"Vendor Name: "_NAME
 | 
|---|
 | 166 |  D HILO^PRCFQ
 | 
|---|
 | 167 |  S (DA,PRCFA("VEND"))=IEN
 | 
|---|
 | 168 |  W !
 | 
|---|
 | 169 |  S DIR(0)="Y"
 | 
|---|
 | 170 |  S DIR("A")="Review the vendor selected"
 | 
|---|
 | 171 |  S DIR("B")="YES"
 | 
|---|
 | 172 |  D ^DIR
 | 
|---|
 | 173 |  K DIR
 | 
|---|
 | 174 |  W !
 | 
|---|
 | 175 |  G:$D(DIRUT) EDITEX
 | 
|---|
 | 176 |  I +Y=1 SET RETURN=961 D REV1 W @IOF
 | 
|---|
 | 177 |  K PRCTMP,RETURN
 | 
|---|
 | 178 |  D DOIT
 | 
|---|
 | 179 |  G:$D(DIRUT)!(Y'=1) EDITEX
 | 
|---|
 | 180 |  D SCREEN
 | 
|---|
 | 181 |  L +^PRC(440,DA):5 E  W !,$C(7),"Another user is editing this entry!" G EDITEX
 | 
|---|
 | 182 |  S DIE="^PRC(440,"
 | 
|---|
 | 183 |  S DR=$S(LOCAT="S":"[PRCHVENDOR]",1:"[PRCF FMS VENEDIT1B]")
 | 
|---|
 | 184 |  D ^DIE
 | 
|---|
 | 185 |  K DIE,DR,ORDER
 | 
|---|
 | 186 |  S ARFLG=$G(^PRC(440.3,PRCFA("VEND"),"AR"))
 | 
|---|
 | 187 |  S IEN=$P(ARFLG,U,2)
 | 
|---|
 | 188 |  S PRC("SITE")=$P(ARFLG,U,3)
 | 
|---|
 | 189 |  S FLAG=$P(ARFLG,U)
 | 
|---|
 | 190 |  S SAVE=$$CHECK^PRCOVTST(IEN,PRC("SITE"),FLAG)
 | 
|---|
 | 191 |  S SAVE1=$S(SAVE=0:"OK",SAVE=2:"GOOD",1:"")
 | 
|---|
 | 192 |  S TAX=$P($G(^PRC(440,IEN,3)),U,8)
 | 
|---|
 | 193 |  S DA=IEN
 | 
|---|
 | 194 |  S DIE="^PRC(440.3,"
 | 
|---|
 | 195 |  S DR=$S(SAVE=0:"53///^S X=SAVE1",SAVE=2:"53///^S X=SAVE1",1:"53///@")
 | 
|---|
 | 196 |  D ^DIE
 | 
|---|
 | 197 |  S X=@VALMAR@(PRCOI,0)
 | 
|---|
 | 198 |  S OK=$S(SAVE=0:"OK",1:"")
 | 
|---|
 | 199 |  S X=$$SETFLD^VALM1(OK,X,"OK")
 | 
|---|
 | 200 |  S X=$$SETFLD^VALM1(TAX,X,"TAX ID/SSN")
 | 
|---|
 | 201 |  S @VALMAR@(PRCOI,0)=X
 | 
|---|
 | 202 |  L -^PRC(440,PRCFA("VEND"))
 | 
|---|
 | 203 | EDITEX S VALMBCK="R",VALMBG=1
 | 
|---|
 | 204 |  Q
 | 
|---|
 | 205 |  ;
 | 
|---|
 | 206 | DOIT ;FIND OUT IF USER WANTS TO EDIT VENDOR RECORD
 | 
|---|
 | 207 |  W !
 | 
|---|
 | 208 |  S DIR(0)="Y"
 | 
|---|
 | 209 |  S DIR("A")="Edit the Vendor record"
 | 
|---|
 | 210 |  S DIR("B")="YES"
 | 
|---|
 | 211 |  S DIR("?")="Enter 'NO' or 'N' or '^' to exit this edit session."
 | 
|---|
 | 212 |  S DIR("?",1)="Enter 'YES' or 'Y' or 'RETURN' to continue."
 | 
|---|
 | 213 |  D ^DIR
 | 
|---|
 | 214 |  K DIR
 | 
|---|
 | 215 |  W !
 | 
|---|
 | 216 |  Q
 | 
|---|
 | 217 |  ;
 | 
|---|
 | 218 | SCREEN ; Control screen display
 | 
|---|
 | 219 |  I $D(IOF) W @IOF
 | 
|---|
 | 220 |  ; Write Option Header
 | 
|---|
 | 221 |  I $D(XQY0) W IOINHI,$P(XQY0,U,2),IOINORM,!
 | 
|---|
 | 222 |  Q
 | 
|---|