Запрос к табличной части нового документа

1. radik76 15.12.08 13:54 Сейчас в теме
Несколько раз сталкивался с проблеммой.
Запрос к табличной части нового незаписанного документа ничего не возвращает.
Подскажите как это можно решить?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
12. user1152509 02.12.19 11:39 Сейчас в теме
Запр = Новый Запрос("
|ВЫБРАТЬ * Поместить ТЧ ИЗ &ТЧ КАК ТЧ
|;
|ВЫБРАТЬ * ИЗ ТЧ
|");

Запр.УстановитьПараметр("ТЧ",ТЧ_НаФорме.Выгрузить());

Получить данные по ТабЧасти еще не с записанного документа.
13. m.vorontcov 19.10.21 14:58 Сейчас в теме
(12) Поправка
Запрос = Новый Запрос("
|ВЫБРАТЬ ТЧ.* Поместить ТЧ ИЗ &ТЧ КАК ТЧ
|;
|ВЫБРАТЬ * ИЗ ТЧ
|");
2. Душелов 4017 15.12.08 15:06 Сейчас в теме
Надо объект, а не ссылку в качестве параметра передавать.
3. alexk-is 6534 16.12.08 07:57 Сейчас в теме
Посмотри "Распределение суммы по таблице значений"
Там запрос к табличной части обработки. Табличные части обработки не сохраняются в базе.
4. luns 16.12.08 14:32 Сейчас в теме
(0) Временные таблицы спасут.
5. Fuego 462 16.12.08 21:36 Сейчас в теме
чё за бред? Запрос читает данные из базы данных. Запрос по табличным частям избавляет нас от многочисленного неявного обращения к базе данных. Лучше взять все данные сразу (а не порциями) и поместить их в оперативную память для оперативного же обращения к ним. А незаписанный документ ещё находится только в оперативной памяти! Нет записи, нет и ссылки! А следовательно и не прочтёшь по условию Док.Товары.Ссылка = &ТекущийДокумент... А выполнять запрос по объекту, который уже (ещё) находится в оперативной памяти смысла не вижу. Перегоняем объект из своей оперативки на сервер 1С:Предприятия, а потом оттуда тянем данные назад? Это поцелуй в задницу через плечо...
6. Душелов 4017 16.12.08 21:45 Сейчас в теме
По хорошему, просто записывается объект перед этими действами и все...
7. O-Planet 6432 17.12.08 02:03 Сейчас в теме
А такое не пройдет?

Код
З=Новый Запрос(
"ВЫБРАТЬ
ТЧ.Номенклатура,
ТЧ.Цена
ИЗ
&ТЧ КАК ТЧ");

З.УстановитьПараметр("ТЧ",Товары);
Показать полностью


Здесь Товары - табличная часть.
Somebody1; +1 Ответить
8. Злобный Фей 17.12.08 02:32 Сейчас в теме
(7) По идее должно проканать
9. Злобный Фей 17.12.08 02:33 Сейчас в теме
+(8) но т.к. проверять лень, то точно проканает Товары.Выгрузить()
10. Fuego 462 17.12.08 09:32 Сейчас в теме
(7) я об этом методе и говорю. Зачем отправлять табличную часть как параметр на сервер предприятия, а потом тащить его назад?.. Полностью поддерживаю идею Душелова в (6). Я вообще не понимаю, зачем делать запрос по табличной части, которая не записана. Если для проведения документа - в обработчике проведения сам документ уже записан, и начата транзакция проведения. В обработчике ПриЗаписи, документ уже записан, но транзакция записи ещё не зафиксирована. Но уже есть ссылка на документ.
11. radik76 18.12.08 14:13 Сейчас в теме
O-Planet спасибо. Разумный ответ. чегото подобного и хотелось.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот