FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Uso de Master/Detail con Interbase
Hola, me estoy iniciando con Sql a pesar de que llevo varios años con Delphi en bases de escritorio. Ahora estoy desarrollando un programa con Delphi 7 y Firebird 2.5 y decidi usar los componentes de Interbase para conectarme a la base de datos.
Para varias tablas uso IBQuery para así programar por botones las acciones Editar, borrar, Ingresar pero necesito hacer un par de formularios que necesitan de dos tablas para un encabezado y un detalle y para esto veo que lo unico disponible es IBTable ya que tiene las propiedades Mastersource y Masterfields para conectarse a través de campos gemelos, mi consulta es que otros componentes me servirian para hacer estos formularios Master/Details y como se conectan ya que ni los IBQuery - IBDataset tienen esa propiedad. Saludos y gracias por su ayuda. |
#2
|
||||
|
||||
Hola Leopard2, yo utilizo los componentes Interbase hace bastante tiempo y para hacer lo que dices (bueno cualquier edición) utilizo los componentes dataset y trataré de indicarte más o menos como lo hago. Para establecer una relación maestro/detalle pongo dos componentes del tipo ibdataset, supongamos que son facturas (albaranes como lo llaman los españoles), una de las tablas tiene la cabecera y la otra el detalle y obviamente están relacionados por un campo id o numero de factura.
Posteriormente completo la propiedad SelectSQL, luego botón derecho sobre el componente y pulsas Dataset Editor, en el dialogo que te aparece haces click en secuencia a los botones que estan a la derecha, con esta acción se completarán las propiedades restantes con las sentencias sql para insertar, modificar, eliminar y refrescar. Repite esta acción con la tabla de detalle y al igual que la tabla de cabecera debes restringir la edición a su ID, ejemplo:
Bueno estoy suponiendo que sabes usar los parámetros en este tipo de componentes. En este punto viene lo importante, el nombre del parámetro debe ser igual al del campo (por lo menos en la tabla detalle), y esto debe ser así por que ahora a la tabla detalle en la propiedad datasource le vamos a enlazar el datasource de la tabla de cabecera (o dataset de cabecera), entonces el componente detalle buscara en el componente de cabecera un campo con el mismo nombre del parámetro y lo utilizará, de esta manera y sin escribir ninguna línea de código ya tienes una relación maestro detalle funcionando. Está demás comentar que si cambias de registro en la tabla de cebecera, la tabla de detalle se actualizará automáticamente. Espero que esto te ayude un poco, inténtalo y verás lo bien que marcha. Saludos. |
#3
|
||||
|
||||
Sólo aclarar que nosotros no llamamos albaranes a las facturas
A los "albaranes" los llamamos "albaranes", y a las "facturas" las llamamos "facturas"
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#4
|
||||
|
||||
Cita:
He tenido que ir al diccionario... Digo yo, como gallego por "adopción", hostias tío ¿no es más fácil llamarlo recibo o comprobante? Saludos, |
#5
|
||||
|
||||
Oops! al parecer tengo una confución confusa.
|
#6
|
||||
|
||||
Cita:
Después de una breve introducción histórica, paso a explicar los documentos en España, básicamente: Presupuesto, pedido, albarán y factura. Presupuesto: Hola, necesito que me dé un presupuesto de lo que me costaría unas piezas para mi ordenador y ustedes me lo instalan. Artículo----------cantidad----precio--importe Disco duro 1 TB--------1-------100-------100 Teclado cherry---------1--------50--------50 Mano de obra-----------1--------30--------30 SUMA--180 IVA 21%----37,8-------------------TOTAL--217,8 Pido presupuesto a varios negocios para ver quien me da mejores precios, elijo uno y lo acepto, por lo que me preparan el pedido: Pedido: Aceptado el presupuesto pero sin la mano de obra porque decido instalarlo yo mismo: Artículo----------cantidad----precio--importe Disco duro 1 TB--------1-------100-------100 Teclado cherry---------1--------50--------50 SUMA--150 IVA 21%----31.5-------------------TOTAL--181.5 Perdone, ¿la forma de pago?, por transferencia bancaria. ¿Me pueden enviar la mercancía a mi casa?, sin problemas. ok. Hago una transferencia la empresa por el importe de 181,5 y recibo la mercancía con un documento de entrega, el albarán: Albarán: Artículo----------cantidad----precio--importe Disco duro 1 TB--------1-------100-------100 Teclado cherry---------0---------0---------0 SUMA--100 IVA 21%----21---------------------TOTAL--121 Oiga, que no he recibido el teclado. Es que se nos han acabado, le enviamos la factura y le devolvemos la diferencia del importe mediante transferencia. Al cabo de unos días recibo lo siguiente: Factura: Artículo----------cantidad----precio--importe Disco duro 1 TB--------1-------100-------100 SUMA--100 IVA 21%----21---------------------TOTAL--121 Eso sería el recorrido completo, depende del tipo de negocio se puede saltar alguno de ellos, lo único que siempre debe existir es la Factura o en su lugar el Ticket, que es fiscalmente válido igual que una factura y que suele llevar el IVA incluido en los precios. También existe la factura proforma, que es como una factura normal pero sin valor, se usa para varios casos, por ejemplo, una casa de seguros puede pedirte una factura proforma de lo que costaría arreglar un desperfecto en tu coche y te pagaría en razón a esa factura proforma, es como un presupuesto, tan sólo que el presupuesto es modificable, la factura proforma ya no se puede modificar, es la factura final, pero sin valor. En cuanto a la pregunta de Delphius, el recibo o comprobante, son cosas distintas. Un recibo es eso, un recibo, algo así como: Recibo: He recibido de: Delphius La cantidad de: 100 euros (====CIEN EUROS===) En concepto de: Entrega a cuenta para impresora multifunción Brother DCP-7060. Fecha y firma: Y un comprobante aquí puede ser el "comprobante de compra", o sea, el ticket (factura con iva incluido en precios): Gracias por la compra de los zapatos, no pierda el comprobante/ticket porque lo necesitará si no le quedan bien y quiere descambiarlo por otros. Saludos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal Última edición por Casimiro Notevi fecha: 15-10-2012 a las 18:25:24. |
#7
|
|||
|
|||
Young, Gracias por la ayuda, voy a probar con tu ejemplo pero por lo que he estado investigando y leyendo por ahí va la cosa, además creo que voy a cambiar de los IBQuerys a los IBDataset ya que parece ser son mas fáciles de usar.
Saludos pd. Casimiro le falto explicar como haces el Master/Detail con los Comprobantes, Presupuestos, Pedidos, Facturas, Albaran y etc, etc. |
#8
|
||||
|
||||
Cita:
Por otro lado gracias por la aclaración... saludos. |
#9
|
||||
|
||||
Ya veo que llamamos a las cosas diferentes según el lado del charco
Aquí algunos, para el común de la gente, estilan llamar Recibo a ambas cosas... aunque aquí tenemos otro nombre más formal: Remito. Dejando el término Recibo para el propio papel describes en donde se deja la firma. Y hay quienes le llaman Nota de Remito, como para diferenciar de lo que se estila llamar Nota de Pedidos... aquí hasta se inventa el término Nota de Reposición, Nota de Vencimiento, Nota de Devolución, Nota de Respuestos... Uff... algunos (los clientes) se inventan notas (que de carácter legal no tiene nada). ¿Me pregunto, tendrán un nombre extra para ese papel que se llevan al baño? Saludos, |
#10
|
||||
|
||||
Cita:
Casi, me parece que no fue Colón quien llamó América al continente, sino un tal Américo Prepucio (o algo así). |
#11
|
||||
|
||||
Cita:
Aunque su nombre real era Amerigo Vespucci, nació en Italia. Colón pensaba que eran tierras de "las indias", murió sin saber que era un continente desconocido para el "viejo mundo".
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
DBLookupComboBoxs Master/Detail o Detail/Master | yusnerqui | OOP | 5 | 29-07-2005 19:40:20 |
master/detail, imprimiendo master en cada hoja | acalderonr | Impresión | 4 | 29-11-2003 15:46:07 |
master detail | marcelofabiani | Firebird e Interbase | 5 | 01-11-2003 23:21:28 |
interbase:¿como crear un master-detail-detail? | ElSanto24 | Firebird e Interbase | 2 | 22-10-2003 11:24:45 |
Master/Detail/Detail/Detail/etc... | hgiacobone | Tablas planas | 2 | 24-07-2003 18:20:31 |
|