Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: HLPOST

HLPOST.m

Go to the documentation of this file.
  1. HLPOST ;ALB/JRP - POST INIT DRIVER;23-MAR-95
  1. ;;1.6;HEALTH LEVEL SEVEN;;Oct 13, 1995
  1. ;DECLARE VARIABLES
  1. N DIC,X,Y,ALRDYRUN,PROTINST,LISTINST,FILECNV,DATERUN
  1. N ZTRTN,ZTDESC,ZTIO,ZTDTH,ZTSK,%ZIS,POP,%DT,%H
  1. ;CREATE ENTRY IN HL COMMUNICATION SERVER PARAMETER FILE (#869.3)
  1. D PARAM
  1. ;DETERMINE IF POST INIT HAS ALREADY BY RUN
  1. S DIC="^DIC(9.4,"
  1. S DIC(0)="X"
  1. S X="HEALTH LEVEL SEVEN"
  1. D ^DIC
  1. S ALRDYRUN=+$P($G(^DIC(9.4,+Y,"INIT")),"^",2)
  1. S (PROTINST,LISTINST,FILECNV)=1
  1. ;ALREADY RUN ASK USER WHAT TO DO
  1. I (ALRDYRUN) D Q:(('PROTINST)&('LISTINST)&('FILECNV))
  1. .;RUN POST-INIT AGAIN
  1. .I ($$RUNAGAIN^HLPOSTQ(ALRDYRUN)<1) S (PROTINST,LISTINST,FILECNV)=0 Q
  1. .;RE-INSTALL PROTOCOLS
  1. .S PROTINST=$$PROTINST^HLPOSTQ
  1. .I (PROTINST<0) S (PROTINST,LISTINST,FILECNV)=0 Q
  1. .;RE-INSTALL LIST TEMPLATES
  1. .S LISTINST=$$LISTINST^HLPOSTQ
  1. .I (LISTINST<0) S (PROTINST,LISTINST,FILECNV)=0 Q
  1. .;RE-RUN FILE CONVERSION
  1. .S FILECNV=$$FILECNV^HLPOSTQ
  1. .S:(FILECNV<0) (PROTINST,LISTINST,FILECNV)=0
  1. ;INSTALL PROTOCOLS
  1. I (PROTINST) W !! D ^HLONIT
  1. W:('PROTINST) !!,"Installation of PROTOCOLS not performed"
  1. ;INSTALL LIST TEMPLATES
  1. I (LISTINST) W !! D ^HLLM
  1. W:('LISTINST) !!,"Installation of LIST TEMPLATES not performed"
  1. ;NOT DOING FILE CONVERSION - DONE
  1. I ('FILECNV) W !!,"Running of file conversions not performed" Q
  1. CONVERT ;FILE CONVERSION
  1. S %ZIS="QN0"
  1. S %ZIS("A")="Select output device for file conversion: "
  1. W !! D ^%ZIS
  1. I (POP) W !!,"Running of the file conversions not performed" Q
  1. ;QUEUE TO DEVICE
  1. I (IO'=IO(0)) D Q:($G(ZTSK))
  1. .;USER SELECTED HOST FILE
  1. .S:(IOT="HFS") IO("HFSIO")=IO
  1. .;QUEUE
  1. .S ZTRTN="^HLPOST16"
  1. .S ZTDESC="FILE CONVERSIONS REQUIRED BY INSTALLATION OF HL7 V1.6"
  1. .S ZTIO=ION
  1. .S:('$D(IO("Q"))) ZTDTH=$H
  1. .D ^%ZTLOAD
  1. .;ERROR QUEUEING
  1. .I ('$G(ZTSK)) D Q
  1. ..D HOME^%ZIS
  1. ..W !!,"** Running of file conversions could not be queued **"
  1. ..W !,"** File conversions will be run interactively **"
  1. .;TELL USER TASK NUMBER & QUEUEING TIME
  1. .D HOME^%ZIS
  1. .S %H=ZTSK("D")
  1. .D YX^%DTC
  1. .S DATERUN=$P(Y,"@",1)_" @ "_$P(Y,"@",2)
  1. .W !!,"Running of file conversions queued as task number ",ZTSK
  1. .W !,"Task will begin execution on ",DATERUN
  1. ;INTERACTIVE
  1. ;OPEN SLAVE
  1. I ($P(IOST,"-",1)["P") D
  1. .S %ZIS=""
  1. .S IOP=ION
  1. .D ^%ZIS
  1. ;DO CONVERSIONS
  1. D ^HLPOST16
  1. ;CLOSE SLAVE DEVICE
  1. D ^%ZISC
  1. ;[RE]SET HOME DEVICE ATTRIBUTES
  1. D HOME^%ZIS
  1. Q
  1. ;
  1. REQUEUE ;ENTRY POINT FOR REQUEUEING/RUNNING OF FILE CONVERSIONS
  1. ;DECLARE VARIABLES
  1. N ZTRTN,ZTDESC,ZTIO,ZTDTH,ZTSK,%ZIS,POP,%DT,DATERUN,%H
  1. ;QUEUE/RUN FILE CONVERSIONS
  1. D CONVERT
  1. ;DONE
  1. Q
  1. PARAM ;CREATE INITIAL ENTRY IN HL COMMUNICATION SERVER PARAMETER file (#869.3)
  1. ;DECLARE VARIABLES
  1. N DIC,X,Y,DTOUT,DUOUT,DLAYGO
  1. ;CREATE/FIND ENTRY
  1. S DLAYGO=869.3
  1. S DIC="^HLCS(869.3,"
  1. S DIC(0)="L"
  1. S DIC("DR")="11///1;12///1"
  1. S X=1
  1. D ^DIC
  1. ;Error
  1. I (Y="-1") D Q
  1. .W !!,"Unable to create/find entry in HL COMMUNICATION SERVER"
  1. .W !,"PARAMETER file (#869.3). Entry must exist in order for"
  1. .W !,"the incoming & outgoing filers to run. Use FileMan to"
  1. .W !,"create an initial entry for editing.",!!
  1. ;Entry created
  1. I ($P(Y,"^",3)) D
  1. .;Tell user entry was created
  1. .W !!,"Initial entry in HL COMMUNICATION SERVER PARAMETER file"
  1. .W !,"(#869.3) has been created.",!
  1. Q