<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Function Columns as Key in Qlik Replicate</title>
    <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496559#M13353</link>
    <description>&lt;P&gt;Hi John,&lt;/P&gt;
&lt;P&gt;The Snowflake (Target DDL) has only one NOT NULL column:&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;QLIK_BUSINESS_KEY_HASH VARCHAR(256) NOT NULL,&lt;BR /&gt;constraint TABLE_A primary key (QLIK_BUSINESS_KEY_HASH);&lt;/P&gt;
&lt;P&gt;In the exceptions table this is the query being run:&lt;BR /&gt;UPDATE "SCHEMA_A"."TABLE_A" SET "QLIK_BUSINESS_KEY_HASH"=NULL WHERE "QLIK_BUSINESS_KEY_HASH"='C2E054A0ACCA352D0C909457AE4297D0A7DA86A1A712A562FE2EA259BED99FE2'&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;Also when I look into the __ct table for these records I see&amp;nbsp; an Update -&amp;gt; Beforeimage -&amp;gt;&amp;nbsp;Update -&amp;gt; Beforeimage&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 06 Dec 2024 13:26:27 GMT</pubDate>
    <dc:creator>pguddera21</dc:creator>
    <dc:date>2024-12-06T13:26:27Z</dc:date>
    <item>
      <title>Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2494250#M13251</link>
      <description>&lt;P&gt;Using Nov 2022 Qlik Replicate Version from Oracle 19c to Snowflake on AWS.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;We are taking data from an application table and creating a hash on the concatenation of the key columns eg:&lt;/P&gt;
&lt;P&gt;ifnull(colA,'')||ifnull(colB,'')||ifnull(colC,'') for all key columns and then set the hash of this as our primary key in snowflake (Target). However, I see that when a record gets updated, QLIK tries to set the target key column as null. This calls a not null constraint on our Snowflake DDL.&lt;/P&gt;
&lt;P&gt;Our source has the same 3 columns as a unique index, but we hash and concat them into our solo target key.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is there any way around having QLIK temporarily set the column to NULL or should we remove the not null constraint on our target table? The exception table is showing that is it updating our hash_key to null where hash_key = theoldvalue.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 22 Nov 2024 20:32:31 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2494250#M13251</guid>
      <dc:creator>pguddera21</dc:creator>
      <dc:date>2024-11-22T20:32:31Z</dc:date>
    </item>
    <item>
      <title>Re: Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2494278#M13253</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/247064"&gt;@pguddera21&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thanks for reaching out to Qlik Community!&lt;/P&gt;
&lt;P&gt;Please check the table supplemental logging to see if the 3 columns or all columns are added. Or you try to run:&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;ALTER TABLE &amp;lt;&lt;EM&gt;tableName&lt;/EM&gt;&amp;gt; ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Re-run the Change again to see if it works.&lt;/P&gt;
&lt;P&gt;Good luck,&lt;/P&gt;
&lt;P&gt;John.&lt;/P&gt;</description>
      <pubDate>Sat, 23 Nov 2024 03:23:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2494278#M13253</guid>
      <dc:creator>john_wang</dc:creator>
      <dc:date>2024-11-23T03:23:26Z</dc:date>
    </item>
    <item>
      <title>Re: Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496294#M13343</link>
      <description>&lt;P&gt;I see our table in oracle has all columns enabled for supplemental logging. In our CT table we see the update but even the before/update record in the CT table have that key column populated&lt;/P&gt;</description>
      <pubDate>Thu, 05 Dec 2024 15:43:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496294#M13343</guid>
      <dc:creator>pguddera21</dc:creator>
      <dc:date>2024-12-05T15:43:44Z</dc:date>
    </item>
    <item>
      <title>Re: Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496366#M13348</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/247064"&gt;@pguddera21&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Thanks for the update. Seems I did not get it well, would you please share the table creation DDL and the UPDATE sample SQL? We'd like to confirm the behavior for you.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;John.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Dec 2024 01:23:45 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496366#M13348</guid>
      <dc:creator>john_wang</dc:creator>
      <dc:date>2024-12-06T01:23:45Z</dc:date>
    </item>
    <item>
      <title>Re: Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496559#M13353</link>
      <description>&lt;P&gt;Hi John,&lt;/P&gt;
&lt;P&gt;The Snowflake (Target DDL) has only one NOT NULL column:&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;QLIK_BUSINESS_KEY_HASH VARCHAR(256) NOT NULL,&lt;BR /&gt;constraint TABLE_A primary key (QLIK_BUSINESS_KEY_HASH);&lt;/P&gt;
&lt;P&gt;In the exceptions table this is the query being run:&lt;BR /&gt;UPDATE "SCHEMA_A"."TABLE_A" SET "QLIK_BUSINESS_KEY_HASH"=NULL WHERE "QLIK_BUSINESS_KEY_HASH"='C2E054A0ACCA352D0C909457AE4297D0A7DA86A1A712A562FE2EA259BED99FE2'&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;Also when I look into the __ct table for these records I see&amp;nbsp; an Update -&amp;gt; Beforeimage -&amp;gt;&amp;nbsp;Update -&amp;gt; Beforeimage&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Dec 2024 13:26:27 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496559#M13353</guid>
      <dc:creator>pguddera21</dc:creator>
      <dc:date>2024-12-06T13:26:27Z</dc:date>
    </item>
    <item>
      <title>Re: Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496561#M13354</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/247064"&gt;@pguddera21&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;Sorry I still did not get it completely. Would you please share the Oracle source side table creation DDL and a sample UPDATE SQL statement. Or you may open a support ticket with above information and also the task Diagnostics Package,&amp;nbsp;Our support team will be more than happy to assist you.&lt;/P&gt;
&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;John.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Dec 2024 13:38:53 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496561#M13354</guid>
      <dc:creator>john_wang</dc:creator>
      <dc:date>2024-12-06T13:38:53Z</dc:date>
    </item>
    <item>
      <title>Re: Function Columns as Key</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496649#M13360</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;gt;&amp;gt;&amp;gt;&amp;nbsp;&lt;EM&gt;Function Columns as Key&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Please explain. Is the source column a "virtual column" (calculated with an expression) ?&lt;/P&gt;
&lt;P&gt;&amp;gt;&amp;gt;&amp;gt;&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&lt;EM&gt;However, I see that when a record gets updated, QLIK tries to set the target key column as null.&amp;nbsp;&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Please provide more details. Does initial load work (I suspect YES). Are INSERT correctly replicated?&lt;/P&gt;
&lt;P&gt;Anyways, it seems to me this is a documented restriction:&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&lt;EM&gt;"Qlik Replicate Setup and User Guide&lt;BR /&gt;Qlik ReplicateTM&lt;BR /&gt;November 2023"&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;---&amp;gt; Limitations when using Replicate Log Reader to access the redo logs&lt;/P&gt;
&lt;P&gt;---------&amp;gt; "Virtual columns are not supported. "&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hein.&lt;/P&gt;</description>
      <pubDate>Sat, 07 Dec 2024 03:04:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/Function-Columns-as-Key/m-p/2496649#M13360</guid>
      <dc:creator>Heinvandenheuvel</dc:creator>
      <dc:date>2024-12-07T03:04:49Z</dc:date>
    </item>
  </channel>
</rss>

