Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 10-10-2006
Avatar de villegasmajano
villegasmajano villegasmajano is offline
Miembro
 
Registrado: may 2006
Ubicación: El Salvador, Centroamerica
Posts: 11
Poder: 0
villegasmajano Va por buen camino
Problema Solucionado

ante la inminente urgencia tuve que utilizar metodos poco ortodoxos pero espero que les pueda servir si alguien tiene este problema, este ejemplo lo encontre por alli y lo customice para mis necesidades, en realidad no termine usando un dts sino un bulk copy , ami me funciono perfectamente.. aqui les dejo los stored procedure.

Código SQL [-]
CREATE procedure StProc_CargaTemporalM
@FilePath         varchar(1000),
@ArchivePath        varchar(1000), 
@FileNameMask    varchar(1000) ,
@MergeProc        varchar(128) 

AS

set nocount on
    

    
declare @FileName varchar(1000) ,
    @File         varchar(1000)
declare @cmd         varchar(2000)
    
    create table ##Import (NoHoja varchar(21),CodVendedor varchar(6),Mes int,CodJefeTienda varchar(6),CodSucursal varchar(6),Fecha datetime)
    create table #Dir (s varchar(8000))
    
    /*****************************************************************/
    -- Import file
    /*****************************************************************/
    select    @cmd = 'dir /B ' + @FilePath + @FileNameMask
    delete #Dir
    insert #Dir exec master..xp_cmdshell @cmd
    
    delete #Dir where s is null or s like '%not found%'
    while exists (select * from #Dir)
    begin
        select     @FileName = min(s) from #Dir
        select    @File = @FilePath + @FileName
        
        select     @cmd =         'bulk insert'
        select     @cmd = @cmd +     ' ##Import' 
        select     @cmd = @cmd +     ' from'
        select     @cmd = @cmd +    ' ''' + replace(@File,'"','') + ''''
        select     @cmd = @cmd +    ' with (FIELDTERMINATOR='','')'

        
        truncate table ##Import
        
        -- Importacion de Datos
        print(@cmd)
        exec (@cmd)
                
        -- Remover el archivo justos despues de ser importado
        delete    #Dir where s = @FileName
        
        exec @MergeProc
        
        
        -- Hacer backup de los archivos insertados a la DB
        select @cmd = 'move ' + @FilePath + @FileName + ' ' + @ArchivePath + @FileName
        exec master..xp_cmdshell @cmd
    end
    
    drop table ##Import
    drop table #Dir
GO

CREATE procedure StProc_CargaProduccionM

AS
    set nocount on
    
    -- Insertar Datos a la Tabla de Produccion
    insert    TblHojaControl
        (
        NoHoja,
        CodVendedor ,
        Mes ,
        CodJefeTienda,
        CodSucursal,
        Fecha
        )
    select    
        NoHoja,
        CodVendedor ,
        Mes ,
        CodJefeTienda,
        CodSucursal,
        Fecha
    from ##Import
GO

Bueno en mi caso yo inserto los datos directamente a las tablas de produccion, pero una practica sana y recomendable seria insertarlos en una tabla temporal de igual estructura que la de produccion y validar los danto antes de su insercion...
saludos!!!!
__________________
Alexander Villegas Majano
Analisis y Desarrollo de Software
Distribuciones Diversas, El Salvador, Centroamerica.

Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
ANN: AnyNET-Delphi: Herramienta para generar codigo fuente Delphi desde :NET mamcx Noticias 7 21-05-2007 02:12:36
FAX desde Delphi CoCaInE Varios 3 11-07-2006 09:07:08
Rapido con Delphi, y Lento desde fuera de delphi JoseQ Varios 0 08-09-2005 10:54:48
Ejecutar los .exe desde delphi Javier_A OOP 2 28-01-2004 15:10:24
pdf desde delphi, con xsl seduerey Varios 4 18-06-2003 10:44:48


La franja horaria es GMT +2. Ahora son las 13:46:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi