<?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: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table in Qlik Replicate</title>
    <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969899#M3477</link>
    <description>Why would this be normal?  If I specify the value on Delete to be Delete then why would it be different then the other operation?  I feel like I am missing something here.&lt;BR /&gt;</description>
    <pubDate>Wed, 17 Aug 2022 17:39:25 GMT</pubDate>
    <dc:creator>pkagel</dc:creator>
    <dc:date>2022-08-17T17:39:25Z</dc:date>
    <item>
      <title>operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969870#M3475</link>
      <description>&lt;P&gt;So I am seeing some weird data .&amp;nbsp; I have some records being brought over That show the Operation_indicator as Delete but in the Change Tracking table that stores the changes the Header_Operation shows it as an update.&amp;nbsp; Attached file to show those results&lt;/P&gt;
&lt;P&gt;&lt;LI-PRODUCT title="Qlik Replicate" id="qlikReplicate"&gt;&lt;/LI-PRODUCT&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 16:29:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969870#M3475</guid>
      <dc:creator>pkagel</dc:creator>
      <dc:date>2022-08-17T16:29:44Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969873#M3476</link>
      <description>&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/149269"&gt;@pkagel&lt;/a&gt;&amp;nbsp;That behavior is normal. Please read the excerpt from the user guide:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.qlik.com/en-US/replicate/November2021/Content/Global_Common/Content/SharedEMReplicate/Customize%20Tasks/tasks_expressOther.htm" target="_blank"&gt;https://help.qlik.com/en-US/replicate/November2021/Content/Global_Common/Content/SharedEMReplicate/Customize%20Tasks/tasks_expressOther.htm&lt;/A&gt;&lt;/P&gt;
&lt;H2 id="anchor-7" tabindex="-1"&gt;Operation&lt;/H2&gt;
&lt;P&gt;The following table describes the Operation functions used by the Expression Builder in&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="mc-variable Replicate.Product variable" data-mc-conditions="QDI_Global.ReplicateOnly"&gt;Qlik Replicate&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;.&lt;/P&gt;
&lt;DIV class="table-wrapper"&gt;
&lt;TABLE class="TableStyle-tableGrid" cellspacing="0"&gt;&lt;CAPTION&gt;Operation functions&lt;/CAPTION&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH class="HeadI--" scope="col"&gt;
&lt;P&gt;Function&lt;/P&gt;
&lt;/TH&gt;
&lt;TH class="HeadG--" scope="col"&gt;
&lt;P&gt;Description&lt;/P&gt;
&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="BodyC--"&gt;
&lt;P&gt;&lt;SPAN class="Code"&gt;operation_indicator(value_on_delete, value_on_update, value_on_insert)&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD class="BodyA--"&gt;
&lt;P&gt;When the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;operation_indicator&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;function is invoked on its own or as part of an expression, records deleted from the source endpoint will&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="_Override"&gt;not&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;be deleted from the target endpoint. Instead, the corresponding target record will be flagged (with a user-provided value) to indicate that it was deleted from the source. The&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;operation_indicator&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;function also requires you to provide values to indicate records that were inserted or updated in the source endpoint.&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="ui_item"&gt;Note:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;The operation_indicator function is not supported on tables that do not have a Primary Key.&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="ui_item"&gt;Note:&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;It is recommended to add a dedicated column for the flag values, for example,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;OPERATION&lt;/SPAN&gt;. For an explanation of how to add a column, see&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;A class="MCXref xref" href="https://help.qlik.com/en-US/replicate/May2022/Content/Global_Common/Content/SharedEMReplicate/Customize%20Tasks/tasks_useTransTable.htm" target="_blank"&gt;&lt;I&gt;Using the Transform tab&lt;/I&gt;&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="ui_item"&gt;To specify the function values:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Replace&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;value_on_delete&lt;/SPAN&gt;,&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;value_on_insert&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;and&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;value_on_update&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;with the values that you want to appear in the target endpoint.&lt;/P&gt;
&lt;P&gt;Values should be formatted according to the corresponding column type.&lt;/P&gt;
&lt;P&gt;Example when the column type is&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;INT4&lt;/SPAN&gt;:&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="Code"&gt;operation_indicator(’1’, ’0’, ’0’)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Example when the column type is&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="Code"&gt;STRING&lt;/SPAN&gt;:&lt;/P&gt;
&lt;P&gt;&lt;SPAN class="Code"&gt;operation_indicator(’Deleted’, ’Updated’, ’Inserted’)&lt;/SPAN&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;</description>
      <pubDate>Wed, 17 Aug 2022 16:43:45 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969873#M3476</guid>
      <dc:creator>shashi_holla</dc:creator>
      <dc:date>2022-08-17T16:43:45Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969899#M3477</link>
      <description>Why would this be normal?  If I specify the value on Delete to be Delete then why would it be different then the other operation?  I feel like I am missing something here.&lt;BR /&gt;</description>
      <pubDate>Wed, 17 Aug 2022 17:39:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969899#M3477</guid>
      <dc:creator>pkagel</dc:creator>
      <dc:date>2022-08-17T17:39:25Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969906#M3478</link>
      <description>&lt;P&gt;Hi Pkagel,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Yes, we can do what we call a soft delete where the task intercepts the delete operation. We typically accomplish this through a global transformation , or a table based transformation where we add a column to the target called Deleted_Flag - char(1) and then in the transformation we intercept the delete operation and set the added column to a 'D'. In this way you have not physically deleted the target row, but have marked it as deleted.&lt;/P&gt;
&lt;P&gt;The transformation is Operation_indicator("D",NULL,NULL)&lt;/P&gt;
&lt;P&gt;The expression for this column transformation is a task function that will basically intercept the delete from happening on the target and turn it into an update instead. As part of this update the value in the "Delete_Flag" column is changed to "D".&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 17:47:41 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969906#M3478</guid>
      <dc:creator>Michael_Litz</dc:creator>
      <dc:date>2022-08-17T17:47:41Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969909#M3479</link>
      <description>&lt;P&gt;But why would this be different than what the header operation is.&amp;nbsp; Why would a delete be marked as an update in the&amp;nbsp; header_operation when it should be a hard delete?&amp;nbsp; &amp;nbsp;Which is why the interception is changing it to a soft delete.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 17:55:10 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969909#M3479</guid>
      <dc:creator>pkagel</dc:creator>
      <dc:date>2022-08-17T17:55:10Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969911#M3480</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hi Pkagel,&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;The header operation&amp;nbsp;(is indicating a delete happened on thye source. When you have coded a operation&amp;nbsp;indicator transformation on a table then there will be no more deletes issued to the target side.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Effectively&lt;SPAN&gt;&amp;nbsp;the source side delete is turned into a target side update - there by keeping the record in the target&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;We are not changing what happens on the source (or what is captured) in the transaction log - we are changing the transaction to update on the target side only.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Thanks,&lt;BR /&gt;Michael&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 18:00:16 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969911#M3480</guid>
      <dc:creator>Michael_Litz</dc:creator>
      <dc:date>2022-08-17T18:00:16Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969925#M3481</link>
      <description>&lt;P&gt;Hi Pkagel,&lt;/P&gt;
&lt;P&gt;It occurred to me that maybe the task is set to what we call upsert/merge which can change either an insert or update into a delete / insert pair on the target.&lt;/P&gt;
&lt;P&gt;Please check out this link for some additional information on upsert/merge:&lt;BR /&gt;&lt;A href="https://community.qlik.com/t5/Knowledge/Qlik-Replicate-Implementing-UPSERT-and-MERGE-modes-by-applying-a/ta-p/1780009" target="_blank" rel="noopener"&gt;https://community.qlik.com/t5/Knowledge/Qlik-Replicate-Implementing-UPSERT-and-MERGE-modes-by-applying-a/ta-p/1780009&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;Thanks,&lt;BR /&gt;Michael&lt;/P&gt;</description>
      <pubDate>Wed, 17 Aug 2022 18:31:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/1969925#M3481</guid>
      <dc:creator>Michael_Litz</dc:creator>
      <dc:date>2022-08-17T18:31:40Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/2067213#M5864</link>
      <description>&lt;P&gt;Hi Shashi_holla&lt;/P&gt;
&lt;P&gt;Are tables expected to be fully reloaded after such operation is added as a transformation to a table?&lt;/P&gt;
&lt;P&gt;If yes, is the reload triggered manually or happening when resuming the task?&lt;/P&gt;
&lt;P&gt;Ideally there's a workaround to full reload because I am trying to set this up on large tables that are already loaded.&lt;/P&gt;
&lt;P&gt;Thanks!&lt;/P&gt;</description>
      <pubDate>Wed, 03 May 2023 12:38:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/2067213#M5864</guid>
      <dc:creator>serge-bouschet</dc:creator>
      <dc:date>2023-05-03T12:38:37Z</dc:date>
    </item>
    <item>
      <title>Re: operation_indicator('DELETE', 'UPDATE', 'INSERT') vs header_operation in change table</title>
      <link>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/2067265#M5866</link>
      <description>&lt;P&gt;No, there is no necessity to do a Full Load. The operation indicator is on delete operations which is during CDC and any new deletes on the source table will get transformed as an update on the target.&lt;/P&gt;
&lt;P&gt;Thank you,&lt;/P&gt;</description>
      <pubDate>Wed, 03 May 2023 14:26:43 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Qlik-Replicate/operation-indicator-DELETE-UPDATE-INSERT-vs-header-operation-in/m-p/2067265#M5866</guid>
      <dc:creator>shashi_holla</dc:creator>
      <dc:date>2023-05-03T14:26:43Z</dc:date>
    </item>
  </channel>
</rss>

