10 August 2022

# Number formatting and preceding zeroes in Qlik Sense Every Friday at Bitmetric we’re posting a new Qlik certification practice question to our LinkedIn company page. Last Friday we asked the following Qlik Data Architect certification practice question about number formatting and preceding zeroes in Qlik Sense:

### The correct answer is A.

An interesting question with an unexpected result. As many thought it would be the logical answer D, it is in fact something completely different. Truth be told we were surprised as well in the beginning, as it is more of a Qlik quirk than lack of knowledge.

So what does happen here and why? The explanation is as simple as maybe frustrating if you don’t know what to expect. When loading the data Qlik uses the first format it encounters for the remaining load. However, this only is applicable to the exact number being loaded. Let’s use the question to explain.

### For a numeric value in a field, Qlik uses the first format that it encounters

In the first inline table of the question 0040 is loaded as the first value. Subsequently it loads 40 and 41. However, since 40 matches the previously loaded numeric value of 0040 it is converted to the same format, being 0040. Next on the load sequence is row number three containing 41. However this is not a match to the numeric value of 40 (and thus the format of 0040), so Qlik starts again with the interpretation of the format, loading it normally as 41.

This exact same logic works for the second inline table, which is being joined to the first. In this table we now can make up that 40 is loaded before 0040, hence showing both as 40. To bring this into a bit more perspective, let’s have a look at the inline table below and the subsequently loaded data model:

`Table1:LOAD * INLINE [Dim, Amount1a, 0040b, 40c, 41d, 0041e, 040f, 042g, 42h, 00040];`

Here we can clearly see that for each new loaded individual number Qlik interprets the loaded format and uses this in the subsequent load. The dim containing the 40 values at dimensions b, e and h are all formatted as the first loaded 40 at dim a. The same goes for rows c and d in which 41 is formatted as it’s first load, and at last f and g where 42 is loaded as 042.

So, depending on how you receive the data this can impose some problems especially in large quantities of data with limited data quality. If you encounter this and want to solve it, it is simply fixed by using the Num() function. Num(Amount1) as Amount1 would solve it in this case and formats all numeric values equally. And in the case you do need the preceding zeroes, this is fixed by using the Text() function, leaving the loaded values just as you received them.

That’s it for this week. See you next Friday?

### Mail and Deploy webinar

Join our upcoming webinar and learn how Mail & Deploy helps you develop and deliver data-driven, high-impact reports from Qlik Cloud, Qlik Sense and QlikView. 