cancel
Showing results for 
Search instead for 
Did you mean: 

Update Item Problem - "success", but without changes

Former Member
0 Kudos

Hi all!

I try to update an item’s barcode (Field: “CodeBars” in “OITM”) via a (b1if) B1 Object Call using the corresponding object-template.

The result-Message says “success” but the field is simply not changed. I also tried to use “Insert with fallback to update” -> same result. When I try to insert a new item it works. A Deletion of an item also works properly -> so the only problem is the modification (update) of an existing item.

That’s what I hand to the B1 Object-atom:

<Body>

    <Payload Role="T" Type="Call"/>

    <Payload Role="S">

      <SetItemProp xmlns="http://tempuri.org/">

        <ItemCode>03TEST</ItemCode>

        <CodeBars>987654321555</CodeBars>

      </SetItemProp>

    </Payload>

    <Payload Role="X" id="atom2">

      <System xmlns="">0010000100</System>

      <BOM xmlns="">

        <BO>

          <AdmInfo>

            <Object>4</Object>

            <Version>2</Version>

          </AdmInfo>

          <QueryParams>

            <ItemCode>03TEST</ItemCode>

          </QueryParams>

          <Items>

            <row>

              <BarCode>987654321555</BarCode>

            </row>

          </Items>

        </BO>

      </BOM>

    </Payload>

</Body>

…and that is the result:

<Payload Role="C" id="atom1" system="0010000100" status="success" b1login="Technical User" method="Synchronous Update" objectid="4" payload="atom2" keyname="ItemCode" keyvalue="03TEST" DIresult="success" DImsg=""/>

I also tried to add the ItemCode to Items/row/ and to omit the ItemCode in “QueryParams” but without success. In addition I tried to change other item properties, but it always says “success” without any changes made to the item.

I recognized that other people had (or still having) this problem too, but I couldn’t find a solution yet.

 

Any help would be appreciated - thanks in Advance!

Alex

Accepted Solutions (1)

Accepted Solutions (1)

bastian_schaefer
Active Contributor
0 Kudos

Hi Alex,

please check following quote from the B1 object call documentation:

"Based on your parameter settings the integration framework automatically generated the <BOM> <BO> tags including the <AdmInfo>.

Do not enhance this payload, otherwise the DI call fails."

You can find the documentation for B1 object call in the Online Help of B1if  (Help -> Documents -> 2.3.2. Call B1 Object).

This means that the following fields

  • Object Identifier
  • Key Name
  • Key Value
  • Payload

need to be maintained via UI of the B1 object call atom, instead.

Best regards

Bastian

P.S.:

I agree that the DI must not inform about a "success" if nothing happened in B1.

Could you please enter a CRM support message about this system behavior?

Former Member
0 Kudos

Hi Bastian!

Thank you for the quick reply, you solved my problem!

That’s how it works now:

<Payload Role="X" id="atom2">

      <System xmlns="">0010000100</System>

      <QueryParams xmlns="">

        <ItemCode>03TEST</ItemCode>

      </QueryParams>

      <Items xmlns="">

        <row>

          <BarCode>987654321555</BarCode>

        </row>

      </Items>

</Payload>

By the way:
I’m afraid I can’t find the mentioned Online Help. After clicking “Help” there are only these items to select:

- XSLT Library

- Ref 01 - Dev Environment

- Ref 02 - Scenario Dev

- Ref 03 - Tutorial

- Ref 04 - Operations

- Ref 05 - Schemas

- Ref 06 - APIs

- Help - Var, Prop & Co

I also had a look in the “Education”-Section in SAP Partner Edge, but I can’t find such a document.

Thank you very much again! (-;

 

Best Regards

Alex

bastian_schaefer
Active Contributor
0 Kudos

Hi Alex,

please open the nodes "2. Scenario Development" and "2.3. Functional Processing Atoms" and you should be able to access the pdf document "2.3.2 Call B1 Object".

I just added a screenshot:

Best regards

Bastian

Former Member
0 Kudos

Hi Bastian!

Thanks for the screenshot, but that's how it looks in my b1if:

Best regards

Alex

Answers (0)