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.
In 7.7.03 I built a process to translate text between languages. I stored this on the Data Server because we have a tenant environment and needed it available across multiple domains. In one of my dashboards, I use this procedure to provide translations for values in a drop down. I'm currently working through the WF8 migration process to understand what will break when I do my upgrade. I found that when the drop down including the procedure from the data server runs, it doesn't populate any data, but if I move that file to the domain and include it from there, I have no issues. Has anyone experienced this, or knows why I can't reference a file from the Data Server in a drop down? I do not run into the same issue when just running the procedure outside of the drop down.
My code is as follows
-* Multi-Language Conversion Include File.
-SET &ALT_PRGM_NM = 'apgkpi1006_marketing_rptperiod';
INCLUDE IBFS:/EDA/EDASERVE/baseapp/glb9998f00.fex
DEFINE FILE DIM_TENANT
CNTR/I2 = CNTR + 1;
RPTRNG_OPTIONS/A30 = IF CNTR EQ 1 THEN '&_TEXT_1.EVAL' ELSE IF CNTR EQ 2 THEN '&_TEXT_2.EVAL' ELSE IF CNTR EQ 3 THEN '&_TEXT_3.EVAL' ELSE IF CNTR EQ 4 THEN '&_TEXT_4.EVAL' ELSE IF CNTR EQ 5 THEN '&_TEXT_5.EVAL' ELSE '';
-*RPTRNG_OPTIONS/A30 = IF CNTR EQ 1 THEN 'Same Month' ELSE IF CNTR EQ 2 THEN 'Prior Month' ELSE IF CNTR EQ 3 THEN 'Prior 3 Months' ELSE IF CNTR EQ 4 THEN 'Prior 6 Months' ELSE IF CNTR EQ 5 THEN 'Prior 13 Months' ELSE '';
END
TABLE FILE DIM_TENANT
PRINT RPTRNG_OPTIONS
BY CNTR
-*WHERE CNTR LE &OPTIONS;
-*WHERE RPTRNG_OPTIONS NE '';
ON TABLE PCHOLD FORMAT XML
END
And the included file is
-***********************************************************************
-* PROCEDURE: GLB9998F00.fex
-* PROCEDURE NAME - Translation Generator
-*
-* WRITTEN BY: Eric Woerle
-* DATE: 01/17/2013
-* PURPOSE: Creates Variables for text objects that appear on the reports
-*
-* CALLED BY: (any fex which needs multple language support)
-* CALLS: n/a
-*
-* DIRECTIONS: Place the following code after each HOLD FILE / Report
-* -MRNOEDIT -INCLUDE baseapp/glb9998f00.fex
-* By default the program will utilize the name of the executed report to search for translations.
-* If this needs to changed use the &ALT_PRGM_NM variable to do so.
-***********************************************************************
-IF &ALT_PRGM_NM.EXISTS GOTO :USE_ALT_PRGRM_NM;
-SET &PRGRM_NM = '&MR_ITEM_HANDLE.EVAL';
-GOTO :NO_PRGRM_NM;
-:USE_ALT_PRGRM_NM
-SET &PRGRM_NM = &ALT_PRGM_NM;
-:NO_PRGRM_NM
-*SET &PRGRM_NM = IF &ALT_PRGM_NM.EXISTS THEN '&ALT_PRGM_NM.EVAL' ELSE &FOCFOCEXEC ;
-*****************************************
-*Identify all of the field types stored for the program
-*and loop through them.
-*****************************************
TABLE FILE BI_TRANSLATE
SUM FST.FIELD_TYPE/A30
BY FIELD_TYPE/A30
WHERE ( PROGRAM_NAME IN ( '&PRGRM_NM' , 'global' ))
AND LANGUAGE EQ '&LANGUAGE'
AND ACTIVE_IND EQ 1
ON TABLE SAVE AS LOOP_FLDS
END
-RUN
-SET &CNT_RCRDS = &RECORDS ;
-TYPE &CNT_RCRDS ---> RECORDS
-REPEAT :LOOP_FIELDS &CNT_RCRDS TIMES
-READ LOOP_FLDS NOCLOSE &FLD_LBL.A30
-TYPE &FLD_LBL
-SET &FLD_LBL=TRUNCATE(&FLD_LBL);
-*****************************************
-*Create variables for the text fields and loop through
-*the selected Field Types
-*****************************************
SET HOLDLIST = PRINTONLY
TABLE FILE BI_TRANSLATE
PRINT TEXT/A255
BY FIELD_ORDER NOPRINT
WHERE ( PROGRAM_NAME IN ( '&PRGRM_NM' , 'global' ) )
AND LANGUAGE EQ '&LANGUAGE'
AND FIELD_TYPE EQ '&FLD_LBL'
AND ACTIVE_IND EQ 1
ON TABLE SAVE AS FLD_TXT
END
-RUN
-SET &CNT_TEXT = &RECORDS;
-SET &CNTR = 1;
-REPEAT :LOOP_TEXT &CNT_TEXT TIMES
-READ FLD_TXT NOCLOSE &_&FLD_LBL.EVAL_&CNTR.EVAL.A255
-SET &_&FLD_LBL.EVAL_&CNTR.EVAL = TRUNCATE(&_&FLD_LBL.EVAL_&CNTR.EVAL);
-TYPE &_&FLD_LBL.EVAL_&CNTR.EVAL
-SET &CNTR = &CNTR + 1 ;
-:LOOP_TEXT
-:LOOP_FIELDS
-? &
-:END_TRANSLATOR
This message has been edited. Last edited by: eric.woerle,
Eric Woerle 8.1.05M Gen 913- Reporting Server Unix 8.1.05 Client Unix Oracle 11.2.0.2
Posts: 750 | Location: Warrenville, IL | Registered: January 08, 2013
Well, it should be -INCLUDE IBFS:/EDA/EDASERVE/baseapp/glb9998f00.fex
In WF8, we created a ParameterFile folder and all focexec programs that populate the forms are stored there. Selecting Properties for the folder, we checked the box Do not show on User's List.
If you don't want to go down that road, add -MRNOEDT to the front of your -INCLUDE and see if that works... -MRNOEDIT -INCLUDE IBFS:/EDA/EDASERVE/baseapp/glb9998f00.fex
I was thinking about going the "ParameterFile" route, now that I can have a shared enterprise Domain....
The MRNOEDIT doesn't work like it used to now. When I use it, the trace says it can't find the Fex, but has no problem with the -INCLUDE syntax (this is when I run the fex directly. Either way the dropdown still doesn't populate).
I thought maybe it was my syntax being an issue as well, except that I used the GUI to add the -INCLUDE to avoid that.
Maybe i'll just live with having to change the location along with the syntax as a part of my conversion proces... But I would prefer to be able to re-use as much as possible.
Eric Woerle 8.1.05M Gen 913- Reporting Server Unix 8.1.05 Client Unix Oracle 11.2.0.2
Posts: 750 | Location: Warrenville, IL | Registered: January 08, 2013
Hi Eric, Again, don't think you have your syntax correct. If the program is on the server, then, I would think it would be something like this: -MRNOEDIT -INCLUDE d:ibi/apps/baseapp/glb9998f00.fex
Adding the ParameterFiles folder in Content resolved all HTML parameter population, for us anyway...
Posts: 1972 | Location: Centennial, CO | Registered: January 31, 2006
Looks like I was heading down the wrong path entirely. I seem to be the casualty of Code Tightening. The variables that I was using in the drop down fex weren't defaulted. I added a DEFAULTH value for each one and that did the trick.
Thanks!
Eric Woerle 8.1.05M Gen 913- Reporting Server Unix 8.1.05 Client Unix Oracle 11.2.0.2
Posts: 750 | Location: Warrenville, IL | Registered: January 08, 2013