Copyright 2007, Information Builders. Slide 1
Walter Brengel
Information Builders
FUN 2008
Unintended Consequences or….Why Did FOCUS Do THAT!
Copyright 2007, Information Builders. Slide 2
Agenda
-SET &ECHO=ALL; Dialogue Manager Vs Non Dialogue Manager CHECK FILE HOLD -READ -TYPE FILEDEF -GOTO Processing &ECHO On Steroids STYLING SQL TRACES
Copyright 2007, Information Builders. Slide 3
Execution ControlThe Report:
Salaries greater than 54100.00 DEPT LASTNAME FIRSTNAME SALARY ---- -------- --------- ------ ACCOUNTING SANCHEZ EVELYN $83,000.00 SOPENA BEN $79,000.00 WANG JOHN $62,500.00 CUSTOMER SUPPORT WHITE VERONICA $62,500.00 HIRSCHMAN ROSE $62,500.00 FERNSTEIN ERWIN $54,100.00 MARKETING VALINO DANIEL $55,500.00 BELLA MICHAEL $62,500.00 ADAMS RUTH $62,500.00 PATEL DORINA $55,500.00 CVEK MARCUS $62,500.00 GOTLIEB CHRIS $58,800.00 PERSONNEL NOZAWA JIM $80,500.00 SALES CASSANOVA LOIS $70,000.00 ADDAMS PETER $54,100.00 LASTRA KAREN $115,000.00
This Is The Report We Would Like.
Copyright 2007, Information Builders. Slide 4
Execution ControlThe Report:
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END
-READ MYSAVE &SKIP.A16. &SALARY.D9.
TABLE FILE EMPDATA"Salaries greater than &SALARY </1"PRINT LN FN SALARYBY DEPTWHERE SALARY GE &SALARYEND
Our Code:
Copyright 2007, Information Builders. Slide 5
Execution ControlThe Report:
MYSAVE &SKIP.A16. &SALARY.D9. ERROR AT OR NEAR LINE 14 IN PROCEDURE setupforsummit (FOC339) DIALOGUE MANAGER -READ FAILED: CHECK FILEDEF OR ALLOCATION FOR: -READ MYSAVE &SKIP.A16. &SALARY.D9.
Why Do We Get An Error ?
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END-READ MYSAVE &SKIP.A16. &SALARY.D9.
How Do We Fix It ? Add A –RUN Before The –READ
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END-RUN-READ MYSAVE &SKIP.A16. &SALARY.D9.
Copyright 2007, Information Builders. Slide 6
Execution ControlThe Report:
-READ MYSAVE &SKIP.A16. &SALARY.D9. ERROR AT OR NEAR LINE 33 IN PROCEDURE setupforsummit (FOC299) UNRECOGNIZED FORMAT OF AMPER VARIABLE IN -READ: -READ MYSAVE &SKIP.A16. &SALARY.D9.
Why Do We Get This Error ?
How Do We Debug It ?
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END-RUN-READ MYSAVE &SKIP.A16. &SALARY.D9.
First Let’s See What We Are Getting-SET &ECHO=ALL:
TABLE FILE EMPDATA PRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS' ON TABLE HOLD AS MYSAVE END -RUN 0 NUMBER OF RECORDS IN TABLE= 1 LINES= 1 -READ MYSAVE &SKIP.A16. &SALARY.D9.
0 ERROR AT OR NEAR LINE 33 IN PROCEDURE Setupforsummit (FOC299) UNRECOGNIZED FORMAT OF AMPER VARIABLE IN -READ:-READ MYSAVE &SKIP.A16. &SALARY.D9.
Copyright 2007, Information Builders. Slide 7
Execution ControlThe Report:
-READ MYSAVE &SKIP.A16. &SALARY.D9. ERROR AT OR NEAR LINE 33 IN PROCEDURE setupforsummit (FOC299) UNRECOGNIZED FORMAT OF AMPER VARIABLE IN -READ: -READ MYSAVE &SKIP.A16. &SALARY.D9.
How Do We Find It ?
Do We Get The Error?
No – Not That Format
Yes – It Is That Format
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END-RUN-READ MYSAVE &SKIP.A16. &SALARY.D9.
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END-RUN-READ MYSAVE &SKIP.A16.-EXIT-* &|SALARY.A9.
0 NUMBER OF RECORDS IN TABLE= 1 LINES= 1 -READ MYSAVE &SKIP.A16. -*&|SALARY.D9.
Extra Credit!! Why &|SALARY???
Copyright 2007, Information Builders. Slide 8
Execution ControlThe Report:
TABLE FILE EMPDATAPRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE END-RUN-READ MYSAVE &SKIP.A16. &SALARY.D9.
Looks Like The Problem Is With The SALARY!
&SALARY.D9 ????? D9??
Only Allowed Formats Are: A & I
And I Is Read As A
Lets Change It To A9
-* ECHO OUTPUTTABLE FILE EMPDATA PRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS' ON TABLE HOLD AS MYSAVE END -RUN 0 NUMBER OF RECORDS IN TABLE= 1 LINES= 1 -READ MYSAVE &SKIP.A16. &SALARY.A9. TABLE FILE EMPDATA "Salaries greater than PETER </1" PRINT LN FN SALARY BY DEPT WHERE SALARY GE PETER END -EXIT
0 ERROR AT OR NEAR LINE 23 IN PROCEDURE setupforsummit (FOC258) FIELDNAME OR COMPUTATIONAL ELEMENT NOT RECOGNIZED: PETER BYPASSING TO END OF COMMAND (FOC009) INCOMPLETE REQUEST STATEMENT
Copyright 2007, Information Builders. Slide 9
Execution ControlThe Report:
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVEEND-RUN-READ MYSAVE &SKIP.A16. &SALARY.A9.
TABLE FILE EMPDATA"Salaries greater than &SALARY </1"PRINT LN FN SALARYBY DEPTWHERE SALARY GE &SALARYEND
Where Is SALARY Coming From?
First TABLE Output – MYSAVE
MYSAVE Is The Result Of HOLD
Let’s Check the HOLD Master
Copy And –INCLUDE CHKMAST (Shown above)
-* FILE NAME CHKMAST
-* Make sure you use your hold file
-* name or use an &VARIABLE
CHECK FILE MYSAVE HOLD AS MYCHK
TABLE FILE MYCHKPRINT FIELDNAME ALIAS FORMAT ACTUAL
END
PAGE 1 FIELDNAME ALIAS FORMAT ACTUAL LASTNAME E01 A15 A016 FIRSTNAME E02 A10 A012 FIRSTNAME E03 A1 A004 SALARY E04 D12.2M D008 SALARY E05 D9 D008
-INCLUDE CHKMAST
Copyright 2007, Information Builders. Slide 10
Execution ControlThe Report:
What’s Wrong With This Picture?
Why Two Firstnames & Two Salaries
How Do We Correct This?
Correct &Skip
What Is The Length Of &Skip
HOLDLIST=PRINTONLY
SET HOLDLIST=PRINTONLYThe Output:PAGE 1 FIELDNAME ALIAS FORMAT ACTUAL LASTNAME E01 A15 A016 FIRSTNAME E02 A1 A004 SALARY E03 D9 D008
SET HOLDLIST=ALL (Default)The Output:PAGE 1 FIELDNAME ALIAS FORMAT ACTUAL LASTNAME E01 A15 A016 FIRSTNAME E02 A10 A012 FIRSTNAME E03 A1 A004 SALARY E04 D12.2M D008 SALARY E05 D9 D008
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVEEND-RUN-READ MYSAVE &SKIP.A40. &SALARY.A8.
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVEON TABLE SET HOLDLIST PRINTONLYEND-RUN-READ MYSAVE &SKIP.A20. &SALARY.A8.
Copyright 2007, Information Builders. Slide 11
Execution ControlThe Report:TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVEON TABLE SET HOLDLIST PRINTONLYEND-RUN-READ MYSAVE &SKIP.A20. &SALARY.A8.TABLE FILE EMPDATA"Salaries greater than &SALARY </1"PRINT LN FN SALARYBY DEPTWHERE SALARY GE &SALARYENDERROR AT OR NEAR LINE 20 IN PROCEDURE runcode FOCEXEC * (FOC258) FIELDNAME OR COMPUTATIONAL ELEMENT NOT RECOGNIZED: Çj?@ BYPASSING TO END OF COMMAND (FOC009) INCOMPLETE REQUEST STATEMENT
What’s Happening Now?
How Can We Find Out?
-TYPE
Lets Look At The &ECHO Output TABLE FILE EMPDATA PRINT FIRSTNAME/A1 SALARY/D9 BY LASTNAME IF LN EQ 'ADDAMS' ON TABLE HOLD AS MYSAVE ON TABLE SET HOLDLIST PRINTONLY END -RUN NUMBER OF RECORDS IN TABLE= 1 LINES= 1 -READ MYSAVE &SKIP.A20. &SALARY.A8. TABLE FILE EMPDATA "Salaries greater than Çj?@ </1" PRINT LN FN SALARY BY DEPT WHERE SALARY GE Çj?@ END ERROR AT OR NEAR LINE 20 IN PROCEDURE runcode FOCEXEC * (FOC258) FIELDNAME OR COMPUTATIONAL ELEMENT NOT RECOGNIZED: Çj?@ BYPASSING TO END OF COMMAND (FOC009) INCOMPLETE REQUEST STATEMENT
Copyright 2007, Information Builders. Slide 12
Execution ControlThe Report:
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVEON TABLE SET HOLDLIST PRINTONLYEND-RUN-READ MYSAVE &SKIP.A20. &SALARY.A8.-TYPE THE VALUE FOR SKIP IS:&SKIP-TYPE THE VALUE FOR SALARY IS: &SALARY-EXITTABLE FILE EMPDATA"Salaries greater than &SALARY </1"PRINT LN FN SALARYBY DEPTWHERE SALARY GE &SALARYEND
THE VALUE FOR SKIP IS:ADDAMS PTHE VALUE FOR SALARY IS: Çj?@
What Is Going On?
What Format Is The HOLD File Saved In?
How Can The HOLD Data Be Saved So That The Numeric Values Are Readable?
Copyright 2007, Information Builders. Slide 13
Execution ControlThe Report:
ON TABLE SAVEON TABLE HOLD FORMAT ALPHA
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE HOLD AS MYSAVE FORMAT ALPHAON TABLE SET HOLDLIST PRINTONLYEND-INCLUDE CHKMAST-EXIT
PAGE 1 FIELDNAME ALIAS FORMAT ACTUAL LASTNAME E01 A15 A015 FIRSTNAME E02 A1 A001 SALARY E03 D9 A009
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE SAVE AS MYSAVEON TABLE SET HOLDLIST PRINTONLYEND-EXIT
ALPHANUMERIC RECORD NAMED MYSAVE FIELDNAME ALIAS FORMAT LENGTH LASTNAME LN A15 15 FIRSTNAME A1 1 SALARY D9 9 TOTAL 25
Copyright 2007, Information Builders. Slide 14
Execution ControlThe Report:
TABLE FILE EMPDATAPRINTFIRSTNAME/A1SALARY/D9BY LASTNAMEIF LN EQ 'ADDAMS'ON TABLE SAVE AS MYSAVE ON TABLE SET HOLDLIST PRINTONLYEND
Salaries greater than 54100.00 DEPT LASTNAME FIRSTNAME SALARY ---- -------- --------- ------ ACCOUNTING SANCHEZ EVELYN $83,000.00 SOPENA BEN $79,000.00 WANG JOHN $62,500.00 CUSTOMER SUPPORT WHITE VERONICA $62,500.00 HIRSCHMAN ROSE $62,500.00 FERNSTEIN ERWIN $54,100.00 MARKETING VALINO DANIEL $55,500.00 BELLA MICHAEL $62,500.00 ADAMS RUTH $62,500.00 PATEL DORINA $55,500.00 CVEK MARCUS $62,500.00 GOTLIEB CHRIS $58,800.00 PERSONNEL NOZAWA JIM $80,500.00 SALES CASSANOVA LOIS $70,000.00 ADDAMS PETER $54,100.00 LASTRA KAREN $115,000.00
-RUN-READ MYSAVE &SKIP.A16. &SALARY.A9.TABLE FILE EMPDATA"Salaries greater than &SALARY </1"PRINT LN FN SALARYBY DEPTWHERE SALARY GE &SALARYEND
Copyright 2007, Information Builders. Slide 15
Execution ControlFILEDEF Verification
&ECHO Output:
FILEDEF ALLCRS DISK C:\IBI\APPS\DEBUGGGING\ALLCRS.FTM TABLE FILE ALLCRS PRINT * END -RUN NUMBER OF RECORDS IN TABLE= 0 LINES= 0
-SET &ECHO=ALL;FILEDEF ALLCRS DISK C:\IBI\APPS\DEBUGGGING\ALLCRS.FTMTABLE FILE ALLCRSPRINT *END
Somethings wrong!Let’s see if we can –READ the file
Copyright 2007, Information Builders. Slide 16
Execution ControlFILEDEF Verification
-SET &ECHO=ALL;FILEDEF ALLCRS DISK C:\IBI\APPS\DEBUGGGING\ALLCRS.FTM-RUN-READ ALLCRS &LINE.A1.-TYPE &LINE-EXIT
TABLE FILE ALLCRSPRINT *END-RUNTABLE FILE ALLCRSPRINT *END
-READ ALLCRS &LINE.A10. 0 ERROR AT OR NEAR LINE 5 IN PROCEDURE FILEDEF FOCEXEC * 0 ERROR AT OR NEAR LINE 8 IN PROCEDURE FILEDEF FOCEXEC * (FOC295) A VALUE IS MISSING FOR: &LINE .
Let’s Look At The FILEDEF
Oops!! Somebody Can’t Type!C:\IBI\APPS\DEBUGGGING\ALLCRS.FTM
Copyright 2007, Information Builders. Slide 17
Execution Control FILEDEF Verification
-SET &ECHO=ALL;FILEDEF ALLCRS DISK C:\IBI\APPS\DEBUGGING\ALLCRS.FTM-RUN-READ ALLCRS &LINE.A10.-TYPE &LINE-EXIT
FILEDEF ALLCRS DISK C:\IBI\APPS\DEBUGGING\ALLCRS.FTM-RUN-READ ALLCRS &LINE.A10. -TYPE 0000004109 0000004109 -EXIT
Well Did It Work??
-SET &ECHO=ALL;FILEDEF ALLCRS DISK C:\IBI\APPS\DEBUGGING\ALLCRS.FTM-RUNTABLE FILE ALLCRSPRINT *END
PAGE 1 IPIN COURSESTART COURSECODE EXPENSES ---- ----------- ---------- -------- 000000410 91/02/11 EDP690 3,100.00 000000380 91/06/05 UNI780 3,350.00 000000370 91/06/01 UMI710 2,050.00 000000360 90/11/05 EDP690 3,000.00 000000350 90/09/28 SSI220 1,850.00 000000350 89/07/10 MC90 1,730.00
Ah! Success…..
Copyright 2007, Information Builders. Slide 18
Execution ControlUsing -GOTO
Use –GOTO For: Transfer Of Control To A Specified Label.
If Dialogue Manager Finds The Label,processing Continues With The Line Following It.
If Dialogue Manager Does Not Find The Label, Processing Ends And An Error Message Is Displayed.
‑Goto Label
‑Label Label - Is A User‑defined Name Of Up To 12 Characters That
Specifies The Target Of The ‑GOTO Action.
Do Not Use Embedded Blanks The Name Of Any Other Dialogue Manager Command Except
‑Quit Or ‑Exit. Words That Can Be Confused With Functions, Arithmetic And
Logical Operations,
Copyright 2007, Information Builders. Slide 19
Execution ControlThe Report:
-*GOTO RPT2 TABLE FILE CAR "THIS IS RPT1" PRINT CAR END-*EXIT-RPT2 TABLE FILE EMPDATA "THIS IS RPT2" PRINT LN END-*EXIT-RPT3 TABLE FILE CAR "THIS IS RPT3" PRINT COUNTRY END-*EXIT-RPT4 TABLE FILE EMPDATA "THIS IS RP41" PRINT FN END
-GOTO RPT2 TABLE FILE CAR "THIS IS RPT1" PRINT CAR END-*EXIT-RPT2 TABLE FILE EMPDATA "THIS IS RPT2" PRINT LN END-EXIT-RPT3 TABLE FILE CAR "THIS IS RPT3" PRINT COUNTRY END-*EXIT-RPT4 TABLE FILE EMPDATA "THIS IS RP41" PRINT FN END
PAGE 1 THIS IS RPT2 LASTNAME---------------VALINO BELLA CASSANOVA ADAMS
Copyright 2007, Information Builders. Slide 20
Execution Control&ECHO On Steroids
-SET DEFECHO=ON;
SET DEFECHO = {OFF|ON|ALL}
where: OFF - Establishes OFF as the default value for &ECHO. OFF is the default value.ON - Establishes ON as the default value for &ECHO. ALL - Establishes ALL as the default value for &ECHO.
SET DEFECHO Command Enables You To Specify A Default Value For &ECHO That Spans All Procedures Executed In An Application.
Any FOCEXEC Executed That Does Not Explicitly Establish A Value For &ECHO Uses The Default Value Established By The SET DEFECHO Command.
You Can Explicitly Control The Value Of &ECHO For An Individual Procedure By Either: Passing A Value On The EX Command Issuing A -SET Command For &ECHO Issuing A -DEFAULT Command For &ECHO.
Copyright 2007, Information Builders. Slide 21
Execution ControlREADLIMIT and RECORDLIMIT
READLIMIT Is Synonymous With RECORDLIMIT Except As Follows: Oracle Data Adapter Passes Readlimit To The Oracle As;
SQL WHERE ROWNUM <=N Clauses. Rownum Is A Pseudo Column Allowing Oracle To Limit The Number Of
Rows Retrieved And Returned.
DB2, Readlimit Appends A “Fetch First N Rows Only” To The Generated SQL. See Ibm DB2 SQL Reference Manual.
Readlimit And Recordlimit Reduce Communication Traffic, Terminal And Disk I/Os.
Search Limit Tests Are Helpful When:
Testing A New Master File.
Copyright 2007, Information Builders. Slide 22
Execution ControlStyling
DEFINE FILE CARBLANK/A1=' ';ENDTABLE FILE CARSUM COMPUTE PROFIT/D6=RETAIL_COST - DEALER_COST; BLANK AS '' RETAIL_COST DEALER_COSTBY COUNTRYON TABLE PCHOLD FORMAT PDFON TABLE SET STYLE *TYPE=REPORT,COLUMN=RETAIL_COST,COLOR=BLUE,$ENDSTYLEEND
PAGE 1 COUNTRY PROFIT RETAIL_COST DEALER_COST ------- ------ ----------- ----------- ENGLAND 7,466 45,319 37,853 FRANCE 979 5,610 4,631 ITALY 9,830 51,065 41,235 JAPAN 966 6,478 5,512 W GERMANY 10,169 64,732 54,563
Copyright 2007, Information Builders. Slide 23
Execution Control Styling
DEFINE FILE CARBLANK/A1=' ';ENDTABLE FILE CARSUM COMPUTE PROFIT/D6=RETAIL_COST - DEALER_COST; BLANK AS '' RETAIL_COST DEALER_COSTBY COUNTRYON TABLE PCHOLD FORMAT PDFON TABLE SET STYLE *TYPE=REPORT,COLUMN=N3,COLOR=BLUE,$ENDSTYLEEND
PAGE 1 COUNTRY PROFIT RETAIL_COST DEALER_COST ------- ------ ----------- ----------- ENGLAND 7,466 45,319 37,853 FRANCE 979 5,610 4,631 ITALY 9,830 51,065 41,235 JAPAN 966 6,478 5,512 W GERMANY 10,169 64,732 54,563
BACKCOLOR=RED
Copyright 2007, Information Builders. Slide 24
Execution Control Styling
DEFINE FILE CARBLANK/A1=' ';ENDTABLE FILE CARSUM COMPUTE PROFIT/D6=RETAIL_COST - DEALER_COST; BLANK AS '' RETAIL_COST DEALER_COSTBY COUNTRYON TABLE PCHOLD FORMAT PDFON TABLE SET STYLE *TYPE=REPORT,COLUMN=N3,COLOR=BLUE,BACKCOLOR=RED,$ENDSTYLEEND
PAGE 1 COUNTRY PROFIT RETAIL_COST DEALER_COST ------- ------ ----------- ----------- ENGLAND 7,466 45,319 37,853 FRANCE 979 5,610 4,631 ITALY 9,830 51,065 41,235 JAPAN 966 6,478 5,512 W GERMANY 10,169 64,732 54,563
Copyright 2007, Information Builders. Slide 25
Execution Control Styling
DEFINE FILE CARBLANK/A1=' ';ENDTABLE FILE CARSUM COMPUTE PROFIT/D6=RETAIL_COST - DEALER_COST; BLANK AS '' RETAIL_COST DEALER_COSTBY COUNTRYON TABLE PCHOLD FORMAT PDFON TABLE SET STYLE *TYPE=REPORT,COLUMN=N4, COLOR=BLUE,$ENDSTYLEEND
PAGE 1 COUNTRY PROFIT RETAIL_COST DEALER_COST ------- ------ ----------- ----------- ENGLAND 7,466 45,319 37,853 FRANCE 979 5,610 4,631 ITALY 9,830 51,065 41,235 JAPAN 966 6,478 5,512 W GERMANY 10,169 64,732 54,563
Copyright 2007, Information Builders. Slide 26
Execution ControlSQL Traces
SQLDI - Records SQL statements. RDBMS return codes. COMMIT and ROLLBACK commands. SQL cursor operations such as PREPARE, OPEN, FETCH, and CLOSE. Used with all FOCUS report requests, and native SQL commands. Formerly FSTRACE.
SQLAGGR
Displays data adapter‑to‑RDBMS aggregation and join analysis. Used only for FOCUS reporting operations such as TABLE, GRAPH, and MATCH FILE. If the data adapter is able to pass all join, sort, and aggregation operations, the
SQLAGGR trace is not populated. The message "AGGREGATION DONE..." appears. Formerly FSTRACE3.
Copyright 2007, Information Builders. Slide 27
Execution Control SQL Traces
STMTRACE Records SQL SELECT statements generated by the data adapter for FOCUS report requests. MODIFY procedures, or Direct SQL Passthru SELECT requests. It also records the SQL Data. Definition Language (DDL) statements generated by the CREATE FILE command.
Display the trace information online. Store it in a file or sequential data set.
The data adapter terminates its generated SQL SELECT statements with a semicolon. You can submit them to the RDBMS for processing, interactively or in batch. Use STMTRACE for:
Debugging. Performance tuning. Capturing SQL Data Definition and Data Manipulation statements to reuse.
Formerly FSTRACE4. SQLCALL
Traces commands and data exchange between the physical and the logical layers of the data adapter.
You can activate all or any combination of these traces during your FOCUS session or in batch.
You can display the results online or store them in a file or sequential data set.
Copyright 2007, Information Builders. Slide 28
Execution Control SQL Traces
SET TRACEOFF = ALL SET TRACEON =SQLAGGR//CLIENT SET TRACEON =STMTRACE//CLIENT SET TRACEUSER = ON
AGGREGATION DONE ... 07.27.38 AE SELECT T1."OrderID", SUM(T1."Freight"), SUM(T1."Freight") FROM 07.27.38 AE Northwind.dbo.Orders T1 GROUP BY T1."OrderID" ORDER BY 07.27.38 AE T1."OrderID";
AGGREGATION DONE ... SELECT T1."OrderID", SUM(T1."Freight"), SUM(T1."Freight") FROM Northwind.dbo.Orders T1 GROUP BY T1."OrderID" ORDER BY T1."OrderID";
SET TRACEOFF = ALL SET TRACEON = SQLAGGR//CLIENT SET TRACEON = STMTRACE//CLIENT SET TRACESTAMP = OFF SET TRACEUSER = ON
Copyright 2007, Information Builders. Slide 29
Execution ControlReview
-SET &ECHO=ALL; Dialogue Manager Vs Non Dialogue Manager CHECK FILE HOLD -READ -TYPE FILEDEF -GOTO Processing &ECHO On Steroids STYLING SQL TRACES
Copyright 2007, Information Builders. Slide 30
Questions
Thanks for Coming