Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-03-2008
Avatar de principiante22
principiante22 principiante22 is offline
Miembro
 
Registrado: nov 2006
Ubicación: Santo Domingo - Rep.Dom.
Posts: 90
Poder: 18
principiante22 Va por buen camino
Numero aleatorio de productos

Hola a todos, tengo una duda y es que tengo que hacer un programa que imprima una factura sin saber la cantidad de productos (con esto me refiero a que puede tener tanto 2 productos como puede tener 15) y lo que necesito es una ayuda sobre como empezar, si me pueden ayudar diciendome que componentes puedo usar o cual reporte usar o si saben algun link de una guia o que debo de hacer para que el reporte se expanda segun la cantidad de productos o algo asi .

Les agradesco por adelantado
__________________
Att: ΓħΞ ŘēąĿ βļåķΣ
Responder Con Cita
  #2  
Antiguo 02-03-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
No tienes más que utilizar una tabla de cabecera (Facturas) y otra de Detalle(Líneas).

A partir de ahí cada factura podrá tener cuantas líneas sean necesarias, yo tengo sistemas que a veces una factura ocupa más de 42 páginas, da lo mismo el diseño es igual, Cabecera factura y luego líneas (las que sean).

En cuanto el constructor de informes a utilizar para este propósito te puedo decir que con el mismo QuickReport que viene con Delphi puedes hacerlo y por lo tanto con cualquier otro que conozca y se integre con Delphi.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 03-03-2008
Avatar de principiante22
principiante22 principiante22 is offline
Miembro
 
Registrado: nov 2006
Ubicación: Santo Domingo - Rep.Dom.
Posts: 90
Poder: 18
principiante22 Va por buen camino
Gracias por responderme, pero quisiera saber como hacer la factura de detalle .

Gracias de nuevo
__________________
Att: ΓħΞ ŘēąĿ βļåķΣ
Responder Con Cita
  #4  
Antiguo 03-03-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
En realidad lo que tienes que utilizar son 2 tablas:
Facturas
Lineas_de_Factura

Numero será el campo que esté en las dos tablas, es decir tanto Factura, como Lineas_de_Factura tendrán ese campo.

Por ejemplo:
Facturas.Numero:08-00001
Facturas.CodClie:4301234
Facturas.Fecha:01/01/08
etc...

Lineas_de_Factura.Numero:08-00001- Producto:Aguafuerte
Lineas_de_Factura.Numero:08-00001- Producto:Alcohol
Lineas_de_Factura.Numero:08-00001- Producto:Alcanfor
Lineas_de_Factura.Numero:08-00001- Producto:Cera líquida

Facturas.Numero (Es un campo llave - Clave única)
Lineas_de_Factura.Numero(Es índice pero no llave).

Ambas tablas tienen lo que se llama una relación maestro-detalle, como hacerlo puede depender un poco del tipo de tablas que utilices, pero básicamente es lo mismo.

Creo que con este te hagas una idea.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 03-03-2008
Avatar de principiante22
principiante22 principiante22 is offline
Miembro
 
Registrado: nov 2006
Ubicación: Santo Domingo - Rep.Dom.
Posts: 90
Poder: 18
principiante22 Va por buen camino
Gracias de nuevo por tu respuesta, y lamento molestarte de nuevo pero quisiera saber si me puedes decir como se hace si uso una tabla de Access
__________________
Att: ΓħΞ ŘēąĿ βļåķΣ
Responder Con Cita
  #6  
Antiguo 03-03-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Pues como te he comentado, Factura le declaras "LLave" el campo número de Factura, en Lineas_de_Factura, pones un campo autoincremental y lo pones llave y luego al número de factura (indexado con duplicados).

Puede establecer integridad referencial y actualización en cascada en el propio motor de la base de datos (Apartado relaciones).

Te conecata a la base de datos mediante un TAdoConnection y luego con 2 AdotAbles uno apuntando a Factura y el otro a las líneas, en este último en su propiedad MasTerSource lo concectas con Facturas y en MasterFields conectas el campo número de factura de la tabla Facturas con el del mismo nombre de la Tabla Lineas_de_Factura.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #7  
Antiguo 04-03-2008
Avatar de principiante22
principiante22 principiante22 is offline
Miembro
 
Registrado: nov 2006
Ubicación: Santo Domingo - Rep.Dom.
Posts: 90
Poder: 18
principiante22 Va por buen camino
Gracias de nuevo, pero tengo otro problema, como puedo conectar esos TAdoTable al rave project ya que no tengo el QuickReport.

Gracias
__________________
Att: ΓħΞ ŘēąĿ βļåķΣ
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Existe SELECT ALEATORIO (Random)? Saiyan SQL 4 08-04-2010 04:01:06
Select aleatorio JBalda Firebird e Interbase 11 27-06-2007 20:28:23
generar numero de 9 cifras aleatorio que nunca se repita coletaun Varios 9 19-02-2007 10:34:29
Orden aleatorio al 7o digito!!! jdattoli Tablas planas 1 20-10-2005 18:15:09
Presentar ordern aleatorio en un Select aerosB4 Firebird e Interbase 4 16-08-2004 12:53:21


La franja horaria es GMT +2. Ahora son las 08:41:21.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi