私はマイクロソフト コマース サーバーを使用していますが、最近 xml Web サービスの使用方法を学びました。「updateitems」メソッドを使用して一部の製品を更新する必要があります。
SOAP エンベロープは次のようになります。
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<UpdateItems xmlns="http://schemas.microsoft.com/CommerceServer/2006/06/CatalogWebService">
<catalogName>string</catalogName>
<searchClause>string</searchClause>
<propertyName>string</propertyName>
<replacementValue />
<classTypes>None or CategoryClass or ProductVariantClass or ProductClass or ProductFamilyClass or ProductFamilyForVariantsClass or ProductVariantsForFamilyClass or AllClassTypesClass</classTypes>
<language>string</language>
</UpdateItems>
</soap:Body>
</soap:Envelope>
nuSoap を使用した私のリクエストは次のようになります。
$client = new nusoap_client($wsdl, TRUE);
$client->setCredentials('', '', 'ntlm');
$client->setUseCurl(true);
$client->useHTTPPersistentConnection();
$client->setCurlOption(CURLOPT_USERPWD, *);
$m = array(
'catalogName' => 'cat',
'propertyName => 'itemdesc',
'replacementValue' => 'somevalue'
);
$resp = ($client->call('UpdateItems', $m));
私が理解していないのはsearchClauseです。テーブルまたは列の名前がわかりません。機密データを扱っているため、試行錯誤でテストしたくありません。検索句で「ProductID = 159999」のようなことをしたいのですが、それがありません。