cXMLウェブフォームデータ
Release 10より後のバージョンで(Release 11では部分的に)、ウェブフォームデータをcXML発注書で送信できるようになりました。公開としてマークされたウェブフォームフィールドのみがcXML経由で送信されます。以下は、ウェブフォームと関連するフィールドの回答に含まれるデータを解析する方法をサプライヤーに紹介するための文書です。
ItemDetailレベルのフォームの回答が、以下の形式で出力されます。
<Extrinsic name="FORM_NAME"> <Value name="LABEL">VALUE</Value> <Array name="LABEL"> <Value>VALUE</Value> </Array> </Extrinsic>
- 公開フィールドのみがエクスポートされます
- フィールドが配列の場合、配列タグが生成されます。
- フィールドが配列でない場合は、値タグが使用されます。
- 特殊なケース: 外部情報名はItemDetail内で一意である必要があります。FORM_NAMEが発注書のカスタムフィールド名と競合する可能性があります。この場合、名前に1から始まるシーケンス番号が自動的に追加されます。たとえば、「basic_details」が競合する場合、2番目のインスタンスの名前は自動的に「
basic_details1
」に変更されます。
- 以下はcXMLのユーザーガイド、137ページからの引用です。
名前の付いた各外部情報は、OrderRequestHeaderおよび個別のItemOut要素(含まれるItemDetail要素内)に関連付けられたリスト内に1回のみ表示できます。OrderRequestHeaderリストと、ItemOut要素に関連付けられたリストの両方に同じ名前を使用することはできません。同じ外部情報名と値がすべてのItemOutリストで繰り返されている場合、それをOrderRequestHeaderに移動する必要があります。
たとえば、「基本詳細」ウェブフォームのpublic_labelsフィールドが次のデータを返す場合を考えます。
{9=>["Name", "Benjamin", :external], 10=>["Age", "23", :external], 11=>["Gender", "Female", :external], 12=>["Like", ["", "Shrimp", "Fish"], :external], 13=>["Country", "Taiwan", :external], 14=> ["Biography", "Kesera sera\nWhat ever will be will be\nThe future is up to me", :external]}
以下が生成されます。
<Extrinsic name="Basic Details"> <Value name="Name">Benjamin</Value> <Value name="Age">23</Value> <Value name="Gender">Female</Value> <Array name="Like"> <Value></Value> <Value>Shrimp</Value> <Value>Fish</Value> </Array> <Value name="Country">Taiwan</Value> <Value name="Biography">Kesera sera Whatever will be will be The future is up to me</Value> </Extrinsic>