189. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 10/26/2017 10:43:16 PM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

189.1 Files compared

# Location File Last Modified
1 OSCIF_BMS_v2_iter 2_September_2017.zip\BMS_Cand\BMS_Build_C72898\BMS_Source-BuildC72898.zip\C72898\Source\Sources\Database\CreationScripts\BMS_DS\4.StoredProcedures dbo.sp_infoworld_copy_table_incremental.StoredProcedure.sql Wed Oct 23 12:51:14 2013 UTC
2 OSCIF_BMS_v2_iter 2_September_2017.zip\BMS_Cand\BMS_Build_C72898\BMS_Source-BuildC72898.zip\C72898\Source\Sources\Database\CreationScripts\BMS_DS\4.StoredProcedures dbo.sp_infoworld_copy_table_incremental.StoredProcedure.sql Thu Oct 26 15:55:41 2017 UTC

189.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 7 238
Changed 6 12
Inserted 0 0
Removed 0 0

189.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

189.4 Active regular expressions

No regular expressions were active.

189.5 Comparison detail

  1   /****** Ob ject:  Sto redProcedu re [dbo].[ sp_infowor ld_copy_ta ble_increm ental]     Script Dat e: 03/21/2 012 15:21: 38 ******/
  2   IF  EXISTS  (SELECT *  FROM sys. objects WH ERE object _id = OBJE CT_ID(N'[d bo].[sp_in foworld_co py_table_i ncremental ]') AND ty pe in (N'P ', N'PC'))
  3   DROP PROCE DURE [dbo] .[sp_infow orld_copy_ table_incr emental]
  4   GO
  5  
  6   SET ANSI_N ULLS ON
  7   GO
  8   SET QUOTED _IDENTIFIE R ON
  9   GO
  10  
  11   CREATE PRO CEDURE [db o].[sp_inf oworld_cop y_table_in cremental]  
  12           @S OURCE_SCHE MA VARCHAR (100),
  13           @S ERVER_PREF IX VARCHAR (100),
  14           @L INKED_SERV ER_NAME VA RCHAR(100) ,
  15           @S OURCE_DB V ARCHAR(100 ),
  16           @T ABLE_NAME  VARCHAR(10 0),
  17           @W HERE_CONDI TION VARCH AR(5000),
  18           @D ESTINATION _SCHEMA VA RCHAR(100) ,
  19           @O N_LOCAL_SE RVER BIT,
  20           @P K_COLUMNS  VARCHAR(10 00),
  21           @S TART_DATE  DATETIME
  22   AS
  23   BEGIN
  24           
  25           SE T NOCOUNT  ON;
  26  
  27         DECLARE @S QL 
VARCHAR(ma x)
  28           DE CLARE @CRL F char(2)
  29           SE T @CRLF =  char(10)
  30           
  31           DE CLARE @aMo difyColumn  varchar(2 56), @aFla gDelete va rchar(256)
  32           SE LECT @aMod ifyColumn  = '_ssis_t imestamp',  @aFlagDel ete = '_is Deleted';
  33  
  34   BEGIN TRY
  35           
  36           --  creates d estination  table if  it doesn't  exist
  37           SE LECT @SQL  = [dbo].[f n_infoworl d_copy_sch ema] (1, @ SOURCE_SCH EMA, @SERV ER_PREFIX,  @LINKED_S ERVER_NAME ,
  38                             @SOURC E_DB,@TABL E_NAME,@DE STINATION_ SCHEMA,@ON _LOCAL_SER VER, @PK_C OLUMNS)                           
  39           EX EC(@SQL);
  40           
  41           -- EXEC dbo.[ sp_infowor ld_report_ meta]
  42           -- @SERVER_PR EFIX , 
  43           -- @LINKED_SE RVER_NAME,  
  44           -- @SOURCE_DB
  45           -- @TABLE_NAM E, 
  46           -- @PK_COLUMN S,
  47           -- @DESTINATI ON_SCHEMA,  
  48           -- @ON_LOCAL_ SERVER,
  49           -- @SOURCE_SC HEMA
  50           
  51           -- create tem porary tab les 
  52           se t @SQL = ' SELECT * I NTO #' + @ SERVER_PRE FIX + @TAB LE_NAME +  ' FROM [' 
  53                             + @DES TINATION_S CHEMA + '] .[' + @SER VER_PREFIX  + @TABLE_ NAME + ']  WHERE 1 =  2 ' + @CRL F;
  54                    
  55           se t @SQL = @ SQL + 'SEL ECT ' + @P K_COLUMNS  + ', curre nt_timesta mp as ' +  @aModifyCo lumn + ' I NTO #' + 
  56                                      @SERVER_ PREFIX + @ TABLE_NAME  + '_DEL F ROM [' 
  57                             + @DES TINATION_S CHEMA + '] .[' + @SER VER_PREFIX  + @TABLE_ NAME + ']  WHERE 1 =  2 ' + @CRL F;
  58                    
  59           -- timestamp  for get &  insert in  tbl temp p t del si u pdate/inse rt:
  60           
  61           --  take the  columns wi th ',' bet ween them  for the se lection fr om the cop y-table an d the inse rtion 
  62           --  in the de stination  temporary  table
  63           DE CLARE @vCo lumnsSel v archar(400 0), @vColu mnsIns var char(4000)
  64           SE LECT @vCol umnsSel =  '', @vColu mnsIns=''
  65           
  66           SE LECT @vCol umnsSel =  @vColumnsS el + 'tbl. [' + [name ] + '],',  @vColumnsI ns = @vCol umnsIns +  '[' + [nam e] + '],'
  67           FR OM sys.col umns
  68           wh ere object _id = obje ct_id('['+ @DESTINATI ON_SCHEMA+ '].['+ @SE RVER_PREFI X + @TABLE _NAME+']')
  69                     AND  [name] <>  @aFlagDel ete
  70  
  71           -- SET @vColu mnsSel=SUB STRING(@vC olumnsSel, 1,LEN(@vCo lumnsSel)- 1)
  72           -- SET @vColu mnsIns=SUB STRING(@vC olumnsIns, 1,LEN(@vCo lumnsIns)- 1)
  73           SE T @vColumn sSel = @vC olumnsSel  + ' 0'
  74           SE T @vColumn sIns = @vC olumnsIns  + ' ' + @a FlagDelete
  75  
  76           
  77           SE T @SQL = @ SQL + 
  78           'I NSERT INTO  #' + @SER VER_PREFIX  + @TABLE_ NAME + '_D EL (' + @P K_COLUMNS  + ', ' + @ aModifyCol umn + ') 
  79           SE LECT ' + @ PK_COLUMNS  + ', ' +  @aModifyCo lumn + ' F ROM ';
  80           
  81           IF   @ON_LOCA L_SERVER =  0 SET @SQ L = @SQL +  '[' + @LI NKED_SERVE R_NAME + ' ].';
  82           
  83           SE T @SQL = @ SQL + '['  + @SOURCE_ DB + '].['  + @SOURCE _SCHEMA +  '].[' + @T ABLE_NAME  + '_ssisde l] a WHERE  a.' + 
  84           @a ModifyColu mn + ' > ' '' + CONVE RT(
VARCHAR(50 ),@START_D ATE,109) +  '''; ' +  @CRLF
  85           
  86           SE T @SQL = @ SQL + 
  87           'I NSERT INTO  #' + @SER VER_PREFIX  + @TABLE_ NAME + ' (  ' + @vCol umnsIns  +  ') ' + @C RLF + 'SEL ECT ' + @v ColumnsSel  + ' FROM  ';
  88           IF   @ON_LOCA L_SERVER =  0
  89           BE GIN            
  90                    SET  @SQL=@SQL  + '[' + @L INKED_SERV ER_NAME +  '].'
  91           EN D     
  92           
  93           SE T @SQL=@SQ L+ '[' + @ SOURCE_DB  + '].[' +  @SOURCE_SC HEMA + ']. [' + @TABL E_NAME + ' ] tbl '
  94                    
  95           IF  ISNULL(@W HERE_CONDI TION, '')  <> '' 
  96           BE GIN
  97                     SET @SQL =  @SQL + @C RLF + @WHE RE_CONDITI ON + ' AND  tbl.' + @ aModifyCol umn + '>'' ' + CONVER T(
VARCHAR(50 ),@START_D ATE,109) +  ''';';
  98           EN D
  99           EL SE
  100           BE GIN
  101                     SET @SQL =  @SQL + @C RLF + 'WHE RE tbl.' +  @aModifyC olumn + '> ''' + CONV ERT(
VARCHAR(50 ),@START_D ATE,109) +  ''';';
  102           EN D
  103           SE T @SQL = @ SQL + @CRL F
  104           
  105           -- temporary  tables ->  destinatio n table
  106           DE CLARE @tab leName 
VARCHAR(10 0)
  107           SE T @tableNa me = @SERV ER_PREFIX  + @TABLE_N AME
  108           
  109           SE T @SQL = @ SQL +  'EX EC dbo.sp_ infoworld_ ssis_updat eDataForTa ble ''' +  @tableName  + ''','''  + @PK_COL UMNS + ''' ,'''+@SOUR CE_SCHEMA+  ''''
  110           -- print '[sp _infoworld _copy_tabl e_incremen tal] Sql:  ' + @SQL
  111           EX EC (@SQL)
  112           
  113   END     TR Y     
  114   BEGIN CATC H
  115           DE CLARE @Err orMessage 
VARCHAR(40 00), @Erro rSeverity  INT, @Erro rState INT ;
  116                             
  117           SE LECT @Erro rMessage =  'Error on  SERVER_PR EFIX = '''  + @SERVER _PREFIX +  ''', TABLE _NAME='''  + @TABLE_N AME + ''':  ' + ERROR _MESSAGE() ,
  118                       @ ErrorSever ity = ERRO R_SEVERITY (),
  119                       @ ErrorState  = ERROR_S TATE();
  120           
  121           RA ISERROR (@ ErrorMessa ge,  @Erro rSeverity,  @ErrorSta te) WITH L OG;
  122   END CATCH
  123  
  124   END
  125   GO