| 1 | RMPOVDC ;HINCIO/RVD - HOME OXYGEN VENDOR/HCPCS/FCP UPDATE ;11/03/00
 | 
|---|
| 2 |  ;;3.0;PROSTHETICS;**56**;Feb 09, 1996
 | 
|---|
| 3 |  ;
 | 
|---|
| 4 |  Q
 | 
|---|
| 5 | EXIT N RMPR,RMPRSITE
 | 
|---|
| 6 |  K RQUIT,RMPOXITE
 | 
|---|
| 7 |  D KILL^XUSCLEAN
 | 
|---|
| 8 |  Q
 | 
|---|
| 9 |  ;
 | 
|---|
| 10 | START ;
 | 
|---|
| 11 |  D KEY() G:$G(RQUIT) EXIT
 | 
|---|
| 12 |  D SITE G:'$D(RMPOXITE) EXIT
 | 
|---|
| 13 |  K DIR S RMCNT=0
 | 
|---|
| 14 |  S DIR(0)="S^1:Update VENDOR;2:Update HCPCS;3:Update FCP;4:Update ITEM;5:Update UNIT COST"
 | 
|---|
| 15 |  S DIR("A")="Type of Update",DIR("B")="Update VENDOR" D ^DIR
 | 
|---|
| 16 |  Q:$D(DIRUT)!($D(DTOUT))
 | 
|---|
| 17 |  S RMPRCHA=$S(Y=1:"VEN",Y=2:"HCPCS",Y=3:"FCP",Y=4:"ITEM",Y=5:"COST",1:"RQUIT")
 | 
|---|
| 18 |  D @RMPRCHA
 | 
|---|
| 19 |  D EXIT
 | 
|---|
| 20 |  Q
 | 
|---|
| 21 |  ;
 | 
|---|
| 22 | VEN ;change vendor utility
 | 
|---|
| 23 |  N RI,RJ,RD,RIT,RMSTA,DIE,DA,DIC,Y,X
 | 
|---|
| 24 |  K RMOLDVEN,RMNEWVEN
 | 
|---|
| 25 |  S DIC("A")="Enter Existing Vendor to UPdate: ",DA(1)=RMPOXITE,RMCNT=0
 | 
|---|
| 26 |  S DIC(0)="AEMQZ",DIC="^RMPR(669.9,"_DA(1)_",""RMPOVDR""," D ^DIC
 | 
|---|
| 27 |  Q:Y<0!($$RQUIT)  S RMOLDVEN=+Y,DIC("S")="I +Y'=RMOLDVEN"
 | 
|---|
| 28 |  S DIC("A")="Enter NEW Vendor: "
 | 
|---|
| 29 |  D ^DIC Q:Y<0!($$RQUIT)  S RMNEWVEN=+Y
 | 
|---|
| 30 |  K DIC,DA
 | 
|---|
| 31 |  ;change vendor in file #665
 | 
|---|
| 32 |  S DIE="^RMPR(665,"
 | 
|---|
| 33 |  W:$D(^PRC(440,RMOLDVEN,0)) !!,"Updating HO template for vendor ",$P(^PRC(440,RMOLDVEN,0),U,1),"  to  "
 | 
|---|
| 34 |  W:$D(^PRC(440,RMNEWVEN,0)) $P(^PRC(440,RMNEWVEN,0),U,1)," ...."
 | 
|---|
| 35 |  F RI=0:0 S RI=$O(^RMPR(665,RI)) Q:RI'>0!$G(RQUIT)  S RD=$G(^RMPR(665,RI,"RMPOA")),RMSTA=$P(RD,U,7),RMIDT=$P(RD,U,3) I RMSTA=RMPOXITE,((RMIDT="")!(RMIDT>DT)) D
 | 
|---|
| 36 |  .F RJ=0:0 S RJ=$O(^RMPR(665,RI,"RMPOC",RJ)) Q:RJ'>0!$G(RQUIT)  S RIT=$G(^RMPR(665,RI,"RMPOC",RJ,0)),RMVEN=$P(RIT,U,2) I RMVEN=RMOLDVEN D
 | 
|---|
| 37 |  ..S DA(1)=RI,DIE="^RMPR(665,"_DA(1)_","_"""RMPOC"""_","
 | 
