none
SQL Adapter generated schema RRS feed

  • Question

  • I'm using the SQL adapter in BTS2010 on a receive location to call a stored procedure.  The document schema was generated by the SQL Transport Schema Generation Wizard based on the stored procedure.  I also have an envelope schema with the same namespace as the document schema.  I'm getting the following error on the receive port: 

    There was a failure executing the receive pipeline: "ICS.EDI._944.Pipelines.rcvOutbound944, ICS.EDI.944, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bd16fe69d6ac582d" Source: "XML disassembler" Receive Port: "rcvOutbound944" URI: "SQL://DIBS853W7LT/EDI944/" Reason: Document type "http://SQLReceiveOutbound944#WarehouseStockTransferReceiptAdvice" does not match any of the given schemas. 

    I've verified that the schema is deployed and that the namespace and root node are correct.  Any Ideas?

    Friday, October 28, 2011 5:17 PM

Answers

  • Are you modifying the auto-generated schema to work like an envelop schema. Check this blog post by Richard, I think you are trying to do something similar.
    Regards,
    Bali
    MCTS: BizTalk Server 2010,BizTalk Server 2006 and WCF
    My Blog:dpsbali-biztalkweblog
    -----------------------------------------------------
    Mark As Answer or Vote As Helpful if this helps.
    • Marked as answer by FrankD302 Thursday, November 3, 2011 9:22 PM
    Saturday, October 29, 2011 6:57 AM
  • Try to do the following in small steps:

    -Make sure your SP is returning XML as desired, by testing it in SSMS

    -Set up WCF-SQL receive adapter to use XmlPolling, point to the SP, set up namespace and rootelement name, use a passthureceive pipeline and have the output sent to a file folder.

    -Create a schema that matches the XML you received in the previous step.

    -Make this schema an envelope schema and set the Body XPATH to the parent where you want the debatching to occur.

    -Deploy the schema, change the pipeline from passthru to XMLReceive.

     

    Hope this helps

    Morten la Cour

    • Marked as answer by FrankD302 Thursday, November 3, 2011 9:21 PM
    Thursday, November 3, 2011 12:08 PM

All replies

  • Are you receiving an Envelope message? Did u specify Envelope & Document Schema details in XML Disassembler properties?
    Don't forget to mark the post as answer or vote as helpful if it does, Regards - Sathish Krishnan
    Friday, October 28, 2011 6:42 PM
  • I originally had an envelope and document schema defined in the XML disassembler properties.  That configuration gave the following error:

    There was a failure executing the receive pipeline: "ICS.EDI._944.Pipelines.rcvOutbound944, ICS.EDI.944, Version=1.0.0.0, Culture=neutral, PublicKeyToken=bd16fe69d6ac582d" Source: "XML disassembler" Receive Port: "rcvOutbound944" URI: "SQL://DIBS853W7LT/EDI944/" Reason: No Disassemble stage components can recognize the data. 

    Friday, October 28, 2011 6:52 PM
  • Are you modifying the auto-generated schema to work like an envelop schema. Check this blog post by Richard, I think you are trying to do something similar.
    Regards,
    Bali
    MCTS: BizTalk Server 2010,BizTalk Server 2006 and WCF
    My Blog:dpsbali-biztalkweblog
    -----------------------------------------------------
    Mark As Answer or Vote As Helpful if this helps.
    • Marked as answer by FrankD302 Thursday, November 3, 2011 9:22 PM
    Saturday, October 29, 2011 6:57 AM
  • Hi,

    Have deployed these schemas to BizTalk runtime. You can check by executing the following query SQL Management Studio:

    SELECT * FROM [BizTalkMgmtDb].[dbo].[bt_DocumentSpec]
    WHERE msgtype = namespace#root

    Result shoud be one record. See also Abdul's post Verify Schemas after deployment.

    Or in the Admin console, navigate to Applications, <All Artifacts>, Schemas. Check to ensure you only have one schema deployed with the target namespace and root node.

    The errors you are getting indicate that it can not find the schemas.

    HTH

    Steef-Jan Wiggers

    Ordina ICT B.V. | MVP & MCTS BizTalk Server 2010

    http://soa-thoughts.blogspot.com/ | @SteefJan

    If this answers your question please mark it accordingly


    BizTalk
    Saturday, October 29, 2011 10:03 AM
    Moderator
  • Yes, this is what I'm trying to do.  Richard's example is very good, but is not for a stored procedure that returns XML.  Does anyone know of a good example for configuring the WCF-SQL adapter to debatch inbound XML messages?
    Monday, October 31, 2011 9:07 PM
  • I've verified that my schemas are deployed.  But I think my problem may be in the configuration of the adapter for debatching.  I'd like to return XML from the stored procedure if possible since this would cut down on the size of the result set and would be easier to map (in this case).  I'd also like to use the WCF-SQL adapter instead of the SQL adapter that I'm currently using.  Do you know of an example out there that like this?
    Monday, October 31, 2011 9:12 PM
  • Try to do the following in small steps:

    -Make sure your SP is returning XML as desired, by testing it in SSMS

    -Set up WCF-SQL receive adapter to use XmlPolling, point to the SP, set up namespace and rootelement name, use a passthureceive pipeline and have the output sent to a file folder.

    -Create a schema that matches the XML you received in the previous step.

    -Make this schema an envelope schema and set the Body XPATH to the parent where you want the debatching to occur.

    -Deploy the schema, change the pipeline from passthru to XMLReceive.

     

    Hope this helps

    Morten la Cour

    • Marked as answer by FrankD302 Thursday, November 3, 2011 9:21 PM
    Thursday, November 3, 2011 12:08 PM
  • The debatching is now working in the receive pipeline.  Thanks!

    Thursday, November 3, 2011 9:21 PM
  • Hi Frank,

    How did you resolve this. could you send me some sample.

    Tuesday, December 6, 2011 10:30 PM
  • I followed Richard's post on this topic and it works great using the old SQL Adapter.
    Tuesday, December 20, 2011 5:21 PM