130 likes | 304 Views
RTF Tips and Tricks. Trns•port Users Group Presentation October 15, 2004. Why We’re Here. C/S Release 5 added a lot to RTF RTF was added to SiteManager fairly recently Many people haven’t worked with it, or aren’t aware of all its capabilities This is not an RTF class.
E N D
RTF Tips and Tricks Trns•port Users GroupPresentation October 15, 2004
Why We’re Here • C/S Release 5 added a lot to RTF • RTF was added to SiteManager fairly recently • Many people haven’t worked with it, or aren’t aware of all its capabilities • This is not an RTF class
Zen and the Art of RTF • Read the manual, significant updates in December 04 release • Study existing templates • Adapt, instead of re-invent, if possible • Develop reports incrementally • Logic before formatting • Outline • Work from the outside in • Develop as plain text report first
Save Someone’s Sanity(possibly even your own) • Develop with sharing in mind • e.g., multiple-project proposals/contracts • Comment, comment, comment • Then comment some more • RTFLOG.TXT is your friend • Indent code blocks • Comment ENDIFs, ENDREPEATs, etc.
Enhance Your Performance • SELECT * usually isn’t the best query • Do you really need all the columns? • Avoid WHERE_OR_AFTER • Retrieves ALL rows matching the condition • Keep database keys in mind • Keep unnecessary statements out of loops
Good Stuff™ • NUM_ROWS special variable • Gives the number of rows that the latest GET or REPEAT command found • FOUND special variable • Returns true if the latest GET or REPEAT command found a record that matches the condition in the command • “&!” can be used as a pointer of sorts (code_ex.) (output_ex.)
More Good Stuff • Exporting data using RTF • CSV, COLUMNAR built in • Can also export any text-based format, e.g., XML, HTML • Running external programs and DLL functions within an RTF template (code_ex.)(rawout_ex.)(finout_ex.)
Exporting Data • From CAS ArchiveContracts.rtf: %LET table_name = "CONTMOD" %REPEAT OVER CONTMOD WHERE CONTID IS SUBSET.CONTID %EXPORT CSV table_name, SUBSET.CONTID,, CONTMOD.CMODTYPE,, ...
Calling an External Program – Example 1 • From SiteManager SMVend2ebs.rtf: %load SystemCall ... %let OutputFile = t_cd_tbl_dtl.cd_desc ... %call plug in SystemCall( "if exist " || OutputFile || " del " || OutputFile ) ...
Calling an External Program – Example 2 • From CAS casecnt.rtf: %load SystemCall ... %call plug in SystemCall( "del " || CFBEXPTDIR || "\d" || subset.cnfacs || ".dat" ) ...
What on Earth is CFBEXPTDIR? • Environment variable • Defined in ITIDPSSV.CFG • Other job-specific variables are defined in the job parameter file • Other examples: OutFiles, SysFiles • For a list, look at a JOBPARM.TXT file • JOBEXEC.TXT also handy
RTF Tips and Tricks Mark Douglas mark.douglas@infotechfl.com