Ver Mensaje Individual
  #4  
Antiguo 24-09-2012
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Reputación: 15
Salnhack Va por buen camino
Resuelto en Parte

Hola a todos

He implementado el codigo en delphi me quedaria asi

Código Delphi [-]
with datamodule29.Query2 do
    Begin
     CLose;
     SQl.Clear;
     SQL.Add('Drop TABLE TTLCON, TTLKM, KM_CON ');
     ExecSQL;
     Close;
     SQl.Clear;
     SQL.Add('Select idmes from mes where mes=mes');
     ParamByName('pmes').AsString:=suiDBLookupComboBox2.Text;
     Open;
     mes:=FieldByName('idmes').AsInteger;
     Close;
     SQl.Clear;
     SQL.Add('Select * from mes where idmes=idmes');
     ParamByName('pidmes').AsInteger:=mes;
     Open;
     inicio:=FieldByName('inicio').AsString;
     fin:=FieldByName('fin').AsString;
     Close;
     SQL.Clear;
     SQL.Add('CREATE VIEW TTLCON AS SELECT carro.idcarro, Sum(CON.consumo) AS SumaDeconsumo');
     SQL.Add('FROM carro INNER JOIN CONSUMO AS CON ON carro.idcarro = CON.idcarro');
     SQL.Add('WHERE (((CON.fecha) Between #'+ inicio + '# And #'+ fin + '#))');
     SQL.Add('GROUP BY carro.idcarro');
     ExecSQL;
     Close;
     SQL.Clear;
     SQL.Add('CREATE VIEW TTLKM AS SELECT carro.idcarro, Sum(DHR.Kmrecorrido) AS SumaDeKmrecorrido');
     SQL.Add('FROM (carro INNER JOIN HOJARUTA AS HR ON carro.idcarro = HR.idcarro) INNER JOIN DESCHOJARUTA AS DHR ON HR.idhojaruta = DHR.idhojaruta');
     SQL.Add('WHERE (((DHR.fecha) Between #'+ inicio + '# And #'+ fin + '#))');
     SQL.Add('GROUP BY carro.idcarro');
     ExecSQL;
     Close;
     SQL.Clear;
     SQL.Add('CREATE VIEW KM_CON AS SELECT carro.idcarro, Sum(TTLKM.SumaDeKmrecorrido) AS SumaDeSumaDeKmrecorrido, Sum(TTLCON.SumaDeconsumo) AS SumaDeSumaDeconsumo, carro.nocarro,
 carro.indicecons');
     SQL.Add('FROM (TTLCON INNER JOIN carro ON TTLCON.idcarro = carro.idcarro) INNER JOIN TTLKM ON carro.idcarro = TTLKM.idcarro');
     SQL.Add('GROUP BY carro.idcarro, carro.nocarro, carro.indicecons');
     SQL.Add('ORDER BY carro.idcarro;');
     ExecSQL;
    end;

el problema ahora es que cuanto le paso los parametros de fecha en access

Código SQL [-]
SELECT carro.idcarro, Sum(DHR.Kmrecorrido) AS SumaDeKmrecorrido
FROM (carro INNER JOIN HOJARUTA AS HR ON carro.idcarro = HR.idcarro) INNER JOIN DESCHOJARUTA AS DHR ON HR.idhojaruta = DHR.idhojaruta
WHERE (((DHR.fecha) Between #1/2/2012# And #2/29/2012#))
GROUP BY carro.idcarro;


en ves de

Código SQL [-]
SELECT carro.idcarro, Sum(DHR.Kmrecorrido) AS SumaDeKmrecorrido
FROM (carro INNER JOIN HOJARUTA AS HR ON carro.idcarro = HR.idcarro) INNER JOIN DESCHOJARUTA AS DHR ON HR.idhojaruta = DHR.idhojaruta
WHERE (((DHR.fecha) Between #1/2/2012# And #29/2/2012#))
GROUP BY carro.idcarro;

es decir que lo coje en ves de DD/MM/YYYY asi MM/DD/YYYY

Alguna solucion???

Última edición por Casimiro Noteví fecha: 24-09-2012 a las 21:25:19.
Responder Con Cita