<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.webhuis.nl:443/index.php?action=history&amp;feed=atom&amp;title=Primes.cbsql</id>
	<title>Primes.cbsql - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.webhuis.nl:443/index.php?action=history&amp;feed=atom&amp;title=Primes.cbsql"/>
	<link rel="alternate" type="text/html" href="https://wiki.webhuis.nl:443/index.php?title=Primes.cbsql&amp;action=history"/>
	<updated>2026-09-03T10:05:45Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.17</generator>
	<entry>
		<id>https://wiki.webhuis.nl:443/index.php?title=Primes.cbsql&amp;diff=4659&amp;oldid=prev</id>
		<title>Martin: Created page with &quot;This is the compplete source code of the primes Cobol program, which contains the preprocessed high level SQL statements. &lt;pre&gt;        identification division.        program-...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.webhuis.nl:443/index.php?title=Primes.cbsql&amp;diff=4659&amp;oldid=prev"/>
		<updated>2025-12-09T22:26:43Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;This is the compplete source code of the primes Cobol program, which contains the preprocessed high level SQL statements. &amp;lt;pre&amp;gt;        identification division.        program-...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This is the compplete source code of the primes Cobol program, which contains the preprocessed high level SQL statements.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
       identification division.&lt;br /&gt;
       program-id. primes.&lt;br /&gt;
&lt;br /&gt;
       environment division.&lt;br /&gt;
       configuration section.&lt;br /&gt;
       source-computer. linux-laptop.&lt;br /&gt;
       object-computer. linux-laptop.&lt;br /&gt;
       special-names.&lt;br /&gt;
           console is scherm.&lt;br /&gt;
&lt;br /&gt;
       data division.&lt;br /&gt;
       working-storage section.&lt;br /&gt;
       01  filler               pic x(32) value &amp;quot;Start WS primes&amp;quot;.&lt;br /&gt;
       01 DATASRC PIC X(64) value&lt;br /&gt;
          &amp;quot;pgsql://localhost:5432/primes&amp;amp;default_schema=primes&amp;quot;.&lt;br /&gt;
       01 DBUSR     PIC X(64)  value &amp;quot;primes_user&amp;quot;.&lt;br /&gt;
       01 DBPWD     PIC X(64)  value &amp;quot;pr1mes_user&amp;quot;.&lt;br /&gt;
       01 CUR-STEP    PIC X(16).&lt;br /&gt;
       01 primes-row.&lt;br /&gt;
        03 r-ident          pic 9(9) comp-3.&lt;br /&gt;
        03 r-prime          pic 9(9) comp-3.&lt;br /&gt;
       01 prime-count       pic 9(9).&lt;br /&gt;
       01 prime_seq         pic 9(9).&lt;br /&gt;
       01 divider           pic 9(9).&lt;br /&gt;
&lt;br /&gt;
       01 primes.&lt;br /&gt;
        03 primes-result    pic 9(2)  value zero.&lt;br /&gt;
         88 init-primes-ok   value 1.&lt;br /&gt;
         88 first-divider-ok value 2.&lt;br /&gt;
         88 next-divider-ok  value 3.&lt;br /&gt;
        03 test-number      pic 9(9).&lt;br /&gt;
        03 test-number-sqr  pic 9(9)v9(9).&lt;br /&gt;
        03 test-divider     pic 9(9).&lt;br /&gt;
        03 test-rest        pic 9(9)v9(9).&lt;br /&gt;
        03 old-test-number  pic 9(9).&lt;br /&gt;
        03 old-ident        pic 9(9).&lt;br /&gt;
        03 new-ident        pic 9(9).&lt;br /&gt;
&lt;br /&gt;
GIXSQL*EXEC SQL&lt;br /&gt;
GIXSQL*    INCLUDE primes-table&lt;br /&gt;
GIXSQL*END-EXEC.&lt;br /&gt;
           COPY primes-table.&lt;br /&gt;
&lt;br /&gt;
GIXSQL*EXEC SQL&lt;br /&gt;
GIXSQL*    INCLUDE SQLCA&lt;br /&gt;
GIXSQL*END-EXEC.&lt;br /&gt;
           COPY SQLCA.&lt;br /&gt;
&lt;br /&gt;
GIXSQL*EXEC SQL AT primes&lt;br /&gt;
GIXSQL*    DECLARE primescursor CURSOR FOR&lt;br /&gt;
GIXSQL*      SELECT * FROM primes&lt;br /&gt;
GIXSQL*END-EXEC.&lt;br /&gt;
&lt;br /&gt;
           copy primes-ui.&lt;br /&gt;
&lt;br /&gt;
GIXSQL 01  SQ0001.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(0020) VALUE &amp;quot;SELECT * FROM primes&amp;quot;.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(1) VALUE X&amp;quot;00&amp;quot;.&lt;br /&gt;
GIXSQL 01  SQ0002.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(0041) VALUE &amp;quot;SELECT prime FROM primes WHER&amp;quot;&lt;br /&gt;
GIXSQL  &amp;amp;  &amp;quot;E ident = $1&amp;quot;.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(1) VALUE X&amp;quot;00&amp;quot;.&lt;br /&gt;
GIXSQL 01  SQ0003.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(0042) VALUE &amp;quot;INSERT INTO primes ( prime ) &amp;quot;&lt;br /&gt;
GIXSQL  &amp;amp;  &amp;quot;VALUES ( $1 )&amp;quot;.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(1) VALUE X&amp;quot;00&amp;quot;.&lt;br /&gt;
GIXSQL 01  SQ0004.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(0041) VALUE &amp;quot;insert into primes ( prime ) &amp;quot;&lt;br /&gt;
GIXSQL  &amp;amp;  &amp;quot;values ( 2 )&amp;quot;.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(1) VALUE X&amp;quot;00&amp;quot;.&lt;br /&gt;
GIXSQL 01  SQ0005.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(0017) VALUE &amp;quot;START TRANSACTION&amp;quot;.&lt;br /&gt;
GIXSQL     02  FILLER PIC X(1) VALUE X&amp;quot;00&amp;quot;.&lt;br /&gt;
GIXSQL*   ESQL CURSOR INIT FLAGS (START)&lt;br /&gt;
GIXSQL 01  GIXSQL-CI-F-primes-primescursor PIC X.&lt;br /&gt;
GIXSQL*   ESQL CURSOR INIT FLAGS (END)&lt;br /&gt;
       linkage section.&lt;br /&gt;
&lt;br /&gt;
           copy primes-dal.&lt;br /&gt;
&lt;br /&gt;
           procedure division using primes-dal.&lt;br /&gt;
&lt;br /&gt;
           evaluate true&lt;br /&gt;
             when next-prime&lt;br /&gt;
               perform r80-get-next-prime&lt;br /&gt;
             when next-divider&lt;br /&gt;
               perform r81-get-next-divider&lt;br /&gt;
             when write-prime&lt;br /&gt;
               perform r83-write-prime&lt;br /&gt;
             when db-connect&lt;br /&gt;
               perform s00-connect&lt;br /&gt;
             when db-cursor&lt;br /&gt;
               perform s01-cursor&lt;br /&gt;
             when db-disconnect&lt;br /&gt;
               perform s99-disconnect&lt;br /&gt;
             when other&lt;br /&gt;
               move 1 to dal-result&lt;br /&gt;
           end-evaluate.&lt;br /&gt;
  &lt;br /&gt;
           exit program.&lt;br /&gt;
&lt;br /&gt;
       r80-get-next-prime.&lt;br /&gt;
&lt;br /&gt;
           perform s02-fetch.&lt;br /&gt;
&lt;br /&gt;
       r81-get-next-divider.&lt;br /&gt;
&lt;br /&gt;
           add 1 to old-ident giving new-ident.&lt;br /&gt;
      *    display &amp;quot;gen-methods: &amp;quot; gen-methods.&lt;br /&gt;
      *    display &amp;quot;primes.cbl ident: &amp;quot; old-ident &amp;quot; &amp;quot; new-ident.&lt;br /&gt;
&lt;br /&gt;
GIXSQL*    EXEC SQL at primes&lt;br /&gt;
GIXSQL*      SELECT prime INTO :test-divider FROM primes&lt;br /&gt;
GIXSQL*             WHERE ident = :new-ident&lt;br /&gt;
GIXSQL*    END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLStartSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLSetResultParams&amp;quot; USING&lt;br /&gt;
GIXSQL         BY VALUE 1&lt;br /&gt;
GIXSQL         BY VALUE 9&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE test-divider&lt;br /&gt;
GIXSQL         BY REFERENCE 0&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLSetSQLParams&amp;quot; USING&lt;br /&gt;
GIXSQL         BY VALUE 1&lt;br /&gt;
GIXSQL         BY VALUE 9&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE new-ident&lt;br /&gt;
GIXSQL         BY REFERENCE 0&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLExecSelectIntoOne&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE SQ0002&lt;br /&gt;
GIXSQL         BY VALUE 1&lt;br /&gt;
GIXSQL         BY VALUE 1&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLEndSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
             next sentence&lt;br /&gt;
      *      display &amp;quot;select new-divider ok: &amp;quot; test-divider upon scherm&lt;br /&gt;
           else&lt;br /&gt;
             display SQLCODE upon scherm&lt;br /&gt;
             display &amp;quot;select new-divider nok&amp;quot; upon scherm.&lt;br /&gt;