|---|
| 38 |  ..S DA=RJ,DR="1///^S X=RMNEWVEN" D ^DIE S RMCNT=RMCNT+1
 | 
|---|
| 39 |  W !,"** ",RMCNT," Records updated **"
 | 
|---|
| 40 |  Q
 | 
|---|
| 41 |  ;
 | 
|---|
| 42 | FCP ;change FCP utility.
 | 
|---|
| 43 |  N RI,RJ,RD,RIT,RMSTA,DIE,DA,DIC,DIR,Y,X,RMFCP,RMODES,RMNDES
 | 
|---|
| 44 |  N RMOLDFCP
 | 
|---|
| 45 |  S DIC("A")="Enter Existing Fund Control Point to Update: ",DA(1)=RMPOXITE
 | 
|---|
| 46 |  S DIC(0)="AEMQZ",DIC="^RMPR(669.9,"_DA(1)_",""RMPOFCP""," D ^DIC
 | 
|---|
| 47 |  Q:Y<0!($$RQUIT)  S RMOLDFCP=+Y,RMODES=$P(Y,U,2)
 | 
|---|
| 48 |  S DIC("A")="Enter NEW Fund Control Point: "
 | 
|---|
| 49 |  S DIC("S")="I +Y'=RMOLDFCP"
 | 
|---|
| 50 |  D ^DIC Q:Y<0!($$RQUIT)  S RMNDES=$P(Y,U,2)
 | 
|---|
| 51 |  K DIC,DA
 | 
|---|
| 52 |  ;change FCP in file #665
 | 
|---|
| 53 |  W !!,"Updating HO template for FCP ",RMODES,"  to  ",RMNDES,"......"
 | 
|---|
| 54 |  F RI=0:0 S RI=$O(^RMPR(665,RI)) Q:RI'>0!$G(RQUIT)  S RD=$G(^RMPR(665,RI,"RMPOA")),RMSTA=$P(RD,U,7),RMIDT=$P(RD,U,3) I RMSTA=RMPOXITE,((RMIDT="")!(RMIDT>DT)) D
 | 
|---|
| 55 |  .F RJ=0:0 S RJ=$O(^RMPR(665,RI,"RMPOC",RJ)) Q:RJ'>0!$G(RQUIT)  S RIT=$G(^RMPR(665,RI,"RMPOC",RJ,0)),RMFCP=$P(RIT,U,6) I RMFCP=RMODES D
 | 
|---|
| 56 |  ..S DA(1)=RI,DIE="^RMPR(665,"_DA(1)_","_"""RMPOC"""_","
 | 
|---|
| 57 |  ..S DA=RJ,DR="5////^S X=RMNDES" D ^DIE S RMCNT=RMCNT+1
 | 
|---|
| 58 |  W !,"** ",RMCNT," Records updated **"
 | 
|---|
| 59 |  Q
 | 
|---|
| 60 |  ;
 | 
|---|
| 61 | HCPCS ; change HCPCS utility.
 | 
|---|
| 62 |  N RI,RJ,RD,RIT,RMSTA,DIE,DA,DIC,DIR,Y,X,RMODES,RMNDES
 | 
|---|
| 63 |  N RMOLDHCP,RMNEWHCP,RMHCPC
 | 
|---|
| 64 |  S DIC("A")="Enter Existing HCPCS to Update: "
 | 
|---|
| 65 |  S DIC(0)="AEMQZ",DIC="^RMPR(661.1," D ^DIC
 | 
|---|
| 66 |  Q:Y<0!($$RQUIT)  S RMOLDHCP=+Y,RMODES=$P(^RMPR(661.1,+Y,0),U,1)
 | 
|---|
| 67 |  S DIC("S")="I +Y'=RMOLDHCP"
 | 
|---|
| 68 |  S DIC("A")="Enter NEW HCPCS: "
 | 
|---|
| 69 |  D ^DIC Q:Y<0!($$RQUIT)  S RMNEWHCP=+Y,RMNDES=$P(^RMPR(661.1,+Y,0),U,1)
 | 
|---|
| 70 |  K DIC,DA
 | 
|---|
| 71 |  ;change HCPCS in file #665
 | 
|---|
| 72 |  W !!,"Updating HO template for HCPCS ",RMODES,"  to  ",RMNDES,"......"
 | 
|---|
| 73 |  F RI=0:0 S RI=$O(^RMPR(665,RI)) Q:RI'>0!$G(RQUIT)  S RD=$G(^RMPR(665,RI,"RMPOA")),RMSTA=$P(RD,U,7),RMIDT=$P(RD,U,3) I RMSTA=RMPOXITE,((RMIDT="")!(RMIDT>DT)) D
 | 
|---|
| 74 |  .F RJ=0:0 S RJ=$O(^RMPR(665,RI,"RMPOC",RJ)) Q:RJ'>0!$G(RQUIT)  S RIT=$G(^RMPR(665,RI,"RMPOC",RJ,0)),RMHCPC=$P(RIT,U,7) I RMHCPC=RMOLDHCP D
 | 
|---|
| 75 |  ..S DA(1)=RI,DIE="^RMPR(665,"_DA(1)_","_"""RMPOC"""_","
 | 
|---|
| 76 |  ..S DA=RJ,DR="6////^S X=RMNEWHCP" D ^DIE S RMCNT=RMCNT+1
 | 
|---|
| 77 |  W !,"** ",RMCNT," Records updated **"
 | 
|---|
| 78 |  Q
 | 
|---|
| 79 |  ;
 | 
|---|
| 80 | ITEM ; change ITEM utility.
 | 
|---|
| 81 |  N RI,RJ,RD,RIT,RMSTA,DIE,DA,DIC,DIR,Y,X,RMITEM
 | 
|---|
| 82 |  N RMOITEM,RMNITEM
 | 
|---|
| 83 |  S DIC("A")="Enter Existing ITEM to Update: "
 | 
|---|
| 84 |  S DIC(0)="AEMQZ",DIC="^RMPR(661," D ^DIC
 | 
|---|
| 85 |  Q:Y<0!($$RQUIT)  S RMOITEM=+Y,RMOIFIT=$P($G(^RMPR(661,+Y,0)),U,1)
 | 
|---|
| 86 |  S DIC("A")="Enter NEW ITEM: " K X,Y
 | 
|---|
| 87 |  D ^DIC Q:Y<0!($$RQUIT)
 | 
|---|
| 88 |  S RMNITEM=+Y,RMNIFIT=$P($G(^RMPR(661,+Y,0)),U,1)
 | 
|---|
| 89 |  K DIC,DA
 | 
|---|
| 90 |  ;change ITEM in file #665
 | 
|---|
| 91 |  W !!,"Updating HO template for item ",$P($G(^PRC(441,RMOIFIT,0)),U,2),"  to  ",$P($G(^PRC(441,RMNIFIT,0)),U,2),"......"
 | 
|---|
| 92 |  F RI=0:0 S RI=$O(^RMPR(665,RI)) Q:RI'>0!$G(RQUIT)  S RD=$G(^RMPR(665,RI,"RMPOA")),RMSTA=$P(RD,U,7),RMIDT=$P(RD,U,3) I RMSTA=RMPOXITE,((RMIDT="")!(RMIDT>DT)) D
 | 
|---|
| 93 |  .F RJ=0:0 S RJ=$O(^RMPR(665,RI,"RMPOC",RJ)) Q:RJ'>0!$G(RQUIT)  S RIT=$G(^RMPR(665,RI,"RMPOC",RJ,0)),RMITEM=$P(RIT,U,1) I RMITEM=RMOITEM D
 | 
|---|
| 94 |  ..S DA(1)=RI,DIE="^RMPR(665,"_DA(1)_","_"""RMPOC"""_","
 | 
|---|
| 95 |  ..S DA=RJ,DR=".01////^S X=RMNITEM" D ^DIE S RMCNT=RMCNT+1
 | 
|---|
| 96 |  W !,"** ",RMCNT," Records updated **"
 | 
|---|
| 97 |  Q
 | 
|---|
| 98 |  ;
 | 
|---|
| 99 | COST ; change UNIT COST utility.
 | 
|---|
| 100 |  N RI,RJ,RD,RIT,RMSTA,DIE,DA,DIC,DIR,Y,X,RMITDES,RMIT,RMITEM,RMIFIT
 | 
|---|
| 101 |  N RMNCOST
 | 
|---|
| 102 |  S DIC("A")="Enter an ITEM for UNIT COST Update: "
 | 
|---|
| 103 |  S DIC(0)="AEMQZ",DIC="^RMPR(661," D ^DIC Q:Y<0!($$RQUIT)
 | 
|---|
| 104 |  S RMIT=+Y,RMIFIT=$P($G(^RMPR(661,RMIT,0)),U,1)
 | 
|---|
| 105 |  I $G(RMIFIT),$D(^PRC(441,RMIFIT,0)) S RMITDES=$P(^PRC(441,RMIFIT,0),U,2)
 | 
|---|
| 106 |  S DIR("A")="Enter new UNIT COST for item "_RMITDES
 | 
|---|
| 107 |  S DIR(0)="667.3,3" D ^DIR Q:Y<0!($$RQUIT)  S RMNCOST=+Y
 | 
|---|
| 108 |  K DIC,DA
 | 
|---|
| 109 |  ;change HCPCS in file #665
 | 
|---|
| 110 |  W !!,"Updating HO template for unit cost of item "_RMITDES_"  to  ",$J(RMNCOST,0,2),"......"
 | 
|---|
| 111 |  F RI=0:0 S RI=$O(^RMPR(665,RI)) Q:RI'>0!$G(RQUIT)  S RD=$G(^RMPR(665,RI,"RMPOA")),RMSTA=$P(RD,U,7),RMIDT=$P(RD,U,3) I RMSTA=RMPOXITE,((RMIDT="")!(RMIDT>DT)) D
 | 
|---|
| 112 |  .F RJ=0:0 S RJ=$O(^RMPR(665,RI,"RMPOC",RJ)) Q:RJ'>0!$G(RQUIT)  S RIT=$G(^RMPR(665,RI,"RMPOC",RJ,0)),RMITEM=$P(RIT,U,1) I RMITEM=RMIT D
 | 
|---|
| 113 |  ..S DA(1)=RI,DIE="^RMPR(665,"_DA(1)_","_"""RMPOC"""_","
 | 
|---|
| 114 |  ..S DA=RJ,DR="3////^S X=RMNCOST" D ^DIE S RMCNT=RMCNT+1
 | 
|---|
| 115 |  W !,"** ",RMCNT," Records updated **"
 | 
|---|
| 116 |  Q
 | 
|---|
| 117 |  ;
 | 
|---|
| 118 | LJ(S,W,C) ; LEFT JUSTIFY S IN A FIELD W WIDE PADDING WITH CHAR F
 | 
|---|
| 119 |  S C=$G(C," ")   ;DEFAULT PAD CHAR IS SPACE
 | 
|---|
| 120 |  S $P(S,C,W-$L(S)+$L(S,C))=""
 | 
|---|
| 121 |  Q S
 | 
|---|
| 122 |  ;
 | 
|---|
| 123 | SITE ; get Home Oxygen site
 | 
|---|
| 124 |  K DIC,DIE,DA,DR,DD,RMPOXITE
 | 
|---|
| 125 |  S DIC="^RMPR(669.9,",DIC(0)="QEAMLZ",DIC("A")="Select SITE: "
 | 
|---|
| 126 |  D ^DIC Q:Y<0!($$RQUIT)
 | 
|---|
| 127 |  S RMPOXITE=+Y
 | 
|---|
| 128 |  Q
 | 
|---|
| 129 |  ;
 | 
|---|
| 130 | KEY() ;user must have the RMPRSUPERVISOR key in order to change
 | 
|---|
| 131 |  ;vendor, HCPCS, FCP and items.
 | 
|---|
| 132 |  N RMKEY
 | 
|---|
| 133 |  S RMKEY=$O(^DIC(19.1,"B","RMPRSUPERVISOR",0))
 | 
|---|
| 134 |  I '$D(^VA(200,DUZ,51,RMKEY)) D  Q
 | 
|---|
| 135 |  . W !!,"You do not hold a RMPSUPERVISOR key !!"
 | 
|---|
| 136 |  . S RQUIT=1
 | 
|---|
| 137 |  Q
 | 
|---|
| 138 |  ;
 | 
|---|
| 139 | RQUIT() S RQUIT=$D(DTOUT)!$D(DUOUT)!$D(DIRUT) Q RQUIT
 | 
|---|
| 140 | EQUIT() S RQUIT=$D(DTOUT)!$D(Y) Q RQUIT
 | 
|---|