Hola ZiriusB.
Cita:
Empezado por ZiriusB
...
El form de "Apertura de caja" debe salir solo al inicio del día, es decir una vez que el usuario haya introducido la cantidad, el cliente puede cerrar la aplicación y volver a abrirla y ya no debería salir mas el Form "Apertura de Caja" sino pasar directamente al Form principal...
|
Para que se ejecute una vez por día (la primera vez que se abra la aplicación) podes hacer:
Código Delphi
[-]
program Project1;
uses
Forms, Windows, SysUtils, Registry,
Unit1 in 'Unit1.pas' ,
Unit2 in 'Unit2.pas' ;
{$R *.res}
function isSetDailyCashBox: Boolean;
const
KNAME = 'SoftWare\Your_App_Name\DailyCashBox';
VNAME = 'LastUpdate';
var
rg: TRegistry;
dt: TDateTime;
begin
rg := TRegistry.Create;
rg.RootKey := HKEY_CURRENT_USER;
dt := 0;
rg.OpenKey(KNAME, True);
try
if not rg.ValueExists(VNAME) then
rg.WriteDate(VNAME, dt);
dt := rg.ReadDate(VNAME);
Result := dt = Date;
rg.WriteDate(VNAME, Date);
finally
rg.CloseKey;
end;
end;
begin
Application.Initialize;
Application.CreateForm(TfrmMain, frmMain);
Application.ShowMainForm := False;
if not isSetDailyCashBox then
begin
frmDailyCashBox := TfrmDailyCashBox.Create(nil);
try
frmDailyCashBox.ShowModal;
finally
frmDailyCashBox.Free;
end;
end;
Application.ShowMainForm := True;
Application.Run;
end.
Saludos