Skip to main content

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
QlikWorld 2023, a live, in-person thrill ride. April 17 - 20, 2023, in Las Vegas! REGISTER TODAY
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Designer, allocated memory exceeded

Hi

I have some data shown in a pivot table with cycling groups for the dimensions. I run it on a 64 bit W7 and have 8GB RAM installed, when running the Qlik almost 5 GB are free.

Data displays but when I change the date dimension from year to week (even with data for a single day) the memory error occurs. It also does not go away by undoing the selection, I have to reload the qvd to get the data shown again.

Juerg

9 Replies
Not applicable
Author

Hi

On further investigation found that the group item formula for serviceday must be responsible.

I need to show the date in format DD.MM.YYYY and I used the formula =date(Serviceday,'DD.MM.YYYY') in the group item definition.Removing this formula and using Serviceday only works fine. As my serviceday is a date how can I format it in the dimension to suppress the 00:00:00 time?

Noticed also in other cases that I really miss a "Number" formatting for dimensions in tables, they seem to exist only for expressions?

Juerg

Not applicable
Author

Hi,
as you've already dicovered the formatting takes up a lot of memory. Instead I would suggest that you create a new field in the load statement i.e.

date(Serviceday,'DD.MM.YYYY') as DisplayedServiceday

The above would enable the object to be shown without allocated memory exceeded, since the calculation already is done in the script.

Good luck,
Jonas

Consultant at Optivasys | www.optivasys.com

Not applicable
Author

Hi Jonas

Thanks, I have tried to load the Service_date with

date(Service_Date,'DD.MM.YYYY')

it look however that Qlik still looks at it as a date and shows the zero time values in the dimension

Jürg

Not applicable
Author

Hi,
that seems odd, but I know dates kan be tricky. Try looking into the date#() funktion and how you can combine this to get rid of the zero time values. Otherwise; a quick and dirty way of solving it could be using

left(date(Service_Date,'DD.MM.YYYY'),10) as Service_Date

Not the right way, be problably solving your issue 😉

//Jonas

Not applicable
Author

To avoid memory problems it might be necessary to move the formatting of date values into the data script.

But what can I do, when the user is able to change the language of the application including the change of the date format from (e.g.) DD.MM.YYYY to MM-DD-YYYY?

For this case I use something like

date(<field>, $(='DateFormatTime_'&(NLS))) which works BUT then I have the memory problems.

Regards,

Christian

kji
Employee
Employee

You should be able to set the number format for your field on the document level and not have to change anything in the script.

Not applicable
Author

Johan,

I use the formular mentioned in my last post in the charts. When I modify the NLS variable the language switches from one to another. Everything works fine. Exception: The date fields in the dimensions of pivot tables. In table charts I can move the date field into the expression area and I have no memory problem. Although from the semantic point of view it is only a workaround and not always a perfect solution.

Christian

jonathandienst
Partner - Champion III
Partner - Champion III

Hi

You may not realize this, but the Date function does not change the internal numerical date, it only chamges the dispaly fomat. You can verify this by putting this expression into a text box =Num(Date(Now(), 'DD.MM.YYYY'))

To get rid of the time component, you should say

Date(floor(Service_Date), 'DD.MM.YYYY')

Jonathan

Logic will get you from a to b. Imagination will take you everywhere. - A Einstein
Not applicable
Author

Hi Jonathan,

I know that the date function only changes the display format.

As described I have a memory problem with date fields in pivot tables and table charts.

Regards,

Christian