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     Update Database Query

Read-Only Read-Only Topic
Go
Search
Notify
Tools
Update Database Query
 Login/Join
 
<Faisal I Rathor>
posted
I am getting all the values from one table and inserting into another table using Maintain tool.
Please see my code,
==========================================
MAINTAIN FILE e2fday AND e2fout

$$Declarations

Case Top
Reposition e2fday.E2FDAY.SNRF ;
Stack clear GETSTACK ;
For all next e2fday.E2FDAY into GETSTACK;
COMPUTE Cnt/I4 = 1
REPEAT WHILE GETSTACK.FocCount GE Cnt;
For all include e2fout.E2FOUT from GETSTACK(Cnt);
COMPUTE Cnt = Cnt + 1
ENDREPEAT;
COMMIT;
IF FocError NE 0 THEN TYPE Cnt;
Winform Show Form1;
EndCase
END
==========================================
My origional data contains 896 rows but 846 rows are inserted into second datasource.
Your comments or suggestions will be appreciated.
 
Report This Post
Master
posted Hide Post
If you are including less records than you are expecting, you are probably having collisions. Instances where you are trying to include a record whose keys have already been included. Your logic says to continue processing even after one of these occurs.

Your logic is a little non-standard. If you want to keep processing after a collision and keep track of the records not included, try this:

MAINTAIN FILE e2fday AND e2fout

$$Declarations

Case Top
Reposition e2fday.E2FDAY.SNRF ;
Stack clear GETSTACK ;
For all next e2fday.E2FDAY.SNRF into GETSTACK;
infer e2fday.E2FDAY.SNRF into COLSTACK;
COMPUTE Cnt/I4 = 1
REPEAT GETSTACK.FocCount;
Include e2fout.E2FOUT from GETSTACK(Cnt);
If Focerror ne 0 then
Copy from Getstack(Cnt)
INTO COLSTACK(COLSTACK.FOCCOUNT+1);
COMPUTE Cnt = Cnt + 1
ENDREPEAT;
COMMIT;
IF FocError NE 0 THEN TYPE Cnt;
Winform Show Form1;
EndCase
END

On your form, place an HTMLTable to display COLSTACK and you can see which records were not included.

I hope this helps
Mark
 
Posts: 663 | Location: New York | Registered: May 08, 2003Report This Post
<Faisal I Rathor>
posted
thanks for your help.
You are correct that my code is little bit non standard beceause I am new to WebFocus.
 
Report 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     Update Database Query

Copyright © 1996-2020 Information Builders