--INICIO SCRIPT CONSOLIDAR
begin transaction ConsolidarItem
declare @ItemOrigen numeric 
        , @ItemDestino numeric 
        , @StrdescipcionConcepto char(254)
        , @Numidprecio numeric 
set @ItemOrigen = 10210
set @ItemDestino = 10212

select @Numidprecio = Numidprecio
    from Merlin_ListaPreciosdetalle 
    where NumIdConcepto = @ItemDestino
select @StrdescipcionConcepto = StrDescripcionConcepto 
      from Merlin_ConceptosFacturacion 
      where NumIdConcepto = @ItemDestino 
update Merlin_Movimientos
      set   NumIdConcepto = @ItemDestino
        ,   NumIdprecio = @Numidprecio
        ,   StrObservacionConcepto = @StrdescipcionConcepto 
      where NumIdConcepto = @ItemOrigen
if @@error != 0 begin
    rollback transaction ConsolidarItem
end else begin 
    update Merlin_MovimientosCxC
        set NumIdConcepto = @ItemDestino
        where NumIdConcepto = @ItemOrigen
    if @@error != 0 begin
        rollback transaction ConsolidarItem
    end else begin 
        update Merlin_Movimientos_Novedades
            set    NumIdConcepto = @ItemDestino
                ,   StrObservacionConcepto = @StrdescipcionConcepto 
                ,   NumIdprecio = @Numidprecio
            where NumIdConcepto = @ItemOrigen
        if @@error != 0 begin
            rollback transaction ConsolidarItem
        end else begin 
            update Merlin_Movimientos_Pedidos
                set   NumIdConcepto = @ItemDestino
                    ,   StrObservacionConcepto = @StrdescipcionConcepto 
                    ,   NumIdprecio = @Numidprecio
                where NumIdConcepto = @ItemOrigen       
            if @@error != 0 begin
                rollback transaction ConsolidarItem 
            end else begin 
                delete from Merlin_INV_MaestroInventarios
                    where NumIdConcepto = @ItemOrigen         
                delete from Merlin_Inv_HistoricoInventario
                    where NumIdConcepto = @ItemOrigen         
                if @@error != 0 begin
                    rollback transaction ConsolidarItem 
                end else begin
                    delete from ParadigmaN_Cartera_Saldos
                        where NumIdConcepto = @ItemOrigen
                    if @@error != 0 begin
                        rollback transaction ConsolidarItem 
                    end else begin
                        delete from merlin_ListaPreciosDetalle_Activa
                            where NumIdConcepto = @ItemOrigen
                        if @@error != 0 begin
                            rollback transaction ConsolidarItem 
                        end else begin
                            print 'Borrar Lista precios '
                            update Merlin_Movimientos set NumIdprecio = @Numidprecio 
                                where NumIdConcepto = @ItemDestino 
                                    and NumIdprecio in (select NumIdprecio from Merlin_ListaPreciosdetalle where NumIdConcepto = @ItemOrigen)
                            update Merlin_Movimientos_Novedades set NumIdprecio = @Numidprecio 
                                where NumIdConcepto = @ItemDestino 
                                    and NumIdprecio in (select NumIdprecio from Merlin_ListaPreciosdetalle where NumIdConcepto = @ItemOrigen)
                            update Merlin_Movimientos_Pedidos set NumIdprecio = @Numidprecio 
                                where NumIdConcepto = @ItemDestino 
                                    and NumIdprecio in (select NumIdprecio from Merlin_ListaPreciosdetalle where NumIdConcepto = @ItemOrigen)
                            delete from Merlin_ListaPreciosdetalle
                                where NumIdConcepto = @ItemOrigen                        
                            if @@error != 0 begin
                                rollback transaction ConsolidarItem 
                            end else begin
                                commit transaction ConsolidarItem
                            end
                        end 
                    end    
                end 
            end 
        end 
    end 
end
--FIN SCRIPT CONSOLIDAR 