|
Заполнить Табличную часть документа из Регистра сведений | ☑ | ||
---|---|---|---|---|
0
sasha-asn
29.11.19
✎
11:51
|
Здравствуйте уважаемые эксперты! Прошу вашей помощи, сильно не ругайтесь (учусь)...
Есть документ Инвентаризация, у него есть Табличная часть "Товары" у которой есть реквизит "МестоХраненияНаСкладе" с типом (Строка, Число). Есть Регистр Сведений "МестаХраненияНоменклатуры" с ресурсом "МестоХранения" (СправочникСсылка.МестаХранения). Нужно так чтобы для всех позиций номенклатуры заполнялся реквизит "МестоХраненияНаСкладе" из Регистра Сведений "МестаХраненияНоменклатуры", физически Место хранения прописывается пользователем в карточке номенклатуры. Я пытался сделать запрос с обработкой результата, но без успешно - запрос выводит Номенклатуру из Документа, но проблема в том что мой запрос так выводит весь список МестХранения не только для данной номенклатуры. https://ibb.co/0JRRM3Y на скриншоте всё как делаю ------------------------------------------------- ВЫБРАТЬ ИнвентаризацияТоваровНаСкладеТовары.Номенклатура, МестаХраненияНоменклатуры.МестоХранения ИЗ Документ.ИнвентаризацияТоваровНаСкладе.Товары КАК ИнвентаризацияТоваровНаСкладеТовары, РегистрСведений.МестаХраненияНоменклатуры КАК МестаХраненияНоменклатуры ГДЕ ИнвентаризацияТоваровНаСкладеТовары.Ссылка = &Ссылка |
|||
1
Василий Алибабаевич
29.11.19
✎
11:55
|
(0) Ничего сложного. Но! Нужно почитать либо за вложенные запросы и LeftJoin и RightJoin. Либо за пакетные и временные таблицы.
|
|||
2
Галахад
гуру
29.11.19
✎
11:56
|
ВЫБРАТЬ
ИнвентаризацияТоваровНаСкладеТовары.Номенклатура, МестаХраненияНоменклатуры.МестоХранения ИЗ Документ.ИнвентаризацияТоваровНаСкладе.Товары КАК ИнвентаризацияТоваровНаСкладеТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестаХраненияНоменклатуры КАК МестаХраненияНоменклатуры ПО ИнвентаризацияТоваровНаСкладеТовары.Номенклатура = МестаХраненияНоменклатуры.Номенклатура И ИнвентаризацияТоваровНаСкладеТовары.Ссылка.Склад = МестаХраненияНоменклатуры.Склад ГДЕ ИнвентаризацияТоваровНаСкладеТовары.Ссылка = &Ссылка |
|||
3
sasha-asn
29.11.19
✎
11:57
|
мучаюсь второй день, читал, пробовал, как увижу правильное решение до меня тогда дойдет... предпологаю
|
|||
4
hhhh
29.11.19
✎
12:02
|
(3) ну пробуй ЛЕВОЕ СОЕДИНЕНИЕ тогда. Зачем через запятую пишешь эти все документы и регистры?
|
|||
5
sasha-asn
29.11.19
✎
12:04
|
(2) правильно! Спасибо огромное! надо дальше учить матчасть запросов
|
|||
6
sasha-asn
29.11.19
✎
12:08
|
Товарищи эксперты подскажите - запрос не заполняет Место хранения, мне кажется я не правильно написал обработку результата -
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ИнвентаризацияТоваровНаСкладеТовары.Номенклатура, | МестаХраненияНоменклатуры.МестоХранения |ИЗ | Документ.ИнвентаризацияТоваровНаСкладе.Товары КАК ИнвентаризацияТоваровНаСкладеТовары | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.МестаХраненияНоменклатуры КАК МестаХраненияНоменклатуры | ПО ИнвентаризацияТоваровНаСкладеТовары.Номенклатура = МестаХраненияНоменклатуры.Номенклатура | И ИнвентаризацияТоваровНаСкладеТовары.Ссылка.Склад = МестаХраненияНоменклатуры.Склад |ГДЕ | ИнвентаризацияТоваровНаСкладеТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", Ссылка); РезультатЗапроса = Запрос.Выполнить().Выгрузить(); Товары.Загрузить(РезультатЗапроса); |
|||
7
Галахад
гуру
29.11.19
✎
12:14
|
Наверное имена разные.
|
|||
8
hhhh
29.11.19
✎
12:15
|
(6) ты объясни на пальцах, зачем тебе регистр, если всё равно ты выбираешь место хранения из документа
ИнвентаризацияТоваровНаСкладеТовары.Ссылка.Склад ??? |
|||
9
sasha-asn
29.11.19
✎
12:23
|
(8) МестоХранения это РС, который хранит значение которое я хочу вставить в Реквизит Табличной Части - МестоХраненияНаСкладе.
Не могу понять, почему не получается? Плс подскажите как тогда правильно |
|||
10
Галахад
гуру
29.11.19
✎
12:27
|
Почитай СП уже.
"Колонки таблиц совмещаются по именам." |
|||
11
hhhh
29.11.19
✎
12:35
|
(9) ну это выкинь
| И ИнвентаризацияТоваровНаСкладеТовары.Ссылка.Склад = МестаХраненияНоменклатуры.Склад |
|||
12
Галахад
гуру
29.11.19
✎
12:38
|
(11) Гм. А надо ли? Места хранения на разных складах могут быть совершенно разными.
|
|||
13
catena
29.11.19
✎
12:48
|
(9)"Реквизит Табличной Части - МестоХраненияНаСкладе."
"| МестаХраненияНоменклатуры.МестоХранения" И как же он должен понять, что это одно и то же, хм.... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |