Qlik Community

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
IMPORTANT security patches for GeoAnalytics Server available to download: READ DETAILS
cancel
Showing results for 
Search instead for 
Did you mean: 
cristian_av
Creator III
Creator III

Unqualify not working!

Hi

I'm trying to do a incremental reload. For that, I use Qualify, wich works as expected. But when I try to unqualify, nothing happens.

What am I doing wrong??

Thank you!!

QUALIFY *; //All field are qualified.

[ConsumosEBI]:

LOAD * FROM ..\..\Datos\QVDs\Procesados\Consumos_EBI.qvd (qvd);

LET vUltimo = PEEK('CAS_TRANSIT_ID',-1,TEMPORAL);

OLEDB CONNECT32 TO ......

[Incremental_Load]:

FIRST 100 NOCONCATENATE LOAD *;

SQL SELECT [CAS_TRANSIT_ID]

      ,[CARD_NUMBER]

     

  FROM REPORTS

  WHERE  (CAS_TRANSIT_ID> $(vUltimo))

  ORDER BY CAS_TRANSIT_ID ASC, TRANSIT_DATE ASC ;

DISCONNECT;

STORE Incremental_Load INTO ..\..\Datos\QVDs\Originales\Incremental.qvd (qvd);

if noOfRows('Incremental_Load')<>0 then

  UNQUALIFY *; //This is not working!! ¿Why?

  Concatenate (ConsumosEBI) LOAD * Resident Incremental_Load Order by CAS_TRANSIT_ID ASC, TRANSIT_DATE ASC;

  Store ConsumosEBI into ..\..\Datos\QVDs\Procesados\Consumos_EBIv2.qvd (qvd);

endif

1 Solution

Accepted Solutions
Bill_Britt
Support
Support

Hi,

QUALIFY * means all loads after this will have the table name added to the field name.

UNQUALIFY * means all loads after will be normal. This doesn't take something that has been QUALIFIED and change it back to a normal load.

Bill

Bill - Principal Technical Support Engineer at Qlik
To help users find verified answers, please don't forget to use the "Accept as Solution" button on any posts that helped you resolve your problem or question.

View solution in original post

4 Replies
cristian_av
Creator III
Creator III
Author

It is not the if, Cause if I do:

QUALIFY *;

[ConsumosEBI]:

LOAD CAS_TRANSIT_ID,CARD_NUMBER FROM ..\..\Datos\QVDs\Procesados\Consumos_EBI.qvd (qvd);

UnQualify CAS_TRANSIT_ID;

Still the same.. nothing happens! Can anybody help me?

Thanks!

Not applicable

Hopefully I am following correctly - but are you wondering why your resident load pulls in fields named

[Incremental_Load].[CAS_TRANSIT_ID] and [Incremental_Load].[CARD_NUMBER]?

After the first load of these fields it adds [Incremental_Load] to the field name itself. By the time of the resident load the field names themselves contain the [Incremental_Load] prefix, and unqualifying will not remove this. The subsequent load actually IS unqualified because it isn't adding an additional table name in front.

Miguel_Angel_Baeyens

Hi Cristian,

You need to specify the UNQUALIFYed field before it is loaded. If not, what you can do is

RENAME FIELD table.field TO FieldName;

but note that you cannot rename key fields.

Miguel

Bill_Britt
Support
Support

Hi,

QUALIFY * means all loads after this will have the table name added to the field name.

UNQUALIFY * means all loads after will be normal. This doesn't take something that has been QUALIFIED and change it back to a normal load.

Bill

Bill - Principal Technical Support Engineer at Qlik
To help users find verified answers, please don't forget to use the "Accept as Solution" button on any posts that helped you resolve your problem or question.