Отчётная БД предназначена для хранения регулярно обновляемых данных, на основании которых строятся многие отчёты (как фактические, так и прогнозируемые).

Rooms

Все жилые комнаты объекта (которые можно бронировать за гостями), за исключением служебных и помещений.


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2PropertyDatedate
xPKДата, на которую считаются показатели по номерам
3RoomTypeCodenvarchar8xPKКод типа номеров
4ParentRoomTypeCodenvarchar8

Код родительского типа номеров (при его наличии)
5RoomTypeCategoryCodenvarchar8x
Код категории типа номеров
6RoomCountint


Количество активных, неудаленных номеров данного типа.
Берется из таблицы со статистикой за прошлый период, либо из активного номерного фонда за даты, начиная с текущей.
Для компонентов всегда = 0, для остальных = 1
7PlaceCountint


Количество активных, неудаленных мест в номерах данного типа.
Для многокомпонентного типа = количеству компонентов, для компонентного = 1, для остальных = количеству основных мест
8RoomPlaceCountint


Количество активных, неудаленных единиц размешения данного типа.
Для многокомпонентного типа = количеству компонентов, для остальных = 1
9RoomOoiCountint


Количество номеров, изъятых из номерного фонда. Получаем из функции GetRepairs
10RoomOooCountint


Количество номеров, изъятых из наличия. Получаем из функции GetRepairs

11PlaceOoiCountint


Количество коек, изъятых из номерного фонда. Получаем из функции GetRepairs
12PlaceOooCountint


Количество коек, изъятых из наличия Получаем из функции GetRepairs

13RoomPlaceOoiCountint


Количество единиц размещения, изъятых из номерного фонда. Получаем из функции GetRepairs - требует пояснения (OOO тоже)
14RoomPlaceOooCountint


Количество единиц размещения, изъятых из наличия. Получаем из функции GetRepairs

15StandardGuestCountint
x

Количество основных мест в номере данного типа

16MaxGuestCountint
x
Максимальное количество мест в номере данного типа
17RoomTypeClassCodenvarchar8x
Класс типа комнаты


Invoices

Финансовые документы счетов


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2Idbigint
xPKИдентификатор финдока
3InvoiceNonvarchar64

Номер финдока
4ParentInvoiceNonvarchar64

Номер родительского финдока
5InvoiceTypenvarchar8x
Тип финдока
6FolioNonvarchar20

Номер счета, к которому привязан финдок
7DateTimeFromdatetime
x
Дата начала действия финдока
8DateTimeTodatetime
x
Дата окончания действия финдока
9Statusnvarchar8

Статус финдока (NEW, PRN, CANCEL)
10CreatedDatedatetime
x
Дата создания финдока
11DeletedDatedatetime


Дата удаления финдока
12Debitdecimal18,4

Сумма отрицательных транзакций
13Creditdecimal18,4

Сумма положительных транзакций


Reservations

Брони номеров


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8

x

PKКод объекта
2ReservationNonvarchar20xPKНомер брони
3Statusnvarchar8

Статус брони
4FolioNonvarchar20

Номер счета
5MainGuestFullNamenvarcharmaxx
ФИО главного гостя
6CreatedDatedatetime
x
Дата создания брони
7CreatorUserFullNamenvarchar194x
ФИО создавшего бронь
8ArrivalDateTimedatetime
x
Дата заезда брони (фактическая, а если отсутствует, то плановая)
9DepartureDateTimedatetime
x
Дата выезда брони (фактическая, а если отсутствует, то плановая)
10StayLengthint


Продолжительность пребывания брони.
Подсчитывается функцией GetStayLength.
11BookingRequestIduniqueidentifier


Признак создания в рамках одной заявки
12IsFromDeskbit
x
Признак брони, созданной от стойки регистрации. Создается сразу со статусом вселения.
13CompanyNonvarchar20

Номер компании
14CompanyNamenvarcharmax

Наименование компании
15CompanyCountrynvarchar255

Страна компании
16PayingCompanyNonvarchar20

Номер компании-плательщика
17PayingCompanyNamenvarcharmax

Наименование компании-плательщика
18PayingCompanyCountrynvarchar255

Страна компании-плательщика
19AgentCompanyNonvarchar20

Номер компании-агента
20AgentCompanyNamenvarcharmax

Наименование компании-агента
21AgentCompanyCountrynvarchar255

Страна компании-агента
Берется из гео-кода компании
22AdultCountint
x

