По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(7) На самом деле должен, согласно документации. Просто я думал, что СрезПоследних работает аналогично таблицам остатков и оборотов регистров накопления.
Вот что написано в документации про регистр сведений:
А вот что про регистр накопления:
Вот что написано в документации про регистр сведений:
По каждой комбинации измерений будет найдена наиболее поздняя запись, но не более поздняя, чем указанная дата.
А вот что про регистр накопления:
Агрегация производится по измерениям указанным в запросе.
(9) чем отличаются фразы?
1. По каждой комбинации измерений
2. По каждой комбинации измерений, выбранных в запросе
И, кстати, вот что написано в синтакс-помощнике: "Записи подбираются для каждого сочетания из ВСЕХ Имеющихся значений измерений регистра."
Т.е. не из выбранных, а имеющихся
1. По каждой комбинации измерений
2. По каждой комбинации измерений, выбранных в запросе
И, кстати, вот что написано в синтакс-помощнике: "Записи подбираются для каждого сочетания из ВСЕХ Имеющихся значений измерений регистра."
Т.е. не из выбранных, а имеющихся
(11)Если у вы изначально знаете по каким измерениям вам надо срез последних (надо понимать, что б получить 1 запись, надо указать все измерения) то срез последних всё же подойдет.
А если вы не знаете по каким измерениям вам надо срез(знаете только 1 измерение), будьте готовы получить надцать записей. Ведь программа не может за вас додумать что вам конкретно надо, а уже эти записи фильтруйте/группируйте как хотите.
Возьмём пример автора. Откуда программа знает по какому типу цен вам надо получить информацию? Если в условии ВТ дописать, ТипЦен =&Тип, ВТ отлично это скушает, и если измерений больше нет - выдаст вам 1 цену.
А если вы не знаете по каким измерениям вам надо срез(знаете только 1 измерение), будьте готовы получить надцать записей. Ведь программа не может за вас додумать что вам конкретно надо, а уже эти записи фильтруйте/группируйте как хотите.
Возьмём пример автора. Откуда программа знает по какому типу цен вам надо получить информацию? Если в условии ВТ дописать, ТипЦен =&Тип, ВТ отлично это скушает, и если измерений больше нет - выдаст вам 1 цену.
(12)Возьмём пример автора. Откуда программа знает по какому типу цен вам надо получить информацию? Если в условии ВТ дописать, ТипЦен =&Тип, ВТ отлично это скушает, и если измерений больше нет - выдаст вам 1 цену.
Автор ожидал от программы такой логики:
Программист указал в выборке всего одно измерение, значит остальные измерения его не интересуют, таким образом выдаём ему последнее значение по интересующему измерению, не зависимо от остальных измерений.
Теперь то я буду аккуратнее обращаться со срезом последних =)
Автор ожидал от программы такой логики:
Программист указал в выборке всего одно измерение, значит остальные измерения его не интересуют, таким образом выдаём ему последнее значение по интересующему измерению, не зависимо от остальных измерений.
Теперь то я буду аккуратнее обращаться со срезом последних =)
(14) мысль следущая:
в результате будет столько записей, сколько в регистре встречается различных значений по любому измерению регистра (максимальное количество). Т.е. если по измерению1 2 различных значения, а по измерению2 5 различных значений, в итоге будет 5 строк
в результате будет столько записей, сколько в регистре встречается различных значений по любому измерению регистра (максимальное количество). Т.е. если по измерению1 2 различных значения, а по измерению2 5 различных значений, в итоге будет 5 строк
(15)Всё верно, вот только если четко задать эти измерения то получишь 1 строку :)
Допустим есть измерения Тип цен и Склад, и ресурс - цена.
Если ты четко укажешь какой тип цен и склад тебе нужен в срезе последних, то получишь 1 запись с этой ценой.
Если укажешь только тип, то получишь столько записей - сколько у тебя складов по данному типу и цены по каждому из них.
Если укажешь только склад - получишь столько записей - сколько у тебя было типов цен на этом складе и цены в соответствии с типом.
Если измерение склад не используется, то достаточно будет указать тип, что б получить 1 запись.
Допустим есть измерения Тип цен и Склад, и ресурс - цена.
Если ты четко укажешь какой тип цен и склад тебе нужен в срезе последних, то получишь 1 запись с этой ценой.
Если укажешь только тип, то получишь столько записей - сколько у тебя складов по данному типу и цены по каждому из них.
Если укажешь только склад - получишь столько записей - сколько у тебя было типов цен на этом складе и цены в соответствии с типом.
Если измерение склад не используется, то достаточно будет указать тип, что б получить 1 запись.
Может кому-то пригодиться, шоб голову долго не ломать.
Имеем:
Регистр сведений "ПартииТоваров".
Измерения: "Товар", "Тип", "МестоХранения".
Ресурсы: "Количество", "Цена"
Нужно: Узнать, тупо, в каких количествах товар приходил последний раз (можно последний на какую-то дату), не важно куда и какого типа. Это же актуально и для остальных ресурсов.
Имеем:
Регистр сведений "ПартииТоваров".
Измерения: "Товар", "Тип", "МестоХранения".
Ресурсы: "Количество", "Цена"
Нужно: Узнать, тупо, в каких количествах товар приходил последний раз (можно последний на какую-то дату), не важно куда и какого типа. Это же актуально и для остальных ресурсов.
ВЫБРАТЬ
ПартииТоваровСрезПоследних.Товар КАК Товар1,
МАКСИМУМ(ПартииТоваровСрезПоследних.Регистратор.Дата) КАК ПоследнийПриход
ПОМЕСТИТЬ
тбПоследниеПоступления
ИЗ
РегистрСведений.ПартииТоваров.СрезПоследних(&Дата) КАК ПартииТоваровСрезПоследних
СГРУППИРОВАТЬ ПО
ПартииТоваровСрезПоследних.Товар
;
ВЫБРАТЬ
ПартииТоваровСрезПоследних.Товар КАК Товар,
ПартииТоваровСрезПоследних.Количество КАК Количество
ИЗ
РегистрСведений.ПартииТоваров.СрезПоследних(&Дата) КАК ПартииТоваровСрезПоследних
ЛЕВОЕ СОЕДИНЕНИЕ
тбПоследниеПоступления КАК тбПоследниеПоступления
ПО
тбПоследниеПоступления.Товар1 = ПартииТоваровСрезПоследних.Товар
ГДЕ
ПартииТоваровСрезПоследних.Регистратор.Дата = тбПоследниеПоступления.ПоследнийПриход
УПОРЯДОЧИТЬ ПО
Товар.Наименование
Показать
Хотел тему новую создавать, но гугл привел меня сюда. Тоже думал что СрезПоследних будет только по измерению в запросе.
Еще можно
Еще можно
ВЫБРАТЬ ПЕРВЫЕ 1
ПартииТоваровСрезПоследних.Товар КАК Товар1,
ПартииТоваровСрезПоследних.Количество КАК Количество
ПОМЕСТИТЬ
тбПоследниеПоступления
ИЗ
РегистрСведений.ПартииТоваров.СрезПоследних(&Дата) КАК ПартииТоваровСрезПоследних
УПОРЯДОЧИТЬ ПО ПартииТоваровСрезПоследних.Период УБЫВ
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот