FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problemas al grabar Facturas o Pedidos?
Hola a todos,
Antes que todo me perrdonan si tal ves soy algo extenso en la explicacion o si mios tres inquietudes podrian hacerse en tres hilos, pero en aras de no explicar la situacion tres veces los resum aqui... Se me presenta la siguiente inquietud y requiero algo de orientación, agradezco de antemano quien me pueda ayudar. Ando trabajando una aplicación comercial con DELPHI, FIREBIRD y componentes FIBPLUS, y llegué al punto donde tengo que trabajar las ventanas o forms tipo “Pedidos” o “Facturas”. Tengo algunos inconvenientes que se me han presentado y aún no se, si es causado por la forma en que trabajo o hay algo que estoy dejando de hacer: Son tres inquietudes, pero antes tratare de definir como lo estoy haciendo. Capturar por ejemplo Un pedido: Trabajo un form con controles vinculados directamente con las tablas Maestra (encabezado del pedido) y Detalle (relación de artículos). Teniendo en cuenta que , internamente la aplicación ejecuta un Dataset.Post y luego un Dataset.Edit, (de tal forma que queda definida la Primary Key de la tabla maestra) en el momento mismo en que el usuario intenta crear un nuevo registro para los detalles ( y habiendo ingresado antes todos los datos de encabezado). La anterior es la forma en que lo recomienda el autor de la cara oculta de Delphi. Volviendo al tema… Inicialmente se presenta la ventana con los DB controles para la tabla maestra y un DBGrid para los detalles, adicionalmente 4 botones ( “Buscar”, “Nuevo”, ”Eliminar”, y “Cancelar”) Cuando el usuario desea crear un nuevo pedido, presiona el Boton “Nuevo” (aquí inicio un Database.Startransaction ) y los controles de encabezado le permiten la edición. Para agregar detalles al pedido, Existen otros dos botones “Agregar Producto” y “Eliminar Producto”, el usuario debe presionar el de agregar, que le presenta una segunda ventana de donde puede escoger los productos (desde otro DBGrid) y agregarlos al DBGrid de la ventana inicial, (creo que esta forma es la mas ordenada). Para cada registro agrego los campos mediante instrucciones desde una tabla a la otra y haciendo Insert al inicio y post al final del grupo. Como imaginaran el boton Eliminar Producto, es para eliminar registros del DBGrid de la primera Ventana, es decir si el usuario desea borrar un registro previamente agregado. Al final el usuario confirma o graba el pedido mediante un Boton Guardar, (que en mi caso es el mismo “Nuevo”, el cual alterno). Y aquí es donde realizo el Database.Commit. Bueno, si hasta aquí no hay confusión alguna… mis inquietudes son las siguientes:
Ademas tengo entendido que el StarTransaction va antes de una instrucicon INSERT o EDIT, y lo peor es que no puedo proteger el codigo con una instrucción TRY Except por no estar continuo.
Gracias por la colaboración. Felipe Diaz
__________________
El Calentamiento Global acabara con la tierra. No mas Barreras, No mas Guerras, No mas discrimiancion, No mas violencia, No mas indiferencia, No mas terrorismo, No mas secuestros. !Valoremos la vida! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Tabla de Facturas vs Detalles de Facturas | magnu9 | Conexión con bases de datos | 9 | 27-07-2007 17:27:37 |
Problemas al Grabar Archivo DBF | Marcelo Esparza | Tablas planas | 3 | 15-06-2006 03:56:43 |
Problemas al Grabar un Campo. | utephi_14 | OOP | 5 | 16-04-2005 05:58:21 |
Problemas con facturas | davidgaldo | Conexión con bases de datos | 7 | 02-12-2004 08:05:01 |
Campos calculados, facturas y detalles de facturas. | Letty | Conexión con bases de datos | 7 | 07-11-2003 11:19:44 |
|