Имя: Пароль:
1C
1С v8
Отбор документов по табличным частям
, ,
0 CalvinKlein
 
13.12.13
09:57
Привет всем! У меня есть документ, в котором штук пять табличных частей. В каждой табличной части есть реквизит. Как выбрать все документы, в которых этот реквизит является определенным значением? Как чётенько запрос составить?
1 Wobland
 
13.12.13
09:58
чотко объединить
2 PR
 
13.12.13
09:58
ОБЪЕДИНИТЬ
3 PR
 
13.12.13
09:59
(1) Не чотко, а чётенько
4 Black Dragon
 
13.12.13
10:00
ОДНОЗНАЧНО! ОБЪЕДИНИТЬ!
5 Wobland
 
13.12.13
10:01
(3) чем-то нехорошим отдаёт
6 CalvinKlein
 
13.12.13
10:01
Не не не, так это сколько вложенных запросов сделать на каждую табличную часть из дока сделать нужно...по-другому никак?
7 Wobland
 
13.12.13
10:02
(6) ага! испугался!
8 CalvinKlein
 
13.12.13
10:08
Подскажите, плиз, тогда, как в запросе при выборе поставить условие на подстроку в реквизите типа строка?
9 CalvinKlein
 
13.12.13
10:09
(7) есть немного)
10 Wobland
 
13.12.13
10:13
(8) сначала правильно всё спроектировать. а если гармония достигнута, то используй силу подобны
11 jsmith82
 
13.12.13
10:15
Функция Зохавать(ИмяДокумента, ИмяРеквизита, Значение)

Повторюшка=
"ВЫБРАТЬ
|    #ИмяТаблицы КАК ИмяТаблицы,
|    Таблица.#ИмяРеквизита
|ИЗ
|    Документ.#ИмяДокумента.#ИмяТаблицы КАК Таблица
|ГДЕ
|    Таблица.#ИмяРеквизита = &Значение";

Для Каждого ТабЧасть Из Метаданнные[ИмяДокумента].ТабличныеЧасти Цикл

ИмяТабЧасти = ТабЧасть.Имя;
НоваяПовторюшка = Повторюшка;
НоваяПовторюшка = СтрЗаменить(Повторюшка, "#Имядокумента", ИмяДокумента);
НоваяПовторюшка = СтрЗаменить(Повторюшка, "#ИмяТаблицы", ИмяТабЧасти);
НоваяПовторюшка = СтрЗаменить(Повторюшка, "#ИмяРеквизита", ИмяРеквизита);
НоваяПовторюшка = НоваяПовторюшка +
"|ОБЪЕДИНИТЬ
"//ЧОТКО";
КонецЦикла;

НоваяПовторюшка = НоваяПовторюшка + "ВНАТУРЕ";
Хвостик =
"ОБЪЕДИНИТЬ
"//ЧОТКОВНАТУРЕ";
НоваяПовторюшка = СтрЗаменить(НоваяПовторюшка, Хвостик, "");
Запрос = Новый Запрос();
Запрос.Текст = НоваяПовторюшка;
Результат = Запрос.Выполнить();

Возврат Результат;

КонецФункции
12 CalvinKlein
 
13.12.13
10:22
(11)ЧЁТЕНЬКО!!! Буду пробовать!, спасибо!