Universe SDK navigating class objects

All,
I need your help to see what i am missing here. I am doing some development work with Universe SDK. When trying to get objects in a class i run into this error consistently.
Here is some snippet from code
Designer.Classes classcoll;
Designer.Class cl;
Designer.object ob;
cl = classcoll.get_FindClass("ABC");
This works fine so far.
However i need to parse through the objects in the class and get their names in string format.
so i do
long cnt = cl.Objects.Count;
Console.WriteLine(" The number of objects in class is " +cnt);
//gives me the number of objects in the class.
when i try to loop through these objects
for ( i = 1; i<= cnt; i++)
ob = cl.Objects.get_Item(i);
Console.WriteLine(ob.Name);
This is where i consistently get this error as shown below.
Any ideas or hints would be greatly appreciated.
The class and the objects do exist.
Console Output :
The number of objects in class is 137
System.Runtime.InteropServices.COMException (0x80004005): no Object found!
   at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFla
gs flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
   at Designer.IObjects.get_Item(Object Index)
   at UniverseUpdate.Class1.Main(String[] args)

Default properties of the Objects collection isn't the enumeration index, but Object name, so you'd have to use the iterator:
foreach(Designer.Object ob in cl.Objects) {
    Console.WriteLine(ob.Name);
Sincerely,
Ted Ueda

Similar Messages

  • What is the advantage of using IB to create XIBs/Class Objects over coding?

    Hi all,
    I hoping someone can provide me some pros and cons as to when I should use IB to create XIBs and/or class objects as opposed to directly coding them.
    For example, if I choose Apple's Template for creating a Navigation Based Application (cocoa touch), the project creates two NIB files - MainMenu and RootViewController.
    However looking at one of demo apps SimpleDrillDown, it does not have a RootViewController XIB and instead creates it via code.
    Another example from the same two apps is that the template generates a "Navigation Controller" class object in the Mainmenu.xib. SimpleDrillDown does not bother with this in the XIB, but uses code to generate the controller:
    - (void)applicationDidFinishLaunching:(UIApplication *)application {
    // Create the navigation and view controllers
    RootViewController *rootViewController = [[RootViewController alloc] init];
    UINavigationController *aNavigationController = [[UINavigationController alloc] initWithRootViewController:rootViewController];
    self.navigationController = aNavigationController;
    [aNavigationController release];
    [rootViewController release];
    // Configure and show the window
    [window addSubview:[navigationController view]];
    [window makeKeyAndVisible];
    as opposed to the template which only needs this:
    - (void)applicationDidFinishLaunching:(UIApplication *)application {
    // Configure and show the window
    // Navigation Controller is defined in MainWindow.xib
    [window addSubview:[navigationController view]];
    [window makeKeyAndVisible];
    So what are the advantages of each approach. Why does apple suggest one approach and yet all its demos use another.
    Any thoughts, answers gratefully received.
    TIA, Michael.

    You can do whatever you're comfortable with, but most of the best Cocoa programmers--the ones on the Mac, I mean--recommend putting everything you can into Interface Builder.
    It's a little like the difference between writing a program to do a bunch of financial calculations and using a spreadsheet. Yeah, the program can do everything the spreadsheet can--and more besides--but you'll find it far easier to create, use and modify the spreadsheet.
    Interface Builder takes away a lot of completely meaningless choices ("What order should I create the objects in? How should I name the variables? How should I create their frames? What order should I set the attributes in?"), leaving you with an interface optimized for creating and arranging objects, and allowing your code to focus on what you really do need to think about--your application's logic.
    (By the way--part of the reason Apple's demos don't all use Interface Builder is that the very first SDK releases didn't have it. Back then, you had to create all your views programatically. Believe me, I have no wish to go back to setting autoresize masks manually. Now get off my lawn, whippersnapper.)

  • How to get the universe metadata information (class , tables...)  through JSP coding ?

    Hi,
         I am new to BO. I am developing tool which will extract the metadat information of report and universe using JSP (java ) in BO XI R2 . My problem is how to get universe metadata ? i listed the universe name by quering the CI_APPOBJECTS table. i couldn't get other information (Class and objects in the universe ).. I need the advice or idea or code to complete work... Please help to resolve my problem..
    Thanks Advance

    There's three ways to get the Universe Class/Object info:
    1. Use the Universe Designer SDK.  This is COM-based, so you'd write VBScript, VBA or VB6 code.
    2. Use the ReportEngine Java (REBean) API.  Programmatically create a Web Intelligence document, specify the Universe as DataProvider, then get the DataSource, which holds the Classes/Objects hierarchy.
    3. Use the QueryService Service in the BusinessObjects Web Service (via Java or .NET Consumer API) to do something similar to 2.
    Sincerely,
    Ted Ueda

  • Why are Player 10.1 source libraries missing from LCCS SDK Navigator?

    I have downloaded the LCCS SDK Navigator. Player 9 and 10 both have SWC and Source files, but 10.1 only has SWC files. This is further confirmed when navigating to the com.adobe.afcs plug-in folder. When installing the 10.1, I have no choice but to "source attach:" the src folder for Player 10.
    This is causing an error. When using Flash Builder 4 to import AFCS componenets (such as <rtc:SimpleChat>), I am recieving a notifications:
    1046: Type was not found or was not a compile-time constant: GroupSpecifier / NetGroup.These error messeges do not appear when using the Player 10 SWC.
    I realize that these errors are related to the new p2p features in 10.1. Others have complained about this issue prior to the release of 10.1 and were able to bypass it by using playerglobal.swc, but that shouldn't be needed anymore. I have installed 10.1 on my machine, including in the C:\Program Files\Adobe\Adobe Flash Builder 4\player\win\ folder that my copy of Flash Developer 4 uses.
    I am left with the assumtion that either the Player 10.1 SWC cannot be used yet (until the source files are available) or that I have somehow incorrectly set up Player 10.1 for Flash Builder. Any assistance would be appreciated.

    Thank you for the advice. I have managed to follow your instructions (add playerglobal.swc 10.1 to the Library Path) and get the messege to disappear, but this leads to another problem in AIR.
    I have set up a basic LCCS SDK tutorial app (the one from the AFCS Developer Guide on page 92-93). Running that app with my email address, password and roomURL works fine in a Web version. I repeat, a Flash web version of this app works fine.
    However, when using it in a playerglobal.swc-added AIR app, I get the following error:
    VerifyError: Error #1014: Class flash.net::GroupSpecifier could not be found.
        at com.adobe.rtc.session::ConnectSession()
        at com.adobe.rtc.session::ConnectSessionContainer()[C:\work\main\connect\cocomoPlayer10.1\sr c\com\adobe\rtc\session\ConnectSessionContainer.as:94]
        at NewPlayer007/_NewPlayer007_ConnectSessionContainer1_c()
        at NewPlayer007/_NewPlayer007_Array1_c()
        at mx.core::DeferredInstanceFromFunction/getInstance()[E:\dev\4.0.0\frameworks\projects\fram ework\src\mx\core\DeferredInstanceFromFunction.as:105]
        at spark.components::SkinnableContainer/createDeferredContent()[E:\dev\4.0.0\frameworks\proj ects\spark\src\spark\components\SkinnableContainer.as:985]
        at spark.components::SkinnableContainer/createContentIfNeeded()[E:\dev\4.0.0\frameworks\proj ects\spark\src\spark\components\SkinnableContainer.as:1014]
        at spark.components::SkinnableContainer/createChildren()[E:\dev\4.0.0\frameworks\projects\sp ark\src\spark\components\SkinnableContainer.as:827]
        at mx.core::UIComponent/initialize()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\ UIComponent.as:7250]
        at spark.components::Application/initialize()[E:\dev\4.0.0\frameworks\projects\spark\src\spa rk\components\Application.as:916]
        at spark.components::WindowedApplication/initialize()[E:\dev\4.0.0\frameworks\projects\airsp ark\src\spark\components\WindowedApplication.as:1833]
        at NewPlayer007/initialize()
        at mx.managers.systemClasses::ChildManager/childAdded()[E:\dev\4.0.0\frameworks\projects\fra mework\src\mx\managers\systemClasses\ChildManager.as:189]
        at mx.managers.systemClasses::ChildManager/initializeTopLevelWindow()[E:\dev\4.0.0\framework s\projects\framework\src\mx\managers\systemClasses\ChildManager.as:341]
        at mx.managers::SystemManager/initializeTopLevelWindow()[E:\dev\4.0.0\frameworks\projects\fr amework\src\mx\managers\SystemManager.as:2810]
        at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::kickOff()[E:\dev\4.0.0\frameworks\projects\fra mework\src\mx\managers\SystemManager.as:2637]
        at mx.managers::SystemManager/http://www.adobe.com/2006/flex/mx/internal::preloader_completeHandler()[E:\dev\4.0.0\frame works\projects\framework\src\mx\managers\SystemManager.as:2539]
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.preloaders::Preloader/timerHandler()[E:\dev\4.0.0\frameworks\projects\framework\src\mx \preloaders\Preloader.as:515]
        at flash.utils::Timer/_timerDispatch()
        at flash.utils::Timer/tick()
    Since this error is related to GroupSpecifier (but did not occur in the web-version), it seems to be being caused by a conflict between the added playerglobal.swc and afcs.swc. Is it possible I am using conflicting versions or an out-of-date SWC? Or do you think there is another reason for the error in AIR?
    Can you also provide me with download links to the newest compatable playerglobal.swc and afcs.swc? Thank you.

  • Exporting & Importing Class Objects

    Hi.
    I want to migrate Class Objects from a CMSDK's instance to another. Maybe I can use CAT and PUT cmdline commands to do the job. I make some tests using CAT but I dont know how to redirect the data displayed on the screen to a xml file.
    Any ideas?
    Thanks in advance.

    Post Author: amr_foci
    CA Forum: WebIntelligence Reporting
    i'm not sure what you are talking about,,
    but try to import the universe and SAVE AS it to a new one and rename the title of the universe to a new name,, export it,, and reimport it again,, and try to delete that class from the universe,,
    if that didnt work,, you can hide this class from the universe by right click this class and then click Hide Itme(S)
    hope this helps
    Amr

  • WBEM SDK - Mapping CIM Object to XML

    Hi all !
    In Sun WBEM SDK such classes as CIMClass, CIMProperty, CIMInstance have
    methods toXML(.....).
    Where can I find specification, used for CIM-to-XML mapping in Sun WBEM SDK?
    I will appreciate any assistance you might be able to offer me.
    Thank you in advance for your attention.
    Please, mail me on [email protected]
    Sincerely yours,
    Ihor Krivenchuck

    To construct an object from XML, builder pattern looks like a good option. Here is a quick design
    public class XMLCoder{
    public static Object decode(InputSream in, XMLBeanMapper xm) throws some_exception_if_ASM_object_is_in_inconsistent_state {
    public static void encode(OutputStream out, XMLBeanMapper){
    public class BeanProperty{
    private String name;
    priavte String value;
    .. cons,accessors and muatators ...
    public interface XMLBeanMapper{
    public void setProperty(BeanProperty bp);
    public Object getObject() throws some_exception_if_ASM_object_is_in_inconsistent_state ;
    public BeanProperty getNextProperty();//returns null if no more property needs to be converted to xml
    for each class that needs conversion to and from XML, you need a XMLBeanMapper class.
    XMLCoder.encode parses XML, creates a BeanProperty from each element and calls setProperty of XMLBeanMapper. The XMLBeanMapper calls necessary method of your ASM object to set the value. When it is done with parsing the xml document, it calls the getObject on the XMLBeanMapper and returns the object or throws exception if needed.
    XMLCoder.decode keeps calling the getNextProperty unless it returns null. It writes necessary xml element from the data provided by the BeanProperty instance.
    Depending on how complex your xml is you will probably need to change the BeanProperty class to keep the XMLcoder generic. For example to handle child elements, you may chain BeanProperty instances, or if the XML may have arbitrarily more information for a property than a name-value pair, you may need to use a hashtable.
    Benefits:
    You have a generic class to parse XML
    The unique XmlBeanMapper implementation for each ASM type will be pretty simple. You can have a generic XmlBeanMapper implementation when the xml elements contains the name of the method
    Disadvantages:
    You need to write and maintain a XMLBeanMapper implementation for each type of ASM class.

  • Labview class objects

    In my lab we are working with a Photron Fastcam 512PCI. It is attached to a microscope and the image aquisition is run through LV. So far is has produced great results. However, there are some very time critical functions that need to be carried out at certain intervals in the VI. These functions are controlled with software provided by Photron, but we need LV to be able to access these functions. The software comes with an SDK with all the required DLLs. We have been attempting to use Call External Library nodes to access the required functions, but this is not working.
    From what I understand, the class definition in the DLL is a CCameraControl class. When the camera connects an object is created containing all of the camera parameters and functions. Using this, its member functions should be accessed by calling the constructor to create a class object for example called obj1. Then a function is called as such: obj1.GetManualTriggerPosition(position). Yet it does not appear that LV has integrated the concept of class. Is there any way to have LV call these functions?

    abriggs8 wrote:
    In my lab we are working with a Photron Fastcam 512PCI. It is attached to a microscope and the image aquisition is run through LV. So far is has produced great results. However, there are some very time critical functions that need to be carried out at certain intervals in the VI. These functions are controlled with software provided by Photron, but we need LV to be able to access these functions. The software comes with an SDK with all the required DLLs. We have been attempting to use Call External Library nodes to access the required functions, but this is not working.
    From what I understand, the class definition in the DLL is a CCameraControl class. When the camera connects an object is created containing all of the camera parameters and functions. Using this, its member functions should be accessed by calling the constructor to create a class object for example called obj1. Then a function is called as such: obj1.GetManualTriggerPosition(position). Yet it does not appear that LV has integrated the concept of class. Is there any way to have LV call these functions?
    Your best bet is to create an external wrapper DLL which translates the object oriented interface of your C++ DLL into a functional interface accessible by LabVIEWs Call Library Node. The reason LabVIEW doesn't have a direct Call Object Interface Node similar to the Call Library Node is because these interfaces are compiler dependant as far as the binary compatibility is concerned. So a C++ DLL created in Borland C is likely to be troublesome to be used in a Visual C application. In fact it is bascially impossible since the created link libraries are in different object format and can't be linked together anyhow.
    Another approach might be if your library exports its object oriented interface through Active X. Active X does among other things also norm the exact binary interface of an object and therefore allows LabVIEW to provide a common interface, which it has implemented since about version 5.1. I'm not a fan of Active X and never would recommend its use but if it is an option in your case you may try it out.
    Rolf Kalbermatter
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Web Intelligence Sub Class Objects

    Hi Experts,
    By default, what data does the sub class object (blue object) display in a web intelligence document? Is it key, description etc. and is it possible to control what detailed object it displays as default. I know how to get the key and description from the detailed objects (green), but want to know what data the main object displays by default.
    I am asking because we've created a large web intelligence document with lots of formulas that contain [L03 Profit Center] = " [key]". The users want to maintain the hierarchy text, which if the objects display text as default will break our formula and cause lots of work to correct with the new [L03 Profit Center Key] object.
    Kind regards,
    Andrew

    Hi Andrew,
    I am not sure but I guess it depends on the Info-object setting at the BW level because I have seen both Descriptions and Key
    values being displayed from the Dimension (blue object).
    How-ever, you can change the definition of the object at the universe level and get the required value.
    Just check if you are getting the required values by default. If you are not getting the required value then just copy the Select
    clause of the L03 Profit Center Key and paste it in the Select clause of L03 Profit Center.
    Changing the definition of the object will save all your rework.
    Regards,
    Rohit

  • Problem with Dynamically accessing EJB Class objects in WL 7.0 SP1

    I am trying to build a component which has the ability to instantiate and execute
    an known EJB method on the fly.
    I have managed to build the component but when I try and execute it I get a ClassNotFoundException.
    I know that the EJB I am trying to invoke is deployed and available on the server,
    as I can see it in the console, I also seen to have been able to get the remote
    interface of the object, my problem occurs when I try and access the class object
    so I can perform a create on the object and then execute my method
    The code I have written is below:
    private Object getRemoteObject(Context pCtx, String pJNDIName, String pHomeBean)
    throws Exception {
         String homeCreate = "create";
         Class []homeCreateParam = { };
         Object []homeCreateParamValues = {};           
    try {  
    //This call seems to work and doesn't throw an exception     
    Object home = pCtx.lookup(pJNDIName);
    //However this call throws a java.lang.ClassNotFoundException
    Class homeBean = Class.forName(pHomeBean);
    Method homeCreateMethod = homeBean.getMethod(homeCreate,homeCreateParam);
    return homeCreateMethod.invoke(home, homeCreateParamValues);
    } catch (NamingException ne) {             
    logStandardErrorMessage("The client was unable to lookup the EJBHome.
    Please make sure ");
    logStandardErrorMessage("that you have deployed the ejb with the JNDI
    name "+pJNDIName+" on the WebLogic server ");
    throw ne;
    } catch (Exception e) {
    logStandardErrorMessage(e.toString());
    throw e;     
    Any advice would be really appreciated, I'm fast running out of ideas, I suspect
    it has something to do with the class loader but I'm not sure how to resolve it
    Regards
    Jo Corless

    Hello Joanne,
    Congratulations! I'm very happy that you've managed to fix your problem. It's
    always essential to understand how to package applications when deploying on BEA
    WebLogic. Usually, by throwing everything into an EAR file solves just about all
    the class loader problems. :-) Let us know if you have any further problems that
    we can assist you with.
    Best regards,
    Ryan LeCompte
    [email protected]
    http://www.louisiana.edu/~rml7669
    "Joanne Corless" <[email protected]> wrote:
    >
    >
    I've fixed it!!!!!!!!
    Thanks to everyone who gave me help!!!!
    The class loader was the culprit which is what I suspected all along.
    As soon
    as I put the 2 jar files I was using into an EAR file the problem went
    away!!!!!
    Thanks again
    Jo Corless
    "Ryan LeCompte" <[email protected]> wrote:
    Hello Joanne,
    As Mr. Woollen mentioned, I also believe it's a problem with the class
    loader.
    You need to be careful how you arrange your EJBs, because WebLogic has
    a specific
    method in which it loads classes in an EAR, JAR, and WAR file(s). Please
    refer
    to http://dev2dev.bea.com/articles/musser.jsp for more information about
    BEA WebLogic
    class loading mechanisms and caveats. Also, try printing out the various
    methods
    that are available on the object that was returned to you via reflection.
    For
    example, use the getMethods() method, which returns an array of Method
    objects
    that you can subsequently cycle through and print out the various method
    names.
    This way you can discover if the class found/returned to you is indeed
    the one
    you intend to locate.
    Hope this helps,
    Ryan LeCompte
    [email protected]
    http://www.louisiana.edu/~rml7669
    Rob Woollen <[email protected]> wrote:
    I believe the issue is the home interface class for this EJB is not
    available in the class loader which is doing the reflection.
    If you do:
    getClass().getClassLoader().loadClass(homeInterfaceClassName)
    I suspect it will fail. Reflection still requires that the class be
    loadable.
    -- Rob
    Joanne Corless wrote:
    Hi Slava,
    If I make my code look like you describe below I get a compliationerror telling
    me that
    home.getMethod() is not recognised (no such method)
    If I change it slightly and use
    Method homeCreateMethod =
    home.getClass().getMethod(homeCreate,homeCreateParam);
    The code will compile OK but when executed it still throws a NoSuchMethodException
    Any ideas ?
    Thanks for your help so far
    Regards
    Jo Corless
    Your code should look like
    Object home = pCtx.lookup(pJNDIName);
    Method homeCreateMethod =
    home.getMethod(homeCreate,homeCreateParam);
    return homeCreateMethod.invoke(home, homeCreateParamValues);
    Regards,
    Slava Imeshev
    "Joanne Corless" <[email protected]> wrote in message
    news:[email protected]...
    Hi Ryan,
    I also wanted to mention that if you do a "header search" in this
    particular
    newsgroup
    with the search query as "reflection", you will see many previousmessages
    regarding
    reflection and EJBs. I believe you could learn a lot from thedifficulties
    that
    others have faced and solved.I tried that and although there was a number of similar cases noneof them
    actually
    seem to fix my issue. Thanks for the suggestion though
    Are the EJBs that you are trying to access accessible via your
    system
    classpath?
    Try to avoid having them accessible via the main system classpath,and
    only bundle
    them in your appropriate EJB jar files (contained in an EAR file,for
    example).Maybe I should have laid the problem out a little clearer.
    I have a number of EJB's bundled up in a JAR file which is hot deployedto
    the
    server. Within this first JAR file is an EJB (SSB) component that
    needs
    to
    be
    able to invoke a known method on another EJB. This second EJB may
    or
    may
    not be
    within the first JAR file but it also will be hot deployed.
    The component trying to invoke the method on the 2nd EJB has to
    be
    able to
    create
    an instance of the 2nd EJB without actually knowing anything bar
    a
    JNDI
    Name which
    is passed in at runtime.
    I can get as far as doing the
    Object home = pCtx.lookup(pJNDIName);
    This returned a class with the name
    "com.csc.edc.projects.allders.httppostoffice.postman.PostmanBean_mp8qy2_Home
    Impl_WLStub"
    My problem seems to occur when I try and invoke the create method
    Method homeCreate = home.getClass().getMethod("create", new Class[0]);
    My code throws a java.lang.NoSuchMethodException at this point so
    I
    am
    unable
    to progress to the next step of :
    Object bean = homeCreate.invoke(home, null);
    So I can return the instantiated bean back to the calling client.
    Why am I getting the NoSuchMethodException, is is because I am gettinga
    stub
    back rather than the home interface and if so how do I get the truehome
    interface
    from the bean
    Thanks in advance
    Jo Corless

  • Converting a class object back to a .class file

    Hi,
    How can i convert a class object back to a .class file ? Thanks

    any pointers on how to do it then ? i don't have
    access to the native codeIf I have understood you correctly, you have native code that generates bytecode. Currently you load the class this bytecode represents right into the classloader, but you want to save it to disk as a .class file. Right?
    If so, you just have to get hold of that bytecode before it "disappears" into the classloader, and save it to disk. How you can best do this depends on exactly how you communicate with that native code.
    If I have misunderstood your problem (and that's not unlikely), please try to be clearer.

  • How to use two activex class objects in same vi

    HI
    I am using labview to read ECU data from INCA software .INCA providing COMTOOL API(incacom.dll). I am using ACTIVEX for  communication between INCA & Labview. My problem is If I have used single activex class object  I am able to read Inca version, getting the database path etc. If I have used two activex class in same vi (one to open Inca & other one is to read the folder structure) I am not getting output.I have attached snapshot for referance
    Attachments:
    activex1.JPG ‏114 KB
    activex2.JPG ‏107 KB

    It wasnt in the first two images you posted, or I couldnt see it anyway! That was the only reason.
    Did you try the database block on its own, just to confirm that it is working?
    Beginner? Try LabVIEW Basics
    Sharing bits of code? Try Snippets or LAVA Code Capture Tool
    Have you tried Quick Drop?, Visit QD Community.

  • How can i add custom attributes to a new Class Object using the API ?

    Hello everyone,
    Here is my problem. I just created a subclass of Document using the API (not XML), by creating a ClassObjectDefinition and a ClassObject. Here is the code :
    // doc is an instance of Document
    ClassObject co = doc.getClassObject();
    ClassObjectDefinition cod = new ClassObjectDefinition(ifsSession);
    cod.setSuperclass(co);
    cod.setSuperclassName(co.getName());
    cod.setName("MYDocument");
    ClassObject c = (ClassObject)ifsSession.createSchemaObject(cod);
    Everything seems to be OK since i can see the new class when i use ifsmgr. But my question is : how can i add custom attributes to this new class ? Here is what i tried :
    AttributeDefinition value = new AttributeDefinition(ifsSession);
    value.setAttribute("FOO", AttributeValue.newAttributeValue("bar"));
    c.addAttribute(value);
    But i got the following error message :
    oracle.ifs.common.IfsException: IFS-30002: Unable to create new LibraryObject
    java.sql.SQLException: ORA-01400: impossible d'insirer NULL dans ("IFSSYS"."ODM_ATTRIBUTE"."DATATYPE")
    oracle.ifs.server.S_LibraryObjectData oracle.ifs.beans.LibrarySession.DMNewSchemaObject(oracle.ifs.server.S_LibraryObjectDefinition)
    oracle.ifs.beans.SchemaObject oracle.ifs.beans.LibrarySession.NewSchemaObject(oracle.ifs.beans.SchemaObjectDefinition)
    oracle.ifs.beans.SchemaObject oracle.ifs.beans.LibrarySession.createSchemaObject(oracle.ifs.beans.SchemaObjectDefinition)
    void fr.sword.ifs.GestionDocument.IFSDocument.createDocument(java.lang.String)
    void fr.sword.ifs.GestionDocument.IFSDocument.main(java.lang.String[])
    So, what am i doing wrong ?
    More generally, are we restricted in the types of the attributes ? (for example, would it be possible to add an attribute that would be an inputStream ? Or an object that i have already created ?).
    Any help would be appreciated. Thanks in advance.
    Guillaume
    PS : i'm using Oracle iFS 1.1.9 on NT4 SP6 and Oracle 8.1.7
    null

    Hi Guillaume,
    you're welcome. Don't know exactly, but assume that ATTRIBUTEDATATYPE_UNKNOWN
    is used to check for erronous cases only
    and it shouldn't be used otherwise.
    Creating your own objects could be simply done via
    ClassObject ifsClassObject;
    DocumentDefinition ifsDocDef = new DocumentDefinition(ifsSession);
    // get class object for my very own document
    ifsClassObject = ClassObject.getClassObjectFromLabel(ifsSession, "MYDOCUMENT");
    // set the class for the document i'd like to create
    ifsDocDef.setClassObject(ifsClassObject);
    // set attributes and content for the document...
    ifsDocDef.setAttribute("MYFOO_ATTRIBUTE",....);
    ifsDocDef.setContent("This is the content of my document");
    // create the document...
    PublicObject doc = ifsSession.createPublicObject(ifsDocDef);
    null

  • How to get a LabVIEW class object to expose an invoke-node method?

    Hi,
          I like the property/invoke-node "paradigm" used for interacting with "objects".  Can LabVIEW-class objects expose their properties and methods this way?  Can one or more LabVIEW-class objects be compiled into a library or "assembly" (or other distrubution format) that allows the property/invoke-node usage?
    I've looked at (but not completely understood) "Creating LabVIEW Classes".  Have also searched for related posts.
    The pic below shows an invoke node wired to a class with a Public VI "VAT.Status.Hello.vi".  I'd like to see VAT.Status.Hello show-up as a Method.  (I just tried "Select Method", and selected "VAT.Status.Hello.vi" but dialog's "OK" button stays greyed-out.)
    Cheers.
    Message Edited by tbd on 03-29-2007 03:15 PM
    "Inside every large program is a small program struggling to get out." (attributed to Tony Hoare)
    Attachments:
    VATStat.JPG ‏54 KB

    Hi Aristos,
          Thanks for the reply!  It was a bit dissappointing, though.
    It appears the LabVIEW-class object will be moving away from (what seems to me) a convenient object-interface presented by the invoke-node/method paradigm - which allows us to interface with a large set of "objects" (.NET, ActiveX, LabVIEW GUI, VISA Resource, ?) in a similar manner and independent of the object's origin.  Being able to read the methods and parameters that appear in these nodes is also helpful for understanding diagram logic!
    I do like the option of dropping a friendly "VI looking" icon on the diagram, but perhaps an optional - even default - VI-icon representation for a class-object invoke-node is feasible - so the LabVIEW class-object could be the more generic object first, but with a traditional-G representation(?)
    Given the answer "We would like, someday, to support the property node"
    and "in the next version of LV, wiring the LV class to the property/invoke nodes will break the wire so we'll avoid confusion in the future",
    ... I guess you'll break the wire in the next version, but (perhaps) allow it again - if support of the property node is ever implemented?
    Regards.
    P.S. For the record, huge THANKS to whoever it was that straightened-out enumerated-types (somewhere) between LV4.1 and LV6.1.  Every time I add or remove an enumeration in a typedef, I silently give thanks to the bright and thoughtful soul(s) who made this valuable tool work so well!
    Hello. This is your friendly neighborhood R&D guy for LabVIEW classes.
    Regarding your request about property and invoke nodes as relates to LV classes....
    Short story: We would like, someday, to support the property node. We have no intention of ever supporting the invoke node.
    Long story: As we were creating LV classes, we had to evaluate the right programming interface for these things. We wanted LV classes to behave as new data types in LV. A developer should be able to create a LV class, then give it to someone who doesn't even know OO programming, and that second programmer could use the new data type without learning a lot of new concepts. From this principle, we held fast to the idea that the programming interface should be subVI calls whereever possible. The invoke node is really nothing more than a VI minus the icon. If you want, you can popup on any subvi node and uncheck the option "View as Icon". This will make the node display in a way that has the terminals listed as text, like the invoke node. So, at the end of the day, the invoke node is simply a subroutine call in LV that is language dependent, as opposed to the language independent iconography of LV generally.
    The property node is a slightly different story -- the functionality of a property node is actually different than an invoke node as its terminals are various subsets of the properties available, not a fixed list of parameters like the invoke node. The property node provides a nice interface for setting multiple properties in a block and only having to check a single error return. Very friendly. Our intent is to allow you to create a VI that has 5 terminals: object in, object out, error in, error out, and either a single input or a single output of your chosen type. VIs with this conpane could be marked as "properties" of the class and would show up when you wire the class wire to the property node. We would call the subVIs behind the scenes as needed to get/set the properties.
    This is on the longer term roadmap because it is "syntactic sugar" -- it sweetens the programming style, but it is not necessary to program effectively. You can get the same effect by writing those same VIs and stringing them along on a block diagram "railroad track" style. We'll probably get around to it in three or four versions of LV -- there are some major user requests that impact functionality that have to get done first.
    PS -- in the next version of LV, wiring the LV class to the property/invoke nodes will break the wire so we'll avoid confusion in the future of people thinking there's a way to use these nodes.
    Message Edited by Aristos Queue on 04-02-2007 09:56 AM
    Message Edited by tbd on 04-03-2007 12:39 PM
    "Inside every large program is a small program struggling to get out." (attributed to Tony Hoare)

  • How to automate the creation of Function Module & Class Object (SE24)

    Experts,
    I have the requirement to automate the creation of any type of programs: ie function module (like how we normally create in SE37 together with the parameters), class object (like how we normally create in SE24 together with attribute & method), normal report (like how we did in SE38), module pool and so on.
    For example. I backuped my program into a flat file (the entire source code in txt formal or HTML) through a download program and I need to upload back this flat file into another installation of SAP.
    Does SAP provide any predefined FM to cater for the above cases or better still, does anyone know of any upload program which I can use for the above requirement.
    Thanks in advance.

    Hi Kris, I can't use the transport system as these are 2 separate SAP installation in a different place. The requirement came in the form of creation of program to be able to generate FM/Class/Report on the go.

  • Dynamic creation of class objects?

    I have a requirement where in at runtime I would know the class name, method name, properties, interface..and coding lines to be put into a method?
    Can anyone suggest a way to create the consumable central class object with these details, activate it and without any manual intervention create this object in backend?

    From other thread...use SEO* package

Maybe you are looking for