1 | ORB3ENV ; slc/CLA - OE/RR 3 Notifications/Order Check Environment Check Routine ;9/19/01 14:29
|
---|
2 | ;;3.0;ORDER ENTRY/RESULTS REPORTING;**105**;Dec 17, 1997
|
---|
3 | EN ; main entry point
|
---|
4 | D ORMTIME
|
---|
5 | Q
|
---|
6 | ORMTIME ; determine if ORMTIME is running
|
---|
7 | N I,J,STATUS,JOB,OK,LASTDT,NOWDT,DIFFDT,SCHDT,ORY,MSG
|
---|
8 | S OK=0
|
---|
9 | D BMES^XPDUTL("Checking to see if ORMTIME is running...")
|
---|
10 | ;
|
---|
11 | ;for loop that runs for 12 iterations (60 secs.) - quits if no lock
|
---|
12 | F I=1:1:12 Q:OK=1 D
|
---|
13 | .L +^OR(100,"AE"):5 I $T S OK=1 Q
|
---|
14 | .I I=1 D BMES^XPDUTL("Pausing because ORMTIME is running...")
|
---|
15 | .E D MES^XPDUTL(".")
|
---|
16 | ;
|
---|
17 | I OK=1 LOCK ;^OR(100,"AE"):0
|
---|
18 | ;
|
---|
19 | ;if ORMTIME is not currently running see if scheduled in near future:
|
---|
20 | I OK=1 D
|
---|
21 | .S LASTDT=$$GET^XPAR("SYS","ORM ORMTIME LAST RUN",1,"I")
|
---|
22 | .;
|
---|
23 | .D OPTSTAT^XUTMOPT("ORMTIME RUN",.ORY) ;get option sch info IA# 1472
|
---|
24 | .F J=1:1:ORY Q:OK=2 D
|
---|
25 | ..S SCHDT=$P(ORY(J),U,2) ;next scheduled ORMTIME run time
|
---|
26 | ..S NOWDT=$$NOW^XLFDT
|
---|
27 | ..S DIFFDT=$$FMDIFF^XLFDT(SCHDT,NOWDT,2)
|
---|
28 | ..I DIFFDT>0,DIFFDT<300 S OK=2 ;if sched to run in less than 5 minutes
|
---|
29 | ;
|
---|
30 | I OK=1 D ;ORMTIME not running
|
---|
31 | .D BMES^XPDUTL("ORMTIME not running nor scheduled within 5 minutes. Okay to install.")
|
---|
32 | ;
|
---|
33 | I OK=0 D ;ORMTIME still running
|
---|
34 | .D BMES^XPDUTL("ORMTIME is still running...")
|
---|
35 | .S JOB="",JOB=$O(^TMP("OCXORMTIME",JOB),-1)
|
---|
36 | .I +$G(JOB)>0,$D(^TMP("OCXORMTIME",JOB,"STATUS")) D
|
---|
37 | ..S STATUS=^TMP("OCXORMTIME",JOB,"STATUS")
|
---|
38 | ..D MES^XPDUTL(STATUS)
|
---|
39 | .D BMES^XPDUTL("*** ABORTING INSTALLATION *** - due to potential conflict with ORMTIME.")
|
---|
40 | .D MES^XPDUTL("Try installation again after ORMTIME run completes.")
|
---|
41 | .D MES^XPDUTL("(ORMTIME usually requires less than 10 mintues to run to completion.)")
|
---|
42 | .S XPDQUIT=2 ;abort installation but leave transport global in ^XTMP
|
---|
43 | ;
|
---|
44 | I OK=2 D ;ORMTIME scheduled to run before patch install completes
|
---|
45 | .S MSG=$$FMTE^XLFDT(SCHDT)
|
---|
46 | .S MSG="ORMTIME scheduled at: "_MSG_" and may impact patch installation."
|
---|
47 | .D BMES^XPDUTL(MSG)
|
---|
48 | .D BMES^XPDUTL("*** ABORTING INSTALLATION *** - due to potential conflict with ORMTIME.")
|
---|
49 | .D MES^XPDUTL("Try installation again after ORMTIME run completes.")
|
---|
50 | .D MES^XPDUTL("(ORMTIME usually requires less than 10 mintues to run to completion.)")
|
---|
51 | .S XPDQUIT=2 ;abort installation but leave transport global in ^XTMP
|
---|
52 | ;
|
---|
53 | Q
|
---|