|
Web-сервисы получение ответа и очистка | ☑ | ||
---|---|---|---|---|
0
skupidom
25.05.18
✎
13:48
|
Коллеги,
требуется создать web-сервис,через который получать ответ по загрузке данных и очистке файла выгрузки. Что написать в процедурах в модуле web-сервиса: GetData и ClearData. Это выгрузка: Функция GetData(Unit) ВозвращаемаяСтруктура = Новый Структура("ВыгружаемыеДанные,НомерОтправленного","",0); Если ПустаяСтрока(Unit) Тогда ДанныеДляОтправки = ПодготовитьДанныеДляОтправки(ВозвращаемаяСтруктура); Возврат ДанныеДляОтправки; КонецЕсли; УзелОбмена = ПланыОбмена.п_ВнешниеСистемы.НайтиПоНаименованию(Unit,Истина); Если Не ЗначениеЗаполнено(УзелОбмена) Тогда ДанныеДляОтправки = ПодготовитьДанныеДляОтправки(ВозвращаемаяСтруктура); Возврат ДанныеДляОтправки; КонецЕсли; ЗаписьXML = Новый ЗаписьXML; ЗаписьXML.УстановитьСтроку(); ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения(); ЗаписьСообщения.НачатьЗапись(ЗаписьXML, УзелОбмена); Попытка ИмяВременногоКаталога = КаталогВременныхФайлов() + "ВыгрузкаЗУП\"; СоздатьКаталог(ИмяВременногоКаталога); ИмяФайлаВыгрузки = ИмяВременногоКаталога + "ВыгрузкаЗП.xml"; ИмяВременногоФайлаПравилОбмена = ИмяВременногоКаталога + "ПравилаОбмена.xml"; //ДвоичныеПравила = Справочники.ПравилаОбменаСПрограммамиБухгалтерскогоУчета.БухгалтерияПредприятия16.Правила.Получить(); //ДвоичныеПравила = Справочники.ПравилаОбменаСПрограммамиБухгалтерскогоУчета.п_УправлениеПроизводственнымПредприятием.Правила.Получить(); ДвоичныеПравила = УзелОбмена.ПравилаОбмена.Правила.Получить(); ДвоичныеПравила.Записать(ИмяВременногоФайлаПравилОбмена); // Получим Универсальную обработку обмена данными XML ОбработкаВыгрузки = Обработки.УниверсальныйОбменДаннымиXML.Создать(); ОбработкаВыгрузки.РежимОбмена = "Выгрузка"; ОбработкаВыгрузки.ИмяФайлаОбмена = ИмяФайлаВыгрузки; ОбработкаВыгрузки.ИмяФайлаПравилОбмена = ИмяВременногоФайлаПравилОбмена; ОбработкаВыгрузки.ЗагрузитьПравилаОбмена(); //УстановитьУзелПланаОбмена(ОбработкаВыгрузки.ТаблицаПравилВыгрузки.Строки, УзелОбмена); ОбработкаВыгрузки.ВыполнитьВыгрузку(); ФайлВыгрузки = Новый Файл(ИмяФайлаВыгрузки); Если Не ФайлВыгрузки.Существует() Тогда ВозвращаемаяСтрока = ""; Иначе ТекстовыйФайл = Новый ТекстовыйДокумент; ТекстовыйФайл.Прочитать(ИмяФайлаВыгрузки); ЗаписьЖурналаРегистрации("Данные выгружены в "+УзелОбмена.Код, УровеньЖурналаРегистрации.Информация, Метаданные.WebСервисы.ZupExchange); ВозвращаемаяСтрока = ТекстовыйФайл.ПолучитьТекст(); КонецЕсли; Исключение ЗаписьЖурналаРегистрации("Данные не выгружены в "+УзелОбмена.Код, УровеньЖурналаРегистрации.Ошибка, Метаданные.WebСервисы.ZupExchange); КонецПопытки; ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(УзелОбмена, ЗаписьСообщения.НомерСообщения); Пока ВыборкаИзменений.Следующий() Цикл КонецЦикла; ЗаписьСообщения.ЗакончитьЗапись(); УдалитьФайлы(ИмяВременногоКаталога); ВозвращаемаяСтруктура.ВыгружаемыеДанные = ВозвращаемаяСтрока; ВозвращаемаяСтруктура.НомерОтправленного= УзелОбмена.НомерОтправленного; ДанныеДляОтправки = ПодготовитьДанныеДляОтправки(ВозвращаемаяСтруктура); Возврат ДанныеДляОтправки; КонецФункции Функция ПодготовитьДанныеДляОтправки(СтруктураДанных) ЗаписьXML = Новый ЗаписьXML; ЗаписьXML.УстановитьСтроку(); СериализаторXDTO.ЗаписатьXML(ЗаписьXML, СтруктураДанных); Возврат ЗаписьXML.Закрыть(); КонецФункции |
|||
1
DrShad
25.05.18
✎
13:50
|
хвастаешься?
|
|||
2
skupidom
25.05.18
✎
15:03
|
получить ответ о загруженных изменениях с очисткой как написать ?
|
|||
3
stix2010
25.05.18
✎
15:15
|
Передать строку, структуру, ТЗ не?
|
|||
4
skupidom
25.05.18
✎
15:27
|
ClearData в модуле Web-сервиса что должно быть?
|
|||
5
stix2010
25.05.18
✎
15:57
|
(4) Это ты нас спрашиваешь? Удаляй то, что тебе надо, пиши информацию в возвращаемую структуру.
|
|||
6
skupidom
26.05.18
✎
00:13
|
можно пример кода с текстом и сообщениями
|
|||
7
Cyberhawk
26.05.18
✎
00:48
|
Студенты со своими заданиями заполонили мисту!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |