Download the PHP package quantum3k/erply-sdk without Composer
On this page you can find all versions of the php package quantum3k/erply-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download quantum3k/erply-sdk
More information about quantum3k/erply-sdk
Files in quantum3k/erply-sdk
Informations about the package erply-sdk
ERPLY SDK
1. Структура
Namespace
\ErplySDKточки входа в API\ErplySDK\DTOобъекты данных основного Eply API\ErplySDK\PIMобъекты данных для Erply PIM (🛠️ не завершено)\ErplySDK\Reportsобъекты данных для Reports API (🛠️ не завершено)\ErplySDK\Bulksклассы для работы с пакетными действиями основного API\ErplySDK\Collectionsклассы для работы с коллекциями DTO
2. Использование
Создание соединения:
Основные параметры соединения:
| Параметр | По-умолчанию | Описание |
|---|---|---|
setCode() |
Устанавливает код клиента. | |
setUsername() |
Устанавливает имя пользователя клиента. | |
setPassword() |
Устанавливает пароль клиента. | |
setAttempts() |
3 |
Устанавливает кол-во попыток повторных авторизации в случае завершения сессии во время запроса. |
setSessionLength() |
3600 |
Устанавливает длину сессии в секундах. |
setRecordsOnPage() |
20 |
Устанавливает кол-во записей на страницу. |
setThrow() |
true |
Устанавливает будет ли при вызове API методов выбрасываться исключение с типом \ErplySDK\ApiException, если будет получен ответ с ошибкой от Erply. |
setLogSensitivity() |
[] |
Устанавливает массив типов сообщений для сбора в журнал. Возможное значения: LOG_NOTICE, LOG_ERROR, LOG_DEBUG |
setLogForward() |
Устанавливает обратный вызов для пересылки логов (последовательность получаемых аргументов: $message, $type, $datetime) |
|
getLog() |
Получить записи журнала. Можно указать необязательный параметр для получения конкретного типа записей. | |
hasLog() |
Проверить, содержится ли в журнале записи определенного типа сообщений. |
Как добавлять вложенные элементы в объекты:
Сохранение:
Получение:
Когда объект в ответе реализован от коллекции \ErplySDK\Collections,
то такой объект можно итерировать стандартными средствами PHP,
соединение само будет запрашивать все последующие страницы,
пока не закончится обход всех записей в запросе:
3. Пользовательские запросы
У экземпляра соединения есть два метода которые совершают непосредственный запрос к серверу используя текущее соединение. Ответ на такие запросы всегда будет не типизированный, т.е. ассоциативный массив.
Для стандартных запросов Erply в качестве параметра имени запроса ожидает ключ request,
а для пакетных запросов ожидает ключ requestName, для этого у соединения есть две константы,
которые следует использовать в качестве ключа имени запроса STD_REQ и BULK_REQ.
Стандартный пользовательский запрос:
На такой запрос будет получен не типизированный ответ, т.е. ассоциативный массив.
Пакетный пользовательский запрос:
Также можно отправить пакетный запрос. На такой запрос будет получен не типизированный ответ, т.е. ассоциативный массив.
Пакетный пользовательский запрос (типизированный):
Также можно получить типизированный ответ на пакетный пользовательский запрос. В этом случае все известные вложенные запросы будут инициализированы как коллекции.
⚠️ На данный момент коллекции полученные через пользовательский пакетный запрос не позволяют использовать итерацию записей.
4. Дополнительно
Прямой вызов родительских методов current() и getRecords()
у всех наследников от абстракции BaseEntityCollection нужен для того,
чтобы у детей определить конкретный возвращаемый тип.
5. Roadmap
- Реализовать атрибуты во всех сущностях как отдельные коллекции.
- Реализовать итерацию записей полученную через типизированный пользовательский пакетный запрос.