As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.
Join the TIBCO Community TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.
From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
Request access to the private WebFOCUS User Group (login required) to network with fellow members.
Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.
I know that ? PATH displays the list, but it displays in the NO HTML OUTPUT page.
I would like to display the application paths list in a nice way (formatting, font, color, etc). I have tried to put a wrapper around it by putting it on the header and display a record in a table, but it does not work.
If anyone has any suggestions, it'll be great. Thanks.
Best Regards,
Jimmy PangThis message has been edited. Last edited by: fatboyjim,
I had asked that question quite awhile back re having APP SHOWPATH be able to be stored in a file and was told that there were no plans to change it.
You could try pointing TERMINAL to a file.
If you just want the edasprof.prf path, I have code that parses the file and extracts the applications and writes them to a file. If you would be interested, I'd be happy to post. You could do the same with a user profile.
All of the APP PATH code is on a single line in the edasprof.prf file at our site. LINE200 is a generic master with one field in it with a length of A200. Make sure that there is only one space between the directory names.
This should get you started.
APP PREPENDPATH BIADMIN_CATALOG
FILEDEF LINE200 DISK /WebFOCUS/ibi/srv76/wfs/etc/edasprof.prf
? FILEDEF
TABLE FILE LINE200
PRINT *
IF LINE200 CONTAINS 'APP PATH'
ON TABLE HOLD
END
DEFINE FILE HOLD
APPPATH/A200=SUBSTR(200,LINE200,10,200,200,'A200');
END
TABLE FILE HOLD
PRINT APPPATH
ON TABLE SAVE
END
-RUN
-READ SAVE &APPPATH.A200.
-SET &ENDIT=POSIT(&APPPATH,200,' ',2,'I3');
-SET &I=1;
-SET &LOC=0;
-APPLOOP
-IF &LOC GE &ENDIT GOTO ENDAPPLOOP;
-SET &APPNAME.&I=GETTOK(&APPPATH,200,&I,' ',70,'A70');
-SET &ENDDIR=POSIT(&APPNAME.&I,200,' ',2,'I3');
-SET &LOC=&LOC + &ENDDIR;
-SET &I=&I+1;
-GOTO APPLOOP
-ENDAPPLOOP
-SET &LIM=&I-1;
CREATE FILE WFAPPPATH
MODIFY FILE WFAPPPATH
FIXFORM APPPATH/A70
DATA
-REPEAT ENDDATA FOR &I FROM 1 TO &LIM STEP 1
&APPNAME.&I
-ENDDATA
END
TABLE FILE WFAPPPATH
PRINT *
END
It gave me error as follows (FOC003) THE FIELDNAME IS NOT RECOGNIZED: LINE200 BYPASSING TO END OF COMMAND (FOC009) INCOMPLETE REQUEST STATEMENT
I was running this part of the code:
APP PREPENDPATH BIADMIN_CATALOG
FILEDEF LINE200 DISK /WebFOCUS/ibi/srv76/wfs/etc/edasprof.prf
? FILEDEF
TABLE FILE LINE200
PRINT *
IF LINE200 CONTAINS 'APP PATH'
ON TABLE HOLD
END
It uses trace to capture the output, then it can be used as a data source and report on it.
Hi Waz,
I tried the following sample and it works great! I have modified it as follows: Changed to ? Path to extract the app paths, remove leading and trailing spaces, and extract all the entries that starts with the drive (eg. C:\).
SET TRACEOFF = ALL
SET TRACEON = ALL
SET TRACESTAMP=OFF
SET TRACEUSER=&TRACEFILE
-RUN
-* get the app path
? PATH
SET TRACEOFF = ALL
-RUN
FILEDEF MASTER DISK trace.mas
FILEDEF TRACE DISK trace.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);
-*Trim leading and trailing spaces
TRIMRESULT/A155 = TRIM('B',RESULT,155,' ',1,TRIMRESULT);
AMPER/A1 = EDIT(TRIMRESULT,'9');
END
TABLE FILE TRACE
PRINT RESULT
-* My server drive is D:\
IF AMPER EQ 'D'
END
Thanks for your help. I will mark this one as solved.
Even though this is solved, the reason yours didn't work is because my master has the fieldname of LINE200 and you have LN. You would have had to change the code to use LN instead.
Also, application path directories and filedef options would have to be changed to match your environment, not mine.