SQL Programming Manual for TAL
Examples of Static NonStop SQL Programs
HP NonStop SQL Programming Manual for TAL—527887-001
B-16
Date-Time Program
Page 2 [1] $VOL1.S04.TALDT 1991-10-15 13:41:07
41. 000265 0 0 EXEC SQL END DECLARE SECTION;
42. 000265 0 0
43. 000265 0 0 INT SQLCODE;
44. 000265 0 0
45. 000265 0 0 STRING SEL^INDEX;
46. 000265 0 0 -- for user's choice from menu
47. 000265 0 0
48. 000265 0 0 EXEC SQL INCLUDE SQLCA;
48. 000265 0 0 EXEC SQL INCLUDE SQLCA;
Source file: [3] $SYSTEM.#3188 1991-10-15 13:41:27
1. 000265 0 0 struct .SQLCA;
2. 000265 0 0 BEGIN
3. 000265 0 1 STRING filler^[0:429];
4. 000265 0 1 END; -- SQLCA
Source file: [1] $VOL1.S04.TALDT 1991-10-15 13:35:04
49. 000614 0 0 -- for SQLCADISPLAY
50. 000614 0 0
51. 000614 0 0 -- Declare cursors for report function :
52. 000614 0 0
53. 000614 0 0 EXEC SQL
54. 000614 0 0 DECLARE OLD_DATES_CURSOR CURSOR FOR
55. 000614 0 0 SELECT PROJECT_NAME,
56. 000614 0 0 START_DATE,
57. 000614 0 0 END_DATE
58. 000614 0 0 FROM =PROJECTS;
59. 000614 0 0
60. 000614 0 0 EXEC SQL
61. 000614 0 0 DECLARE NEW_DATES_CURSOR CURSOR FOR
62. 000614 0 0 SELECT PROJECT_NAME,
63. 000614 0 0 START_DATE + WAIT_TIME,
64. 000614 0 0 END_DATE + WAIT_TIME,
65. 000614 0 0 WAIT_TIME
66. 000614 0 0 FROM =PROJECTS;
67. 000614 0 0
68. 000614 0 0 -- Copy declarations from EXTDECS file for:
69. 000614 0 0 -- MYTERM, INITIALIZER, SQLCADISPLAY, OPEN, WRITE, WRITEREAD,
and STOP
70. 000614 0 0
71. 000614 0 0 ?NOLIST, SOURCE $SYSTEM.SYSTEM.EXTDECS (
75. 000000 0 0
76. 000000 0 0 -- SQL error handling:
77. 000000 0 0 PROC SQL^ERROR; FORWARD;
78. 000000 0 0 PROC NOT^FOUND; FORWARD;
79. 000000 0 0 EXEC SQL WHENEVER NOT FOUND CALL :NOT^FOUND;
80. 000000 0 0
81. 000000 0 0 -- Treat warnings the same as errors for simplicity
82. 000000 0 0 EXEC SQL WHENEVER SQLWARNING CALL :SQL^ERROR;
83. 000000 0 0
84. 000000 0 0 EXEC SQL
85. 000000 0 0 WHENEVER SQLERROR CALL :SQL^ERROR;
86. 000000 0 0 -- Forward declaring these procedures for clarity in later
calls
87. 000000 0 0 PROC FETCH^AND^DISPLAY^OLD; FORWARD;
88. 000000 0 0 PROC FETCH^AND^DISPLAY^NEW; FORWARD;
89. 000000 0 0
90. 000000 0 0
91. 000000 0 0 PROC NOT^FOUND;
92. 000000 1 0
93. 000000 1 0 BEGIN










