InetSoft's advanced reporting software includes a Java style API for controlling many aspects of report production in a programmatic fashion.
When a template is registered as a replet, the replet engine uses TemplateReplet class to create a replet Java object internally. If a template-based replet requires user interactions, such as drilldown or customization, the interactions have to be added as Java event handlers. Most of these features can be implemented using the Scripting capabilities in the Designer.
#1 Ranking: Read how InetSoft was rated #1 for user adoption in G2's user survey-based index | Read More |
Event handlers can be added to a TemplateReplet like any other BasicReplet. The TemplateReplet class extends the BasicReplet class. Therefore, all BasicReplet methods are available in the TemplateReplet. The event handlers can be added in the init() method of the replet.
public class MyReplet extends TemplateReplet { public void init(RepletRequest req) throws RepletException { setTemplate("http://myhost/templates/mytemplate.srt"); super.init(req); addLink("Chart1", "Guide/Details"); } }
Because a replet class extending the TemplateReplet is registered as a regular replet, the template file location is not saved as part of the repository. Therefore, the replet class needs to explicitly pass the information to the TemplateReplet during initialization. In the simplest case, the template resource name or URL can be hardcoded in the replet class. The template location can also be configured in the repository as one of the initialization parameters.
public class MyReplet extends TemplateReplet { public void init(RepletRequest req) throws RepletException { setTemplate((String)req.getParameter("template")); super.init(req); addLink("Chart1", "Guide/Details"); } }
Because the template is loaded during the TemplateReplet initialization, the setTemplate() call must be made before the super.init() is called. The init() method of the TemplateReplet must be called in the init() method of the replet class. It loads a template file into the program. After the replet is initialized, BasicReplet methods can be used to add interactions to the report.
It is not necessary to use the TemplateReplet to handle report queries. A replet can also use the query engine API to programmatically execute queries and handle query parameters.
A report object can be created in a replet using only the reporting API, or loaded from a report template. If a template does not contain data query information, the report data needs to be programmatically passed in from the replet.
A replet can also be built from a template with embedded queries. The queries are processed using the InetSoft query engine. When designing a report in the Report Designer and binding data queries to the template, there is no need to write any code to create a replet. The report object information is self-contained in the template.
Features to Look for in a Good BI Solution - This section discusses the key features that a business should consider in choosing a BI solution. Data Connectivity: A BI solution's data engine should be able to access any data source, from spreadsheet files to relational databases, data warehouses, big data storages, all the way to on-premise or cloud-based applications that use JSON and REST APIs. The daata engine must be able to handle "big data" applications and be fully scalable to meet changing demands. The solution should multi-tenancy features to allow automated parameterized connection to multiple databases or schemas based on user, group, or role, and should facilitate creation of business-friendly abstraction layers such as entity-attribute models in addition to supporting graphical user-friendly SQL query creation...
File System Log Dashboards - User Activity Monitoring: Dashboards show who accessed specific files and when, highlighting patterns that may require further investigation. Audit Trails: Detailed records of file changes help in compliance reporting and forensic analysis. Anomaly Detection: Integration with AI or machine learning allows for the identification of unusual patterns, such as bulk file deletions. Storage Usage Analysis: Visualizations show storage consumption trends, helping organizations plan for capacity upgrades or cleanups. These features help IT teams ensure that file systems operate smoothly while minimizing risks related to data breaches or unauthorized activities...
How Complex or Simple Should Dashboards Be? - In general dashboard should be simple. But the truth is matter is that people really don't know what they want until the end. With data mashup, you can be flexible and deal with that inevitability. Start by giving them a general dashboard that meets what they said they wanted initially. But also give them the ability for them to modify it or create dashboards on their own, as well. So you get best of both worlds. They get the KPIs that they are really interested in, but also give them the ability to create on mashups. If they do change their mind, it's there for them to go ahead and create their dashboard personalized for them...
KPIs and Analyzing Logistics - Tracking key performance indicators in transportation logistics is just as important as in any other type of business. KPI's are essential business metrics important for keeping track of an organization's performance. Any organization needs to measure performance, whether it's on a daily, monthly, or on a quarterly basis. KPI's are the most important statistics that analyze an organization's objectives, business goals, and risks. KPI dashboards for transportation logistics can easily be built with InetSoft's on-premise business intelligence software application, Style Intelligence. Style Intelligence offers drag and drop tools for creating a variety of chart types. Multiple KPI's can be tracked in a single report, which can include any of the various informational displays offered within the software...
Old BI Platform Approaches - When business intelligence software was in its infancy, most approaches were based on simple arithmetic calculations (summation, division, ranking, etc.) focused on the analysis of historical (last year, last quarter, last month) data. For those purposes, data warehouses were great at aggregating data in batches from different operational systems based on predetermined data models at certain intervals, but they suffered from latency; changes required retuning queries or time-consuming re-architecting of data models; most data warehouses weren't scalable enough to handle transaction-level data granularity...
Technical Considerations for Java-based Dashboards in a .NET Environment - Deploying Java-based dashboards in a .NET environment can present several technical considerations that must be addressed to ensure seamless integration and optimal performance. These considerations span compatibility, integration, security, performance, and maintenance aspects. Here's a detailed exploration of these considerations: 1. Compatibility and Interoperability a. Platform Compatibility Ensure that the Java-based dashboards are compatible with the .NET environment. This includes verifying that both Java and .NET frameworks can coexist without conflicts. Consider using tools like Java Native Interface (JNI) or Java/.NET Interoperability tools (e.g., JNBridge, IKVM.NET) to facilitate communication between Java and .NET components...
Previous: Query Parameter Handling |