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