In order to bring you the best possible user experience, this site uses Javascript. If you are seeing this message, it is likely that the Javascript option in your browser is disabled. For optimal viewing of this site, please ensure that Javascript is enabled for your browser.
Login  |   On Demand  |   Home  |   qad.com




Reporting Framework Changes
The following summarize Reporting Framework changes for this release.
QAD_Translate VBscript Object
Report script objects provide dynamic functionality that can be called from VBscript code within report layout designs. A new script object (QAD_Translate) has been added in this release to provide access to translated labels from VBscript code, adding more possibilities than previously existed in the use of label report fields. This script object is especially useful in situations where combinations of labels and other report data need to appear in a single label field; previously report developers would use techniques such as hidden label fields to implement such features.
The QAD_Translate script object provides a number of methods to retrieve translated labels from the QAD label master repository. Each label is uniquely identified by a label term key which points to a number of translated strings in different languages, possibly containing several variations of different lengths (small, medium, and large). Some labels also contain a stacked label variation, which uses the ! symbol within the translated text to denote the positions where the text should be continued on the next line of display.
Note: Fields using stacked labels in the report design should have sufficient height to accommodate the stacked label. For example, if the stacked label indicates two lines of text (has one ! character), then the fields should be twice the normal height for that font.
QAD_Translate.GetBestFitString(labelTerm, field)
Gets the translated string indicated by the input label term key for the user’s language. This method will automatically select the longest of the translated labels (small, medium, or large) that will fit in the specified report field, taking into account the field’s width and font properties.

QAD_Translate.GetBestFitString(labelTerm, field)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
field
Input
Object
The report field whose width and font are to be inspected for choosing the best fit label. The field can be specified using a statement such as report.fields (“Field4”).
 
Return Value
 
The largest label for the specified term key that will fit into the specified field.
QAD_Translate.GetBestFitString(labelTerm, field,erpLanguage)
Gets the translated string indicated by the input label term key for the specified language. This method will automatically select the longest of the translated labels (small, medium, or large) that will fit in the specified report field, taking into account the field’s width and font properties.

QAD_Translate.GetBestFitString(labelTerm, field, erpLanguage)
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
field
Input
Object
The report field whose width and font are to be inspected for choosing the best fit label. The field can be specified using a statement such as report.fields(“Field4”).
erpLanguage
Input
String
The QAD Label Master language identifier.
 
Return Value
 
The largest label for the specified term key that will fit into the specified field.
QAD_Translate.GetLongLabel(labelTerm)
Gets the translated string for the long label indicated by the input label term key for the user’s language.

QAD_Translate.GetLongLabel(labelTerm)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
 
Return Value
 
The long label for the specified term key.
QAD_Translate.GetLongLabel(labelTerm, erpLanguage)
Gets the translated string for the long label indicated by the input label term key for the specified language.

QAD_Translate.GetLongLabel(labelTerm,erpLanguage)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
erpLanguage
Input
String
The QAD Label Master language identifier.
 
Return Value
 
The long label for the specified term key.
QAD_Translate.GetMediumLabel(labelTerm)
Gets the translated string for the medium label indicated by the input label term key for the user’s language.

QAD_Translate.GetMediumLabel(labelTerm)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
 
Return Value
 
The medium label for the specified term key.
QAD_Translate.GetMediumLabel(labelTerm, erpLanguage)
Gets the translated string for the medium label indicated by the input label term key for the specified language.

QAD_Translate.GetMediumLabel(labelTerm,erpLanguage)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
erpLanguage
Input
String
The QAD Label Master language identifier.
 
Return Value
 
The medium label for the specified term key.
QAD_Translate.GetShortLabel(labelTerm)
Gets the translated string for the short label indicated by the input label term key for the user’s language.

QAD_Translate.GetShortLabel(labelTerm)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
 
Return Value
 
The short label for the specified term key.
QAD_Translate.GetShortLabel(labelTerm, erpLanguage)
Gets the translated string for the short label indicated by the input label term key for the specified language.

