Principales respuestas
Consulta de Manejo Cabecera-detalle

Pregunta
-
Estimada Comunidad.-
Deseo su asesoramiento con respecto al manejo de cabecera-detalle cual es la mejor manera de hacerlo??
Como lo he hecho yo. (Primera Opcion)
Recupero los datos en el datagridview y le sigo agregando mas regsitros, ademas sobre los ya recuperados tambien puedo editarlos o eliminarlos, manejo un id por cada detalle-item que voy alimentando.
Al momento de presionar el boton guardar, leo todos los registros del detalle y los que ya existen en la base hago un update y si el id del datagridview es 0 indica que un registro nuevo, es decir, hago un insert, y para los eliminados los administro con un checkbox.
Hice una segunda Opcion:
Cada vez que voy insertando o editando guardo el resgistro a la base de datos y luego hago como ejemplo: datagridview1.Datasource = nDetalle(Cotizacion)
Esto me ahorra bastante codificacion, pero no creo que util estar realizando accesos a la base de datos por cada detalle que inserte, actualice o elimine:
He revisado que es mucho mejor manejar un dataset o un datatable, o mejor que me recomendarian y que seria lo mas eficiente para este tipo de cosas, yo estoy desarrollando a la antigua como programador de VB6 donde usaba las grid.
Adjunto un print de mi pantalla, no esta pulido, como se puede ver muestros los codigos y nombre de los mismos
donde indica Item inserto los datos y presiono el boton + o doble click sobre el datagridview y los recupero y pondo en el item una vez hecho el mantenimiento del registro vuelvo a persionar el boton +, como se cuando es un insert?? si CodigoDet=0 entonces insertar si es un valor mayor a 0, entonces Update.
Pero pienso que no estoy usando todas las bondades de .Net con codificacion c#.
Gracias por cualquier ayuda que me puedan facilitar
Respuestas
-
Primera opción es lo mejor en cuanto a la perspectiva del usuario y el uso del ancho de banda de la conexión a red. Lo que yo no usaría sería un DataSet/DataTable. Yo siempre utilizo colecciones de clases.
Jose R. MCP
Code Samples- Marcado como respuesta Obtener datos de propiedad de navegacion lunes, 12 de noviembre de 2018 16:25
Todas las respuestas
-
Primera opción es lo mejor en cuanto a la perspectiva del usuario y el uso del ancho de banda de la conexión a red. Lo que yo no usaría sería un DataSet/DataTable. Yo siempre utilizo colecciones de clases.
Jose R. MCP
Code Samples- Marcado como respuesta Obtener datos de propiedad de navegacion lunes, 12 de noviembre de 2018 16:25
-