home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / netdor3.zip / DISK_13 / IMAGE12.ZIP / CATALOG / SCHEDULE.CMD < prev    next >
OS/2 REXX Batch file  |  1993-08-23  |  4KB  |  127 lines

  1. /*****************************************************************************
  2.  *                  Extended COREADD Back-End for SCHEDULE                   *
  3.  *                     CORE Development (CORE at WATSON)                     *
  4.  *****************************************************************************
  5.  *                    Licensed Materials-Property of IBM                     *
  6.  *               5604-472 (c) Copyright IBM Corporation, 1993                *
  7.  *                           All rights reserved.                            *
  8.  *                  US Government Users Restricted Rights -                  *
  9.  *                 Use, duplication or disclosure restricted                 *
  10.  *                by GSA ADP Schedule Contract with IBM Corp.                *
  11.  ****************************************************************************/
  12.  
  13. trace 'O'
  14. signal on syntax
  15. signal on novalue
  16. call on halt
  17. call rxfuncadd 'CADDINIT', 'RXCADD', 'CADDINIT'
  18. Ver = 'CAddInit'()
  19. if abbrev(Ver, 'ERROR:')
  20.   then exit 200
  21. Title = RxCAdd.STitle 'Installation'
  22. XCode = 0
  23. select
  24.   when RxCAdd.OpType = 'ADD'
  25.     then do
  26.       RxCAdd.BatchMode = 1
  27.       say 'Adding TIMEXEC...'
  28.       XCode = CoreAddProg('TIMEXEC')
  29.     end
  30.   when RxCAdd.OpType = 'REMOVE'
  31.     then do
  32.       XCode = 0
  33.     end
  34.   otherwise do
  35.     call 'MessageBox' Title, 'Unexpected operation type "'RxCAdd.OpType'"'
  36.     XCode = 201
  37.   end
  38. end
  39. call AddExit XCode
  40.  
  41. RunItl: procedure expose RXCADD. Title
  42. parse arg ItlName
  43. CDr = value('CORE.DIR',,'OS2ENVIRONMENT')
  44. List = 'VERSION STITLE OPTYPE PREVIOUS'
  45. do I = 1 to words(List)
  46.   Name = 'RXCADD.'word(List, I)
  47.   call value Name, value(Name), 'OS2ENVIRONMENT'
  48. end I
  49. do I = 1 to RXCADD.PROGINFO.0
  50.   call value 'RXCADD.PROGINFO.'I, RXCADD.PROGINFO.I, 'OS2ENVIRONMENT'
  51. end I
  52. if pos('\', ItlName) = 0
  53.   then do
  54.     parse source . . Me
  55.     ItlName = left(Me, lastpos('\', Me))||ItlName
  56.   end
  57. '@CALL' CDr'IMPIT.CMD /R:'ItlName '/NOPAUSE'
  58. if rc <> 0
  59.   then call AddExit 205, 'Error' rc 'returned by ITL interpreter.'
  60. return rc
  61.  
  62. AddExit:
  63. parse arg XCode, Msg
  64. if XCode = ''
  65.   then XCode = 0
  66. if Msg <> ''
  67.   then call 'MessageBox' Title, Msg
  68. call 'CAddComplete' XCode
  69. /**
  70.  ** Uncomment this block if program is a TCP/IP app that requires TCP/IP
  71.  ** to be running before it can start.
  72. if XCode = 0 & rxOs2Ver() >= 2.0 & RxCAdd.OpType = 'ADD'
  73.   then do
  74.     call rxSleep 2
  75.     Handle = '<CORE_APP_'RxCAdd.STitle'>'
  76.     if \SysSetObjectData(Handle, 'ASSOCFILTER=TCPIP;')
  77.       then call 'MessageBox' Title, 'Warning: TCP/IP association could not',
  78.           'be set.'
  79.   end
  80. **/
  81. call 'CAddExit'
  82. exit XCode
  83.  
  84. /***********************************************************************
  85.  *                             ERROR TRAPS                             *
  86.  ***********************************************************************/
  87. BugInit:
  88. signal off error; signal off failure; signal off halt
  89. signal off novalue; signal off notready; signal off syntax
  90. parse upper source . . Me
  91. if symbol('TITLE') = 'LIT'
  92.   then Title = 'COREADD Failure'
  93. Me = Me':'||'0A'x
  94. if symbol('GLOBALS') = 'LIT'
  95.   then do
  96.     Globals = 'TrVal'
  97.     TrVal = 'O'
  98.   end
  99. return
  100.  
  101. Halt:
  102. Where = SigL
  103. call BugInit
  104. call 'MessageBox' Title, Me||'Execution halted by user in line' Where
  105. XXC = 204
  106. signal DebugExit
  107.  
  108. Syntax:
  109. Where = SigL
  110. call BugInit
  111. call 'MessageBox' Title,,
  112.     Me||'Syntax error' rc '('errortext(rc)') in line' Where'.'
  113. XXC = 203
  114. signal DebugExit
  115.  
  116. Novalue:
  117. Where = SigL
  118. call BugInit
  119. call 'MessageBox' Title, Me||'NOVALUE error ('condition('D')') in line' Where'.'
  120. XXC = 203
  121. signal DebugExit
  122.  
  123. DebugExit:
  124. call 'CAddComplete' XXC
  125. call 'CAddExit'
  126. exit XXC
  127.