Visual Basic.NET - Error al exportar a CSV

   
Vista:
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 28/03/2018 21:07:10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
If iva = 0 Then
 
    connetionString = "Data Source=DESKTOP-LD02VBB;Initial Catalog=SIR;Persist Security Info=True;User ID=sa;Password=123"
 
    firstSql = " Select  cia = " + "'" + Cia.Text + "'" + ",suc = " + "'" + Suc.Text + "'" + ",dep = " + "'" + Dep.Text + "'" + ",tipos,folio,usuarioas400,Descripcion,proveedor1,FechaDoc =  " + "'" + FechaDoc + "'" + ",id_prov_Hdz = " + "'" + Prov.Text + "'" + ",tipodemoneda " &
       " ,Serie,Numero,GPO = " + "'" + gpototal.Text + "'" + ",CON = " + "'" + contotal.Text + "'" + ",CantidadD,UM,importeunitario,Importe = " + "'" + Imp.Text + "'" + ",estatusse,FolioSe,estatusdecarga,estatusdeaprobacion,Error,usuariodetransmision,pcqueenviadatos " &
        ",programa" &
        ",FechaCaptura =  " + "'" + FechaCaptura + "'" + ",HoraCaptura =  " + "'" + HoraCaptura + "'" + " " &
        "From [SIR].[SIR].[SIR_60_REFERENCIAS] " &
       " Left Join   [dbo].[ClientesHerdez] As CH On [SIR].[SIR].[SIR_60_REFERENCIAS].nIdImex07 = CH.id_sclave_reco " &
        "Left Join  [SIR].[SIR].[SIR_188_FACTURAS_REFERENCIAS] As FAC On [SIR].[SIR].[SIR_60_REFERENCIAS].nIdReferencia60 = FAC.nIdReferencia60 " &
       "Left Join  [SIR].[SIR].[SIR_52_FACTURAS] As FA On FAC.nIdFactura52 = FA.nIdFactura52 " &
       "Left Join  [dbo].[Prov_Herdez]As PH On FA.nIdProveedor42 = PH.id_prov_reco " &
       "LEFT JOIN [SIR].[Admin].[SIR_VT_Sabana_PedimentoMarcos] as SB ON [SIR].[SIR].[SIR_60_REFERENCIAS].nIdReferencia60 = SB.ID " &
       " where [sReferencia] = " + "'" + TextBoxReferencia.Text + "'" + " "
 
    secondSql = ""
 
    connection = New SqlConnection(connetionString)
    Try
        connection.Open()
        command = New SqlCommand(firstSql, connection)
        adapter.SelectCommand = command
        adapter.Fill(ds, "Table(0)")
        adapter.Dispose()
        command.Dispose()
        connection.Close()
        dt = ds.Tables(0)
 
        For i = 0 To dt.Rows.Count - 1
            MsgBox(dt.Rows(i).Item(0) & "  --  " & dt.Rows(i).Item(1))
        Next
    Catch ex As Exception
 
 
        'MsgBox("Can not open connection ! ")
 
    End Try
    Response.Clear()
 
    Response.Buffer = True
    Response.AddHeader("Content-Disposition", "attachment;filename=Herdez.csv")
    Response.ContentType = "application/text"
    Dim sb As New StringBuilder()
 
    'For k As Integer = 0 To dt.Columns.Count - 1
    'add separator
    'sb.Append(dt.Columns(k).ColumnName + ","c)
    'Next
    'append new line
    'sb.Append(vbCr & vbLf)
 
 
    For i As Integer = 0 To dt.Rows.Count - 1
        For k As Integer = 0 To dt.Columns.Count - 1
            'add separator
            sb.Append(dt.Rows(i)(k).ToString().Replace(",", ";") + ","c)
        Next
        'append new line
        'sb.Append(vbCr & vbLf)
    Next
 
 
 
    Response.Output.Write(sb.ToString())
    Response.Flush()
 
    Response.End()
End If

Cuando lo hago desde mi servidor me exporta el CSV adecuadamente sin ningun error
adjunto dos imagenes de la forma correcta cuando se exporta.

exportando2
Exportando

Ahora ya pasada toda la informacion en el servidor este es el error que me muestra la diferencia que me doy cuenta es que nisiquiera me abre el cuadro con el mensaje en forma de icono nose si sea ahi el problema.

Error_Exportar3

Si tienen alguna sugerencia de a que se podria deber este problema estare muy agradecido

Saludos y gracias por la atencion.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Error al exportar a CSV

Publicado por Yamil (614 intervenciones) el 29/03/2018 15:48:57
La variable dt es local a ese procedmiento, porque la inicializas en el bloque Try..Catch, asi que despues de alli NO hay seguridad si esta inicializada o no.
Lo mas probable es que te esta dando una excepcion pero no haces nada con ella.

Mueve el catch hasta el final de tu bloque, es decir, entre Response.End() y End If.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 02/04/2018 14:22:05
Ya intente de esta forma ya no me marca error pero no se exporta el archivo se queda algo como que cargando termina y es todo lo que sucede lo raro es que de forma local en mi pc me sigue funcionando normalmente y generandome en el archivo pero ya subiendolo al servidor no sucede nada

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 02/04/2018 14:39:41
1
2
3
4
5
6
7
8
9
10
11
Response.Output.Write(sb.ToString())
        Response.Flush()
 
        Response.End()
    Catch ex As Exception
 
 
        ' MsgBox("Can not open connection ! ")
 
    End Try
End If

Esa parte fue la que modifique
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Error al exportar a CSV

Publicado por Yamil Bracho (614 intervenciones) el 02/04/2018 15:10:12
Deberia quedarte asi

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
If iva = 0 Then
    Try
 
    connetionString = "Data Source=DESKTOP-LD02VBB;Initial Catalog=SIR;Persist Security Info=True;User ID=sa;Password=123"
    firstSql = " Select  cia = " + "'" + Cia.Text + "'" + ",suc = " + "'" + Suc.Text + "'" + ",dep = " + "'" + Dep.Text + "'" + ",tipos,folio,usuarioas400,Descripcion,proveedor1,FechaDoc =  " + "'" + FechaDoc + "'" + ",id_prov_Hdz = " + "'" + Prov.Text + "'" + ",tipodemoneda " &
       " ,Serie,Numero,GPO = " + "'" + gpototal.Text + "'" + ",CON = " + "'" + contotal.Text + "'" + ",CantidadD,UM,importeunitario,Importe = " + "'" + Imp.Text + "'" + ",estatusse,FolioSe,estatusdecarga,estatusdeaprobacion,Error,usuariodetransmision,pcqueenviadatos " &
        ",programa" &
        ",FechaCaptura =  " + "'" + FechaCaptura + "'" + ",HoraCaptura =  " + "'" + HoraCaptura + "'" + " " &
        "From [SIR].[SIR].[SIR_60_REFERENCIAS] " &
       " Left Join   [dbo].[ClientesHerdez] As CH On [SIR].[SIR].[SIR_60_REFERENCIAS].nIdImex07 = CH.id_sclave_reco " &
        "Left Join  [SIR].[SIR].[SIR_188_FACTURAS_REFERENCIAS] As FAC On [SIR].[SIR].[SIR_60_REFERENCIAS].nIdReferencia60 = FAC.nIdReferencia60 " &
       "Left Join  [SIR].[SIR].[SIR_52_FACTURAS] As FA On FAC.nIdFactura52 = FA.nIdFactura52 " &
       "Left Join  [dbo].[Prov_Herdez]As PH On FA.nIdProveedor42 = PH.id_prov_reco " &
       "LEFT JOIN [SIR].[Admin].[SIR_VT_Sabana_PedimentoMarcos] as SB ON [SIR].[SIR].[SIR_60_REFERENCIAS].nIdReferencia60 = SB.ID " &
       " where [sReferencia] = " + "'" + TextBoxReferencia.Text + "'" + " "
 
    secondSql = ""
    connection = New SqlConnection(connetionString)
 
        connection.Open()
        command = New SqlCommand(firstSql, connection)
        adapter.SelectCommand = command
        adapter.Fill(ds, "Table(0)")
        adapter.Dispose()
        command.Dispose()
        connection.Close()
        dt = ds.Tables(0)
 
        For i = 0 To dt.Rows.Count - 1
            MsgBox(dt.Rows(i).Item(0) & "  --  " & dt.Rows(i).Item(1))
        Next
 
    Response.Clear()
 
    Response.Buffer = True
    Response.AddHeader("Content-Disposition", "attachment;filename=Herdez.csv")
    Response.ContentType = "application/text"
    Dim sb As New StringBuilder()
 
    'For k As Integer = 0 To dt.Columns.Count - 1
    'add separator
    'sb.Append(dt.Columns(k).ColumnName + ","c)
    'Next
    'append new line
    'sb.Append(vbCr & vbLf)
 
    For i As Integer = 0 To dt.Rows.Count - 1
        For k As Integer = 0 To dt.Columns.Count - 1
            'add separator
            sb.Append(dt.Rows(i)(k).ToString().Replace(",", ";") + ","c)
        Next
        'append new line
        'sb.Append(vbCr & vbLf)
    Next
 
    Response.Output.Write(sb.ToString())
    Response.Flush()
    Response.End()
Catch ex As Exception
        'MsgBox("Can not open connection ! ")
    End Try
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 02/04/2018 15:22:15
Que raro se ve que carga pero sigue igual sin generar el archivo :/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 02/04/2018 16:18:01
lo mas extraño es que funciona en mi pc local y no en el servidor :S
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 03/04/2018 16:23:14
Quitando el Try y el catch me sale este errorcreo que este es el verdadero problema que me resulta al subirlo al servidor

Error_sql
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Error al exportar a CSV

Publicado por Cesar (40 intervenciones) el 03/04/2018 16:29:13
Hola.

El error esta en la cadena de conexion de la base de datos.

Tienes en hardcode el nombre de tu equipo.

Debes de colocar la cadena de conexion en el archivo Web.config, y cuando subas tu proyecto al servidor, editar dicho archivo, y colocar el nombre del servidor de base de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Oscar

Error al exportar a CSV

Publicado por Oscar (30 intervenciones) el 03/04/2018 16:46:42
si ya me di cuenta esque como el codigo es nuevo normalmente el conectionstring lo agarra del webconfig pero este no lo agarra de ahi mismo gracias por su respuesta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad