/* 
10.03.2020 CEG - Correction de la synchronisation Interbase 

_D01850 - Offshore - LkdSrv - Articles - Synchronisation Interbase 

La correction de la synchronisation Interbase se fait uniquement sur la central AMA (amacent) dans la base AZSync.
Cette correction est valable seulement si les step Suppression des tables Refetrence, Load Table reference et Load new Aps_monitor_row sont executés sans erreur. 
Suivre les etapes, ci-dessous, dans l'ordre. 

*/

/* Rechercher APS_monitor_table_ID de la table qui a genere l'erreur dans la synchro. */
use AZSync;

/* Recherche de l'ID de la table en erreur */
select top(1) AMRREF_AMR_table_name, AMRREF_AMR_APS_monitor_table
  from ref_aps_monitor_row amt
where amt.AMRREF_AMR_table_name like 'Insurance_network_text';

/* Info sur le volume de donnees sans la table en erreur */
select AMRREF_synchronization_date, AMRREF_AMR_APS_TS, *
  from ref_aps_monitor_row
where AMRREF_AMR_APS_TS BETWEEN '2022-11-28' AND '2022-11-28 23:59:59' /* Date du label a repasser */
   and AMRREF_to_ignore is null
   and AMRREF_AMR_type_of_change between 1 and 3
   --AND AMRREF_AMR_APS_monitor_table IN(1901, 1902) /* Repasser tous les labels sauf pour la table en erreur */

   --175'898

/* Remettre la date a null (Delabeliser) */
update ref_aps_monitor_row
   set AMRREF_synchronization_date = null
   /* AMR_horizontal_extraction_TS ne pas mettre à null car pour la synchro Interbase, c'est le nouveau monitor-row */
   /* qui aura l'AMR_horizontal_extraction_TS à NULL. */
where AMRREF_AMR_APS_TS BETWEEN '2022-11-28' AND '2022-11-28 23:59:59'  /* Date du label a repasser */
   and AMRREF_to_ignore is null
   and AMRREF_AMR_type_of_change between 1 and 3
   --AND AMRREF_AMR_APS_monitor_table NOT IN(1782)  /* Repasser tous les labels sauf pour la table en erreur */


/* Faire tourner la synchro (Seulement les etapes necessaires sont executees grace a cette query. */
/* Duree environ 20 min */
exec aps_Sync_HIDB_Item_Master
@in_source_subsidiary_id = 102, /* Ama sur GC */
@in_dest_subsidiary_id = 102, /* Ama sur Retail */
@in_AMR_usage = 1,
@in_spid = @@spid,
@in_extraction_timestamp = '2022-11-29 10:50:00.000', /* /!\ Changer l'heure pour avoir un label different /!\ */
@in_debug = 0;

/* Ensuite, il faut corriger le problème qui bloque les données la table en erreur */
/* Si problème dans une SP, créer un bug et une fois qu'il est résolu, demander au DBA d'exploitation de déployer la SP. */

