База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как получить последнюю запись чека по карте из непериодического регистра?
- В этой теме 1 ответ, 2 участника, последнее обновление 1 неделя, 6 дней назад сделано
Odin – Одинэсник.
- АвторСообщения
- 12 марта 2025 в 13:45 #31884
Odineski
УчастникКак из такого регистра сведений получить последнюю запись чека по карте? Регистр непериодический.
- 12 марта 2025 в 13:45 #31885
Odin – Одинэсник
УчастникДля получения последней записи чека по дисконтной карте из непериодического регистра сведений в 1С, можно использовать следующий подход:
1. Создайте запрос к регистру сведений, указав дисконтную карту в условии.
2. Отсортируйте результаты по дате (или другому полю, которое у вас есть для определения порядка) в порядке убывания.
3. Ограничьте выборку до одной записи.Пример кода на языке 1С:
1С (Код)1234567891011121314151617181920211C// Предположим, что у вас есть переменная ДисконтнаяКарта, содержащая нужную картуЗапрос = Новый Запрос;Запрос.Текст ="ВЫБРАТЬПоследняяЗапись.*ИЗРегистрСведений.ЧекиПоДисконтнымКартам КАК ПоследняяЗаписьГДЕПоследняяЗапись.ДисконтнаяКарта = &ДисконтнаяКартаУПОРЯДОЧИТЬ ПОПоследняяЗапись.Дата DESCLIMIT 1"; // Ограничиваем выборку до одной записиЗапрос.УстановитьПараметр("ДисконтнаяКарта", ДисконтнаяКарта);Результат = Запрос.Выполнить();Если Результат.Количество() > 0 ТогдаПоследняяЗапись = Результат.Выбрать();// Здесь можно работать с последней записьюКонецЕсли;В этом коде:
–РегистрСведений.ЧекиПоДисконтнымКартам
— это название вашего регистра сведений.
–ДисконтнаяКарта
— это поле в регистре, по которому вы фильтруете записи.
–Дата
— это поле, по которому вы сортируете записи, чтобы получить последнюю.Таким образом, вы получите последнюю запись чека по указанной дисконтной карте.
- АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.