Ver Mensaje Individual
  #9  
Antiguo 23-01-2008
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Reputación: 10
marcoszorrilla Va por buen camino
Naturalmente las Consultas que precisan de campos persistentes yo las armo en objetos distintos y las dejo formateadas y listas para usar, me refiero a consultas como estos ejemplos:

Código Delphi [-]
        DmXX.QrActLinalba.Close;
        DmXX.QrActLinalba.Sql.Clear;
        DmXX.QrActLinalba.Sql.Add('Delete from Linalbar');
        DmXX.QrActLinalba.Sql.Add('Where nAlbaran = '+QuotedStr(DmXX.AlbaNalbaran.Value ));

        DmXX.QrActLinalba.ExecSql;
        DmXX.QrActLinalba.Close;




Procedure Crear_Tabla_Temporal();
var
cNomTemp:String;
begin
cNomTemp:='C:\Wpan\TempFact.Db';

  if FileExists(cNomTemp) then
  DeleteFile(cNomTemp);

  if Not FileExists(cNomTemp) then
  begin
    Try
    DmXX.QrTemporales.Close;
    DmXX.QrTemporales.Sql.Clear;
    DmXX.QrTemporales.Sql.Add('Create Table '+QuotedStr(cNomTemp));
    DmXX.QrTemporales.Sql.Add('(');
    DmXX.QrTemporales.Sql.Add('Codigo     Char(07),');
    DmXX.QrTemporales.Sql.Add('Nombre     Char(40),');
    DmXX.QrTemporales.Sql.Add('Poblacion  Char(25),');
    DmXX.QrTemporales.Sql.Add('Contado     Boolean,');
    DmXX.QrTemporales.Sql.Add('Recargo     Boolean,');
    DmXX.QrTemporales.Sql.Add('Facturames  Boolean,');
    DmXX.QrTemporales.Sql.Add('Ruta       Char(01),');
    DmXX.QrTemporales.Sql.Add('Primary Key(Codigo)');
    DmXX.QrTemporales.Sql.Add(')');
    DmXX.QrTemporales.ExecSQL;
    Except
    ShowMessage('Error al crear la tabla temporal de facturas.');
    end;
   end;
end;



Function Comprobar_hay_Lineas_que_Facturar():Boolean;
Var
lTiene:Boolean;
begin
lTiene:=True;
DmXX.Qrhaylineas.Close;
DmXX.Qrhaylineas.Sql.Clear;
DmXX.Qrhaylineas.Sql.Add('Select Count(nCliente) from LinAlbar');
DmXX.Qrhaylineas.Sql.Add('Where nCliente = '+QuotedStr(DmXX.Tempo.Fields[0].AsString));
DmXX.QrHayLineas.Open;

 if DmXX.QrHayLineas.Fields[0].AsInteger > 0 then
 Result:=True
 else
 Result:=False;
end;


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