Ver Mensaje Individual
  #2  
Antiguo 19-01-2011
sergioperez sergioperez is offline
Miembro
NULL
 
Registrado: ene 2011
Posts: 27
Reputación: 0
sergioperez Va por buen camino
hacer una tabla de pedidos

Hola necesito hacer una tabla de pedidos a partir de otra ingredientesdiarios.
les voy a poner la tabla que tengo hecho y la que quiero hacer.
La tabla que tengo hecho es ingredientesdiarios.db (en mi formulario se llama Table2) y tiene los siguientes campos:

FechaMenu Dia Nombre Cantidad Unidad Clasificacion
1017012011 Lunes Pollo 20 k Carnes
1017012011 Martes Azucar 10 k Abarrotes
1017012011 Martes Pollo 10 k Carnes
1017012011 Miercoles Avena 3 C Abarrotes
1017012011 Miercoles Azucar 10 k Abarrotes
170121012011 Viernes Pollo 25 k Carnes


y la tabla que quiero llenar o hacer apartir de esto es pedido (en mi formulario es Table1):

Proveedor Descripcion Unidad CantidadP CantidadS FechaE FechaS
Carnes Pollo k 30 1017012011
Abarrotes Azucar k 20 1017012011
Abarrotes Avena C 3 1017012011

segun yo lo para lograr hacerlo hice un codigo, pero ya lo cheque poco a poco y el error esta en que en el segundo while mi table2 llega al final y ya no puede regresar al primer while, chequen mi codigo por favor es este:



Código Delphi [-]var a, b, c, d, e, f:String; cant: Integer; begin {si lo q se captura ya esta guardado en pedido no debe hacer nada} if (Table1.Locate('FechaE', Edit1.Text, [])) then begin ShowMessage('Ya existe el pedido de esa fecha'); end else {si lo q se captura no se ha pedido} begin ShowMessage('espera unos segundos'); Table2.First; table2.Edit; While Not Table2.Eof do begin Cant:=0; Table2.Edit; DataSource2.DataSet.Edit; begin a:=Table2.FieldValues['FechaMenu']; b:=Table2.FieldValues['Dia']; c:=Table2.FieldValues['Nombre']; d:=Table2.FieldValues['Cantidad']; e:=Table2.FieldValues['Unidad']; f:=Table2.FieldValues['Clasificacion']; table2.First; LABEL6.Caption:=a+c; while Not table2.Eof do begin showmessage('segundo while'); DataSource2.DataSet.Edit; if (a=Table2.FieldValues['FechaMenu'])and (c=Table2.FieldValues['Nombre']) then begin showmessage('probando en el if'); cant:= cant + Table2.FieldValues['Cantidad']; end; Table2.Next; end; {fin del while 2} if not(Table1.Locate('Descripcion',c, [])) then begin table1.Append; Table1.Edit; Table1.FieldValues['Proveedor']:=f; Table1.FieldValues['Descripcion']:=c; Table1.FieldValues['Unidad']:=e; Table1.FieldValues['CantidadP']:=cant; Table1.FieldValues['FechaE']:=a; end; Table1.Post; Table2.Next; //end;{fin del if que comprueba lo que tengo en la primera posicion es = a la fecha} end; {fin del while} Table2.Post; end;{fin del else} end; {fin del metodo del boton}

espero me hayan entendido y me ayuden por favor.
Responder Con Cita