Studio Report Controls - Properties List
This documentation is for Kyvos 2026.2.x. To view documentation for other Kyvos versions, click here. |
|---|
Applies to: Kyvos Reporting
Alignment
Sets the alignment of the text within the selected control.
Available values:
Value | Description |
|---|---|
0 - ddTXLeft | Aligns text to the left (default for character-type fields). |
1 - ddTXRight | Aligns text to the right (default for number-type fields). |
2 - ddTXCenter | Centers the text within the control. |
3 - ddTXJustify | Justifies the text within the control. |
Alignment in Barcode
Specifies alignment of the barcode caption.
Value | Description |
|---|---|
0 - ddTXLeft | Aligns the caption to the left. |
1 - ddTXRight | Aligns the caption to the right. |
2 - ddTXCenter | Centers the caption. |
3 - ddTXJustify | Justifies the caption text. |
BackColor
Sets the background color of a control or section. Effective only when BackStyle is set to 1 - ddBKNormal.
BackColor in Barcode
Defines the background color of the barcode control.
BarWidth (Barcode)
Specifies the width of the bars in the barcode control.
BackStyle
Determines whether the background color is applied to the control or section.
Value | Description |
|---|---|
0 - ddBKTransparent | Displays the background content without applying BackColor. |
1 - ddBKNormal | Applies BackColor and hides the background content. |
Scripting Example:
function OnFormat() {
if (parseInt(rpt.section("Details").controls("txtSales").dataValue) > 1000) {
rpt.section("Details").controls("txtSales").backStyle = 1; // Normal
} else {
rpt.section("Details").controls("txtSales").backStyle = 0; // Transparent
}
}
Border
Defines the border around labels and fields. Can be configured through the shortcut menu or scripting.
Caption (Label)
Displays the label text at report execution time.
Caption in Barcode
If no DataField is set, this value is used for display. If the caption exceeds the available width, a warning message appears in the barcode area.
CaptionPosition (Barcode)
Determines where the barcode caption appears.
Value | Description |
|---|---|
Above | Displays caption above the barcode. |
Below | Displays caption below the barcode. |
Blank | Displays barcode without showing caption text. |
ColumnDirection
Determines the print order for multi-column layout in detail sections.
Value | Description |
|---|---|
0 - DownAcross | Fills columns top to bottom, then left to right. |
1 - AcrossDown | Fills columns left to right, then top to bottom. |
Scripting Example:
function OnFormat() {
rpt.Sections("Detail").columnCount = 3;
rpt.Sections("Detail").columnDirection = 1;
}
DataField
Binds the control to a field in the data source.
For groups: used to group records.
For fields: binds data value to the control and applies output format.
For XML: must be a valid XPath relative to the
RecordSetPattern.Supports scripting and expressions, for example:
rpt.sections("ghClient").dataField = "CustomerID";
Note
Sorting must be handled in the SQL query using ORDER BY.
DataField in Barcode
Specifies the value used to generate the barcode. If blank, the Caption is used.
Here’s the rewritten version of the provided content, aligned with the Microsoft Style Guide and structured for clarity:
ForeColor
Use this property to set the foreground (text) color of a selected control. When selected from the Properties pane, a color palette is displayed for choosing the desired color.
Example:
To apply a red color to the "confidential" text at the top-left corner of each page, use the following script:
Object: Detail
Event: OnFormat
function OnFormat() {
rpt.Sections("Detail").Controls("txtSales").foreColor = 25545255;
}
ForeColor in Barcode
This property sets the color of the bars in a barcode control. Select the color from the ForeColor palette.
Keep Together
This property is available when a group section (header or footer) is selected. It determines whether the group header, detail, and footer are kept on the same page during rendering.
Value | Description |
|---|---|
0 - None | Allows the group to split across pages. |
1 - FirstDetail | Ensures the complete block (header + at least one detail) fits on the same page. |
2 - All | Ensures the entire group (header, detail, footer) appears on a single page. |
Script Example:
rpt.sections("GHCategory").grpKeepTogether = true;
Height (Barcode)
Defines the height of the barcode control, including both the bars and caption. Measured in twips.
Left
Specifies the distance (in pixels) from the left edge of the page to the left boundary of the control. This property is available for most controls, including barcodes.
LineColor
Available when a Line or Shape control is selected. It specifies the color of the line. You can choose from predefined options or define a custom color.
LineStyle
Specifies the style of the line for Line or Shape controls.
Value | Style |
|---|---|
0 | Transparent |
1 | Solid |
2 | Dash |
3 | Dot |
4 | Dash-Dot |
5 | Dash-Dot-Dot |
LineWeight
Defines the thickness of the line (in pixels). A value of zero renders the line invisible. Thicker lines are drawn with higher values.
New Page
Determines whether a new page should be inserted before or after the selected section (typically applicable to detail sections).
Value | Description |
|---|---|
0 - None | No page break applied. |
1 - Before | Section starts on a new page. |
2 - After | Section ends and triggers a new page. |
3 - Before & After | New page before and after the section. |
Script Example:
rpt.sections("Detail").newPage = 1;
OnPages
Available for Page Header or Page Footer sections. Controls visibility of the section based on page context.
Value | Description |
|---|---|
All Pages | Display on all pages. |
All Pages, not with RH | Exclude pages with Report Header. |
All Pages, not with RF | Exclude pages with Report Footer. |
All Pages, not with RH, not with RF | Exclude both Report Header and Footer pages. |
Picture
Sets the image to be displayed in the report. Supported formats include: .bmp, .ico, .jpg, .cur, .gif, .wmf.
Larger images are auto-cropped.
Smaller images are auto-centered with padding.
PictureAlignment
Specifies the alignment of the image within the image control area.
Value | Description |
|---|---|
0 | Top Left |
1 | Top Right |
2 | Center |
3 | Bottom Left |
4 | Bottom Right |
Shape
Specifies the shape of the Shape control.
Value | Description |
|---|---|
0 | Rectangle |
1 | Ellipse |
2 | Round Rectangle |
Style (Barcode)
Specifies the barcode style. The default is CODE128. Ensure the barcode value complies with the style's format requirements.
Supported Styles:
CODE128 (Default)
CODE128_RAW
CODE128_UCC
EAN13 (requires 13-digit numeric data)
EAN8 (requires 8-digit numeric data)
UPCA
UPCE
Interleaved2Of5
Planet
PostnetZIP
PostnetZIP4
PostnetZIP4DP
3Of9
3Of9X
Codabar
PDF417
Datamatrix
SUPP5
Summary Function
Specifies the type of aggregation for a field.
Value | Description |
|---|---|
0 | Sum |
1 | Average |
2 | Count |
3 | Minimum |
4 | Maximum |
5 | Variance |
6 | Population Variance |
7 | Standard Deviation |
8 | Population Std. Deviation |
9 | Distinct Sum |
10 | Distinct Average |
11 | Distinct Count |
12 | Distinct Variance |
13 | Distinct Pop Variance |
14 | Distinct Std Deviation |
15 | Distinct Pop Std Deviation |
Summary Group
To apply group-level page numbering, use SummaryRunning with value 1 - RunGroup to reset the count at each group.
Summary Running
Controls whether summary values accumulate or reset at group or report level.
Value | Description |
|---|---|
0 - None | Summary is calculated normally. |
1 - RunGroup | Summary resets for each group. |
2 - All | Running total for all rows. |
Note
When using summary functions, the CanGrow and CanShrink properties are disabled.
Summary Type
This property is available when a field control is selected from the layout pane. It defines the level at which summarization is applied on the selected field.
Note
If a summary field is placed before its evaluation context (for example, placing a page total in the page header), the rendering of that section—and any section after it—is delayed until the summary value is resolved.
Important
When using summary functions, the CanGrow and CanShrink properties are disabled for the field.
Top
Specifies the distance (in pixels) between the top edge of the page and the top boundary of the selected field control.
Top in Barcode
Functions the same as above when applied to barcode controls.
Visible
Determines whether the selected control is visible at runtime.
Value | Description |
|---|---|
True | The control is displayed at runtime. |
False | The control is hidden at runtime. |
Visible in Barcode
Applies the same behavior for barcode controls.
Width
Sets the width (in pixels) of the selected field control from left to right.
Width in Barcode
Applies the same setting for barcode controls.
Version
This property is available when you select Main Report from the Report Explorer pane. It displays the product version and build number of the report.
WaterMark
This property is available when Main Report is selected. It allows you to apply an image as a watermark on the report’s background.
When selected, a file picker appears to let you choose the image file. Supported image types: .jpg and .gif.
Note
If you do not want the watermark to appear, set the WaterMarkPrintOnPages property to 0.
WaterMark Alignment
Specifies the alignment of the watermark image on the page. Available when Main Report is selected.
Value | Description |
|---|---|
0 - ddPATopLeft | Top-left alignment |
1 - ddPATopRight | Top-right alignment |
2 - ddPACenter | Center alignment |
3 - ddPABottomLeft | Bottom-left alignment |
4 - ddPABottomRight | Bottom-right alignment |
WaterMarkPrintOnPages
Specifies the number of pages on which the watermark image should be printed. Available when Main Report is selected.
XLBackground
This property appears when a section header or footer is selected. It determines whether the background color of the section is preserved when exporting the report to Excel.
Value | Description |
|---|---|
True | Background color is retained in Excel. |
False | Background color is not exported to Excel. |
XLColumn
Specifies the Excel column in which the selected control should be rendered when the report is exported to Excel. The column position is determined based on the control's layout and the values of XLCellHeight and XLCellWidth.
XLColumnSpan
Specifies how many columns to skip (leave blank) before placing the next control when exporting to Excel.
Example
If a value in Column A spans across five columns, set XLColumnSpan to 5 to ensure the next field starts at Column F.
XLRow
Specifies the relative row number for the control when the report is exported to Excel. It works as an offset value added to the previous control’s row number.
Note
For a control placed in the detail section:
If the last control was placed in row 5 and XLRow is set to 1, the next control is placed in row 6 (5 + 1).
XLRowSpan
Specifies the number of rows to leave blank below the control before placing the next control when exporting to Excel.
Example:
To leave rows A2 and A3 blank after A1, set XLRowSpan to 3. This ensures the next control is placed on row A4.
XMLTagName
This property is available when the report is exported to XML format. It allows you to assign a custom XML tag name to the selected control.
Note
If left blank, the field name is used as the XML tag by default.
XMLType
Specifies whether a control should be included in the XML output of a report.
Values:
EXCLUDE – Exclude the control from XML output.
ELEMENT – Include the control as an XML element. (default)
ATTRIBUTE – Include the control as an XML attribute.
Note
If no value is set, the control is treated as an XML element.
XMLCdata
Specifies whether the control's value should be wrapped in CDATA when included as an XML element.
Set to True if the data may contain characters that violate XML specifications.
Note
This property is valid only when XMLType is set to ELEMENT.
CanGrow
Determines whether a section (except Page Header and Page Footer) can expand vertically to accommodate content overflow.
Values:
True – Section height increases if content exceeds available space.
False – Section height remains fixed, and content may be clipped.
Script Example:
rpt.sections("Detail").controls("txtName").canGrow = true;
CanShrink
Determines whether a section (except Page Header and Page Footer) can shrink vertically to fit its contents.
Values:
True – Section reduces in height if content is smaller.
False – Section retains its defined height.
Script Example:
rpt.sections("Detail").controls("txtName").canShrink = false;
ColumnCount
Available for the Detail section. Specifies the number of columns in a multi-column report (e.g., label printing or phonebook-style listings).
Each column's width is the print width of the report divided by ColumnCount.
Script Example:
rpt.sections("Detail").columnCount = 3;
rpt.sections("Detail").columnDirection = 1;
ColumnLayout
Determines whether a Group Header or Footer uses the same column format as its associated Detail section.
Values:
True – Use same column layout.
False – Do not use column layout.
Script Example:
rpt.sections("GHLocation").columnLayout = false;
ColumnSpacing
Defines the space between columns in a multi-column report. Measured in twips.
Available in: Detail section only.
Script Example:
rpt.sections("Detail").columnSpacing = 200;
Height
Sets the section height. Measured in twips.
Note
Can only be modified using
OnFormat,ReportStart, or before report execution.Changing height will not reposition the controls within the section.
Script Example:
rpt.sections("Detail").height = 2 * 1440;
Keep Together
Determines whether a section (except Page Header and Footer) should appear entirely on the same page.
Values:
True – Keep entire section on one page.
False – Allow section to split across pages.
Script Example:
rpt.sections("Detail").keepTogether = false;
Name
Sets or returns the section’s name. Must be unique.
Available via: Script Editor only.
New Column
Controls whether to insert a column break before or after printing the section.
Available in: Detail section only.
Values:
0 – None
1 – Before
2 – After
3 – Before and After
Script Example (with counter logic):
rpt.fields.add("rNumber");
rpt.fields("rNumber").value = 0;
function OnFormat() {
rpt.fields("rNumber").value = parseInt(rpt.fields("rNumber").value) + 1;
if (rpt.fields("rNumber").value == 6) {
rpt.sections("Detail").newColumn = 2;
rpt.fields("rNumber").value = 0;
} else {
rpt.sections("Detail").newColumn = 0;
}
}
New Page
Determines whether to insert a page break before or after the section.
Not applicable to: Page Header and Page Footer.
Values:
0 – None
1 – Before
2 – After
3 – Before and After
Script Example (with counter logic):
rpt.Fields.add("Pre_Val");
rpt.Fields("Pre_Val").value = 0;
function OnFormat() {
rpt.Fields("Pre_Val").value = parseInt(rpt.Fields("Pre_Val").value) + 1;
if (rpt.Fields("Pre_Val").value == 6) {
rpt.Sections("Detail").newPage = 2;
rpt.Fields("Pre_Val").value = 0;
} else {
rpt.Sections("Detail").newPage = 0;
}
}
PrintAtBottom
Available only via Script Editor. Determines whether the Group Footer or Report Footer prints at the bottom of the page.
Warning
Setting more than one section to PrintAtBottom = True can cause each footer to be printed on separate pages.
Script Example:
rpt.sections("groupFooter1").printAtBottom = true;
Visible
Controls the visibility of a section during runtime.
Values:
True – Section will appear at runtime.
False – Section will not appear at runtime.
Script Example:
if (rpt.sections("Detail").controls("txtAccount").dataValue == null) {
rpt.sections("Detail").visible = false;
}
XLCellHeight / XLCellWidth
These properties determine the height and width of a cell when the report is exported to Excel.
Used when XLRow and XLColumn values are not set.
XLBackground
Determines whether the background color is retained in Excel export.
Values:
True – Apply background color.
False – Do not apply background color.
Name (Field Object)
Sets or returns the unique name of a field in the report. Used as the key in field collections.
Script Example:
function OnDataInitialize() {
rpt.fields.add("OrderID");
}
Tag
Sets or returns a user-defined value for a field.
Value
Sets or returns the field’s current value.
Script Example:
function OnFetchData(eof) {
rpt.Fields("Amount").value = parseInt(rpt.Fields("Qty").value) * rpt.Fields("Price").value;
}
RenderInSection
Defines the section (e.g., Caption Header or Page Header) where fields, labels, lines, images, or shapes will be rendered.
Ranking Field
Available on Group Header. Sets the field used to order groups based on summarized values (e.g., total sales).
Example:
If Sales is the Ranking Field and groups are ordered by descending sales, the group with the highest total appears first.
Ranking Function
Specifies the summary function to apply on the Ranking Field for ordering groups.