Forum Discussion
i have a realted issue:
I have tried both the methods to call a function from another project. Call goes fine but script execution fails due to object not found error. How would i make use of the NameMapping objects that belong to Project 2.
To make it simple:
' Unit A has a reference for unit B
'Unit A is in Project A
'call is from unit A to --> sub B of unit B
Unit A
'calling sub B from unit A (below statement)
unit B.Sub B
-------------------------------
'Unit B is in a Project B and has its own Namemapping.
Unit B
Sub B
' here obj_B is getting used.
end sub
Here is the issue:
NameMapping for Project A has something like:
Aliases.Process_A.obj_Parent.obj_A
NameMapping for Project B has something like:
Aliases.Process_A.obj_Parent.obj_B
The script tries to find obj_B in the NameMapping for Project A which is what causing it to fail.
How would i make sure that obj_B should be found in NameMapping of Project B?
Please note that if i execute Sub B from project B on its own (without calling it from Proj A) then it passes without any issues.
Please help.
Many thanks.
-vik
In simple terms Project A uses mappings in project A not B
Even if it reffers project B.
So you should have Aliases.Process_A.obj_Parent.obj_B in project A.
You can merge Mapping of B with Mapping A link
what I do is keep common namemapping file so that project A,B, and C all refres to one file
- vik339 years agoOccasional Contributor
NisHera Many thanks for your reply. The only reason why i am doing all this is this - If i keep everything in one project my Object Repository (NameMapping) becomes quite large and then i start having issues like :
- object identification
- Project takes 4-5 minutes to open.
The application is based on JAVA Swing objects. I have to populate different windows from the main windows and it's hard to specify properties to all the windows so that no object identification issues occur (or i am not good at object identification techniques). So, i thought keeping different scripts in different projects means - every script will use its own NameMapping and will have no conflicts of object identification. But i guess, that's not right. Even if i refer any script from projectB from ProjectA, it would still use NameMapping of ProjectA.
Any other solution to this problem? I am going to try merging of NameMapping with different configurations though.
Thanks for your time.
-Vik