機械翻訳について

cXML-1-2-007-InvoiceDetailRequest-In

このセクションでは、cXML-1-2-007-InvoiceDetailRequest-Inメッセージ定義のデータ・マッピングおよびサンプル・ペイロードの概要を示します。

データ・マッピング

XSDファイルにアクセスするには、追加情報のためにメッセージ変換パッケージをエクスポートします。 請求書ヘッダーをマッピングすると、この表で説明されているように、InvoiceInterfaceHeaderに1行、InvoiceInterfaceLineに0行以上が作成されます。

ノート:

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます。 たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、4つのInvoiceInterfaceLinesが作成され、それぞれLineGroupNumber 1、2、3および4となります。

請求書ヘッダー・マッピング

インタフェース

ペイロードおよび処理ルール

XSLファイルに指定された値

InvoiceInterfaceHeader

InvoiceInterfaceHeaderに1行ずつ請求書ごとに作成されます

該当なし

該当なし

Source

該当なし

B2B XML請求書

VendorId

購買オーダーから導出

該当なし

VendorSiteId

購買オーダーから導出

該当なし

説明

/InvoiceDetailRequest/InvoiceDetailRequestHeader/Comments

該当なし

InvoiceAmount

ペイロードに存在する場合はInvoiceDetailRequest/InvoiceDetailSummary/DueAmount/Money、存在しない場合は/InvoiceDetailRequest/InvoiceDetailSummary/NetAmount/Moneyをマップ

該当なし

InvoiceCurrencyCode

このフィールドには、定義済みのDVMが使用されています。

/InvoiceDetailRequest/InvoiceDetailSummary/DueAmount/Money/@currency

ペイロードに存在する場合は、それ以外の場合はマップします。

InvoiceDetailRequest/InvoiceDetailSummary/NetAmount/Money/@currency

該当なし

InvoiceDate

/InvoiceDetailRequest/InvoiceDetailRequestHeader/@invoiceDate

該当なし

InvoiceNumber

/InvoiceDetailRequest/InvoiceDetailRequestHeader/@invoiceID

該当なし

InvoiceTypeLookupCode

ノート: この値はXSLで設定され、InvoiceAmountが負の場合は"InvoiceTypeLookupCode"がCREDITに設定されます。それ以外の場合は、STANDARDに設定されます。

標準またはクレジット

LegalEntityId

購買オーダーから導出

該当なし

ShipToLocation

/InvoiceDetailRequest/InvoiceDetailRequestHeader/Extrinsic[@name='SHIPTOPARTNRIDX']

該当なし

B2BProgramName

該当なし

AP_INV_B2B_SOA

InvoiceInterfaceLine

該当なし

該当なし

InvoiceInterfaceLine with LineTypeLookupCode=FREIGHT

/InvoiceDetailRequest/InvoiceDetailSummary/ShippingAmountが存在する場合は、請求書に対してLineTypeLookupCode=FREIGHTのInvoiceInterfaceLineが1つ作成されます。

該当なし

金額

/InvoiceDetailRequest/InvoiceDetailSummary/ShippingAmount/Money

該当なし

InvoiceInterfaceLine with LineTypeLookupCode=MISCELLANEOUS

/InvoiceDetailRequest/InvoiceDetailSummary/SpecialHandlingAmountが存在する場合は、請求書に対してLineTypeLookupCode=MISCELLANEOUSのInvoiceInterfaceLineが1つ作成されます。

MISCELLANEOUS

金額

/InvoiceDetailRequest/InvoiceDetailSummary/SpecialHandlingAmount/Money

該当なし

InvoiceInterfaceLine with LineTypeLookupCode=TAX

税金が行レベルで指定されていない場合、LineTypeLookupCode=TAXのInvoiceInterfaceLineがTaxDetailごとに作成されます。これにより、InvoiceDetailRequest/InvoiceDetailSummary/Tax/TaxDetail要素ごとに1つずつ、複数のInvoiceInterfaceLinesが作成される可能性があります。

TAX

金額

/InvoiceDetailRequest/InvoiceDetailSummary/Tax/TaxDetail/TaxAmount/Money

該当なし

InvoiceInterfaceLine with LineTypeLookupCode=TAX

税金が明細レベルで指定されておらず、TaxDetailがヘッダー・レベルで指定されていない場合(/InvoiceDetailRequest/InvoiceDetailSummary/Tax/Amount/Moneyに値がある場合)、LineTypeLookupCode=TAXが指定されたInvoiceInterfaceLineが請求書に対して作成されます。

TAX

金額

InvoiceDetailRequest/InvoiceDetailSummary/Tax/Money

該当なし

請求書明細マッピング

請求書明細マッピングでは、InvoiceInterfaceLineに多数の行(品目に1行ずつ)が作成され、XMLファイルに存在する税金、運送費および手数料要素ごとに0個以上の行が作成されます。

請求書明細は、InvoiceDetailRequest/InvoiceDetailOrderまたはInvoiceDetailRequest/InvoiceDetailHeaderOrderで表されます。

InvoiceDetailOrderマッピング

InvoiceInterfaceLine

ペイロードおよび処理ルール

XSLファイルに指定された値

InvoiceInterfaceLine where LineTypeLookupCode = ITEM

該当なし

ITEM

金額

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailItem/NetAmount/Money

ペイロードに存在する場合は、それ以外の場合はマップします。

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailItem/SubtotalAmount/Money

該当なし

LineGroupNumber

LineGroupNumberは、InvoiceDetailItem要素と親InvoiceDetailOrder要素の配列位置から導出されます。

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

1.n

PONumber

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailOrderInfo/OrderIDInfo/@orderID

ペイロードに存在する場合は、それ以外の場合はマップします。

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailOrderInfo/OrderReference/@orderID

該当なし

POLineNumber

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailItem/InvoiceDetailItemReference/@lineNumber

該当なし

POShipmentNumber

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailItem/Extrinsic[@name='SCHLINENUM']

該当なし

InvoicedQuantity

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailItem/@quantity

該当なし

UnitOfMeasLookupCode

このフィールドには、定義済みのDVMが使用されています。

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailItem/UnitOfMeasure

該当なし

LineLookupCode

該当なし

TAX

金額

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailOrderSummary/Tax/Money

これは、行にTaxDetailが指定されていない場合にのみマップされます。 InvoiceDetailOrderがペイロード内にある場合も、同じマッピングが適用されます。

該当なし

LineGroupNumber

親InvoiceDetailItemの行グループ番号は、InvoiceDetailItemのすべてのTaxDetail行に割り当てられます

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

該当なし

LineLookupCode

該当なし

TAX

金額

/InvoiceDetailRequest/InvoiceDetailOrder/InvoiceDetailOrderSummary/Tax/TaxDetail/ TaxAmount/Money

InvoiceDetailOrderには、これらの行の数が多くなる場合があります。

該当なし

LineGroupNumber

親InvoiceDetailItemの行グループ番号は、InvoiceDetailItemのすべてのTaxDetail行に割り当てられます

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

該当なし

InvoiceDetailHeaderOrderマッピング

InvoiceDetailRequest/InvoiceDetailOrderが存在しない場合、請求書明細はInvoiceDetailRequest/InvoiceDetailHeaderOrderで表されます。

InvoiceInterfaceLine

XSLファイルの値

InvoiceInterfaceLine where LineTypeLookupCode =ITEM

該当なし

ITEM

金額

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderSummary/NetAmount/Money

ペイロードに存在する場合は、それ以外の場合はマップします。

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderSummary/SubtotalAmount/Money

該当なし

LineGroupNumber

LineGroupNumberは、InvoiceDetailHeaderOrder要素の配列位置に基づいて移入されます。

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

1.n

PONumber

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderInfo/OrderIDInfo/@orderID

ペイロードに存在する場合は、それ以外の場合はマップします。

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderInfo/OrderReference/@orderID

該当なし

InvoiceInterfaceLine where LineTypeLookupCode = TAX

該当なし

TAX

金額

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderSummary/Tax/Money

これは、行にTaxDetailが指定されていない場合にのみマップされます。 InvoiceDetailHeaderOrderがペイロード内にある場合も、同じマッピングが適用されます。

該当なし

LineGroupNumber

親InvoiceDetaillHeaderOrderの行グループ番号は、InvoiceDetailHeaderOrderのすべてのTaxDetail行に割り当てられます。

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

該当なし

InvoiceInterfaceLine where LineTypeLookupCode = TAX

該当なし

TAX

金額

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderSummary/Tax/TaxDetail/ TaxAmount/Money

InvoiceDetailHeaderOrderには、これらの行の多くが作成されている場合があります。

該当なし

LineGroupNumber

親InvoiceDetaillHeaderOrderの行グループ番号は、InvoiceDetailHeaderOrderのすべてのTaxDetail行に割り当てられます。

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

該当なし

InvoiceInterfaceLine where LineTypeLookupCode = TAX

該当なし

TAX

金額

/InvoiceDetailRequest/InvoiceDetailHeaderOrder/InvoiceDetailOrderSummary/Tax/TaxDetail/ TaxAmount/Money

InvoiceDetailHeaderOrderには、これらの行の多くが作成されている場合があります。

該当なし

LineGroupNumber

親InvoiceDetaillHeaderOrderの行グループ番号は、InvoiceDetailHeaderOrderのすべてのTaxDetail行に割り当てられます

InvoiceDetailOrder要素を持つ請求書明細の場合はLineGroupNumber: cXMLメッセージでは、1つの請求書に多数のInvoiceDetailOrdersを含めることができ、各InvoiceDetailOrderには多数のInvoiceDetailItem要素を含めることができます - たとえば、2つのInvoiceDetailOrder要素があり、それぞれに2つのInvoiceDetailItemが含まれている場合、それぞれLineGroupNumber 1、2、3および4で4つのInvoiceInterfaceLinesが作成されます。

該当なし

サンプル・ペイロード

サンプル・ペイロードを次に示します:

<cXML xmlns:xml="http://www.w3.org/XML/1998/namespace" timestamp="2004-01-31T16:23:01-07:00" payloadID="1233444-2004@OSN.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <Header>
      <From>
         <Credential domain="DUNS">
            <Identity>11111111</Identity>
         </Credential>
      </From>
      <To>
         <Credential domain="DUNS">
            <Identity>222222222</Identity>
         </Credential>
      </To>
      <Sender>
         <Credential domain="OracleSN">
            <Identity>SellerIdentity</Identity>
            <SharedSecret>welcome</SharedSecret>
         </Credential>
         <UserAgent>Oracle Supplier Network</UserAgent>
      </Sender>
   </Header>
   <Request>
      <InvoiceDetailRequest>
         <InvoiceDetailRequestHeader invoiceID="Invoice-1234" purpose="creditMemo" invoiceDate="2020-09-21T01:00:00Z">
            <InvoiceDetailHeaderIndicator />
            <InvoiceDetailLineIndicator />
            <InvoicePartner>
               <Contact role="ShipTo" addressID="">
                  <Name xml:lang="en-US">Bill To Contact Name</Name>
                  <PostalAddress>
                     <Street>831 Cape Town Place Street</Street>
                     <City>San Jose City</City>
                     <State>CA State</State>
                     <PostalCode>95133</PostalCode>
                     <Country isoCountryCode="US">Bill United States Country</Country>
                  </PostalAddress>
               </Contact>
            </InvoicePartner>
            <InvoicePartner>
               <Contact role="remitTo">
                  <Name xml:lang="en-us">VendorSiteName</Name>
               </Contact>
            </InvoicePartner>
            <InvoicePartner>
               <Contact role="billTo">
                  <Name xml:lang="en-us">VendorSiteName</Name>
               </Contact>
            </InvoicePartner>
            <Comments xml:lang="en-US">Header Comments</Comments>
            <Extrinsic name="SHIPTOPARTNRIDX">ShipToLocation</Extrinsic>
         </InvoiceDetailRequestHeader>
         <InvoiceDetailOrder>
            <InvoiceDetailOrderInfo>
               <OrderReference orderID="1005037">
                  <DocumentReference payloadID="" />
               </OrderReference>
               <MasterAgreementReference>
                  <DocumentReference payloadID="" />
               </MasterAgreementReference>
               <OrderIDInfo orderID="1005041">
                  <!-- If OrderIDInfo element is here, we map its value. If not, we map OrderReference/@orderID. If both are there, this takes precedence-->
               </OrderIDInfo>
            </InvoiceDetailOrderInfo>
            <InvoiceDetailItem invoiceLineNumber="1" quantity="500">
               <UnitOfMeasure>Each</UnitOfMeasure>
               <UnitPrice>
                  <Money currency="USD">56.00</Money>
               </UnitPrice>
               <InvoiceDetailItemReference lineNumber="1">
                  <ItemID>
                     <SupplierPartID>RCV-100</SupplierPartID>
                  </ItemID>
               </InvoiceDetailItemReference>
               <SubtotalAmount>
                  <Money currency="USD">456.00</Money>
               </SubtotalAmount>
               <Tax>
                  <!-- If this block -InvoiceDetailItem/Tax- is present, we don't map InvoiceDetailSummary/Tax>-->
                  <Money currency="USD">542</Money>
                  <TaxDetail category="">
                     <!-- If TaxDetail is here, we map taxAmount/Money from there. If not, map Tax/Money. If both are there, this takes precedence-->
                     <TaxAmount>
                        <Money currency="USD">2</Money>
                     </TaxAmount>
                  </TaxDetail>
                  <!-- added 2nd TaxDetail block to payload -->
                  <!--<TaxDetail category="">
                     <TaxAmount>
                        <Money currency="USD">3</Money>
                     </TaxAmount>
                  </TaxDetail> -->
               </Tax>
               <NetAmount>
                  <!-- If this block is here, we map NetAmount/Money. If not, map SubtotalAmount/Money. If both are there, this takes precedence-->
                  <Money currency="USD">123.00</Money>
               </NetAmount>
               <Extrinsic name="SCHLINENUM">1</Extrinsic>
            </InvoiceDetailItem>
         </InvoiceDetailOrder>
         <InvoiceDetailSummary>
            <SubtotalAmount>
               <Money currency="Each">123.00</Money>
            </SubtotalAmount>
            <Tax>
               <Money currency="USD">542</Money>
               <Description xml:lang="en">total tax</Description>
               <TaxDetail category="">
                  <!-- If TaxDetail is here, we map taxAmount/Money from there. If not, map Tax/Money. If both are there, this takes precedence-->
                  <TaxAmount>
                     <Money currency="USD">215</Money>
                  </TaxAmount>
               </TaxDetail>
               <!-- added 2nd TaxDetail block to payload -->
               <!-- <TaxDetail category="">
                  <TaxAmount>
                     <Money currency="XYZ">152</Money>
                  </TaxAmount>
               </TaxDetail>-->
            </Tax>
            <SpecialHandlingAmount>
               <Money currency="USD">654</Money>
            </SpecialHandlingAmount>
            <ShippingAmount>
               <Money currency="USD">321</Money>
            </ShippingAmount>
            <NetAmount>
               <Money currency="CAD">-24.39</Money>
            </NetAmount>
            <DueAmount>
               <Money currency="USD">435.00</Money>
               <!-- If this has a value, we map that. If not, map NetAmount/Money. If both are there, this takes precedence-->
            </DueAmount>
         </InvoiceDetailSummary>
      </InvoiceDetailRequest>
   </Request>
</cXML>