none
WCF-SAP - SAP response is incomplete RRS feed

  • Question

  • Hi,

    I have a simple orchestration that just call an SAP RFC function. The problem is that response message, in the end of orchestration (after SAP call) is always incomplete, some nodes are missing. I decided trace the connection between servers with wireshark and i realised that SAP returns a complete response, somewhere in biztalk (i think is in xml pipeline) the message is truncated. This starts happening after an update in SAP function (I changed the name of the return tables, with the old table name the response message is not truncated). This also happens with Biztalk Adapter v2.0 for mySAP Business Suite and solution was replacing RFC dll for the new one.


    Any ideias about what could cause this and how can i solve it??


    The response schema:
     <xs:element name="Z_GEIN002_BILLING_CREATEResponse">
        <xs:annotation>
          <xs:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">http://Microsoft.LobServices.Sap/2007/03/Rfc/Z_GEIN002_BILLING_CREATE/response</doc:action>
            <doc:description xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">The Metadata for this RFC was generated using the RFC SDK.</doc:description>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="OT_DOCS" nillable="true" type="ns3:ZDOC_S_RETURN">
              <xs:annotation>
                <xs:documentation>Nº cliente 1</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" maxOccurs="1" name="OT_RETURN" nillable="true" type="ns3:ArrayOfBAPIRET1">
              <xs:annotation>
                <xs:documentation>Parâmetro de retorno</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>


    The element OT_RETURN is the missing element...
    Monday, February 8, 2010 7:53 PM

Answers

  • For WCF-SAP adapter you need to pass empty tables, in the input, if you want the output for the corresponding table.
    This blog -
    http://blogs.msdn.com/adapters/archive/2008/01/10/when-i-execute-bapis-i-don-t-get-back-any-data-help.aspx
    explains why is it required.

    On  a different note,
    after changing the name of the return tables , did you regenrate the schema for the RFC and redeploy the schemas , and restart the host-instance ?

    For  Biztalk Adapter v2.0 for mySAP Business Suite , you might also have to go the the "bin" folder in the installation directory  of the adapter,
    and delete the proy dll corresponding to the given RFC.
    • Marked as answer by pedro_rocha Tuesday, February 9, 2010 12:03 PM
    Tuesday, February 9, 2010 6:41 AM

All replies