Количество гостей-взрослых
Это значение и ниже до строки 49 включительно берется из таймлайна, определяемого по следующим условиям:

для броней в статусе RES, WAIT - таймлайн заезда

для броней в статусе OUT - таймлайн выезда

для броней в статусе IN, TMPOUT - таймлайн проживания (не заезд/выезд) за дату объекта

23ChildCountSumint
x
Количество гостей-детей. Без учета детей без места.
24Child1Countint
x
Количество гостей-детей 1-й группы. Без учета детей без места.
25Child2Countint
x
Количество гостей-детей 2-й группы. Без учета детей без места.
26Child3Countint
x
Количество гостей-детей 3-й группы. Без учета детей без места.
27Child4Countint
x
Количество гостей-детей 4-й группы. Без учета детей без места.
28Child5Countint
x
Количество гостей-детей 5-й группы. Без учета детей без места.
29GuestCountSumint


Общее количество гостей. Без учета детей без места.
30ExtraBedAdultCountint
x
Количество гостей-взрослых на доп. месте
31ExtraBedChildCountSumint
x
Количество гостей-детей на доп. месте. Без учета детей без места.
32ExtraBedChild1Countint
x
Количество гостей-детей 1-й группы на доп. месте. Без учета детей без места.
33ExtraBedChild2Countint
x
Количество гостей-детей 2-й группы на доп. месте. Без учета детей без места.
34ExtraBedChild3Countint
x
Количество гостей-детей 3-й группы на доп. месте. Без учета детей без места.
35ExtraBedChild4Countint
x
Количество гостей-детей 4-й группы на доп. месте. Без учета детей без места.
36ExtraBedChild5Countint
x
Количество гостей-детей 5-й группы на доп. месте. Без учета детей без места.
37ExtraBedGuestCountSumint


Общее количество гостей на доп. месте. Без учета детей без места.
38GuaranteeKindCodenvarchar8

Код вида гарантии
39IsGuaranteedbit


Признак гарантированная бронь или нет
40RateCodenvarchar8x
Код тарифа
41RateNamenvarchar255x
Наименование тарифа
42RoomCodenvarchar8

Код комнаты
43RoomNamenvarchar255

Наименование комнаты
44ParentLocationCodenvarchar8

Код родительского расположения (как правило корпус)
45LocationCodenvarchar8

Код расположения номера (как правило этаж)
46LocationNamenvarchar255

Наименование расположения номера
47RoomTypeCodenvarchar8

Код типа комнаты
48RoomTypeNamenvarchar255

Наименование типа комнаты
49RoomTypeCategoryCodenvarchar8

Код категории типа комнаты
50RoomTypeCategoryNamenvarchar255

Наименование категории типа комнаты
51RoomTypeCategorySystemCodenvarchar8

Системный код категории типа комнаты
52IsDayUseint
x
Признак того, что бронь DayUse
53OpenCodenvarchar255

Открытый код.
Для Белпрофсоюзкурорта в этом поле будет лежать отрасль промышленности профсоюза.
По наличию заполненного этого поля считаем, что гость относится к категории ФПБ.
54NoShowDateTimedatetime


Дата перевода в статус NoShow
55CancelDateTimedatetime


Дата перевода в статус Cancel
56ParentRoomCodenvarchar8

Код родительской комнаты
57StayChargeUnitnvarchar3

Тип проживания
58ReservationTypenvarchar255

Тип брони (индивидуальная бронь/групповая бронь/квота компании)
59CancellationReasonCodenvarchar8

Код причины отмены брони

ReservationGuests

Гости броней


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2Idbigint
xPKИдентификатор гостя
3ReservationNonvarchar20

Номер брони
4ProfileNonvarchar20

Номер профиля гостя
5FullNamenvarcharmaxx
ФИО
6Sexnvarcharmax

Пол

Из брони, если нет - из профиля гостя

7BirthDatedatetime


Дата рождения

Из брони, если нет - из профиля гостя

8Ageint


Возраст

Из брони, если нет - из профиля гостя
Вычисляется функцией GetFullAge

9Countrynvarchar255

Страна
10CountryCitizenshipnvarchar255

Гражданство
11CountryResidencenvarchar255

Категория гостя по стране гражданства. По-умолчанию варианты: Резидент, СНГ, Зарубежный
12Emailnvarcharmax

Адрес электронной почты

Из брони, если нет - из профиля гостя

13Phonenvarcharmax

Телефон
Берется любой один
14IsMainGuestbit
x
Признак главного гостя

