Какво е RPL файл?
Форматът на потока RPL (Report Page Layout) е вътрешен двоичен формат, използван от MS SQL Server Reporting Services при контакт с контроли за преглед, за да се намали част от работата по рендиране от сървъра към контрола за преглед на клиента. Разработчиците могат да създават персонализирани дизайнери на отчети с помощта на RPL, който ще генерира RPL, както и потребителски рендерери на отчети, които обработват и показват RPL файла за показване на отчети.
RPL структури
RPL потокът включва структура на потока, структура на отчета, свойства на отчета и изброявания. Всяка структура включва следното:
Определение на структурата.
Граматиката на Augmented Backus-Naur Form (ABNF) за структурата.
Малка диаграма на структурата.
Дефиниции на всички полета, съдържащи се в структурата.
Ето кратките бележки за някои от RPL структурите:
Структура на потока
Структурата на потока се състои от поредица от записи. Записът съдържа нула или повече структурирани полета, които съдържат оформлението на отчета.
RPL поток
RPL потокът трябва да има само един запис на отчет и потокът трябва да бъде поредица от двоични записи, които поддържат йерархията на отчета.
Запис
Записът е основен градивен елемент, използван за съхраняване на информацията за отчет. Записът се състои от последователност от байтове с различна дължина. Записът се състои от два компонента:
- Тип запис
- Данните за запис, които са специфични за този тип запис. Типът на записа е един байт, който определя какъв тип информация се специфицира от записа и как е подредена и структурирана структурата на данните в записа, отнасящи се до записа. Стойността на записа зависи от типа данни, които са специфични за този запис.
Прости структури на типове данни
Следващата таблица дефинира типовете данни в RPL поток.
Описание | формат |
---|---|
Char | Представлява 16-битова (2-байтова) числова (порядъчна) стойност. |
Байт | Представлява 8-битово (1-байт) цяло число без знак. |
Int16 | Представлява 16-битово (2-байтово) цяло число със знак. |
Single | Представлява 32-битова (4-байтова) стойност с плаваща запетая с единична точност. |
Decimal | Представлява 128-битов (16-байтов) тип данни. |
DateTime | Представлява 64-битово (8-байтово) кодиране на стойност за дата и час. |
Int64 | Представлява 64-битово (8-байтово) цяло число със знак. |
Int32 | Представлява 32-битово (4-байтово) цяло число със знак. |
Float | Представлява 32-битова (4-байтова) стойност с плаваща запетая с единична точност. |
Boolean | Представлява 8-битова (1-байтова) логическа стойност от булев тип. Валидните стойности са true (1) и false (0). |
Long | Представлява 64-битово (8-байтово) цяло число със знак. |
Низ | Всички стойности на низ в рамките на протокола ТРЯБВА да бъдат UNICODE UTF-16. По подразбиране всички стойности на низ започват с цяло число, което определя дължината на низа. Низовите стойности са представени в протокола като масив от байтове; броят на байтовете ТРЯБВА да бъде равен на броя на знаците в низа, умножен по две. |
Структури на отчета
Структурите на отчета включват дефинициите и размерите на съответните им структури и елементи.
Следният списък определя структурите на отчета:
- Докладвай
- Версия
- Свойства на отчета
- Елемент на масив от отместване
- Съдържание на страницата
- Страница
- Свойства на страницата
- Оформление на страница
- Раздел
- Прост раздел
- Смесена секция
- Свойства на раздела
- Елемент на областта на тялото
- Елемент на горния колонтитул на страницата
- Елемент на долния колонтитул на страницата
- Елемент на тялото
- Свойства на елемента
- Свойства на споделен елемент
- Използвайте споделени свойства на елемент
- InlineSharedElementProperties
- NonSharedElementProperties
- Стил
- SharedStyleProperties
- NonSharedStyleProperties
- Информация за действие
- ActionInfoContent
- Действие
- ActionImageMapAreas
- ActionInfoWithMaps
- DynamicImageData
- ImageConsolidationOffsets
- ReportItem
- Линия
- Образ
- ImageDataProperties
- Използвайте SharedImageDataProperties
- InlineSharedImageDataProperties
- NonSharedImageDataProperties
- ImageData
- ImageMapAreas
- ImageMapArea
- Диаграма
- GaugePanel
- Карта
- Правоъгълник
- Подотчет
- RichTextBox
- Съдържание на параграф
- TextRun
- Параграф
- RichTextBoxStructure
- Табликс
- TablixContent
- TablixStructure
- Табликс Измервания
- Ширина на колони
- Информация за колона
- Височини на редове
- RowInfo
- TablixRow
- TablixRowCell
- TablixCorner
- TablixColumnHeader
- TablixRowHeader
- TablixBodyRowCells
- TablixBodyRow
- TablixBodyCell
- TablixRowMembersDef
- TablixColMembersDef
- TablixMemberDef
- Измервания
- Измерване
- ReportElementEnd
Имоти
Следва списък със свойства, които могат да се използват в RPL поток:
- ДОКУМЕНТ ЗА САМОЛИЧНОСТ
- Брой колони
- Разстояние между колони
- Уникално име
- Име
- Етикет
- Отметка
- Подсказка
- Превключване на елемент
- Описание
- Местоположение
- ConsumeContainerWhiteSpace (RPL 10.6)
- Език
- Време за изпълнение
- Автор
- Автоматично опресняване
- Име на отчета
- Височина на страницата
- Ширина на страницата
- MarginTop
- Ляво поле
- MarginRight
- MarginBottom
- Колони
- Име на страница (RPL 10.6)
- Наклонено
- Може да расте
- Може да се свие
- Стойност
- ToggleState
- CanSort
- Състояние на сортиране
- Формула
- IsToggleParent
- Типов код
- Оригинална стойност
- Просто е
- Отместване на съдържанието
- Име на поток
- Оразмеряване
- LinkToChild
- PrintOnFirstPage
- PrintBetweenSections (RPL 10.4)
- FormattedValueExpressionBased
- ProcessedWithError
- ImageMIMEType
- Име на изображение
- Широчина
- Височина
- Хоризонтална разделителна способност
- Вертикална разделителна способност
- RawFormat
- Хипервръзка
- BookmarkLink
- DrillthroughId
- DrillthroughUrl
- Цвят на границата
- BorderColorLeft
- BorderColorRight
- BorderColorTop
- BorderColorBottom
- BorderStyle
- BorderStyleLeft
- BorderStyleRight
- BorderStyleTop
- BorderStyleBottom
- BorderWidth
- BorderWidthLeft
- BorderWidthRight
- BorderWidthTop
- BorderWidthBottom
- PaddingLeft
- PaddingRight
- PaddingTop
- PaddingBottom
- Стил на шрифта
- Шрифтово семейство
- Размер на шрифта
- Тегло на шрифта
- Формат
- TextDecoration
- TextAlign
- Вертикално подравняване
- Цвят
- Височина на линията
- Посока
- Режим на писане
- UnicodeBiDi
- Фоново изображение
- Цвят на фона
- Повторение на фона
- Числен език
- Числен вариант
- Календар
- ColumnHeaderRows
- RowHeaderColumns
- ColsBeforeRowHeader
- LayoutDirection
- Път на дефиниция
- Ниво
- MemberCellIndex
- CellItemOffset
- ColSpan
- Размах на редове
- DefIndex
- Индекс на колона
- Индекс на ред
- GroupLabel
- RecursiveToggleLevel
- ListStyle
- Ниво на списък
- Номер на параграф
- Отстъп отдясно
- Ляв отстъп
- Висящ отстъп
- SpaceBefore
- SpaceAfter
- Първа линия
- Маркиране
- СъдържаниеНагоре
- Съдържание вляво
- ContentWidth
- Височина на съдържанието
- Държава
- CellItemState
- MemberDefState
Изброявания
Следващият списък показва изброяванията, които могат да се използват в RPL потока:
- Опции за сортиране
- Размери
- ShapeType
- ImageRawFormat
- Стилове на шрифтове
- Тегло на шрифта
- Текстови декорации
- Текстови подравнявания
- Вертикални подравнявания
- Насоки
- Режими на писане
- UnicodeBiDiTypes
- Календари
- Стилове на граници
- BackgroundRepeatTypes
- ListStyles
- Стилове на маркиране
- Типов код
- Стойности на състоянието
- TablixMemberStateValues
- TablixMemberDefStateValues
- RPLSize