Customizing the Sisense User Interface with Interactive Buttons and Icons
Sisense plugins and scripts enable extensive customization of the Sisense user interface, allowing developers to add interactive elements such as buttons and icons to enhance functionality and user experience. A common use case of plugins involves adding clickable icons or buttons that trigger specific plugin features or open custom UI elements. This article outlines the process for adding these interactive elements using a practical example.123Views0likes0CommentsLoading Amchart5 and Other External Libraries via Script Tags in Plugins
This article explains how to load external libraries, such as Amchart5, into Sisense plugins by dynamically adding script tags to the page header to load the library. This method can avoid potential issues associated with other loading techniques but also offers flexibility such as using an external CDN to reduce plugin size and file count. Previous articles have discussed how to load external libraries and modules for Sisense plugins via adding the file to the plugin folder, and adding the file to the "source" parameter array in the plugin.json.475Views1like1CommentResolving "Internal Server Error" When Importing Model with Generic JDBC Connector [LINUX]
Resolving "Internal Server Error" When Importing Model with Generic JDBC Connector This article addresses the issue of encountering an "Internal Server Error" when importing a model from a local desktop to a production environment using the Generic JDBC connector in Sisense. This error often arises due to compatibility issues with older JDBC frameworks. Here, we provide a solution to resolve this error by updating the JDBC connector and connections. Step-by-Step Guide: Identify the Error: a. When importing the model, if you receive an error message resembling: Unexpected error value: { timestamp: {}, status: 500, error: "Internal Server Error", path: "/api/v1/internal/live_connectors/auth/GenericJDBC… } b. This error could indicate a problem with the outdated Generic JDBC connector. Understand the Cause: The error is due to the Generic JDBC connector using an older framework that is incompatible with the latest Sisense versions. Update the JDBC Connector: Deploy the JDBC connector using the new JDBC framework. Ensure all connections within the cube in the original environment where the model was exported are updated accordingly. Deploying the New Framework: Follow the step-by-step instructions detailed in the Sisense documentation for deploying a custom connector with the new JDBC framework. Access the documentation here: Deploying a Custom Connector - Sisense Documentation. Re-attempt the Model Import: Once the JDBC connector is updated, try importing the model again into the production environment. Conclusion: In conclusion, updating the Generic JDBC connector to align with the new JDBC framework and ensuring the connections are properly configured should resolve the "Internal Server Error" encountered during the import process. Following the above steps will help ensure a smooth and successful model import. References/Related Content: Deploying a Custom Connector - Sisense Documentation Sisense Community Support Forum Introduction to Data Sources Disclaimer: This post outlines a potential custom workaround for a specific use case or provides instructions regarding a specific task. The solution may not work in all scenarios or Sisense versions, so we strongly recommend testing it in your environment before deployment. If you need further assistance with this please let us know.189Views1like0CommentsHow to create a list of users with a current role
How to create a list of users with a current role To get a list of the users with their roles you can use table usage. Get the next fields from it - email and userRole. In this table, you can find all the roles that these users had previously [ALT Text: A table displaying two columns: "email" and "userRole." The "email" column contains redacted email addresses, while the "userRole" column lists different roles such as "Viewer," "Data Designer," "datadesigner," and "Designer." Some users appear multiple times with different roles.] To avoid this, lets go to the elasticube, open table usage. Create a Custom Column [ALT Text: A screenshot of the Sisense Elasticube interface showing the usage table with multiple fields, including trackingId, timeStamp, userId, userRole, and more. An arrow points to the three-dot menu next to the usage table, where a dropdown menu is open. The "Add Custom Column" option is highlighted in red, indicating the selection for creating a new custom column.] Name it - rank_date_ids We will use the function RankCompetitionDesc (https://docs.sisense.com/main/SisenseLinux/mathematical-functions.htm) Our query will look like this: RankCompetitionDesc( email, [timeStamp] ) Press the Save button and Build the Elasticube [ALT Text: A screenshot of the Sisense Elasticube interface showing the creation of a custom column named rank_date_ids in the usage table. The formula RankCompetitionDesc(email, [timeStamp]) is entered in the editor. An arrow points to the "Save" button, indicating the action to save the custom column. The status message at the bottom confirms that the formula has been parsed successfully.] Go to the dashboard and edit our widget. Add a filter for a column rank_date_ids = 1 [ALT Text: Dropdown menu interface with multiple selectable options. Check the box next to each option. "Add Filter" and "Usage Analytics Model" are visible. One item is selected and highlighted.] As the result, we will get the current user roles for every user. [ALT Text: Table showing an email column with text obscured in red and a user-role column listing "Viewer" and "Data Designer".]229Views1like0Comments