Add rows in User Defined Object

Hi all,
I've created a simple User Defined Object.
I have a Master Data table (with the fields code and name)
and a Master Data Line (with just on field itemCode)
I want to use my own form to fill the information. For that I created a form, with two edit text items (link to the field Code and Name) and a matrix with one column bounded to my table Master data Line
it works fine if I want to add data only in the master data table, witout related record in the master data line atble.
The probleme I have is to add more than one record in my matrix. When I try something like oMatrix.Addrow, it adds the rows in the matrix, but it doesn't update or add the data in the table
If I use the default form option for the UDO object, I can se that the related table is feeded in a second form, but I need to have the Master Data and the master data line in only one form.
I hope the explanation of my problem is understandable
Thanks for your help
Sebastien

I have the answer, the DBDatasources needs to be cleared :
                                oForm.DataSources.DBDataSources.Item("MyUserTable").Clear()
oMatrix.AddRow(1)

Similar Messages

  • User Defined Object Default Form - Can't add record

    Hi,
    I have created a user defined object on a Master Data Table with acccompanying Rows table.
    For some reason I can't get any records in the Master table. SBO claims the operation (save) was succesfull however the table remains empty and the line I entered gets cleared!
    I'm running SBO2005ASP01PL07 so I don't think I'm missing any updates.
    Anyone have an idea as to what''s wrong?
    Regards,
    Ivo Vink

    For those that encounter the same problem.
    A tool from a third party had made a small change in the SBO_SP_TransactionNoticfication stored-procedure,
    This change produced an error when a transaction was done on a UDO becuase the object type of an UDO is NOT numeric but contains the name of the UDO.
    The adjustment made assumed Object_Type was allways numeric wich it is NOT.
    An error occured, resulting in SBO rolling back the entire transaction.
    Simple adjustment:
    If isnumeric(@object_type) = 1
    BEGIN
    -- third party added code
    END
    Regards,
    Ivo Vink

  • User Defined Objects

    I have made a user defined object. when the user enter the data in the rows the Update button is appeared instead of Add button and after posting the row the data is still modifiable in UDO. Please suggest how to have Add button instead of Update button and how can i block further modification in posted data by user.
    Regards,
    Muhammad Azeem Khan

    Gordon
    First I have checked the mentioned store procedure. Plz guide what to do next to block update on the newly made form.
    And Second thing, you said Default Forms work as you define these. I just update my form thru Object Registration Wizard and un-check the default form option. Now i cannot find the form anywhere. The main thing i observed that when you register object thru the wizard the update field is disabled alongwith the add field so you cannot uncheck the update field.
    Regards,

  • Transfer user defined object between 2 databaeses

    i have created a user defined object in my local db.
    i need to import it to the companies server.
    what should i do ?

    If you are talking about the definition - you can use the Copy Express Add-On from SAP.
    Regards

  • Problen in ChooseFromList & User Defined Object

    Hello.
    I'm trying to use a [ChooseFromList] that calls info from one User Table called @LABS this table is MasterData type.
    I add a User Defined Object in runtime, called UO_Labs
    Then, I add one ChooseFromList to my form (This form was made in ScreenPainter)
    The user object was created fine, the ChooseFromList is added fine, the form loads fine, but, when I press tab or the button of the ChooseFromList I get this error: "Internal error (-1003) ocurred [Message 131-183]"
    I try to use my ChooseFromList in one Matrix and in one EditText objects. And gives me the same error in both objects.
    I'm using SAP 2007 PL 35
    This is my code:
    Adding the User Defined Object -
    Dim UO As SAPbobsCOM.UserObjectsMD
    UO = CompanyObj.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oUserObjectsMD)
    UO.ManageSeries = SAPbobsCOM.BoYesNoEnum.tNO
    UO.CanCancel = SAPbobsCOM.BoYesNoEnum.tYES
    UO.CanClose = SAPbobsCOM.BoYesNoEnum.tYES
    UO.CanDelete = SAPbobsCOM.BoYesNoEnum.tYES
    UO.CanFind = SAPbobsCOM.BoYesNoEnum.tYES
    UO.CanLog = SAPbobsCOM.BoYesNoEnum.tNO
    UO.CanYearTransfer = SAPbobsCOM.BoYesNoEnum.tNO
    UO.CanCreateDefaultForm = SAPbobsCOM.BoYesNoEnum.tYES
    UO.Code = "UO_Labs"
    UO.Name = "Laboratory Info."
    UO.ObjectType = SAPbobsCOM.BoUDOObjType.boud_MasterData
    UO.TableName = "LABS"
    If UO.FormColumns.Count = 0 Then UO.FormColumns.Add()
    UO.FormColumns.SonNumber = 0
    UO.FormColumns.FormColumnAlias = "Code"
    UO.FormColumns.FormColumnDescription = "Code"
    UO.FormColumns.Add()
    UO.FormColumns.SonNumber = 0
    UO.FormColumns.FormColumnAlias = "Name"
    UO.FormColumns.FormColumnDescription = "Name"
    If UO.Add() <> 0 Then
          Application.MessageBox(CompanyObj.GetLastErrorDescription)
    End If
    END Adding the User Defined Object -
    This code adds my UDO and it works fine, has data and do the work.
    Adding the [ChooseFromList] Object -
    '// form object is send in parameters.
    Dim oCFLs As SAPbouiCOM.ChooseFromListCollection = f.ChooseFromLists
    Dim oCFL As SAPbouiCOM.ChooseFromList
    Dim oCFL_CP As SAPbouiCOM.ChooseFromListCreationParams
    Dim matrix As SAPbouiCOM.Matrix = form.Items.Item("matrix").Specific
    oCFL_CP = App.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_ChooseFromListCreationParams)
    oCFL_CP.MultiSelection = False
    oCFL_CP.ObjectType = "UO_Labs"
    oCFL_CP.UniqueID = "cfl_Labs"
    oCFL = oCFLs.Add(oCFL_CP)
    matrix.Columns.Item("labCode").ChooseFromListUID = "cfl_Labs"
    matris.Columns.Item("labCode").ChooseFromListAlias = "Code"
    form.Refresh()
    END Adding the [ChooseFromList] Object -
    Thanks for your time...
    Greetings
    Gabriel Vasquez.

    Hi Gabriel,
    Please check in B1 if the UDO is created correctly, specifically the CanFind option. I got that error once, with one of my addons, that somehow was created with CanFind=tNo, despite my code indication CanFind=tYes...
    Also, try adding the CFL directly in the XML form.
       <column uid="C_labCod" type="116" title="Lab. Code" description="Laboratory Code" visible="1" AffectsFormMode="1" width="70" disp_desc="1" editable="1" right_just="0" val_on="Y" val_off="N" backcolor="-1" forecolor="-1" text_style="0" font_size="-1" ChooseFromListUID="cfl_Labs" ChooseFromListAlias="Code">
          <databind databound="1" table="@LABS" alias="U_labCode"></databind>
          <ExtendedObject linkedObject="" LinkedObjectType=""></ExtendedObject>
       </column>
       <ChooseFromListCollection>
          <action type="add">
             <ChooseFromList UniqueID="-1" ObjectType="-1" MultiSelection="0" IsSystem="1"></ChooseFromList>
             <ChooseFromList UniqueID="cfl_Labs" ObjectType="UO_Labs" MultiSelection="0" IsSystem="0"></ChooseFromList>
          </action>
       </ChooseFromListCollection>
    Also, it's a good practice to your SAP partner's NameSpace as prefix to UDOs, UDTs, UDFs and UDKeys, in order to avoid conflicts with other partner's add-ons.
    Regards,
    Vítor Vieira

  • Using User Defined Object in B1if

    Hello Expert,
    I am trying to configure the B1if scenario for User Defined Object, But when i check the consistency of the scenario there are three issues
    1. 0142 vBIU warning - inbound - channel: defined object identifier is not listed in the repository 
    2. 0259 vBIU inconsistency - outbound - details: 'Service Method Identifier' is not correct
    3. 0262 vBIU inconsistency - outbound - details: 'Get Method Identifier' is not correct
    I have prepared the Test as a UDO in SAP B1.
    *CONFIGURATION*
    Scenario Step Definition INBOUND - CHANNEL
    Channel : INB_B1_EVNT_ASYN_EVT
    Type : SAP Business One
    Mode : Asynchronous
    Trigger : B1Event
    Object : Test
    Identification Parameter : n.a.
    Namespace Definition :  n.a.
    Retrieval
    Method  : Retrieval
    Adapter :  DI API
    Type : Service
    Rule Document  :
    id : GeneralService
    type : get
    method : getByParams
    tag : TestParams
    keys :  Code(Code)
    Outbound Phase
    Channel : OUT_B1
    Type : SAP Business One
    Format : DI Service
    Regards
    Vijay Barapatre

    Hi All,
    I have a UDO with one Table and Code and Name as fields, when I add data in SAP with the default screen I want to trigger it in B1IF, I have tried identifier 152, 153 and many more.
    But my trigger keeps returning blank so it doesn't go through to my processes.
    <?xml version="1.0" encoding="utf-8" ?>
    - <Msg xmlns="urn:com.sap.b1i.vplatform:entity" xmlns:b1il="urn:com.sap.b1i.sim:b1ilog" xmlns:b1im="urn:com.sap.b1i.sim:b1imessage" xmlns:bfa="urn:com.sap.b1i.bizprocessor:bizatoms" xmlns:sim="urn:com.sap.b1i.sim:entity" xmlns:vpf="urn:com.sap.b1i.vplatform:entity" MessageId="13102816541180273503C0A80079CC46" BeginTimeStamp="20131028165411" recording="true" logmsg="0009" msglogexcl="false" MessageLog="true"> 
    - <Header> 
    <msglog step="Default message log" always="false" b1ifactive="true" />  
    - <Resumption> 
    <starter ipo="/vP.0010000119.in_BEAE/com.sap.b1i.vplatform.runtime/INB_B1_EVNT_ASYN_EVT/INB_B1_EVNT_ASYN_EVT.ipo/proc" />  
    </Resumption>
    <IPO Id="INB_B1_EVNT_ASYN_EVT" tid="13102815571480273490C0A8007961AC" />  
    <Sender Id="0010000119" />  
    </Header>
    - <Body> 
    - <Payload Role="T" Type="B1Event" add=""> 
    - <Event xmlns="" B1EventFilter="false"> 
    - <b1e:b1events xmlns:b1e="urn:com.sap.b1i.sim:b1event"> 
    - <b1e:b1event> 
    <b1e:eventsource>MobiPay</b1e:eventsource>  
    <b1e:objecttype>FC_PODO</b1e:objecttype>  
    <b1e:transactiontype>A</b1e:transactiontype>  
    <b1e:usercode>manager</b1e:usercode>  
    <b1e:userid>manager</b1e:userid>  
    - <b1e:keys count="1"> 
    - <b1e:key> 
    <b1e:name>Code</b1e:name>  
    <b1e:value>test 2</b1e:value>  
    </b1e:key>
    </b1e:keys>
    <b1e:sourcesite>BDRAPER</b1e:sourcesite>  
    <b1e:sourceport>1433</b1e:sourceport>  
    <b1e:sourcetype>6</b1e:sourcetype>  
    <b1e:sld value="BDRAPER!!MobiPay" />  
    </b1e:b1event>
    </b1e:b1events>
    - <b1ie:B1IEvent xmlns:b1ie="urn:com.sap.b1i.sim:b1ievent" SysId="0010000119" SysTypeId="B1.9.0" Task="I" LocalObjectType="FC_PODO"> 
    - <b1ie:PrimaryKeyList> 
    <b1ie:PrimaryKey Key="Code" Value="test 2" />  
    </b1ie:PrimaryKeyList>
    </b1ie:B1IEvent>
    </Event>
    </Payload>
    <Payload Role="S" />  
    </Body>
    </Msg>
    Please help,
    Regards,
    Brenden Draper.

  • Portal Entitlements for user defined objects

    Hi,
    The UUP aggregates the user profile information from different backed data sources.
    One of the properties in the propertyset is a multivalued property. I populate
    this by the following code:
    PropertyMapKey propertyMapKeyM = new PropertyMapKeyImpl(null,"DA_Privilege");
    String str="LAB1_CAPLinks_ViewReports" + "," + "LAB1_CAPLinks_EditReports"; //hardcoded
    for testing
    propertyCache.put(propertyMapKeyM,str);
    (This code resides in the MyEntityPropertyManager)
    When I go to the portal administration screen, I do not see the values, it instead
    only gives me the object id of the java String array.
    Could someone please help me with the following questions:
    1. How do I populate the multivalued property ? I see in documentation that there
    is 2 different PropertyCache implementation......confused which one to use and
    how.
    2. Is there a way to define user defined objects in UUP and have portlets entitled
    to the state of the object ? (a custom entitlement code)
    3. Any sample code would be helpfull
    Thanks,
    Uday

    Thank You Greg. Now it works.
    -Uday
    Gregory Smith <[email protected]> wrote:
    I'm not totally sure, but I would imagine you want to put a List of
    Strings into the propertyCache if the property is supposed to be
    multivalued text, e.g.:
    PropertyMapKey propertyMapKeyM = new PropertyMapKeyImpl(null,
         "DA_Privilege");
    List strs = new ArrayList(2);
    strs.add("LAB1_CAPLinks_ViewReports");
    strs.add("LAB1_CAPLinks_EditReports");
    propertyCache.put(propertyMapKeyM, strs);
    I know that all of the code that calls the UUP and property sets code
    expects a Collection back from a multivalued property (but I'm not sure
    about a UUP implementation).
    Greg
    Udayraj Nair wrote:
    Hi,
    The UUP aggregates the user profile information from different backeddata sources.
    One of the properties in the propertyset is a multivalued property.I populate
    this by the following code:
    PropertyMapKey propertyMapKeyM = new PropertyMapKeyImpl(null,"DA_Privilege");
    String str="LAB1_CAPLinks_ViewReports" + "," + "LAB1_CAPLinks_EditReports";//hardcoded
    for testing
    propertyCache.put(propertyMapKeyM,str);
    (This code resides in the MyEntityPropertyManager)
    When I go to the portal administration screen, I do not see the values,it instead
    only gives me the object id of the java String array.
    Could someone please help me with the following questions:
    1. How do I populate the multivalued property ? I see in documentationthat there
    is 2 different PropertyCache implementation......confused which oneto use and
    how.
    2. Is there a way to define user defined objects in UUP and have portletsentitled
    to the state of the object ? (a custom entitlement code)
    3. Any sample code would be helpfull
    Thanks,
    Uday

  • Crystal Report Templates for User-Defined Objects

    Hello Experts,
    I am running SAP B1 8.8 PL11. In the current patch SAP has default Crystal Reports that can be used as Layouts for Invoices, Credit Memo's so on. Is it possbile to have layouts for user defined objects ( say for instance i have a customized form under sales module, can i import a crystal template for this customized form?). In the report layout manager i don't see an option to import user-defind objects.
    Any help would be appreciated.
    Thanks,
    Praneeth

    If this is still a problem please re-post to the SAP Integration Kit forum.

  • How can i send user defined Object as a argument to the MBean methods in authentication provider to create user?

    I developed our own Authentication, Identity Assertion & Authorization providers
    for weblogic 8.1 SP1. In the authenticator MBean i have one method which takes
    user defined object as a argument and returns a user defined object. i am able
    to call all the methods which takes java objects(for example: String, int, ArrayList,
    HashMap, Etc...) as a argument and returns also a java object but when i user
    any user defined object then it gives exception. if in the argument i used user
    defined object then it is not able to call that method telling NoSuchMethodException.
    Is there any way to use user defined object as an argument to MBean method?
    can anyone please help us as we r in the final stage of the project?
    Thanks
    Lakshmi

    "Lakshmi Padhy" <[email protected]> wrote in message
    news:3fc2f50c$[email protected]..
    >
    I developed our own Authentication, Identity Assertion & Authorizationproviders
    for weblogic 8.1 SP1. In the authenticator MBean i have one method whichtakes
    user defined object as a argument and returns a user defined object. i amable
    to call all the methods which takes java objects(for example: String, int,ArrayList,
    HashMap, Etc...) as a argument and returns also a java object but when iuser
    any user defined object then it gives exception. if in the argument i useduser
    defined object then it is not able to call that method tellingNoSuchMethodException.
    >
    Is there any way to use user defined object as an argument to MBeanmethod?
    >
    I seem to remember that jmx only supports scalar datatypes. Ask in the
    weblogic.developer.interest.management newsgroup.

  • Manual document number in User-Defined Object

    Hi Experts,
    I have a user-defined object of document type.  I am trying to post a document using the General Service. However, I cannot assign manual document number.  There is no handwritten property available.  Is it possible to assign manual document number in user-defined objects using the DI API?
    Thanks.
    Melvin

    Hi,
    This issue has been resolved.  For the benefit of those who will be encountering this error, it was resolved by manually assigning the Handwrtten field to 'Y'.  Here is the code fragment:
    shipmentHeader.SetProperty("Handwrtten", 'Y')';

  • DTW user-defined object issues

    Dear all,
    I've tried to import a user-defined object with a template through DTW.
    However, I got an error message "To generate this document, first define the numbering series in the Administration moduleApplication-defined or object-defined error.
    Any ideas?
    Pls help.
    Thanks

    Hi,
    It is a limitation of the UDO that it is not possible to enter new values via DI or DTW. 
    There is a way to automatically fill your object's user tables. Please see the Note [804685|https://websmp130.sap-ag.de/sap(bD1odSZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=804685] for more details regarding the issue description and the workaround available.                               
    hope it helps,
    Regards,
    Ladislav
    SAP Business One Forum Team

  • UDO--user defined object

    how to use UDO--user defined object in sap b1????

    Creating UDO in SAP B1
    1. Create UDT, ( Create UDT as Document if want the code to be in auto increament form)
    2. Create UDFs for created UDT,
    3. Register Object using  "Object Registration Wizard",
                    (a) Put UDT's unique name in "UNIQUE ID" field of UDO (Image - UDO01.jpg) ,
                    (b) Do further as per requirements,
    4. After Registering the UDO, you can access it from where you have set it to access (@ UI Settings of "User - Defined Object Registration Wizard"),
    5. If you wana change the field location / change the design of the form, Open screen painter as and click on "Open User Defined Object List " (Mostly 3rd icon from Left in screen painter),
    6. Make required changes and save it by clicking "Save Form To Database" ( Mostly 2nd icon from Left in Screen Painter),
    7. Now the UDO is ready and can be used by user.

  • How to assign a query retrived value to a user defined  object in a table

    how to assign a query retrived value to a user defined  object in a table

    Rajeshwar,
    If you use the "Search" feature in this forum, you should be able to find helpful links to similar questions.  You could also look at the RecordSet and DoQuery documentation in the SAP Business One SDK Help Center documentation to assist you with your question.
    HTH,
    Eddy

  • Wanting to copy DOM element child value into user defined object in PL/SQL.

    We have a DOM object and can retrieve the object elements. We are wanting to take the elements and map them to user defined object attributes. We want to then place the element child (the text portion of <item>Foo</item> into the object attribute. Is there a package or utility that is available where we can simply pass the DOM and user defined objects and "magic happens here"?

    We have a DOM object and can retrieve the object elements. We are wanting to take the elements and map them to user defined object attributes. We want to then place the element child (the text portion of <item>Foo</item> into the object attribute. Is there a package or utility that is available where we can simply pass the DOM and user defined objects and "magic happens here"?

  • How to clone a user-defined object?

    Hello,
    I need to clone an Object[] array (propArray) that holds objects of Integer, Double, Boolean type, along with objects of user-defined ClassA, ClassB, ClassC type. The matter is that the ClassA object isn't being cloned, while the rest of the user-defined objects are cloned just fine.
    In more detail, ClassA has two properties:
    public class ClassA implements Cloneable{
       private String penaltyFor;
       private Penalty[] penaltyArray;
       protected Object clone(){
          try{
             ClassA o = (ClassA)super.clone();
             o.penaltyFor = this.penaltyFor;
    //         o.penaltyArray = (Penalty[])penaltyArray.clone();  //This ain't working.
             //But neither does this :(.
             int penCount = this.penaltyArray.length;
             o.penaltyArray = new Penalty[penCount];
             for(int i = 0; i < penCount; i++)
                o.penaltyArray[i] = (Penalty)this.penaltyArray.clone();
    return o;
    } catch(CloneNotSupportedException e){ throw new InternalError(); }
    The Penalty class contains properties of primitive type and here is its clone() method:
    public class Penalty implements Cloneable{
       private String penaltyDesc;
       private int lowLimit, upperLimit, penaltyValue;
       protected Object clone(){
          try{
             Penalty o = (Penalty)super.clone();
             o.penaltyDesc = this.penaltyDesc;
             o.lowLimit = this.lowLimit;
             o.upperLimit = this.upperLimit;
             o.penaltyValue = this.penaltyValue;
             return o;
          } catch(CloneNotSupportedException e){ throw new InternalError(); }
       }I don't know what else to try. I suppose the problem is the Penalty[] array, but I may be wrong. An alternative would be to use Copy Constructors, but it will cause too many changes to the code, since the clone() method is used for the propArray copy in many places and the ClassA object is a late addition to the propArray (unfortunately it wasn't planned to exist from the beginning).
    Thank's.

    class ClassA implements Cloneable{
       private String penaltyFor;
       private Penalty[] penaltyArray;
       public Object clone(){
          try{
             ClassA o = (ClassA) super.clone();
             if (penaltyArray!=null){
                o.penaltyArray = (Penalty[]) penaltyArray.clone();
                for(int i = 0; i < penaltyArray.length; i++) {
                    Penalty penalty = this.penaltyArray;
    if (penalty!=null)
    o.penaltyArray[i] = (Penalty) penalty.clone();
    return o;
    } catch(CloneNotSupportedException e){
    throw new InternalError();
    class Penalty implements Cloneable{
    private String penaltyDesc;
    private int lowLimit, upperLimit, penaltyValue;
    public Object clone(){
    try{
    return super.clone();
    } catch(CloneNotSupportedException e){
    throw new InternalError();
    If your Penalties are immutable, you don't need to clone them -- rather,
    make then unclonable, like Strings.

Maybe you are looking for