| 1 | IBCRHBS2 ;ALB/ARH - RATES: UPLOAD HOST FILES (RC 2+) READ ; 10-OCT-03 | 
|---|
| 2 | ;;2.0;INTEGRATED BILLING;**245**;21-MAR-94 | 
|---|
| 3 | ;;Per VHA Directive 10-93-142, this routine should not be modified. | 
|---|
| 4 | ; | 
|---|
| 5 | ;LOAD -> A -> SET... | 
|---|
| 6 | ; | 
|---|
| 7 | ;for each file -> open/close and read a line -> parse the line -> save the data to XTMP | 
|---|
| 8 | ; | 
|---|
| 9 | ; | 
|---|
| 10 | LOAD(IBPATH,IBFILE,IBNAME,PARSE,VERS,COLUMNS) ; open and read a host file, returns true if file loaded ok | 
|---|
| 11 | N IBOK,IBI,IBFLINE,IBSYS,X,Y S IBOK=1,IBSYS=0,VERS=$G(VERS) I '$G(COLUMNS) S IBOK=0 G LOADQ | 
|---|
| 12 | ; | 
|---|
| 13 | S X=$G(^%ZOSF("OS")) I X["OpenM" S IBSYS=1,X="ERROR^IBCRHBS2",@^%ZOSF("TRAP") ; reset error trap for OpenM | 
|---|
| 14 | ; | 
|---|
| 15 | ;W !,IBNAME,?45,IBFILE ;I PARSE="OC" Q 0 ;  *****  AND IBI ;Q 1 | 
|---|
| 16 | ; | 
|---|
| 17 | D OPEN^%ZISH(IBFILE,IBPATH,IBFILE,"R") I POP W !!,?20,"**** Unable to open ",IBPATH,IBFILE,! S IBOK=0 G LOADQ | 
|---|
| 18 | ; | 
|---|
| 19 | U IO(0) W !,IBNAME,?45,IBFILE | 
|---|
| 20 | ; | 
|---|
| 21 | S IBI=0 F  S IBI=IBI+1 U IO R IBFLINE:5 Q:$$ENDF  D @(PARSE_"^IBCRHBS3") I '(IBI#100) U IO(0) W "." ;Q:IBI>100 | 
|---|
| 22 | ; | 
|---|
| 23 | CLOSE D CLOSE^%ZISH(IBFILE) ;W "  Done, ",(IBI-1)," lines processed." | 
|---|
| 24 | ; | 
|---|
| 25 | LOADQ I IBSYS=1 S X="",@^%ZOSF("TRAP")  ; reset error trap for OpenM | 
|---|
| 26 | Q $G(IBOK) | 
|---|
| 27 | ; | 
|---|
| 28 | ENDF() N IBX S IBX=1 I $T S IBX=0 | 
|---|
| 29 | I $$STATUS^%ZISH S IBX=1 | 
|---|
| 30 | Q IBX | 
|---|
| 31 | ; | 
|---|
| 32 | ERROR ; process EOF and errors for OpenM | 
|---|
| 33 | N IBERROR S IBERROR=$$EC^%ZOSV | 
|---|
| 34 | I IBERROR["ENDOFFILE" S IBOK=1 G CLOSE | 
|---|
| 35 | U IO(0) W !!,"Error reading file: ",IBERROR,!! | 
|---|
| 36 | D ^%ZTER | 
|---|
| 37 | S IBOK=0 | 
|---|
| 38 | G CLOSE | 
|---|
| 39 | Q | 
|---|