Различия

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

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

3_асп.склад_wms:сборка_выгрузка:описание_сервисов_сборка [2022/07/04 18:57]
127.0.0.1 внешнее изменение
3_асп.склад_wms:сборка_выгрузка:описание_сервисов_сборка [2023/06/28 14:52] (текущий)
l.khorokhorina
Строка 1: Строка 1:
 ==== ПроверитьПодключение ==== ==== ПроверитьПодключение ====
 +
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для проверки соединения с АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для проверки соединения с АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
  
-**Возвращаемое значение:​** ​+**Возвращаемое значение:​** 
   * Если подключение прошло успешно,​ возвращает значение "​Подключено"​.   * Если подключение прошло успешно,​ возвращает значение "​Подключено"​.
 +
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере + 
-Процедура ПроверитьПодключениеНаСервере() +&​НаСервере Процедура ПроверитьПодключениеНаСервере() ​ Прокси = ПолучитьПрокси(); ​ Результат = Прокси.ПроверитьПодключение(); ​ Сообщить(Результат);​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
- Прокси = ПолучитьПрокси();​ +
- Результат = Прокси.ПроверитьПодключение();​ +
- Сообщить(Результат);​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml checkConnect.xml>​+ 
 +<code xml checkConnect.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 31: Строка 31:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml checkConnectResponse.xml>​+ 
 +<code xml checkConnectResponse.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 45: Строка 47:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
- 
- 
- 
  
 ==== СоздатьНоменклатуру ==== ==== СоздатьНоменклатуру ====
 +
 ++++Описание ++++Описание
 | |
-**Назначение:​** Операция предназначена для выгрузки и обновления номенклатуры из учетной системы в АСП Сборка. + 
 +**Назначение:​** Операция предназначена для выгрузки и обновления номенклатуры из учетной системы в АСП.Склад WMS.
  
 В случае если выгружаемая номенклатура уже есть в сборке,​ она будет обновлена. Если нет возможности выгрузить некоторые поля из учетной системы,​ их можно заполнить в сборке. При редактировании номенклатуры в сборке может возникнуть диалоговое окно, предлагающее запретить редактирование номенклатуры из учетной системы. С момента подтверждения запрета редактирования номенклатуре присваивается статус "​РучнаяКорректировка"​ (Запрет изменения) и редактирование номенклатуры при выгрузке в Сборку будет заблокировано. Для того чтобы обратно включить редактирование необходимо нажать кнопку "​Запрет изменения"​ в карточке номенклатуры. В случае если выгружаемая номенклатура уже есть в сборке,​ она будет обновлена. Если нет возможности выгрузить некоторые поля из учетной системы,​ их можно заполнить в сборке. При редактировании номенклатуры в сборке может возникнуть диалоговое окно, предлагающее запретить редактирование номенклатуры из учетной системы. С момента подтверждения запрета редактирования номенклатуре присваивается статус "​РучнаяКорректировка"​ (Запрет изменения) и редактирование номенклатуры при выгрузке в Сборку будет заблокировано. Для того чтобы обратно включить редактирование необходимо нажать кнопку "​Запрет изменения"​ в карточке номенклатуры.
  
-При выгрузке документов новая номенклатура будет создаваться автоматически,​ однако,​ если не передавать при выгрузке ГУИД подкатегории и единицу хранения,​ перед регистрацией документа нужно сопоставить номенклатуру в Сборке+При выгрузке документов новая номенклатура будет создаваться автоматически,​ однако,​ если не передавать при выгрузке ГУИД подкатегории и единицу хранения,​ перед регистрацией документа нужно сопоставить номенклатуру в АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
 +
   * Номенклатура (Тип: [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​Номенклатура|Номенклатура]])   * Номенклатура (Тип: [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​Номенклатура|Номенклатура]])
  
-**Возвращаемое значение:​** ​+**Возвращаемое значение:​** 
   * Строка,​ описывающая результат загрузки. В случае успешной загрузки будет выведено сообщение:​ "​Номенклатура загружена:​ {Наименование номенклатуры}"​. Иначе, в ответе будет указана причина отказа.   * Строка,​ описывающая результат загрузки. В случае успешной загрузки будет выведено сообщение:​ "​Номенклатура загружена:​ {Наименование номенклатуры}"​. Иначе, в ответе будет указана причина отказа.
  
 ++++ ++++
 +
 ++++Пример вызова 1С ++++Пример вызова 1С
 | |
 +
 <1c> <1c>
-Процедура ВыгрузитьНоменклатуруНаСервере() 
- Прокси = ПолучитьПрокси();​ 
- Фабрика = Прокси.ФабрикаXDTO;​ 
-  
- Запрос = Новый Запрос;​ 
- Запрос.Текст =  
- "​ВЫБРАТЬ 
- | Номенклатура.Ссылка 
- |ИЗ 
- | Справочник.Номенклатура КАК Номенклатура 
- |ГДЕ 
- | (&​ВсяНоменклатура 
- | ИЛИ Номенклатура.Ссылка В ИЕРАРХИИ (&​Номенклатура)) 
- | И НЕ Номенклатура.ЭтоГруппа";​ 
-  
- Запрос.УстановитьПараметр("​Номенклатура",​ Номенклатура);​ 
- Запрос.УстановитьПараметр("​ВсяНоменклатура",​ НЕ ЗначениеЗаполнено(Номенклатура));​ 
- Выборка = Запрос.Выполнить().Выбрать();​ 
-  
- Пока Выборка.Следующий() Цикл 
- Результат = Прокси.СоздатьНоменклатуру(СформироватьНоменклатуру(Выборка.Ссылка,​Фабрика));​ 
- Сообщить(Результат);​ 
- КонецЦикла;​ 
  
-КонецПроцедуры +Процедура ВыгрузитьНоменклатуруНаСервере() Прокси = ПолучитьПрокси();​ Фабрика = Прокси.ФабрикаXDTO;​ Запрос = Новый Запрос;​ Запрос.Текст =  "​ВЫБРАТЬ | Номенклатура.Ссылка |ИЗ | Справочник.Номенклатура КАК Номенклатура |ГДЕ | (&​ВсяНоменклатура | ИЛИ Номенклатура.Ссылка В ИЕРАРХИИ (&​Номенклатура)) | И НЕ Номенклатура.ЭтоГруппа";​ Запрос.УстановитьПараметр("​Номенклатура",​ Номенклатура);​ Запрос.УстановитьПараметр("​ВсяНоменклатура",​ НЕ ЗначениеЗаполнено(Номенклатура));​ Выборка = Запрос.Выполнить().Выбрать();​ Пока Выборка.Следующий() Цикл Результат = Прокси.СоздатьНоменклатуру(СформироватьНоменклатуру(Выборка.Ссылка,​Фабрика));​ Сообщить(Результат);​ КонецЦикла;  ​КонецПроцедуры </​1c>​++++++++Пример вызова XML
-</1c> +
-++++ +
-++++Пример вызова XML+
 | |
-<file xml createProduct.xml>​+ 
 +<code xml createProduct.xml>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
     <​soap-env:​Body>​     <​soap-env:​Body>​
Строка 155: Строка 136:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml createProductResponse.xml>​+ 
 +<code xml createProductResponse.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 169: Строка 152:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ==== СоздатьКонтрагента ==== ==== СоздатьКонтрагента ====
 +
 ++++Описание ++++Описание
 | |
-**Назначение:​** Выполняет загрузку контрагентов в АСП Сборку.+ 
 +**Назначение:​** Выполняет загрузку контрагентов в АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
 +
   * Контрагент (Тип: [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​контрагент|Контрагент]]);​   * Контрагент (Тип: [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​контрагент|Контрагент]]);​
  
-**Возвращаемое значение:​** ​ +**Возвращаемое значение:​** Строка,​ описывающая результат загрузки. В случае успешной загрузки будет выведено сообщение:​ "​Контрагент загружен:​ {Наименование контрагента}"​. Иначе, в ответе будет указана причина отказа.
-Строка,​ описывающая результат загрузки. В случае успешной загрузки будет выведено сообщение:​ "​Контрагент загружен:​ {Наименование контрагента}"​. Иначе, в ответе будет указана причина отказа.+
  
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-Процедура ВыгрузитьКонтрагентаНаСервере() 
-    Прокси = ПолучитьПрокси();​ 
-    Фабрика = Прокси.ФабрикаXDTO;​ 
  
