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