Ver Mensaje Individual
  #1  
Antiguo 21-10-2012
nmenna10 nmenna10 is offline
Miembro
NULL
 
Registrado: jun 2012
Posts: 19
Reputación: 0
nmenna10 Va por buen camino
Consulta sobre query

Hola buen dia!, tengo una duda sobre como consultar en un query el estado de uno de sus campo (el campo es booleano), mi s codigos seria los siguientes (SQL y el de delphi):
Código Delphi [-]
procedure TForm_Reparaciones.SpeedButton1Click(Sender: TObject);
Var
  dia1,dia2:string;
  Total,cobrado:real;
  Pagado:boolean;
begin
  dbgrid1.DataSource:=Datamodule1.DS_Query_Reparaciones;
  dia1:= FormatDateTime('dd/mm/yy', monthcalendar1.Date);
  dia2:= FormatDateTime('dd/mm/yy', monthcalendar2.Date);
  DataModule1.Query_reparaciones.Close;
  DataModule1.Query_Reparaciones.Parameters.ParamByName('fecha1').Value:= dia1;
  DataModule1.Query_Reparaciones.Parameters.ParamByName('fecha2').Value:= dia2;
  DataModule1.Query_Reparaciones.Open;

  //EVALUO LAS GANANCIAS DE DETERMINADO LAPSO DE TIEMPO TENIENDO EN CUENTA SOLO LA MANO DE OBRA
  Total:=0;
  cobrado:=0;
  Pagado:= datamodule1.Query_Reparaciones.FieldByName('Pagado').Value;
  while not (DataModule1.Query_reparaciones.Eof) do
  begin
    if (datamodule1.Query_Reparaciones.FieldByName('Precio_Final').asString <> '') and
    (datamodule1.Table_RMA.FieldByName('Precio_Final').AsString <> '0') then
      if (pagado = true) then
        cobrado:= cobrado + strtofloat(DataModule1.Query_Reparaciones.FieldByName('Precio_Final').AsString);
      Total:= Total + strtofloat(DataModule1.Query_Reparaciones.FieldByName('Precio_Final').AsString);
    DataModule1.Query_Reparaciones.Next;
  end;
  Label3.Caption:= floatTostr(Total);
  label5.caption:= floattostr(cobrado);
end;
Código SQL [-]
SELECT
  Fecha,
  RMA,
  CodCliente,
  Cliente,
  Equipo1,
  Equipo2,
  Equipo3,
  Precio_Final,
  MO,
  Pagado

FROM
  RMA

WHERE
  (:fecha1 <= Fecha) and (Fecha <= :fecha2)

order by(fecha)

Muchas gracias pos su ayuda y muy feliz dia a todas aquellas q sean madres!

Última edición por Casimiro Noteví fecha: 21-10-2012 a las 17:38:33.
Responder Con Cita