-    Запрос = Новый Запрос;​ +Процедура ВыгрузитьКонтрагентаНаСервере() ​    ​Прокси = ПолучитьПрокси(); ​    ​Фабрика = Прокси.ФабрикаXDTO; ​     ​Запрос = Новый Запрос; ​    ​Запрос.Текст =          "​ВЫБРАТЬ ​        ​| Контрагенты.Ссылка ​        ​|ИЗ         ​| Справочник.Контрагенты КАК Контрагенты ​        ​|ГДЕ ​        ​| Контрагенты.Ссылка В ИЕРАРХИИ(&​Контрагент) ​        ​| И НЕ Контрагенты.ЭтоГруппа"; ​         Запрос.УстановитьПараметр("​Контрагент",​ Контрагент);​      Выборка = Запрос.Выполнить().Выбрать(); ​         Пока Выборка.Следующий() Цикл ​        ​Контрагент = СформироватьКонтрагента(Выборка.Ссылка,​Фабрика); ​        ​Если ТипЗнч(Контрагент) = Тип("​Строка"​) Тогда ​            ​Сообщить(Контрагент); ​            ​Продолжить; ​        ​КонецЕсли;​          Результат = Прокси.СоздатьКонтрагента(Контрагент); ​    ​КонецЦикла;​  КонецПроцедуры </​1c>​++++++++Пример вызова XML
-    ​Запрос.Текст =  +
-        ​"​ВЫБРАТЬ +
-        ​| Контрагенты.Ссылка +
-        ​|ИЗ +
-        ​| Справочник.Контрагенты КАК Контрагенты +
-        ​|ГДЕ +
-        ​| Контрагенты.Ссылка В ИЕРАРХИИ(&​Контрагент) +
-        ​| И НЕ Контрагенты.ЭтоГруппа";​ +
-     +
-    ​Запрос.УстановитьПараметр("​Контрагент",​ Контрагент);​  +
-    ​Выборка = Запрос.Выполнить().Выбрать();​ +
-     +
-    ​Пока Выборка.Следующий() Цикл +
-        ​Контрагент = СформироватьКонтрагента(Выборка.Ссылка,​Фабрика);​ +
-        ​Если ТипЗнч(Контрагент) = Тип("​Строка"​) Тогда +
-            ​Сообщить(Контрагент);​ +
-            ​Продолжить;​ +
-        ​КонецЕсли;​  +
-        ​Результат = Прокси.СоздатьКонтрагента(Контрагент);​ +
-    ​КонецЦикла;​  +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createAgent.xml>​+ 
 +<code xml createAgent.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 230: Строка 192:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml createAgentResponse.xml>​+ 
 +<code xml createAgentResponse.xml>​
 soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 244: Строка 208:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== СоздатьУпаковку====+==== СоздатьУпаковку ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Выполняет загрузку упаковок в АСП.Сборку.+ 
 +**Назначение:​** Выполняет загрузку упаковок в АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
-    * Упаковка(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|Упаковка]]);​ 
  
-**Возвращаемое значение:​** ​+  * Упаковка(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|Упаковка]]);​ 
 + 
 +**Возвращаемое значение:​** 
   * Строка,​ описывающая результат загрузки. В случае успешной загрузки будет выведено сообщение:​ «Упаковка загружена:​ {Наименование упаковки}». Иначе, в ответе будет указана причина отказа.   * Строка,​ описывающая результат загрузки. В случае успешной загрузки будет выведено сообщение:​ «Упаковка загружена:​ {Наименование упаковки}». Иначе, в ответе будет указана причина отказа.
 +
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере 
-Процедура ВыгрузитьУпаковкуНаСервере() 
-    Прокси = ПолучитьПрокси();​ 
-    Фабрика = Прокси.ФабрикаXDTO;​ 
  
-    Запрос = Новый Запрос;​ +&​НаСервере Процедура ВыгрузитьУпаковкуНаСервере() ​    ​Прокси = ПолучитьПрокси(); ​    ​Фабрика = Прокси.ФабрикаXDTO; ​     ​Запрос = Новый Запрос; ​    ​Запрос.Текст =          "​ВЫБРАТЬ ​        ​| Упаковки.Ссылка ​        ​|ИЗ         ​| Справочник.УпаковкиЕдиницыИзмерения КАК Упаковки; ​         Выборка = Запрос.Выполнить().Выбрать(); ​         Пока Выборка.Следующий() Цикл ​        ​Упаковка = СформироватьУпаковку(Выборка.Ссылка,​Фабрика); ​        ​Если ТипЗнч(Упаковка) = Тип("​Строка"​) Тогда ​            ​Сообщить(Упаковка); ​            ​Продолжить; ​        ​КонецЕсли;​          Результат = Прокси.СоздатьУпаковку(Упаковка); ​    ​КонецЦикла;​  КонецПроцедуры </​1c>​++++++++Пример вызова XML
-    ​Запрос.Текст =  +
-        ​"​ВЫБРАТЬ +
-        ​| Упаковки.Ссылка +
-        ​|ИЗ +
-        ​| Справочник.УпаковкиЕдиницыИзмерения КАК Упаковки;​ +
-     +
-    ​Выборка = Запрос.Выполнить().Выбрать();​ +
-     +
-    ​Пока Выборка.Следующий() Цикл +
-        ​Упаковка = СформироватьУпаковку(Выборка.Ссылка,​Фабрика);​ +
-        ​Если ТипЗнч(Упаковка) = Тип("​Строка"​) Тогда +
-            ​Сообщить(Упаковка);​ +
-            ​Продолжить;​ +
-        ​КонецЕсли;​  +
-        ​Результат = Прокси.СоздатьУпаковку(Упаковка);​ +
-    ​КонецЦикла;​  +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createPackage.xml>​+ 
 +<code xml createPackage.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 301: Строка 250:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeСreatePackage.xml>​+ 
 +<code xml resposeСreatePackage.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 315: Строка 266:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
-==== ЗагрузитьДокументы====+ 
 +==== ЗагрузитьДокументы ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Выполняет загрузку массива документов в АСП Сборку+ 
 +**Назначение:​** Выполняет загрузку массива документов в АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
 +
   * СписокДокументов(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​Документ|СписокДокументов]]) - структура,​ содержащая массив обрабатываемых документов и параметры загрузки;​   * СписокДокументов(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​Документ|СписокДокументов]]) - структура,​ содержащая массив обрабатываемых документов и параметры загрузки;​
   * ОбновлятьПодчиненные (Тип: boolean) - если параметр принимает значение Истина,​ функция будет обновлять вложенные данные заполненные в документе;​   * ОбновлятьПодчиненные (Тип: boolean) - если параметр принимает значение Истина,​ функция будет обновлять вложенные данные заполненные в документе;​
   * МобильноеУстройство(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|МобильноеУстройство]]) - мобильное устройство,​ куда распределяется сборка.   * МобильноеУстройство(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|МобильноеУстройство]]) - мобильное устройство,​ куда распределяется сборка.
  
-**Возвращаемое значение:​** ​+**Возвращаемое значение:​** 
   * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов загрузки документов.   * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов загрузки документов.
  
 ++++ ++++
 +
 ++++Пример вызова 1С ++++Пример вызова 1С
 | |
 +
 <1c> <1c>
-Процедура ГрупповаяОбработкаДокументов() 
- Прокси = ПолучитьПрокси();​ 
- Фабрика = Прокси.ФабрикаXDTO;​ 
-  
- СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​СписокДокументов"​));​ 
-  
-     ​хМобильноеУстройство = Неопределено;​  
- Если ЗначениеЗаполнено(МобильныеУстройства) Тогда  
- МобУстройства = СтрРазбить(МобильныеУстройства,":"​);​ 
- хМобильноеУстройство = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​МобильноеУстройство"​));​ 
- хМобильноеУстройство.Наименование = МобУстройства[0];​ 
- хМобильноеУстройство.Код = МобУстройства[1];​ 
- КонецЕсли;​ 
  
- КоличествоВыгружено = 0; +Процедура ГрупповаяОбработкаДокументов() ​ Прокси = ПолучитьПрокси();​ Фабрика = Прокси.ФабрикаXDTO;​ СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​СписокДокументов"​));​       хМобильноеУстройство = Неопределено;​ Если ЗначениеЗаполнено(МобильныеУстройства) Тогда МобУстройства = СтрРазбить(МобильныеУстройства,":"​);​ хМобильноеУстройство = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​МобильноеУстройство"​));​ хМобильноеУстройство.Наименование = МобУстройства[0];​ хМобильноеУстройство.Код = МобУстройства[1];​ КонецЕсли; ​ КоличествоВыгружено = 0;  Для Каждого Стр Из ТаблицаДок Цикл ​ Если НЕ Стр.Выбран Тогда ​ Продолжить; ​ КонецЕсли;​ Док = СформироватьДокумент(Стр.Ссылка,​ Фабрика); ​ Если Док <> Неопределено Тогда ​  СписокДокументов.МассивДокументов.Добавить(Док); ​ КоличествоВыгружено = КоличествоВыгружено + 1;  КонецЕсли; ​ КонецЦикла; ​ Если СписокДокументов.МассивДокументов.Количество()>​0 Тогда ​  ДанныеОтвета = Прокси.ЗагрузитьДокументы(СписокДокументов,​ Ложь, хМобильноеУстройство); ​ Сообщить("​Отправлено на выгрузку документов:​ "​+КоличествоВыгружено); ​ РазобратьОтвет(ДанныеОтвета); ​ КонецЕсли;​  КонецПроцедуры </​1c>​++++++++Пример разбора ответа 1С 
- Для Каждого Стр Из ТаблицаДок Цикл +|<​1c>​ 
- Если НЕ Стр.Выбран Тогда +Процедура РазобратьОтвет(ДанныеОтвета) ТаблицаРезультатов = Новый ТаблицаЗначений;​ ТаблицаРезультатов.Колонки.Добавить("​ТипДокумента"​);​ ТаблицаРезультатов.Колонки.Добавить("​Документ"​);​ ТаблицаРезультатов.Колонки.Добавить("​Результат"​);​ Для Каждого Ответ Из ДанныеОтвета.МассивРезультатов Цикл ​         НовРез = ТаблицаРезультатов.Добавить();​ НовРез.ТипДокумента = ТекущееСоответствие.Сборка;​ НовРез.Документ = НайтиДокумент(Ответ.Документ,​ ТекущееСоответствие);​ НовРез.Результат = Ответ.РезультатТранзакции;​ КонецЦикла;​ ТаблицаРезультатов.Сортировать("​ТипДокумента"​);​ Обработка = РеквизитФормыВЗначение("​Объект"​);​ Макет = Обработка.ПолучитьМакет("​Макет"​);​ ШапкаТД = Макет.ПолучитьОбласть("​Шапка"​);​ ГруппаДок = Макет.ПолучитьОбласть("​ГруппаДокументов"​);​ СтрокаДок = Макет.ПолучитьОбласть("​СтрокаДокумент"​);​ ТД.Очистить();​ ШапкаТД.Параметры.ТипОбъекта = "​Документ";​ ТД.Вывести(ШапкаТД);​ ТД.НачатьАвтогруппировкуСтрок();​ ТекТип = "";​ ПараметрыОтбора = Новый Структура;​ ПараметрыОтбора.Вставить("​ТипДокумента"​);​ Для Каждого Рез Из ТаблицаРезультатов Цикл Если ТекТип <> Рез.ТипДокумента Тогда ТекТип = Рез.ТипДокумента;​ ГруппаДок.Параметры.Заполнить(Рез);​ ГруппаДок.Параметры.ТипДокумента = ТипВСборке(Рез.ТипДокумента);​ ПараметрыОтбора.ТипДокумента = Рез.ТипДокумента;​ ГруппаДок.Параметры.КоличествоЗагружено = ТаблицаРезультатов.НайтиСтроки(ПараметрыОтбора).Количество();​ ТД.Вывести(ГруппаДок,​1);​ КонецЕсли;​ СтрокаДок.Параметры.Заполнить(Рез);​ ТД.Вывести(СтрокаДок);​ КонецЦикла;​ ТД.ЗакончитьАвтогруппировкуСтрок();​ ТД.ТолькоПросмотр = Истина;​ КонецПроцедуры ​ Функция НайтиДокумент(ДокументХ,​ ТипДокументаСтрокой) Запрос = Новый Запрос;​ Запрос.Текст =  "​ВЫБРАТЬ | ТипДок.Ссылка |ИЗ | Документ.#​ТипДок#​ КАК ТипДок |ГДЕ | ТипДок.Номер ПОДОБНО &​Номер | И НАЧАЛОПЕРИОДА(ТипДок.Дата,​ ДЕНЬ) = НАЧАЛОПЕРИОДА(&​Дата,​ ДЕНЬ)";​ Запрос.УстановитьПараметр("​Дата",​ ДокументХ.Дата);​ Запрос.УстановитьПараметр("​Номер",​ "​%"​+СокрЛП(ДокументХ.Номер)+"​%"​);​ Запрос.Текст = СтрЗаменить(Запрос.Текст,"#​ТипДок#",​СтрЗаменить(ТипДокументаСтрокой,"​ ",""​));​ Выборка = Запрос.Выполнить().Выбрать();​ Если Выборка.Следующий() Тогда ​ Возврат Выборка.Ссылка;​ Иначе ​ Возврат Документы[СтрЗаменить(ТипДокументаСтрокой,"​ ",""​)].ПустаяСсылка();​ КонецЕсли;​ КонецФункции ​ </​1c>​++++++++Пример вызова XML
- Продолжить;​ +
- КонецЕсли;​  +
- Док = СформироватьДокумент(Стр.Ссылка,​ Фабрика);​ +
- Если Док <> Неопределено Тогда ​ +
- СписокДокументов.МассивДокументов.Добавить(Док);​ +
- КоличествоВыгружено = КоличествоВыгружено + 1; +
- КонецЕсли;​ +
- КонецЦикла;​ +
-  +
- Если СписокДокументов.МассивДокументов.Количество()>​0 Тогда ​  +
- ДанныеОтвета = Прокси.ЗагрузитьДокументы(СписокДокументов,​ Ложь, хМобильноеУстройство);​ +
- Сообщить("​Отправлено на выгрузку документов:​ "​+КоличествоВыгружено);​ +
- РазобратьОтвет(ДанныеОтвета);​ +
- КонецЕсли;​  +
-КонецПроцедуры +
-</1c> +
-++++ +
-++++Пример разбора ответа 1С+
 | |
-<1c> 
-Процедура РазобратьОтвет(ДанныеОтвета) 
-  
- ТаблицаРезультатов = Новый ТаблицаЗначений;​ 
- ТаблицаРезультатов.Колонки.Добавить("​ТипДокумента"​);​ 
- ТаблицаРезультатов.Колонки.Добавить("​Документ"​);​ 
- ТаблицаРезультатов.Колонки.Добавить("​Результат"​);​ 
-  
- Для Каждого Ответ Из ДанныеОтвета.МассивРезультатов Цикл ​ 
-         НовРез = ТаблицаРезультатов.Добавить();​ 
- НовРез.ТипДокумента = ТекущееСоответствие.Сборка;​ 
- НовРез.Документ = НайтиДокумент(Ответ.Документ,​ ТекущееСоответствие);​ 
- НовРез.Результат = Ответ.РезультатТранзакции;​ 
- КонецЦикла;​ 
-  
- ТаблицаРезультатов.Сортировать("​ТипДокумента"​);​ 
- Обработка = РеквизитФормыВЗначение("​Объект"​);​  
- Макет = Обработка.ПолучитьМакет("​Макет"​);​ 
- ШапкаТД = Макет.ПолучитьОбласть("​Шапка"​);​ 
- ГруппаДок = Макет.ПолучитьОбласть("​ГруппаДокументов"​);​ 
- СтрокаДок = Макет.ПолучитьОбласть("​СтрокаДокумент"​);​ 
-  
- ТД.Очистить();​ 
- ШапкаТД.Параметры.ТипОбъекта = "​Документ";​ 
- ТД.Вывести(ШапкаТД);​ 
- ТД.НачатьАвтогруппировкуСтрок();​ 
-  
- ТекТип = "";​ 
- ПараметрыОтбора = Новый Структура;​ 
- ПараметрыОтбора.Вставить("​ТипДокумента"​);​ 
- Для Каждого Рез Из ТаблицаРезультатов Цикл 
- Если ТекТип <> Рез.ТипДокумента Тогда 
- ТекТип = Рез.ТипДокумента;​ 
- ГруппаДок.Параметры.Заполнить(Рез);​ 
- ГруппаДок.Параметры.ТипДокумента = ТипВСборке(Рез.ТипДокумента);​ 
- ПараметрыОтбора.ТипДокумента = Рез.ТипДокумента;​ 
- ГруппаДок.Параметры.КоличествоЗагружено = ТаблицаРезультатов.НайтиСтроки(ПараметрыОтбора).Количество();​ 
- ТД.Вывести(ГруппаДок,​1);​ 
- КонецЕсли;​ 
- СтрокаДок.Параметры.Заполнить(Рез);​ 
- ТД.Вывести(СтрокаДок);​ 
- КонецЦикла;​ 
-  
- ТД.ЗакончитьАвтогруппировкуСтрок();​ 
- ТД.ТолькоПросмотр = Истина;​ 
-КонецПроцедуры 
  
