Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Environment
Welcome, everyone, to Q&A with Qlik. Today we're going to be talking about App Design.
Just want to quickly introduce myself. My name is Troy Raney. I work to put together webinars and helpful videos like this one.
We've got a familiar expert panel for you. Ola, I want to quickly introduce yourself.
Yeah, sure. Thank you. So I've been with Qlik for almost 10 years, working mostly with learning and enablement in a couple of different roles. Right now, mostly focused on AI ML.
Great. And Patrik.
Yep, my name is Patrik Lundblad. I'm Lead Product Designer in the analytics area. So will I also focusing on AI and other things, but also on the visualization, dashboard authoring, things like that.
Fantastic. All right. When you register, you have an opportunity to submit some questions ahead of time. So we're going to start the session with a few of those.
First question. In Qlik straight tables attempts to replace NULL values with an alternate character do not work when the NULL originates from a left join.
The joined field remains a true NULL, preventing Qlik from applying the intended substitution.
Any suggestions on how to resolve that issue?
Um, yeah. So and I mean, it's correct. So when there are no matching values that exist on the right side, the click trees treats them as no values and not as a text value or substitution. Now, there are a couple of workarounds from this. One is to kind of pre-add some values before you do the join.
creating a calculated for yield or something in that. And the other thing is to look at the functions, um… NULL is a value in the script to NULL as a value or NULL value to give these missing values. You can just put a dash or whatever you want to there, and that should.
Yeah, I'll solve it for you.
Fantastic. And because I find commands like that easier to read. I'm just going to push.
What you're talking about NULL as value or NULL value in the script. Perfect.
Next question. What are some guidelines to implement a top level style guide or color palette from which apps can inherit?
So this most likely talking about teaming. So I'll share my screen, and we can talk about some of the guidelines.
Great.
So Wade is one of our colleagues, has at Qlik Community, and hopefully Troy can post the link, written about how the Qlik teams are built up and what the… Parts of it is the definition of it, the JSON files, optional files, how to include the images, fonts, etc, and bulk for what the different things are.
Are you sharing your screen? Because I'm not seeing it.
I'm not maybe sharing my screen. Let me try to share again.
Great.
Now, let's see. Here we go. So what is the custom teams? Things like, what is the structure of the team file? What additional components can you have in there? And also some example Json format for the theming file.
So that's one of the resources. Another thing to think about is the way that you structure your colors, because many times it's easy to build one team and have the colors in whatever position you want for the text colors, the data colors, the measure colors, and so on.
But if you have within your company or within your tenant, multiple teams. Sometimes you might want to switch between the teams. Sometimes you want to have a light team, a dark team. Sometimes we want to have an internal corporate presentation team, sometimes an external one, and.
It's really important then to think about where you position these colors.
So, here's an example of our Horizon team. And you can see here that these are the single color palettes. These are the ones that.
Yeah, you often use, for example, as the text, as the background colors and so on. Usually the place where you also get up the color picker wheel. So those are the palettes being used there.
You have to measure pallets being a gradient from one color to another color.
And you also have the dimensional colors being, for example, a pyramid or just a scale of colors.
But the important part is that once you have multiple teams, like in this case, here we have the focus team, the horizon team, and the breeze team is that you try to keep.
This type… same type of color palette in the same place, because when you move from theme, we store what is the index of the color palette being used. For example, if you want to use a gradient, try to put that in your first index, or try to put that as the same id, so that when you move from one theme to another team, you also get a gradient.
For example, instead of classes. If you have a white background, you still want to keep a white background when you move to another team, try to keep them, for example, in the st position, try to keep darker colors in the same position, and usually when we build teams at click.
It's around these eight colors that we switch just between the teams. The other ones, as you can see here, are pretty similar. The background color, the main color, the different text colors.
Just as a sneak peek, I can show you the foundation team, which is something we're working on. Hopefully released this summer, if not before. So, as you can see here, it still has the white color in the same place. The black color in the same place. It has a couple of.
theme in colors, it has the main color, and then it has the grades that we're building up here using those colors and the pyramids.
So main thing when building teams and colors, try to keep similar colors in similar places across your palettes.
Very cool, and that foundation theme, is that what that was called?
Yep, foundation is the new one.
exciting. That looks very bright. Great. Uh, next question.
What's the simplest way to create a canonical calendar?
Yeah. So that's a great question. The canonical calendar when working with multiple types of dates works both like we want to, and not like we want to with clicks associated engine, because when we start selecting values inside of the application, it'll show all of the dates that are.
Related to this value, so they could be one order date, they could be one shipping date, they could be other types of dates as well. Now, to fix this, what we usually do is that we create a master calendar, which is our script and way of handling all of what we define as a date.
And then we create the link table that we link this master calendar to the facts table and thereby the rest of the data model as well. So there's a separate script where we define how we want to handle dates.
And then a link table to be able to define how we link this calendar back to the rest of the data model. I've provided a link for you, Troy, to share with the group on a great post on canonical dates.
I think it's recommended, but separate table with dates, link table that links this together with the rest of the data model.
Great. Let me just grab that link.
All right. And… Next question.
We work with many toggle buttons in the visualization apps to switch between currencies, language, time periods, etc.
Somehow, these variables in the background are not saved in our bookmarks, even when the option Save Variable Status is ticked.
They're using Qlik Sense on-prem version. November 2024. Any suggestions?
What's that number 2024, 2025. I was going to say.
P15, yeah.
So yeah, so I'm not sure on exactly what's the wrong there. But what I can talk. So if it doesn't work, of course, file a bug. We'll look into it. But I'll talk about a changed behavior, which I don't know if that's in the November 2024, or if it's a later one. I believe this is a later one. It's on the cloud, and it's.
One of the on-prem versions. So I'll try to share my screen again, and I can show you what the difference is that we're changing.
So let me jump to… my app. You can see here that when I create a bookmark today, this is the button they're talking about is that there's a say variable state in here. So usually, when you have a variable, you want it to remember in the bookmark. That's the checkbox that you're checking.
But we made a change. This option is no longer recommended in the app for developer. We move this to another place. This may be deprecated in the future, because what we want is that the consumer of your app doesn't have to be.
knowledge about our variables and having to think about, should I save the state variable state or not? It's better that you, as an app designer, say, which are the variables that should be saved.
So now, as part of the variables dialog, if you open up any of these variables, you can see that there's an option, include current value of variable when created bookmarks.
Which is the same thing we had in QlikView before, so probably something you'll recognize, which means that any variable you're using as part of a toggle button, as part of a UI that you want to be stored as part of the bookmark, you just make certain as an app developer to check this one.
But I'm not certain if the version on-prem2024November has it or not, but that would be what you would do in the once you get to release a hazard.
Great. Thanks. Next question.
Yep.
Where are their cyclic groups in pivot tables in Qlik Sense like there were in Qlik View? Or is there a suitable alternative or workaround?
So there are actually cyclical fields or dimensions in the pivot table. But you have to use the correct one. And this is where it gets tricky.
So, as you know, people tables were launched in ,2015as a first version of Qlik Sense.
We've later on modernized many of our associations and upgraded them with new improvements and so on as they go along. But for the rate table and for the pivot table, it has been a hard time making a one-to-one upgrade. So instead, what we've done is that we've.
added in a new pivot table and a new straight table. So I can share my screen. I can show you the difference between them.
So my recommendation when creating table or pivot table is to use the new ones.
They are in the list of shorts called the straight table, and they're called the pivot.
So straight table and pivot. And if you look here on the right hand side, you can see that I have the old pivot table and I've added in a cyclical dimension group in here. There is no UI or anything that you can change in here. But on the new pivot table, there is this context menu.
With options like expanding this column, collapsing it if you have multiple ones, searching within it, but also moving to another field within the group.
So that's the easy answer. You're going to have to use the new one instead.
That's great. Thank you for demonstrating that. Next question… What is the roadmap for Qlik on-prem as the SaaS is getting a lot of revamps and updates lately?
So we… we don't have a public roadmap for any of our products. The the closest thing that you can do is if you go to our ideation, you can see what, um… People have submitted as suggestions for improvement and how they've been voted and if they've been picked up or not. So there that gives a little feedback on the roadmap. But of course, that doesn't define all of the internal stuff that we're working with.
We don't really have a roadmap for, um, that's publicly available.
Yeah, but there's also another resource less roadmap, but see what the new releases are, and.
or click help site. If you are able to get to the what's new section, you can select the version that you're interested in. And in the what's new, you can see what has been included in that latest release.
And everything that is being developed for Qlik Cloud, with exceptions of some features is just.
aren't available like AI, but all the new improvements are pushed to the on-prem version.
So they're developing both. conjunction with each other.
Great. Next question. Uh, we have a very complex setup in QlikView. Sometimes many selection criteria, multiple charts at once.
Uh, since space… in Sense is typically rather limited. My problem is that important access labels and legends are simply hidden automatically when the screen resolution isn't large enough to display even two charts side by side.
Is there a way to prevent those behaviors on a case-by-case basis, or what would be your suggestion?
So that's part of the responsive design, meaning that when the screen gets smaller, things that are of less importance gets removed first. Now, the problem is that it's automatic, and that's with anything that's automatic, it doesn't really fit every use case.
So, the best thing to do if you want to make sure that it is visible all the time is, of course, to make more sheets or larger sheets. We have, for example, the extended sheet compared to QlikView. If you go to the properties of a sheet, you can extend the sheet.
And add more space below it, which means that it becomes scrollable, so that you can scroll it downwards and add, like, if you want to have multiple charts, stack them below each other. So that's one option.
Another option is just like QlikView, that you actually design for a certain screen resolution. So one of the options on the sheet is to turn off responsive and put in a custom pixel size. So if you know that there's, uh…1920pixels by12something, then you can put that as the size in there, and you can actually lay out your charts and your shades in the way that you want people to consume them and see them, which means that anything you want visible will always be visible. If it's visible when you're developing.
Then anyone consuming it will have it. Now we are working on other ways to merge the responsiveness with more options to make it certain that what the look and feel is going to be on certain screen sizes. But it's not something that's ready yet. It's still on the roadmap question.
Okay, great. A lot of options there. Our next question. Do you have any recommendation for documenting your app design, perhaps automatically generating the design spec?
So I haven't seen or heard of anything where you there's no integration, there's no export function, as far as I know. Most people I've talked to users and so on. They create a custom couple of custom apps with custom sheets on them, and they copy the sheets between the apps.
So that's one way on the roadmap. So we released a couple of months ago some custom or some templates for sheets that are made by Qlik. So when you create a new sheet, you can open up a template figure and you can pick.
Sudden layouts of the sheets and certain styling. So on the roadmap being worked on is also the ability for users to upload their own sheets in there, their own templates. And that might be something that could be of usage later on, where.
Hmm.
You have your… yeah, just like you have automations, you have your guides that you upload, your template sheets, and you can use them when creating a new sheet.
Yep, thank you. me.
I love those templates, by the way. Not sure who did that, but that was great. Thank you so much.
Yeah, that's really nice. Yeah, I think.
Next question. We're relatively new to Sense. I'd be interested to know how widespread the use of storytelling actually is.
How do you consistently annotate their reports to highlight specific details in the data, or are there better ways to do this?
Yeah, and this is great. Storytelling. It's been a part of the product for over10years now, I think, and um… It looks, it has kind of the similar look and feel right now as it just had the latest couple of years as well. And it is used. I mean, it's a great way to kind of build these very interactive reports where.
You show your data and you walk through your presentation, and then you can quickly jump into the application if you want to drill down or make filters within your report. There are other options, though. If the interactive ability isn't one of the.
most important things for you. You can use alerting and reporting as well to kind of set up and generate reports as well. So through application automation, you can generate the PDFs or Excel documents. You can do pixel perfect via Qlik reporting.
And you can also set up alerts for specific thresholds and visualizations throughout the product.
Great suggestions. I was totally thinking about reporting as well when I read that.
Next question. In the Qlik Cloud application, reload History View, we can only see reload execution details without the app and space name information.
Do you guys know anything about this? Because I'm not really familiar… I feel like it always showed the app and space information. Because, first of all, when you look at a reload, you're looking from the app, right?
Yeah. So. There are a couple of different ways where you can view that an application or a resource, an application has been reloaded. If you're inside of the hub, I think I'll share my screen to make this a little bit clearer as well.
Sure.
Because it kind of depends exactly where you are. Let's see, share like so.
Sorry, there we go.
There was a share button as well, of course. So I'm going to zoom in a little bit so you can see. So here, it's possible to go into the app details and I'll move you guys over so we can see that details as well. So here on the screen we can see when the app is being reloaded.
Okay.
Yeah, if you press that, we go into kind of the reload history. And what I would guess is that it's from this interface here that the question comes, because here we can see which which space it is on right now. If we press view, it gives a reload summary, and here on the reload summary, it doesn't.
show exactly where which space it's been reloaded from. The information is viewable here on the details screen, though, before you go into that specific view. But I also want to take the opportunity to talk a little bit about the, um.
reload analyzer apps, which is available through our monitoring apps package that you can install through the application automation templates. So you can just use this template. You don't need to configure anything, it's just press play, and it'll import a couple of different applications.
There being one of the applications being the reload analyzer, and inside of the reload analyzer, you'll see all of your applications which app space they are, which app owner it is, what type of ass it is, and also all the information.
on reload of the applications. Unfortunately, I haven't had time to hydrate the tenant that much, so it's not that much information, but here you can get all the details that you want regarding the app.
Reload.
That's fantastic. And on that note, in that suite of monitoring apps is the.
The performance analyzer, or is it just called the app analyzer? I'm suddenly App Analyzer. We talked about this in the recent TechSpert talk.
App Analyzer.
Where you can really break down a lot of.
metrics regarding the app and how it performs, and find areas of improved improvement. So if you want to check out.
think about performance, uh, that's a good TechSpert talk to look at.
I'll include the link here. But moving on to the next question.
Will we be able to create master items via the script?
If so, do you have any ideas when?
So I haven't heard anything about creating master items via the script, but I do know that you can create master items outside of a specific application. You can, for example, use our APIs. And what I'm thinking about now is using it through the MPC server.
Uh, so if you connect through Click MCP server from an LLM, like, um… For example, Claude or ChatGPT, you can use those clients to kind of generate and create master items and do other platform operations as well.
Um, so…
A great idea.
Otherwise, go into ideation. I believe there's an ID in there. Make certain to vote for it.
Ooh, yeah. Perfect. All right. It's always good to check out ideation.
Next question. An email came out showing a new type of report called… WRTI. Thank you, right?
right table right table. Yeah.
right table report. I don't see that in my Qlik.
Right? Yeah.
Do you guys know anything about that?
So I believe it is the right table compared to right report. Right table is an object type that is part of the click cloud. I believe you have to have a scope that says that you're allowed to use write table inside the app, and then show up.
I can share my screen. I just show an example of a write table.
So in this case here, we can see that I have a table here at the bottom that I filled in with product ID. That's my key. I need to have a key in the table.
I have a couple of more columns, and I have a status in here. I can use a dropdown and say, oh, well, there's a lack of milk in here. I've ordered it, and I've ordered around , stocks, and then I can click the save button.
What this does is it pushes it to a shame server, and anyone else consuming, looking at this table will now see that this value has been filled in, and it can also hover it and see who filled it in by what date. There's also a small history in there, and so on.
This doesn't take the data back into the app. It takes it to a temporary storage that's going to live in there for, I think, around90days. If you want to take the data inside an app or into another system, you can use the Qlik automation or other ways of using APIs.
To transfer the data to, for example, your load script and have it loaded into your app, or changing it back to your source of data and then having it loaded as part of your load script.
So that's the right table. It's an object type. Need to have the correct scope on the space to be able to see and use it.
Perfect. Thank you for demonstrating that.
Next question. Are there any constraints from the design perspective about the amount of filters placed on sheets? I have…10filters, okay, but should we not use filters at all and only use the selection tool?
So I think that's a great question. I think the boring answer is it depends. And that's always when it comes to the design. Okay, so there's… you should probably not go over40filters if that's not something that's in the requirement specifications.
But otherwise, it's a good balance. It depends on which type of sheet it is. If it's a dashboard, for example, you want to minimize the amount of filters, generally speaking, and just let the KPIs and numbers talk for themselves. But then if you go in and look more at an analysis sheet, or.
A reporting sheet you would want to maybe have a little bit more filters for interaction. I would want to give or say that go to click or click demo site for demo applications to get a little better picture of.
different ways of designing applications. And there you can see some examples of where they have many or not that many filters.
I think you're muted, right?
Yep.
Sorry. And next question. I'm attending Qlik Connect. That's great. And looking at how AI will work with applications. Is this an available option moving forward with DHS?
Specifically, the US Coast Guard.
Well, we will be keep a look at on the main stage where we'll be talking a little very much about kind of our vision and how we see the market moving forward. We already in February, we released the Qlik MPC server.
Qlik Answers 2.0, which are both AI capability in relation to applications. When it comes to the specific markets and companies and customers that are allowed to work that.
I would recommend connecting with one of the reps on the show floor and talking a little bit more in detail on that. We can't discuss that in general here.
Of course. Uh, next question.
Is there an ability for users to input values to search by, for example, input a pre-existing list of employee IDs from another report?
or source into the Qlik app of choice.
Yeah, so I can do a short example. I just did it. So what you can do is, if you have another source that you want to use. So, for example, in this case I have the Excel spreadsheets. Well, it's a good place to store data. So that's probably where you might be getting.
Some of that problem. So what I can do is I can select a couple of them in here. I can copy them, which makes it, of course, a list of items. And I can go in here, and I can use this selection up here, and I can paste it in here.
So I believe it just has to be a space in between, and we'll select everything in there. Of course, in this case, some of these names here, amc, etc. Are being duplicated. So you might want to use some, uh… Yeah. Id should be easier because then it's going to search for the correct one. And also talking about selections, I just want to pinpoint one thing that maybe might not be in our demo app because it was released quite recently, which is that many times when you're designing apps, you're actually putting the same filters in the top of the sheet.
And it feels like why do I always have that thing in there? Why do I always have the department, current month, and things like that? So what you can do is that if you're an app developer, and if you're in the field list or dimension list, you can right click on one of these in here, and you can say, add to selection bar.
So this pins this field or dimension to the selection bar. And you can see here it shows up here. It doesn't have the close button. But now I can go in here, and I can do selections on year, name, etc. So, of course, don't do20fields, because the entire selection bar is going to fill up.
But if there is a couple of selections that you always have on the sheet, could be better to actually pin it to the selection bar than having it on the sheet all the time.
That's great. Hahaha.
soon to be an updated demo apps.
Nice. Next question. Is there any way to migrate?
or backup bookmarks in case we need to import them to the next version of an application.
So bookmarks. They're a little bit tricky as they are usually connected to the user and not the the application itself or available as app objects. So there's no, um… Magic button, or easy way to do it inside of the application view.
As of now, unfortunately.
All right. Next question.
multiple filter panes on one sheet, horizontal on top, or vertical on left side. What's the best practice regarding readability?
I guess that's kind of a personal preference, wouldn't you say?
I think it depends on your organization, your company, and so on. What's the other reports looking like? What are people used to best practices when we talk about the layout of a dashboard, etc. It's often using the setup technique, meaning that the most important part is in the upper left corner.
Users can from the left to the right, then goes to the next row, left to the right. So, if the filters are important, I usually put them on the top, docked to the top of the sheet. If filters are more something that benefits a user, but maybe you don't have to do a selection first before you see something.
I might put it on the side might combine it with navigation and other yeah more informational tools that are available. So depends on the report depends on the user, depends on your.
other apps and sheets out there.
Great. Next question. A recent design blog featured a financial.
the dashboard application that included inline SVG KPI displays in a straight table.
Can you point us to any resources that would provide an insight into coding constraints for SVG images like cell size and lighting up objects based on centered zero value?
Yeah.
I believe Patrik Nordstrom have a couple of design apps in the Qlik community that shows you how to use the SVG code. I've not been able to search for in the couple of minutes I've had an outlook for it, but if you look at Patrik Nordstrom's, uh… Demo apps, they usually have something in there. I think there's also an app on the demo web page that's this tips and tricks that could have some information in there.
Yeah, I was thinking there might must… I would suggest starting here at the design blog.
And yeah, searching for hepatic Nordstrom. Yeah.
Yeah. But Patrik Nostrum tips and tricks. They usually have information about how to use SVD and writing the code for it.
Yeah. All right.
I meant to be sharing. I was actually going there.
There's lots of resources there. all right next question.
I do all my application development on a K screen, but most of my clients are using lower resolution screens, so something I designed on my computer does not match what the user sees.
One example is a long filter pane. How would you advise me to deal with this issue?
So I've experienced this myself. I also do the k monitor.
I use the DevTools inside of the web browser, so if you're on, um… Chrome, for example, you can use developer tools to, I think it's F or something like that. You can.
Yeah.
Uh, control shift i is recently changed.
It's recently changed, of course. And there you can emulate different screen resolutions and different devices as well. So you can watch your tablets, phones, and computers. I also have a plugin installed where I can set the screen resolution or the resolution, sorry, the size of the web.
web browsers that I'm working with to a specific… ratio to get that up and running.
Okay, great. Good suggestions. Next question. Will you be able to set that flag for saving variable values within bookmarks in Qlik Script?
I haven't looked at it, I haven't tested it. My belief is that you can't do it right now. Comes back to ideation. Please put it in as an idea of something we can improve when it comes to variables and the different settings.
Good suggestion. Okay, next question.
What is the best way to call an external LLM via button? Not during script execution in an on-premise Qlik Sense app?
i.e, without using automations. So calling. Yeah, go ahead.
Yeah, yeah. So I mean, there you can look at APIs and connectors as a way to do that, and then set the button that does a certain thing when you press that button.
It calls an external URL or something in that perspective. But I do think there's on Qlik Help, we have, um.
An extensive list of predefined connectors and data connections that we can use, for example. And then after that, there's also Qlik Developer, which has the developer portal, which has all the APIs.
That we have access to as well.
Yeah, that's a great resource. I'll put that link here.
Uh, next question. Does the concept of document chaining, very similar to what existed in QlikView, exists on the cloud?
Yes, both in cloud as well as on-prem, and it's part of the button object. I can share my screen.
Yeah.
So when you create a button object, you have two different types of well actions you can add on top of it. You can have actions that are, for example.
Yeah, could be selections, clearing selections, locking selections, etc. But you also have one action that is a navigation action. So as all I just talked about, you could have an action opening up a website, opening up some external method. And one of the options in here is the application chain.
So when a user presses on this button, you input their app ID that you want them to go to. You open up pressing which sheet it is that you want them to go to, and you also could say if you open the same window or a new window, and then it takes the selections, I believe, that you specified.
that goes into this new app also. So if you open up the… yeah.
Exactly like in QlikView. So if your selections matches, the selections will also be applied in a new app if they have the same field name, the same field values.
Data model. Great. Thank you for demoing that.
Next question. How to get the info on which apps we are using have old objects, like a deprecated table, so that we can find them and replace them with new objects.
I know we are working on this so that you'll be able to see. But I was gonna I was asking Release just recently, or is it about to be released?
I… there's actually an up. Yeah, yeah, we demoed that in, uh… in that tech expert talk, where we looked at the app analyzer. That was a new sheet in the app analyzer that identifies deprecated objects, and.
And the example we found, it even provided it highlighted as this is a deprecate object, and it provided a solution on how to update it with the newer version of that object. So it was very informative and helpful.
So, App Analyzer, that's one of those apps in the monitoring suite you get from the automation, so definitely check that out.
Next question. I would like to create a template on our own, and every time you click on the create new app that my my template would be used.
Any idea how to do that? Was that be another ideation?
So that would be another ideation. Being able to upload templates would help you, but it wouldn't mean that template would be used. Automation, of course, is a good answer that maybe don't have to click the create new button from the hub. Maybe you could have a.
Another page where you click on it, and you run an automation that creates the app with the content that you want to populate in it, and then also opens up that one.
That's a great workaround. Good suggestion. Next question. Is there a way to find out which dashboards or charts are using a certain field rather than going in and checking the expression?
I'm not sure if the app analyzer has that information or not.
That sounds like…
I think, yeah, it's one of the… I was thinking which of the monitoring applications it is that has that. I do think it is the app analyzer. That's the one that you're looking for there.
Yeah. Let's see.
Um, so…
Is that a lot… that really breaks down…
I was just trying to look in the demo that we did where we see all the different sheets.
Yeah.
Yeah, so I'm inside of the app analyzer right now. Yes, I will share my screen.
Oh, do you want to share your screen?
So inside of the app analyzer here, there is under. Now I went into a specific app, but under the sheet called, you can see the screen right there.
Yep.
So there's something called table summary and field summary, and here under field summary, and I'll kind of make that a little bit, it'll show you the application name, the table name, and the field name. So here I can go in, for example, now I maybe not select the… I've set order number. That's a good one. And then if I select the order number, I'll see which tables that I use the order number right now, and in which application I'm looking at.
There you go. It's a very powerful tool. Thank you for demoing that.
all right next question regarding the predefined templates really like the approach of predefining templates to be reused across the organization. However, is there a possibility to adapt or change this to our corporate requirements, especially adding several mandatory elements like footer.
for all apps in the tenant would be beneficial. Also, pre-filling several sections in the data model would help us to have uniform layout and governance.
It's basically trying to.
So I think there's a lot of here in the questions. So we're talking about templates, as I said, sheet templates on the roadmap being developed so that you can create your own ones. If we're talking about what to have in the data model and so on, I would say go to data products.
There you go.
You can create data products and can be used inside an app. So if there is something that you really want to be available across all your app, create a data product, make it mandatory at this data product is included as part of your app, and that would propagate to.
The different apps you're creating more improvements to come in that area later on also.
Great. Next question asking about organizing objects in the canvas and resizing lots of objects. Is there any improvements planned around that to be able to resize multiple objects at once, perhaps?
Yes. So if you have used the layout container, that's one thing you can do. You can put a layer container across your entire sheet, and you can easily move objects around resizing them, having on top of each other. There is in development and plans to release a new type of sheet.
That is, let's call it gridless. And that's more of a canvas where you can have the same capabilities as the layout container. Can't give a date or a roadmap on when that would happen. But right now, user layer container on the entire sheet, and then… organize your charts on there objects.
Great. I love the layout container.
Next question. In Qlik Cloud, is there a way to duplicate apps from managed or personal spaces as an admin, similar to the QMC apps view in Qlik Sense Enterprise?
Not inside of the the admin console right now. You can't duplicate them. You can move them, but you can't duplicate them. This goes in a little bit in the… what we were talking about the template approach as well, and a way to work with applications.
One of the things that we haven't talked about is that you can, through the application automation, you can export an application to GitHub, for example, or another code repository and save the application programmatically, and then you can use that to import it back into your environment.
Um, if you have a templated app, or if an app you want to duplicate.
Okay, great. Next question.
Uh, asking about the level of permissions in Qlik Cloud. For example, we need to provide access for the users to run a task to send the email with the report.
Those users will have access to modify the templates and modify the tasks that send the emails, and this shouldn't be possible, but the users.
should have the possibility to run the tasks. Okay, so I want to get a very specific permission.
Yeah, yeah, I can. Yeah, so, I mean, the permission, or the way that we set that up works a little bit differently in Qlik Cloud than it used to do on Qlik Sense On-Prem, where the rules could be very granular on the sense on-prem, where they're a little bit more rigid now, but it's something that we're constantly improving, and there's happened a lot in that field the last year or two. We don't have anything official to announce, but I know that we're.
We're constantly working on that. If you want us to focus more on the specific use case ideation, as we talked about before.
Great. Next question. Are there options to allow clients to control how many days the write table data can live in the temp space?
Currently, we think it's 90 days, right?
yeah. So currently it's 90 days. There is currently no option to control that back to ideation. I would say we're probably not going to extend it across 90 days. It has to do with data regulation and.
Yeah.
Auto certifications. So it's rather if you want to have it shorter, maybe that could be something that in ideation to suggest.
I don't know how that impacts the capacity consumption. That's something I have to look into and talk to the product manager for it.
Great. Is the next question is customization available for the inside advisor? For example, add filters or Kpi or text to explain inside advisor.
I would say it's not specific enough that I would be able to answer it. But you can't customize anything inside Insight Advisor now.
Yeah. at this time.
No. And so you can custom anything inside of inset advisor. Something that I would start looking at is to, um… Look a little bit on what we can do with Qlik Answers because a lot of the stuff that we can do with Insight Advisor, we can also do with Qlik Answers. So start looking a little bit at that. There we have some more.
Features, functions, and capabilities.
Great. Next question, depending on the resolution, the legend is not shown anymore.
That this is not so nice. Do you have any plans to improve that kind of… is there an option to make the legend always appear, no matter what the resolution is, I guess?
There is no option. There are ideas around improving it. Ideas around having, for example, a legend object that you could position and use like when we have the new sheet, and you have the ability to have things on top of each other. Maybe the legend doesn't have to be docked on the side of the chart. Maybe it's something that you can actually position.
wherever you want within the chart, like, dock into the top left corner if you know, that's where you have space and so on. So, improvements are coming in the area. I can't say when that happens.
Okay, that's nice to know that is being looked at. That's great.
Next question. A lot of these seem like suggestions, but I'll get into details here.
It would be nice to have the ability to make the entire dimension viewable when dimension names are long on a bar chart. For example, on a vertical bar chart. If the dimension name is long, it cuts off, and you can't read it unless you hover over.
For the tooltip. It'd be great to have the option to make the bars smaller or larger if you want to see the entire dimension name.
I guess that is one solution. There's different workarounds for that.
Yeah, so same thing there that we're looking at it. We know about it being an issue. But there's no easy toggle right now. There's no property for multiple rows or things like that. But it is something we're talking a lot about and looking at.
Yeah, I think one addition to that as well, which is is an alternate solution to most of these things that we're talking about with legends and the length of names and stuff like that is that to teach your users, if there's a bar chart or a table or something where they have a hard time seeing.
There you go.
Hmm.
Use the full screen mode of that specific table and get that as a user behavior. So if there's something they want to look at, choose full screen, it'll pop up the visualization in full screen and there you'll have access and see everything, and then they can just make it smaller again.
when they're done.
Good idea. Good tip. Next question. Are there plans to include the visibility of blanks when using field filters? The magnifying glass, the magnifying glass that appears next to each field name.
back to radiation, there are no plans for it. I assume that you could replace it with something else.
That's in unknown or something similar through your load script so that it doesn't have to be a… blank value.
Okay.
The NULLs, yeah.
It's a little bit connected to what we talked about in the beginning with the left join and creating NULL values. So you can always replace the NULL values with a text text value, and then you can work with that text value.
And that's also a way to work if you have a table that both has the NULL value and the dash as a NULL value. Certain locations that might happen, depending on data sources, stuff like that, just replace all the NULL values with a text.
representation.
Great. And… Next question that might have been a follow-up to one discussion we were having earlier.
There's a field setting always one selected value, it disappears after exporting the app without data. Is there any way to hold this property? Redoing after publishing is not an option as it goes to a different environment.
So the way it's built is that the property is stored on the data. So.
I don't really know right now about it. So yeah.
Right. Okay. That's fair.
Something like variation, something I bring with me to the dev teams and product managers and talk about.
Great. Next question. Is it possible to track where a variable is being used? So we saw fields where variables include included in the app analyzer.
Yes, uh, that is correct. It's included in one of the analyzer applications. I think it's the app analyzer. Give me a second. You can take the next question, so I'll just double check where it is.
All right. But that seems like the best tool for that kind of analysis. Next question. I have an event-driven workflow where a webhook triggers automation A to reload a set of preceding apps.
I need to trigger automation B containing a final app only after all apps in Automation A have finished.
Since these are separate automations and not on a schedule, what is the best practice for a many to one dependency between two automations?
Ooh, that's an interesting use case. Because I know you can have a trigger for one automation to trigger a different one, but I don't know about multiple.
Are we… Yeah.
Do not know either. I think that's something for that.
I it's… a little bit outside of my, uh… comfort area, unfortunately.
Yeah.
Yeah, so it sounds like we're right up that ideation alley.
But that is a really interesting use case, very cool.
All right. Next question. How to restrict single selection for a filter pane. Don't see the property for that.
Yeah, so it's actually not on the filter pane. That's where it was in QlikView. I can share my screen, and we can just quickly check on it.
So I have my country list here where I can do selections on multiple values.
If I go to edit mode and if I right click on the country, if I go to Field Settings, that's where I always want to select the value is.
So having that selected. Moving out of here now, I can no longer multi-select, it's always one selected. So, in QlikView, it was on a filter pane, but it was actually a setting right into the… data model. So if you had 2 filter list boxes next to each other, and you made a setting in one of them, the other one actually got that setting applied. Also, that's why it's been moved to the field list instead of having it inside the filter panel list box.
That's great, thank you for demoing that. Someone was commenting on the previous question. Per the many to one automation inquiry. Maybe a nested automation.
Put the mini automation inside their own automation, waiting to trigger after all the… All are complete in the nested automation.
That's an interesting idea. Great. Thank you for that tip.
Outside of my comfort zone.
Yeah. Next question. If I publish an app that contains a write table, the objects change store also change.
If I read the write table fields via the REST API, each field seems to have an ID that changes continuously.
Is there a way to identify or predict those field IDs before publishing to production?
Wow.
So it's something I'll bring to the dev team, since I know who's working on it and talk to them about it. But it's not something I'm familiar with.
Okay, that's fair. But that's. I love hearing what what you as customers are doing. These are great questions.
Next question. Regarding making full screen, I noticed when you have objects in a layout container, only the container can go full screen, rather than a particular object in the layout container.
Are there plans to get an object full screen viewable?
Oh.
So this comes back to the new sheet we're developing. So on that one, then you can have the same type of layout you have with a layout container, and then you would be able to do full screen. So, yeah.
It's on the roadmap. Yeah, but not available right now.
then yes. Great. All right. That's fantastic.
But there are plans for it?
Everyone loves to hear about the roadmap. Are there plans to enhance field filters to allow visibility of blank values.
That magnifying glass we were talking about.
So no plans, as we said before, to maybe workarounds to rename it and so on. Otherwise, back to ideation, suggested as an improvement, and we'll see if we can have.
Blankweather is also showing up in the list.
Okay. Just a couple more questions. Will there be, or is there a better way to control the position of fields in the straight table between main and alternate fields? When you add a new field, it removes the order of the fields and puts the main fields to the top and the alternates at the bottom.
So can we go back to Ola's if he has found what the previous question was supposed to answer, and I can fix something while waiting on it.
Yeah, variables. Did the app analyzer track down. variables.
Yeah. Yeah, I'm looking… looking for it. I haven't found it yet. So I might have mixed it up with another previous or another Qlik tool that's not Qlik Cloud. Maybe it was Qlik Viewer or Qlik Sense.
So I actually haven't found a way to look at the variables if you analyze your applications. So yeah.
That's fair. I, you know, that's a very specific question. I feel like I have… seen an API on how to do that.
But I would suggest you know we've got almost 300,000 users on here. We should go.
to the Forum> Analytics > App Development, perhaps, or connectivity and data prep, and posts a question on there about tracking down the variables, how to see the variables that are used in an app, and see if you can get a quicker response.
But this is an excellent resource, the forums, uh.
There's a ton of Qlik employees and Qlik luminaries and just Qlik enthusiasts in here, and you'll probably get a response pretty quickly.
So at least that's a resource you should check out.
I'll post the link just to make it easier for you.
All right. And last question I see in the list.
We need to have an apply map function with new parameters to be able to select any column of the mapping table, like in Excel.
Uh, any suggestions on how to accomplish that?
Will I say ideation again? If it's something not supported, then put it in there.
Okay, we did a question about the straight table.
Okay. Yes, about positioning the fields in the straight table between.
Yes.
main fields and alternate fields.
Yeah. So the question is, will there ever be a better way of controlling the position if they're in the main or alternate? Good news is, yes, as of today. So if you go in and read the release notes, we've done updates to the stray table. I can't see if it's available in every region. We're doing a phased rollout, meaning that.
I read and get it every 6 h or 12 hours, and so on, depending on it. But I can share my screen, I could show what it's supposed to look like.
Sure, go ahead.
So based on the feedback from the straight table, we made changes. So right now you have the ability to, on a new straight tailor add columns directly, or you can do a custom expression. You'll have to go in there and doing a lot of clicking.
So when I add columns in here, I can add in countries, cylinders, and name.
And then I can also, for example, add in a measure and so on.
And once added, instead of having two list in here, one for your main columns and one for your alternate columns, everything is in one list, and there's an easy button here. You can click in here to hide them. In this case here, I'm hiding the cylinders, I'm hiding the name column.
Let me turn on short exploration in here. And let me go out to analysis mode. You can see here that cylinders and name are available in here as alternates. I can check them and uncheck them.
And just to show that this hopefully works, I have.
One primary, two alternates, one primary, I go in here, and I'll add in… let's see, have I used here?
Year is added at the bottom of the list. The alternate ones are still in position 2 and 3.
So as of today, fixed the annoying issue of you create your own tables with primary and alternative columns, they get reset as soon as you add a new one.
Yeah. Available on cloud, hopefully available in the next on-prem release for click on-prem.
Okay, well, we are…
Take some sound problem.
Thank you so much, guys, for looking that up. We are out of time. Thank you, everyone, for joining. We really appreciate all these great questions, and thank you so much to Patrik and Ola for joining and sharing all their insights with us. Hope you all have a great rest of your day.