BizTalk アダプター (SQL または WCF-SQL) を使用して、複数レベルの階層スキーマを作成しようとしています。私のクエリはこのようなものです
SELECT
CustomerQueueMessage.customer_queue_ID AS CustomerQueueMsgID,
CustomerMaster.customer_ID AS [CustomerID],
CustomerAddressType.address_type_ID AS [AddressTypeID],
CustomerSalesRep.sales_rep_type_code AS [SalesRepTypeCode]
FROM CustomerQueue AS CustomerQueueMessage
INNER JOIN dbo.MDM_Customer AS CustomerMaster ON (CustomerQueueMessage.customer_queue_ID = CustomerMaster.customer_queue_ID)
INNER JOIN dbo.MDM_CustomerAddressType AS CustomerAddressType ON (CustomerAddressType.customer_queue_ID = CustomerMaster.customer_queue_ID)
INNER JOIN dbo.MDM_CustomerSalesRep AS CustomerSalesRep ON (CustomerSalesRep.customer_queue_ID = CustomerMaster.customer_queue_ID)
FOR XML AUTO, TYPE, ELEMENTS, XMLDATA
SQL アダプターを使用してスキーマを生成すると、この構造が得られます
私が欲しいのは
テーブルCustomerSalesRepはCustomerAddressTypeの下にあります。CustomerSalesRepをCustomerAddressTypeと同じレベルに、両方ともCustomerMasterのすぐ下に配置したいと考えています。
FOR XML ステートメントを削除し、WCF-SQL アダプターを使用してスキーマを生成すると、階層がなくなり、すべての列が同じレベルになります。
何か案は?できれば、WCF-SQL アダプターを使用して実行したいのですが、SQL でも問題ありません。