|
1С БП3.0 Нужна помошь | ☑ | ||
---|---|---|---|---|
0
Evgen54
05.12.13
✎
09:28
|
Недавно начал разбираться с БП 3.0. Пишу выгрузку поступлений в ДБФ файл. Запрос составил все ок в КЗ выбирает работает, а переношу в процедуру - не могу получить результат запроса в виде таблицы значений
запроса. Я так понимаю тут проблема где что выполнять "Насервере" или "НаКлиенте". Кто может помогите разобраться пожалуйста. |
|||
1
maksim358
05.12.13
✎
09:30
|
(0) Так ты вопрос четче напишт.
|
|||
2
Ranger_83
05.12.13
✎
09:31
|
(0) ТЗ не передается между сервером и клиентом к сожалению
|
|||
3
vde69
модератор
05.12.13
✎
09:31
|
надо так
1. запрос выполняешь на сервере 2. файл пишишь на сервере 3. через хранилище передаешь на клиент |
|||
4
Aleksey
05.12.13
✎
09:32
|
(2) А если ТЗ на форме?
|
|||
5
Ярус
05.12.13
✎
09:33
|
(4) через хранилище
|
|||
6
Evgen54
05.12.13
✎
09:40
|
Вот как у меня это выглядит:
&НаСервере Процедура ВыгрузкаОплаты(); Запрос = Новый Запрос("ВЫБРАТЬ | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.ДатаВходящегоДокумента КАК ДатаОплаты, | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Контрагент.Код КАК КодПлательщика, | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.ДоговорКонтрагента.Код КАК ДоговорКонтрагента, | 1 КАК ВидОплаты, | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.НомерВходящегоДокумента КАК ПП, | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.СуммаПлатежа КАК Сумма, | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Контрагент.Наименование, | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.ДоговорКонтрагента.Номер, | NULL КАК Номер |ИЗ | Документ.ПоступлениеНаРасчетныйСчет.РасшифровкаПлатежа КАК ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа |ГДЕ | ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.ДатаВходящегоДокумента МЕЖДУ &ДатаНач И &ДатаКон | И ПоступлениеНаРасчетныйСчетРасшифровкаПлатежа.Ссылка.Проведен = &Проведен | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Дата, | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Контрагент.Код, | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.ДоговорКонтрагента.Код, | 2, | NULL, | ПриходныйКассовыйОрдерРасшифровкаПлатежа.СуммаПлатежа, | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Контрагент.Наименование, | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.ДоговорКонтрагента.Номер, | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Номер |ИЗ | Документ.ПриходныйКассовыйОрдер.РасшифровкаПлатежа КАК ПриходныйКассовыйОрдерРасшифровкаПлатежа |ГДЕ | ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И ПриходныйКассовыйОрдерРасшифровкаПлатежа.Ссылка.Проведен = &Проведен | |УПОРЯДОЧИТЬ ПО | ДатаОплаты"); Запрос.УстановитьПараметр("ДатаНач", ЭтаФорма.Объект.ДатаНач); Запрос.УстановитьПараметр("ДатаКон", ЭтаФорма.Объект.ДатаКон); Запрос.УстановитьПараметр("Проведен", Проводка); Проводка = Истина; ТаблицаПоступлений = Запрос.Выполнить().Выгрузить(); Файл = Новый XBase; Файл.Кодировка = КодировкаXBase.OEM; Файл.поля.Добавить("DATA","D"); файл.поля.Добавить("KODKL","S",7); файл.поля.Добавить("REGDOG_1C","S",10); файл.поля.Добавить("OPLATA","N",1); файл.поля.Добавить("NPLPOR","S",15); файл.поля.Добавить("SUMMA","N",15,2); Файл.СоздатьФайл("C:\Oplata.dbf"); Файл.Записать(); //ТаблицаПоступлений.ВыбратьСтроку(); Пока ТаблицаПоступлений.Следующий() цикл // обходим табличную документа "Зарплата к выплате" Файл.Добавить(); // добавляем новую запись в файл Файл.DATA = ТаблицаПоступлений.ДатаОплаты; Файл.KODKL = ТаблицаПоступлений.КодПлательщика; Файл.REGDOG_1C = ТаблицаПоступлений.ДоговорКонтрагента; Файл.OPLATA = ТаблицаПоступлений.ВидОплаты; Файл.NPLPOR = ТаблицаПоступлений.ПП; Файл.SUMMA = ТаблицаПоступлений.Сумма; Файл.Записать(); // записываем внесенные данные в файл КонецЦикла; Файл.ЗакрытьФайл(); // закрываем файл Сообщить("Файл успешно сформирован!"); КонецПроцедуры &НаКлиенте Процедура Выгрузить(Команда); ВыгрузкаОплаты(); КонецПроцедуры; Подскажите как переделать. |
|||
7
Evgen54
05.12.13
✎
09:58
|
И тишина. Спасибо что помогли
|
|||
8
Chai Nic
05.12.13
✎
10:00
|
(7) Всегда рады.. помолчать в ответ на неконкретный вопрос.. )
|
|||
9
Evgen54
05.12.13
✎
10:02
|
Я заметил
|
|||
10
zippygrill
05.12.13
✎
10:03
|
На клиенте помещаешь что-нибудь во временнойХранилище, дальше передаешь этот адрес на сервере в процедуре ВыгрузкаОплат.
После того как создал свой файл, вставь его в этот адрес и передай обратно клиенту. Ну и на клиенте уже получаешь что у тебя по этому адресу. |
|||
11
fmrlex
05.12.13
✎
10:06
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |