DBUTILS.LST 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588
  1. Listing:
  2. 1 IMPLEMENTATION MODULE DBUtils;
  3. 2 (*
  4. 3 * ModBase
  5. 4 * Release 3.0
  6. 5 * (c) Copyright 1986 - 1991 PMI
  7. 6 Copyright 1988 - 1991 John McMonagle
  8. 7 * P.O. Box 8402
  9. 8 * Green Bay Wi 53308
  10. 9 * All Rights Reserved
  11. 10 * by Ed Ross
  12. 11 *)
  13. 12
  14. 13 FROM BigSets IMPORT ExclCh, InclCh;
  15. 14 FROM ControlUtils IMPORT ChangeField, Control, Input,
  16. 15 ReadNextInput,ReadInput,AddStrField;
  17. 16 FROM DspFiles IMPORT ReadDisplayFrame;
  18. 17 FROM EnvironUtils IMPORT GetDate;
  19. 18 FROM DateFunctions IMPORT Date, DateToStr, StrToDate;
  20. 19 FROM HandleIO IMPORT BlockRead, BlockWrite, CloseHandle, CreateFile,
  21. 20 FileExists, FileOffSet, OpenFile, SetFilePtr;
  22. 21 FROM FramePainter IMPORT RedrawField, ShowDisplayFrame;
  23. 22 FROM M2Strings IMPORT Length,Assign,Delete;
  24. 23 FROM LowLevel IMPORT Fill;
  25. 24 FROM HandleIO IMPORT OpenFile,CloseHandle;
  26. ***** ^ duplicate identifier
  27. ***** ^ duplicate identifier
  28. ***** ^ duplicate identifier
  29. 25 FROM NumTypes IMPORT Real8;
  30. 26 FROM StrConv IMPORT ReturnedCard,StrToReal,CardinalToStr,RealToStr;
  31. 27 FROM ScrnTypes IMPORT AFrameName, DispCode, DisplayFrame, InitDisplayFrame,
  32. 28 InputFieldPtr,ImageElement,InputFieldRecord, IntCode,ImageElmtPtr,
  33. 29 DisplayFile;
  34. 30 FROM ScrnUtl1 IMPORT FieldListTotal, GetFieldRec, GetFieldText,
  35. 31 PutFieldRec,CurrentField,GetImagePtr,NumberOfImages,ResetFieldPtr,
  36. 32 GetFieldImagePtr,GetFieldPtr;
  37. 33 FROM ScrnUtl2 IMPORT CloseDisplayFrame;
  38. 34 FROM StrEdit IMPORT CrunchBlanks,LeftJustify,Center;
  39. 35 FROM StringIO IMPORT ErrorMessage,WriteEol,WriteStr;
  40. 36 FROM SYSTEM IMPORT ADR;
  41. 37 FROM UserOps IMPORT AKeyHandler, ScreenKeySet, TheKeyHandler;
  42. 38 IMPORT VWindows;
  43. 39 FROM GenLists IMPORT GenList,NewList,ListInsert,StrCode;
  44. 40
  45. 41
  46. 42 VAR
  47. 43 OldKey :AKeyHandler;
  48. 44 Today : Date;
  49. 45 Str1,Str2 : ARRAY[0..8] OF CHAR;
  50. ***** ^ not supported yet
  51. ***** ^ not supported yet
  52. 46
  53. 47
  54. 48
  55. 49 PROCEDURE SelectServices(VAR SerList : GenList);
  56. 50 VAR
  57. 51 DF : DisplayFrame;
  58. 52 NxtFrame : AFrameName;
  59. 53 ReturnVal: ARRAY[0..40] OF CHAR;
  60. ***** ^ not supported yet
  61. ***** ^ not supported yet
  62. 54 Row : CARDINAL;
  63. 55 Drive : CHAR;
  64. 56 Card : CARDINAL;
  65. 57 PathName : ARRAY[0..63] OF CHAR;
  66. ***** ^ not supported yet
  67. ***** ^ not supported yet
  68. 58 Str : ARRAY[0..12] OF CHAR;
  69. ***** ^ not supported yet
  70. ***** ^ not supported yet
  71. 59 FileName : AFrameName;
  72. 60 EM : ErrorMessage;
  73. 61 ImageRec: ImageElement;
  74. 62 FullTableName : ARRAY[0..63] OF CHAR;
  75. ***** ^ not supported yet
  76. ***** ^ not supported yet
  77. 63 BEGIN
  78. 64
  79. 65 END SelectServices;
  80. ***** ^ not supported yet
  81. 66
  82. 67
  83. 68 PROCEDURE GetSelected(VAR TheList : GenList; DF : DisplayFrame);
  84. 69 VAR
  85. 70 J : CARDINAL;
  86. 71 Image : ImageElmtPtr;
  87. 72 str :ARRAY[0..79] OF CHAR;
  88. ***** ^ not supported yet
  89. ***** ^ not supported yet
  90. 73 (* FieldPtr : InputFieldPtr;*)
  91. 74 BEGIN
  92. 75 NewList(TheList);
  93. ***** ^ not supported yet
  94. ***** ^ not supported yet
  95. 76 FOR J := 1 TO FieldListTotal(DF) DO
  96. ***** ^ not supported yet
  97. ***** ^ not supported yet
  98. 77 GetImagePtr(DF, J,Image);
  99. ***** ^ not supported yet
  100. ***** ^ not supported yet
  101. ***** ^ not supported yet
  102. 78 IF Image^.text[0] = CHR(251) (* if checked with sq root sign *)
  103. ***** ^ not supported yet
  104. ***** ^ not supported yet
  105. ***** ^ not supported yet
  106. ***** ^ undeclared identifier
  107. ***** ^ not supported yet
  108. 79 THEN
  109. 80 Assign(Image^.text,str);
  110. ***** ^ not supported yet
  111. ***** ^ not supported yet
  112. ***** ^ not supported yet
  113. ***** ^ not supported yet
  114. 81 Delete(str,0,1);
  115. ***** ^ not supported yet
  116. ***** ^ not supported yet
  117. ***** ^ not supported yet
  118. 82 (* GetFieldPtr(DF,J,FieldPtr); *)
  119. 83 ListInsert(str,StrCode,TheList,100);
  120. ***** ^ not supported yet
  121. ***** ^ not supported yet
  122. ***** ^ not supported yet
  123. ***** ^ not supported yet
  124. ***** ^ not supported yet
  125. 84 END;
  126. 85 END;
  127. 86 END GetSelected;
  128. ***** ^ not supported yet
  129. 87
  130. 88
  131. 89 PROCEDURE NewKeyHandler( DF : DisplayFrame; VAR Key : CARDINAL;
  132. 90 VAR NxtFrame : AFrameName);
  133. 91 VAR
  134. 92 Image : ImageElmtPtr;
  135. 93 C : CARDINAL;
  136. 94 BEGIN
  137. 95 OldKey(DF, Key, NxtFrame); (* process the keys first *)
  138. ***** ^ not supported yet
  139. ***** ^ not supported yet
  140. ***** ^ not supported yet
  141. 96 IF Key = 32 (* if the space bar was hit *)
  142. 97 THEN
  143. 98 C := CurrentField(DF);
  144. ***** ^ not supported yet
  145. ***** ^ not supported yet
  146. 99 GetImagePtr(DF, C,Image);
  147. ***** ^ not supported yet
  148. ***** ^ not supported yet
  149. ***** ^ not supported yet
  150. 100 IF Image^.text[0] = CHR(251) (* if checked with sq root sign *)
  151. ***** ^ not supported yet
  152. ***** ^ not supported yet
  153. ***** ^ not supported yet
  154. ***** ^ undeclared identifier
  155. ***** ^ not supported yet
  156. 101 THEN Image^.text[0] := ' '
  157. ***** ^ not supported yet
  158. ***** ^ not supported yet
  159. ***** ^ not supported yet
  160. 102 ELSE Image^.text[0] := CHR(251);
  161. ***** ^ not supported yet
  162. ***** ^ not supported yet
  163. ***** ^ not supported yet
  164. ***** ^ undeclared identifier
  165. ***** ^ not supported yet
  166. 103 END;
  167. 104 RedrawField(DF,C,TRUE);
  168. ***** ^ not supported yet
  169. ***** ^ not supported yet
  170. ***** ^ not supported yet
  171. 105 END;
  172. 106 END NewKeyHandler;
  173. ***** ^ not supported yet
  174. 107
  175. 108
  176. 109 PROCEDURE SelectFromScreen(VAR DF : DisplayFrame);
  177. 110 BEGIN
  178. 111 OldKey := TheKeyHandler;
  179. ***** ^ not supported yet
  180. ***** ^ not supported yet
  181. 112 TheKeyHandler := NewKeyHandler;
  182. ***** ^ not supported yet
  183. ***** ^ not supported yet
  184. 113 ShowDisplayFrame(DF,0,0,0,0);
  185. ***** ^ not supported yet
  186. ***** ^ not supported yet
  187. ***** ^ not supported yet
  188. 114 InclCh(ScreenKeySet,' '); (* look for space bar *)
  189. ***** ^ not supported yet
  190. ***** ^ not supported yet
  191. ***** ^ not supported yet
  192. 115 Control(DF);
  193. ***** ^ not supported yet
  194. ***** ^ not supported yet
  195. 116 ExclCh(ScreenKeySet,' ');
  196. ***** ^ not supported yet
  197. ***** ^ not supported yet
  198. ***** ^ not supported yet
  199. 117 TheKeyHandler := OldKey;
  200. ***** ^ not supported yet
  201. ***** ^ not supported yet
  202. 118 END SelectFromScreen;
  203. ***** ^ not supported yet
  204. 119
  205. 120
  206. 121
  207. 122
  208. 123
  209. 124
  210. 125 PROCEDURE AddFldTypes(VAR DF : DisplayFrame; Col,Row: CARDINAL;
  211. 126 Text : ARRAY OF CHAR;Len: CARDINAL; Type : CHAR);
  212. ***** ^ not supported yet
  213. 127
  214. 128 (* copy of add menu item from control utils *)
  215. 129
  216. 130 VAR
  217. 131 FieldRec : InputFieldRecord;
  218. 132
  219. 133
  220. 134 BEGIN
  221. 135 AddStrField(DF,Col,Row,Text,Len);
  222. ***** ^ not supported yet
  223. ***** ^ not supported yet
  224. ***** ^ not supported yet
  225. ***** ^ not supported yet
  226. 136 GetFieldRec( DF, FieldListTotal(DF),
  227. ***** ^ not supported yet
  228. ***** ^ not supported yet
  229. ***** ^ not supported yet
  230. ***** ^ not supported yet
  231. 137 FieldRec );
  232. ***** ^ not supported yet
  233. 138 CASE Type OF
  234. 139 IntCode : FieldRec.typ := IntCode;
  235. ***** ^ not supported yet
  236. ***** ^ not supported yet
  237. ***** ^ not supported yet
  238. ***** ^ not supported yet
  239. 140 FieldRec.iMax := 20;
  240. ***** ^ not supported yet
  241. ***** ^ not supported yet
  242. 141 FieldRec.iMin := 0;
  243. ***** ^ not supported yet
  244. ***** ^ not supported yet
  245. 142 |DispCode : FieldRec.typ := DispCode;
  246. ***** ^ not supported yet
  247. ***** ^ not supported yet
  248. ***** ^ not supported yet
  249. ***** ^ not supported yet
  250. 143 END; (* end case of *)
  251. 144 PutFieldRec( FieldRec, DF,
  252. ***** ^ not supported yet
  253. ***** ^ not supported yet
  254. ***** ^ not supported yet
  255. 145 FieldListTotal(DF) );
  256. ***** ^ not supported yet
  257. ***** ^ not supported yet
  258. 146
  259. 147 END AddFldTypes;
  260. ***** ^ not supported yet
  261. 148
  262. 149
  263. 150
  264. 151
  265. 152
  266. 153
  267. 154 PROCEDURE PrintFrame(DF : DisplayFrame; Handle : CARDINAL);
  268. 155 (* Given a display frame created by adding menu items or string items
  269. 156 print it to the report printer*)
  270. 157
  271. 158 CONST
  272. 159 FF = CHR(12);
  273. ***** ^ undeclared identifier
  274. ***** ^ not supported yet
  275. 160 VAR
  276. 161 J : CARDINAL;
  277. 162 Cnt : CARDINAL;
  278. 163 Str : ARRAY[0..80] OF CHAR;
  279. ***** ^ not supported yet
  280. ***** ^ not supported yet
  281. 164 Lines : CARDINAL;
  282. 165 FldImagePnt : ImageElmtPtr;
  283. 166 FirstLine : ARRAY[0..80] OF CHAR;
  284. ***** ^ not supported yet
  285. ***** ^ not supported yet
  286. 167 EM : CARDINAL;
  287. 168
  288. 169
  289. 170
  290. 171 PROCEDURE PrintHeader(Handle : CARDINAL);
  291. 172 VAR M : CARDINAL;
  292. 173 BEGIN
  293. 174 FOR M := 0 TO 6 DO
  294. 175 WriteEol(Handle,PrintTitle[M]);
  295. ***** ^ not supported yet
  296. ***** ^ undeclared identifier
  297. ***** ^ not supported yet
  298. 176 END;
  299. 177 WriteEol(Handle,'');
  300. ***** ^ not supported yet
  301. ***** ^ not supported yet
  302. 178 WriteEol(Handle,FirstLine);
  303. ***** ^ not supported yet
  304. ***** ^ not supported yet
  305. 179 Fill(ADR(Str),78,'-'); (* dash line *)
  306. ***** ^ not supported yet
  307. ***** ^ not supported yet
  308. ***** ^ not supported yet
  309. ***** ^ not supported yet
  310. 180 WriteEol(Handle,Str);
  311. ***** ^ not supported yet
  312. ***** ^ not supported yet
  313. 181 Lines := 50;
  314. 182
  315. 183 END PrintHeader;
  316. ***** ^ not supported yet
  317. 184
  318. 185
  319. 186 BEGIN
  320. 187
  321. 188 Cnt := NumberOfImages(DF);
  322. ***** ^ not supported yet
  323. ***** ^ not supported yet
  324. 189 WriteStr(Handle,027C+'C'+66C); (* set lines per page *)
  325. ***** ^ not supported yet
  326. ***** ^ arithmetic operand must be numeric
  327. ***** ^ not supported yet
  328. 190 GetFieldImagePtr(DF,1,FldImagePnt);
  329. ***** ^ not supported yet
  330. ***** ^ not supported yet
  331. ***** ^ not supported yet
  332. 191 Assign(FldImagePnt^.text,FirstLine );
  333. ***** ^ not supported yet
  334. ***** ^ not supported yet
  335. ***** ^ not supported yet
  336. ***** ^ not supported yet
  337. 192 ResetFieldPtr(DF);
  338. ***** ^ not supported yet
  339. ***** ^ not supported yet
  340. 193 PrintHeader(Handle);
  341. ***** ^ not supported yet
  342. ***** ^ not supported yet
  343. 194 FOR J := 1 TO Cnt-1 DO
  344. 195 IF (J MOD Lines) = 0
  345. 196 THEN
  346. 197 WriteStr(Handle,FF); (* form feed *)
  347. ***** ^ not supported yet
  348. ***** ^ not supported yet
  349. 198 PrintHeader(Handle);
  350. ***** ^ not supported yet
  351. ***** ^ not supported yet
  352. 199 END;
  353. 200 ReadNextInput(DF,Str,0);
  354. ***** ^ not supported yet
  355. ***** ^ not supported yet
  356. ***** ^ not supported yet
  357. ***** ^ not supported yet
  358. 201 WriteEol(Handle,Str);
  359. ***** ^ not supported yet
  360. ***** ^ not supported yet
  361. 202 END;
  362. 203
  363. 204 END PrintFrame;
  364. ***** ^ not supported yet
  365. 205
  366. 206 PROCEDURE GetDateRange(VAR D1, D2 : Date; PMIScreens : DisplayFile);
  367. 207 VAR
  368. 208 DF : DisplayFrame;
  369. 209 BEGIN
  370. 210 InitDisplayFrame(DF,VWindows.CurrentWindow);
  371. ***** ^ not supported yet
  372. ***** ^ not supported yet
  373. ***** ^ not supported yet
  374. ***** ^ not supported yet
  375. 211 ReadDisplayFrame(PMIScreens,DF,'DateRange');
  376. ***** ^ not supported yet
  377. ***** ^ not supported yet
  378. ***** ^ not supported yet
  379. ***** ^ not supported yet
  380. 212 D1 := Today;
  381. ***** ^ not supported yet
  382. ***** ^ not supported yet
  383. 213 D1.mo := 1; (* jan 1st of this year *)
  384. ***** ^ not supported yet
  385. ***** ^ not supported yet
  386. 214 D1.day := 1;
  387. ***** ^ not supported yet
  388. ***** ^ not supported yet
  389. 215 ChangeDateField(DF,D1,'Date1');
  390. ***** ^ undeclared identifier
  391. ***** ^ not supported yet
  392. ***** ^ not supported yet
  393. ***** ^ not supported yet
  394. 216 ChangeDateField(DF,Today,'Date2');
  395. ***** ^ undeclared identifier
  396. ***** ^ not supported yet
  397. ***** ^ not supported yet
  398. ***** ^ not supported yet
  399. 217 ShowDisplayFrame(DF,0,0,0,0);
  400. ***** ^ not supported yet
  401. ***** ^ not supported yet
  402. ***** ^ not supported yet
  403. 218 Control(DF);
  404. ***** ^ not supported yet
  405. ***** ^ not supported yet
  406. 219 ReadDateField(DF,D1,'Date1');
  407. ***** ^ undeclared identifier
  408. ***** ^ not supported yet
  409. ***** ^ not supported yet
  410. ***** ^ not supported yet
  411. 220 ReadDateField(DF,D2,'Date2');
  412. ***** ^ undeclared identifier
  413. ***** ^ not supported yet
  414. ***** ^ not supported yet
  415. ***** ^ not supported yet
  416. 221 CloseDisplayFrame(DF);
  417. ***** ^ not supported yet
  418. ***** ^ not supported yet
  419. 222 END GetDateRange;
  420. ***** ^ not supported yet
  421. 223
  422. 224
  423. 225 PROCEDURE ReadCardField(DF : DisplayFrame; VAR TheCard : CARDINAL;
  424. 226 FldName : ARRAY OF CHAR);
  425. ***** ^ not supported yet
  426. 227 VAR S : ARRAY [0..10] OF CHAR;
  427. ***** ^ not supported yet
  428. ***** ^ not supported yet
  429. 228 B : BOOLEAN;
  430. 229 BEGIN
  431. 230 ReadInput(DF,S,FldName);
  432. ***** ^ not supported yet
  433. ***** ^ not supported yet
  434. ***** ^ not supported yet
  435. ***** ^ not supported yet
  436. 231 TheCard := ReturnedCard(S);
  437. ***** ^ not supported yet
  438. ***** ^ not supported yet
  439. 232
  440. 233 END ReadCardField;
  441. ***** ^ not supported yet
  442. 234
  443. 235 PROCEDURE ReadRealField(DF : DisplayFrame; VAR TheReal : Real8;
  444. 236 FldName : ARRAY OF CHAR);
  445. ***** ^ not supported yet
  446. 237 VAR
  447. 238 S : ARRAY [0..15] OF CHAR;
  448. ***** ^ not supported yet
  449. ***** ^ not supported yet
  450. 239 B : BOOLEAN;
  451. 240 BEGIN
  452. 241 ReadInput(DF,S,FldName);
  453. ***** ^ not supported yet
  454. ***** ^ not supported yet
  455. ***** ^ not supported yet
  456. ***** ^ not supported yet
  457. 242 B := StrToReal(S,0,TheReal);
  458. ***** ^ not supported yet
  459. ***** ^ not supported yet
  460. ***** ^ not supported yet
  461. 243 END ReadRealField;
  462. ***** ^ not supported yet
  463. 244
  464. 245 PROCEDURE ChangeCardField(DF : DisplayFrame; TheCard : CARDINAL;
  465. 246 FldName : ARRAY OF CHAR);
  466. ***** ^ not supported yet
  467. 247 VAR
  468. 248 S : ARRAY[0..7] OF CHAR;
  469. ***** ^ not supported yet
  470. ***** ^ not supported yet
  471. 249 BEGIN
  472. 250
  473. 251 CardinalToStr(TheCard,5,S);
  474. ***** ^ not supported yet
  475. ***** ^ not supported yet
  476. 252 CrunchBlanks(S);
  477. ***** ^ not supported yet
  478. ***** ^ not supported yet
  479. 253 ChangeField(DF,S,FldName,TRUE);
  480. ***** ^ not supported yet
  481. ***** ^ not supported yet
  482. ***** ^ not supported yet
  483. ***** ^ not supported yet
  484. ***** ^ not supported yet
  485. 254
  486. 255 END ChangeCardField;
  487. ***** ^ not supported yet
  488. 256
  489. 257 PROCEDURE ChangeRealField(DF : DisplayFrame; TheReal : Real8;
  490. 258 FldName : ARRAY OF CHAR);
  491. ***** ^ not supported yet
  492. 259 VAR
  493. 260 S : ARRAY[0..15] OF CHAR;
  494. ***** ^ not supported yet
  495. ***** ^ not supported yet
  496. 261 BEGIN
  497. 262
  498. 263 RealToStr(TheReal,2,8,S);
  499. ***** ^ not supported yet
  500. ***** ^ not supported yet
  501. ***** ^ not supported yet
  502. 264 CrunchBlanks(S);
  503. ***** ^ not supported yet
  504. ***** ^ not supported yet
  505. 265 ChangeField(DF,S,FldName,TRUE);
  506. ***** ^ not supported yet
  507. ***** ^ not supported yet
  508. ***** ^ not supported yet
  509. ***** ^ not supported yet
  510. ***** ^ not supported yet
  511. 266 END ChangeRealField;
  512. ***** ^ not supported yet
  513. 267
  514. 268
  515. 269 PROCEDURE ReadDateField( DF : DisplayFrame; VAR D : Date;
  516. 270 FldName : ARRAY OF CHAR);
  517. ***** ^ not supported yet
  518. 271 VAR
  519. 272 S : ARRAY [0..15] OF CHAR;
  520. ***** ^ not supported yet
  521. ***** ^ not supported yet
  522. 273 Ok : BOOLEAN;
  523. 274 BEGIN
  524. 275 ReadInput(DF,S,FldName);
  525. ***** ^ not supported yet
  526. ***** ^ not supported yet
  527. ***** ^ not supported yet
  528. ***** ^ not supported yet
  529. 276 StrToDate(S,D,Ok);
  530. ***** ^ not supported yet
  531. ***** ^ not supported yet
  532. ***** ^ not supported yet
  533. ***** ^ not supported yet
  534. 277 END ReadDateField;
  535. ***** ^ not supported yet
  536. 278
  537. 279 PROCEDURE ChangeDateField(VAR DF : DisplayFrame; D : Date;
  538. 280 FldName : ARRAY OF CHAR);
  539. ***** ^ not supported yet
  540. 281 VAR
  541. 282 S : ARRAY[0..15] OF CHAR;
  542. ***** ^ not supported yet
  543. ***** ^ not supported yet
  544. 283 B : BOOLEAN;
  545. 284 BEGIN
  546. 285 DateToStr(D,S,B);
  547. ***** ^ not supported yet
  548. ***** ^ not supported yet
  549. ***** ^ not supported yet
  550. ***** ^ not supported yet
  551. 286 ChangeField(DF,S,FldName,TRUE);
  552. ***** ^ not supported yet
  553. ***** ^ not supported yet
  554. ***** ^ not supported yet
  555. ***** ^ not supported yet
  556. ***** ^ not supported yet
  557. 287 END ChangeDateField;
  558. ***** ^ not supported yet
  559. 288
  560. 289 PROCEDURE BoolExists(B : BOOLEAN) : CHAR;
  561. 290 (* returns an * if the boolean is true - for change field *)
  562. 291 (* this is used to signal on the screen that some condition exists *)
  563. 292 BEGIN
  564. 293 IF B
  565. 294 THEN RETURN '*'
  566. 295 ELSE RETURN ' '
  567. 296 END;
  568. 297 END BoolExists;
  569. ***** ^ not supported yet
  570. 298 BEGIN
  571. 299 GetDate(Today.mo,Today.day,Today.yr,Str1,Str2);
  572. ***** ^ not supported yet
  573. ***** ^ not supported yet
  574. ***** ^ not supported yet
  575. ***** ^ not supported yet
  576. ***** ^ not supported yet
  577. ***** ^ not supported yet
  578. ***** ^ not supported yet
  579. ***** ^ not supported yet
  580. ***** ^ not supported yet
  581. 300
  582. 301 END DBUtils.
  583. ***** ^ not supported yet
  584. 281 errors