There are two types of trigger based replication methods with SAP HANA Source endpoints: from Log table or from CDC artifacts.
For the former (which is related to the error above), by selecting 'Use log table' from the SAP HANA Source advanced tab, it will generate the attrep_cdc_log table, which Qlik Replicate can read changes from.
When this option is enabled, during the task, Qlik Replicate copies the changes from the attrep_cdc_changes table to the attrep_cdc_log table. This is the preferred method of working (and, in future versions, will be the only method of working) as it significantly reduces latency.
Issue:
If you select 'Use Log Table' setting, it will not drop the existing changes_cdc Table, and the version of the triggers can be invalid. The change_cdc and cdc_log Table would not be in sync and thus throw the Column error.
Resolution
Steps to clean up and recreate the changes_cdc and cdc_log Tables:
Stop the tasks
Manually drop attrep_cdc_changes and attrep_cdc_log and triggers.
Manually drop triggers.
You can use SAP HANA Studio and run the following queries to check what triggers are installed. Or you can look at the C:\Program Files\Attunity\Replicate\data\tasks\SAP HANA Test\scripts as this is where the SQL is generated for the Tables and triggers.
Note the version of triggers on the client will need to match their environment.
Examples:
DROP TRIGGER "SCHEMA"."attrep_cdc_v1_29834822_I_VBAK_29835233"; DROP TRIGGER "SCHEMA"."attrep_cdc_v1_29834822_U_VBAK_29835233"; DROP TRIGGER "SCHEMA"."attrep_cdc_v1_29834822_D_VBAK_29835233"
DROP TABLE "SCHEMA"."attrep_cdc_log"; DROP TABLE "SCHEMA"."attrep_cdc_changes";
Reload tables
Cause
If you had set up the SAP HANA originally without the 'Use Log Table' for the Trigger Based setup, it would not have created the cdc_log Table.
If you configure it after the task has started, it does not drop the existing change_log Table. Thus, the columns would not match as the Column Name APPLICATION_USER is defined in the change_log and not the cdc_log Table.