Occupation

Информация о занятости номерного фонда на определённую дату по каждой брони. Не учитывает часовые брони.


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2DayDatedate
xPKДата проживания
3ReservationNonvarchar20xPKНомер брони
4QuotaId
bigint
xPKИдентификатор квоты
5QuotaItemIdbigint
xPKИдентификатор контракта квоты
6RoomCountint


Комнато-ночь.
Считаем как 1, если это первая бронь из разделенной и если это "полноценная" ночь (то есть у таймлайна признак StayNight = 1, у незаехавших, раньше выехавших, отмененных броней в этом поле стоит 0)
Не DayUse бронь
7PlaceCountint


Койко-ночь.
Считаем как "Количество основных мест в номере" при выполнении условий из строки 7

Не DayUse бронь

8RoomPlaceCountint



9ManCountint


Человеко-ночь.

Считаем как сумму всех значений в схеме размещения (взрослые + все категории детей) если это "полноценная" ночь и не DayUse бронь

10AdultCountint


Количество гостей-взрослых (если это "полноценная" ночь и не DayUse бронь)

11AdultCountOccupationint


Количество гостей-взрослых, используемое в расчете загрузки по людям.
Определяется, как наименьшее между реальным количеством гостей-взрослых и количеством основных мест по данному типу номеров.

(если это "полноценная" ночь и не DayUse бронь)

12Child1Countint


