Добрый день.
Мне нужно создать сложный запрос на подсчет количества свободных продуктов в карточке Продукт в продаже с помощью сервиса Select Query. Теперь подробнее, у меня есть доработанная карточка Продукт в продаже в которой есть стандартные поля Quantity (Количество) и OfferingID (Продукт), а также 2 новых поля StartTime (Время начала бронирования) и StopTime (Время окончания бронирования). С помощью этих полей нужно сформировать запрос, который подсчитывал бы количество всех забронированных в промежуток с Времени начала бронирования по Время окончания бронирования продуктов одного вида при создание новой записи в детали Продукт в продаже в версии Terrasoft 3.3.1.104. Каким образом можно это реализовать?

Нравится

1 комментарий

Здравствуйте!
Вам будет проще воспользоваться фильтрацией датасета по этим полям, используя фильтры сравнения .
Т.е. создаем два фильтра - (StartDate < Параметр.значение_даты) И (DueDate > Параметр.значение_даты) и далее:

//пролучаем Dataset
var Dataset = Services.GetNewItemByUSI(ds_Dataset);
//фильтруем
ApplyDatasetFilter(Dataset, 'StartDateFilterName', StartDate, true);
ApplyDatasetFilter(Dataset, 'DueDateFilterName', DueDate, true);
Dataset.Open();
var ItemsInDS = Dataset.RecordsCount;

В переменной ItemsInDS и будет количество записей удовлетворяющим условию.

Показать все комментарии