Update ProductTrees_Lines - specific position

Hi everybody,
I want to update a specific position in ProductTrees_Lines with B1if scenario. For example I have a product tree for masteritem with 3 entries.
masteritem
1. detail item1, 2 pcs
2. detail item2, 3 pcs
3. detail item3, 4 pcs
Now I want to update position 2 with 100 pcs.
So my update structure for B1 object call (object id 66) looks like this:
<QueryParams>
     <Code>masteritem</Code>
</QueryParams>
<ProductTrees>
     <row />
</ProductTrees>
<ProductTrees_Lines>
     <row/>
     <row>
          <ItemCode>detail item2</ItemCode>
          <Quantity>100.0</Quantity>
     </row>
     <row/>
</ProductTrees_Lines>
In fact I need to list the <row>-tags proper to the positions. Isn´t there a easier way by using something like <childnum> (which is the name of the field in the database describing the position of the productTree_line), so I don´t have to list all <row>-tags (reducing the xml I need to write)?
Using <childnum> leads to an error. And I can´t find a adequate field in the object description for object id 66.
Any suggestions?
Best regards
Benjamin

Hello Benjamin,
no, unfortunately not (I do not know). the Object help from b1iF says:
<BOM>
    <!--DB Table Name: -->
    <BO>
        <!--multiple such elements are allowed-->
        <AdmInfo>
            <Object>long</Object>
            <Version>long</Version>
        </AdmInfo>
        <QueryParams>
            <TreeCode>string</TreeCode>
        </QueryParams>
        <ProductTrees>
            <row>
                <!--multiple such elements are allowed-->
                <TreeCode>string</TreeCode>
                <TreeType>string</TreeType>
                <Quantity>double</Quantity>
                <DistributionRule>string</DistributionRule>
                <Project>string</Project>
                <DistributionRule2>string</DistributionRule2>
                <DistributionRule3>string</DistributionRule3>
                <DistributionRule4>string</DistributionRule4>
                <DistributionRule5>string</DistributionRule5>
                <PriceList>long</PriceList>
                <Warehouse>string</Warehouse>
            </row>
        </ProductTrees>
        <ProductTrees_Lines>
            <row>
                <!--multiple such elements are allowed-->
                <ItemCode>string</ItemCode>
                <Quantity>double</Quantity>
                <Warehouse>string</Warehouse>
                <Price>double</Price>
                <Currency>string</Currency>
                <IssueMethod>string</IssueMethod>
                <Comment>string</Comment>
                <ParentItem>string</ParentItem>
                <PriceList>long</PriceList>
                <DistributionRule>string</DistributionRule>
                <Project>string</Project>
                <DistributionRule2>string</DistributionRule2>
                <DistributionRule3>string</DistributionRule3>
                <DistributionRule4>string</DistributionRule4>
                <DistributionRule5>string</DistributionRule5>
                <WipAccount>string</WipAccount>
                <ItemType>long</ItemType>
                <LineText>string</LineText>
                <AdditionalQuantity>double</AdditionalQuantity>
            </row>
        </ProductTrees_Lines>
    </BO>
</BOM>
theres no LineNum or other primary key

