none
sp_send_dbmail envio de csv RRS feed

  • Pregunta

  • Estimados.

    En un SS2008, envio por correo un csv, hasta aca todo bien, el envio del mail se hace en forma correcta.

    Mi problema es que son 34 columnas, y cuando llega el mail con el adjunto me corta en 31 columnas y las 3 columnas siguientes quedan en la siguiente fila.

    Ejemplo.

    Nombre, ciudad, etc,etc, asi hasta columna 31, luego

    estado,pais,codigo

    El detalle queda igual, es decir:

    Carlos,santiago,etc,etc y en la siguiente fila:

    0,Chile,005

    Y asi sucesivamente con los demas registros.

    Saludos Cordiales.

    CristianPM


    DBA SQL Server Santiago/Chile

    jueves, 24 de abril de 2014 20:31

Respuestas

Todas las respuestas

  • Hola.

    ¿Seguro que el problema no está en el programa que empleas para visualizar el csv? Intenta abrirlo con Excel y nos dices si se da la misma situación.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.com
    Sígueme en twitter en http://twitter.com/qwalgrande

    sábado, 26 de abril de 2014 9:04
    Moderador
  • Estimado Alberto.

    Gracias por responder, justamente lo abro con excel versión 2010 y ahi es donde visualizo el problema.

    Saludos.

    CristianPM.


    DBA SQL Server Santiago/Chile

    lunes, 28 de abril de 2014 15:56
  • que tal Cristian

    por lo que veo el problema no es el excel, tampoco a la hora de enviar el correo..

    por ke no checas tu proceso que genera los csv, en la columna mencionada posiblemente tengas un salto de linea

    abrelo con word y q te muestre todos los caraacteres..

    JC Velazquez Traveceras

    JAl., Mex.

    lunes, 28 de abril de 2014 16:45
  • Hola JC.

    Lo abri con word y notepad++ y no tengo ningún carácter especial (excpeto el TAB que lo uso por el salto de columna)

    El codigo que utilizo es:

    EXEC msdb.dbo.sp_send_dbmail

                   @PROFILE_NAME=@PROFILE_NAME,
                   @recipients=@RECIPIENTS,   
                   @subject = @SUBJECT,
                   @body = @BODY,
                   @body_format = 'HTML',   
                   @execute_query_database = 'Nombre_BD',
                   @query = 'SET NOCOUNT ON        SELECT * FROM Tabla',
                   @attach_query_result_as_file = 1,
                   @query_result_separator = '     ',    -- Tabulación                                       @query_result_no_padding = 1,
                   @exclude_query_output = 1,
                   @query_result_header = 1,
                   @query_attachment_filename = 'Informe.csv'

    Antes de eso realizo un HTML que se ve todo bien, pero al usar el adjunto en CSV me pasa eso, cuando tengo menos columnas en la query no sucede, el csv me lo corta en la posicion 304

    Atte.

    CristianPM.


    DBA SQL Server Santiago/Chile

    lunes, 28 de abril de 2014 17:48
  • Agregar el script de la tabla, de esta forma si es que tiene un tiempo, podrían recrear el problema.



    CREATE TABLE [dbo].[Tabla](
    [Fecha] [datetime] NOT NULL,
    [TipoError] [varchar](21) NOT NULL,
    [DescError] [varchar](75) NOT NULL,
    [Sede] [varchar](5) NOT NULL,
    [RutDocente] [varchar](11) NULL,
    [NombreDocente] [varchar](50) NULL,
    [Ciclo] [varchar](4) NOT NULL,
    [Jornada] [varchar](3) NOT NULL,
    [codCarrera] [varchar](3) NULL,
    [carrera] [varchar](30) NULL,
    [cod_curso] [varchar](6) NOT NULL,
    [num_catalogo] [varchar](10) NOT NULL,
    [num_clase] [int] NOT NULL,
    [NombreAsignatura] [varchar](30) NOT NULL,
    [Seccion] [varchar](4) NOT NULL,
    [START_DATE] [varchar](30) NULL,
    [END_DATE] [varchar](30) NULL,
    [COMP] [varchar](3) NOT NULL,
    [TipoDocente] [varchar](30) NULL,
    [cant_alumnos] [smallint] NOT NULL,
    [TotalHoras] [int] NULL,
    [Secc_Comb] [varchar](1) NOT NULL,
    [SeccCombPadre] [varchar](1) NOT NULL,
    [LU] [varchar](1) NULL,
    [MA] [varchar](1) NULL,
    [MI] [varchar](1) NULL,
    [JU] [varchar](1) NULL,
    [VI] [varchar](1) NULL,
    [SA] [varchar](1) NULL,
    [DO] [varchar](1) NULL,
    [hora_ini] [varchar](5) NULL,
    [hora_fin] [varchar](5) NULL,
    [ACAD_ORG] [varchar](10) NOT NULL
    ) ON [PRIMARY]


    DBA SQL Server Santiago/Chile

    lunes, 28 de abril de 2014 18:32
  • por pura curiosidad,

    no me queda muy claro el tab dentro de un archivo csv

    en teoria solo tienes que utilizar el Enter y la coma

    automaticamente el excel al detectar una coma (,) cambia de columna y al detectar un enter lo interpreta como salto de linea

    el uso del tab no lo veo necesario

    haz un ejercio sin el tab y comenta como se comporta

    saludos

     JC Velazquez Traveceras

    Jal. Mex.

    lunes, 28 de abril de 2014 18:52
  • Lo hice con ;

    Me lo deja todo en una sola columna y lo corta nuevamente tal como lo expuesto anteriormente :(

    Saludos.

    CristianPM


    DBA SQL Server Santiago/Chile

    lunes, 28 de abril de 2014 21:28
  • Hola.

    ¿Sigues sin resolver el problema? De ser así, dínoslo y tratamos de retomarlo.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.com
    Sígueme en twitter en http://twitter.com/qwalgrande

    sábado, 10 de mayo de 2014 16:53
    Moderador
  • Efectivamente sigo con el problema, le he dado vueltas pero no encuentro solución.

    DBA SQL Server Santiago/Chile

    lunes, 12 de mayo de 2014 16:33
  • Hola.

    ¿Has probado a indicar un ancho para cada fila (parámetro @query_result_width)? Por defecto vale 256, pero le puedes especificar hasta 32.727 (un smallint).


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.com
    Sígueme en twitter en http://twitter.com/qwalgrande

    • Marcado como respuesta CMAPM martes, 13 de mayo de 2014 2:44
    lunes, 12 de mayo de 2014 18:48
    Moderador
  • Hola.

    ¿Has probado a indicar un ancho para cada fila (parámetro @query_result_width)? Por defecto vale 256, pero le puedes especificar hasta 32.727 (un smallint).


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.com
    Sígueme en twitter en http://twitter.com/qwalgrande

    Grande !!!
    Funcionó perfecto !!!!

    DBA SQL Server Santiago/Chile

    martes, 13 de mayo de 2014 2:44