-Функция НайтиДокумент(ДокументХ,​ ТипДокументаСтрокой) +<code xml createDownloadDocuments.xml>​
- Запрос = Новый Запрос;​ +
- Запрос.Текст =  +
- "​ВЫБРАТЬ +
- | ТипДок.Ссылка +
- |ИЗ +
- | Документ.#​ТипДок#​ КАК ТипДок +
- |ГДЕ +
- | ТипДок.Номер ПОДОБНО &​Номер +
- | И НАЧАЛОПЕРИОДА(ТипДок.Дата,​ ДЕНЬ) = НАЧАЛОПЕРИОДА(&​Дата,​ ДЕНЬ)";​ +
-  +
- Запрос.УстановитьПараметр("​Дата",​ ДокументХ.Дата);​ +
- Запрос.УстановитьПараметр("​Номер",​ "​%"​+СокрЛП(ДокументХ.Номер)+"​%"​);​ +
- Запрос.Текст = СтрЗаменить(Запрос.Текст,"#​ТипДок#",​СтрЗаменить(ТипДокументаСтрокой,"​ ",""​));​ +
-  +
- Выборка = Запрос.Выполнить().Выбрать();​ +
- Если Выборка.Следующий() Тогда  +
- Возврат Выборка.Ссылка;​ +
- Иначе  +
- Возврат Документы[СтрЗаменить(ТипДокументаСтрокой,"​ ",""​)].ПустаяСсылка();​ +
- КонецЕсли;​ +
-КонецФункции +
- +
-</1c> +
-++++ +
-++++Пример вызова XML +
-+
-<​file ​xml createDownloadDocuments.xml>​+
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
   <​soap-env:​Body>​   <​soap-env:​Body>​
Строка 624: Строка 479:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateDownloadDocuments.xml>​+ 
 +<code xml resposeCreateDownloadDocuments.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 811: Строка 668:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== ПолучитьДокументыЗаказНаСборку====+==== ПолучитьДокументыЗаказНаСборку ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для получения документов сборки у которых не установлена галочка выгружен в 1С со статусом частичная или полная из АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для получения документов сборки у которых не установлена галочка выгружен в 1С со статусом частичная или полная из АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
  
-**Возвращаемое значение:​**  +**Возвращаемое значение:​** 
-  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Сборка.+ 
 +  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Склад WMS. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере 
-Процедура ВернутьИзСборщика() 
- Прокси = ПолучитьПрокси();​ 
- Результат = Прокси.ПолучитьДокументыЗаказНаСборку();​ 
- Если Результат<>​ Неопределено Тогда 
- КоличествоЗагруженно = 0; 
- Для каждого ДокХДТО Из Результат.МассивРезультатов Цикл 
-  
- Документ = Документы.АСП_ЗаказНаСборку.НайтиПоНомеру(ДокХДТО.Документ.Номер,​ ДокХДТО.Документ.Дата);​ 
- Если Документ.Пустая() Тогда 
- ДокСсылка = Документы.АСП_ЗаказНаСборку.СоздатьДокумент();​ 
- ДокСсылка.Дата = ДокХДТО.Документ.Дата;​ 
- ДокСсылка.Номер = ДокХДТО.Документ.Номер;​ 
- Иначе 
- ДокСсылка = Документ.ПолучитьОбъект();​ 
- КонецЕсли;​ 
-  
- ДокСсылка.Склад = Справочники.Склады.НайтиПоКоду(СокрЛП(ДокХДТО.Документ.Склад.Код));​  
-  
- Если ПустаяСтрока(ДокХДТО.Документ.Организация.ИНН) Тогда ​ 
- ДокСсылка.Организация = Справочники.Организации.НайтиПоКоду(ДокХДТО.Документ.Организация.Код);​ 
- Иначе ​ 
- ДокСсылка.Организация = Справочники.Организации.НайтиПоРеквизиту("​ИНН",​ ДокХДТО.Документ.Организация.ИНН);​ 
- КонецЕсли;​ 
-  
- СообщениеСтатуса = "";​ 
- ПеречСтатус = ПолучитьСтатусСборки(ДокХДТО.Документ.Статус); ​ 
- Если ТипЗнч(ПеречСтатус) <> Тип("​Строка"​) Тогда 
- ДокСсылка.СтатусСборки = ПеречСтатус;​ 
- Иначе 
- СообщениеСтатуса = ("​Документ №"+ ДокСсылка.Номер+ " загружен без статуса. "+ ПеречСтатус);​ 
- КонецЕсли;​ 
-  
- ДокСсылка.Товары.Очистить();​  
- Для каждого СтрокиТЧ Из ДокХДТО.Документ.Товары Цикл 
- НовСтр = ДокСсылка.Товары.Добавить();​ 
- ЗаполнитьЗначенияСвойств(НовСтр,​СтрокиТЧ);​ 
- НовСтр.Номенклатура = ​ Справочники.Номенклатура.НайтиПоКоду(СокрЛП(СтрокиТЧ.Номенклатура.Код));​  
- Если НовСтр.Номенклатура.Пустая() Тогда ​ 
- Сообщить("​Номенклатура по данному коду "+ СокрЛП(СтрокиТЧ.Номенклатура.Код)+ " не обнаружена"​);​ 
- Продолжить; ​ 
- КонецЕсли;​ 
- НовСтр.ЕдиницаИзмерения = ​ Справочники.ЕдиницыИзмерения.НайтиПоКоду(СокрЛП(СтрокиТЧ.Упаковка.КодЗагрузки));​ 
- НовСтр.Производитель = ​ Справочники.Организации.НайтиПоКоду(СокрЛП(СтрокиТЧ.Производитель.Код));​  
-  
- НомерЗаказаСборки = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Номер,​СтрЗаменить(СтрокиТЧ.Заказ.Номер,"​З_",""​));​ 
- ДатаЗаказаСборка ​ = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Дата,​СтрокиТЧ.Заказ.Дата);​ 
- НовСтр.Заказ  ​ =  Документы[ТекущееСоответствие.База].НайтиПоНомеру(НомерЗаказаСборки,​ ДатаЗаказаСборка);​ 
- Если Не ЗначениеЗаполнено(НовСтр.Заказ) Тогда 
- Сообщить("​Заказ не указан в заказе на сборку №"+ СокрЛП(ДокХДТО.Документ.Номер));​ 
- Продолжить;​ 
- КонецЕсли;​ 
  
- Если НовСтр.Заказ <> Неопределено И Не НовСтр.Заказ.Пустая() Тогда +&​НаСервере Процедура ВернутьИзСборщика() Прокси = ПолучитьПрокси();​ Результат = Прокси.ПолучитьДокументыЗаказНаСборку();​ Если Результат<>​ Неопределено Тогда КоличествоЗагруженно = 0; Для каждого ДокХДТО Из Результат.МассивРезультатов Цикл Документ = Документы.АСП_ЗаказНаСборку.НайтиПоНомеру(ДокХДТО.Документ.Номер,​ ДокХДТО.Документ.Дата);​ Если Документ.Пустая() Тогда ​ ДокСсылка = Документы.АСП_ЗаказНаСборку.СоздатьДокумент();​ ДокСсылка.Дата = ДокХДТО.Документ.Дата;​ ДокСсылка.Номер = ДокХДТО.Документ.Номер;​ Иначе ДокСсылка = Документ.ПолучитьОбъект();​ КонецЕсли;​ ДокСсылка.Склад = Справочники.Склады.НайтиПоКоду(СокрЛП(ДокХДТО.Документ.Склад.Код));​ Если ПустаяСтрока(ДокХДТО.Документ.Организация.ИНН) Тогда ​ ДокСсылка.Организация = Справочники.Организации.НайтиПоКоду(ДокХДТО.Документ.Организация.Код);​ Иначе ​ ДокСсылка.Организация = Справочники.Организации.НайтиПоРеквизиту("​ИНН",​ ДокХДТО.Документ.Организация.ИНН);​ КонецЕсли;​ СообщениеСтатуса = "";​ ПеречСтатус = ПолучитьСтатусСборки(ДокХДТО.Документ.Статус); ​ Если ТипЗнч(ПеречСтатус) <> Тип("​Строка"​) Тогда ДокСсылка.СтатусСборки = ПеречСтатус;​ Иначе СообщениеСтатуса = ("​Документ №"+ ДокСсылка.Номер+ " загружен без статуса. "+ ПеречСтатус);​ КонецЕсли;​ ДокСсылка.Товары.Очистить();​ Для каждого СтрокиТЧ Из ДокХДТО.Документ.Товары Цикл НовСтр = ДокСсылка.Товары.Добавить();​ ЗаполнитьЗначенияСвойств(НовСтр,​СтрокиТЧ);​ НовСтр.Номенклатура = ​ Справочники.Номенклатура.НайтиПоКоду(СокрЛП(СтрокиТЧ.Номенклатура.Код));​ Если НовСтр.Номенклатура.Пустая() Тогда ​ Сообщить("​Номенклатура по данному коду "+ СокрЛП(СтрокиТЧ.Номенклатура.Код)+ " не обнаружена"​);​ Продолжить; ​ КонецЕсли;​ НовСтр.ЕдиницаИзмерения = ​ Справочники.ЕдиницыИзмерения.НайтиПоКоду(СокрЛП(СтрокиТЧ.Упаковка.КодЗагрузки));​ НовСтр.Производитель = ​ Справочники.Организации.НайтиПоКоду(СокрЛП(СтрокиТЧ.Производитель.Код));​ НомерЗаказаСборки = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Номер,​СтрЗаменить(СтрокиТЧ.Заказ.Номер,"​З_",""​));​ ДатаЗаказаСборка ​ = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Дата,​СтрокиТЧ.Заказ.Дата);​ НовСтр.Заказ  ​ =  Документы[ТекущееСоответствие.База].НайтиПоНомеру(НомерЗаказаСборки,​ ДатаЗаказаСборка);​ Если Не ЗначениеЗаполнено(НовСтр.Заказ) Тогда Сообщить("​Заказ не указан в заказе на сборку №"+ СокрЛП(ДокХДТО.Документ.Номер));​ Продолжить;​ КонецЕсли; ​ Если НовСтр.Заказ <> Неопределено И Не НовСтр.Заказ.Пустая() Тогда ​ УстановитьСтатус(НовСтр.Заказ,​ДокСсылка.СтатусСборки);​   КонецЕсли; ​ КонецЦикла;​  ​ Если ДокСсылка.Товары.Количество()>​ 0 Тогда ​ ДокСсылка.Записать(); ​ КонецЕсли; ​ Если Не ДокСсылка.Ссылка.Пустая() Тогда ​  КоличествоЗагруженно = КоличествоЗагруженно + 1;  Если ДокХДТО.Документ <> Неопределено Тогда ​  СписокДокументов.МассивДокументов.Добавить(ДокХДТО.Документ); ​ КонецЕсли; ​ КонецЕсли; ​ СтрокаДок.Параметры.Документ = Строка(ДокСсылка); ​ СтрокаДок.Параметры.Результат = Строка(ДокХДТО.РезультатТранзакции) + " " + СообщениеСтатуса; ​ ТД.Вывести(СтрокаДок); ​ КонецЦикла;​ КонецЕсли;​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
- УстановитьСтатус(НовСтр.Заказ,​ДокСсылка.СтатусСборки);​  +
- КонецЕсли;​ +
- КонецЦикла;​  +
-  +
- Если ДокСсылка.Товары.Количество()>​ 0 Тогда +
- ДокСсылка.Записать();​ +
- КонецЕсли;​ +
- Если Не ДокСсылка.Ссылка.Пустая() Тогда ​ +
- КоличествоЗагруженно = КоличествоЗагруженно + 1; +
- Если ДокХДТО.Документ <> Неопределено Тогда ​  +
- СписокДокументов.МассивДокументов.Добавить(ДокХДТО.Документ);​ +
- КонецЕсли;​ +
- КонецЕсли;​ +
-  +
- СтрокаДок.Параметры.Документ = Строка(ДокСсылка);​ +
- СтрокаДок.Параметры.Результат = Строка(ДокХДТО.РезультатТранзакции) + " " + СообщениеСтатуса;​ +
- ТД.Вывести(СтрокаДок);​ +
- КонецЦикла;​  +
- КонецЕсли;​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createTakeAssembly.xml>​+ 
 +<code xml createTakeAssembly.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 914: Строка 704:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateTakeAssembly.xml>​+ 
 +<code xml resposeCreateTakeAssembly.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 1117: Строка 909:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== ПолучитьДокументыЗаказНаСборку2====+==== ПолучитьДокументыЗаказНаСборку2 ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для получения документов сборки которые зарегистрированы планом обмена из АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для получения документов сборки которые зарегистрированы планом обмена из АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
-  ​*КодУзла(Тип:​ string) - код узла плана обмена "​УчетнаяСистема"​ в котором регистрируются изменения документов. + 
-**Возвращаемое значение:​**  +  ​* КодУзла(Тип:​ string) - код узла плана обмена "​УчетнаяСистема"​ в котором регистрируются изменения документов. 
-  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Сборка.+ 
 +**Возвращаемое значение:​** 
 + 
 +  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Склад WMS. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере 
-Процедура ВернутьИзСборщика2() 
- Прокси = ПолучитьПрокси();​ 
- Результат = Прокси.ПолучитьДокументыЗаказНаСборку2("​П6"​);​ 
- Если Результат<>​ Неопределено Тогда 
- КоличествоЗагруженно = 0; 
- Для каждого ДокХДТО Из Результат.МассивРезультатов Цикл 
-  
- Документ = Документы.АСП_ЗаказНаСборку.НайтиПоНомеру(ДокХДТО.Документ.Номер,​ ДокХДТО.Документ.Дата);​ 
- Если Документ.Пустая() Тогда 
- ДокСсылка = Документы.АСП_ЗаказНаСборку.СоздатьДокумент();​ 
- ДокСсылка.Дата = ДокХДТО.Документ.Дата;​ 
- ДокСсылка.Номер = ДокХДТО.Документ.Номер;​ 
- Иначе 
- ДокСсылка = Документ.ПолучитьОбъект();​ 
- КонецЕсли;​ 
-  
- ДокСсылка.Склад = Справочники.Склады.НайтиПоКоду(СокрЛП(ДокХДТО.Документ.Склад.Код));​  
-  
- Если ПустаяСтрока(ДокХДТО.Документ.Организация.ИНН) Тогда ​ 
- ДокСсылка.Организация = Справочники.Организации.НайтиПоКоду(ДокХДТО.Документ.Организация.Код);​ 
- Иначе ​ 
- ДокСсылка.Организация = Справочники.Организации.НайтиПоРеквизиту("​ИНН",​ ДокХДТО.Документ.Организация.ИНН);​ 
- КонецЕсли;​ 
-  
- СообщениеСтатуса = "";​ 
- ПеречСтатус = ПолучитьСтатусСборки(ДокХДТО.Документ.Статус); ​ 
- Если ТипЗнч(ПеречСтатус) <> Тип("​Строка"​) Тогда 
- ДокСсылка.СтатусСборки = ПеречСтатус;​ 
- Иначе 
- СообщениеСтатуса = ("​Документ №"+ ДокСсылка.Номер+ " загружен без статуса. "+ ПеречСтатус);​ 
- КонецЕсли;​ 
-  
- ДокСсылка.Товары.Очистить();​  
- Для каждого СтрокиТЧ Из ДокХДТО.Документ.Товары Цикл 
- НовСтр = ДокСсылка.Товары.Добавить();​ 
- ЗаполнитьЗначенияСвойств(НовСтр,​СтрокиТЧ);​ 
- НовСтр.Номенклатура = ​ Справочники.Номенклатура.НайтиПоКоду(СокрЛП(СтрокиТЧ.Номенклатура.Код));​  
- Если НовСтр.Номенклатура.Пустая() Тогда ​ 
- Сообщить("​Номенклатура по данному коду "+ СокрЛП(СтрокиТЧ.Номенклатура.Код)+ " не обнаружена"​);​ 
- Продолжить; ​ 
- КонецЕсли;​ 
- НовСтр.ЕдиницаИзмерения = ​ Справочники.ЕдиницыИзмерения.НайтиПоКоду(СокрЛП(СтрокиТЧ.Упаковка.КодЗагрузки));​ 
- НовСтр.Производитель = ​ Справочники.Организации.НайтиПоКоду(СокрЛП(СтрокиТЧ.Производитель.Код));​  
-  
- НомерЗаказаСборки = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Номер,​СтрЗаменить(СтрокиТЧ.Заказ.Номер,"​З_",""​));​ 
- ДатаЗаказаСборка ​ = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Дата,​СтрокиТЧ.Заказ.Дата);​ 
- НовСтр.Заказ  ​ =  Документы[ТекущееСоответствие.База].НайтиПоНомеру(НомерЗаказаСборки,​ ДатаЗаказаСборка);​ 
- Если Не ЗначениеЗаполнено(НовСтр.Заказ) Тогда 
- Сообщить("​Заказ не указан в заказе на сборку №"+ СокрЛП(ДокХДТО.Документ.Номер));​ 
- Продолжить;​ 
- КонецЕсли;​ 
  