Similar Messages

  • How to add a button in the view at a specific position

    Hi Gurus,
    We have a requirement :
    To add a button or image at a specific position in the view which is like an indicator showing different color
    based on another field .
    Example :
    Adding a button next to a drop down flield and changing the color of the button based on the name of the color choosen in the drop down .
    or Adding an image which can be changed based on the dropdown value or the value entered in the input field .
    Thanks ,
    Naval Bhatt.

    Hi,
    Create an Attribute ZINDICATOR , in the same context node in which the dropdown(picklist) attribute,exists.
    Let it be a CHAR 1 field.
    Implement GET_P and GET_ method.
    Pull this field beside the dropdown fields in view configuration.
    Now the code =>
    Implement the Get_P_ZINDICATOR for this attribute as explained by Robert
    Implement  Get_ZINDICATOR method as follows
      DATA:
         lr_current   TYPE REF TO if_bol_bo_property_access,
         lr_entity TYPE REF TO cl_crm_bol_entity,
         coll      TYPE REF TO if_bol_entity_col.
      lr_current ?= collection_wrapper->get_current( ).
    IF lr_current IS NOT BOUND.
       value = cl_thtmlb_util=>get_icon_url( 'check_empty.gif' ).
       RETURN.
    ELSE.
       dref = lr_current->get_property( 'ZINDICATOR' ) .
    ENDIF.
    IF dref IS NOT BOUND.
        value = cl_thtmlb_util=>get_icon_url( 'check_empty.gif' ).
        RETURN.
    ENDIF.
    TRY.
        value = if_bsp_model_util~convert_to_string( data_ref       = dref
                                                                                attribute_path = attribute_path
          IF value IS INITIAL.
            value = cl_thtmlb_util=>get_icon_url( 'check_empty.gif' ).
    *      ELSEIF  value EQ 'R'
    *        value = cl_thtmlb_util=>get_icon_url( 'check_overdue_status.gif' ). " gives RED LIGHT
          ELSEIF  value EQ 'Y' .
            value = cl_thtmlb_util=>get_icon_url( 'check_due_status.gif' ). " gives YELLOW light
          ELSEIF  value EQ 'G'.
            value = cl_thtmlb_util=>get_icon_url( 'check_nodue_status.gif' ). " gives GREEN light
          ENDIF.
    CATCH cx_bsp_conv_illegal_ref.
          CLEAR value.
          RETURN.
    CATCH cx_root.
          CLEAR value.
          RETURN.
    ENDTRY.
    Generally check_overdue_status.gif and other images are std. and are present in all skins.
    You need more colors then you have to add those images in the MIME repository in the images folder of the SAP SKIN folder.
    You must implement the eventhandler for Dropdown field. For this in the GET_P method of dropdown, use
    CASE iv_property
      WHEN  if_bsp_wd_model_setter_getter=>fp_server_event.
          rv_value = 'COLOUR_SELECTED'.
    ENDCASE.
    and then implement the event handler EH_ONCOLOUR_SELECTED.
    In this event handler, you must set the ZINDICATOR value as ' ' , 'R','G','Y' etc depending upon what is selected in dropdown.
    This ensures that a server roundtrip is triggered and so the GET method of indicator field is called as soon as dropdown value
    is selected.
    Hope this helps.
    Thanks & Regards
    Suchita

  • Any idea while updating job and position --I am getting the following error

    Hi, I am trying to update job and position to the existing employee but getting the following error
    Error report:
    ORA-20001: The primary key specified is invalid
    Cause: The primary key values specified are invalid and do not exist in the schema.
    Action: Check the primary key values before attempting to carry out the operation again.
    ORA-06512: at "APPS.HR_ASSIGNMENT_API", line 16616
    ORA-06512: at line 35
    Code which I am using is as below
    declare
    l_assignment_id number;
    l_object_version_number number;
    l_special_ceiling_step_id number;
    LC_EFFECTIVE_END_DATE DATE;
    LC_EFFECTIVE_START_DATE DATE;
    LC_DATETRACK_UPDATE_MODE VARCHAR2(100);
    LC_GROUP_NAME VARCHAR2(1000);
    LC_CONCATENATED_SEGMENTS VARCHAR2(1000);
    L_ENTRIES_CHANGED_WARNING VARCHAR2(1000);
    LC_GSP_POST_PROCESS_WARNING VARCHAR2(1000):=NULL;
    LC_PEOPLE_GROUP_ID NUMBER:=NULL;
    LC_OBJECT_VERSION_NUMBER NUMBER:=NULL;
    LC_SOFT_CODING_KEYFLEX_ID NUMBER:=NULL;
    LC_SPECIAL_CEILING_STEP_ID NUMBER:=NULL;
    LC_GRADE_ID NUMBER:=NULL;
    LC_OTHER_MANAGER_WARNING BOOLEAN:=NULL;
    LC_SPP_DELETE_WARNING BOOLEAN:=NULL;
    LC_ORG_NOW_NO_MANAGER_WARNING BOOLEAN:=NULL;
    LCTAX_DISTRICT_CHANGED_WARNING BOOLEAN:=NULL;
    L_EMP_START_DATE DATE:=NULL;
    J_LOCATION_ID NUMBER;
    J_PAY_BASIS_ID NUMBER;
    J_SEGMENT5 number;
    J_SEGMENT3 number;
    J_SEGMENT2 number;
    J_GRADE_ID number;
    J_PAYROLL_ID number;
    begin
    l_assignment_id := 214;
    hr_assignment_api.update_emp_asg_criteria
    P_VALIDATE => FALSE
    ,P_EFFECTIVE_DATE => TRUNC(sysdate)
    ,P_DATETRACK_UPDATE_MODE => LC_DATETRACK_UPDATE_MODE
    ,P_ASSIGNMENT_ID => l_assignment_id
    ,P_GRADE_ID => J_GRADE_ID
    ,P_POSITION_ID => 5062
    ,P_JOB_ID => 3063
    ,P_PAYROLL_ID => J_PAYROLL_ID
    ,P_LOCATION_ID => 142--J_LOCATION_ID
    ,P_ORGANIZATION_ID => 81
    ,P_PAY_BASIS_ID => J_PAY_BASIS_ID
    ,p_segment5 => J_SEGMENT5
    ,p_segment2 => J_SEGMENT2
    ,p_segment3 => J_SEGMENT3
    ,P_OBJECT_VERSION_NUMBER => LC_OBJECT_VERSION_NUMBER
    ,P_SPECIAL_CEILING_STEP_ID => LC_SPECIAL_CEILING_STEP_ID
    ,P_PEOPLE_GROUP_ID => LC_PEOPLE_GROUP_ID
    ,P_SOFT_CODING_KEYFLEX_ID => LC_SOFT_CODING_KEYFLEX_ID
    ,P_GROUP_NAME => LC_GROUP_NAME
    ,P_EFFECTIVE_START_DATE => LC_EFFECTIVE_START_DATE
    ,P_EFFECTIVE_END_DATE => LC_EFFECTIVE_END_DATE
    ,P_ORG_NOW_NO_MANAGER_WARNING => LC_ORG_NOW_NO_MANAGER_WARNING
    ,P_OTHER_MANAGER_WARNING => LC_OTHER_MANAGER_WARNING
    ,P_SPP_DELETE_WARNING => LC_SPP_DELETE_WARNING
    ,P_ENTRIES_CHANGED_WARNING => L_ENTRIES_CHANGED_WARNING
    ,P_TAX_DISTRICT_CHANGED_WARNING => LCTAX_DISTRICT_CHANGED_WARNING
    ,P_CONCATENATED_SEGMENTS => LC_CONCATENATED_SEGMENTS
    ,P_GSP_POST_PROCESS_WARNING => LC_GSP_POST_PROCESS_WARNING);
    end;
    Thanks in advance
    Rajini

    Please post the details of the application release, database version and OS.
    What HRMS patchset you are on?
    Please see if these docs help.
    Getting "ORA-20001: The primary key specified is invalid" Error Using HR_ASSIGNMENT_API.UPDATE_EMP_ASG_CRITERIA API [ID 737145.1]
    Hr_assignment_api.Update_emp_asg_criteria Gives Ora-20001, Ora-06512 [ID 334491.1]
    Thanks,
    Hussein

  • Issue in Updating Customer specific fields in WBS using BAPI_BUS2054_CREATE_MULTI

    Hi Experts,
    I am able to create the WBS element using BAPI_BUS2054_CREATE_MULTI.But the issue is i am not able to update customer specific fields even after passing the fields as per specification in Function module documentation. I have also created an implementation of BADI  as per below specification in FM documentation:
    Procedure for Filling Standard Enhancements
    Before you call the BAPI for each object that is to be created or changed,
    for which you want to enter customer-specific table enhancement fields, add a
    data record to the container ExtensionIn:
    STRUCTURE:    Name of the corresponding help structure
    VALUEPART1:   Key of the object + start of the data part
    VALUEPART2-4: If required, the continuation of the data part
    VALUPART1 to VALUPART4 are therefore filled consecutively, first with the
    keys that identify the table rows and then with the values of the
    customer-specific fields. By structuring the container in this way, it is
    possible to transfer its content with one MOVE command to the structure of the
    BAPI table extension.
    Note that when objects are changed, all fields of the enhancements are
    overwritten (as opposed to the standard fields, where only those fields for
    which the respective update indicator is set are changed). Therefore, even if
    you only want to change one field, all the fields that you transfer in
    ExtensionIn must be filled.
    Checks and Further Processing
    Using the methods ...CREATE_EXIT1 or. ...CHANGE_EXIT1 of the BAdI
    BAPIEXT_BUS2001, BAPIEXT_BUS2002, and BAPIEXT_BUS2054, you can check the entered
    values (and/or carry out other checks).
    In the BAdI's second method, you can program that the data transferred to the
    BAPI is processed further (if you only want to transfer the fields of the CI
    includes, no more action is required here).
    But still i am unable to update fields though i am able to create WBS with rest of the fields except  custom fields.
    I am using attached code to achieve this.Do we need to code anything inside method create_exit1 or create_exit2 implementation for BADI or
    Please help on priority

    Hi Rahul,
    First observation from your code is that i could not find the assignment for the field
    GWA_WBS_EXTIN-STRUCTURE. I hope you are not filling this field, that could be one reason for failure. Try to do it and let us know if you still have the problem.
    Br..
    Dwaraka

  • How to  Place the Cursor at Specific Position with-in a Char Field ?

    Forms 4.5 ver.
    Sun Solaris / Citrix env.
    Char Field - Length 65434
    How Can I Place the Cursor at "Specific Location"
    with in a Field ?
    with GO_ITEM('field Name') I can place the Cursor at Specific Field.
    But, How Can I achieve to Place the Cursor at Specific
    Position within that Field ?
    I know, the starting position, length of string I want to hightlight with the Cursor.
    tried using :
    go_item('substr(field_name,position,length)') ;
    but didn't work !
    Is it possible ?
    Thanks, Peri

    The only cursor postion behavior that can be controled is the item property "Keep Position".
    The following is the text from the on-line help for item property "Keep Position"
    KEEP_POSITION Specifies whether the Keep Position property should be True or False. When Keep Position is True, the cursor returns to the same position it was in when it left the text item. When Keep Position is False, the cursor returns to the default position in the text item. Valid values are PROPERTY_TRUE and PROPERTY_FALSE.

  • Wrting data to a file in specific positions

    Hi, i have written a program that reads from one text file, grabs certain data and I will write that data out to a new fie. I am successfully doing the write, but how do I tell it to write the different data in specific positions in that new file. Right now it just writes the data int he order that I have it coded, but that is not necessarily the order i want the data written in. for example i want texta to start in position 25, while textc will be written first and textb will start in pos 150.
    writer.write(texta);
    writer.write(textb);
    writer.write(textc);

    Are these "positions" you are talking about line numbers or some sort of byte offset?
    if they are line numbers and you don't have a ton-load of data in that file, then I would advocate reading the file into some sort of collection, ordering the collection the way you want, and writing the data back.
    If they are byte offsets (or something similar) then you'll likely need to look at RandomAccessFile.
    Good Luck
    Lee

  • Updating a specific file into a .jar file

    Hi,
    I have got a .jar file, if I want to update the specific file org/abc/try.class, with a new try.class, what command should I use?
    thanks a lot.

    Something like that, but remember you have to rebuild the entire jar file from scratch. You can't just update one file in it.

  • Best way to update a polygons position?

    What is the best way to update a polygons position? I don't want to create a new one each time, and there is no setBounds method.

    I'm sorry. I meant. Say my array of x positions is 3, 4, 9. I change 9 to 30. How can I make the polygon see that change?

  • Add attribute to a XML node at a specific position

    I have this XML :
    var myNode:XML = <node attribute="123"/>
    I know how to add an attribute to the node :
    myNode.@otherAttribute = "abc";
    But this adds the attribute to the end. What if I want to add it as the first attribute ? I would like to have :
    <node otherAttribute="abc" attribute="123"/>
    I know it is possible to add a child node to a specific position with insertChildAfter() or insertChildBefore() but I don't know if it's possible for an attribute.

    there's no native method for this, maybe you should create some functions for this. just like
    private function setAttribute(node:XML, name:String, value:String, index:int = -1):void
        var attrs:XMLList = node.attributes().copy(),
            l:int = attrs.length();
        if(index == -1 || index > l - 1)
            node.@[name] = value;
        else
            delete node.@*;
            var idx:int = 0;
            for (var i:int = 0; i < l + 1; i++)
                if(i == index)
                    node.@[name] = value;
                else
                    var attr:XML = attrs[idx];
                    node.@[attr.name()] = attr.toString();
                    idx++;
    and use it like this:
    setAttribute(myNode, "otherAttribute", "abc", 0);

  • Updating only specific attributes.

    Hi,
    I am using JDEV 11.1.2.1.0
    How do I update only specific attributes in a VO/EO ?
    I have already selected the specific row in the AM and set the attribute...but how do I update the changes ?
    thanks in advance.

    To persist the changes to the db, you have to commit transaction.
    Timo

  • HT5569 My computer is not updating to the new itunes 11.1. Is there a link that you can give me to update it specifically? Because my ipod won't work on my laptop unless itunes is updated.

    My computer is not updating to the new itunes 11.1. Is there a link that you can give me to update it specifically? Because my ipod won't work on my laptop unless itunes is updated. I unistalled the 11.0 version because when I tried to update it through itunes it wasn't working. HELPPPPPPPP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Try:
    http://www.apple.com/itunes/download/
    ALso maybe:
    Trouble installing iTunes or QuickTime for Windows

  • [AS][CS3] duplicate page items in a specific position on another doc

    Hello,
    I need to copy or duplicate page items of the active page of doc 1 in a specific position of the active page of doc 2.
    I can duplicate the page items of doc 1 into the doc 2 (with the code below) but can't find a way to duplicate them in a specific position: they are always duplicated in the same position on the active page of doc 2.
    The current working code (simplified) is:
    tell application "Adobe InDesign CS3"
    tell document 1
    tell layout window 1
    set pageitemlist to every page item of active page
    end tell
    end tell
    duplicate pageitemlist to the active page of layout window 1 of document 2
    end tell
    Thanks for your help!

    -- This works in CS4:
    tell application "Adobe InDesign CS4"
    tell document 1
    tell page 2
    set d to duplicate page item "textframe1" -- the text frame labeled "textframe1"
    -- FYI, d has a class of list:
    -- "text frame id 328 of page id 237 of spread id 232 of document "Untitled-2" of application "Adobe InDesign CS4""
    end tell
    move d to page 4 -- moves to 0,0 on pg4
    end tell
    end tell

  • [svn:fx-trunk] 9352: Update DesignLayer ASDOC to reflect most recent updates to specification.

    Revision: 9352
    Author:   [email protected]
    Date:     2009-08-17 12:38:36 -0700 (Mon, 17 Aug 2009)
    Log Message:
    Update DesignLayer ASDOC to reflect most recent updates to specification.  A bug fix to all IVisualElement implementers to account for initial value of alpha/visible for their owning layer.
    QE notes:  None.
    Doc notes:  None.
    Bugs:  N/A.
    Reviewer:  Chet
    Tests run: Checkin
    Is noteworthy for integration: No
    Modified Paths:
        flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as
        flex/sdk/trunk/frameworks/projects/framework/src/mx/core/DesignLayer.as
        flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElement.as
        flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as
        flex/sdk/trunk/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as
        flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicEleme nt.as

    The problem with submitting a bug report is I don't know how to replicate it.
    The java file showed up on the "Referenced Libraries". I removed it from there and it fixed the problem.
    If I return it to the classpath via Eclipse it doesn't demonstrate the problem.
    I don't know how it got into the classpath to cause this problem. I even tried editing the classpath (which I'm fairly certain was not how the problem was caused) but that didn't replicate the problem.
    I didn't check the .classpath to see what the entry was before I removed it via eclipse so I don't know what the entry looked like. The problem wasn't in the version is SVN so I don't know how to find what changes were made.
    If you sill want a bug report I can enter one but with out any instructions on how to replicate it.

  • In Logic Pro or Pro X Meta Events don't work correctly; for example inserting Stop Playback number 52 in a specific position the playhead stops wrongly several ticks before. Then the button play does not start.

    In Logic, Pro or Pro X Meta Events don't work correctly; for example inserting Stop Playback number 52 in a specific position the playhead stops wrongly several ticks before. Then the button play does not start.

    Curious if what your describing is similar to issue 4 which starts around 9:15 in video...
    https://youtu.be/q93jdOhi4Oc
    If so this started for me, or at least I noticed it for the first time in LPX 10.1.1. What version of logic are you running?
    I've recently found that this issue also affects note timing on instrument tracks that use the "External Instrument" plugin.

  • Position a UI element or container on a specific position in webdynpro ABAP

    Hi All,
    How can we positioned different UI elements on a specific location?. I mean whenever we drag and drop them on a view they seem to take their place automatically. Is there a way to give them a shape ( vertical/horizontal ) & position explicitly . I’ll appreciate a quick reply from you people.
    Regards,
    Laeeq.

    Hi Laeeq,
    There is no way to absolute position something in Webdynpro ABAP (at least not that I've found), but there are some ways you can get things relatively in the way you want them.  Try looking at the samples (SALV_WD_DEMO_TABLE*) and you'll see how they use a combination of transparent containers, groups, and the matrix layout to get things into position.
    It does not allow for very fine grained control, but you should be able to achieve the look you are going for.

Maybe you are looking for

  • IPad not recognized by iTunes, recovery keeps failing.

    I have not yet seen a real suggestion as to troubleshooting steps for this issue on these discussions. The iPad is not recognized by any MB Pro except in recovery mode. I have tried different cables and different ports on different laptops. iPods are

  • Is it possible to boot oracle vm server over iSCSI and ipxe?

    Hi, Is it possible to boot oracle vm server over iSCSI and ipxe? I have tried it, but got a kernel panic after the boot progress. Can anyone tell me what should I do to install and or boot oracle vm server on and from a iscsi lun instead a local hard

  • Air runtime questions

    Hi all, We're eyeing Air suspiciously and thinking about trying to use it for distributing various apps. Our main concerns are all about the runtime licence model. 1) The Runtime distiribution licence agreement says: Licensee may not distribute the A

  • What happened to the foreign languages?

    I have my game app "5 Gutsy Fingers" (with one of the keywords - "knife") up on iTune Store that is suitable for Japanese and other languages. In English I typed "Knife" in the search textfield and it showed my game app, but when I changed the langua

  • [Solved] gnome install problem

    Fresh install of Arch and I'm trying to get gnome installed, I've done it before without a problem but today when I try to install gnome "pacman -S gnome" it says "error: target not found: gnome" I have the [extra] repo enabled so I'm not sure what t