Multi library method calling

Kelly Burgess kellyb at montana.com
Fri Mar 31 01:04:31 UTC 2023


Hi Mike,

> Do $root.$libs.$add(lFullPath,kfalse,lib2) Returns lRef
> Do lRef.Startup_Task.$initialise


Do $root.$libs.$add.$desc Returns #S1

gives you  (in Studio 10.2):

$add(cPath[,bCreate=kFalse,cIname,cPword,&iErrorCode,&cErrorText]) opens or creates the library with pathname cPath. cIname overrides the default internal name. cPword provides the library password if required. Returns item reference to library

Given that you're passing the third parameter cIname without quoting it, I'm thinking that could be a problem - you should pass it as a string 'lib2', unless lib2 is a char variable containing the real internal name.  Either way you're going to know the internal name of the opened library.  And let's say you have set that library's $name property to 'lib2'.  That controls the name of the opened library's task.  Knowing the task name, you can:

Do $itasks.lib2.$initialise()

Kelly


More information about the omnisdev-en mailing list