Dimitros (обсуждение | вклад) (Удалено перенаправление на Main) Метка: удалено перенаправление |
Dymchenko (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
| − | == Примеры интерфейса для просмотра заказов == | + | ==Примеры интерфейса для просмотра заказов== |
{| border="0" cellpadding="10" cellspacing="0" | {| border="0" cellpadding="10" cellspacing="0" | ||
|- | |- | ||
| − | ! valign="top" | [[Файл:Orders-1.png|500px|thumb|left| Просмотр списка заказов]] | + | ! valign="top" |[[Файл:Orders-1.png|500px|thumb|left| Просмотр списка заказов]] |
| − | ! valign="top" | [[Файл:Orders-2.png|500px|thumb|left| Просмотр позиций выбранного заказа]] | + | ! valign="top" |[[Файл:Orders-2.png|500px|thumb|left| Просмотр позиций выбранного заказа]] |
|} | |} | ||
| − | == Методы == | + | ==Методы== |
| − | Портал может обращаться к вашей 1С через специальный веб-интерфейс (подробнее смотрите тут: http://v8.1c.ru/overview/Term_000000273.htm#1). | + | Портал может обращаться к вашей 1С через специальный веб-интерфейс (подробнее смотрите тут: [http://v8.1c.ru/overview/Term_000000273.htm#1 https://v8.1c.ru/overview/Term_000000273.htm#1]). |
Для организации online-доступа портала к данным по заказам, вам необходимо реализовать в своей системе учета следующие SOAP-методы. | Для организации online-доступа портала к данным по заказам, вам необходимо реализовать в своей системе учета следующие SOAP-методы. | ||
| − | === Общий вид === | + | ===Общий вид=== |
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| − | ! '''Метод''' | + | !'''Метод''' |
| − | ! width=200 | '''Назначение функции''' | + | ! width="200" |'''Назначение функции''' |
| − | ! width=200 | '''Входящие параметры''' | + | ! width="200" |'''Входящие параметры''' |
| − | ! '''Возвращаемые данные''' | + | !'''Возвращаемые данные''' |
|- | |- | ||
| − | ! '''GetListOrders''' | + | !'''GetListOrders''' |
| − | | Получение списка заказов для клиента | + | |Получение списка заказов для клиента |
| − | | Параметры запроса: | + | |Параметры запроса: |
| − | * CodeClient - код клиента, | + | |
| − | * DateStart - начальная дата, | + | *CodeClient - код клиента, |
| − | * DateEnd - конечная дата. | + | *DateStart - начальная дата, |
| + | *DateEnd - конечная дата. | ||
| + | |||
Обе даты являются необязательными параметрами. Если не указана ни одна, то ожидаем получения заказов в работе. | Обе даты являются необязательными параметрами. Если не указана ни одна, то ожидаем получения заказов в работе. | ||
Если указана только одна, то получаются заказы от или до указанной для начальной и конечной даты соответственно. | Если указана только одна, то получаются заказы от или до указанной для начальной и конечной даты соответственно. | ||
| Строка 30: | Строка 32: | ||
| | | | ||
Результатом работы должен являться узел orders содержащий набор объектов типа order следующего вида: | Результатом работы должен являться узел orders содержащий набор объектов типа order следующего вида: | ||
| − | * orderNumber - онлайн-номер (номер заказа в портале), | + | |
| − | * orderCode - номер заказа (номер заказа в 1С) | + | *orderNumber - онлайн-номер (номер заказа в портале), |
| − | * orderDate - дата заказа, | + | *orderCode - номер заказа (номер заказа в 1С) |
| − | * contractName - название клиента, | + | *orderDate - дата заказа, |
| − | * summ - сумма заказа, | + | *contractName - название клиента, |
| − | * status - статус, | + | *summ - сумма заказа, |
| − | * statusCode - код статуса (необязательный), | + | *status - статус, |
| − | * comment - комментарий к заказу, | + | *statusCode - код статуса (необязательный), |
| − | * waybills - набор элементов типа waybill, | + | *comment - комментарий к заказу, |
| − | * invoices - набор элементов типа invoice, | + | *waybills - набор элементов типа waybill, |
| − | * shipments - набор элементов типа shipment. | + | *invoices - набор элементов типа invoice, |
| + | *shipments - набор элементов типа shipment. | ||
| + | |||
Узел waybills должен содержать набор элементов типа waybill следующего вида: | Узел waybills должен содержать набор элементов типа waybill следующего вида: | ||
| − | * waybillNumber - номер накладной, | + | |
| − | * waybillDate - дата накладной. | + | *waybillNumber - номер накладной, |
| + | *waybillDate - дата накладной. | ||
| + | |||
Узел invoices должен содержать набор элементов типа invoice следующего вида: | Узел invoices должен содержать набор элементов типа invoice следующего вида: | ||
| − | * invoiceNumber - номер счёт-фактуры, | + | |
| − | * invoiceDate - дата счёт-фактуры. | + | *invoiceNumber - номер счёт-фактуры, |
| + | *invoiceDate - дата счёт-фактуры. | ||
| + | |||
Узел shipments должен содержать набор элементов типа shipment следующего вида: | Узел shipments должен содержать набор элементов типа shipment следующего вида: | ||
| − | * shipmentNumber - номер отгрузки, | + | |
| − | * shipmentDate - дата отгрузки. | + | *shipmentNumber - номер отгрузки, |
| + | *shipmentDate - дата отгрузки. | ||
|- | |- | ||
| − | ! '''GetListPositions''' | + | !'''GetListPositions''' |
| − | | Получение списка позиций всех заказов для клиента. | + | |Получение списка позиций всех заказов для клиента. |
Данный метод необходимо использовать в случае, когда статус является признаком не заказа в целом, а его отдельных позиций. | Данный метод необходимо использовать в случае, когда статус является признаком не заказа в целом, а его отдельных позиций. | ||
| − | | Параметры запроса: | + | |Параметры запроса: |
| − | * CodeClient - код клиента, | + | |
| − | * DateStart - начальная дата, | + | *CodeClient - код клиента, |
| − | * DateEnd - конечная дата, | + | *DateStart - начальная дата, |
| + | *DateEnd - конечная дата, | ||
| + | |||
Обе даты являются необязательными параметрами. Если не указана ни одна, то ожидаем получения заказов в работе. | Обе даты являются необязательными параметрами. Если не указана ни одна, то ожидаем получения заказов в работе. | ||
Если указана только одна, то получаются заказы от или до указанной для начальной и конечной даты соответственно. | Если указана только одна, то получаются заказы от или до указанной для начальной и конечной даты соответственно. | ||
Дата передается в виде строки ГГГГММДДччммсс, например 20120210000000. Если передается только код клиента, то веб-сервис не должен возвращать все имеющиеся заказы в большом кол-ве. В таком случае, необходимо показывать актуальные заказы для клиента, но не более 100 шт. В противном случае сработает ограничение и заказы не будут показаны. | Дата передается в виде строки ГГГГММДДччммсс, например 20120210000000. Если передается только код клиента, то веб-сервис не должен возвращать все имеющиеся заказы в большом кол-ве. В таком случае, необходимо показывать актуальные заказы для клиента, но не более 100 шт. В противном случае сработает ограничение и заказы не будут показаны. | ||
| − | * ArticleNumber - номер запчасти. Будут отобраны все позиции с указанным номером. | + | |
| − | * OrderCode - фильтр по номеру заказа в 1С. | + | *ArticleNumber - номер запчасти. Будут отобраны все позиции с указанным номером. |
| − | * OrderNumber - фильтр по номеру заказа в портале. | + | *OrderCode - фильтр по номеру заказа в 1С. |
| − | * WaybillNumber - фильтр по номеру накладной. | + | *OrderNumber - фильтр по номеру заказа в портале. |
| − | * Status - статус позиции заказа. | + | *WaybillNumber - фильтр по номеру накладной. |
| + | *Status - статус позиции заказа. | ||
| | | | ||
Результатом работы должен являться узел positions содержащий набор объектов типа position следующего вида: | Результатом работы должен являться узел positions содержащий набор объектов типа position следующего вида: | ||
| − | * orderNumber - онлайн-номер (номер заказа в портале), | + | |
| − | * orderCode - номер заказа (номер заказа в 1С) | + | *orderNumber - онлайн-номер (номер заказа в портале), |
| − | * orderDate - дата заказа, | + | *orderCode - номер заказа (номер заказа в 1С) |
| − | * contractName - название клиента, | + | *orderDate - дата заказа, |
| − | * waybillNumber - номер накладной, | + | *contractName - название клиента, |
| − | * waybillDate - дата накладной, | + | *waybillNumber - номер накладной, |
| − | * invoiceNumber - номер счёт-фактуры, | + | *waybillDate - дата накладной, |
| − | * invoiceDate - дата счёт-фактуры, | + | *invoiceNumber - номер счёт-фактуры, |
| − | * shipmentNumber - номер отгрузки, | + | *invoiceDate - дата счёт-фактуры, |
| − | * shipmentDate - дата отгрузки, | + | *shipmentNumber - номер отгрузки, |
| − | * brand - бренд, | + | *shipmentDate - дата отгрузки, |
| − | * articleNumber - номер (артикул), | + | *brand - бренд, |
| − | * description - описание, | + | *articleNumber - номер (артикул), |
| − | * unit - ед.измерения, | + | *description - описание, |
| − | * quantity - кол-во, | + | *unit - ед.измерения, |
| − | * quantityActual - фактическое кол-во, | + | *quantity - кол-во, |
| − | * pricePerUnit - цена за единицу измерения, | + | *quantityActual - фактическое кол-во, |
| − | * priceWithoutTax - стоимость без налога, | + | *pricePerUnit - цена за единицу измерения, |
| − | * taxRate - налоговая ставка, | + | *priceWithoutTax - стоимость без налога, |
| − | * amountOfTax - сумма налога, | + | *taxRate - налоговая ставка, |
| − | * price - стоимость с учётом налога, | + | *amountOfTax - сумма налога, |
| − | * country - страна производитель, | + | *price - стоимость с учётом налога, |
| − | * customsDeclaration - ГТД, | + | *country - страна производитель, |
| − | * status - статус позиции заказа, | + | *customsDeclaration - ГТД, |
| − | * statusCode - код статуса позиции заказа, | + | *status - статус позиции заказа, |
| − | * deliveryPeriod - срок поставки, | + | *statusCode - код статуса позиции заказа, |
| − | * comment - комментарий к позиции, | + | *deliveryPeriod - срок поставки, |
| − | * supplierDescription - описание поставщика позиции заказа (из настроек маршрута). | + | *comment - комментарий к позиции, |
| + | *supplierDescription - описание поставщика позиции заказа (из настроек маршрута). | ||
|- | |- | ||
| − | ! '''GetListOrdersPos''' | + | !'''GetListOrdersPos''' |
| − | | Получение списка позиций для заказа клиента | + | |Получение списка позиций для заказа клиента |
| − | | Параметры запроса: | + | |Параметры запроса: |
| − | * CodeClient - код клиента, | + | |
| − | * OrderCode - номер заказа в 1С | + | *CodeClient - код клиента, |
| − | | Результатом работы должны быть данные следующего вида: | + | *OrderCode - номер заказа в 1С |
| − | * orderNumber - онлайн-номер (номер заказа в портале), | + | |Результатом работы должны быть данные следующего вида: |
| − | * orderCode - номер заказа (номер заказа в 1С) | + | |
| − | * orderDate - дата заказа, | + | *orderNumber - онлайн-номер (номер заказа в портале), |
| − | * contractName - название клиента, | + | *orderCode - номер заказа (номер заказа в 1С) |
| − | * summ - сумма заказа, | + | *orderDate - дата заказа, |
| − | * status - статус, | + | *contractName - название клиента, |
| − | * statusCode - код статуса (необязательный), | + | *summ - сумма заказа, |
| − | * comment - комментарий к заказу, | + | *status - статус, |
| − | * waybills - набор элементов типа waybill следующего вида: | + | *statusCode - код статуса (необязательный), |
| − | ** waybillNumber - номер накладной, | + | *comment - комментарий к заказу, |
| − | ** waybillDate - дата накладной. | + | *waybills - набор элементов типа waybill следующего вида: |
| − | * invoices - набор элементов типа invoice, следующего вида: | + | **waybillNumber - номер накладной, |
| − | ** invoiceNumber - номер счёт-фактуры, | + | **waybillDate - дата накладной. |
| − | ** invoiceDate - дата счёт-фактуры. | + | *invoices - набор элементов типа invoice, следующего вида: |
| − | * shipments - набор элементов типа shipment следующего вида: | + | **invoiceNumber - номер счёт-фактуры, |
| − | ** shipmentNumber - номер отгрузки, | + | **invoiceDate - дата счёт-фактуры. |
| − | ** shipmentDate - дата отгрузки. | + | *shipments - набор элементов типа shipment следующего вида: |
| − | * positions - набор элементов типа position следующего вида: | + | **shipmentNumber - номер отгрузки, |
| − | ** brand - бренд, | + | **shipmentDate - дата отгрузки. |
| − | ** articleNumber - номер (артикул), | + | *positions - набор элементов типа position следующего вида: |
| − | ** description - описание, | + | **brand - бренд, |
| − | ** unit - ед.измерения, | + | **articleNumber - номер (артикул), |
| − | ** quantity - кол-во, | + | **description - описание, |
| − | ** quantityActual - фактическое кол-во, | + | **unit - ед.измерения, |
| − | ** pricePerUnit - цена за единицу измерения, | + | **quantity - кол-во, |
| − | ** priceWithoutTax - стоимость без налога, | + | **quantityActual - фактическое кол-во, |
| − | ** taxRate - налоговая ставка, | + | **pricePerUnit - цена за единицу измерения, |
| − | ** amountOfTax - сумма налога, | + | **priceWithoutTax - стоимость без налога, |
| − | ** price - стоимость с учётом налога, | + | **taxRate - налоговая ставка, |
| − | ** country - страна производитель, | + | **amountOfTax - сумма налога, |
| − | ** customsDeclaration - ГТД, | + | **price - стоимость с учётом налога, |
| − | ** status - статус позиции заказа, | + | **country - страна производитель, |
| − | ** statusCode - код статуса позиции заказа, | + | **customsDeclaration - ГТД, |
| − | ** deliveryPeriod - срок поставки, | + | **status - статус позиции заказа, |
| − | ** comment - комментарий к позиции, | + | **statusCode - код статуса позиции заказа, |
| − | ** supplierDescription - описание поставщика позиции заказа (из настроек маршрута). | + | **deliveryPeriod - срок поставки, |
| + | **comment - комментарий к позиции, | ||
| + | **supplierDescription - описание поставщика позиции заказа (из настроек маршрута). | ||
|- | |- | ||
| − | ! '''GetListOrdersInvoice''' | + | !'''GetListOrdersInvoice''' |
| − | | Получение списка позиций для счета-фактуры клиента | + | |Получение списка позиций для счета-фактуры клиента |
| − | | Параметры запроса: | + | |Параметры запроса: |
| − | * CodeClient - код клиента, | + | |
| − | * OrderCode - номер заказа в 1С | + | *CodeClient - код клиента, |
| − | * InvoiceNumber - номер счета-фактуры в 1С | + | *OrderCode - номер заказа в 1С |
| − | | Результатом работы должны быть данные следующего формата: | + | *InvoiceNumber - номер счета-фактуры в 1С |
| − | * invoiceNumber - номер счёт-фактуры, | + | |Результатом работы должны быть данные следующего формата: |
| − | * invoiceDate - дата счёт-фактуры, | + | |
| − | * positions - узел, содержащий набор объектов типа position следующего вида: | + | *invoiceNumber - номер счёт-фактуры, |
| − | ** brand - бренд, | + | *invoiceDate - дата счёт-фактуры, |
| − | ** articleNumber - номер (артикул), | + | *positions - узел, содержащий набор объектов типа position следующего вида: |
| − | ** description - описание, | + | **brand - бренд, |
| − | ** unit - ед.измерения, | + | **articleNumber - номер (артикул), |
| − | ** quantity - колво, | + | **description - описание, |
| − | ** pricePerUnit - цена за единицу измерения, | + | **unit - ед.измерения, |
| − | ** priceWithoutTax - стоимость без налога, | + | **quantity - колво, |
| − | ** taxRate - налоговая ставка, | + | **pricePerUnit - цена за единицу измерения, |
| − | ** amountOfTax - сумма налога, | + | **priceWithoutTax - стоимость без налога, |
| − | ** price - стоимость с учётом налога, | + | **taxRate - налоговая ставка, |
| − | ** country - страна производитель, | + | **amountOfTax - сумма налога, |
| − | ** customsDeclaration - ГТД, | + | **price - стоимость с учётом налога, |
| − | ** status - статус позиции заказа, | + | **country - страна производитель, |
| − | ** statusCode - код статуса позиции заказа, | + | **customsDeclaration - ГТД, |
| − | ** deliveryPeriod - срок поставки. | + | **status - статус позиции заказа, |
| + | **statusCode - код статуса позиции заказа, | ||
| + | **deliveryPeriod - срок поставки. | ||
|- | |- | ||
| − | ! '''GetListOrdersShipment''' | + | !'''GetListOrdersShipment''' |
| − | | Получение списка позиций для отгрузки | + | |Получение списка позиций для отгрузки |
| − | | Параметры запроса: | + | |Параметры запроса: |
| − | * CodeClient - код клиента, | + | |
| − | * OrderCode - номер заказа в 1С | + | *CodeClient - код клиента, |
| − | * ShipmentNumber - номер отгрузки в 1С | + | *OrderCode - номер заказа в 1С |
| − | | Результатом работы должны быть данные следующего формата: | + | *ShipmentNumber - номер отгрузки в 1С |
| − | * shipmentNumber - номер отгрузки, | + | |Результатом работы должны быть данные следующего формата: |
| − | * shipmentDate - дата отгрузки, | + | |
| − | * positions - узел, содержащий набор объектов типа position следующего вида: | + | *shipmentNumber - номер отгрузки, |
| − | ** brand - бренд, | + | *shipmentDate - дата отгрузки, |
| − | ** articleNumber - номер (артикул), | + | *positions - узел, содержащий набор объектов типа position следующего вида: |
| − | ** description - описание, | + | **brand - бренд, |
| − | ** unit - ед.измерения, | + | **articleNumber - номер (артикул), |
| − | ** quantity - колво, | + | **description - описание, |
| − | ** pricePerUnit - цена за единицу измерения, | + | **unit - ед.измерения, |
| − | ** priceWithoutTax - стоимость без налога, | + | **quantity - колво, |
| − | ** taxRate - налоговая ставка, | + | **pricePerUnit - цена за единицу измерения, |
| − | ** amountOfTax - сумма налога, | + | **priceWithoutTax - стоимость без налога, |
| − | ** price - стоимость с учётом налога, | + | **taxRate - налоговая ставка, |
| − | ** country - страна производитель, | + | **amountOfTax - сумма налога, |
| − | ** customsDeclaration - ГТД, | + | **price - стоимость с учётом налога, |
| − | ** status - статус позиции заказа, | + | **country - страна производитель, |
| − | ** statusCode - код статуса позиции заказа, | + | **customsDeclaration - ГТД, |
| − | ** deliveryPeriod - срок поставки. | + | **status - статус позиции заказа, |
| + | **statusCode - код статуса позиции заказа, | ||
| + | **deliveryPeriod - срок поставки. | ||
|} | |} | ||
| − | === Техническая информация === | + | ===Техническая информация=== |
Все входящие параметры - текстового типа. | Все входящие параметры - текстового типа. | ||
| − | В целях безопасности рекомендуется ограничить доступность сервиса по IP-адресу и/или закрыть его | + | В целях безопасности рекомендуется ограничить доступность сервиса по IP-адресу и/или закрыть его HTTPS-авторизацией. |
Создать [http://v8.1c.ru/overview/xdto.htm XDTO-пакеты] в 1С можно с помощью импорта следующих схем: | Создать [http://v8.1c.ru/overview/xdto.htm XDTO-пакеты] в 1С можно с помощью импорта следующих схем: | ||
| − | ==== GetListOrders ==== | + | ====GetListOrders==== |
| − | <source lang=xml> | + | <source lang="xml"> |
| − | <xs:schema xmlns:tns="GetListOrdersResult" xmlns:xs=" | + | <xs:schema xmlns:tns="GetListOrdersResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersResult" attributeFormDefault="unqualified" elementFormDefault="qualified"> |
<xs:element name="GetListOrdersResult" type="tns:GetListOrdersResult"/> | <xs:element name="GetListOrdersResult" type="tns:GetListOrdersResult"/> | ||
<xs:complexType name="GetListOrdersResult"> | <xs:complexType name="GetListOrdersResult"> | ||
| Строка 275: | Строка 294: | ||
</source> | </source> | ||
| − | ==== GetListPositions ==== | + | ====GetListPositions==== |
| − | <source lang=xml> | + | <source lang="xml"> |
| − | <xs:schema xmlns:tns="GetListPositionsResult" xmlns:xs=" | + | <xs:schema xmlns:tns="GetListPositionsResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListPositionsResult" attributeFormDefault="unqualified" elementFormDefault="qualified"> |
<xs:element name="GetListPositionsResult" type="tns:GetListPositionsResult"/> | <xs:element name="GetListPositionsResult" type="tns:GetListPositionsResult"/> | ||
<xs:complexType name="GetListPositionsResult"> | <xs:complexType name="GetListPositionsResult"> | ||
| Строка 330: | Строка 349: | ||
</source> | </source> | ||
| − | ==== GetListOrdersPos ==== | + | ====GetListOrdersPos==== |
| − | <source lang=xml> | + | <source lang="xml"> |
| − | <xs:schema xmlns:tns="GetListOrdersPosResult" xmlns:xs=" | + | <xs:schema xmlns:tns="GetListOrdersPosResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersPosResult" attributeFormDefault="unqualified" elementFormDefault="qualified"> |
<xs:element name="GetListOrdersPosResult" type="tns:GetListOrdersPosResult"/> | <xs:element name="GetListOrdersPosResult" type="tns:GetListOrdersPosResult"/> | ||
<xs:complexType name="GetListOrdersPosResult"> | <xs:complexType name="GetListOrdersPosResult"> | ||
| Строка 422: | Строка 441: | ||
</source> | </source> | ||
| − | ==== GetListOrdersInvoice ==== | + | ====GetListOrdersInvoice==== |
| − | <source lang=xml> | + | <source lang="xml"> |
| − | <xs:schema xmlns:tns="GetListOrdersInvoiceResult" xmlns:xs=" | + | <xs:schema xmlns:tns="GetListOrdersInvoiceResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersInvoiceResult" attributeFormDefault="unqualified" elementFormDefault="qualified"> |
<xs:element name="GetListOrdersInvoiceResult" type="tns:GetListOrdersInvoiceResult"/> | <xs:element name="GetListOrdersInvoiceResult" type="tns:GetListOrdersInvoiceResult"/> | ||
<xs:complexType name="GetListOrdersInvoiceResult"> | <xs:complexType name="GetListOrdersInvoiceResult"> | ||
| Строка 464: | Строка 483: | ||
</source> | </source> | ||
| − | ==== GetListOrdersShipment ==== | + | ====GetListOrdersShipment==== |
| − | <source lang=xml> | + | <source lang="xml"> |
| − | <xs:schema xmlns:tns="GetListOrdersShipmentResult" xmlns:xs=" | + | <xs:schema xmlns:tns="GetListOrdersShipmentResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersShipmentResult" attributeFormDefault="unqualified" elementFormDefault="qualified"> |
<xs:element name="GetListOrdersShipmentResult" type="tns:GetListOrdersShipmentResult"/> | <xs:element name="GetListOrdersShipmentResult" type="tns:GetListOrdersShipmentResult"/> | ||
<xs:complexType name="GetListOrdersShipmentResult"> | <xs:complexType name="GetListOrdersShipmentResult"> | ||
| Строка 506: | Строка 525: | ||
</source> | </source> | ||
| − | == Как самостоятельно тестировать разработанные функции? == | + | ==Как самостоятельно тестировать разработанные функции?== |
[[Dataexchange.testing|Инструкция по тестированию]] | [[Dataexchange.testing|Инструкция по тестированию]] | ||
[[Category:Dataexchange]] | [[Category:Dataexchange]] | ||
Текущая версия на 18:19, 28 мая 2025
Содержание
Примеры интерфейса для просмотра заказов
Методы
Портал может обращаться к вашей 1С через специальный веб-интерфейс (подробнее смотрите тут: https://v8.1c.ru/overview/Term_000000273.htm#1). Для организации online-доступа портала к данным по заказам, вам необходимо реализовать в своей системе учета следующие SOAP-методы.
Общий вид
| Метод | Назначение функции | Входящие параметры | Возвращаемые данные |
|---|---|---|---|
| GetListOrders | Получение списка заказов для клиента | Параметры запроса:
Обе даты являются необязательными параметрами. Если не указана ни одна, то ожидаем получения заказов в работе. Если указана только одна, то получаются заказы от или до указанной для начальной и конечной даты соответственно. Дата передается в виде строки ГГГГММДДччммсс, например 20120210000000. Если передается только код клиента, то веб-сервис не должен возвращать все имеющиеся заказы в большом кол-ве. В таком случае, необходимо показывать актуальные заказы для клиента, но не более 100 шт. В противном случае сработает ограничение и заказы не будут показаны. |
Результатом работы должен являться узел orders содержащий набор объектов типа order следующего вида:
Узел waybills должен содержать набор элементов типа waybill следующего вида:
Узел invoices должен содержать набор элементов типа invoice следующего вида:
Узел shipments должен содержать набор элементов типа shipment следующего вида:
|
| GetListPositions | Получение списка позиций всех заказов для клиента.
Данный метод необходимо использовать в случае, когда статус является признаком не заказа в целом, а его отдельных позиций. |
Параметры запроса:
Обе даты являются необязательными параметрами. Если не указана ни одна, то ожидаем получения заказов в работе. Если указана только одна, то получаются заказы от или до указанной для начальной и конечной даты соответственно. Дата передается в виде строки ГГГГММДДччммсс, например 20120210000000. Если передается только код клиента, то веб-сервис не должен возвращать все имеющиеся заказы в большом кол-ве. В таком случае, необходимо показывать актуальные заказы для клиента, но не более 100 шт. В противном случае сработает ограничение и заказы не будут показаны.
|
Результатом работы должен являться узел positions содержащий набор объектов типа position следующего вида:
|
| GetListOrdersPos | Получение списка позиций для заказа клиента | Параметры запроса:
|
Результатом работы должны быть данные следующего вида:
|
| GetListOrdersInvoice | Получение списка позиций для счета-фактуры клиента | Параметры запроса:
|
Результатом работы должны быть данные следующего формата:
|
| GetListOrdersShipment | Получение списка позиций для отгрузки | Параметры запроса:
|
Результатом работы должны быть данные следующего формата:
|
Техническая информация
Все входящие параметры - текстового типа.
В целях безопасности рекомендуется ограничить доступность сервиса по IP-адресу и/или закрыть его HTTPS-авторизацией.
Создать XDTO-пакеты в 1С можно с помощью импорта следующих схем:
GetListOrders
<xs:schema xmlns:tns="GetListOrdersResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersResult" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="GetListOrdersResult" type="tns:GetListOrdersResult"/>
<xs:complexType name="GetListOrdersResult">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="orders" type="tns:order" minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="order">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="orderNumber" type="xs:string"/>
<xs:element name="orderCode" type="xs:string"/>
<xs:element name="orderDate" type="xs:string"/>
<xs:element name="contractName" type="xs:string"/>
<xs:element name="summ" type="xs:string"/>
<xs:element name="statusCode" type="xs:string"/>
<xs:element name="status" type="xs:string"/>
<xs:element name="comment" type="xs:string"/>
<xs:element name="waybills" type="tns:waybill" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="invoices" type="tns:invoice" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="shipments" type="tns:shipment" minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="waybill">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="waybillNumber" type="xs:string"/>
<xs:element name="waybillDate" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="invoice">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="invoiceNumber" type="xs:string"/>
<xs:element name="invoiceDate" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="shipment">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="shipmentNumber" type="xs:string"/>
<xs:element name="shipmentDate" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
GetListPositions
<xs:schema xmlns:tns="GetListPositionsResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListPositionsResult" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="GetListPositionsResult" type="tns:GetListPositionsResult"/>
<xs:complexType name="GetListPositionsResult">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="positions" type="tns:position" minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="position">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="orderNumber" type="xs:string"/>
<xs:element name="orderCode" type="xs:string"/>
<xs:element name="orderDate" type="xs:string"/>
<xs:element name="contractName" type="xs:string"/>
<xs:element name="waybillNumber" type="xs:string"/>
<xs:element name="waybillDate" type="xs:string"/>
<xs:element name="invoiceNumber" type="xs:string"/>
<xs:element name="invoiceDate" type="xs:string"/>
<xs:element name="shipmentNumber" type="xs:string"/>
<xs:element name="shipmentDate" type="xs:string"/>
<xs:element name="statusCode" type="xs:string"/>
<xs:element name="status" type="xs:string"/>
<xs:element name="deliveryPeriod" type="xs:string"/>
<xs:element name="brand" type="xs:string"/>
<xs:element name="articleNumber" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
<xs:element name="unit" type="xs:string"/>
<xs:element name="quantity" type="xs:string"/>
<xs:element name="quantityActual" type="xs:string"/>
<xs:element name="pricePerUnit" type="xs:string"/>
<xs:element name="priceWithoutTax" type="xs:string"/>
<xs:element name="taxRate" type="xs:string"/>
<xs:element name="amountOfTax" type="xs:string"/>
<xs:element name="price" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<xs:element name="customsDeclaration" type="xs:string"/>
<xs:element name="comment" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
GetListOrdersPos
<xs:schema xmlns:tns="GetListOrdersPosResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersPosResult" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="GetListOrdersPosResult" type="tns:GetListOrdersPosResult"/>
<xs:complexType name="GetListOrdersPosResult">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="orderNumber" type="xs:string"/>
<xs:element name="orderCode" type="xs:string"/>
<xs:element name="orderDate" type="xs:string"/>
<xs:element name="contractName" type="xs:string"/>
<xs:element name="summ" type="xs:string"/>
<xs:element name="statusCode" type="xs:string"/>
<xs:element name="status" type="xs:string"/>
<xs:element name="comment" type="xs:string"/>
<xs:element name="waybills" type="tns:waybill" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="invoices" type="tns:invoice" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="shipments" type="tns:shipment" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="positions" type="tns:position" minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="position">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="brand" type="xs:string"/>
<xs:element name="articleNumber" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
<xs:element name="unit" type="xs:string"/>
<xs:element name="quantity" type="xs:string"/>
<xs:element name="quantityActual" type="xs:string"/>
<xs:element name="pricePerUnit" type="xs:string"/>
<xs:element name="priceWithoutTax" type="xs:string"/>
<xs:element name="taxRate" type="xs:string"/>
<xs:element name="amountOfTax" type="xs:string"/>
<xs:element name="price" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<xs:element name="customsDeclaration" type="xs:string"/>
<xs:element name="statusCode" type="xs:string"/>
<xs:element name="status" type="xs:string"/>
<xs:element name="deliveryPeriod" type="xs:string"/>
<xs:element name="comment" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="waybill">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="waybillNumber" type="xs:string"/>
<xs:element name="waybillDate" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="invoice">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="invoiceNumber" type="xs:string"/>
<xs:element name="invoiceDate" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="shipment">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="shipmentNumber" type="xs:string"/>
<xs:element name="shipmentDate" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
GetListOrdersInvoice
<xs:schema xmlns:tns="GetListOrdersInvoiceResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersInvoiceResult" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="GetListOrdersInvoiceResult" type="tns:GetListOrdersInvoiceResult"/>
<xs:complexType name="GetListOrdersInvoiceResult">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="invoiceNumber" type="xs:string"/>
<xs:element name="invoiceDate" type="xs:string"/>
<xs:element name="positions" type="tns:position" minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="position">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="brand" type="xs:string"/>
<xs:element name="articleNumber" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
<xs:element name="unit" type="xs:string"/>
<xs:element name="quantity" type="xs:string"/>
<xs:element name="pricePerUnit" type="xs:string"/>
<xs:element name="priceWithoutTax" type="xs:string"/>
<xs:element name="taxRate" type="xs:string"/>
<xs:element name="amountOfTax" type="xs:string"/>
<xs:element name="price" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<xs:element name="customsDeclaration" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
GetListOrdersShipment
<xs:schema xmlns:tns="GetListOrdersShipmentResult" xmlns:xs="https://www.w3.org/2001/XMLSchema" targetNamespace="GetListOrdersShipmentResult" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="GetListOrdersShipmentResult" type="tns:GetListOrdersShipmentResult"/>
<xs:complexType name="GetListOrdersShipmentResult">
<xs:complexContent>
<xs:extension base="xs:complexType">
<xs:choice>
<xs:element name="shipmentNumber" type="xs:string"/>
<xs:element name="shipmentDate" type="xs:string"/>
<xs:element name="positions" type="tns:position" minOccurs="0" maxOccurs="unbounded"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="position">
<xs:complexContent>
<xs:extension base="xs:complexRestrictionType">
<xs:all>
<xs:element name="brand" type="xs:string"/>
<xs:element name="articleNumber" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
<xs:element name="unit" type="xs:string"/>
<xs:element name="quantity" type="xs:string"/>
<xs:element name="pricePerUnit" type="xs:string"/>
<xs:element name="priceWithoutTax" type="xs:string"/>
<xs:element name="taxRate" type="xs:string"/>
<xs:element name="amountOfTax" type="xs:string"/>
<xs:element name="price" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
<xs:element name="customsDeclaration" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:all>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>