Hi,
Is it possible (without changing the IDF repository) to add a new local variable to every component in a U10 IDF?
When Uniface components are deployed in UAR files, it seems impossible to find out which UAR file the component was actually loaded from.
In our application we have projects, in the idf each project version is identified by a project suffix e.g. a form names TEST may have 10 variants like TEST_P0001, TEST_P0002 ...
Each of these forms will be deployed in a project UAR file named after the project P0001.uar or P0891.uar but will be named TEST.FRM in each uar file the only way to find out the variant is to activate the form as query $componentname or display the component name in the title bar or any other way you can think of, for services that will not work.
I want to inject a local variable in every component
string VERSION_<the comp version>
then in query form, run cod as below were "P_comp would be a param in
newinstance P_comp,"getversion"
$1 = $componentinfo("getversion","VARIABLES")
The variables will have the list of local variables including the injected VERSION_P0001
I could inject the code directly in SQL or export the components, inject the code into the XML export file and reimport, both these are tricky and problematic.
Is there a safer way to do this?
Can the UAR where the form is run from be identified?
Thanks for reading if you got this far :)
Rob
------------------------------
Robert Cooper
Sanderson Multi-Channel Solutions Ltd
------------------------------