QAD_Translate.GetShortLabel(labelTerm,erpLanguage)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
erpLanguage
Input
String
The QAD Label Master language identifier.
 
Return Value
 
The short label for the specified term key.
QAD_Translate.GetStackedLabel(labelTerm)
Gets the translated string for the stacked label indicated by the input label term key for the user’s language.

QAD_Translate.GetStackedLabel(labelTerm)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
 
Return Value
 
The stacked label for the specified term key.
QAD_Translate.GetStackedLabel(labelTerm, erpLanguage)
Gets the translated string for the stacked label indicated by the input label term key for the specified language.

QAD_Translate.GetStackedLabel(labelTerm,erpLanguage)
 
 
Name
Input/Output
Data Type
Description
labelTerm
Input
String
The label term key.
erpLanguage
Input
String
The QAD Label Master language identifier.
 
Return Value
 
The stacked label for the specified term key.
Temporary Memory Usage
Issues with temporary memory usage have now been fixed, improving performance and stability for multiple runs of reports with large data sets.
Reporting Framework INT64 Support
The Reporting Framework now supports the INT64 Progress data type in data sources.
Warning When a data source has a Progress INT64 field that is being displayed in a report layout, it is represented in the report as a long integer. This maintains the precision of data from the data source and displays properly. However, if calculated fields are created in the report layout (using Report Resource Designer) which do calculations on the INT64 field, then these calculated fields are represented as decimal fields (type “double”). Double fields can represent large numbers, but they do so at the expense of precision. As a result, large INT64 values when used in calculated fields may lose precision, although this only starts to occur in the quadrillions. A solution to this for Progress Data Source programs is to do the calculation in the data source program itself and pass it back as an INT64 field instead of doing the calculation in the layout definition using VBScript.
Data Source Dynamic Settings
It is now possible to write code in Progress report data source programs that allows the data source to dynamically determine report settings such as language, date and number formats, and search criteria location in the report output. For more details, see the Reporting Framework User Guide.
Reporting Framework Source and Samples on QAD Store
The Reporting Framework Source and Samples download (Reporting Framework Source CD) is available from the QAD Store (http://store.qad.com ). The download contains sample reports, templates, and portions of the Reporting Framework’s Progress code that are relevant for Progress data source developer usage. This does not include the source code of the data source programs used by the hundreds of new reports that have been developed recently using the framework; it only includes the generic pieces that are part of the framework itself. The download also includes documentation, coding tools, and examples for using the Scheduled Report and Run Report APIs, which allow developers to write applications to schedule or run reports.
Scheduled Report API No Longer Limited To rptAdmin Role
In previous releases, programs that schedule reports using the Scheduled Report API had to pass input authentication credentials corresponding to a user in the rptAdmin role, which authorized the scheduling of any report in the system. The authorization mechanism has been changed to allow for finer-grained authorization at the report level, and allows any QAD user credentials to be used. The new authorization mechanism leverages QAD menu security in a fashion similar to how browses are authorized. The following rules now apply:
If the report is not on the menu system at all, full access to run the report is given.
If the report is on the menu system, the user’s access to that report in the given domain is checked; if the user has access then the report can be scheduled.
If the user does not have access, the API does not schedule the report and returns an error (error code 107: user role permissions error).
For more information about the Scheduled Report API, see the Reporting Framework Source and Samples download, available on the QAD Store (http://store.qad.com ).
Language Options
The report viewer’s Settings options now include a new Language setting in the General tab. Use the Language pull-down to choose the language in which to display the report. When a user changes the report language setting, it only affects the report currently being run, and remain in effect until that report program tab is closed. Other program tabs are not affected by the report language change.
Like all report settings, the choice of language is saved if the user clicks the Save As button to save the report settings (including search conditions) for quick recall in future runs.
Number To Words Conversion for 50 in French
The QAD_NumberUtil.ToWords .NET script object converts the input number into word strings in the specified language. Previously, in the French language, the script object was incorrectly converting the number 50 to “cinquente” instead of the correct “cinquante.” This issue has been resolved.