|
Передача таблицы документа в запрос для выбоки когда документ ещё не записан | ☑ | ||
---|---|---|---|---|
0
falselight
08.06.19
✎
10:49
|
При изменении поля на форме документа, выполняется запрос. В который передается табличная часть документа
как временная таблица. Берется по ссылке документа. Но если документ сделан копированием то у него нет ссылки. Как передать таблицу документа в запрос, если он ещё не записан? |
|||
1
Сияющий в темноте
08.06.19
✎
10:59
|
зайти на сервер с контекстом,там выгрузить в таблицу значений и передать параметром в запрос.
по ссылке ни в коем случае нельзя,так как будет значение табличной части,сохраненное в базе. |
|||
2
falselight
08.06.19
✎
11:49
|
(1) Сейчас работает так.
Подскажите пожалуйста как нужно? // &НаСервере Процедура УстановитьЦенуСравненияНаСервере() // ДокОбъект = РеквизитФормыВЗначение("Объект"); Если Не ЗначениеЗаполнено(ДокОбъект.Ссылка) Тогда ДокОбъект.Записать(); КонецЕсли; // Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ | ЗаказПоставщикуТовары.Номенклатура КАК Номенклатура, | ЗаказПоставщикуТовары.Характеристика КАК Характеристика |ПОМЕСТИТЬ ВТ_ЗаказПоставщику |ИЗ | Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары |ГДЕ | ЗаказПоставщикуТовары.Ссылка = &Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ_ЗаказПоставщику.Номенклатура КАК Номенклатура, | ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена, | ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены |ИЗ | ВТ_ЗаказПоставщику КАК ВТ_ЗаказПоставщику | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних( | &Период, | ВидЦены = &ВидЦены | И Номенклатура В | (ВЫБРАТЬ | ЗаказПоставщику.Номенклатура | ИЗ | ВТ_ЗаказПоставщику КАК ЗаказПоставщику)) КАК ЦеныНоменклатурыСрезПоследних | ПО ВТ_ЗаказПоставщику.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура | И ВТ_ЗаказПоставщику.Характеристика = ЦеныНоменклатурыСрезПоследних.Характеристика"; Запрос.УстановитьПараметр("Период", ТекущаяДата()); Запрос.УстановитьПараметр("Ссылка", ДокОбъект.Ссылка); Запрос.УстановитьПараметр("ВидЦены", Объект.ДополнительнаяЦена); Рез = Запрос.Выполнить(); Если Не Рез.Пустой() Тогда |
|||
3
Мимохожий Однако
08.06.19
✎
12:27
|
(2) см (1)
ЗЫ. Как в армии. |
|||
4
falselight
08.06.19
✎
12:31
|
Вот я её выгрузил в таблицу значений
ДокОбъект.Товары.Выгрузить() Подскажите пожалуйста по коду как передать её в запрос |
|||
5
falselight
08.06.19
✎
12:37
|
Так верно???
&НаСервере Процедура УстановитьЦенуСравненияНаСервере() // ДокОбъект = РеквизитФормыВЗначение("Объект"); // Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ | ТабличнаяЧастьЗаказа.Номенклатура КАК Номенклатура, | ТабличнаяЧастьЗаказа.Характеристика КАК Характеристика |ПОМЕСТИТЬ ВТ_ЗаказПоставщику |ИЗ | &ТабличнаяЧастьЗаказа КАК ТабличнаяЧастьЗаказа |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ_ЗаказПоставщику.Номенклатура КАК Номенклатура, | ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена, | ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены |ИЗ | ВТ_ЗаказПоставщику КАК ВТ_ЗаказПоставщику | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних( | &Период, | ВидЦены = &ВидЦены | И Номенклатура В | (ВЫБРАТЬ | ЗаказПоставщику.Номенклатура | ИЗ | ВТ_ЗаказПоставщику КАК ЗаказПоставщику)) КАК ЦеныНоменклатурыСрезПоследних | ПО ВТ_ЗаказПоставщику.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура | И ВТ_ЗаказПоставщику.Характеристика = ЦеныНоменклатурыСрезПоследних.Характеристика"; Запрос.УстановитьПараметр("Период", ТекущаяДата()); Запрос.УстановитьПараметр("ТабличнаяЧастьЗаказа", ДокОбъект.Товары.Выгрузить()); Запрос.УстановитьПараметр("ВидЦены", Объект.ДополнительнаяЦена); Рез = Запрос.Выполнить(); |
|||
6
Сияющий в темноте
08.06.19
✎
15:04
|
да,именно так
|
|||
7
hhhh
09.06.19
✎
09:20
|
(5) вот это лишнее
ДокОбъект = РеквизитФормыВЗначение("Объект"); пиши проще Запрос.УстановитьПараметр("ТабличнаяЧастьЗаказа", Объект.Товары.Выгрузить()); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |