| |||||||||
目录测试程序中的提交购物车操作会产生以下错误消息:
错误:凭证无效
从 PunchOutOrderMessage (POOM) 中删除具有可选 SupplierID 元素的行。
供应商在 POOM 中包括可选 SupplierID 元素(在 ItemIn 段中)。
在一种情况下,供应商将域设置为 DUNS;但不包含任何值:
<SupplierID domain="DUNS"/>
当包含 SupplierID 元素时,这将覆盖 POOM 中的 From 凭证。
目录测试程序将处理 POOM 并在生成测试 PO 时交换 From/To 凭证上的值。 具体来说,POOM 中的 From 凭证成为 OrderRequest 中的 To 凭证。
因为 SupplierID 覆盖 POOM 中的 From 凭证,所以 OrderRequest (PO) 上的 To 凭证包含一个域/值对,该域/值对取自 SupplierID 中指定的域/值对,其中包含域 DUNS 且值为空。
因此,Ariba Network 采用此错误消息进行响应,因为未在测试 PO 的 From 凭证中指定任何值。
以下是触发此错误的完整 POOM:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cxml.org/schemas/cXML/1.1.020/cXML.dtd">
<cXML payloadID="DD36DA4C-9F99-457E-BA7A-5B7F5BBEE26912345678"
timestamp="2011-05-27T15:46:40.377-04" xml:lang="en">
<Header>
<From>
<Credential domain="NetworkID">
<Identity>AN01000001234-T</Identity>
</Credential>
</From>
<To>
<Credential domain="NetworkID">
<Identity>AN01000005678-T</Identity>
</Credential>
</To>
<Sender>
<Credential domain="NetworkID">
<Identity>AN01000001234-T</Identity>
</Credential>
<UserAgent>My Punchout Site</UserAgent>
</Sender>
</Header>
<Message>
<PunchOutOrderMessage>
<BuyerCookie>FCzfGGzpEFNZS6pvaBNqKK6tiwvROORM0.3262606413456009532</BuyerCookie>
<PunchOutOrderMessageHeader operationAllowed="edit">
<Total>
<Money currency="">3.45</Money>
</Total>
</PunchOutOrderMessageHeader>
<ItemIn quantity="1">
<ItemID>
<SupplierPartID>2865</SupplierPartID>
</ItemID>
<ItemDetail>
<UnitPrice>
<Money currency="USD">3.45</Money>
</UnitPrice>
<Description xml:lang="EN">Business Cards - Ordered by: Jane Smith; Quantity: 250 - Sandbox</Description>
<UnitOfMeasure>BX</UnitOfMeasure>
<Classification domain="UNSPSC">14111604</Classification>
<ManufacturerPartID>2865</ManufacturerPartID>
<ManufacturerName>My Excellent Business Card Company</ManufacturerName>
</ItemDetail>
<SupplierID domain="DUNS"/>
</ItemIn>
</PunchOutOrderMessage>
</Message>
</cXML>
SAP Business Network 采购和供应链 > 目录