Tecsitel_FactuGES2/Source/Servidor/uServerMainForm.pas
david 34bc7dddb2 - Añadido un nuevo servicio encargado de la gestión de las REFERENCIAS.
- El servidor muestra una barra de progreso cuando se cierra.

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@169 0c75b7a4-871f-7646-8a2f-f78d34cc349f
2007-12-16 13:46:06 +00:00

142 lines
3.5 KiB
ObjectPascal

unit uServerMainForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,
uROClient, uROPoweredByRemObjectsButton, uROClientIntf, uROServer,
uROBinMessage, uROIndyHTTPServer, uROIndyTCPServer, frxClass, frxPreview,
JvAppInst, JvComponentBase, ExtCtrls, JvExControls, JvGradient, XPMan,
ActnList, Menus, JvGIF, AppEvnts, JvBaseDlg, JvProgressDialog;
type
TfServerForm = class(TForm)
Memo1: TMemo;
PopupMenu1: TPopupMenu;
ActionList: TActionList;
actCerrar: TAction;
Cerrar1: TMenuItem;
actRestart: TAction;
actOpciones: TAction;
actConexiones: TAction;
Opciones1: TMenuItem;
Refrescarconexin1: TMenuItem;
N2: TMenuItem;
XPManifest1: TXPManifest;
Panel1: TPanel;
Image1: TImage;
JvGradient1: TJvGradient;
Button1: TButton;
actAcerca: TAction;
Acercade1: TMenuItem;
N1: TMenuItem;
JvAppInstances1: TJvAppInstances;
TrayIcon1: TTrayIcon;
JvProgressDialog1: TJvProgressDialog;
procedure actCerrarExecute(Sender: TObject);
procedure actRestartExecute(Sender: TObject);
procedure actOpcionesExecute(Sender: TObject);
procedure actAcercaExecute(Sender: TObject);
procedure actConexionesExecute(Sender: TObject);
procedure JvAppInstances1CmdLineReceived(Sender: TObject;
CmdLine: TStrings);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fServerForm : TfServerForm;
implementation
uses
uDataModuleServer, uConfiguracion, uAcercaDe, uServerAppUtils;
{$R *.dfm}
procedure TfServerForm.actCerrarExecute(Sender: TObject);
begin
Close;
end;
procedure TfServerForm.actConexionesExecute(Sender: TObject);
var
i: Integer;
begin
with Memo1.Lines do
begin
Clear;
for i := 0 to dmServer.ConnectionManager.Connections.Count - 1 do
Memo1.Lines.Add(dmServer.ConnectionManager.Connections[i].Name + ' -> ' + dmServer.ConnectionManager.Connections[i].ConnectionString);
end;
end;
procedure TfServerForm.actRestartExecute(Sender: TObject);
begin
dmServer.RefrescarConexion;
end;
procedure TfServerForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := False;
with JvProgressDialog1 do
begin
InitValues(0, 100, 10, 0, 'Cerrar FactuGES Server', 'Espere mientras FactuGES Server se cierra...');
Show;
while dmServer.HTTPServer.Active do
begin
if (Position + Interval > Max) then
Position := Min
else
Position := Position + Interval;
Refresh;
dmServer.HTTPServer.Active := False;
Sleep(500);
TrayIcon1.Visible := False;
end;
Hide;
end;
CanClose := True;
end;
procedure TfServerForm.FormCreate(Sender: TObject);
begin
dmServer := TdmServer.Create(Application);
end;
procedure TfServerForm.actOpcionesExecute(Sender: TObject);
var
AForm : TForm;
begin
AForm := TfConfiguracion.Create(Application);
try
AForm.ShowModal;
finally
AForm.Release;
actRestart.Execute;
end;
end;
procedure TfServerForm.JvAppInstances1CmdLineReceived(Sender: TObject;
CmdLine: TStrings);
begin
dmServer.RefrescarConexion;
end;
procedure TfServerForm.actAcercaExecute(Sender: TObject);
begin
with TfAcercaDe.Create(Application) do
try
ShowModal;
finally
Release;
end;
end;
end.