Seeking Best Practice for Live Detail Reporting in Sisense (Replacing SSRS)
Afternoon Sisense community, Our team is looking to replicate the functionality of a crucial SSRS report within Sisense. This report is used by a department to obtain a detailed list of jobs for a specific month. The workflow involves: Running the report for a selected month (typically the current or previous month). Reviewing the output for discrepancies. Updating the source system based on the review. Re-running the report immediately to verify the changes (requiring live data). Current Sisense Implementation & Performance Issue I've attempted to recreate this report's dataset using a Live Model connected to a Redshift SQL View. The view is complex: It contains approximately 50 columns of detailed data. It involves JOINs across 15 different tables to consolidate all necessary dimensions and metrics. The Issue: The performance of this Live Model is unacceptable. Users are accustomed to the SSRS report running a stored procedure and returning the filtered data in under 30 seconds. My Sisense Live Model is timing out. Constraints & Goal Requirement: The data must be live (no ElastiCube, as users need immediate reflection of system changes after updates). Target Performance: Sub-30-second return for monthly filtered data. Request for Guidance Given the high number of columns, multiple joins, and the strict requirement for live data with fast filtering (specifically by month), what would be the recommended best practice for implementing this detailed report in Sisense? Are there specific Sisense configurations, data modeling techniques for live connections that would address this performance bottleneck while meeting the "live" requirement? Thank you for your insights!47Views0likes1CommentSemantic Layer tables stack up like a deck of cards
Hi All, About once a month, all of the tables in our semantic layer stack on top of one another. I'm not sure why. It takes me about an hour to put them back in their right places. Has anyone else had this problem, and if so, how did you stop it from recurring? Cheers.47Views0likes5CommentsData Security Synchronization between Elasticubes
I was wondering if there is a possibility to synchronize the data security between elasticubes. For example, I have Elasticube A & Elasticube B which use one field (the same) for data security. Elasticube A is updated Monthly. Elasticube B is updated Weekly. The question is, if there is a functionality or a way to synchronize them. eg. If a change is done to Elasticube A, to synchronize the access rights of Elasticube B "automatically" .Solved96Views0likes7CommentsIssue creating tables via POST/datamodels/{datamodelId}/schema/datasets/{datasetId}/tables
Hello, When I create a table via the following endpoint: POST/datamodels/{datamodelId}/schema/datasets/{datasetId}/tables the table indeed is created, however the "preview of the data" and "the data showing into the dashboards" functionalities don't work. The payload I use to create the table with the API is the following: { "id": "columns", "name": "columns", "type": "base", "columns": [ { "id": "table_catalog", "name": "table_catalog", "displayName": null, "semanticIndex": null, "oid": "e467cc0d-e174-4f6f-b323-a1fe6631b75c", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "table_schema", "name": "table_schema", "displayName": null, "semanticIndex": null, "oid": "0b8a12a6-3210-4ca3-9bd1-f7f697830422", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "table_name", "name": "table_name", "displayName": null, "semanticIndex": null, "oid": "42023ae9-da17-42d7-bf30-76263b37dac9", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "column_name", "name": "column_name", "displayName": null, "semanticIndex": null, "oid": "949662ab-d80b-414e-840f-6b7c9d526f9c", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "ordinal_position", "name": "ordinal_position", "displayName": null, "semanticIndex": null, "oid": "5fd023c6-775b-4086-8fc0-18ae30f288f5", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "column_default", "name": "column_default", "displayName": null, "semanticIndex": null, "oid": "3aec986a-c05e-41c1-a28c-63b3656c7fbc", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "is_nullable", "name": "is_nullable", "displayName": null, "semanticIndex": null, "oid": "91ec1abd-d8c9-4d49-8fcc-c30314755982", "type": 2, "size": 5, "precision": 7, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "data_type", "name": "data_type", "displayName": null, "semanticIndex": null, "oid": "0191ed88-dda3-4609-adf2-71ee92e17d96", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "character_maximum_length", "name": "character_maximum_length", "displayName": null, "semanticIndex": null, "oid": "9294c71d-a7ee-499c-a545-a2dc7d34e25c", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "character_octet_length", "name": "character_octet_length", "displayName": null, "semanticIndex": null, "oid": "4cba3687-517e-4a05-9921-f1c4e2b6a6b8", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "numeric_precision", "name": "numeric_precision", "displayName": null, "semanticIndex": null, "oid": "2d26d3c5-535d-4e2c-9321-88b6cdecef39", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "numeric_precision_radix", "name": "numeric_precision_radix", "displayName": null, "semanticIndex": null, "oid": "2da2c5a0-d38a-4852-9d98-ca0980bf3b3d", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "numeric_scale", "name": "numeric_scale", "displayName": null, "semanticIndex": null, "oid": "acff38fc-345e-428c-a531-356db48a247b", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "datetime_precision", "name": "datetime_precision", "displayName": null, "semanticIndex": null, "oid": "7ad52251-e8df-40e1-832a-9df13f6ada96", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "interval_type", "name": "interval_type", "displayName": null, "semanticIndex": null, "oid": "bc89e589-7691-4af5-88f8-c99bb3d9e38a", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "interval_precision", "name": "interval_precision", "displayName": null, "semanticIndex": null, "oid": "b04b571f-2d92-446e-88e4-0a84b9935be7", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "character_set_catalog", "name": "character_set_catalog", "displayName": null, "semanticIndex": null, "oid": "3924dda5-a14f-46dd-b249-feecbed1daf6", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "character_set_schema", "name": "character_set_schema", "displayName": null, "semanticIndex": null, "oid": "875bb8dc-d6da-4ac4-be3f-ca3052ce7dbd", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "character_set_name", "name": "character_set_name", "displayName": null, "semanticIndex": null, "oid": "688e9b83-ec66-48ce-84b2-57d677b7f87f", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "collation_catalog", "name": "collation_catalog", "displayName": null, "semanticIndex": null, "oid": "5cc74c8b-860e-4f3b-a667-a655587e27a9", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "collation_schema", "name": "collation_schema", "displayName": null, "semanticIndex": null, "oid": "2e0325bf-184d-4f6a-a5b4-cdcdc6f0243a", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "collation_name", "name": "collation_name", "displayName": null, "semanticIndex": null, "oid": "e3939c19-49a5-423b-8cb9-6d821888694d", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "domain_catalog", "name": "domain_catalog", "displayName": null, "semanticIndex": null, "oid": "143600c8-99ad-411f-a7b6-d134ffdcd54b", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "domain_schema", "name": "domain_schema", "displayName": null, "semanticIndex": null, "oid": "286dafc1-ad52-47db-818d-c041d6b38d30", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "domain_name", "name": "domain_name", "displayName": null, "semanticIndex": null, "oid": "446a29dd-3804-4d35-8f20-92880acc8dbb", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "udt_catalog", "name": "udt_catalog", "displayName": null, "semanticIndex": null, "oid": "0e3c2ddc-9dbd-4b64-98a1-30bf79c57495", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "udt_schema", "name": "udt_schema", "displayName": null, "semanticIndex": null, "oid": "3b7f2b0f-bc5f-46a7-854f-80bd031f206b", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "udt_name", "name": "udt_name", "displayName": null, "semanticIndex": null, "oid": "205a1c01-47af-42dd-90d9-321c72c53552", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "scope_catalog", "name": "scope_catalog", "displayName": null, "semanticIndex": null, "oid": "33afa09f-f250-43a8-9598-eb9ccbe577dc", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "scope_schema", "name": "scope_schema", "displayName": null, "semanticIndex": null, "oid": "4a940c33-9d02-43af-9042-aa93d2ad6844", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "scope_name", "name": "scope_name", "displayName": null, "semanticIndex": null, "oid": "c7c144c1-3cf5-477a-a7ca-440ff37675cf", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "maximum_cardinality", "name": "maximum_cardinality", "displayName": null, "semanticIndex": null, "oid": "bd9371dd-3dcb-49d0-b961-9718ae9db0d0", "type": 8, "size": 10, "precision": 10, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "dtd_identifier", "name": "dtd_identifier", "displayName": null, "semanticIndex": null, "oid": "4547094b-0f7e-46a2-91cb-1aa765a90805", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "is_self_referencing", "name": "is_self_referencing", "displayName": null, "semanticIndex": null, "oid": "b8ab4c63-17f2-4546-9fe8-9f836436a3b2", "type": 2, "size": 5, "precision": 7, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "is_identity", "name": "is_identity", "displayName": null, "semanticIndex": null, "oid": "489369be-87e2-43b1-b469-e6f635314113", "type": 2, "size": 5, "precision": 7, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "identity_generation", "name": "identity_generation", "displayName": null, "semanticIndex": null, "oid": "24548bc2-d200-4803-8acb-64baa708ea6f", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "identity_start", "name": "identity_start", "displayName": null, "semanticIndex": null, "oid": "83590ce0-1749-410c-9230-80cf2eba73b0", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "identity_increment", "name": "identity_increment", "displayName": null, "semanticIndex": null, "oid": "f295919f-d985-4623-8b03-7e0498a25402", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "identity_maximum", "name": "identity_maximum", "displayName": null, "semanticIndex": null, "oid": "38114b6a-7829-4fab-81eb-280225a4890c", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "identity_minimum", "name": "identity_minimum", "displayName": null, "semanticIndex": null, "oid": "00686f13-6a30-4b39-8164-2fdce57e2894", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "identity_cycle", "name": "identity_cycle", "displayName": null, "semanticIndex": null, "oid": "f228c9c4-ff5a-4bf1-851e-662bb2052d23", "type": 2, "size": 5, "precision": 7, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "is_generated", "name": "is_generated", "displayName": null, "semanticIndex": null, "oid": "796880b1-62f2-4570-9973-dd68b1eac4d9", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "generation_expression", "name": "generation_expression", "displayName": null, "semanticIndex": null, "oid": "f30b5f8a-b90e-4bb9-a5f1-9049b416b678", "type": 18, "size": 2147483647, "precision": 2147483647, "scale": 0, "hidden": false, "indexed": false, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null }, { "id": "is_updatable", "name": "is_updatable", "displayName": null, "semanticIndex": null, "oid": "bc151a93-c760-49b7-994c-f4355827a899", "type": 2, "size": 5, "precision": 7, "scale": 0, "hidden": false, "indexed": true, "isUpsertBy": false, "lastUpdated": "1970-01-01T00:00:00.000Z", "description": null, "expression": null, "import": null, "isCustom": null } ], "buildBehavior": { "type": "sync", "accumulativeConfig": null }, "hidden": false } What I get on the preview is: { "moreInfo": { "why": { "name": "InvalidRequestException", "message": "InvalidRequestException", "errorCode": 8, "wrongParameter": null, "trace": null, "why": "BE#406574 \"columns\" Table has no columns or does not exist." } }, "code": 22003, "message": "An error occurred while executing request to connector: BE#406574 \"columns\" Table has no columns or does not exist.", "status": 400, "httpMessage": "Bad Request" } When I create the exact same table, BUT from the UI the functionalities mentioned above work. May you help us with that? Best regards, Rado38Views0likes3CommentsQuery Plan Analyzer - is it reliable?
Looks to me like the Query Plan Analyzer incorrectly labels some joins as "many" when they should be "one". Also, it seems to analyze the SQL constructed by Sisense, not the database's query plan. Is that correct, or am I missing something? (My goal with this post is to check my understanding of Sisense and the Query Plan Analyzer, and to point out potential issues.) 1) Incorrect "many" See the attached "QPA-graph2.png". Looks like it's saying "Sum(Table1.Field1) Cross Join Sum(Table2.Field2) yields >1 rows". But the sums are not being sliced or grouped; it's just a sum of every row in the table. How can that possibly yield >1 rows? 2) Sisense SQL vs database query plan See attached "QPA order of operations.png". Looks like it's saying that the plan is to: [1] Select a row from the Table1 (Episode dim table). (1 row.) [2] Join Table2 (Dates) to Table3 (Patient/Episode fact table) on DateID. (80mil rows.) [3] Join the results of [1] and [2]. (1 row.) It would be more efficient to: [1] Select a row from the Table1 (Episode dim). (1 row.) [2] Join [1] to Table3 (fact) on EpisodeID. (1 row.) [3] Join [2] to Table2 (dates) on DateID. (1 row.) That way, it doesn't need to load all the Table2 and Table3 rows. The query planner knows that it can safely rearrange the joins this way, and it has cardinality estimates so it can see which order will result in less work.Solved1KViews0likes2CommentsHelp with CI/CD Workflow for Sisense + GitHub Integration
Hi everyone, We're currently using two environments—test and prod—and recently began using Sisense's Git integration with GitHub. We're now looking to improve our CI/CD process and wondering if anyone has come across solid documentation or examples. Specifically, we're hoping to: Automatically deploy changes from a feature branch in test to main in test after a pull request is merged Then automatically deploy the same changes to prod Has anyone implemented a workflow like this or found official guidance on automating these deployment steps? We'd love to avoid manually pulling these changes into each environment. Appreciate any advice, links, or lessons learned!65Views0likes5CommentsBuild To Destination Failure
While Trying build to Destination in an elasticube model, I am getting destination viewer error. Is it related to any configuration issues and is it necessary to provide the database and schema parameter while doing Build to destination? Attaching the screenshot of the generated error327Views0likes3CommentsHandling Latest Records in widget (pivot/charts) in context of filters selected
Hi, I have a table with test cases (testcase_key, Type), cycles (cycle1, cycle2, ...), and executions (test_result, execution_timestamp). Scenario: A test can be executed multiple times within one cycle, and the same test case can also be executed in subsequent cycles. I want to keep only the latest execution of each test case in a pivot table. The dashboard has a filter for cycles. I can write custom SQL like this: SELECT * FROM ( SELECT *, ROW_NUMBER() OVER (PARTITION BY testcase_key ORDER BY execution_timestamp DESC) as rn FROM executions ) sub WHERE rn = 1; The challenge with this approach is that it only shows the test case of the latest cycle. If a user selects any past cycle, I am not able to see the latest test case status and type for that cycle. I have also tried using JAQL, but it doesn't work as expected. Here is the JAQL query I used: { "top": 1, "by": { "table": "executions", "column": "actualenddate_ts", "dim": "[executions.actualenddate_ts]", "datatype": "numeric", "agg": "max" }, "context": { "partition": [ { "table": "executions", "column": "testcase_key", "dim": "[executions.testcase_key]", "datatype": "text" }, { "table": "executions", "column": "issue_key", "dim": "[executions.issue_key]", "datatype": "text" } ], "sort": { "table": "executions", "column": "actualenddate_ts", "dim": "[executions.actualenddate_ts]", "datatype": "numeric", "order": "desc" } } }235Views0likes2CommentsHow to Dynamically Switch Between Multiple Data Models in a Single Dashboard?
Hello I am building a dashboard where different user groups need to view similar KPIs sourced from different ElastiCubes. For example; one group uses the Sales_US model & another uses Sales_EU. Rather than duplicating dashboards for each data model, I am exploring ways to dynamically switch between data sources within a single dashboard using a parameter or user/group attribute.🙂 Has anyone implemented a solution where the dashboard automatically pulls from the relevant data model based on user login, group / a dropdown selector? 😇 Ideally; I would like to avoid duplicating widgets and dashboards, and instead create a flexible design that changes context based on the selected (or detected) model.🤔Checked https://docs.sisense.com/main/SisenseLinux/embedding-dashboards-and-widgets.htm related to this and found it quite informative. If this isn’t natively supported, are there any creative workarounds using Sisense Blox, embedding API / script-based redirection/Generative AI Course ? 😇 I’m open to hybrid approaches as long as they maintain a good user experience. Thanks in advance!🙂70Views0likes2Comments