Получение списка контактов из API веб-служб Acumatica с использованием переполнения стека

Я пытаюсь использовать API веб-сервисов Acumatica для получения списка контактов (на самом деле я ищу НИЧЕГО, но контакты — это то, с чем я сейчас играю).

Я успешно смог подключить SoapClient, но не уверен, что именно делать, чтобы вытащить список всех контактов.

0

Решение

Видя, как вы не указали версию Acumatica или веб-сервисы, я предполагаю, что вы пытаетесь использовать «Screen WebAPI», который был в 5.2 и ранее, а не новый «API на основе контракта» в 5.3

Имея это в виду, вот пример того, как установить соединение и получить список всех контактов.

Первым шагом является использование вспомогательного файла acuwsdl2php для генерации необходимых вспомогательных классов экрана для PHP.

В случае контактов:

php acuwsdl2php.php {url of your site}/Soap/CR302000.asmx?WSDL CR302000

Это создаст подпапку CR302000 с файлом Screen.php, который является php-эквивалентом схемы для экрана.

Во-вторых, вот пример класса, который получает контактную информацию

<?php
require_once('AcumaticaGate.php');

$client = new AcumaticaGate('{user}', '{password}', 'CR302000','{site}/Soap/');
$Contact_summary = $client->Schema->GetSchemaResult->ContactSummary;
$Contact_detailsummary = $client->Schema->GetSchemaResult->DetailsSummary;

$every_Contact = $Contact_summary->ServiceCommands->EveryContactID;
$Contact       = $Contact_summary->ContactID;
$Contact_fname  = $Contact_detailsummary->FirstName;
$Contact_lname  = $Contact_detailsummary->LastName;

$export_param = new Export();
$export_param->commands       = array($every_Contact, $Contact, $Contact_fname, $Contact_lname);
$export_param->filters        = array();
$export_param->breakOnError   = false;
$export_param->includeHeaders = true;
$export_param->topCount       = 0;

$export = $client->Client->Export($export_param);
print_r(var_dump($export));

Вывод здесь примерно такой:

  [177]=>
object(stdClass)#562 (1) {
["string"]=>
array(3) {
[0]=>
string(3) "358"[1]=>
string(4) "Anna"[2]=>
string(7) "Johnson"}
}
[178]=>
object(stdClass)#563 (1) {
["string"]=>
array(3) {
[0]=>
string(3) "359"[1]=>
string(4) "Yona"[2]=>
string(5) "Jones"}
}

Файлы acuwsdl2php и AcumaticaGate являются вспомогательными файлами, которые Acumatica предоставляет партнерам. Они также могут быть доступны на клиентском портале для загрузки. Быстрый Google для них, хотя, и я считаю, что вы можете найти их на нескольких публичных сайтах.

Как примечание, эти вспомогательные файлы были изначально написаны для 4.x. Вам следует обратиться к руководствам 5.x (при условии, что у вас есть 5.x) для получения дополнительной информации о выходе из webapi по завершении вызова.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector