November 8, 2009 – 5:29 am
The syntax for a DO WHILE clause in Easytrieve is DO WHILE CONDITION1 [ AND CONDITION2 | OR CONDITION3 ] STATEMENTS TO EXECUTE END-DO Please refer the below sample of code to use a do-while clause in Easytrieve. —-+—-1—-+—-2—-+—-3—-+—-4—-+—-5—-+—-6—-+—-7– LIST ON FILE INFILE * WS-COUNT W 4 N VALUE 0 * JOB INPUT NULL WS-COUNT [...]
November 7, 2009 – 4:34 am
Let us say, I have a lookup table file for Name of the Months. (DD name LOOKUP1 in our example program) —-+—-1—-+—-2—-+—-3—-+—-4—-+—-5—-+—-6—-+—-7– 01 JANUARY 02 FEBRUARY 03 MARCH 04 APRIL 05 MAY 06 JUNE 07 JULY 08 AUGUST 09 SEPTEMBER 10 OCTOBER 11 NOVEMBER 12 DECEMBER and I have another file (DD name ACTUAL) for [...]
November 3, 2009 – 4:19 pm
SYSIBM.SYSSEQUENCES has a column called MAXASSIGNEDVAL, that gets assigned whenever the values for IDENTITY/SEQUENCE columns are getting generated (at least for the cache). SELECT MAXASSIGNEDVAL FROM SYSIBM.SYSSEQUENCES WHERE SEQUENCEID = (SELECT BSEQUENCEID FROM SYSIBM.SYSSEQUENCESDEP WHERE DCREATOR = ‘USER1′ AND DNAME = ‘EMP_TABLE’ AND DCOLNAME = ‘EMP_ID’);
November 3, 2009 – 4:18 pm
Declaring (Creating) DECLARE GLOBAL TEMPORARY TABLE SESSION.EMP_TABLE (EMPID INTEGER NOT NULL, EMPNAME CHAR(20)) [ON COMMIT DELETE ROWS | ON COMMIT PRESERVE ROWS] Even if you do not give the qualifier SESSION, the table will be created as SESSION.EMP_TABLE. Temporary tables cannot be created with our own qualifier. Inserting INSERT INTO SESSION.EMP_TABLE VALUES(1,’KARTHIK’) Fetching SELECT * [...]
November 3, 2009 – 4:15 pm
Avoid duplicates in a particular field (say first 8 characters) SORT FIELDS=(1,8,CH,A) SUM FIELDS=NONE Sort first 8 characters, and omit few values SORT FIELDS=(1,8,CH,A) OMIT COND=(1,8,CH,EQ,C’AAAAAAAA’) Sort first 8 characters, and include only few values SORT FIELDS=(1,8,CH,A) INCLUDE COND=(1,8,CH,EQ,C’AAAAAAAA’,OR, 1,8,CH,EQ,C’BBBBBBBB’) Sort card to select only 15 characters from 36th position of my input file. //SORTSTEP [...]
November 3, 2009 – 4:12 pm
//BINDSTEP EXEC PGM=IKJEFT01 //DBRMLIB DD DSN=my.dbrm.library,DISP=SHR //STEPLIB DD DISP=SHR, // DSN=’SSID.SDSNLOAD’ //SYSTERM DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSTSPRT DD SYSOUT=* //SYSTSIN DD * DSN SYSTEM(SSID) RETRY(2) TEST(0) BIND PACKAGE (PKGNAME) – MEMBER (PGMNAME) – OWNER (USER1) – QUALIFIER (USER1) – ACTION (REPLACE) – VALIDATE (BIND) – ISOLATION (CS) – EXPLAIN (YES) – RELEASE (COMMIT) END [...]
November 3, 2009 – 4:11 pm
//STEP001 EXEC PGM=IKJEFT01 //* //STEPLIB DD DISP=SHR,DSN=SSID.SDSNLOAD //* //DISPLAY DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSTSPRT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //SYSABOUT DD SYSOUT=* //SYSDBOUT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSTSIN DD * DSN SYSTEM(SSID) RUN PROGRAM(PGMNAME) PLAN(PLANNAME) PARM(‘ANY PARM TO THE PGM’) – LIB(‘MYPGM.LOADLIB’) END /*
November 3, 2009 – 4:08 pm
DSNTIAUL (an assembler program used to process select statements dynamically) is used to unload the tables, or to get the results of an SQL select in the unload format. No details about the query will be displayed, just the resultset will be in the SYSPRINT. Unloading the whole table. //STEP0001 EXEC PGM=IKJEFT01 //STEPLIB DD DISP=SHR, [...]
November 3, 2009 – 4:04 pm
The output of these utilities will be exactly like executing a Spufi. It will have the complete details of the query and formatted columns. If you just want the resultset (in the unload format) Please read about the DSNTIAUL utility. DSNTEP2 / DSNTEP4: These programs are used to execute the SQL queries in batch. The [...]