Количество гостей-детей 1-й группы (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.

13Child2Countint


Количество гостей-детей 2-й группы (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.

14Child3Countint


Количество гостей-детей 3-й группы (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.

15Child4Countint


Количество гостей-детей 4-й группы (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.

16Child5Countint


Количество гостей-детей 5-й группы (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.

17ChildCountOccupationint


Количество гостей-детей, используемое в расчете загрузки по людям.
Определяется, как наименьшее между реальным количеством гостей-детей и остатком от количества основных мест после вычета AdultCountOccupation

(если это "полноценная" ночь и не DayUse бронь)
Без учета детей без места.

18ExtraBedAdultCountint


Количество гостей-взрослых на доп. месте (если это "полноценная" ночь и не DayUse бронь)

19ExtraBedChild1Countint


Количество гостей-детей 1-й группы на доп. месте (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.
20ExtraBedChild2Countint
x
Количество гостей-детей 2-й группы на доп. месте (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.
21ExtraBedChild3Countint
x
Количество гостей-детей 3-й группы на доп. месте (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.
22ExtraBedChild4Countint
x
Количество гостей-детей 4-й группы на доп. месте (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.
23ExtraBedChild5Countint
x
Количество гостей-детей 5-й группы на доп. месте (если это "полноценная" ночь и не DayUse бронь). Без учета детей без места.
24ExtraBedGuestCountSumint


Количество гостей всего на доп. месте (если это "полноценная" ночь и не DayUse бронь)
25RateCodenvarchar8x
Код тарифа
26RateNamenvarchar255x
Наименование тарифа
27RateCategoryvarchar9

Категория тарифа

Гостевой, Льготный, Для сотрудников

28RoomCodenvarchar8

Код комнаты
29RoomNamenvarchar255

Наименование комнаты
30ParentLocationCodenvarchar8

Код родительского расположения (как правило корпус)
31LocationCodenvarchar8

Код расположения номера (как правило этаж)
32LocationNamenvarchar255

Наименование расположения номера
33RoomTypeCodenvarchar8

Код типа комнаты
34RoomTypeNamenvarchar255

Наименование типа комнаты
35RoomTypeCategoryCodenvarchar8

Код категории типа комнаты
36RoomTypeCategoryNamenvarchar255

Наименование категории типа комнаты
37RoomTypeClassCodenvarchar8

Код класса типа комнаты
38GeoCodeGrandParentnvarcharmax

Гео-код третьего уровня
Страна.
39GeoCodeParentnvarcharmax

Гео-код второго уровня.
Для РФ: республика, край, область, город федерального значения, автономная область, автономный округ. Для Беларуси тут сразу будет наименование области, потому что у них только области или Минск, потому что он не входит ни в одну область.
40GeoCodeName
nvarcharmax

Гео-код первого уровня

Для РФ: наименование (республика, край, область, город федерального значения, автономная область, автономный округ). Для Беларуси название района.

41GeoCodenvarchar8

Код гео-кода
42TrackCodenvarchar8

Трэк-код
43OpenCodenvarchar8

Открытый код.
 Для Белпрофсоюзкурорта в этом поле будет лежать отрасль промышленности профсоюза. По наличию заполненного этого поля считаем, что гость относится к категории ФПБ.
44MarketSegmentnvarchar8

Сегмент рынка
45BookingSourcenvarchar8

Источник бронирования
46IsGuaranteedint
x

Гарантированная / негарантированная бронь

Определяется по наличию хотя бы одной гарантированной брони среди всех разделенных

47GuaranteeCodenvarchar8

Код гарантии брони
48ArrivalRoomCountint
x

Комнато-ночь прибытия

Считаем как 1, если это не DayUse бронь, если бронь не в статусе WAIT и если это первый таймлайн прибытия из всех броней среди разделенных.

49ArrivalPlaceCountint


Койко-ночь прибытия

Считаем как "Количество основных мест в номере" при выполнении условий из строки 46

50ArrivalRoomPlaceCountint



51ArrivalManCountint


Человеко-ночь прибытия

Считаем как сумму всех значений в схеме размещения (взрослые + все категории детей), если это не DayUse бронь, если бронь не в статусе WAIT и если это таймлайн прибытия.
52ArrivalAdultCountint


Человеко-ночь прибытия для взрослых гостей, если это не DayUse бронь
53ArrivalChildCountint


Человеко-ночь прибытия для детей гостей, если это не DayUse бронь
54DepartureRoomCountint
x

Комнато-ночь выбытия

Считаем как 1, если это не DayUse бронь, если бронь не в статусе WAIT и если это последний таймлайн выбытия из всех броней среди разделенных.
55DeparturePlaceCountint


Койко-ночь выбытия

Считаем как "Количество основных мест в номере" при выполнении условий из строки 51
56DepartureRoomPlaceCountint



57DepartureManCountint


Человеко-ночь выбытия

Считаем как сумму всех значений в схеме размещения (взрослые + все категории детей), если это не DayUse бронь, если бронь не в статусе WAIT и если это таймлайн выбытия.
58DepartureAdultCountint


Человеко-ночь выбытия для взрослых гостей, если это не DayUse бронь
59DepartureChildCountint


Человеко-ночь выбытия для детей гостей, если это не DayUse бронь
60DayUseRoomCountint
x

Комнато-ночь DayUse

Считаем как 1, если это DayUse бронь, если бронь не в статусе WAIT и если это главная бронь среди разделенных.
61DayUsePlaceCountint


Койко-ночь DayUse

Считаем как "Количество основных мест в номере" при выполнении условий из строки 48
62DayUseRoomPlaceCountint



63DayUseManCountint


Человеко-ночь выбытия

Считаем как сумму всех значений в схеме размещения (взрослые + все категории детей) при выполнении условий из строки 48
64WaitListRoomCountint
x

Комнато-ночь в листе ожидания

Считаем как 1, если бронь в статусе WAIT, это таймлайн прибытия и это главная бронь среди разделенных.
65WaitListPlaceCountint


Койко-ночь DayUse

Считаем как "Количество основных мест в номере" при выполнении условий из строки 51
66WaitListRoomPlaceCountint



67RevenueStaydecimal38,2

Сумма (LocaCurrencyAmount) по доходным транзакциям с кодом типа дохода = ROOM (проживание) при условии, что они проведенные и тогда дата проведения совпадает с датой таймлайна, либо они запланированные и тогда дата запланированная совпадает с датой таймлайна

Сумма контрактов квот за вычетом суммы из броней этих квот

68RevenueStayExcludeTaxdecimal38,2

Сумма за проживание без учета налогов
69RevenueOtherdecimal38,2

Сумма (LocaCurrencyAmount) по доходным транзакциям с кодом типа дохода <> ROOM (не проживание) при условии, что они проведенные и тогда дата проведения совпадает с датой таймлайна, либо они запланированные и тогда дата запланированная совпадает с датой таймлайна.
Сумма контрактов квот за вычетом суммы из броней этих квот
70RevenueOtherExcludeTaxdecimal38,2

Сумма прочее без учета налогов
71ParentRoomCodenvarchar8

Код родительской комнаты
72ReservationTimelineIdbigint


Идентификатор таймлайна

Transactions

Список транзакций со всех счетов системы, кроме аннулированных броней.


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2PropertyDatedate
xPKДата объекта
3Idbigint
xPKИдентификатор транзакции
4FolioNonvarchar20

Номер счета
5FolioNamenvarcharmax

Наименование счета
6FolioFullNamenvarcharmaxx

Полное наименование счета
Тип счета "профиль компании" - наименование из профиля

"профиль гостя" - ФИО гостя из профиля

"бронь" - ФИО главного гостя из брони

"групповая бронь" - наименование групповой брони

7IsPostedint
x
Признак проведения
8Codenvarchar8x
Код транзакции
9CodeNamenvarchar255x
Наименование кода транзакции
10IsRevenuebit
x
Признак доходности
11Namenvarcharmaxx
Наименование транзакции
12ScheduledDateTimedatetime
x
Запланированная дата транзакции
13PostedDateTimedatetime


Дата проведения
14Quantitydecimal18,2x
Количество
15CurrencyCodenvarchar8x
Код валюты
16CurrencyAmountdecimal18,2x
Сумма транзакции
17CurrencyAmountBeforeDiscountdecimal18,2x
Сумма транзакции до скидки
18LocalCurrencyCodenvarchar8x
Код местной валюты
19LocalCurrencyAmountdecimal18,2x
Сумма в местной валюте
20LocalCurrencyAmountBeforeDiscountdecimal18,2x
Сумма в местной валюте до скидки
21IncludedTaxLocalAmountdecimal18,2x
Сумма налога в местной валюте
22PaymentTypenvarchar15x
Тип платежа
23DiscountCodenvarchar8

Код скидки
24FolioTypevarchar14

Тип счета
25IsFolioOpenedint


Признак того, что счет открытый
26InvoiceCodenvarchar8

Код финдока, к которому привязана транзакция
27InvoiceNonvarchar64

Номер финдока
28GeoCodenvarchar8

Гео-код
29TrackCodenvarchar8

Трэк-код
30OpenCodenvarchar8

Открытый код
31MarketSegmentnvarchar8

Сегмент рынка
32BookingSourcenvarchar8

Источник бронирования
33RevenueTypeCodenvarchar8

Код типа дохода

При наличии SystemCode, загружаем его

34RevenueTypeNamenvarchar255

Наименование типа дохода
35BusinessUnitCodenvarchar8

Код юридического лица объекта
36BusinessUnitNamenvarchar255

Наименование юридического лица объекта
37ServiceCodenvarchar8

Код услуги
38ServiceNamenvarchar255

Наименование услуги
39ServiceVariantNamenvarchar64

Наименование варианта услуги
40CreatorUserFullNamenvarchar194x
ФИО создавшего счет транзакции
41Taxnvarchar8

Код налога
42ReservationTimelineIdbigint
x
Идентификатор таймлайна, к которому относится транзакция

Folios

Перечень счетов системы


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2Idbigint
xPKИдентификатор счета
3FolioNonvarchar20

Номер счета
4FolioTypevarchar14

Тип счета
5FolioNamenvarcharmax

Наименование счета
6FolioFullNamenvarcharmaxx

Полное наименование счета
Тип счета "профиль компании" - наименование из профиля

"профиль гостя" - ФИО гостя из профиля

"бронь" - ФИО главного гостя из брони

"групповая бронь" - наименование групповой брони

7LocalCurrencyCodenvarchar8x
Код местной валюты счета
8Debitdecimal18,2

Сумма отрицательных транзакций
9Creditdecimal18,2

Сумма положительных транзакций
10FolioStatusnvarchar8

Статус счета

Quotas


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8xPKКод объекта
2QuotaIdbigint
xPKИдентификатор квоты
5QuotaNamenvarcharmax

Наименование квоты
6IsGroupBookingbit
x
Признак, групповая бронь или блок компани
9CreatorUserFullNamenvarchar194

ФИО создавшего квоту
10FolioNonvarchar20

Номер счета
11CompanyNamenvarcharmax

Наименование компании для блоков компаний

Properties


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyIdbigint
x

2PropertyCodenvarchar8x

3PropertyNamenvarchar255x

4PropertyCurrentDatedate



5NightCheckinTimetime7


6NightCheckoutTimetime7


7DayCheckinTimetime7x

8DayCheckoutTimetime7x

9CreatedDatedatetime
x

10OccupationModeNVARCHAR50


PropertyCalendar


НазваниеТип данныхРазмерОбязательноеKeyОписание
1PropertyCodenvarchar8x

2DayTypeCodenvarchar8


3SeasonCodenvarchar8


4DateTimeFromdatetime
x

5DateTimeTodatetime
x

6RoomTypeCodenvarchar8


7CreatedDatedatetime
x