Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
doc:dev:api:flexfield [12.08.2016 19:52]
rlysov [update :: добавление/изменение Гибкого Поля]
doc:dev:api:flexfield [02.06.2018 10:42] (текущий)
Строка 8: Строка 8:
  
 Настроенные Гибкие Поля можно посмотреть в административной консоли в меню "​Настройки"​ -> "​Гибкие поля"​ Настроенные Гибкие Поля можно посмотреть в административной консоли в меню "​Настройки"​ -> "​Гибкие поля"​
 +
 +===== Пример использования Гибких Полей =====
 +
 +Например,​ Вы продаете одежду и настроили для справочника "​Клиенты"​ гибкое поле "​Размер"​. Теперь для каждого клиента возможно указать размер его одежды. Указать значение можно двумя способами.
 +
 +1. **Первый способ** - через административный интерфейс в карточке Клиента (меню Клиенты). В карточке появится новая графа "​Размер",​ в котором можно задать нужное значение
 +
 +2. **Второй способ** - программно через API. Чтобы задать значение гибкого поля через API, необходимо к стандартному [[doc:​dev:​api:​customer|запросу на изменение/​добавление Клиента]] добавить еще один параметр в формате:​ [**ИмяПоля**]=[**Значение**]
 +
 +В качестве **ИмяПоля** можно указать как пользовательское название поля (пример:​ "​Размер"​),​ так и его системное имя: attribute1, .., attribute15. Конкретный номер атрибута для каждого гибкого поля можно посмотреть в административном интерфейсе настройках гибких полей (**Настройки** -> **Гибкие поля** -> **Номер атрибута**)
 +
 +Пример запроса на изменение гибкого поля "​Размер"​ для Клиента с ID=1 через API:
 +
 +[[http://​mycompany.virtpos.ru/​api/​customer/​update?​apikey=MySecret&​id=1&​Размер=XL]]
 +
 +
  
 ===== Функции API для работы с Гибкими Полями ===== ===== Функции API для работы с Гибкими Полями =====
Строка 28: Строка 44:
 Пример запроса на получение списка справочников:​ Пример запроса на получение списка справочников:​
  
- ​http://​mycompany.virtpos.ru/​api/​flexfield/​listTables?​apikey=MySecret&​format=xml+ ​http://​mycompany.virtpos.ru/​api/​flexField/​listTables?​apikey=MySecret&​format=xml
  
 ==== Параметры запроса ==== ==== Параметры запроса ====
Строка 78: Строка 94:
 Пример запроса на получение данных о настроенных Гибких Полях: Пример запроса на получение данных о настроенных Гибких Полях:
  
- ​http://​mycompany.virtpos.ru/​api/​flexfield?​apikey=MySecret&​format=xml+ ​http://​mycompany.virtpos.ru/​api/​flexField?​apikey=MySecret&​format=xml
  
 ==== Параметры запроса ==== ==== Параметры запроса ====
  
-  * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр.+  * **apikey** ​(get или post) - Секретный ключ для доступа к данным. Обязательный параметр.
  
-  * **format** - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр.+  * **format** ​(get only) - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр.
  
-  * **id** - код Гибкого Поля, для которого надо вернуть данные. Если не указан,​ то возвращаются данные обо всех настроенных полях.+  * **id** ​(get only) - код Гибкого Поля, для которого надо вернуть данные. Если не указан,​ то возвращаются данные обо всех настроенных полях.
  
-  * **table_name** - системное название справочника. Если указано,​ то возвращаются поля только для этого справочника+  * **table_name** ​(get only) - системное название справочника. Если указано,​ то возвращаются поля только для этого справочника
  
-  * **name** - название Гибкого Поля. Если указано,​ то возвращаются поля только с таким названием+  * **name** ​(get only) - название Гибкого Поля. Если указано,​ то возвращаются поля только с таким названием
  
 ==== Ответ сервера ==== ==== Ответ сервера ====
Строка 137: Строка 153:
 Пример запроса на изменение данных о гибком поле: Пример запроса на изменение данных о гибком поле:
  
- ​http://​mycompany.virtpos.ru/​api/​flexfield/​update?​apikey=MySecret&​create_if_not_exist=0&​enabled=N+ ​http://​mycompany.virtpos.ru/​api/​flexField/​update?​apikey=MySecret&​create_if_not_exist=0&​enabled=N
  
 ==== Параметры запроса ==== ==== Параметры запроса ====
  
-  * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр.+  * **apikey** ​(get или post) - Секретный ключ для доступа к данным. Обязательный параметр.
  
-  * **format** - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр.+  * **format** ​(get only) - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр.
  
-  * **id** - код товарной группы,​ данные которой надо обновить+  * **id** ​(get only) - код товарной группы,​ данные которой надо обновить
  
-  * **table_name** - системное название таблицы,​ в которой надо изменить (добавить) поле. Используется для однозначной идентификации записи вместе с параметром **name**+  * **table_name** ​(get only) - системное название таблицы,​ в которой надо изменить (добавить) поле. Используется для однозначной идентификации записи вместе с параметром **name**
  
-  * **name** - название гибкого поля, которое надо изменить (добавить). Используется для однозначной идентификации записи вместе с параметром **table_name**+  * **name** ​(get only) - название гибкого поля, которое надо изменить (добавить). Используется для однозначной идентификации записи вместе с параметром **table_name**
  
-  * **create_if_not_exist** - если "​1",​ то при неудачном поиске гибкое поле будет добавлено в систему.+  * **create_if_not_exist** ​(get only) - если "​1",​ то при неудачном поиске гибкое поле будет добавлено в систему.
  
-  * **attr_type** - тип гибкого поля. Принимает значения:​ list (выбор из списка) или text(текстовые данные)+  * **attr_type** ​(get или post) - тип гибкого поля. Принимает значения:​ list (выбор из списка) или text(текстовые данные)
  
-  * **enabled** - признак активно поле или нет. Принимает значения:​ Y (активно) или N (неактивно)+  * **enabled** ​(get или post) - признак активно поле или нет. Принимает значения:​ Y (активно) или N (неактивно)
  
-  * **default_value** - значение по умолчанию+  * **default_value** ​(get или post) - значение по умолчанию
  
-  * **list_values** - список возможных значений гибкого поля. Используется с типом поля list. Список возможных значений передается в виде строки,​ разделенной запятыми. Лишних пробелов быть не должно. Пример:​ "​Да,​Нет,​Возможно"​+  * **list_values** ​(get или post) - список возможных значений гибкого поля. Используется с типом поля list. Список возможных значений передается в виде строки,​ разделенной запятыми. Лишних пробелов быть не должно. Пример:​ "​Да,​Нет,​Возможно"​
  
  
Строка 194: Строка 210:
 Пример запроса на удаление гибкого поля: Пример запроса на удаление гибкого поля:
  
- ​http://​mycompany.virtpos.ru/​api/​flexfield/​delete?​apikey=MySecret&​format=xml&​id=2+ ​http://​mycompany.virtpos.ru/​api/​flexField/​delete?​apikey=MySecret&​format=xml&​id=2
  
 ==== Параметры запроса ==== ==== Параметры запроса ====
  
-  * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр.+  * **apikey** ​(get или post) - Секретный ключ для доступа к данным. Обязательный параметр.
  
-  * **format** - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр.+  * **format** ​(get only) - формат,​ в котором сервер отдаст данные. Может принимать значения "​xml"​ или "​json"​. Необязательный параметр.
  
-  * **id** - идентификатор гибкого поля, которое надо удалить+  * **id** ​(get only) - идентификатор гибкого поля, которое надо удалить
  
-  * **table_name** - системное название таблицы,​ в которой надо удалить поле. Используется для однозначной идентификации записи вместе с параметром **name**+  * **table_name** ​(get only) - системное название таблицы,​ в которой надо удалить поле. Используется для однозначной идентификации записи вместе с параметром **name**
  
-  * **name** - название гибкого поля, которое надо удалить. Используется для однозначной идентификации записи вместе с параметром **table_name**+  * **name** ​(get only) - название гибкого поля, которое надо удалить. Используется для однозначной идентификации записи вместе с параметром **table_name**
  
 ==== Пример ответа ==== ==== Пример ответа ====