[613] | 1 | SPNLGE ; ISC-SF/GMB - SCD GATHER EXTRACTS FOR SHIPMENT ;6/29/95 09:18
|
---|
| 2 | ;;2.0;Spinal Cord Dysfunction;;01/02/1997
|
---|
| 3 | INIT(ABORT) ; Call this once, before you start the extract process
|
---|
| 4 | S SPNDATE=DT ; variables used by ADDREC & FINISHUP subroutines
|
---|
| 5 | ; Get facility number from the site parameters file
|
---|
| 6 | S SPNFACNR=$P($G(^SPNL(154.91,1,0)),U,1)
|
---|
| 7 | Q:SPNFACNR>0
|
---|
| 8 | W !,"Facility number in site parameters file ^SPNL(154.91 is not initialized!"
|
---|
| 9 | S ABORT=1
|
---|
| 10 | Q
|
---|
| 11 | EXTRACT(DFN,FDATE,TDATE,CLEARTXT,ABORT) ; Call this for each registry patient
|
---|
| 12 | ; DFN Patient's internal entry number in the Patient file
|
---|
| 13 | ; FDATE "From" date
|
---|
| 14 | ; TDATE "Thru" date, default=today
|
---|
| 15 | ; CLEARTXT 1=translate all codes to their meaning,
|
---|
| 16 | ; 0=don't translate codes (default=0)
|
---|
| 17 | ; ABORT Set and returned by this routine. Initially set to 0
|
---|
| 18 | ; Set to 1 if any errors are noticed.
|
---|
| 19 | ; (Actually, right now, ABORT will always be 0)
|
---|
| 20 | N SPNSSN,SPNRECNR ; variables used by ADDREC subroutine
|
---|
| 21 | N VADM,VA
|
---|
| 22 | I '$D(TDATE) S TDATE=DT
|
---|
| 23 | I '$D(CLEARTXT) S CLEARTXT=0
|
---|
| 24 | S ABORT=0
|
---|
| 25 | D DEM^VADPT
|
---|
| 26 | S SPNSSN=$$EN^SPNLGUCD(VA("PID"))
|
---|
| 27 | S SPNRECNR=0 D EXTRACT^SPNLGEAA(DFN,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 28 | S SPNRECNR=0 D EXTRACT^SPNLGEFM(DFN,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 29 | ;S SPNRECNR=0 D EXTRACT^SPNLGECH(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 30 | ;S SPNRECNR=0 D EXTRACT^SPNLGEDM(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 31 | ;S SPNRECNR=0 D EXTRACT^SPNLGEIP(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 32 | ;S SPNRECNR=0 D EXTRACT^SPNLGEOP(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 33 | ;S SPNRECNR=0 D EXTRACT^SPNLGERA(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 34 | ;S SPNRECNR=0 D EXTRACT^SPNLGERX(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 35 | ;S SPNRECNR=0 D EXTRACT^SPNLGEUD(DFN,FDATE,TDATE,CLEARTXT,.ABORT) Q:ABORT
|
---|
| 36 | S ^TMP("SPNX",$J,SPNDATE,SPNFACNR,SPNSSN)=TDATE
|
---|
| 37 | Q
|
---|
| 38 | ADDREC(TYPE,RECORD) ; Add the record to the others gathered.
|
---|
| 39 | ; This routine is called by the above extractors.
|
---|
| 40 | S SPNRECNR=SPNRECNR+1
|
---|
| 41 | S ^TMP("SPNX",$J,SPNDATE,SPNFACNR,SPNSSN,TYPE,SPNRECNR)=RECORD
|
---|
| 42 | Q
|
---|
| 43 | FINISHUP(FACINFO) ; Call this once, after the extract process is finished
|
---|
| 44 | S ^TMP("SPNX",$J,SPNDATE,SPNFACNR)=FACINFO
|
---|
| 45 | K SPNDATE,SPNFACNR
|
---|
| 46 | Q
|
---|