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] More than 15 datasource can be use in Maintain

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[SOLVED] More than 15 datasource can be use in Maintain
 Login/Join
 
Platinum Member
posted
Hi All,

Can we call more than 15 datasource in Maintain fex file.

-Neelima

This message has been edited. Last edited by: <Kathryn Henning>,


WebFocus 8104,8204
Excel/PDF/HTML/HTMLTABLE/XML/ALPHA/GIF file/GRAPH/Active technologies
 
Posts: 186 | Location: INDIA | Registered: July 11, 2013Report This Post
Master
posted Hide Post
A single Maintain procedure can have a maximum of 15 database files. However, since one Maintain can CALL multiple Maintains, this is usually not a problem.

When Maintain A CALLs Maintain B, the second Maintain can access different data files that the first one. Use additional Masters in the CALLed procedures for validation and look ups. Have the Masters in the primary Maintain for Reading from and Writing To.

Mark
 
Posts: 663 | Location: New York | Registered: May 08, 2003Report This Post
Virtuoso
posted Hide Post
Use EXEC calls for anything you're not writing to as well. If you're hitting files to load drop-downs or radio buttons you can do that with a manually computed stack that doesn't take up one of your fifteen slots.

J.



 
Posts: 1012 | Location: At the Mast | Registered: May 17, 2007Report This Post
Platinum Member
posted Hide Post
Hi John,

As per requirement, I have to fill all the drop-down and list-box from Database directly. So its mandatory for me to call all data-sources.

How can I call Maintain's userdefined subroutine using EXEC command?

Please share it.

Thanks
Neelima


WebFocus 8104,8204
Excel/PDF/HTML/HTMLTABLE/XML/ALPHA/GIF file/GRAPH/Active technologies
 
Posts: 186 | Location: INDIA | Registered: July 11, 2013Report This Post
Virtuoso
posted Hide Post
Go into Dev Studio's help screens and look up EXEC for Maintain. It takes a form like this

compute StkDropDownList.SortOrder/i5;
compute StkDropDownList.Text/A20'

EXEC GetDropDownValues AT EDASERVE
FROM Incoming_Date
INTO StkDropDownList;

The GetDropDownValues is a focexec that runs on your server and returns values via PCHOLD. It accesses some data table in your repository, but that doesn't count against your 15 limit because it isn't running inside the Maintain routine. It's running inside a separate fex instead.

You can't save the contents of StkDropDownList inside the Maintain when you do it this way, but you probably don't need to. It's a reference table.

Option 2 is what Mark recommended above -- call another Maintain, named something like LOAD_LOOKUP_STACKS. Compute stacks in your main routine (like I show above) and then have them passed back as the result from LOAD_LOOKUP_STACKS Maintain unit.

In a pinch you can have a Save unit that saves date just like the Load unit that reads it. This lets you write to more than fifteen tables. I have two very complicated forms where I need to do this so it does happen, but it's rare you're saving to more than fifteen tables from one form.

The advantage to the EXEC option is that you can do joins, holds, matches, defines, computes . . . the works, to get the data to look the way you like prior to returning it. The disadvantage is that it's read-only.

J.



By the way, Best Practice for Maintain -- don't have many screen forms all piled into a single Maintain unit. It will grow too big, be difficult to maintain and difficult to debug.

Instead, have multiple Maintain units, each with a single "featured screen" (plus perhaps a couple of support screens), that call each other. This breaks down the number of tables required in each screen, allows you to minimize the size of your code in any single unit, and in general keep a clean house.

I have a system where I capture a client's contact information, their financial information, their insurance information, and their medical information. Each of those sections has their own Maintain unit. Each calls one of the others (when a user clicks on a menu item at the top of the screen) via a Maintain CALL command. That keeps me under my fifteen table limit in each unit.

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



 
Posts: 1012 | Location: At the Mast | Registered: May 17, 2007Report This Post
Platinum Member
posted Hide Post
Hi John,

As per your suggestion, I have developed fex file for generating Dropdown list items. Its working fine but if i have done any changes in MNT file, the stack structure has lost from Project Explore (projectfex.mnt>Stacks_folder>marketlkp). I have put following code in maintain file.

case top
compute marketlkp.Market_ID/I11;
compute marketlkp.Market_Name/A50V;
Exec loadMarket INTO marketlkp;

endcase

and following are fex file.:-

TABLE FILE ABC
PRINT
ABC.MARKET_ID
ABC.MARKET_NAME
ON TABLE PCHOLD
END

why its happening in the application. Please suggest me.

Thanks and regards,
Neelima


WebFocus 8104,8204
Excel/PDF/HTML/HTMLTABLE/XML/ALPHA/GIF file/GRAPH/Active technologies
 
Posts: 186 | Location: INDIA | Registered: July 11, 2013Report This Post
Master
posted Hide Post
It sounds like the connection is being lost between the Maintain code and the Master files. Please make sure that ALL of the Masters that you need for this application are in the same project file as the Maintain code.

When you open the MNT file, expand the stacks under the application name in the project explorer. Make sure they have fields and not just FocIndex and FocCount. If not, exit and don't save.

Mark
 
Posts: 663 | Location: New York | Registered: May 08, 2003Report This Post
Virtuoso
posted Hide Post
There's no Master File for what she's doing. It's a computed stack. The object explorer on the left side of the Maintain Development Environment is getting confused with the structures in the Maintain file's source code. That happens now and again.

Often closing the Maintain and reopening it will clear this up. If not, I'd just leave it. If deploying the unit results in proper behavior you can ignore what the explorer shows. Go to the source code if you need to make changes to the stack, you know where to find it after all.

It's just a bug in the MDE tool. No biggie.

J.



 
Posts: 1012 | Location: At the Mast | Registered: May 17, 2007Report This Post
Platinum Member
posted Hide Post
Thanks Mark and John,
When stacks lost, simultaneously Control's binding with stacks will also lose. So how can I set the listitem Dynamically using maintain code.

I have used javascript code for same, but I think, will not get Stack's FOCINDEX through javascript.

Please suggest.

Thanks and Regards,
Neelima Gupta

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


WebFocus 8104,8204
Excel/PDF/HTML/HTMLTABLE/XML/ALPHA/GIF file/GRAPH/Active technologies
 
Posts: 186 | Location: INDIA | Registered: July 11, 2013Report This Post
Virtuoso
posted Hide Post
I don't lose the binding when this happens.

Granted, occasionally 7.7 Maintain Development Environment will open a maintain file and drop ALL bindings, but you can just reopen it and they're all there again. I've never seen it drop a binding in the middle of editing though, if it opens correctly you're good to go in my experience.

You should be able to bind the drop-down to your computed stack and have all work properly. Make sure you're binding to the Stack name on the drop down itself, not in the SelectedValue attribute.



 
Posts: 1012 | Location: At the Mast | Registered: May 17, 2007Report This Post
Platinum Member
posted Hide Post
Thank you so much Mark and John for guiding me to overcome from this Maintain limitation.

I have used both options which are suggested by both of you.For dropdown values, used EXEC to load stacks. And for saving data in a particular table, I have called another maintain.


Thanks,
Neelima


WebFocus 8104,8204
Excel/PDF/HTML/HTMLTABLE/XML/ALPHA/GIF file/GRAPH/Active technologies
 
Posts: 186 | Location: INDIA | Registered: July 11, 2013Report This Post
Virtuoso
posted Hide Post
Another satisfied customer.



 
Posts: 1012 | Location: At the Mast | Registered: May 17, 2007Report This Post
Platinum Member
posted Hide Post
You guys are awesome..
Good One


WebFocus 8104,8204
Excel/PDF/HTML/HTMLTABLE/XML/ALPHA/GIF file/GRAPH/Active technologies
 
Posts: 186 | Location: INDIA | Registered: July 11, 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     [SOLVED] More than 15 datasource can be use in Maintain

Copyright © 1996-2020 Information Builders