zuve
Batch вызывается только один раз. Перепроверяла проблема действительно не в ней. Дублирующее поле создается при вызове svc=item/update_custom_field.
Код:
include_once('WialonConnection.php');
//****************************Авторизация********************************************
$url = 'hst-api.wialon.com';
$wialon = new WialonConnection( $url );
$ansLoginJson = $wialon -> Login($_REQUEST["login"], $_REQUEST["password"]);
$ansLogin = json_decode( $ansLoginJson, true );
$wialon -> SetSid( $ansLogin[eid] );
//***********************************************************************************
//****************************Получение информации об объекте************************
$answerSearchJson = $wialon -> SearchItemsById( $_REQUEST["id"], "9");
echo $answerSearchJson."<br>";
//***********************************************************************************
//****************************Создание произвольного поля*****************************
echo "----------------------------------------------------------------------------<br>";
$answerCustmoJson = $wialon -> CreateCustomField( $_REQUEST["id"], 'test', 'test' );
echo $answerCustmoJson."<br>";
echo "----------------------------------------------------------------------------<br>";
//***********************************************************************************
//****************************Получение информации об объекте************************
$answerSearchJson = $wialon -> SearchItemsById( $_REQUEST["id"], "9");
echo $answerSearchJson."<br>";
echo "----------------------------------------------------------------------------<br>";
//***********************************************************************************
//Второе произвольное поле создается уже после выполнения этого кода, исходя из ответа сервера
// Функция создания произвольно поля(без каких либо циклов)
function CreateCustomField( $itemId, $nameField, $valueField ){
$url = $this -> url."item/update_custom_field&sid=".$this -> eid;
$params = '{"itemId":'.$itemId.',"id":0,"callMode":"create","n":'.$nameField.',"v":'.$valueField.'}';
$params = 'params='.$params;
$answer = $this -> SendRequest($url, $params);
return $answer;
}
Ответ после выполнения всего этого кода:
{"item":{"nm":"Demo01","cls":2,"id":418506,"flds":{"1":{"id":1,"n":"Статус","v":"Ремонт"},"2":{"id":2,"n":"Клиент","v":"Gurtam"},"3":{"id":3,"n":"Дата прибытия","v":"20.06.2012"},"4":{"id":4,"n":"Пункт разгрузки","v":"Воронеж"},"5":{"id":5,"n":"Водитель","v":"Иванов И.И."},"6":{"id":6,"n":"Номер таможенной декларации","v":"53049793"}},"fldsmax":0,"uacl":551903300195},"flags":9}
----------------------------------------------------------------------------
[7,{"id":7,"n":"test","v":"test"}]
----------------------------------------------------------------------------
{"item":{"nm":"Demo01","cls":2,"id":418506,"flds":{"1":{"id":1,"n":"Статус","v":"Ремонт"},"2":{"id":2,"n":"Клиент","v":"Gurtam"},"3":{"id":3,"n":"Дата прибытия","v":"20.06.2012"},"4":{"id":4,"n":"Пункт разгрузки","v":"Воронеж"},"5":{"id":5,"n":"Водитель","v":"Иванов И.И."},"6":{"id":6,"n":"Номер таможенной декларации","v":"53049793"},"7":{"id":7,"n":"test","v":"test"}},"fldsmax":0,"uacl":551903300195},"flags":9}
----------------------------------------------------------------------------
За время пока я перехожу к произвольным полям объекта появляется еще одно поле с такими же параметрами.
Gurtam Operator
www.gurtam.by