&lt;br /&gt;
      *    display &amp;quot;primes.cbl test-divider: &amp;quot; test-divider.&lt;br /&gt;
&lt;br /&gt;
           move new-ident to old-ident.&lt;br /&gt;
&lt;br /&gt;
       r83-write-prime.&lt;br /&gt;
&lt;br /&gt;
GIXSQL*    EXEC SQL at primes&lt;br /&gt;
GIXSQL*      INSERT INTO primes ( prime ) VALUES ( :prime )&lt;br /&gt;
GIXSQL*    END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLStartSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLSetSQLParams&amp;quot; USING&lt;br /&gt;
GIXSQL         BY VALUE 1&lt;br /&gt;
GIXSQL         BY VALUE 9&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE prime&lt;br /&gt;
GIXSQL         BY REFERENCE 0&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLExecParams&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE SQ0003&lt;br /&gt;
GIXSQL         BY VALUE 1&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLEndSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
             next sentence&lt;br /&gt;
      *      display SQLCODE upon scherm&lt;br /&gt;
      *      display &amp;quot;primes.cbl insert next prime and new-ident ok: &amp;quot;&lt;br /&gt;
      *               prime-number upon scherm&lt;br /&gt;
           else&lt;br /&gt;
             display SQLCODE upon scherm&lt;br /&gt;
             display &amp;quot;primes.cbl insert next prime nok: &amp;quot;&lt;br /&gt;
                      prime-number upon scherm.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      *    EXEC SQL at primes&lt;br /&gt;
      *      COMMIT&lt;br /&gt;
      *    END-EXEC.&lt;br /&gt;
&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
             next sentence&lt;br /&gt;
      *      display SQLCODE upon scherm&lt;br /&gt;
      *      display &amp;quot;commit ok: &amp;quot; upon scherm&lt;br /&gt;
           else&lt;br /&gt;
             display SQLCODE upon scherm&lt;br /&gt;
             display &amp;quot;commit nok: &amp;quot; upon scherm.&lt;br /&gt;
&lt;br /&gt;
       r90-generate-primes.&lt;br /&gt;
&lt;br /&gt;
           perform s00-connect.&lt;br /&gt;
&lt;br /&gt;
           if dal-method-ok                      then&lt;br /&gt;
&lt;br /&gt;
             move &amp;#039;log-message&amp;#039; to process-message&lt;br /&gt;
&lt;br /&gt;
GIXSQL*      EXEC SQL at primes&lt;br /&gt;
GIXSQL*        insert into primes ( prime ) values ( 2 )&lt;br /&gt;
GIXSQL*      END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLExec&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE SQ0004&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
&lt;br /&gt;
             if SQLCODE = 0   then&lt;br /&gt;
               move 0 to dal-result&lt;br /&gt;
               move 1 to primes-sequence&lt;br /&gt;
               move 2 to prime-number&lt;br /&gt;
               move &amp;#039;Initial insert ok.&amp;#039;&lt;br /&gt;
                 to process-message&lt;br /&gt;
             else&lt;br /&gt;
               move&lt;br /&gt;
                &amp;#039;Initial insert failed, terminating program.&amp;#039;&lt;br /&gt;
                 to process-message&lt;br /&gt;
               move 1 to dal-result.&lt;br /&gt;
 &lt;br /&gt;
           move &amp;#039;log-message&amp;#039; to program-message.&lt;br /&gt;
           call &amp;quot;primesui&amp;quot; using primes-ui.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       r99-stop-primes.&lt;br /&gt;
&lt;br /&gt;
           perform s99-disconnect.&lt;br /&gt;
&lt;br /&gt;
       s00-connect.&lt;br /&gt;
           MOVE &amp;#039;CONNECT&amp;#039; TO CUR-STEP.&lt;br /&gt;
GIXSQL*    EXEC SQL&lt;br /&gt;
GIXSQL*       connect TO :DATASRC AS primes USER :DBUSR USING :DBPWD&lt;br /&gt;
GIXSQL*    END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLConnect&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE DATASRC&lt;br /&gt;
GIXSQL         BY VALUE 64&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE DBUSR&lt;br /&gt;
GIXSQL         BY VALUE 64&lt;br /&gt;
GIXSQL         BY REFERENCE DBPWD&lt;br /&gt;
GIXSQL         BY VALUE 64&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
           move &amp;#039;log-message&amp;#039; to process-message.&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
              move 0 to dal-result&lt;br /&gt;
              move &amp;#039;Database initialisation ok.&amp;#039;&lt;br /&gt;
              to program-message&lt;br /&gt;
               call &amp;quot;primesui&amp;quot; using primes-ui&lt;br /&gt;
           else&lt;br /&gt;
              move&lt;br /&gt;
               &amp;#039;Database initialisation failed, terminating program.&amp;#039;&lt;br /&gt;
               to program-message&lt;br /&gt;
               call &amp;quot;primesui&amp;quot; using primes-ui&lt;br /&gt;
               move 1 to dal-result.&lt;br /&gt;
&lt;br /&gt;
       s01-cursor.&lt;br /&gt;
&lt;br /&gt;
           move &amp;#039;primes&amp;#039;            to program-name.&lt;br /&gt;
&lt;br /&gt;
GIXSQL*    EXEC SQL at primes START TRANSACTION END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLStartSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLExec&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE SQ0005&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLEndSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
              move &amp;#039;Start transaction ok.&amp;#039;&lt;br /&gt;
                to program-message&lt;br /&gt;
           else&lt;br /&gt;
              move &amp;#039;Start transaction nok.&amp;#039;&lt;br /&gt;
                to program-message&lt;br /&gt;
              move 1 to dal-result.&lt;br /&gt;
&lt;br /&gt;
           move &amp;#039;log-message&amp;#039; to program-message.&lt;br /&gt;
           call &amp;quot;primesui&amp;quot; using primes-ui.&lt;br /&gt;
&lt;br /&gt;
      *      display &amp;quot;start transaction nok&amp;quot; upon scherm.&lt;br /&gt;
&lt;br /&gt;
           if dal-method-ok                      then&lt;br /&gt;
&lt;br /&gt;
GIXSQL*      EXEC SQL OPEN primescursor END-EXEC.&lt;br /&gt;
GIXSQL     IF GIXSQL-CI-F-primes-primescursor = &amp;#039; &amp;#039; THEN&lt;br /&gt;
GIXSQL         PERFORM GIXSQL-CI-P-primes-primescursor&lt;br /&gt;
GIXSQL         IF SQLCODE = 0&lt;br /&gt;
GIXSQL           MOVE &amp;#039;X&amp;#039; TO GIXSQL-CI-F-primes-primescursor&lt;br /&gt;
GIXSQL         END-IF&lt;br /&gt;
GIXSQL     END-IF&lt;br /&gt;
GIXSQL     IF GIXSQL-CI-F-primes-primescursor = &amp;#039;X&amp;#039; THEN&lt;br /&gt;
GIXSQL         CALL STATIC &amp;quot;GIXSQLCursorOpen&amp;quot; USING&lt;br /&gt;
GIXSQL             BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL             BY REFERENCE &amp;quot;primes_primescursor&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         END-CALL&lt;br /&gt;
GIXSQL     END-IF.&lt;br /&gt;
&lt;br /&gt;
              if SQLCODE = 0   then&lt;br /&gt;
                 move &amp;#039;Start primescursur ok.&amp;#039;&lt;br /&gt;
                   to program-message&lt;br /&gt;
              else&lt;br /&gt;
                 move &amp;#039;Start primescursor nok.&amp;#039;&lt;br /&gt;
                   to program-message&lt;br /&gt;
                 move 1 to dal-result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
           move &amp;#039;primes&amp;#039;            to program-name.&lt;br /&gt;
           move &amp;#039;log-message&amp;#039; to program-message.&lt;br /&gt;
           call &amp;quot;primesui&amp;quot; using primes-ui.&lt;br /&gt;
&lt;br /&gt;
      *    if dal-method-ok                      then&lt;br /&gt;
      *       perform s02-fetch.&lt;br /&gt;
&lt;br /&gt;
      *    if SQLCODE = 0   then&lt;br /&gt;
      *       move &amp;#039;Fetch first row ok.&amp;#039; to program-message&lt;br /&gt;
      *       move 0 to dal-result&lt;br /&gt;
      *       move r-ident     to    primes-sequence&lt;br /&gt;
      *       move r-prime     to    prime-number&lt;br /&gt;
      *    else&lt;br /&gt;
      *       move &amp;#039;Fetch first row nok.&amp;#039; to program-message&lt;br /&gt;
      *          move 1 to dal-result.&lt;br /&gt;
&lt;br /&gt;
      *    move &amp;#039;primes&amp;#039;            to program-name.&lt;br /&gt;
      *    move &amp;#039;log-message&amp;#039; to program-message.&lt;br /&gt;
      *    call &amp;quot;primesui&amp;quot; using primes-ui.&lt;br /&gt;
&lt;br /&gt;
       s02-fetch.&lt;br /&gt;
&lt;br /&gt;
GIXSQL*    EXEC SQL FETCH primescursor INTO :primes-row END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLStartSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLSetResultParams&amp;quot; USING&lt;br /&gt;
GIXSQL         BY VALUE 8&lt;br /&gt;
GIXSQL         BY VALUE 9&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE r-ident&lt;br /&gt;
GIXSQL         BY REFERENCE 0&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLSetResultParams&amp;quot; USING&lt;br /&gt;
GIXSQL         BY VALUE 8&lt;br /&gt;
GIXSQL         BY VALUE 9&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE r-prime&lt;br /&gt;
GIXSQL         BY REFERENCE 0&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLCursorFetchOne&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes_primescursor&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLEndSQL&amp;quot;&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
              move r-ident     to    primes-sequence&lt;br /&gt;
              move r-prime     to    prime-number&lt;br /&gt;
              move 0 to dal-result&lt;br /&gt;
           else&lt;br /&gt;
              move &amp;#039;Fetch row nok.&amp;#039; to program-message&lt;br /&gt;
              move 1 to dal-result&lt;br /&gt;
              move &amp;#039;primes&amp;#039;            to program-name&lt;br /&gt;
              move &amp;#039;s02-fetch&amp;#039;         to program-paragraph&lt;br /&gt;
              move &amp;#039;log-message&amp;#039; to ui-methods&lt;br /&gt;
              call &amp;quot;primesui&amp;quot; using primes-ui.&lt;br /&gt;
&lt;br /&gt;
       s99-disconnect.&lt;br /&gt;
&lt;br /&gt;
           MOVE &amp;#039;DISCONNECT&amp;#039; TO CUR-STEP.&lt;br /&gt;
GIXSQL*    EXEC SQL connect RESET primes END-EXEC.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLConnectReset&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
&lt;br /&gt;
           move &amp;#039;log-message&amp;#039; to process-message.&lt;br /&gt;
&lt;br /&gt;
           if SQLCODE = 0   then&lt;br /&gt;
              move 0 to dal-result&lt;br /&gt;
              move &amp;#039;Close database ok.&amp;#039;&lt;br /&gt;
              to process-message&lt;br /&gt;
               call &amp;quot;primesui&amp;quot; using primes-ui&lt;br /&gt;
           else&lt;br /&gt;
               move &amp;#039;Database initialisation failed, ending program.&amp;#039;&lt;br /&gt;
               to process-message&lt;br /&gt;
               call &amp;quot;primesui&amp;quot; using primes-ui&lt;br /&gt;
               move 1 to dal-result.&lt;br /&gt;
           display &amp;quot;s99 disconnect from database&amp;quot; upon scherm.&lt;br /&gt;
           display SQLCODE upon scherm.&lt;br /&gt;
GIXSQL*&lt;br /&gt;
GIXSQL*   ESQL CURSOR DECLARATIONS (START)&lt;br /&gt;
GIXSQL     GO TO GIX-SKIP-CRSR-INIT.&lt;br /&gt;
GIXSQL GIXSQL-CI-P-primes-primescursor.&lt;br /&gt;
GIXSQL     CALL STATIC &amp;quot;GIXSQLCursorDeclare&amp;quot; USING&lt;br /&gt;
GIXSQL         BY REFERENCE SQLCA&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE &amp;quot;primes_primescursor&amp;quot; &amp;amp; x&amp;quot;00&amp;quot;&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL         BY REFERENCE SQ0001&lt;br /&gt;
GIXSQL         BY VALUE 0&lt;br /&gt;
GIXSQL     END-CALL.&lt;br /&gt;
GIXSQL GIX-SKIP-CRSR-INIT.&lt;br /&gt;
GIXSQL*&lt;br /&gt;
GIXSQL*   ESQL CURSOR DECLARATIONS (END)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;hr/&amp;gt;&lt;br /&gt;
Terug naar: [[primes]]&lt;/div&gt;</summary>
		<author><name>Martin</name></author>
	</entry>
</feed>