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     [SOLVED] 'CONTAINS' doesn't work in WHERE clause in MAINTAIN ?

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[SOLVED] 'CONTAINS' doesn't work in WHERE clause in MAINTAIN ?
 Login/Join
 
Gold member
posted
I can't get CONTAINS to work in MAINTAIN for some reason, although I've used it in Dev Studio with no problem. There is no error message.

For example, the table has has many rows in the TABLE where PROJECT = "ABC" but it does not find any partial matches, only complete matches, which is weird.

Examples:

The following code will NOT find any records that contain "ABC" in the PROJECT field :
--------------------------------------------------------------------------------------
Case LoadTransactions
-* KeyField is hardcoded for simplicity :
COMPUTE KeyField = 'B';

    Reposition moneytrack.MONEYTRK.RECORDID ;
    Stack clear TransStack ;

    IF KeyField EQ ''
 	  THEN For all next moneytrack.MONEYTRK.RECORDID into TransStack 
 	  ELSE For all next moneytrack.MONEYTRK.RECORDID into TransStack
        	      Where (PROJECT CONTAINS KeyField) ;

EndCase

--------------------------------------------------------------------------------------------

Do I need to concatenate wildcards onto the search string ?

The following code WILL find ALL rows that have PROJECT = "ABC" :
-----------------------------------------------------------------
Case LoadTransactions

COMPUTE KeyField = 'ABC';

    Reposition moneytrack.MONEYTRK.RECORDID ;
    Stack clear TransStack ;

    IF KeyField EQ ''
 	  THEN For all next moneytrack.MONEYTRK.RECORDID into TransStack 
 	  ELSE For all next moneytrack.MONEYTRK.RECORDID into TransStack
        	      Where (PROJECT CONTAINS KeyField) ;

EndCase

------------------------------------------------------------

I've tried with and without [COMPUTE] and it does not affect the results.
I've even tried "IS" and "LIKE" but CONTAINS seems like the perfect way to accomplish this.

The string cases also match although I would like to make not case sensitive, but that's after I get this working.

Ultimately, I'd like KeyField to work from a textbox, but I ned to get this working first.

Any clues, ideas or insights ?

Thanks in advance for anything that can help !
Charlie

This message has been edited. Last edited by: Kerry,


WF 7.6.4 & 5.3
Charles Lee
 
Posts: 93 | Registered: June 17, 2008Report This Post
Virtuoso
posted Hide Post
Charles

Use a field declared as A0.

If KeyField is an A10 then the CONTAINS is looking for
'ABC       '
, whereas with A0 the field is trimmed to
'ABC'


DECLARE temp/a0 = KeyField
.
.
where (PROJECT contains temp);

As for case sensitivity, you may well have to do 2 retrievals as compound WHERE with OR clauses are not supported.


Alan.
WF 7.705/8.007
 
Posts: 1451 | Location: Portugal | Registered: February 07, 2007Report This Post
Gold member
posted Hide Post
I really appreciate elegant solutions, and I'll add you to my list.

Worked like a charm !

Thanks
Charlie


WF 7.6.4 & 5.3
Charles Lee
 
Posts: 93 | Registered: June 17, 2008Report This Post
Gold member
posted Hide Post
Thank you to whomever changed the title of my post to say that is has been "[SOLVED]"

I wanted to mark it myself, but could you please tell me how to do this ?

Here is the page I see whan I try to edit the post to change the heading / title :

http://www.yourbuyersinn.com/FocusForumostSOLVED.JPG

Thanks again to Alan B for the solution !

Charlie

This message has been edited. Last edited by: Charlz,


WF 7.6.4 & 5.3
Charles Lee
 
Posts: 93 | Registered: June 17, 2008Report 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     [SOLVED] 'CONTAINS' doesn't work in WHERE clause in MAINTAIN ?

Copyright © 1996-2020 Information Builders