Sabes tengo dudas en cuanto a como realizar una factura, más o menos tengo una idea de como debe ir el formulario y como sabemos en una factura van N cantidad de artículos, cómo los agrego a mi factura, ¿con qué control? ¿Cómo debe ir la tabla de facturas? ¿En dónde quedan guardados los artículos que agrego a mi factura y como se guardan?
La pregunta, a pesar de ser corta en extensión, es bien compleja y la respuesta es mucho más. Sin embargo voy a responder algo globalmente para que se pueda más adelante detallar cada uno de los componentes que están involucrados: 1. Donde se almacenan los datos. Definitivamente hay que utilizar un repositorio de datos para almacenarlos. Tal vez uno de los más sencillos para comenzar sea en Microsoft Access, aunque también se podría utilizar Bases de datos como SQL Dentro de este repositorio de datos se crean dos tablas, una para el encabezado y otra para el detalle de la factura. En el encabezado van los datos generales de una factura, Nombre del Cliente, Identificación tributaria, fecha de la factura, total de la factura, número y serie de la factura. En la tabla detalle debe de ir, el código del articulo, el precio unitario, el precio total, la cantidad pedida y cualquier otra información relacionada con el artículo. En la tabla de encabezado y en la tabla detalle debe(n) existir un(os) campo(s) común (comunes) a ambas tablas, puede ser el número de la factura, que debe de estar tanto en el encabezado así como también en el detalle para los productos de esa factura, si se utiliza serie de factura debe de estar en el encabezado y también en el detalle. También puede hacerse un correlativo para las facturas, pero eso sí.. el mismo número que tenga el encabezado lo debe de tener cada una de las filas en el detalle para esa factura. También debe de crearse una tabla con la información de los artículos del inventario que vamos a facturar. Con eso queda resuelta la duda de donde se guardan. Ahora para la pregunta de como se guardan, bueno.. Microsoft Visual Basic 6.0 maneja 3 distintas formas de acceder a datos (ya sea en MS Access o en SQL) que son ADO, RDO y si mal no esty la otra se llama DAO. Las recomendables para utilizar son ADO o DAO (en project, references se define que controles son los que se usarán, si ADO o DAO) Una vez que se ha definido el tipo de acceso, entonces viene la pregunta "COMO SE GUARDAN", existen básicamente dos maneras, la primer manera y más sencilla es conectar los controles TextBox, ListBox, DBGRID, DBCombo, DBList a tablas dentro de la base de datos y a campos específicos, por medio de un control DATACONTROL (Data1), entonces solo se invoca el método UPDATE en el datacontrol, y los cambios se almacenan inmediatamente La segunda opción es utilizar ADO con recordset, entonces se leen los datos, se llenan los recordset y esa información manualmente es colocada en los controles apropiados (textbox, listbox, msFlexGrid, ComboBox, etc). Para actualizar se usan comandos de tipos SQL como por ejemplo Insert into detafacturas values (1,3,5.80); Con eso tenemos entonces la respuesta a Como se guardan, ahora con respecto a que controles utilizar, pues de la respuesta anterior se deriva que depende de la forma como nos enlacemos a los datos, si usamos la conexión a través de un objeto DATACONTROL, entonces se puede utilizar un DBGRID para el detalle de la factura, y para el encabezado pues se enlazan cada uno de los campos a controles de tipo TEXTBOX, entonces cualquier cambio, se ve reflejado directa y sencillamente en la base de datos. Espero que te ayude la anterior explicación muy resumida por cierto.. Julius