PDF Builder has the following new features:
-
Adding form fields to a PDF document:
-
The field type can be text, radio button, checkbox, combobox, listbox, or push button;
-
Multiple radio buttons can be added in a group;
-
The PDFFormFieldPushButton object may be associated with certain actions;
-
The following new objects are added for supporting the form fields:
-
PDFAction, with these immediate child objects: PDFActionJavaScript, PDFActionNamed, PDFActionResetForm.
-
PDFFormField, with these immediate child objects: PDFFormFieldCheckBox, PDFFormFieldComboBox, PDFFormFieldListBox, PDFFormFieldPushButton, PDFFormFieldRadioButton, and PDFFormFieldText.
-
PDFFormFieldGroup, with one immediate child object: PDFFormFieldRadioButtonGroup.
-
-
-
The PDFDocExtractor object has been added with GetFormField and GetFormFieldCount functions to get the form field objects in a PDF document.
-
The PDFDocument ImportPDF function has been enhanced to allow the import of Blob data into a PDF document; and the Save function has been enhanced to save the PDF document to a Blob variable.
For more information, please refer to: the section called “Building PDF documents in the application” in Application Techniques.
DataWindow has the following enhancements:
-
DataWindow SaveDisplayedDataAs method
Saves the display values of the DataWindow in the specified format: SaveDisplayedDataAs.
What's supported by this function:
-
Saving data in a Text, CSV, or Excel file.
-
Saving the display value of the Edit column according to the format setting.
-
Saving Text, Column and Computed Field objects.
-
Saving the display values of the DDLB, DDDW, RadioButton, and EditMask into the file.
-
Support Grid, Tabular, FreeForm, CrossTab, N-up, Group, TreeView DataWindows.
-
Saving data of the band layer (and does not support saving the data of the Foreground and Background layers.
Limitations:
-
Does not support Composite, Graph, OLE, RichText, and Label styles in DataWindow.
-
Does not support saving graphical objects such as Button, Picture, GroupBox, Line, etc.
-
Does not support saving Font attributes, including FaceName, Size, Color, Bold, etc.
-
The width of cells in Excel may not match the width of columns in the DataWindow.
-
Due to differences between Excel and DataWindow, for non-Grid style DataWindows, if objects are not aligned properly, the content may be misaligned when saved to Excel.
-
When object heights vary significantly, blank rows may appear in the data when saved to Excel.
-
If the visible property of the object is set via the expression, the visibility of the first row in that column will determine whether the data in the other rows is saved. Specifically, if the first row is set to visible, the subsequent rows will also be saved; if it is not visible, the other rows will not be saved either.
-
-
DataWindow update properties
The settings in the Specify Update Properties window may be removed if you change an updatable table via DataWindow SQLs for a multi-table DataWindow.
This behavior has been rectified in Version 2025, for example, if you change a table via SQLs (such as adding, deleting, or modifying a column which causes the update properties to change), the settings in the associated Specify Update Properties window will be retained and the column changes (as well as the key column changes, table name changes, if any) will also be reflected in the window.
The TabbedView feature has the following enhancements:
-
You can enable and disable TabbedView and MaximizeAllTabbedSheets via scripts, which means, you can enable and disable TabbedView and MaximizeAllTabbedSheets at runtime. In the previous version, you can only enable and disable TabbedView and MaximizeAllTabbedSheets in the IDE (at the design time).
w_mdi.TabbedView = true // Enable TabbedView w_mdi.MaximizeAllTabbedSheets = true // Enable MaximizeAllTabbedSheets
You can get and set the following properties via scripts: visible, height, width, x, and y. In the previous version, you can only get the value of these properties.
mditbb_1.visible = false mditbb_1.x = 10 mditbb_1.y = 10 mditbb_1.width = 1000 mditbb_1.height = 200
-
You can close a tab by clicking the scroll wheel or middle mouse button on it.
The RichTextEdit control supports the following new functions:
-
GetTextFontName and SetTextFontName: Gets/Sets the font name for the current text or the selected text.
-
GetTextFontSize and SetTextFontSize: Gets/Sets the font size for the current text or the selected text.
-
SetTab: Sets the alignment type and position of the tab stop.
By the way, the rich text editor is enhanced to support defining custom paper size in the Properties dialog > Print Specification tab > Customize option.
The SMTPClient object supports the following authentication types:
-
GSSAPI
-
LOGIN
-
NTLM
-
PLAIN
-
XOAUTH2
You can specify which authentication type to be used via the SMTPClient AuthType property.
The EditMask and MultiLineEdit controls support the Placeholder property. For EditMask, Placeholder property is supported only when the mask type is StringMask!.
The Placeholder property specifies a short description for the expected value of the input field. The Placeholder value can be used as a text label or hint; hence can help to reduce the number of UI controls. The Placeholder value will not be displayed, 1) if the Text property is set (the Text value will be displayed first); or 2) when the input field has focus.