![]() |
![]() |
|
Добавить последнюю закупочную цен | ☑ | ||
---|---|---|---|---|
0
myr4ik07
14.08.15
✎
21:11
|
Привет, имею запрос
&НаКлиенте Процедура СписокПриАктивизацииСтроки(Элемент) СписокПриАктивизацииСтрокиНаСервере(Элемент.ТекущаяСтрока); КонецПроцедуры &НаСервере Процедура СписокПриАктивизацииСтрокиНаСервере(Товар) Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; МенеджерВТ = Запрос.МенеджерВременныхТаблиц; Запрос.Текст = "ВЫБРАТЬ | ОстатокТоваров.СтруктурнаяЕдиница КАК Склад, | ОстатокТоваров.КоличествоОстаток КАК Остаток, | ЕСТЬNULL(Цена1.Цена, 0) КАК Цена1, | ЕСТЬNULL(Цена3.Цена, 0) КАК Цена3, | ЕСТЬNULL(Цена4.Цена, 0) КАК Цена4 |ИЗ | РегистрНакопления.ЗапасыНаСкладах.Остатки(, Номенклатура = &Номенклатура) КАК ОстатокТоваров | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &Цена1) КАК Цена1 | ПО ОстатокТоваров.Номенклатура = Цена1.Номенклатура | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &Цена3) КАК Цена3 | ПО ОстатокТоваров.Номенклатура = Цена3.Номенклатура | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &Цена4) КАК Цена4 | ПО ОстатокТоваров.Номенклатура = Цена4.Номенклатура"; Запрос.УстановитьПараметр("Номенклатура", Товар); Запрос.УстановитьПараметр("Цена1", Справочники.ВидыЦен.НайтиПоКоду("000000001")); Запрос.УстановитьПараметр("Цена3", Справочники.ВидыЦен.НайтиПоКоду("000000003")); Запрос.УстановитьПараметр("Цена4", Справочники.ВидыЦен.НайтиПоКоду("000000004")); Результат = Запрос.Выполнить().Выгрузить(); ОстаткиСЦенами.Загрузить(Результат); КонецПроцедуры нужно добавить последнюю закупочную цену, точнее последнюю цену по которой закупался товар !Пробовал левый соединением РС.ЦеныНоменклатурыКонтрагентов но показывает все последние по всем контрагентам, а мне не важно какой контрагент, главное получить последнюю |
|||
1
Мимохожий Однако
14.08.15
✎
21:26
|
Покажи как пробовал. Убери группировку по контрагентам.
|
|||
2
myr4ik07
14.08.15
✎
21:28
|
(1) ВЫБРАТЬ
ОстатокТоваров.СтруктурнаяЕдиница КАК Склад, ОстатокТоваров.КоличествоОстаток КАК Остаток, ЕСТЬNULL(Цена1.Цена, 0) КАК Цена1, ЕСТЬNULL(Цена3.Цена, 0) КАК Цена3, ЕСТЬNULL(Цена4.Цена, 0) КАК Цена4 ИЗ РегистрНакопления.ЗапасыНаСкладах.Остатки(, Номенклатура = &Номенклатура) КАК ОстатокТоваров ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &Цена1) КАК Цена1 ПО ОстатокТоваров.Номенклатура = Цена1.Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &Цена3) КАК Цена3 ПО ОстатокТоваров.Номенклатура = Цена3.Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &Цена4) КАК Цена4 ПО ОстатокТоваров.Номенклатура = Цена4.Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних ПО ОстатокТоваров.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура |
|||
3
myr4ik07
14.08.15
✎
21:29
|
(1) дублирует строки из за множественного списка закупочных цен по разным контрагентам
|
|||
4
myr4ik07
14.08.15
✎
22:00
|
вроде это работает так как надо
ВЫБРАТЬ ПЕРВЫЕ 1 ЦеныНоменклатурыКонтрагентовСрезПоследних.Номенклатура КАК Номенклатура, ЦеныНоменклатурыКонтрагентовСрезПоследних.Цена КАК Цена ПОМЕСТИТЬ Закупка ИЗ РегистрСведений.ЦеныНоменклатурыКонтрагентов.СрезПоследних(, ) КАК ЦеныНоменклатурыКонтрагентовСрезПоследних ГДЕ ЦеныНоменклатурыКонтрагентовСрезПоследних.Номенклатура = &Номенклатура УПОРЯДОЧИТЬ ПО ЦеныНоменклатурыКонтрагентовСрезПоследних.Период УБЫВ ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ОстатокТоваров.СтруктурнаяЕдиница КАК Склад, ОстатокТоваров.Номенклатура, ЕСТЬNULL(ОстатокТоваров.КоличествоОстаток, 0) КАК Остаток, ЕСТЬNULL(ВременнаяТаблица.Цена, 0) КАК Поле1, ЕСТЬNULL(Цена1.Цена, 0) КАК Цена1, ЕСТЬNULL(Цена3.Цена, 0) КАК Цена2, ЕСТЬNULL(Цена4.Цена, 0) КАК Цена3 ИЗ РегистрНакопления.ЗапасыНаСкладах.Остатки(, Номенклатура = &Номенклатура) КАК ОстатокТоваров ЛЕВОЕ СОЕДИНЕНИЕ Закупка КАК ВременнаяТаблица ПО ОстатокТоваров.Номенклатура = ВременнаяТаблица.Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &ВидЦен1) КАК Цена1 ПО ОстатокТоваров.Номенклатура = Цена1.Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &ВидЦен3) КАК Цена3 ПО ОстатокТоваров.Номенклатура = Цена3.Номенклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦен = &ВидЦен4) КАК Цена4 ПО ОстатокТоваров.Номенклатура = Цена4.Номенклатура |
|||
5
myr4ik07
14.08.15
✎
22:05
|
от капец, не то, в консоле нормально отрабатывает, а с конфы висит
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |