• Sábado 21 de Diciembre de 2024, 10:14

Autor Tema:  Problema Actualizar Bd Con Datagrid, Urge! Gracias  (Leído 1219 veces)

paquitoTLD

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Problema Actualizar Bd Con Datagrid, Urge! Gracias
« en: Miércoles 16 de Agosto de 2006, 02:40 »
0
Hola, tengo un datagrid cuyo campo de referencia (DataKeyField) es un Nvarchar y coincide con la clave de la tabla de la base de datos que cargo.

Pues bien en el procedimiento de actualizar tengo problemas para recuperar el valor de dicho campo de referencia-clave. He probado varias expresiones:

cod_rec = DataGrid1.DataKeys(CInt(e.Item.ItemIndex))


cod_rec = (CType(e.Item.Cells(2).Controls(0), TextBox)).Text
El problema que tiene esta es que no se como obtener de una forma generica el número de columna donde se encuentra la clave

Cod_rec = (DataGrid1.DataKeys.Item(e.Item.ItemIndex))

Ahora bien, suponiendo que alguna de estas funcione, que por ejemplo la 2da sería correctisima, siempre que en las claves de la tabla aparece algún valor que no es un entero tengo un problema al actualizar y actualice el registro que actualice me dice por ejemplo el siguiente error, aunque este actualizando una tabla cuya clave sea un entero:

Error de conversión al convertir el valor nvarchar 'e' al tipo de datos int.

Incluso utilizando la segunda expresion que no convierte por ningun lado a integer, ¿Alguien sabe que puede pasar?

Esta es mi sentencia de actualización:

sqlSt = "UPDATE Recurso SET Descripcion=' " + descSt + "', Tipo='" + tipoSt + "' WHERE Cod_rec=" + DataGrid1.DataKeys(CInt(e.Item.ItemIndex))Abro la base de datos, ejecuto la sentencia, cierro la conexión y devuelvo el control al procedimiento principal con el valor de DataGrid1.EditItemIndex = -1           
Gracias!!