Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Join us to spark ideas for how to put the latest capabilities into action. Register here!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Need Help in removing the Nulls from the chart

Hi

Here is my file , could anybody please help me in removing the Nulls from the chart ,

Thank you ...

9 Replies
Miguel_Angel_Baeyens

Hello,

It depends widely on yoru datamodel, but you can try selecting each dimension in the chart, and checking "Supress When Value is Null". It will not aggregate values other than the ones that match dimensions and expressions, but it may return unexpected results.

Hope that helps.

Anonymous
Not applicable
Author

Yes i get unexpected results when i supress the values , i have some synthetic keys in my data model so you that is causing this?

I have heard about having a link table to remove synthetic , could you please point me to app sample app where the link table is used.

Please Help...

Miguel_Angel_Baeyens

Hi,

Synthetic keys can be replaced by the fields they store. So for example, if you have a table Invoices: InvoiceID, CustomerID, RepID, Amount and a table Customers: CustomerID, RepID, Address, and you don't rename or chagne any field and load them as they are, you will have both tables associated by two fields: CustomerID and RepID. This is ok if there is an actual correspondence between them, and data will be shown correctly.

But since QlikView takes only the name of the field to associate one table to another, you may want to rename fields or create your own link fields so you will always know how two tables are associated. In the example above, creating a CustomerID & RepID as Customer_Key (for example) in both Invoices and Customers tables.

Hope that helps.

Anonymous
Not applicable
Author

How do i combine 2 fields , using concat? but that changes the values right ?

for eg: customer id is 1234

Rep id is 123 if i concatenate both the fields how can i have filter on customer id if i want to?

llauses243
Creator III
Creator III

Hi,

This is my offer ... i does definied variable vPerformance...

Good luck, Luis

Miguel_Angel_Baeyens

Hello,

Check the following example

Sales:LOAD CustomerID, RepID, CustomerID & '/' & RepID AS Key Date, AmountFROM Sales.qvd (qvd); Customers:LOAD CustomerID & '/' & RepID AS Key, CustomerCode & ' - ' & CustomerID AS CustCodeName, AddressFROM Customers.qvd (qvd);


Hope that helps.

Anonymous
Not applicable
Author

Sorry i did'nt get you , yes i have performance factor variable , is there something wrong with it ?

Anonymous
Not applicable
Author

Here is my script:

PeripheralAvailable:
LOAD

PERIPHERAL,
PERIPHERAL_CATEGORY,
PERIPHERAL_LOCATION,
DAY_DATE AS DAY_DATE_PERIPHERAL,
HOUR_SEG_PRIME AS TIME_SEGMENT_PERIPHERAL,
AVAILABLE_HOURS AS PERIPHERAL_AVAILABLE_HOURS

FROM
[\\qlikview\PDS Data\QCT Analytics\PeripheralAvailable.QVD]
(qvd);

PeripheralUsedHours:
LOAD

PERIPHERAL_NAME AS PERIPHERAL,
PERIPHERAL_CATEGORY,

PERIPHERAL_LOCATION,

DAY_DATE AS DAY_DATE_PERIPHERAL,

HOUR_SEG_PRIME AS TIME_SEGMENT_PERIPHERAL,
PERIPHERAL_USED_HOURS,
FROM
[\\QLIKVIEW\PDS Data\QCT Analytics\PeripheralUsedHours.QVD]
(qvd);

I need to have filters on all synthetic key values , for example , DAY_DATE_PERIPHERAL , PERIPHERAL_CATEGORY,PERIPHERAL_LOCATION etc,

In the above example assume that i need filters on CustomerID,Repid,Date,CustomerCode.IF i have filter on customerid from table Sales i dont get address from the customer table...

Miguel_Angel_Baeyens

Hello,

Taking a look at your script, what I'd do is to concatenate both tables, since they seem they have very similar information, to create a fact table and a master calendar depending on the date field:

Peripheral:LOAD PERIPHERAL, PERIPHERAL_CATEGORY, PERIPHERAL_LOCATION, DAY_DATE AS DAY_DATE_PERIPHERAL, HOUR_SEG_PRIME AS TIME_SEGMENT_PERIPHERAL, AVAILABLE_HOURS AS PERIPHERAL_HOURS, 'Available' AS SOURCE // to be used further in set analysis and expressionsFROM[\\qlikview\PDS Data\QCT Analytics\PeripheralAvailable.QVD](qvd);CONCATENATE LOAD PERIPHERAL_NAME AS PERIPHERAL, PERIPHERAL_CATEGORY, PERIPHERAL_LOCATION, DAY_DATE AS DAY_DATE_PERIPHERAL, HOUR_SEG_PRIME AS TIME_SEGMENT_PERIPHERAL, PERIPHERAL_USED_HOURS AS PERIPHERAL_HOURS, 'Used' AS SOURCEFROM[\\QLIKVIEW\PDS Data\QCT Analytics\PeripheralUsedHours.QVD](qvd); DateMinMax:LOAD Min(DAY_DATE_PERIPHERAL) AS MIN_DATE, Max(DAY_DATE_PERIPHERAL) AS MAX_DATERESIDENT Peripheral; LET vDateMin = FieldValue('MIN_DATE', 1);LET vDateMax = FieldValue('MAX_DATE', 1);// rest of script here


Now you can compare used against available, for example with the following expression:

Sum({< SOURCE = {'Used'} >} PERIPHERAL_HOURS) / Sum({< SOURCE = {'Available'} >} PERIPHERAL_HOURS)


If you need to create timestamps for your calculations, take a look at this code.

Hope that helps.