- Если НовСтр.Заказ <> Неопределено И Не НовСтр.Заказ.Пустая() Тогда +&​НаСервере Процедура ВернутьИзСборщика2() Прокси = ПолучитьПрокси();​ Результат = Прокси.ПолучитьДокументыЗаказНаСборку2("​П6"​);​ Если Результат<>​ Неопределено Тогда КоличествоЗагруженно = 0; Для каждого ДокХДТО Из Результат.МассивРезультатов Цикл Документ = Документы.АСП_ЗаказНаСборку.НайтиПоНомеру(ДокХДТО.Документ.Номер,​ ДокХДТО.Документ.Дата);​ Если Документ.Пустая() Тогда ​ ДокСсылка = Документы.АСП_ЗаказНаСборку.СоздатьДокумент();​ ДокСсылка.Дата = ДокХДТО.Документ.Дата;​ ДокСсылка.Номер = ДокХДТО.Документ.Номер;​ Иначе ДокСсылка = Документ.ПолучитьОбъект();​ КонецЕсли;​ ДокСсылка.Склад = Справочники.Склады.НайтиПоКоду(СокрЛП(ДокХДТО.Документ.Склад.Код));​ Если ПустаяСтрока(ДокХДТО.Документ.Организация.ИНН) Тогда ​ ДокСсылка.Организация = Справочники.Организации.НайтиПоКоду(ДокХДТО.Документ.Организация.Код);​ Иначе ​ ДокСсылка.Организация = Справочники.Организации.НайтиПоРеквизиту("​ИНН",​ ДокХДТО.Документ.Организация.ИНН);​ КонецЕсли;​ СообщениеСтатуса = "";​ ПеречСтатус = ПолучитьСтатусСборки(ДокХДТО.Документ.Статус); ​ Если ТипЗнч(ПеречСтатус) <> Тип("​Строка"​) Тогда ДокСсылка.СтатусСборки = ПеречСтатус;​ Иначе СообщениеСтатуса = ("​Документ №"+ ДокСсылка.Номер+ " загружен без статуса. "+ ПеречСтатус);​ КонецЕсли;​ ДокСсылка.Товары.Очистить();​ Для каждого СтрокиТЧ Из ДокХДТО.Документ.Товары Цикл НовСтр = ДокСсылка.Товары.Добавить();​ ЗаполнитьЗначенияСвойств(НовСтр,​СтрокиТЧ);​ НовСтр.Номенклатура = ​ Справочники.Номенклатура.НайтиПоКоду(СокрЛП(СтрокиТЧ.Номенклатура.Код));​ Если НовСтр.Номенклатура.Пустая() Тогда ​ Сообщить("​Номенклатура по данному коду "+ СокрЛП(СтрокиТЧ.Номенклатура.Код)+ " не обнаружена"​);​ Продолжить; ​ КонецЕсли;​ НовСтр.ЕдиницаИзмерения = ​ Справочники.ЕдиницыИзмерения.НайтиПоКоду(СокрЛП(СтрокиТЧ.Упаковка.КодЗагрузки));​ НовСтр.Производитель = ​ Справочники.Организации.НайтиПоКоду(СокрЛП(СтрокиТЧ.Производитель.Код));​ НомерЗаказаСборки = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Номер,​СтрЗаменить(СтрокиТЧ.Заказ.Номер,"​З_",""​));​ ДатаЗаказаСборка ​ = ?​(СтрокиТЧ.Заказ = Неопределено,​ДокХДТО.Документ.Дата,​СтрокиТЧ.Заказ.Дата);​ НовСтр.Заказ  ​ =  Документы[ТекущееСоответствие.База].НайтиПоНомеру(НомерЗаказаСборки,​ ДатаЗаказаСборка);​ Если Не ЗначениеЗаполнено(НовСтр.Заказ) Тогда Сообщить("​Заказ не указан в заказе на сборку №"+ СокрЛП(ДокХДТО.Документ.Номер));​ Продолжить;​ КонецЕсли; ​ Если НовСтр.Заказ <> Неопределено И Не НовСтр.Заказ.Пустая() Тогда ​ УстановитьСтатус(НовСтр.Заказ,​ДокСсылка.СтатусСборки);​   КонецЕсли; ​ КонецЦикла;​  ​ Если ДокСсылка.Товары.Количество()>​ 0 Тогда ​ ДокСсылка.Записать(); ​ КонецЕсли; ​ Если Не ДокСсылка.Ссылка.Пустая() Тогда ​  КоличествоЗагруженно = КоличествоЗагруженно + 1;  Если ДокХДТО.Документ <> Неопределено Тогда ​  СписокДокументов.МассивДокументов.Добавить(ДокХДТО.Документ); ​ КонецЕсли; ​ КонецЕсли; ​ СтрокаДок.Параметры.Документ = Строка(ДокСсылка); ​ СтрокаДок.Параметры.Результат = Строка(ДокХДТО.РезультатТранзакции) + " " + СообщениеСтатуса; ​ ТД.Вывести(СтрокаДок); ​ КонецЦикла;​ КонецЕсли;​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
- УстановитьСтатус(НовСтр.Заказ,​ДокСсылка.СтатусСборки);​  +
- КонецЕсли;​ +
- КонецЦикла;​  +
-  +
- Если ДокСсылка.Товары.Количество()>​ 0 Тогда +
- ДокСсылка.Записать();​ +
- КонецЕсли;​ +
- Если Не ДокСсылка.Ссылка.Пустая() Тогда ​ +
- КоличествоЗагруженно = КоличествоЗагруженно + 1; +
- Если ДокХДТО.Документ <> Неопределено Тогда ​  +
- СписокДокументов.МассивДокументов.Добавить(ДокХДТО.Документ);​ +
- КонецЕсли;​ +
- КонецЕсли;​ +
-  +
- СтрокаДок.Параметры.Документ = Строка(ДокСсылка);​ +
- СтрокаДок.Параметры.Результат = Строка(ДокХДТО.РезультатТранзакции) + " " + СообщениеСтатуса;​ +
- ТД.Вывести(СтрокаДок);​ +
- КонецЦикла;​  +
- КонецЕсли;​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createTakeAssembly2.xml>​+ 
 +<code xml createTakeAssembly2.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 1220: Строка 947:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateTakeAssembly2.xml>​+ 
 +<code xml resposeCreateTakeAssembly2.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 1368: Строка 1097:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== ЗарегистрироватьОтгрузку====+==== ЗарегистрироватьОтгрузку ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для регистрации документа отгрузки связанного с передаваемым заказом в АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для регистрации документа отгрузки связанного с передаваемым заказом в АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
 +
   * Документ (Тип: [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​документ|Документ]]);​   * Документ (Тип: [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​документ|Документ]]);​
-**Возвращаемое значение:​**  + 
-  * Результат регистрации документа отгрузки в АСП.Сборка.+**Возвращаемое значение:​** 
 + 
 +  * Результат регистрации документа отгрузки в АСП.Склад WMS. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере + 
-Процедура ЗарегистрироватьОтгрузку(ДокЗаказ) +&​НаСервере Процедура ЗарегистрироватьОтгрузку(ДокЗаказ) ​    ​Прокси = ПолучитьПрокси(); ​ Фабрика = Прокси.ФабрикаXDTO; ​ хДокумент = Фабрика.Создать(Фабрика.Тип(ПространствоИмен(),"​Документ"​)); ​ хДокумент.Номер = ДокЗаказ.Номер; ​ хДокумент.Дата = ДокЗаказ.Дата; ​ Результат = Прокси.ЗарегистрироватьОтгрузку(хДокумент); ​    ​Сообщить(Результат);​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
-    ​Прокси = ПолучитьПрокси();​ +
- Фабрика = Прокси.ФабрикаXDTO;​ +
- хДокумент = Фабрика.Создать(Фабрика.Тип(ПространствоИмен(),"​Документ"​));​ +
- хДокумент.Номер = ДокЗаказ.Номер;​ +
- хДокумент.Дата = ДокЗаказ.Дата;​ +
-  +
- Результат = Прокси.ЗарегистрироватьОтгрузку(хДокумент);​ +
-    ​Сообщить(Результат);​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createTakeDocuments.xml>​+ 
 +<code xml createTakeDocuments.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 1411: Строка 1138:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 +==== ПолучитьДокументСборки ====
  
-==== ПолучитьДокументСборки==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для получения документов по типу документа из АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для получения документов по типу документа из АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
-  ​*ТипДокумента(Тип:​ string) - тип документа по которому определяется список получаемых документов. + 
-**Возвращаемое значение:​**  +  ​* ТипДокумента(Тип:​ string) - тип документа по которому определяется список получаемых документов. 
-  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Сборка.+ 
 +**Возвращаемое значение:​** 
 + 
 +  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Склад WMS. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере + 
-Процедура ВернутьДокументыИзСборщика(ДокументыСборщика) +&​НаСервере Процедура ВернутьДокументыИзСборщика(ДокументыСборщика) ​ Прокси = ПолучитьПрокси(); ​    ​Фабрика = Прокси.ФабрикаXDTO; ​ СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​СписокДокументов"​)); ​ ДокументыСборщика = ?​(Найти(ТекущееСоответствие.Шлюз,"​Заказ"​) = 0,​ТекущееСоответствие.Шлюз,"​ЗаказНаСборку"​); ​ Результат = Прокси.ПолучитьДокументСборки(ДокументыСборщика); ​ Если Результат <> Неопределено Тогда   Если Найти(ДокументыСборщика,"​ЗаказНаСборку"​) > 0 Тогда ​  КоличествоЗагруженно = ВернутьЗаказыНаСборку(Результат,​СтрокаДок,​СписокДокументов,​ТекущееСоответствие); ​ ИначеЕсли Найти(ДокументыСборщика,"​Перемещение"​) > 0 Тогда ​ КоличествоЗагруженно = ВернутьПеремещение(Результат,​СтрокаДок,​ТекущееСоответствие); ​ Иначе ​  Сообщить("​Данный документ не настроен для возврата в базу"​); ​ Возврат; ​ КонецЕсли;​ КонецЕсли; ​    ​Сообщить("​Загружено документов:​ "​+Строка(КоличествоЗагруженно));​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
- Прокси = ПолучитьПрокси();​ +
-    ​Фабрика = Прокси.ФабрикаXDTO;​ +
- СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​СписокДокументов"​));​ +
- ДокументыСборщика = ?​(Найти(ТекущееСоответствие.Шлюз,"​Заказ"​) = 0,​ТекущееСоответствие.Шлюз,"​ЗаказНаСборку"​);​ +
-  +
- Результат = Прокси.ПолучитьДокументСборки(ДокументыСборщика);​ +
- Если Результат <> Неопределено Тогда  +
- Если Найти(ДокументыСборщика,"​ЗаказНаСборку"​) > 0 Тогда ​ +
- КоличествоЗагруженно = ВернутьЗаказыНаСборку(Результат,​СтрокаДок,​СписокДокументов,​ТекущееСоответствие);​ +
- ИначеЕсли Найти(ДокументыСборщика,"​Перемещение"​) > 0 Тогда +
- КоличествоЗагруженно = ВернутьПеремещение(Результат,​СтрокаДок,​ТекущееСоответствие);​ +
- Иначе ​ +
- Сообщить("​Данный документ не настроен для возврата в базу"​);​ +
- Возврат;​ +
- КонецЕсли;​  +
- КонецЕсли;​ +
-    ​Сообщить("​Загружено документов:​ "​+Строка(КоличествоЗагруженно));​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createTakeDocuments.xml>​+ 
 +<code xml createTakeDocuments.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 1461: Строка 1176:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateTakeDocuments.xml>​+ 
 +<code xml resposeCreateTakeDocuments.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 1653: Строка 1370:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== ПолучитьДокументСборки2====+==== ПолучитьДокументСборки2 ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для получения документов сборки по типу документа которые зарегистрированы планом обмена из АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для получения документов сборки по типу документа которые зарегистрированы планом обмена из АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
-  ​*ТипДокумента(Тип:​ string) - тип документа по которому определяется список получаемых документов. + 
-  *КодУзла(Тип:​ string) - код узла плана обмена "​УчетнаяСистема"​ в котором регистрируются изменения документов. +  ​* ТипДокумента(Тип:​ string) - тип документа по которому определяется список получаемых документов. 
-**Возвращаемое значение:​**  +  * КодУзла(Тип:​ string) - код узла плана обмена "​УчетнаяСистема"​ в котором регистрируются изменения документов. 
-  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Сборка.+ 
 +**Возвращаемое значение:​** 
 + 
 +  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|ОтветСервиса]] - структура,​ содержащая массив результатов получения документов из АСП.Склад WMS. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере + 
-Процедура ВернутьДокументыИзСборщика2(ДокументыСборщика) +&​НаСервере Процедура ВернутьДокументыИзСборщика2(ДокументыСборщика) ​    ​Прокси = ПолучитьПрокси(); ​    ​Фабрика = Прокси.ФабрикаXDTO; ​    ​СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​СписокДокументов"​)); ​    ​ДокументыСборщика = ?​(Найти(ТекущееСоответствие.Шлюз,"​Заказ"​) = 0,​ТекущееСоответствие.Шлюз,"​ЗаказНаСборку"​); ​         Результат = Прокси.ПолучитьДокументСборки(ДокументыСборщика,"​П6"​); ​    ​Если Результат <> Неопределено Тогда          Если Найти(ДокументыСборщика,"​ЗаказНаСборку"​) > 0 Тогда ​             КоличествоЗагруженно = ВернутьЗаказыНаСборку(Результат,​СтрокаДок,​СписокДокументов,​ТекущееСоответствие); ​        ​ИначеЕсли Найти(ДокументыСборщика,"​Перемещение"​) > 0 Тогда ​            ​КоличествоЗагруженно = ВернутьПеремещение(Результат,​СтрокаДок,​ТекущееСоответствие); ​        ​Иначе ​             Сообщить("​Данный документ не настроен для возврата в базу"​); ​            ​Возврат; ​        ​КонецЕсли;​      КонецЕсли; ​    ​Сообщить("​Загружено документов:​ "​+Строка(КоличествоЗагруженно));​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
-    ​Прокси = ПолучитьПрокси();​ +
-    ​Фабрика = Прокси.ФабрикаXDTO;​ +
-    ​СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен,"​СписокДокументов"​));​ +
-    ​ДокументыСборщика = ?​(Найти(ТекущееСоответствие.Шлюз,"​Заказ"​) = 0,​ТекущееСоответствие.Шлюз,"​ЗаказНаСборку"​);​ +
-     +
-    ​Результат = Прокси.ПолучитьДокументСборки(ДокументыСборщика,"​П6"​);​ +
-    ​Если Результат <> Неопределено Тогда  +
-        ​Если Найти(ДокументыСборщика,"​ЗаказНаСборку"​) > 0 Тогда ​ +
-            ​КоличествоЗагруженно = ВернутьЗаказыНаСборку(Результат,​СтрокаДок,​СписокДокументов,​ТекущееСоответствие);​ +
-        ​ИначеЕсли Найти(ДокументыСборщика,"​Перемещение"​) > 0 Тогда +
-            ​КоличествоЗагруженно = ВернутьПеремещение(Результат,​СтрокаДок,​ТекущееСоответствие);​ +
-        ​Иначе ​ +
-            ​Сообщить("​Данный документ не настроен для возврата в базу"​);​ +
-            ​Возврат;​ +
-        ​КонецЕсли;​  +
-    ​КонецЕсли;​ +
-    ​Сообщить("​Загружено документов:​ "​+Строка(КоличествоЗагруженно));​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createTakeDocuments2.xml>​+ 
 +<code xml createTakeDocuments2.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 1704: Строка 1410:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateTakeDocuments2.xml>​+ 
 +<code xml resposeCreateTakeDocuments2.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 1848: Строка 1556:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== ПолучитьМобильныеУстройства====+==== ПолучитьМобильныеУстройства ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для получения активных мобильных устройств из АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для получения активных мобильных устройств из АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
  
-**Возвращаемое значение:​**  +**Возвращаемое значение:​** 
-  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|МобильныеУстройства]] - структура,​ содержащая массив мобильных устройств полученных из АСП.Сборка.+ 
 +  * [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|МобильныеУстройства]] - структура,​ содержащая массив мобильных устройств полученных из АСП.Склад WMS. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере + 
-Процедура СформироватьСписокМобУстройства() +&​НаСервере Процедура СформироватьСписокМобУстройства() ​ Прокси = ПолучитьПрокси(); ​ Фабрика = Прокси.ФабрикаXDTO; ​ МобУстройства = Прокси.ПолучитьМобильныеУстройства(); ​ ЭлементыФормы.МобильныеУстройства.СписокВыбора.Очистить(); ​ Для Каждого Стр Из МобУстройства.МобильноеУстройство Цикл ​ ЭлементыФормы.МобильныеУстройства.СписокВыбора.Добавить(Стр.Наименование + " :"+ Стр.Код);​   КонецЦикла;​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
- Прокси = ПолучитьПрокси();​ +
- Фабрика = Прокси.ФабрикаXDTO;​ +
- МобУстройства = Прокси.ПолучитьМобильныеУстройства();​ +
-  +
- ЭлементыФормы.МобильныеУстройства.СписокВыбора.Очистить();​ +
- Для Каждого Стр Из МобУстройства.МобильноеУстройство Цикл +
- ЭлементыФормы.МобильныеУстройства.СписокВыбора.Добавить(Стр.Наименование + " :"+ Стр.Код);​  +
- КонецЦикла;​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createTakeDevices.xml>​+ 
 +<code xml createTakeDevices.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 1888: Строка 1592:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateTakeDevices.xml>​+ 
 +<code xml resposeCreateTakeDevices.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 1920: Строка 1626:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== УстановитьСтатусВыгружен====+==== УстановитьСтатусВыгружен ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для установки признака "​Выгружен"​ в АСП.Сборка для успешно выгруженных оттуда документов.+ 
 +**Назначение:​** Сервис предназначен для установки признака "​Выгружен"​ в АСП.Склад WMS для успешно выгруженных оттуда документов.
  
 **Параметры:​** **Параметры:​**
 +
   * СписокДокументов(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​Документ|СписокДокументов]]) - структура,​ содержащая массив обрабатываемых документов;​   * СписокДокументов(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка#​Документ|СписокДокументов]]) - структура,​ содержащая массив обрабатываемых документов;​
-**Возвращаемое значение:​** ​+ 
 +**Возвращаемое значение:​** 
   * Число успешно перезаписанных документов с установленным признаком "​Выгружен"​.   * Число успешно перезаписанных документов с установленным признаком "​Выгружен"​.
 +
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере + 
-Процедура УстановитьСтатусВыгружен() +&​НаСервере Процедура УстановитьСтатусВыгружен() ​ Прокси = ПолучитьПрокси(); ​ Фабрика = Прокси.ФабрикаXDTO; ​    ​СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен(),"​СписокДокументов"​)); ​         Для Каждого Стр Из ТаблицаДок Цикл ​        ​Если НЕ Стр.Выбран Тогда ​            ​Продолжить; ​        ​КонецЕсли;​          Док = СформироватьДокумент(Стр.Ссылка,​ Фабрика); ​        ​Если Док <> Неопределено Тогда ​             СписокДокументов.МассивДокументов.Добавить(Док); ​        ​КонецЕсли; ​    ​КонецЦикла; ​ Выгружено = Прокси.УстановитьСтатусВыгружен(СписокДокументов); ​ Сообщить("​Документов в статусе выгруженно:​ "​+Строка(Выгружено));​ КонецПроцедуры </​1c>​++++++++Пример вызова XML
- Прокси = ПолучитьПрокси();​ +
- Фабрика = Прокси.ФабрикаXDTO;​ +
-    ​СписокДокументов = Фабрика.Создать(Фабрика.Тип(ПространствоИмен(),"​СписокДокументов"​));​ +
-     +
-    ​Для Каждого Стр Из ТаблицаДок Цикл +
-        ​Если НЕ Стр.Выбран Тогда +
-            ​Продолжить;​ +
-        ​КонецЕсли;​  +
-        ​Док = СформироватьДокумент(Стр.Ссылка,​ Фабрика);​ +
-        ​Если Док <> Неопределено Тогда ​ +
-            ​СписокДокументов.МассивДокументов.Добавить(Док);​ +
-        ​КонецЕсли;​ +
-    ​КонецЦикла;​ +
- Выгружено = Прокси.УстановитьСтатусВыгружен(СписокДокументов);​ +
- Сообщить("​Документов в статусе выгруженно:​ "​+Строка(Выгружено));​ +
-КонецПроцедуры +
-</1c> +
-++++  +
-++++Пример вызова XML+
 | |
-<file xml createMakeTick.xml>​+ 
 +<code xml createMakeTick.xml>​
 <?xml version='​1.0'​ encoding='​utf-8'?>​ <?xml version='​1.0'​ encoding='​utf-8'?>​
 <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap-env:​Envelope xmlns:​soap-env="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
Строка 2134: Строка 1831:
     </​soap-env:​Body>​     </​soap-env:​Body>​
 </​soap-env:​Envelope>​ </​soap-env:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
 ++++Пример ответа XML ++++Пример ответа XML
 | |
-<file xml resposeCreateMakeTick.xml>​+ 
 +<code xml resposeCreateMakeTick.xml>​
 <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​ <​soap:​Envelope xmlns:​soap="​http://​schemas.xmlsoap.org/​soap/​envelope/">​
  <​soap:​Body>​  <​soap:​Body>​
Строка 2148: Строка 1847:
  </​soap:​Body>​  </​soap:​Body>​
 </​soap:​Envelope>​ </​soap:​Envelope>​
-</file>+</code> 
 ++++ ++++
  
-==== ПолучитьНастройкиОбработки====+==== ПолучитьНастройкиОбработки ==== 
 ++++Описание ++++Описание
 | |
-**Назначение:​** Сервис предназначен для получение настроек правил обработки выгрузки в АСП.Сборка.+ 
 +**Назначение:​** Сервис предназначен для получение настроек правил обработки выгрузки в АСП.Склад WMS.
  
 **Параметры:​** **Параметры:​**
  
-**Возвращаемое значение:​**  +**Возвращаемое значение:​** 
-  * НастройкиОбработки(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|НастройкиОбработки]]) - Структура,​ в которой содержатся скомпанованные настройки обработки по вкладкам.+ 
 +  * НастройкиОбработки(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|НастройкиОбработки]]) - Структура,​ в которой содержатся скомпонованные настройки обработки по вкладкам. 
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
-&​НаСервере 
-Процедура ПроверитьПодключениеНаСервере() 
- Прокси = ПолучитьПрокси();​ 
- Результат = Прокси.ПолучитьНастройкиОбработки();​ 
- ТаблицыНастроек = "​СоответствиеДокументов,​СоответствиеНом,​СоответствиеКонтрагентов,​СоответствиеОрганизации,​СоответствиеСкладов,​ВидыКиХС,​ВидыКиПО";​ 
- Для Каждого Имя Из СтрРазделить(ТаблицыНастроек,","​) Цикл 
- Если ЗначениеЗаполнено(Результат[Имя]) Тогда 
- ТекНастройки.Вставить(Имя,​Результат[Имя]);​ 
- КонецЕсли;​ 
- КонецЦикла;​ 
-КонецПроцедуры 
-</1c> 
-++++  
-==== ЗагрузитьНастройкиОбработки==== 
-++++Описание 
-| 
-**Назначение:​** Сервис предназначен для сохранения настроек правил для обработки выгрузки в АСП.Сборка. 
  
-**Параметры:​**+&​НаСервере Процедура ПроверитьПодключениеНаСервере() Прокси = ПолучитьПрокси();​ Результат = Прокси.ПолучитьНастройкиОбработки();​ ТаблицыНастроек = "​СоответствиеДокументов,​СоответствиеНом,​СоответствиеКонтрагентов,​СоответствиеОрганизации,​СоответствиеСкладов,​ВидыКиХС,​ВидыКиПО";​ Для Каждого Имя Из СтрРазделить(ТаблицыНастроек,","​) Цикл Если ЗначениеЗаполнено(Результат[Имя]) Тогда ТекНастройки.Вставить(Имя,​Результат[Имя]);​ КонецЕсли;​ КонецЦикла;​ КонецПроцедуры </​1c>​++++ЗагрузитьНастройкиОбработки++++Описание 
 +|**Назначение:​** Сервис предназначен для сохранения настроек правил для обработки выгрузки в АСП.Склад WMS.**Параметры:​** 
   * Настройки(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|НастройкиОбработки]]) - Структура,​ в которой содержатся скомпонованные настройки обработки по вкладкам.   * Настройки(Тип:​ [[3_сборка:​сборка_выгрузка:​описание_типов_сборка|НастройкиОбработки]]) - Структура,​ в которой содержатся скомпонованные настройки обработки по вкладкам.
  
-**Возвращаемое значение:​** ​+**Возвращаемое значение:​** 
   * Если настройки загружены успешно,​ возвращает значение "​Истина"​.   * Если настройки загружены успешно,​ возвращает значение "​Истина"​.
 +
 ++++ ++++
 +
 ++++Пример вызова 1C ++++Пример вызова 1C
 | |
 +
 <1c> <1c>
 +
 &​НаСервере &​НаСервере
 Процедура ПроверитьПодключениеНаСервере() Процедура ПроверитьПодключениеНаСервере()
Строка 2201: Строка 1897:
    ​КонецЕсли;  ​    ​КонецЕсли;  ​
 КонецПроцедуры КонецПроцедуры
-</1c> +</​1c>​++++ 
-+++++