Inbound IService Requests are utilized when data is submitted to QBO and/or when other systems are targeting the QBO application. There are two categories of Inbound Requests:
IService configuration properties and usage:
Sample Use Cases: IService.FNC <!-- Parent Inbound Request--> <Service Name="FNCOrder" Type="qbo.Service.InboundService.InboundRequest, qbo.Service.InboundService" ReturnType="XmlReader" RequireStream="true" RequestMethod="ImportFile/ImportByObject?Template=FNCOrder" ResponseMethod="ImportFile/ImportResultXml?ImportFileID={ImportFileID}" ResponseTransform="Templates/Logging/ImportLog.ImportResult.xslt" > <Steps> <!-- Child Inbound Request--> <Step Name="StatusUpdate" Type="qbo.Service.InboundService.InboundRequest, qbo.Service.InboundService" ReturnType="XmlReader" RequireStream="true" RequestMethod="ImportFile/ImportByObject?Template=FNC.StatusUpdate" ResponseMethod="ImportFile/ImportResultXml?ImportFileID={ImportFileID}" ResponseTransform="Templates/Logging/ImportLog.ImportResult.xslt" />
<!-- Child Outbound Request--> <Step Name="ProductUpdate" Type="qbo.Service.HTTP.HttpExchange, qbo.Service.HTTP" ReturnType="Void" RequestMethod="Valuation/Select?ID={ID}" RequestTransform="Templates/Service/Step.ProductUpdate.Request.xslt" EndPoint="https://stage.quandis.com/Service/Exchange/ServiceOrderService.ashx/SubmitV3"/> </Steps> </Service> The Parent Service entry is "FNCOrder". The purpose is to accept inbound FNC valuation requests from from QDS. It will save a ServiceRequest record in the database with:
Functionally the plug-in is configured to:
The parent service can be accessed by invoking: /Valuation/Valuation.ashx/FNCOrder?ServiceOrderID=x and expects a request stream containing an Xml payload The child Service entry is StatusUpdate. The purpose is to accept inbound FNC status updates from QDS. Functionally it's almost identical to QDS except that:
The child service can be accessed by invoking: /Valuation/Valuation.ashx/FNCOrder/StatusUpdate?ServiceRequestID={ServiceRequestID returned by parent call} and expects a request stream containing an Xml payload Note the child request operation is added after the parent request. Also, the query string contains a reference to the parent ServiceRequestID |