|
Нужна помощь по запросу в 1С 8.1 | ☑ | ||
---|---|---|---|---|
0
BarteZ
08.11.12
✎
10:15
|
Конфигурация Управление Производством ... В отчёте по нормам продукции необходимо брать количество исходя из спецификации из документа "Отчёт производства за смену" ... в данный момент берётся фактически использованное количество и запрос выглядит так ...
Запрос = Новый Запрос; Запрос.УстановитьПараметр("Выпуск", Выпуск); Запрос.УстановитьПараметр("Продукция", Справочники.Номенклатура.НайтиПоНаименованию("Продукция").Ссылка); Запрос.Текст = "ВЫБРАТЬ | ОтчетПроизводстваЗаСменуПродукция.Номенклатура.Код КАК КодЕАН, | ОтчетПроизводстваЗаСменуПродукция.Номенклатура КАК Имя, | ОтчетПроизводстваЗаСменуПродукция.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдИзм, | ОтчетПроизводстваЗаСменуПродукция.Количество КАК Количество Количество по спецификации в документе присутствует, но оно высчитывается перемножением данных справочника спецификации и количества продукции из документа ОтчетПроизводстваЗаСмену ... |
|||
1
BarteZ
08.11.12
✎
11:18
|
Хелп, люди добрые! Не могу сам доехать .. как через запрос вытащить позиции из справочника спецификаций и перемножить на кол-во произведённой продукции из документа ... :(
|
|||
2
kyrgyz
08.11.12
✎
11:23
|
В Каз типовой бух есть примерно такое. Если поможет вам по аналогии сделать я рад.
Функция РассчитатьРасходСырьяПоСпецификации(ОснованиеСсылка, ДокументаОснованиеТЧ, Номенклатура=Неопределено) Экспорт Запрос = Новый Запрос; ТекстЗапроса = "ВЫБРАТЬ | СпецификацииНоменклатурыИсходныеКомплектующие.Номенклатура КАК Номенклатура, | СпецификацииНоменклатурыИсходныеКомплектующие.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдиницаИзмерения, | ВЫБОР | КОГДА СпецификацииНоменклатуры.Количество = 0 | ТОГДА 0 | ИНАЧЕ ВЫРАЗИТЬ(ВложенныйЗапрос.КоличествоПродукции * СпецификацииНоменклатурыИсходныеКомплектующие.Количество / СпецификацииНоменклатуры.Количество КАК ЧИСЛО(15, 3)) | КОНЕЦ КАК Количество |ИЗ | (ВЫБРАТЬ | ДокументОснования.Спецификация КАК Спецификация, | СУММА(ДокументОснования.Количество) КАК КоличествоПродукции | ИЗ | Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ДокументОснования | ГДЕ | ДокументОснования.Ссылка = &Ссылка | И ДокументОснования.Спецификация <> &Спецификация"; Если Номенклатура <> Неопределено Тогда Если Не Номенклатура.Пустая() Тогда ТекстЗапроса = ТекстЗапроса + " | И ДокументОснования.Спецификация.Владелец.Ссылка = &Номенклатура"; Запрос.УстановитьПараметр("Номенклатура", Номенклатура); КонецЕсли; КонецЕсли; ТекстЗапроса = ТекстЗапроса + " | | СГРУППИРОВАТЬ ПО | ДокументОснования.Спецификация) КАК ВложенныйЗапрос | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СпецификацииНоменклатуры КАК СпецификацииНоменклатуры | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СпецификацииНоменклатуры.ИсходныеКомплектующие КАК СпецификацииНоменклатурыИсходныеКомплектующие | ПО СпецификацииНоменклатурыИсходныеКомплектующие.Ссылка = СпецификацииНоменклатуры.Ссылка | ПО ВложенныйЗапрос.Спецификация = СпецификацииНоменклатуры.Ссылка"; Запрос.Текст = ТекстЗапроса; Запрос.УстановитьПараметр("Ссылка", ОснованиеСсылка); Запрос.УстановитьПараметр("Спецификация", Справочники.СпецификацииНоменклатуры.ПустаяСсылка()); Запрос.Текст = СтрЗаменить(Запрос.Текст, "ОтчетПроизводстваЗаСмену.Продукция", ДокументаОснованиеТЧ); Возврат Запрос.Выполнить(); КонецФункции |
|||
3
kyrgyz
08.11.12
✎
11:25
|
Я вот как раз хочу сделать запрос за целый месяц. расчет по спецификациям именно с документа и перемноженное на количество выхода продукции и все это просуммировать. Пока еще не придумал.
|
|||
4
BarteZ
08.11.12
✎
11:26
|
(2),Cпасибо ... буду пробовать ... вроде бы соседняя позиция в документах, а вытащить её намного сложнее ..:(
|
|||
5
BarteZ
08.11.12
✎
12:22
|
Пока как-то не особо получается:( :( :(
|
|||
6
BarteZ
08.11.12
✎
12:23
|
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Выпуск", Выпуск); Запрос.УстановитьПараметр("Продукция", Справочники.Номенклатура.НайтиПоНаименованию("Продукция").Ссылка); Запрос.Текст = "ВЫБРАТЬ | ОтчетПроизводстваЗаСменуПродукция.Номенклатура.Код КАК КодЕАН, | ОтчетПроизводстваЗаСменуПродукция.Номенклатура КАК Имя, | ОтчетПроизводстваЗаСменуПродукция.Номенклатура.БазоваяЕдиницаИзмерения КАК ЕдИзм, | ВЫБОР | КОГДА СпецификацииНоменклатуры.Количество = 0 | ТОГДА 0 | ИНАЧЕ ВЫРАЗИТЬ(ВложенныйЗапрос.КоличествоПродукции * СпецификацииНоменклатурыИсходныеКомплектующие.Количество / СпецификацииНоменклатуры.Количество КАК ЧИСЛО(15, 3)) | КОНЕЦ КАК Количество |ИЗ | ВЫБРАТЬ | ДокументОснования.Спецификация КАК Спецификация, | СУММА(ДокументОснования.Количество) КАК КоличествоПродукции | ИЗ | Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ДокументОснования |ГДЕ | ОтчетПроизводстваЗаСменуПродукция.Ссылка В(&Выпуск) | И ОтчетПроизводстваЗаСменуПродукция.Номенклатура В ИЕРАРХИИ(&Продукция)"; ЗапросПоНоменклатуре = Запрос.Выполнить(); ВыборкаПоСтрокам = ЗапросПоНоменклатуре.Выгрузить(); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |