[796] | 1 | TMGNDF4E ;TMG/kst/FDA Import -- Copy Orderable --> OQV ;03/25/06
|
---|
| 2 | ;;1.0;TMG-LIB;**1**;11/21/07
|
---|
| 3 |
|
---|
| 4 | ;" FDA - NATIONAL DRUG FILES COMPILING FUNCTIONS
|
---|
| 5 | ;" Copy of ORDERABLE ITEMS into ORDER QUICK VIEW file
|
---|
| 6 | ;"Kevin Toppenberg MD
|
---|
| 7 | ;"GNU General Public License (GPL) applies
|
---|
| 8 | ;"11-21-2006
|
---|
| 9 |
|
---|
| 10 | ;"=======================================================================
|
---|
| 11 | ;" API -- Public Functions.
|
---|
| 12 | ;"=======================================================================
|
---|
| 13 | ;"Menu
|
---|
| 14 |
|
---|
| 15 | ;"Sync2OQV -- ensure ALL ORDERABLE ITEMS (101.43) items are added to the ORDER QUICK VIEW (101.44)
|
---|
| 16 | ;"Fix1OQV(IEN101d43,Option) -- alter one entry in OQV file to reflect changes in ORDERABLE ITEM file (101.43)
|
---|
| 17 |
|
---|
| 18 | ;"=======================================================================
|
---|
| 19 | ;" Private Functions.
|
---|
| 20 | ;"=======================================================================
|
---|
| 21 | ;"MakeNewQOVS -- save the old QUICK ORDER VIEW set, and create a new one.
|
---|
| 22 | ;"Add(RxSet,pOI) -- add 'name' to ORWDSET O RX record in ORDER QUICK VIEW file
|
---|
| 23 | ;"KillPrior(RxSet) -- kill ALL records in the RxSet in 101.44
|
---|
| 24 | ;"Check4BadOQV -- Scan through all ORDER QUICK VIEWS cheking fro pointers to bad records
|
---|
| 25 |
|
---|
| 26 | ;"=======================================================================
|
---|
| 27 |
|
---|
| 28 | Menu
|
---|
| 29 | new Menu,UsrSlct
|
---|
| 30 | set Menu(0)="Pick Option to Sync ORDER QUICK VIEW (OQV) (4E)"
|
---|
| 31 | set Menu(1)="Sync imports to ORDER QUICK VIEW."_$char(9)_"Sync2OQV"
|
---|
| 32 | set Menu(2)="Check for BAD entries in ORDER QUICK VIEW file"_$char(9)_"Check4BadOQV"
|
---|
| 33 | set Menu("P")="Prev Stage"_$char(9)_"Prev"
|
---|
| 34 | set Menu("N")="Next Stage"_$char(9)_"Next"
|
---|
| 35 |
|
---|
| 36 | M1 write #
|
---|
| 37 | set UsrSlct=$$Menu^TMGUSRIF(.Menu,"^")
|
---|
| 38 |
|
---|
| 39 | if UsrSlct="Sync2OQV" do Sync2OQV goto M1
|
---|
| 40 | if UsrSlct="Check4BadOQV" do Check4BadOQV goto M1
|
---|
| 41 | if UsrSlct="Prev" goto Menu^TMGNDF4C ;"quit can occur from there...
|
---|
| 42 | if UsrSlct="Next" goto Menu^TMGNDF4F ;"quit can occur from there...
|
---|
| 43 | if UsrSlct="^" goto MenuDone
|
---|
| 44 | goto M1
|
---|
| 45 |
|
---|
| 46 | MenuDone
|
---|
| 47 | quit
|
---|
| 48 |
|
---|
| 49 |
|
---|
| 50 | Sync2OQV
|
---|
| 51 | ;"Purpose: To cycle through all items in the ORDERABLE ITEMS (101.43) file and
|
---|
| 52 | ;" ensure that they have been added to the ORDER QUICK VIEW (101.44) file
|
---|
| 53 | ;"Result: none.
|
---|
| 54 |
|
---|
| 55 | ;"NOTE: This function will KILL prior entries in ORWD O RX record
|
---|
| 56 | ;" There are no pointers IN to this file, so deleting will not
|
---|
| 57 | ;" leave dangling pointers.
|
---|
| 58 |
|
---|
| 59 | ;"NOTE: this function must ensure that the drugs are put into 101.44
|
---|
| 60 | ;" in alphabetical order
|
---|
| 61 | ;" ALSO, drugs should be added both with their generic and brand names.
|
---|
| 62 |
|
---|
| 63 | ;"Here is an example of drugs that have been added 'properly'
|
---|
| 64 | ;" 1) ^ORD(101.44,16,20,0) = ^101.442PA^20^20
|
---|
| 65 | ;" 2) ^ORD(101.44,16,20,1,0) = 49^AMITRIPTYLINE TAB
|
---|
| 66 | ;" 3) ^ORD(101.44,16,20,2,0) = 53^CHLORPROMAZINE TAB
|
---|
| 67 | ;" 4) ^ORD(101.44,16,20,3,0) = 50^DIGOXIN TAB
|
---|
| 68 | ;" 5) ^ORD(101.44,16,20,4,0) = 44^DILTIAZEM TAB
|
---|
| 69 | ;" 6) ^ORD(101.44,16,20,5,0) = 49^ELAVIL <AMITRIPTYLINE TAB >
|
---|
| 70 | ;" 7) ^ORD(101.44,16,20,6,0) = 49^ENDEP <AMITRIPTYLINE TAB >
|
---|
| 71 | ;" 8) ^ORD(101.44,16,20,7,0) = 47^HCTZ <HYDROCHLOROTHIZIDE TAB >
|
---|
| 72 | ;" 9) ^ORD(101.44,16,20,8,0) = 47^HYDROCHLOROTHIZIDE TAB
|
---|
| 73 | ;" 10) ^ORD(101.44,16,20,9,0) = 50^LANOXIN <DIGOXIN TAB >
|
---|
| 74 | ;" 11) ^ORD(101.44,16,20,10,0) = 54^LEVOTHYROXINE TAB
|
---|
| 75 | ;" 12) ^ORD(101.44,16,20,11,0) = 54^LEVOXYL <LEVOTHYROXINE TAB >
|
---|
| 76 | ;" 13) ^ORD(101.44,16,20,12,0) = 46^LISINOPRIL TAB
|
---|
| 77 | ;" 14) ^ORD(101.44,16,20,13,0) = 52^PRAZOSIN CAP,ORAL
|
---|
| 78 | ;" 15) ^ORD(101.44,16,20,14,0) = 46^PRINIVIL <LISINOPRIL TAB >
|
---|
| 79 | ;" 16) ^ORD(101.44,16,20,15,0) = 48^SILDENAFIL TAB
|
---|
| 80 | ;" 17) ^ORD(101.44,16,20,16,0) = 54^SYNTHROID <LEVOTHYROXINE TAB >
|
---|
| 81 | ;" 18) ^ORD(101.44,16,20,17,0) = 48^VIAGRA <SILDENAFIL TAB >
|
---|
| 82 | ;" 19) ^ORD(101.44,16,20,18,0) = 46^ZESTRIL <LISINOPRIL TAB >
|
---|
| 83 | ;" 20) ^ORD(101.44,16,20,19,0) = 20
|
---|
| 84 | ;"21) ^ORD(101.44,16,20,20,0) = 54
|
---|
| 85 | ;"22) ^ORD(101.44,16,20,"B",20,19) =
|
---|
| 86 | ;"23) ^ORD(101.44,16,20,"B",54,20) =
|
---|
| 87 | ;"24) ^ORD(101.44,16,20,"C","AMITRIPTYLINE TAB ",1) =
|
---|
| 88 | ;"25) ^ORD(101.44,16,20,"C","CHLORPROMAZINE TAB ",2) =
|
---|
| 89 | ;"26) ^ORD(101.44,16,20,"C","DIGOXIN TAB ",3) =
|
---|
| 90 | ;"27) ^ORD(101.44,16,20,"C","DILTIAZEM TAB ",4) =
|
---|
| 91 | ;"28) ^ORD(101.44,16,20,"C","ELAVIL <AMITRIPTYLINE TAB >",5) =
|
---|
| 92 | ;"29) ^ORD(101.44,16,20,"C","ENDEP <AMITRIPTYLINE TAB >",6) =
|
---|
| 93 | ;"30) ^ORD(101.44,16,20,"C","HCTZ <HYDROCHLOROTHIZIDE TAB >",7) =
|
---|
| 94 | ;"31) ^ORD(101.44,16,20,"C","HYDROCHLOROTHIZIDE TAB ",8) =
|
---|
| 95 | ;"32) ^ORD(101.44,16,20,"C","LANOXIN <DIGOXIN TAB >",9) =
|
---|
| 96 | ;"33) ^ORD(101.44,16,20,"C","LEVOTHYROXINE TAB ",10) =
|
---|
| 97 | ;"34) ^ORD(101.44,16,20,"C","LEVOXYL <LEVOTHYROXINE TAB >",11) =
|
---|
| 98 | ;"35) ^ORD(101.44,16,20,"C","LISINOPRIL TAB ",12) =
|
---|
| 99 | ;"36) ^ORD(101.44,16,20,"C","PRAZOSIN CAP,ORAL ",13) =
|
---|
| 100 | ;"37) ^ORD(101.44,16,20,"C","PRINIVIL <LISINOPRIL TAB >",14) =
|
---|
| 101 | ;"38) ^ORD(101.44,16,20,"C","SILDENAFIL TAB ",15) =
|
---|
| 102 | ;"39) ^ORD(101.44,16,20,"C","SYNTHROID <LEVOTHYROXINE TAB >",16) =
|
---|
| 103 |
|
---|
| 104 | do MakeNewQOVS ;"Get a fresh order set to work in.
|
---|
| 105 |
|
---|
| 106 | set RxSet=$$GetOQVSet^TMGNDFUT
|
---|
| 107 | if RxSet'>0 do goto AADone
|
---|
| 108 | . write "Can't find record 'ORWDSET O RX' in ORDER QUICK VIEW (101.44) file.",!
|
---|
| 109 | . write "Aborting.",!
|
---|
| 110 |
|
---|
| 111 | ;"Kill all prior display data in ORDER QUICK VIEW file: ORWDSET O RX record
|
---|
| 112 | do KillPrior(RxSet)
|
---|
| 113 |
|
---|
| 114 | new pAddArray set pAddArray=$name(^TMG("TMP","KILL","Add 101.44 Temp"))
|
---|
| 115 | kill @pAddArray
|
---|
| 116 |
|
---|
| 117 | write "Organizing drugs for addition to ORDER QUICK VIEW...",!
|
---|
| 118 | new Itr,IEN22706d9
|
---|
| 119 | new abort set abort=0
|
---|
| 120 | set IEN22706d9=$$ItrInit^TMGITR(22706.9,.Itr)
|
---|
| 121 | do PrepProgress^TMGITR(.Itr,20,0,"IEN22706d9")
|
---|
| 122 | if IEN22706d9'="" for do quit:(+$$ItrNext^TMGITR(.Itr,.IEN22706d9)'>0)!abort
|
---|
| 123 | . if $$UserAborted^TMGUSRIF set abort=1 quit
|
---|
| 124 | . if $piece($get(^TMG(22706.9,IEN22706d9,1)),"^",4)=1 quit ;" 1=skip
|
---|
| 125 | . new tIEN101d43,gIEN101d43
|
---|
| 126 | . set tIEN101d43=+$piece($get(^TMG(22706.9,IEN22706d9,8)),"^",5)
|
---|
| 127 | . set gIEN101d43=+$piece($get(^TMG(22706.9,IEN22706d9,8)),"^",6)
|
---|
| 128 | . if tIEN101d43>0 do
|
---|
| 129 | . . new name set name=$piece($get(^ORD(101.43,tIEN101d43,0)),"^",1)
|
---|
| 130 | . . if (name="")!(name="<DUPLICATE>") do KillOI^TMGNDFUT(tIEN101d43) quit
|
---|
| 131 | . . set @pAddArray@(name,tIEN101d43)=""
|
---|
| 132 | . . new SynIEN set SynIEN=0
|
---|
| 133 | . . for set SynIEN=$order(^ORD(101.43,tIEN101d43,2,SynIEN)) quit:(+SynIEN'>0) do
|
---|
| 134 | . . . new SynName set SynName=$get(^ORD(101.43,tIEN101d43,2,SynIEN,0))
|
---|
| 135 | . . . set SynName=$$Trim^TMGSTUTL(SynName)
|
---|
| 136 | . . . set SynName=SynName_" <"_name_">"
|
---|
| 137 | . . . set @pAddArray@(SynName,tIEN101d43)=""
|
---|
| 138 | . if gIEN101d43>0 do
|
---|
| 139 | . . new name set name=$piece($get(^ORD(101.43,gIEN101d43,0)),"^",1)
|
---|
| 140 | . . if (name="")!(name="<DUPLICATE>") do KillOI^TMGNDFUT(gIEN101d43) quit
|
---|
| 141 | . . set @pAddArray@(name,gIEN101d43)=""
|
---|
| 142 | . . new SynIEN set SynIEN=0
|
---|
| 143 | . . for set SynIEN=$order(^ORD(101.43,gIEN101d43,2,SynIEN)) quit:(+SynIEN'>0) do
|
---|
| 144 | . . . new SynName set SynName=$get(^ORD(101.43,gIEN101d43,2,SynIEN,0))
|
---|
| 145 | . . . set SynName=$$Trim^TMGSTUTL(SynName)
|
---|
| 146 | . . . set SynName=SynName_" <"_name_">"
|
---|
| 147 | . . . set @pAddArray@(SynName,gIEN101d43)=""
|
---|
| 148 | do ProgressDone^TMGITR(.Itr)
|
---|
| 149 | if abort=1 goto AADone
|
---|
| 150 |
|
---|
| 151 | ;"Now add all drugs
|
---|
| 152 | write "Adding drugs to ORDER QUICK VIEW...",!
|
---|
| 153 | new Itr,DispName
|
---|
| 154 | set abort=0
|
---|
| 155 | set DispName=$$ItrAInit^TMGITR(pAddArray,.Itr)
|
---|
| 156 | do PrepProgress^TMGITR(.Itr,20,1,"DispName")
|
---|
| 157 | if DispName'="" for do quit:($$ItrANext^TMGITR(.Itr,.DispName)="")!abort
|
---|
| 158 | . if $$UserAborted^TMGUSRIF set abort=1 quit
|
---|
| 159 | . new IEN set IEN=$order(@pAddArray@(DispName,""))
|
---|
| 160 | . set pOQV=$$Add(RxSet,IEN,DispName)
|
---|
| 161 | do ProgressDone^TMGITR(.Itr)
|
---|
| 162 |
|
---|
| 163 | AADone
|
---|
| 164 | write "Done.",!
|
---|
| 165 | do PressToCont^TMGUSRIF
|
---|
| 166 | quit
|
---|
| 167 |
|
---|
| 168 |
|
---|
| 169 | MakeNewQOVS
|
---|
| 170 | ;"Purpose: To save the old QUICK ORDER VIEW set, and create a new one.
|
---|
| 171 | ;"Note: Because the drugs have to be added to the file in alphabetical order,
|
---|
| 172 | ;" it is required to create a NEW order set. I will save the old one
|
---|
| 173 | ;" for future reference.
|
---|
| 174 |
|
---|
| 175 | new DIC,X,Y,%,RxSet
|
---|
| 176 |
|
---|
| 177 | set RxSet=$$GetOQVSet^TMGNDFUT
|
---|
| 178 | if RxSet'>0 do goto MNQSDone
|
---|
| 179 | . write "Can't find record 'ORWDSET O RX' in ORDER QUICK VIEW (101.44) file.",!
|
---|
| 180 | . write "Aborting.",!
|
---|
| 181 |
|
---|
| 182 | new nowS
|
---|
| 183 | do NOW^%DTC
|
---|
| 184 | S Y=X ;"% current fileman date returned in X (no time)
|
---|
| 185 | D DD^%DT ;"convert to external format.
|
---|
| 186 | set nowS=Y
|
---|
| 187 |
|
---|
| 188 | new newName set newName="ORWDSET O RX -- "_nowS
|
---|
| 189 | write "Saving old ORDER QUICK VIEW set as: ",newName,!
|
---|
| 190 | new TMGFDA,TMGMSG,TMGIEN
|
---|
| 191 | set TMGFDA(101.44,RxSet_",",.01)=newName
|
---|
| 192 | do FILE^DIE("K","TMGFDA","TMGMSG")
|
---|
| 193 | do ShowIfDIERR^TMGDEBUG(.TMGMSG)
|
---|
| 194 |
|
---|
| 195 | set TMGFDA(101.44,"+1,",.01)="ORWDSET O RX"
|
---|
| 196 | set TMGFDA(101.44,"+1,",6)="NOW"
|
---|
| 197 | do UPDATE^DIE("EK","TMGFDA","TMGIEN","TMGMSG")
|
---|
| 198 | do ShowIfDIERR^TMGDEBUG(.TMGMSG)
|
---|
| 199 |
|
---|
| 200 | MNQSDone
|
---|
| 201 | quit
|
---|
| 202 |
|
---|
| 203 |
|
---|
| 204 | Add(RxSet,pOI,RxName)
|
---|
| 205 | ;"Purpose: to add 'name' to ORWDSET O RX record in ORDER QUICK VIEW ('OQV')file
|
---|
| 206 | ;"Input: RxSet -- the record number in OQV to add records to.
|
---|
| 207 | ;" pOI -- a pointer to (i.e. the IEN of) record in ORDERABLE ITEM (101.43) file
|
---|
| 208 | ;" RxName -- The name to display in CPRS
|
---|
| 209 | ;"Results: returns the IEN of the new record.
|
---|
| 210 |
|
---|
| 211 | new TMGFDA,TMGMSG,TMGIEN,PriorErrorFound
|
---|
| 212 | new result set result=0
|
---|
| 213 |
|
---|
| 214 | if pOI=0 do goto AdDone
|
---|
| 215 | . write !,"Skipping addition of ",RxName," because it doesn't",!
|
---|
| 216 | . write "seem linked to a PHARMACY ORDERABLE ITEM.",!
|
---|
| 217 | set TMGFDA(101.442,"+1,"_RxSet_",",.01)=pOI
|
---|
| 218 | set TMGFDA(101.442,"+1,"_RxSet_",",2)=RxName
|
---|
| 219 |
|
---|
| 220 | new $etrap set $etrap="write !,""ERROR TRAPPED."",! quit"
|
---|
| 221 | Ad1 do UPDATE^DIE("S","TMGFDA","TMGIEN","TMGMSG")
|
---|
| 222 | if $$ShowIfError^TMGDBAPI(.TMGMSG,.PriorErrorFound) goto AdDone
|
---|
| 223 | set result=+$get(TMGIEN(1))
|
---|
| 224 |
|
---|
| 225 | AdDone
|
---|
| 226 | quit result
|
---|
| 227 |
|
---|
| 228 |
|
---|
| 229 | KillPrior(RxSet)
|
---|
| 230 | ;"Purpose: To kill ALL records in the RxSet in 101.44
|
---|
| 231 | ;"Note: I am fairly certain that no other files point to this file
|
---|
| 232 | ;" (there are no pointers IN). So I can just kill.
|
---|
| 233 | ;" CAUTION: this might not be the right thing to do in another system.
|
---|
| 234 |
|
---|
| 235 | new temp merge temp=^ORD(101.44,RxSet,20,0)
|
---|
| 236 | kill ^ORD(101.44,RxSet,20)
|
---|
| 237 | merge ^ORD(101.44,RxSet,20,0)=temp
|
---|
| 238 | set $piece(^ORD(101.44,RxSet,20,0),"^",3)=0 ;"most recently assigned IEN
|
---|
| 239 | set $piece(^ORD(101.44,RxSet,20,0),"^",4)=0 ;"current total number of records
|
---|
| 240 |
|
---|
| 241 | quit
|
---|
| 242 |
|
---|
| 243 |
|
---|
| 244 | ;"==============================
|
---|
| 245 | Fix1OQV(IEN101d43,Option)
|
---|
| 246 | ;"Purpose: to alter one entry in OQV file to reflect changes
|
---|
| 247 | ;" in ORDERABLE ITEM file (101.43)
|
---|
| 248 | ;"Input: IEN101d43 -- IEN in ORDERABLE ITEM file (101.43)
|
---|
| 249 | ;" Option -- OPTIONAL. Format:
|
---|
| 250 | ;" Option("FIX CHAIN")=1 <--- changes will be propigate forward
|
---|
| 251 | ;" to file POI, OI, OQV etc.
|
---|
| 252 | ;" OPTION("FIX CHAIN","IEN22706d9")=Source IEN
|
---|
| 253 | ;" Option("QUIET")=1 <-- supress text output
|
---|
| 254 | ;" Option("IEN50","TRADE")=IEN50 for Trade Name
|
---|
| 255 | ;" Option("IEN50","GENERIC")=IEN50 for Generic Name
|
---|
| 256 | ;" Option("DRUG NAME AND FORM","TRADE")=tradeNameAF
|
---|
| 257 | ;" Option("DRUG NAME AND FORM","GENERIC")=genericNameAF
|
---|
| 258 | ;" Option("IEN50.7","TRADE")=IEN50d7
|
---|
| 259 | ;" Option("IEN50.7","GENERIC")=IEN50d7
|
---|
| 260 | ;" Option("IEN101.43","TRADE")=IEN101d43
|
---|
| 261 | ;" Option("IEN101.43","GENERIC")=IEN101d43
|
---|
| 262 | ;" Option("DELETING")=1 <-- deleting chain (not IEN22706d9)
|
---|
| 263 | ;"NOTE: The entries in the OQV file have to be set up in ALPHABETICAL order.
|
---|
| 264 | ;" This function will NOT reorder these. If name is completely changed, then
|
---|
| 265 | ;" it will likely appear out of alphabetical order. This may hinder finding it.
|
---|
| 266 | ;" -- Such a problem could be fixed by runnin: Sync2OQV^TMGNDF4E
|
---|
| 267 | ;"Result: 1 if error, 0 if OK.
|
---|
| 268 |
|
---|
| 269 | new result set result=0
|
---|
| 270 | new RxSet,quiet
|
---|
| 271 | set quiet=$get(Option("QUIET"))=1
|
---|
| 272 | set RxSet=$$GetOQVSet^TMGNDFUT(quiet)
|
---|
| 273 | if RxSet=0 goto F1OQVDone
|
---|
| 274 |
|
---|
| 275 | new OQVIENS set OQVIENS=$$GetOQVIENS^TMGNDFUT(IEN101d43,RxSet)
|
---|
| 276 | if OQVIENS=0 do goto F1OQVDone
|
---|
| 277 | . if quiet quit
|
---|
| 278 | . write "Can't find link ORDERABLE ITEM--> ORDER QUICK VIEW (OQV).",!
|
---|
| 279 | . write "Try do a batch add of imports into OQV.",!
|
---|
| 280 | . write "Can't insert OQV with out reordering...",!
|
---|
| 281 |
|
---|
| 282 | new drugName set drugName=$piece($get(^ORD(101.43,IEN101d43,0)),"^",1)
|
---|
| 283 | if ($get(Option("DELETING"))=1)!(drugName="") set drugName="<DELETED>"
|
---|
| 284 |
|
---|
| 285 | new TMGFDA,TMGMSG
|
---|
| 286 | set TMGFDA(101.442,OQVIENS,2)=drugName
|
---|
| 287 | new temp set temp=$$TrimFDA^TMGDBAPI(.TMGFDA)
|
---|
| 288 | if $data(TMGFDA) do
|
---|
| 289 | . do FILE^DIE("KS","TMGFDA","TMGMSG")
|
---|
| 290 | . set result=$$ShowIfError^TMGDBAPI(.TMGMSG) ;"show FM errors, even if quiet.
|
---|
| 291 |
|
---|
| 292 | F1OQVDone
|
---|
| 293 | quit result
|
---|
| 294 |
|
---|
| 295 |
|
---|
| 296 | Check4BadOQV
|
---|
| 297 | ;"Purpose: Scan through all ORDER QUICK VIEWS and see if any are pointing
|
---|
| 298 | ;" to bad records
|
---|
| 299 |
|
---|
| 300 | new RxSet set RxSet=$$GetOQVSet^TMGNDFUT
|
---|
| 301 | if RxSet=0 goto C4BOQVDone
|
---|
| 302 | new totalCt set totalCt=0
|
---|
| 303 | new count set count=0
|
---|
| 304 |
|
---|
| 305 | new index set index=0
|
---|
| 306 | for set index=$order(^ORD(101.44,RxSet,20,index)) quit:(+index'>0) do
|
---|
| 307 | . set totalCt=totalCt+1
|
---|
| 308 | . new s set s=$get(^ORD(101.44,RxSet,20,index,0))
|
---|
| 309 | . new ptr set ptr=+s
|
---|
| 310 | . if ptr=0 quit
|
---|
| 311 | . new name set name=$piece(s,"^",2)
|
---|
| 312 | . if $piece($get(^ORD(101.43,ptr,0)),"^",1)'="" quit
|
---|
| 313 | . write !,"BAD: ",name,!
|
---|
| 314 | . write "OQV 101.44:#",index,",",RxSet,", --> OI 101.43:#",ptr," which is empty",!
|
---|
| 315 | . do KillOQV^TMGNDFUT(index_","_RxSet_",")
|
---|
| 316 | . write " ... deleted.",!
|
---|
| 317 | . set count=count+1
|
---|
| 318 |
|
---|
| 319 | write !,totalCt," entries scanned.",!
|
---|
| 320 | write count," bad entries found.",!
|
---|
| 321 | do PressToCont^TMGUSRIF
|
---|
| 322 |
|
---|
| 323 | C4BOQVDone
|
---|
| 324 | quit
|
---|
| 325 |
|
---|