Click [Tools] in the main menu bar to access the following useful tools available in ASP.NET Report Maker.
Multi-Language Property Editor
Copy Table Settings
Copy Field Settings
Sort Tables Alphabetically
Delete Template Cache
During the course of project development, it is common that you have altered your database schema. To save the effort of doing the customization from scratch again, ASP.NET Report Maker provides you with the ability to synchronize your project data with the database. The synchronization process can be invoked in the following situations:
1. When working in ASP.NET Report Maker
Simply click [Tools]->[Synchronize] or click thebutton on the toolbar to perform the synchronization. ASP.NET Report Maker will check automatically to see if the database schema has been altered. If there are changes, you will be prompted whether or not to proceed with the synchronization.
2. When opening a project file
When open a project file, ASP.NET Report Maker will automatically check the database to see if the schema has been altered. You will be prompted to keep or update to the new schema.
If you want to use multi-language project, make sure you have enabled Multi-Language in the [ASP.NET]->[General] tab (see ASP.NET Settings), then click [Tools] -> [Languages] to select the languages you want to use in the project. If more than one language is selected, a combobox will appear on the top of the generated scripts for user to select language.
After selecting the languages, select a Default Language in the [ASP.NET]->[General] tab (see ASP.NET Settings).
Read Multi-Language Project for details.
Some text properties support unicode input for multi-language project through Multi-Language Property Editor.
Read Multi-Language Project for details.
Click [Tools]->[Extensions] to enable or disable these extensions. If the extension has advanced settings (NOT every extension has it), you'll see the [Advanced] tab after selecting the extension. Click the [Advanced] to configure advanced settings for the extension.
Advanced Settings are some advanced general settings for ASP.NET Report Maker, or some rarely changed settings for the project, or custom defined settings for use during code generation. Click [Tools] -> [Advanced Settings] to change these settings:
|General||General settings for ASP.NET Report Maker (for all projects)|
|Custom validation functions||
The comma separated function names for the Validate feature (see Field Setup)
|Script engine timeout (milliseconds)||
The Windows Script engine timeout period.
ASP.NET Report Maker uses Windows Script to generate scripts dynamically, if you have a lot of tables or fields, the script engine may time out during generating a file and prompt you to cancel execution or continue. To avoid this problem, you can increase this timeout setting. For example, you can increase 60000 ms (one minute) at a time.
|UTF-8 output files||
If enabled, the output file is in utf-8 encoding. Otherwise, it is ASCII by default.
The template files and output files are in ASCII encoding by default. Since the phrases are separated into XML language files in utf-8 encoding, ASCII encoding will suit most cases as the scripts contain code only. When you customize a template, it is recommended you use the language file also. If you have to put unicode characters directly in the template files, you must always use utf-8 and save the file in utf-8 encoding with the byte order mark (EF BB BF), and enable this setting to make the code generator output files in utf-8 encoding.
|Format project file||
Format and indent project file so that it is more readable
|Project||Settings for the current project only|
Project name. See Project File for more info.
Unique ID of the project. Do not change the project ID unless absolutely necessary. See Project File for more info.
Area name of the project. Not used by default. Read Areas for more information.
Controller name of the project. If not specified, the name is "Home" by default.
Show the SQL and runtime error for debugging.
The setting is generated in ewrcfg*.cs, if you change this setting only, you only need to re-generate ewrcfg*.cs.
|Compress project .css||
Compress the project stylesheet (i.e. <project>.css) and output minified .css file.
|Compress project .js||
|Disable project CSS styles||
Do not generate the the project stylesheet.
Note If you use this setting, there will be no CSS styles generated for the scripts and the HTML will be malformed, make sure you provide your own CSS styles, for example, by specifying your own stylesheet, read HTML Settings.
|Use XmlDocument for Language object||
Use XmlDocument to store language file instead of using dictionary object.
By default the scripts use dictionary object to store the language phrases for faster loading. If you want to manipulate the loaded XML document by XmlDocument, enable this setting.
|Disable button on submit||
Disable submit buttons when submitting the form.
Enable this setting if you need to prevent user submitting the form more than once (by clicking the submit button) when the browser is submitting the form.
|Allow login by URL||
Allow passing username and password to the login page as URL parameters.
By default the login page accepts HTTP POST only. If this setting is enabled, it accepts HTTP GET also, then user can login by URL , e.g.
rlogin?username=xxx&password=yyy (where "yyy" is a plain text password)
For example, this allows user login by using XMLHTTP from your own scripts.
Note For security, you can encrypt the username and password at the page you build the login URL and then decrypt them using User_CustomValidate server event, see Server Events and Client Scripts.
|Allow login by session variables||
Allow passing username and password to the login page via session variables.
By default the login page accepts HTTP POST only. If this setting is enabled, it accepts session variables also, then user can auto-login by setting some session variables , e.g.
ewr_Session[EWR_PROJECT_NAME + "_Username"] = "xxx"; // where EWR_PROJECT_NAME is the constant of your project name (see above) and "xxx" is user name
For security, you should pass an encrypted password whenever possible. In fact, usually you can retrieve an encrypted password (e.g. a md5 hashed password) from other web application only, if it is same as the encrypted password for your project (e.g. MD5 password is enabled in the project, or the project uses the same user table), then you can pass an additional session variable to let the scripts know how to compare the passwords, e.g.
ewr_Session[EWR_PROJECT_NAME + "_Username"] = "xxx"; // where "xxx" is user name
Specify if sensitive keywords allowing XSS attack should be removed.
If enabled, all user input string will be checked against an array of sensitive keywords. If discovered, those keywords will be broken by inserting "<x>" to prevent XSS attack. If this behavior is unwanted, you can disable this feature at your own risks. Re-generate and re-upload dll (or script) after changing this setting.
If you just want to allow some sensitive keywords, you can customize the array EWR_XSS_ARRAY in rpt-config.cs of the template. (Read Customizing Template.)
|Session timeout period (minutes)||
Specifies the session time-out period if the user does not refresh or request a page.
Setup this setting and the Session keep alive interval (seconds) setting (see below) to a positive value.
|Session keep alive interval (seconds)||
Specifies the interval to send Ajax request to the server for keeping the session alive.
|Session time out countdown period (seconds)||
Specifies the countdown period before session ends.
When the session is about to end, a modal dialog will show up to remind user and let the user choose to continue the session. If the user does not respond after the countdown period, the session will expire.
|Check token for form post||Check synchronizer token for form post (e.g. Popup filters)|
|Show current filter||Show current filter, for example, for debug|
|Initiate filter panel as collapsed||
Collapse the extended filter panel on page load. However, if the filter panel has values, it will be expanded automatically.
|Language files||Default language files (comma separated)|
|Allow no paging section||
Allow no paging section in the reports.
If both paging section at top and that at bottom are disabled, users will not be able to go to the second or later pages. The scripts will use paging section at bottom by default to make sure paging is possible. If you want to allow no paging section (e.g. you always have all records in one page), enable this setting.
|Use hierarchical User ID||
For used with User ID Security. (see Security Settings.)
If enabled, a parent user can view records of child users and grandchild users and so on. If disabled, a parent user can only view records of child users.
For setting Oracle's NLS_COMP parameter. Requires Oracle 10gR2 (or later). Possible values are: BINARY, LINGUISTIC, ANSI.
For example, if you want to do case insensitive search you can select LINGUISTIC.
For setting Oracle's NLS_SORT parameter. Requires Oracle 10gR2 (or later).
For example, if you want to do case insensitive search you can enter "BINARY_CI" (no double quotes).
|Auto-Suggest maximum display entries||Specify the number of options to be displayed during Auto-Suggest. Default is 10.|
|Use 'contains' for Auto-Suggest||Use "contains" instead of "starts with" user input for Auto-Suggest.|
|Hide user table password field||Hide user table password field for security.|
|Encrypt file path||Encrypt upload file path if enabled.|
|Thumbnail default width (px)||
For use with extension for image resize. (see Third-party Tools.)
If a target resize width is <= 0, this default width will be used. If this setting is also 0, the width will be auto-adjusted to keep the aspect ratio.
|Thumbnail default height (px)||
For use with extension for image resize. (see Third-party Tools.)
If a target height width is <= 0, this default height will be used. If this setting is also 0, the height will be auto-adjusted to keep the aspect ratio.
|Reduce image size only (image resize)||Do not resize if image is smaller than the resize dimension.|
|Always keep aspect ratio (image resize)||
Keep aspect ratio during image resize.
|Use Colorbox for images||
Specify if colorbox should be used to displayed full size image on clicking the thumbnail in the List/View page. Default is true.
|Multiple file separator||
Specify the file upload separator used to separate the file names. By default, comma is used. If you allow file names with comma, you can enter another separator, e.g. "|".
|Use Custom Template for viewing||Use Custom Template for viewing (not only for exporting).|
|Use ILIKE operator (PostgreSQL)||Use ILIKE instead of LIKE for case-insensitive search (for PostgreSQL only).|
|Collation for LIKE operator (MySQL)||Use the specified COLLATION for the LIKE operator (for MySQL only).|
|Collation for LIKE operator (Microsoft SQL Server)||Use the specified COLLATION for the LIKE operator (for Microsoft SQL Server only).|
|Show blank series for chart||Show blank series for chart|
|Show zero values in stacked chart||Show zero values in stacked chart|
|Use popup panel for drill down||Use a popup panel to show the detail report in the same page. If disabled, user will be redirected to the drill down report directly after clicking the drill down link.|
|Show drill down filters||Show current drill down filters in the detail report.|
|Use responsive layout||
Use responsive layout for mobile devices automatically. Default is TRUE.
Note If disabled, there will be NO mobile features, everything will be for desktop only.
|Use place holder for text box||
Add placeholder attribute to form elements automatically. Possible values are:
|Use css-flip||Use Twitter css-flip to convert the generated <project>.css, bootstrap.css and bootstrap-theme.css to RTL version (*-rtl.css) and add dir="rtl" attribute to the BODY tag.
|Max email recipient||
To avoid abusing the export to email feature, the number of email addresses in the recipient field is limited to the specified value. Default is 3.
|Max email sent count per session||
To avoid abusing the export to email feature, the number of emails can be sent by the user in each session is limited to the specified value. Default is 3.
|Max email sent period||
To avoid abusing the export to email feature, the number of email within a period of time is limited to the specified value. The unit is minutes. Default value is 20.
Note Write email log (see below) must be enabled for this to work.
|Write email log||
Specify if the email sent should be logged.
|Email log field size limit||
Specify the general size for all fields (see below) to be logged.
If you don't need to log everything, you may want to log the first nth characters for each field only. Enter the maximum number of characters for all fields, including the "..." appended to the end.
|Write email log to database||
By default the log is written to a daily log file in the specified File folder (see ASP.NET Setup), if you want to log to a database table, enable this setting and the table name and field names below.
|Email log table name||
Table name of the email log table.
|Email log DateTime field name||
Datetime field for logging the date and time of email sent.
|Email log IP field name||
String field for logging IP of the sender.
|Email log Sender field name||
String field for logging email address of the sender.
|Email log Recipient field name||
String field for logging email address of the recipients.
|Email log Subject field name||
String field for logging subject of the emails.
|Email log Message field name||
String field for logging the message of the emails.
|Add plain text version in HTML email||
Add plain text version when sending HTML email.
Authentication mode. Supported values are: Windows or Cookie. Default is Cookie.
If you need to use Windows authentication, change to Windows.
Specifies if the System.DirectoryService namespace should be used, e.g. when you use LDAP authentication by DirectoryEntry.
|Use AspNet.Mvc.TypedRouting||Specifies if AspNet.Mvc.TypedRouting should be used, see AspNet.Mvc.TypedRouting for details.|
|Use custom Tag Helpers||
Specifies if custom tag helpers should be used, see Authoring Tag Helpers for detail.
There is an example in the file ewtaghelpers.cs of the template, if you want to add your own tag helpers, add your code there.
|Kestrel port number||Port of the Kestrel web server. If not specified, default is 5000.|
|Publish framework||Publish the application for a given framework identifier (FID). If not specified, FID is read from project.json. Read dotnet-publish for details.|
|Publish runtime||Publish the application for a given runtime. Read dotnet-publish for details.|
|Publish output||Specify the path where to place the directory. If not specified, will default to .\bin\[configuration]\[framework]\[runtime]\publish, e.g. .\bin\Debug\net451\win10-x86\publish. Read dotnet-publish for details.|
Configuration to use when publishing. Possible value is "Debug" or "Release". If not specified, will default to "Debug". Read dotnet-publish for details.
|Publish native-subdirectory||Temporary mechanism to include subdirectories from native assets of dependency packages in output|
|Publish no-build||Do not build projects before publishing|
Specify if Bower should be used. Not used by default. Read Manage Client-Side Packages with Bower for details.
Note If enabled, your PC must have Node.js and npm installed.
|Use dotnet bundle||Specify if dotnet bundle should be used. Not used by default. Read Bundler and Minifier for details.|
If you use database built-in query/view to make an alternate version of a table, you need to set up the table and field settings again, this tool help you quickly copies table and field settings from the source table to the view. Click [Tools] -> [Copy Table Settings] to open the following form:
Select the [Source table] and the [Target table] (e.g. the query/view), click OK to copy the table settings. If a field in the target table has the same name as that in the source table, field settings will also be copied.
When you create a Custom View, ASP.NET Report Maker allows you to copy field settings from the source table. However, when database built-in query/view is used, you need to set up the field settings again, this tool help you quickly copies field settings from the source table to the view. Click [Tools] -> [Copy Field Settings] to open the following form:
Select the [Source table] and the [Target table] (e.g. the query/view), the fields of the target table will be listed in the left column, you can then select the respective source fields (from the specified source table) in the right column and click OK to copy the field settings.
If you prefer to have the table list displayed in the user interface in alphabetical order, click [Tools] -> [Sort Tables Alphabetically] to do so.
ASP.NET Report Maker will reuse the pre-processed template scripts to speed up code-generation. We refer to these pre-processed scripts as "template cache", sometimes these template cache may become corrupted resulting from, for example, generating with a corrupted template or badly customized template. In these cases you may want to delete bad template cache and let ASP.NET Report Maker builds the template cache again. You can do so by either clicking [Tools] -> [Delete Template Cache] or by manually removing the folder for the template under your Documents folder, i.e. <Documents Folder>\ASPNETReportMaker\Templates\<TemplateName>\. (Also see Customizing Template.)
ASP.NET Report Maker allow you to modify the menu in the generated site, to open the menu editor, click [Tools] -> [Menu Editor] in the main menu or click the "Menu Editor" icon in the toolbar.
Use the following toolbar buttons to manage your menu items:
Add a new menu item
You can add new menu items and link them to your own URLs. Just click the button to add and then enter your URL. Note that the URL of the List pages of the tables are uneditable, they will be generated by ASP.NET Report Maker automatically.
|Add child item||
Add a child menu item to the focused menu item
You can also easily drag-and-drop the icon of a menu item to another menu item to create child menu items.
|Delete||Delete the focused menu item|
|Edit item||Edit the displayed text of the focused menu item. You can also click the text directly to edit.|
|Post||Post the changes you make to the focused menu item.|
|Cancel||Cancel the changes you make to the focused menu item.|
|Refresh||Refresh the menu items|
|Move up one level||Move the focused menu item up one level|
|Move down one level||Move the focused menu item down one level|
|Move Up||Move the menu item up|
|Move Down||Move the menu item down|
|Expand all items||Expanse all menu items so all menu items of each level are shown|
|Collapse all items||Collapse all menu items so only menu items of the first level are shown|
Show Multi-Language Property Editor for editing unicode menu text
|Chart menu items||
Show/hide the menu items for charts
Your can show/hide the menu items by checking/unchecking the checkboxes beside the menu item text. If a parent menu item is hidden, all the child items will also be hidden.
If you want to use special characters in the menu caption, use HTML entities such as "&#euro;", or you can enter unicode caption using Multi-Language Property Editor, see Multi-Language Property Editor above.
If your custom menu items requires login, uncheck [Allow Anonymous User]. For other (non custom) menu items, this setting is same as the List/Search/View permission for Anonymous User in Advanced Security. (See Security Settings.)
After modifying, make sure sure you click [OK] to save the changes.
By default, the menu is vertical.
Registered user of ASP.NET Report Maker can use the Horizontal Menu extension, click [Tools] -> [Extensions] to enable the graphical extension, then click [Advanced] tab to set the menu options.
Grouped menu items is supported. Grouped menu items are to be set up in the same way as a sub menu. You can check the title menu item in the Group Title column of the Menu Editor.