|
1С СКД вывод последней цены. | ☑ | ||
---|---|---|---|---|
0
Олеся92
16.01.15
✎
08:36
|
Подскажите пожалуйста, уже всю голову сломала :(
Формирую отчет выводится несколько одинаковых наименований с разной ценой. Как сделать так что бы бралась последняя цена ? То есть должно выводиться 1 наименование с последней ценой. Скрин:http://lvkr.ru/f/jsAtHZ/640.jpg Вот сам запрос: ВЫБРАТЬ ПриходнаяНакладнаяТаблЧасть.Цена, ПриходнаяНакладнаяТаблЧасть.Номенклатура.Наименование КАК НоменклатураНаименование1, СпецификацияТКТаблицаSMD.Номенклатура.Наименование, СпецификацияТКТаблицаSMD.Quantity, СпецификацияТКТаблицаSMD.MyData, СпецификацияТКТаблицаSMD.Ссылка, СпецификацияТКТаблицаSMD.Ссылка.Наименование ИЗ Справочник.СпецификацияТК.ТаблицаSMD КАК СпецификацияТКТаблицаSMD ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриходнаяНакладная.ТаблЧасть КАК ПриходнаяНакладнаяТаблЧасть ПО СпецификацияТКТаблицаSMD.Номенклатура.Наименование = ПриходнаяНакладнаяТаблЧасть.Номенклатура.Наименование |
|||
1
zulu_mix
16.01.15
✎
08:40
|
Взять срезпоследних из регистра
|
|||
2
butterbean
16.01.15
✎
08:41
|
нужно получить таблицу с Номенклатура и МАКСИМУМ(ПриходнаяНакладная.Дата), потом ее соединять с Документ.ПриходнаяНакладная.ТаблЧасть для получения цен, потом уже все это соединять с СпецификацияТКТаблицаSMD
|
|||
3
ам794123
16.01.15
✎
08:50
|
(1) где там регистр в запросе?
|
|||
4
zulu_mix
16.01.15
✎
08:51
|
(3) в том то и дело
|
|||
5
Cube
16.01.15
✎
08:57
|
(0) А у тебя что за конфа? Там вообще хоть один регистр есть?
|
|||
6
Олеся92
16.01.15
✎
10:01
|
(5) Да есть не типовая ...по складскому
|
|||
7
Cube
16.01.15
✎
10:15
|
(6) Ну, ежели есть регистры, то почему ты из регистров информацию не берешь?
|
|||
8
Олеся92
16.01.15
✎
10:31
|
(7) Да там не было ресурса цена я добавила, щас попробую
|
|||
9
Cube
16.01.15
✎
10:35
|
(8) Стоять!
Отойди-ка от конфигуратора... :) Где не было ресурса цена? |
|||
10
Metman
16.01.15
✎
10:50
|
(8) вот это по-пятничному!
|
|||
11
ИС-2
naïve
16.01.15
✎
11:19
|
(7) если она просто свяжет с регистром по номенклатуре, то у нее пойдет дублирование строк (например из-за того, что несколько типов цен).
|
|||
12
Олеся92
16.01.15
✎
13:05
|
(11) Вот такая история у меня Скрин : http://lvkr.ru/f/4DenaU/1280.jpg
Ошибка Т.к повторяется номенклатура . Подскажите пожалуйста как можно сделать цикл чтобы отфильтровались одинаковые номенклатуры. Нужно чтобы в регистр записались только не повторяющиеся номенклатуры. // регистр ЦеныТоваров Движения.ЦеныТоваров.Записывать = Истина; Для Каждого ТекСтрокаТаблЧасть Из ТаблЧасть Цикл Движение = Движения.ЦеныТоваров.Добавить(); Движение.Период = Дата; Движение.Товар = ТекСтрокаТаблЧасть.Номенклатура; Движение.Цена = ТекСтрокаТаблЧасть.Цена; КонецЦикла; |
|||
13
Cube
16.01.15
✎
13:07
|
(12) На (9) ответь сначала :)
|
|||
14
Олеся92
16.01.15
✎
14:48
|
(9) Да там вообще регистра сведений не было.
Создала новый Сделала срез последних : а почему то выводятся все цены( Запрос: ВЫБРАТЬ СпецификацияТКТаблицаSMD.Номенклатура.Наименование, СпецификацияТКТаблицаSMD.Quantity, СпецификацияТКТаблицаSMD.MyData, СпецификацияТКТаблицаSMD.Ссылка, СпецификацияТКТаблицаSMD.Ссылка.Наименование, ЦеныТоваровСрезПоследних.Цена, ЦеныТоваровСрезПоследних.Товар.Наименование ИЗ Справочник.СпецификацияТК.ТаблицаSMD КАК СпецификацияТКТаблицаSMD ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныТоваров.СрезПоследних КАК ЦеныТоваровСрезПоследних ПО СпецификацияТКТаблицаSMD.Номенклатура.Наименование = ЦеныТоваровСрезПоследних.Товар.Наименование запись в регистр из документа приходная накладная // регистр ЦеныТоваров Движения.ЦеныТоваров.Записывать = Истина; Для Каждого ТекСтрокаТаблЧасть Из ТаблЧасть Цикл Движение = Движения.ЦеныТоваров.Добавить(); Движение.Период = Дата; Движение.Товар = ТекСтрокаТаблЧасть.Номенклатура; Движение.Цена = ТекСтрокаТаблЧасть.Цена; Движение.ШК=ТекСтрокаТаблЧасть.ШК; КонецЦикла; |
|||
15
Бубка Гоп
16.01.15
✎
14:52
|
(14) а почему не задаете дату, на которую нужен срез?
|
|||
16
Бубка Гоп
16.01.15
✎
14:53
|
(14) ну и соединять по наименованию, это мягко говоря не айс
|
|||
17
ИС-2
naïve
16.01.15
✎
14:57
|
(12)
Движения.ЦеныТоваров.Записывать = Истина; Для Каждого ТекСтрокаТаблЧасть Из ТаблЧасть Цикл Если Движения.ЦеныТоваров.Найти(ТекСтрокаТаблЧасть.Номенклатура) = неопределено тогда Движение = Движения.ЦеныТоваров.Добавить(); Движение.Период = Дата; Движение.Товар = ТекСтрокаТаблЧасть.Номенклатура; Движение.Цена = ТекСтрокаТаблЧасть.Цена; конецесли; КонецЦикла; |
|||
18
Бубка Гоп
16.01.15
✎
14:59
|
(17) вы не допускаете того что в одной накладной будет две позиции с одной номенклатурой и разной ценой?
|
|||
19
Олеся92
16.01.15
✎
15:02
|
(18)Так не должно быть
|
|||
20
Бубка Гоп
16.01.15
✎
15:03
|
(19) "Не должно" и "не будет" разные вещи. Ну это уже на ваше усмотрение
|
|||
21
Бубка Гоп
16.01.15
✎
15:10
|
(14) и зачем дважды наименование вытягивать? и из справочника и из регистра
|
|||
22
Олеся92
19.01.15
✎
12:40
|
(17) Метод объекта не обнаружен (Найти)
|
|||
23
Олеся92
19.01.15
✎
13:34
|
Движения.ЦеныТоваров.Записывать = Истина;
Для Каждого ТекСтрокаТаблЧасть Из ТаблЧасть Цикл Если Движения.ЦеныТоваров.!!!!!!!!(Каким методом можно воспользоваться?)Найти(ТекСтрокаТаблЧасть.Номенклатура) = неопределено тогда Движение = Движения.ЦеныТоваров.Добавить(); Движение.Период = Дата; Движение.Товар = ТекСтрокаТаблЧасть.Номенклатура; Движение.Цена = ТекСтрокаТаблЧасть.Цена; конецесли; КонецЦикла; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |