Focal Point
[SOLVED] Amper variables to file

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/7971057331/m/6657096916

May 02, 2012, 04:30 AM
ruhan
[SOLVED] Amper variables to file
All

I want to trap all & variables with their values to a file. The following was posted on 6 December 2007. I am trying it out on our Windows WF7703M environment and can't get the trace file to create. Does anyone have any suggestions?

Thanks
Ruhan

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Mark,

I've been trying something on my environment (which is NOT as400, but windows).
I think however that is should be possible to modify the code so that it also runs on as400.
My code is as follows:

SET TRACEOFF = ALL
SET TRACEON = ALL
SET TRACESTAMP=OFF
SET TRACEUSER=C:\TEMP\MARK.TRC
-RUN
-? &
SET TRACEOFF = ALL
-RUN
FILEDEF MASTER DISK TRACE.MAS
FILEDEF TRACE DISK C:\TEMP\MARK.TRC
-RUN
-WRITE MASTER FILENAME=TRACE, SUFFIX=FIX
-WRITE MASTER SEGNAME=TRACE
-WRITE MASTER FIELDNAME=LINE, FORMAT=A200, ACTUAL=A200, $
-RUN
DEFINE FILE TRACE
RESULT/A155 = SUBSTR(200,LINE,45,200,155,RESULT);
AMPER/A1 = EDIT(RESULT,'9');
END
TABLE FILE TRACE
PRINT RESULT
IF LINE CONTAINS 'ngput'
IF AMPER EQ '&'
END


On Windows this gives me a report with just the amper variables currently active.
Hope this helps..... and that you can convert it to and use it on the as400.


GamP

This message has been edited. Last edited by: Kerry,
May 02, 2012, 01:06 PM
Danny-SRL
Ruhan,
Try the following:
  
-* File amper1.fex
SET TRACEOFF = ALL
-*** Make trace file smaller
SET TRACEON = NWH/1
SET TRACESTAMP=OFF
SET TRACEUSER=AMPERS.TRC
-RUN
-? &
SET TRACEOFF = ALL
-RUN
FILEDEF TRACE DISK AMPERS.TRC
-RUN
-* Use following instead of writing the MASTER to disk
EX -LINES 4 EDAPUT MASTER, TRACE, C, MEM
FILENAME=TRACE, SUFFIX=FIX
 SEGNAME=TRACE
  FIELDNAME=LINE, ALIAS=LN, FORMAT=A200, ACTUAL=A200, $
-RUN
DEFINE FILE TRACE
-*** Release independence: trace layout has changed in 7.7.04!
MSTOK1/A200=GETTOK(LINE, 200, 2, '&|A', 200, 'A200'); 
MSTOK2/A200=GETTOK(LINE, 200, 3, '&|A', 200, 'A200'); 
RESULT/A202=IF MSTOK1 NE ' ' THEN '&|' | MSTOK1
           ELSE '&|&|' | MSTOK2;
END
TABLE FILE TRACE
PRINT 
     RESULT
WHERE LINE CONTAINS 'ngput';
WHERE EDIT(RESULT, '$9') NE ' ';
END



Daniel
In Focus since 1982
wf 8.202M/Win10/IIS/SSA - WrapApp Front End for WF

May 02, 2012, 05:37 PM
Waz
FYI

This method will retrieve all &variables, but will truncate the names of any that are more than 12 characters.


Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

May 04, 2012, 02:59 AM
ruhan
Thanks! The limit of 12 character & names is manageable

Ruhan