![]() |
|
Ошибка в выгрузке пакетов веб-сервиса | ☑ | ||
---|---|---|---|---|
0
Надяша
12.07.16
✎
13:56
|
имеется модуль:
Функция Poluchit(data1,data2,ТаблицаОтчета) Экспорт Организация = глЗначениеПеременной("ОсновнаяОрганизация"); СтатьяДвижения = Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоНаименованию("Прямые договора"); Запрос = Новый Запрос; //Запрос.Текст = // "ВЫБРАТЬ // | ПоступлениеНаРасчетныйСчет.Номер, // | ПоступлениеНаРасчетныйСчет.Дата, // | ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента как Договор, // | ПоступлениеНаРасчетныйСчет.Контрагент, // | ПоступлениеНаРасчетныйСчет.Контрагент.ИНН , // | ПоступлениеНаРасчетныйСчет.СуммаДокумента, // | ПоступлениеНаРасчетныйСчет.СтатьяДвиженияДенежныхСредств, // | ПРЕДСТАВЛЕНИЕ(ПоступлениеНаРасчетныйСчет.СтатьяДвиженияДенежныхСредств), // | ПоступлениеНаРасчетныйСчет.НазначениеПлатежа // |ИЗ // | Документ.ПоступлениеНаРасчетныйСчет КАК ПоступлениеНаРасчетныйСчет // |ГДЕ // //| ПоступлениеНаРасчетныйСчет.Проведен = &Проведен // | ПоступлениеНаРасчетныйСчет.Дата МЕЖДУ &data1 И &data2 //// | И ПоступлениеНаРасчетныйСчет.Организация = &Организация"; // | И ПоступлениеНаРасчетныйСчет.СтатьяДвиженияДенежныхСредств = &СтатьяДвижения"; Запрос.Текст="ВЫБРАТЬ | ПоступлениеНаРасчетныйСчет.Ссылка КАК Ссылка, | ПоступлениеНаРасчетныйСчет.Номер КАК Номер, | ПоступлениеНаРасчетныйСчет.Дата КАК Дата, | ПоступлениеНаРасчетныйСчет.НомерВходящегоДокумента КАК НомерПлПор, | ПоступлениеНаРасчетныйСчет.ДатаВходящегоДокумента КАК ДатаПлПор, | ПоступлениеНаРасчетныйСчет.Контрагент КАК Контрагент, | ПоступлениеНаРасчетныйСчет.Контрагент.ИНН КАК ИНН, | ПоступлениеНаРасчетныйСчет.Контрагент.КПП КАК КПП, | ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента КАК Договор, | ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента.Код КАК КодДоговора, | ПоступлениеНаРасчетныйСчет.СтатьяДвиженияДенежныхСредств КАК СДДС, | ПоступлениеНаРасчетныйСчет.СуммаДокумента КАК СуммаДок, | ПоступлениеНаРасчетныйСчет.НазначениеПлатежа КАК НазначениеПлатежа |ИЗ | Документ.ПоступлениеНаРасчетныйСчет КАК ПоступлениеНаРасчетныйСчет |ГДЕ | ПоступлениеНаРасчетныйСчет.Дата МЕЖДУ &НачДата И &КонДата | И ПоступлениеНаРасчетныйСчет.ПометкаУдаления = ЛОЖЬ | И ПоступлениеНаРасчетныйСчет.Проведен = ИСТИНА | И ПоступлениеНаРасчетныйСчет.СтатьяДвиженияДенежныхСредств = &СДДС"; Запрос.УстановитьПараметр("НачДата", data1); Запрос.УстановитьПараметр("КонДата", data2); // Запрос.УстановитьПараметр("Организация", глЗначениеПеременной("ОсновнаяОрганизация")); // Запрос.УстановитьПараметр("Проведен", Проведен); Запрос.УстановитьПараметр("СДДС", Справочники.СтатьиДвиженияДенежныхСредств.НайтиПоНаименованию("Прямые договора")); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); //Пока ВыборкаДетальныеЗаписи.Следующий() Цикл // ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи); // ТабДок.Добавить(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень()); //КонецЦикла; КонтрагентТип = ФабрикаXDTO.Тип("http://localhost/wsreport2", "Контрагент"); ДоговорТип = ФабрикаXDTO.Тип("http://localhost/wsreport2", "Договор"); ТаблицаОтчетаТип = ФабрикаXDTO.Тип("http://localhost/wsreport2", "ТаблицаОтчета"); ТабДокТип = ФабрикаXDTO.Тип("http://localhost/wsreport2", "ТабДок"); // // //Для Каждого СтрокаВыборкаДетальныеЗаписи из ВыборкаДетальныеЗаписи Цикл пер=0; Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Контрагент = ФабрикаXDTO.Создать(КонтрагентТип); Договор = ФабрикаXDTO.Создать(ДоговорТип); ТаблицаОтчета = ФабрикаXDTO.Создать(ТаблицаОтчетаТип); ТабДок = ФабрикаXDTO.Создать(ТабДокТип); Если ТипЗнч(ВыборкаДетальныеЗаписи.Контрагент) = Тип("СправочникСсылка.Контрагенты") Тогда Контрагент.Наименование = ВыборкаДетальныеЗаписи.Контрагент.Наименование; Контрагент.ИНН = ВыборкаДетальныеЗаписи.Контрагент.ИНН; Контрагент.КПП = ВыборкаДетальныеЗаписи.Контрагент.КПП; Иначе Контрагент.Наименование = ""; Контрагент.ИНН = ""; Контрагент.КПП = ""; КонецЕсли; Если ТипЗнч(ВыборкаДетальныеЗаписи.Договор) = Тип("СправочникСсылка.ДоговорыКонтрагентов") Тогда Договор.Наименование = ВыборкаДетальныеЗаписи.Договор.Наименование; Иначе Договор.Наименование = ""; КонецЕсли; пер=пер+1; ТабДок.Шаг = пер; ТабДок.Контрагент = Контрагент; ТабДок.Контрагент.ИНН = ВыборкаДетальныеЗаписи.Контрагент.ИНН ; ТабДок.Контрагент.КПП = ВыборкаДетальныеЗаписи.Контрагент.КПП; ТабДок.Договор = Договор; ТабДок.Договор.Код = ВыборкаДетальныеЗаписи.КодДоговора; ТабДок.Дата = ВыборкаДетальныеЗаписи.Дата; ТабДок.СуммаДок = ВыборкаДетальныеЗаписи.СуммаДок; ТабДок.СуммаНДС = Окр(ВыборкаДетальныеЗаписи.СуммаДок-ВыборкаДетальныеЗаписи.СуммаДок/1.18,2); ТабДок.НазначениеПлатежа = ВыборкаДетальныеЗаписи.НазначениеПлатежа; ТабДок.Номер = ВыборкаДетальныеЗаписи.Номер; ТабДок.НомерПлПор= ВыборкаДетальныеЗаписи.НомерПлПор; ТабДок.ДатаПлПор= ВыборкаДетальныеЗаписи.ДатаПлПор; ТаблицаОтчета.Состав.Добавить(ТабДок); КонецЦикла; Возврат ТабДок; //Возврат ТаблицаОтчета; ///Возврат Poluchit(data1,data2,ТабДок); КонецФункции |
|||
1
Надяша
12.07.16
✎
13:57
|
при использовании данного веб-сервиса в soap,результат следующий:<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Header/> <soap:Body> <m:PoluchitResponse xmlns:m="http://localhost/wsreport2"> <m:return xsi:type="m:ТабДок" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <m:Контрагент> <m:Наименование>10ГПЗ</m:Наименование> <m:ИНН>6168006148</m:ИНН> <m:КПП>616401001</m:КПП> </m:Контрагент> <m:Договор> <m:Наименование>Ремонт сч-ка</m:Наименование> <m:Код>F00001968</m:Код> </m:Договор> <m:Дата>2016-02-08</m:Дата> <m:Номер>00000000000000000338</m:Номер> <m:СуммаДок>42021.57</m:СуммаДок> <m:СуммаНДС>6410.07</m:СуммаНДС> <m:ДатаПлПор>2016-02-08</m:ДатаПлПор> <m:НомерПлПор>34</m:НомерПлПор> <m:НазначениеПлатежа>Электроэнергия за февраль 2016 по договору 00502271 от 01.01.2014 В том числе НДС 18 % - 6410.07</m:НазначениеПлатежа> <m:Шаг>6</m:Шаг> </m:return> <m:ТаблицаОтчета xsi:type="m:ТаблицаОтчета" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <m:Состав> <m:Контрагент> <m:Наименование>10ГПЗ</m:Наименование> <m:ИНН>6168006148</m:ИНН> <m:КПП>616401001</m:КПП> </m:Контрагент> <m:Договор> <m:Наименование>Ремонт сч-ка</m:Наименование> <m:Код>F00001968</m:Код> </m:Договор> <m:Дата>2016-02-08</m:Дата> <m:Номер>00000000000000000338</m:Номер> <m:СуммаДок>42021.57</m:СуммаДок> <m:СуммаНДС>6410.07</m:СуммаНДС> <m:ДатаПлПор>2016-02-08</m:ДатаПлПор> <m:НомерПлПор>34</m:НомерПлПор> <m:НазначениеПлатежа>Электроэнергия за февраль 2016 по договору 00502271 от 01.01.2014 В том числе НДС 18 % - 6410.07</m:НазначениеПлатежа> <m:Шаг>6</m:Шаг> </m:Состав> </m:ТаблицаОтчета> </m:PoluchitResponse> </soap:Body> </soap:Envelope> |
|||
2
Надяша
12.07.16
✎
13:58
|
как бы всё правильно, но в результате вместо 6-ти документов выгружается последний. Помогите, пожалуйста с поиском ошибки в модуле веб-сервиса
|
|||
3
Serginio1
12.07.16
✎
14:08
|
ТабДок = ФабрикаXDTO.Создать(ТабДокТип);
перед циклом поставь |
|||
4
Надяша
12.07.16
✎
14:23
|
(3) шесть раз одна и тот же документ выгружается
|
|||
5
Serginio1
12.07.16
✎
14:32
|
Прошу прощения с ТаблицаОтчета перепутал.
|
|||
6
Serginio1
12.07.16
✎
14:33
|
ТаблицаОтчета = ФабрикаXDTO.Создать(ТаблицаОтчетаТип);
перед циклом поставь |
|||
7
Надяша
12.07.16
✎
14:38
|
(6) спасибо большое!!!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |