Focal Point Banner


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.


Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [CLOSED] UPPERCASE DEFINE

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[CLOSED] UPPERCASE DEFINE
 Login/Join
 
Member
posted
Hello! I would like to first say I am pretty new to FocalPoint and this is my first post Smiler. I am a pretty novice user of App Studio, as my organization converted to IBI last year. I am only starting to understand a little of the code.

I work at an financial institution and I am looking at transaction data. I have one report that takes several minutes when looking at 30 days of transaction. I believe the report is taking such a long time because I have a DEFINE converting TRANS_NARR_1 to uppercase. The report gives the end user the functionality to search for a merchant name which is located in TRANS_NARR_1.

I have to convert TRANS_NARR_1 to uppercase because there are some instance where the data comes in as both lower, upper, or mixed case (Amazon, amazon, AMAZON). Without the DEFINE it will only return the results depended on how the end user enters the name into the prompt.

I tried using the SET command to format TRANS_NARR_1 with no luck. I am not sure if this was user error or if SET was the wrong direction. I would be grateful for any suggestions or help in how I can faster response times.

Here is the code:

DEFINE FILE A_TRANS_DLY
UPPER_TRANS_NARR_1/A256=UPCASE(256, A_TRANS_DLY.TRANSACTION_DAILY.TRANS_NARR_1, 'A256');
END

TABLE FILE A_TRANS_DLY
BY LOWEST A_TRANS_DLY.TRANSACTION_DAILY.TRANS_NARR_1 NOPRINT
BY A_TRANS_DLY.TRANSACTION_DAILY.UPPER_TRANS_NARR_1
BY A_TRANS_DLY.TRANSACTION_DAILY.TRANS_AMT
BY A_TRANS_DLY.DATE_POSTED.DTE
BY A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ST
BY A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ZIP_CD
BY A_TRANS_DLY.THIRD_PARTY.MC_CD
BY A_TRANS_DLY.TRANSACTION_DAILY.RE_NUM
BY A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ID
BY A_TRANS_DLY.ACCOUNT.ACCT_NUM
BY A_TRANS_DLY.PASSPORT_THIRD.PASSPORT_PROG_START_DTE
BY A_TRANS_DLY.PASSPORT_THIRD.PASSPORT_PROG_END_DTE
WHERE ( A_TRANS_DLY.DATE_POSTED.DTE GE '&Start_Date_MMDDYYYY' ) AND ( A_TRANS_DLY.DATE_POSTED.DTE LE '&End_Date_MMDDYYYY' ) AND ( A_TRANS_DLY.TRANSACTION_TYPE.TRANS_SRC EQ 'TMG' ) AND ( A_TRANS_DLY.TRANSACTION_DAILY.RE_NUM OMITS 'XFR' ) AND (( A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ID CONTAINS '&USER_TEXT.UPPER CASE Merchant Name or Merchant ID.' ) OR ( A_TRANS_DLY.TRANSACTION_DAILY.UPPER_TRANS_NARR_1 CONTAINS '&USER_TEXT.EVAL' ));
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE SET BYDISPLAY ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT XLSX
ON TABLE SET XLSXPAGESETS ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty,
$
ENDSTYLE
END



Thanks,
Jessica

•Product Release: 8.1
•Service Pack: 0.5
•Version: branch8105m
•Application Server: Run with Apache Tomcat/8.0.21

This message has been edited. Last edited by: FP Mod Chuck,
 
Posts: 4 | Registered: April 21, 2016Report This Post
Virtuoso
posted Hide Post
Hi Jessica and welcome,

quote:
A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ID CONTAINS '&USER_TEXT.UPPER CASE Merchant Name or Merchant ID.'


First, I don't know where the above is coming from since it's not a valid WF syntax.

Second, if possible and since your query do always include/exclude according to below filter, try to create an HOLD file (or another table that can be created once a day) where only records that meet below criteria will be included. That way you will then have less records to filter against the CONTAINS and DATE filter. In the same time, perform the DEFINE. So when performing the filter (CONTAINS) it will be done against the read data and not from a DEFINEd field.
-* To be performed once a day if possible
-* --------------------------------------
SET ASNAMES  = ON
SET HOLDLIST = PRINTONLY

DEFINE FILE A_TRANS_DLY
UPPER_TRANS_NARR_1/A256=UPCASE(256, A_TRANS_DLY.TRANSACTION_DAILY.TRANS_NARR_1, 'A256');
END

TABLE FILE A_TRANS_DLY
BY A_TRANS_DLY.TRANSACTION_DAILY.UPPER_TRANS_NARR_1
BY A_TRANS_DLY.TRANSACTION_DAILY.TRANS_AMT
BY A_TRANS_DLY.DATE_POSTED.DTE
BY A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ST
BY A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ZIP_CD
BY A_TRANS_DLY.THIRD_PARTY.MC_CD
BY A_TRANS_DLY.TRANSACTION_DAILY.RE_NUM
BY A_TRANS_DLY.CARD_ACCEPTOR.THIRD_PARTY_ID
BY A_TRANS_DLY.ACCOUNT.ACCT_NUM
BY A_TRANS_DLY.PASSPORT_THIRD.PASSPORT_PROG_START_DTE
BY A_TRANS_DLY.PASSPORT_THIRD.PASSPORT_PROG_END_DTE
WHERE A_TRANS_DLY.TRANSACTION_TYPE.TRANS_SRC EQ 'TMG';
WHERE A_TRANS_DLY.TRANSACTION_DAILY.RE_NUM OMITS 'XFR';
ON TABLE HOLD AS TEMPTBL
END
-RUN


Third, you will then be able to let the user perform against the HOLD file such as this:
-SET &USER_TEXT_UP = UPCASE (256, &USER_TEXT, 'A256');

TABLE FILE TEMPTBL
BY LOWEST UPPER_TRANS_NARR_1
BY TRANS_AMT
BY DTE
BY THIRD_PARTY_ST
BY THIRD_PARTY_ZIP_CD
BY THIRD_PARTY.MC_CD
BY TRANSACTION_DAILY.RE_NUM
BY THIRD_PARTY_ID
BY ACCT_NUM
BY PASSPORT_PROG_START_DTE
BY PASSPORT_PROG_END_DTE
WHERE DTE GE '&Start_Date_MMDDYYYY';
WHERE DTE LE '&End_Date_MMDDYYYY';
WHERE THIRD_PARTY_ID CONTAINS '&USER_TEXT_UP.EVAL' OR UPPER_TRANS_NARR_1 CONTAINS '&USER_TEXT_UP.EVAL';
ON TABLE SET PAGE-NUM NOLEAD
ON TABLE SET ASNAMES ON
ON TABLE SET BYDISPLAY ON
ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT XLSX
ON TABLE SET XLSXPAGESETS ON
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
 INCLUDE = IBFS:/EDA/EDASERVE/_EDAHOME/ETC/endeflt.sty,
$
ENDSTYLE
END


WF versions : Prod 8.2.04M gen 33, Dev 8.2.04M gen 33, OS : Windows, DB : MSSQL, Outputs : HTML, Excel, PDF
In Focus since 2007
 
Posts: 2409 | Location: Montreal Area, Qc, CA | Registered: September 25, 2013Report This Post
  Powered by Social Strata  

Read-Only Read-Only Topic

Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [CLOSED] UPPERCASE DEFINE

Copyright © 1996-2020 Information Builders