Сессия со списком элементов заказа

Свойства

Название

Значение

Тип

Описание

iRemindServiceSchemeIntegerRИдентификатор сервис-схемы, которая использовалась для печати напоминания о начале приготовления блюда. Ссылка на справочник ServiceSchemes
iPrintServiceSchemeIntegerRИдентификатор сервис-схемы, которая использовалась для первой сервис-печати. Ссылка на справочник ServiceSchemes
SessionFlagsTSessionFlagsR

Флаги сессии, set из элементов типа TSessionFlag:

  • sfServLine - Признак того что данная сессия является сервис-линией
  • sfEmpty - Пустой пакет (Lines.Count = 0)
  • sfVoidSession - Сессия в которой создан воид (не удалять даже если пустая)
  • sfLockServPrint - Не печатать пакет (временно)
  • sfCheckSession - Сессия в которой находятся чеки
  • sfDishExists - В пакете есть блюда (или нераспределяемые наценки)
  • sfNoticed - Пользователь был уведомлен о приближении времени распечатки.
  • sfNoticedRemind - Пользователь был уведомлен о приближении времени печати напоминания.
  • sfKursChanged - Пользователь редактировал порядок подачи.
  • sfOpenedExists - В распечатанном пакете существуют открытые блюда (их нужно напечатать)
  • sfIsDraft - Пакет является черновиком. Работает независимо от KursItem.Draft
  • sfIsNewSession - Пакет добавлен в текущем сеансе редактирования
  • sfKDSReadyMessage - Флаг "Сообщение о готовности пакета было отправлено"


ReadyAtTDateTimeRВремя к которому блюдо должно приготовлено
ReadyFlagPrintFlagR

Флаг печати по времени готовности, возможные значения:

  • pfNo - Не надо печатать
  • pfNow - Печатать при первой возможности
  • pfLater - Печатать когда придёт время
  • pfPrinted - Уже отправлено на печать
  • pfError- Была ошибка при подготовке задания к печати (не при печати)
RemindAtTDateTimeRВремя напоминания
RemindFlagTPrintFlagR

Флаг печати по времени напоминания, возможные значения:

  • pfNo - Не надо печатать
  • pfNow - Печатать при первой возможности
  • pfLater - Печатать когда придёт время
  • pfPrinted - Уже отправлено на печать
  • pfError- Была ошибка при подготовке задания к печати (не при печати)
PrintAtTDateTmeRВремя печати
PrintFlagTPrintFlagR

Флаг печати по времени печати, возможные значения:

  • pfNo - Не надо печатать
  • pfNow - Печатать при первой возможности
  • pfLater - Печатать когда придёт время
  • pfPrinted - Уже отправлено на печать
  • pfError- Была ошибка при подготовке задания к печати (не при печати)
iKursIntegerRИдентификатор порядка подачи, ссылка на справочник Kurses
LinesTSessionLinesRСписок элементов сессии (тип TCheckItem, пример см. ниже)
ExtraUNIIntegerRЗаполняется для сессий, которые были получены при переносе блюд между заказами. Указывает на UNI исходной сессии
ExtraVisitIntegerRЗаполняется для сессий, которые были получены при переносе блюд между заказами. Указывает на Visit в котором находилась исходная сессия
KursStringRНаименование порядка подачи
StationStringRНаименовании станции, на которой была добавлена сессия
TradeGroupStringRНаименование торговой группы
PeriodStringRНаименование периода
PriceScaleStringRНаименование типа цен
CreatorCodeIntegerRКод работника, который создал данную сессию
CreatorStringRНаименование работника, который создал данную сессию
AuthorStringRНаименование автора (работник, который последним редактировал данную сессию)
AuthorCodeIntegerRКод автора (работник, который последним редактировал данную сессию)
SessionTypeStringRСтроковое представление для типа сессии
iStationIntegerRИдентификатор станции, на которой была добавлена сессия. Ссылка на справочник Cashes
iTradeGroupIntegerRИдентификатор торговой группы, ссылка на справочник TradeGroups
iPeriodIntegerRИдентификатор периода, ссылка на справочник Periods
iPriceScaleIntegerRИдентификатор типа цены, ссылка на справочник PriceTypes
EndServiceTDateTimeRВремя добавления последнего блюда в сессию
StartServiceTDateTimeRВремя добавления первого блюда
iSessionTypeTSessionTypeR

Тип сессии:

  • stAuto - Создана автоматически на рабочей станции
  • stManual - Внесено на рабочей станции
  • stTransferIn - Перенесено из другой сессии см. ExtraVisitExtraIdInVisitExtra
  • stTransferShift - Перенесено из прошлой смены при закрытии
  • stTransferUnion - Перенесено из другой сессии в процессе слияния заказов
  • stXML - Пакет добавлен при обработке XML-команды
  • stTransferReturn - Возврат товара
TagIntegerRWСвойство для использования в скриптах
ModifiedBooleanRПризнак "Запись была изменена с момента предыдущего сохранения"
iAuthorIntegerRИдентификатор работника, который последний редактировал блюдо, ссылка на справочник Employees
iCreatorIntegerRИдентификатор работника, который добавил блюдо, ссылка на справочник Employees
NameStringRНазвание сессии, для вывода на экран
UNIIntegerRВнутренний идентификатор записи, уникальный номер в рамках визита
SifrIntegerRНе используется
NumberIntegerRНомер сессии в заказе
PartClosedBooleanRПризнак "В сесии есть оплаченные и неоплаченные блюда"

State

TDrawItemStateR

Статус сессии, TDrawItemState

  • disNone - не задан (не используется)
  • disOpened - открыт
  • disLocked - заблокировано (не используется)
  • disFixed - фиксировано пречеком
  • disPrinted - распечатано
  • disPartClosed- частично-оплачено
  • disClosed - закрыто/оплачено
  • disDeleted - удалено


Пример кода

var
  i: Integer;
  it: TCheckItem;
  paySum: double;
begin
  if not RKCheck.Valid then Exit;
  // Считаем сумму платежей
  paySum := 0;
  for i := 0 to RKCheck.CurrentOrder.Sessions.LinesCount - 1 do
  begin
    it := RKCheck.CurrentOrder.Sessions.Lines[i];
    if SYS.ObjectInheritsFrom(TObject(it), 'TPayLine') then
    begin
      paySum := paySum + TPayLine(it).BasicSum;
    end;
  end;
end;
CODE