|
Внутреннее соединение | ☑ | ||
---|---|---|---|---|
0
НАТалья Голубева
28.06.16
✎
11:15
|
Добрый день...При запросе участвуют регистр и документ... Надо чтобы в результате добавились в ТЧ весь список номенклатуры по документу а данные с регистра только цены в приделах списка номенклатуры. Однако у меня это не получается подскажите плизз...
Процедура ЗаполнитьПоЦенеЗакупкиМатериалы(Кнопка) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЦеныНоменклатурыСрезПоследних.ТипЦен.Ссылка КАК ТипЦен, | ЦеныНоменклатурыСрезПоследних.Цена, | ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка КАК Номенклатура, | РасчетСебестоимостивсематериалы.Материал.Ссылка КАК Материал, | РасчетСебестоимостивсематериалы.ЕдиницаИзмерения КАК ЕДИЗМ, | РасчетСебестоимостивсематериалы.Количество, | РасчетСебестоимостивсематериалы.КолГП, | РасчетСебестоимостивсематериалы.ГотоваяПродукция КАК ГП |ИЗ | Документ.РасчетСебестоимости.всематериалы КАК РасчетСебестоимостивсематериалы | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних | ПО РасчетСебестоимостивсематериалы.Материал.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка |ГДЕ | РасчетСебестоимостивсематериалы.Ссылка = &ЭтотДокумент | И РасчетСебестоимостивсематериалы.Ссылка.Дата = &Дата"; Запрос.УстановитьПараметр("Дата", Дата); //Дата Запрос.УстановитьПараметр("ЭтотДокумент", ЭтотОбъект.Ссылка); Результат = Запрос.Выполнить(); ТЗ=Результат.Выгрузить(); ВыбрЭлем=ТЗ.ВыбратьСтроку(); Выборка = Запрос.Выполнить().Выбрать(); всематериалы.Очистить(); ЦенаЗакупки=Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("цена закупки").Ссылка; Пока Выборка.Следующий() Цикл Стр=всематериалы.Добавить(); Стр.Материал=Выборка.Номенклатура; Если ЦенаЗакупки=Выборка.ТипЦен Тогда Стоим = Выборка.Цена; Иначе Стоим = ""; КонецЕсли; Стр.ЦенаМатериалов=Стоим; Стр.ЕдиницаИзмерения=Выборка.ЕДИЗМ; Стр.Количество=Выборка.Количество; Стр.КолГП=Выборка.КолГП; Стр.ГотоваяПродукция=Выборка.ГП; Стр.Сумма=Выборка.Количество*Выборка.Цена; КонецЦикла; КонецПроцедуры |
|||
1
Ёпрст
28.06.16
✎
11:18
|
(0)
для начала, >>>РасчетСебестоимостивсематериалы.Материал.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка выкинуть отсюда ссылка, затем выкинуть это: >>>И РасчетСебестоимостивсематериалы.Ссылка.Дата = &Дата"; затем срез последних ограничить нужным типом цен |
|||
2
Ёпрст
28.06.16
✎
11:19
|
или ходябы делать соединение еще по единицам измерения
|
|||
3
Ёпрст
28.06.16
✎
11:20
|
и везде, словы ссылка выкинь
|
|||
4
НАТалья Голубева
28.06.16
✎
11:21
|
ок час исправлю...
|
|||
5
aleks_default
28.06.16
✎
11:22
|
Смешались в кучу кони, люди...
1) | ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка КАК Номенклатура, это нахер убрать 2) Стр.Материал=Выборка.Номенклатура; Если ЦенаЗакупки=Выборка.ТипЦен Тогда Стоим = Выборка.Цена; Иначе Стоим = ""; КонецЕсли; Это тоже заменить на Стр.Материал=Выборка.Материал; |
|||
6
aleks_default
28.06.16
✎
11:24
|
.Ссылка
везде убрать нафиг. Оставить только здесь |ГДЕ | РасчетСебестоимостивсематериалы.Ссылка = &ЭтотДокумент |
|||
7
НАТалья Голубева
28.06.16
✎
12:32
|
Ок все получилось... Всем спасибо
|
|||
8
Мимохожий Однако
28.06.16
✎
12:33
|
(7)Сбрось что получилось в результате.
|
|||
9
НАТалья Голубева
28.06.16
✎
12:37
|
Правда до конца не проверила ..правильно ли формирует.. но в целом врод как так... буду чуть позже проверять..
Процедура ЗаполнитьПоЦенеЗакупкиМатериалы(Кнопка) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЦеныНоменклатурыСрезПоследних.ТипЦен.Ссылка КАК ТипЦен, | ЦеныНоменклатурыСрезПоследних.Цена, | ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка КАК Номенклатура, | РасчетСебестоимостивсематериалы.Материал.Ссылка КАК Материал, | РасчетСебестоимостивсематериалы.ЕдиницаИзмерения КАК ЕДИЗМ, | РасчетСебестоимостивсематериалы.Количество, | РасчетСебестоимостивсематериалы.КолГП, | РасчетСебестоимостивсематериалы.ГотоваяПродукция КАК ГП |ИЗ | Документ.РасчетСебестоимости.всематериалы КАК РасчетСебестоимостивсематериалы | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних | ПО РасчетСебестоимостивсематериалы.Материал = ЦеныНоменклатурыСрезПоследних.Номенклатура |ГДЕ | РасчетСебестоимостивсематериалы.Ссылка = &ЭтотДокумент"; Запрос.УстановитьПараметр("Дата", Дата); //Дата Запрос.УстановитьПараметр("ЭтотДокумент", ЭтотОбъект.Ссылка); Результат = Запрос.Выполнить(); ТЗ=Результат.Выгрузить(); ВыбрЭлем=ТЗ.ВыбратьСтроку(); Выборка = Запрос.Выполнить().Выбрать(); всематериалы.Очистить(); ЦенаЗакупки=Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("цена закупки").Ссылка; Пока Выборка.Следующий() Цикл Стр=всематериалы.Добавить(); Стр.Материал=Выборка.Материал; Если ЦенаЗакупки=Выборка.ТипЦен Тогда Стоим = Выборка.Цена; Иначе Стоим = 0; КонецЕсли; Стр.ЦенаМатериалов=Стоим; Стр.ЕдиницаИзмерения=Выборка.ЕДИЗМ; Стр.Количество=Выборка.Количество; Стр.КолГП=Выборка.КолГП; Стр.ГотоваяПродукция=Выборка.ГП; Стр.Сумма=Стр.Количество*Стр.ЦенаМатериалов; КонецЦикла; таблвсехматериалов = всематериалы.Выгрузить(); таблвсехматериалов.Свернуть("материал,ЕдиницаИзмерения,ЦенаМатериалов, ГотоваяПродукция, Сумма, КолГП", "Количество"); всематериалы.Загрузить(таблвсехматериалов); КонецПроцедуры |
|||
10
aleks_default
28.06.16
✎
12:55
|
Скока советов надавали, а ты все проигнорировала.
|
|||
11
AceVi
28.06.16
✎
12:59
|
(9) Этот гулебева явно не в себе) пол указан мужской)
|
|||
12
НАТалья Голубева
28.06.16
✎
13:34
|
Ничего я не проигнорировала...
->>>РасчетСебестоимостивсематериалы.Материал.Ссылка = ЦеныНоменклатурыСрезПоследних.Номенклатура.Ссылка... убрала ->>>И РасчетСебестоимостивсематериалы.Ссылка.Дата = &Дата"; ... убрала Правда Ссылка -слово не везде убрала... я чуть позже уберу.. |
|||
13
Dark_Warrior
28.06.16
✎
14:28
|
(12) >> Правда Ссылка -слово не везде убрала... я чуть позже уберу..
Обещаешь? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |