Retroceder   Foros del Web > Programación para sitios web > .NET > web forms

Respuesta
 
Herramientas Desplegado
Antiguo 10-oct-2005, 05:28   #1 (permalink)
Bravenap está en el buen camino
 
Avatar de Bravenap
 
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 1.890
Enviar un mensaje por Skype™ a Bravenap
Copiar en array datos de un datagrid

Hola, muy buenas. Me gustaría obtener todos los datos que tengo cargados en un datagrid y pasarlos a una array, por ejemplo. Podría hacerlo copiándo fila a fila, pero ¿existe la posibilidad de copiarlos todos a la vez? He intentado con el siguiente método del datagrid:

Dim arrAltas As Array
Me.dgAltas.Items.CopyTo(arrAltas, 0)

pero me sale el error "Object reference not set to an instance of an object", aunque no sé si se refiere al vector o a la colección del datagrid.

Gracias y un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
Bravenap está desconectado   Responder Citando
Antiguo 11-oct-2005, 04:44   #2 (permalink)
Bravenap está en el buen camino
 
Avatar de Bravenap
 
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 1.890
Enviar un mensaje por Skype™ a Bravenap
Quizás sea mejor replantear la pregunta.

Los datos del datagrid quiero insertarlos en una base de datos. La base de datos tiene los mismos campos que el Datagrid excepto un campo. Este campo es el resultado de cifrar con sha1 el campo DNI del datagrid. Es decir, el datagrid tiene los campos siguientes:

|Num|Nombre|Apellido1|Apellido2|DNI|

y la base de datos:

|Num|Nombre|Apellido1|Apellido2|DNI|Pass

Creo que la mejor opción sería recoger todos los datos del datagrid en un dataset y luego actualizar la base de datos con ese dataset ¿no? Veo una pega en el cifrado del campo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
Bravenap está desconectado   Responder Citando
Antiguo 11-oct-2005, 11:13   #3 (permalink)
xknown está en el buen camino
 
Avatar de xknown
 
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.243
Ten en cuenta que el DataGrid es más un visor que un _contenedor_ de datos, me queda claro lo que quieres hacer, pero no el proceso que haces para conseguir tu objetivo, creo que estás un poco confundido...

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
xknown está desconectado   Responder Citando
Antiguo 13-oct-2005, 05:20   #4 (permalink)
Bravenap está en el buen camino
 
Avatar de Bravenap
 
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 1.890
Enviar un mensaje por Skype™ a Bravenap
Je je, sí, la verdad es que sí que me lío bastante en cuanto aparecen en escena vectores, matrices y colecciones. Bueno, el proceso que he seguido al final es insertar paso por paso cada fila del datagrid:

Código:
        Dim conSQL As New SqlConnection(ConfigurationSettings.AppSettings("strConSQL"))
        conSQL.Open()

        'ALTAS ##########################
        If Me.dgAltas.Items.Count > 0 Then
            Dim insCom As New SqlCommand
            insCom.CommandType = CommandType.Text
            insCom.Connection = conSQL
            Dim strIns As String

            For i As Integer = 0 To Me.dgAltas.Items.Count - 1
                strIns = "INSERT INTO acceso_socios" & _
                    " (numero,nombre,apellido1,apellido2,dni,pass)" & _
                    " VALUES (" & _
                    Me.dgAltas.Items(i).Cells(0).Text & "," & _
                    "'" & Me.dgAltas.Items(i).Cells(1).Text.Replace("'", "''") & "'," & _
                    "'" & Me.dgAltas.Items(i).Cells(2).Text.Replace("'", "''") & "'," & _
                    "'" & Me.dgAltas.Items(i).Cells(3).Text.Replace("'", "''") & "'," & _
                    "'" & Me.dgAltas.Items(i).Cells(4).Text.Replace("'", "''") & "'," & _
                    "'" & cifraDNI(Me.dgAltas.Items(i).Cells(4).Text) & "')"

                insCom.CommandText = strIns
                Try
                    insCom.ExecuteNonQuery()
                Catch ex As Exception
                    Response.Write("Error en Socio" & Me.dgAltas.Items(i).Cells(0).Text & "<br>")
                End Try
            Next

        End If
Es un poco lento, pero no suele haber más de diez altas a la semana, por lo que no se ralentiza el proceso demasiado.

Gracias y un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
Bravenap está desconectado   Responder Citando
Antiguo 22-abr-2008, 15:14   #5 (permalink)
roggerprogrammer ha deshabilitado el karma
 
Avatar de roggerprogrammer
 
Fecha de Ingreso: abril-2008
Ubicación: Chiclayo - Peru
Mensajes: 1
Enviar un mensaje por MSN a roggerprogrammer
De acuerdo Re: Copiar en array datos de un datagrid

Cita:
Iniciado por Bravenap Ver Mensaje
Je je, sí, la verdad es que sí que me lío bastante en cuanto aparecen en escena vectores, matrices y colecciones. Bueno, el proceso que he seguido al final es insertar paso por paso cada fila del datagrid:

Código:
        Dim conSQL As New SqlConnection(ConfigurationSettings.AppSettings("strConSQL"))
        conSQL.Open()

        'ALTAS ##########################
        If Me.dgAltas.Items.Count > 0 Then
            Dim insCom As New SqlCommand
            insCom.CommandType = CommandType.Text
            insCom.Connection = conSQL
            Dim strIns As String

            For i As Integer = 0 To Me.dgAltas.Items.Count - 1
                strIns = "INSERT INTO acceso_socios" & _
                    " (numero,nombre,apellido1,apellido2,dni,pass)" & _
                    " VALUES (" & _
                    Me.dgAltas.Items(i).Cells(0).Text & "," & _
                    "'" & Me.dgAltas.Items(i).Cells(1).Text.Replace("'", "''") & "'," & _
                    "'" & Me.dgAltas.Items(i).Cells(2).Text.Replace("'", "''") & "'," & _
                    "'" & Me.dgAltas.Items(i).Cells(3).Text.Replace("'", "''") & "'," & _
                    "'" & Me.dgAltas.Items(i).Cells(4).Text.Replace("'", "''") & "'," & _
                    "'" & cifraDNI(Me.dgAltas.Items(i).Cells(4).Text) & "')"

                insCom.CommandText = strIns
                Try
                    insCom.ExecuteNonQuery()
                Catch ex As Exception
                    Response.Write("Error en Socio" & Me.dgAltas.Items(i).Cells(0).Text & "<br>")
                End Try
            Next

        End If
Es un poco lento, pero no suele haber más de diez altas a la semana, por lo que no se ralentiza el proceso demasiado.

Gracias y un saludo.





Hola como estas muy bueno tu aporte sabes, yo tenia el mismo problema pense que lo habia solucionado asi no se si alguien me pueda ayudar, explico lo que pasa es que quiero guardar los detalles de una factura, entonces yo tengo un datagrid con 'Codigo' 'Producto' 'Descripcion' 'Cantidad' 'Punit' 'Total' pero que pasa este array que mencionas guarda los datos, en campos que son String pero los campos que yo tengo en el datagrid quiero guardarlos en int por ejemplo el codigo del producto la cantidad y el total cosa que no pasa queria saber si alguien sabe como, y disculpen la ignorancia. grax
roggerprogrammer está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 10:00.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

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 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93