FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Generar reporte en QReport para obtener totales
Saludos a todos
Necesito generar un reporte en QReport para obtener los total de uniformes que debo comprar dependiendo de la medida de la ropa y zapatos de cada trabajador estoy trabajando en Delphi5 con una base de datos Standar .dbf mi reporte lo quiero generar con QReport y los campos que utiliza son los siguientes: Tipo caracter: Depto, Dias,Tipo_Bota,Cant_Botas,Cant_Panta, Cant_Camis,Cant_Over,Cantchama,Jabones,Toallas. Tipo Numerico: Medida,Pantalon,Camisa,Manga,Overol,Chamarra Realizo un calculo que da como resultado el total de uniformes que le correspode a cada trabajador dependiendo de los dias trabajados en el año. Uniforme contempla: Camisa,Pantalon,Botas,Chamarras,Overoles,jabones,Toallas, Yo necesito captar los datos que se generan al hacer ese calculo y plasmarlo en un reporte que me indique el total de uniformes que debo comprar dependiendo de la medida de camisa, pantalon, cuantos pares de botas de tal medida, cuantos overoles, cuantas chamarras segun la medida y un gran total de cada juego. Nota: tengo pendiente overoles porque muy probable no se entreguen anexo un ejemplo del calculo: procedure TFdatos.CalcularClick(Sender: TObject); Var datos: Integer; const I= 0.143; begin //no es necesario abrir la BD ya esta activa al momento de llamar a esta forma fdatos.table1.First; While Not fdatos.table1.EOF do Begin datos := StrtoInt(DBEdit1.Text); fdatos.Table1.Edit; fdatos.Table1.FieldByName('jabones').Value :=StrtoInt(DBEdit1.Text); If (datos<>0) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('jabones').Value := (datos * I); fdatos.Table1.Post; End Else If (datos >365) then showMessage('checa el numero '); { fdatos.Table1.Next; End; // while end; //procedimiento end. } datos := StrtoInt(DBEdit1.Text); fdatos.Table1.Edit; fdatos.Table1.FieldByName('cantchama').Value :=StrtoInt(DBEdit1.Text); If (datos<=180) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cantchama').Value := '0'; fdatos.Table1.Post End Else If (datos>=181) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cantchama').Value := '1'; fdatos.Table1.Post End else If (datos >365) then showMessage('checa el numero '); datos := StrtoInt(DBEdit1.Text); fdatos.Table1.Edit; fdatos.Table1.FieldByName('cant_camis').Value :=StrtoInt(DBEdit1.Text); fdatos.Table1.FieldByName('cant_panta').Value :=StrtoInt(DBEdit1.Text); If (datos<=30) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cant_camis').Value := '0'; fdatos.Table1.FieldByName('cant_panta').Value := '0'; fdatos.Table1.Post; End Else If (datos<=59) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cant_camis').Value := '1'; fdatos.Table1.FieldByName('cant_panta').Value := '1'; fdatos.Table1.Post End Else If (datos<=183) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cant_camis').Value := '2'; fdatos.Table1.FieldByName('cant_panta').Value := '2'; fdatos.Table1.Post End Else If (datos<=300) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cant_camis').Value := '3'; fdatos.Table1.FieldByName('cant_panta').Value := '3'; fdatos.Table1.Post End else If (datos>=365) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('cant_camis').Value := '5'; fdatos.Table1.FieldByName('cant_panta').Value := '5'; fdatos.Table1.Post End Else If (datos >365) then datos := StrtoInt(DBEdit1.Text); fdatos.Table1.Edit; fdatos.Table1.FieldByName('toallas').Value :=StrtoInt(DBEdit1.Text); If (datos<=121) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('toallas').Value := '0'; fdatos.Table1.Post End Else If (datos>=122)and (datos<=242) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('toallas').Value := '1'; fdatos.Table1.Post End Else If (datos>=243) and (datos<365) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('toallas').Value := '2'; fdatos.Table1.Post End else If (datos=365) then Begin fdatos.Table1.Edit; fdatos.Table1.FieldByName('toallas').Value := '3'; fdatos.Table1.Post End Else If (datos >365) then showMessage('checa el numero '); fdatos.Table1.Next; End; // while end; //procedimiento end. Para ti Moderador agradezco tus comentarios y pido disculpas por ser tan poco observadora decidí hacer un nuevo hilo pero no supe donde ubicarlo si me equivoco que es lo más seguro, te pido lo acomodes en el lugar que corresponde gracias... |
|
|
|