- Limpieza de código

- Cambios estéticos en el editor de medicaciones.

git-svn-id: https://192.168.0.254/svn/Proyectos.FarmaciaPH_Etiquetas/trunk@15 7b0b1a58-4aa1-b946-8089-8453ede31e50
This commit is contained in:
roberto 2011-11-30 13:11:38 +00:00
parent b1b9ee603e
commit b7717b1d9e
27 changed files with 418 additions and 1800 deletions

View File

@ -1,537 +0,0 @@
unit uClientesController;
interface
uses
uCustomEditor, Classes,
uContactosController, uBizContactos, uBizDireccionesContacto,
uIEditorClientes, uIEditorCliente, uIDataModuleContactos, uIDataModuleClientes,
uDireccionesContactoController, uBizContactosPersonal;
type
IClientesController = interface(IContactosController)
['{AAC3C51A-37F7-4961-B39F-FBC6B6A2B0F1}']
function BuscarTodosTiendaWeb: IBizCliente;
function BuscarEtiquetadosFelicitacion: IBizCliente;
function TieneDatosBancarios(ACliente: IBizCliente) : Boolean;
function ElegirDireccionEntrega(ACliente: IBizCliente; AMensaje: String): IBizDireccionesContacto;
function EsEliminable(ACliente: IBizContacto): Boolean;
function Eliminar(ACliente: IBizContacto; AllItems: Boolean = false): Boolean; overload;
procedure Preview(ACliente : IBizCliente; AllItems: Boolean = false);
procedure Print(ACliente : IBizCliente; AllItems: Boolean = false);
procedure VerPresupuestosDeCliente(ACliente : IBizCliente);
procedure VerAlbaranesDeCliente(ACliente : IBizCliente);
procedure VerFacturasDeCliente(ACliente : IBizCliente);
procedure VerRecibosDeCliente(ACliente : IBizCliente);
function DarListaCuentasBancarias(const IdCliente: Integer): TStringList;
end;
TClientesController = class(TContactosController, IClientesController)
protected
FDireccionesController : IDireccionesContactoController;
function ValidarContacto(AContacto: IBizContacto): Boolean; override;
public
constructor Create; override;
destructor Destroy; override;
function Duplicar(AContacto: IBizContacto): IBizContacto; override;
function Buscar(const ID: Integer): IBizContacto; override;
function BuscarTodos: IBizContacto; override;
function BuscarTodosTiendaWeb: IBizCliente;
function BuscarEtiquetadosFelicitacion: IBizCliente;
function Nuevo : IBizContacto; override;
procedure Ver(AContacto : IBizContacto); override;
procedure VerTodos(AContactos: IBizContacto); override;
function ElegirContacto(AContactos : IBizContacto;
AMensaje: String; AMultiSelect: Boolean): IBizContacto; override;
function TieneDatosBancarios(ACliente: IBizCliente) : Boolean;
function ElegirDireccionEntrega(ACliente: IBizCliente;
AMensaje: String): IBizDireccionesContacto;
function EsEliminable(ACliente: IBizContacto): Boolean;
function Eliminar(ACliente: IBizContacto; AllItems: Boolean = false): Boolean; overload;
procedure Preview(ACliente : IBizCliente; AllItems: Boolean = false);
procedure Print(ACliente : IBizCliente; AllItems: Boolean = false);
procedure VerPresupuestosDeCliente(ACliente : IBizCliente);
procedure VerAlbaranesDeCliente(ACliente : IBizCliente);
procedure VerFacturasDeCliente(ACliente : IBizCliente);
procedure VerRecibosDeCliente(ACliente : IBizCliente);
function DarListaCuentasBancarias(const IdCliente: Integer): TStringList;
end;
implementation
uses
Forms, Windows, SysUtils, Controls, cxControls, uDialogUtils, uDataModuleClientes, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController,
uIEditorElegirClientes, uIEditorElegirDireccionEntrega, uEditorGridBase, uModuleController,
Dialogs, uIntegerListUtils, uFactuGES_App,
uPlugins_Intf;
{ TClientesController }
function TClientesController.Buscar(const ID: Integer): IBizContacto;
begin
Result := (FDataModule as IDataModuleClientes).GetItem(ID);
FiltrarEmpresa(Result);
end;
function TClientesController.BuscarEtiquetadosFelicitacion: IBizCliente;
begin
Result := (FDataModule as IDataModuleClientes).GetItemsFelicitacion;
FiltrarEmpresa(Result);
end;
function TClientesController.BuscarTodos: IBizContacto;
begin
Result := (FDataModule as IDataModuleClientes).GetItems;
FiltrarEmpresa(Result);
end;
function TClientesController.BuscarTodosTiendaWeb: IBizCliente;
begin
Result := (FDataModule as IDataModuleClientes).GetItemsTiendaWeb;
FiltrarEmpresa(Result);
end;
constructor TClientesController.Create;
begin
inherited;
FDataModule := TDataModuleClientes.Create(Nil);
FDireccionesController := TDireccionesContactoController.Create;
end;
function TClientesController.DarListaCuentasBancarias(const IdCliente: Integer): TStringList;
var
ACliente: IBizCliente;
Aux : String;
begin
ACliente := (Buscar(IdCliente) as IBizCliente);
ACliente.DataTable.Active := True;
Result := TStringList.Create;
ShowHourglassCursor;
try
with Result do
begin
ACliente.DatosBancarios.DataTable.First;
while not ACliente.DatosBancarios.DataTable.EOF do
begin
Aux := Format('Nº de cuenta: %s %s %s %s - Titular: %s ', [ACliente.DatosBancarios.ENTIDAD,
ACliente.DatosBancarios.SUCURSAL, ACliente.DatosBancarios.DC, ACliente.DatosBancarios.CUENTA, ACliente.DatosBancarios.TITULAR]);
Add(Format('%s=%d', [Aux, ACliente.DatosBancarios.ID]));
ACliente.DatosBancarios.DataTable.Next;
end;
end;
finally
ACliente := NIL;
HideHourglassCursor;
end;
end;
destructor TClientesController.Destroy;
begin
FDireccionesController := NIL;
inherited;
end;
function TClientesController.Duplicar(AContacto: IBizContacto): IBizContacto;
begin
Result := inherited Duplicar(AContacto);
if Assigned((Result as IBizCliente).Descuentos) then
DuplicarRegistros((AContacto as IBizCliente).Descuentos.DataTable, (Result as IBizCliente).Descuentos.DataTable, mdrTodos);
end;
function TClientesController.ElegirContacto(AContactos : IBizContacto;
AMensaje: String; AMultiSelect: Boolean): IBizContacto;
var
AEditor : IEditorElegirClientes;
begin
Result := NIL;
CreateEditor('EditorElegirClientes', IEditorElegirClientes, AEditor);
if Assigned(AEditor) then
begin
try
AEditor.Contactos := AContactos;
AEditor.Controller := Self;
AEditor.MultiSelect := AMultiSelect;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.ContactosSeleccionados;
finally
AEditor.Release;
AEditor := NIL;
Application.ProcessMessages;
end;
end;
end;
function TClientesController.ElegirDireccionEntrega(ACliente: IBizCliente;
AMensaje: String): IBizDireccionesContacto;
var
AEditor : IEditorElegirDireccionEntrega;
begin
Result := NIL;
CreateEditor('EditorElegirDireccionEntrega', IEditorElegirDireccionEntrega, AEditor);
if Assigned(AEditor) then
begin
try
AEditor.Contacto := ACliente;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.DireccionSeleccionada;
finally
AEditor.Release;
AEditor := NIL;
Application.ProcessMessages;
end;
end;
end;
function TClientesController.Eliminar(ACliente: IBizContacto; AllItems: Boolean): Boolean;
//En el caso de eliminar almenos un elemento del conjunto se devuelve true
var
bEliminado: Boolean;
begin
bEliminado := False;
if not Assigned(ACliente) then
raise Exception.Create ('Contacto no asignado');
ShowHourglassCursor;
try
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
if (ACliente.State in dsEditModes) then
ACliente.Cancel;
//Siempre eliminaremos el seleccionado
if EsEliminable(ACliente) then
begin
ACliente.Delete;
bEliminado := True;
end;
//En el caso de querer eliminar todos los items del objeto ACliente
if AllItems then
begin
with ACliente.DataTable do
begin
First;
while not EOF do
begin
if EsEliminable(ACliente) then
begin
ACliente.Delete;
bEliminado := True
end
else Next;
end;
end;
end;
if bEliminado then
begin
ACliente.DataTable.ApplyUpdates;
Result := True;
end
else
Result := False;
HideHourglassCursor;
except
on E: Exception do
begin
ACliente.DataTable.CancelUpdates;
HideHourglassCursor;
if (Pos('FOREIGN KEY', E.Message) > 0) then
MessageBox(0, 'No se pueden borrar el/los cliente/s seleccionado/s porque, alguno/s de ellos tiene documentos dados de alta en la aplicación (presupuestos, albaranes, facturas, etc)', 'Atención', MB_ICONWARNING or MB_OK);
end;
end;
end;
function TClientesController.EsEliminable(ACliente: IBizContacto): Boolean;
begin
if not Assigned(ACliente) then
raise Exception.Create ('Contacto no asignado: EsEliminable');
Result := True;
end;
function TClientesController.Nuevo: IBizContacto;
var
AContacto : IBizCliente;
begin
AContacto := (FDataModule as IDataModuleClientes).NewItem;
FiltrarEmpresa(AContacto);
AContacto.DataTable.Active := True;
AContacto.Insert;
Result := AContacto;
end;
procedure TClientesController.Preview(ACliente: IBizCliente; AllItems: Boolean);
var
AReportController : IEtiquetasContactosReportController;
ListaID: TIntegerList;
begin
AReportController := TEtiquetasContactosReportController.Create;
ListaID := TIntegerList.Create;
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (TieneDatosBancarios)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
try
//Si deseamos previsualizar todos los items del objeto albaran
if AllItems then
begin
with ACliente.DataTable do
begin
First;
while not EOF do
begin
ListaID.Add(ACliente.ID);
Next;
end;
end;
end
//Solo previsualizamos el item seleccionado
else
ListaID.Add(ACliente.ID);
AReportController.Preview(ListaID);
finally
AReportController := NIL;
FreeANDNIL(ListaID);
end;
end;
procedure TClientesController.Print(ACliente: IBizCliente; AllItems: Boolean);
var
AReportController : IEtiquetasContactosReportController;
ListaID: TIntegerList;
begin
AReportController := TEtiquetasContactosReportController.Create;
ListaID := TIntegerList.Create;
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (TieneDatosBancarios)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
try
//Si deseamos previsualizar todos los items del objeto albaran
if AllItems then
begin
with ACliente.DataTable do
begin
First;
while not EOF do
begin
ListaID.Add(ACliente.ID);
Next;
end;
end;
end
//Solo previsualizamos el item seleccionado
else
ListaID.Add(ACliente.ID);
AReportController.Print(ListaID);
finally
AReportController := NIL;
FreeANDNil(ListaID);
end;
end;
function TClientesController.TieneDatosBancarios(
ACliente: IBizCliente): Boolean;
begin
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (TieneDatosBancarios)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
with ACliente.DatosBancarios do
begin
Result := (DataTable.RecordCount > 0) and
(
(Length(ENTIDAD) > 0) and
(Length(SUCURSAL) > 0) and
(Length(DC) > 0) and
(Length(CUENTA) > 0)
);
end;
end;
function TClientesController.ValidarContacto(AContacto: IBizContacto): Boolean;
begin
Result := inherited ValidarContacto(AContacto);
if Result then
begin
with (AContacto as IBizCliente) do
begin
if (BLOQUEADO = 0) then
begin
Edit;
MOTIVO_BLOQUEO := '';
Post;
end;
if (TIENDA_WEB = 1) and (Length(EMAIL_1) = 0) then
begin
{ShowWarningMessage('Acceso a la tienda web',
'Para que el cliente pueda tener acceso a la tienda web es necesario indicar una dirección de e-mail en el campo ''Correo de trabajo''' +
#10#13 + #10#13 +
'Por favor, indique una dirección o desactive el acceso a la tienda.');
Result := False;}
raise Exception.Create('Para que el cliente pueda tener acceso a la tienda web es necesario indicar una dirección de e-mail en el campo ''Correo de trabajo''' +
#10#13 + #10#13 +
'Por favor, indique una dirección o desactive el acceso a la tienda.');
end;
end;
{
// Por ahora no existe el concepto de direcciones de entrega asi que esto está desactivado
if Result and (AContacto.Direcciones.RecordCount = 0) then
if (ShowConfirmMessage('El cliente no tiene direcciones asociadas',
AContacto.NOMBRE + ' no tiene ninguna dirección de envío dada de alta, ' + #10#13 +
'¿Desea utilizar el domicilio fiscal para dar de alta una dirección de entrega?') = IDYES) then
begin
FDireccionesController.CopiarDireccionFiscal(AContacto, AContacto.Direcciones);
FDireccionesController.Ver(AContacto.Direcciones);
end;}
end;
end;
procedure TClientesController.Ver(AContacto: IBizContacto);
var
AEditor : IEditorCliente;
begin
AEditor := NIL;
CreateEditor('EditorCliente', IEditorCliente, AEditor);
if Assigned(AEditor) then
try
AEditor.Contacto := AContacto;
AEditor.Controller := Self;
AEditor.ShowModal;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
procedure TClientesController.VerAlbaranesDeCliente(ACliente: IBizCliente);
var
AModule : TModuleController;
APlugin : IMCAlbaranesCliente;
begin
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (VerAlbaranesDeCliente)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_ALBARANES_CLIENTE);
if Assigned(AModule) then
try
if Supports(AModule, IMCAlbaranesCliente, APlugin) then
APlugin.VerAlbaranes(ACliente.ID, ACliente.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TClientesController.VerFacturasDeCliente(ACliente: IBizCliente);
var
AModule : TModuleController;
APlugin : IMCFacturasCliente;
begin
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (VerFacturasDeCliente)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_FACTURAS_CLIENTE);
if Assigned(AModule) then
try
if Supports(AModule, IMCFacturasCliente, APlugin) then
APlugin.VerFacturas(ACliente.ID, ACliente.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TClientesController.VerPresupuestosDeCliente(ACliente : IBizCliente);
var
AModule : TModuleController;
APlugin : IMCPresupuestosCliente;
begin
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (VerPresupuestosDeCliente)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_PRESUPUESTOS_CLIENTE);
if Assigned(AModule) then
try
if Supports(AModule, IMCPresupuestosCliente, APlugin) then
APlugin.VerPresupuestos(ACliente.ID, ACliente.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TClientesController.VerRecibosDeCliente(ACliente: IBizCliente);
var
AModule : TModuleController;
APlugin : IMCRecibosCliente;
begin
if not Assigned(ACliente) then
raise Exception.Create ('Cliente no asignado (VerFacturasDeCliente)');
if not ACliente.DataTable.Active then
ACliente.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_RECIBOS_CLIENTE);
if Assigned(AModule) then
try
if Supports(AModule, IMCRecibosCliente, APlugin) then
APlugin.VerRecibos(ACliente.ID, ACliente.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TClientesController.VerTodos(AContactos: IBizContacto);
var
AEditor : IEditorClientes;
begin
AEditor := NIL;
CreateEditor('EditorClientes', IEditorClientes, AEditor);
if Assigned(AEditor) then
with AEditor do
begin
Contactos := AContactos;
Controller := Self;
MultiSelect := True;
ShowEmbedded;
end;
end;
end.

View File

@ -183,7 +183,7 @@ begin
AReportController := TFichasPacienteReportController.Create;
ID_Fichas := TIntegerList.Create;
try
//Si deseamos previsualizar todos los items del objeto albaran
//Si deseamos previsualizar todos los items del objeto
if AllItems then
begin
with APaciente.DataTable do
@ -217,7 +217,7 @@ begin
ID_Fichas := TIntegerList.Create;
try
//Si deseamos previsualizar todos los items del objeto albaran
//Si deseamos previsualizar todos los items del objeto
if AllItems then
begin
with APaciente.DataTable do

View File

@ -1,488 +0,0 @@
unit uProveedoresController;
interface
uses
Classes, uCustomEditor, uContactosController, uBizContactos,
uBizDireccionesContacto, uDireccionesContactoController,
uIEditorProveedores, uIEditorProveedor, uIDataModuleContactos,
uIDataModuleProveedores;
type
IProveedoresController = interface(IContactosController)
['{50F10D01-5120-470D-A61D-99FE8A76DF93}']
function BuscarSubcontratas: IBizProveedor;
function BuscarTodosTiendaWeb: IBizProveedor;
function ElegirDireccionEntrega(AProveedor: IBizProveedor; AMensaje: String): IBizDireccionesContacto;
function EsEliminable(AProveedor: IBizContacto): Boolean;
function Eliminar(AProveedor: IBizContacto; AllItems: Boolean = false): Boolean; overload;
procedure Preview(AProveedor : IBizProveedor; AllItems: Boolean = false);
procedure Print(AProveedor : IBizProveedor; AllItems: Boolean = false);
function DarListaDescripcionesProveedores: TStringList;
procedure VerPedidosDeProveedor(AProveedor : IBizProveedor);
procedure VerAlbaranesDeProveedor(AProveedor : IBizProveedor);
procedure VerDevolucionesDeProveedor(AProveedor : IBizProveedor);
procedure VerFacturasDeProveedor(AProveedor : IBizProveedor);
procedure VerRecibosDeProveedor(AProveedor : IBizProveedor);
function DarListaCuentasBancarias(const IdProveedor: Integer): TStringList;
end;
TProveedoresController = class(TContactosController, IProveedoresController)
protected
FDireccionesController : IDireccionesContactoController;
public
constructor Create; override;
destructor Destroy; override;
function Buscar(const ID: Integer): IBizContacto; override;
function BuscarTodos: IBizContacto; override;
function BuscarTodosTiendaWeb: IBizProveedor;
function BuscarSubcontratas: IBizProveedor;
function Nuevo : IBizContacto; override;
procedure Ver(AContacto : IBizContacto); override;
procedure VerTodos(AContactos: IBizContacto); override;
function ElegirContacto(AContactos : IBizContacto;
AMensaje: String; AMultiSelect: Boolean): IBizContacto; override;
function ElegirDireccionEntrega(AProveedor: IBizProveedor;
AMensaje: String): IBizDireccionesContacto;
function EsEliminable(AProveedor: IBizContacto): Boolean;
function Eliminar(AProveedor: IBizContacto; AllItems: Boolean = false): Boolean; overload;
procedure Preview(AProveedor : IBizProveedor; AllItems: Boolean = false);
procedure Print(AProveedor : IBizProveedor; AllItems: Boolean = false);
function DarListaDescripcionesProveedores: TStringList;
procedure VerPedidosDeProveedor(AProveedor : IBizProveedor);
procedure VerAlbaranesDeProveedor(AProveedor : IBizProveedor);
procedure VerDevolucionesDeProveedor(AProveedor : IBizProveedor);
procedure VerFacturasDeProveedor(AProveedor : IBizProveedor);
procedure VerRecibosDeProveedor(AProveedor : IBizProveedor);
function DarListaCuentasBancarias(const IdProveedor: Integer): TStringList;
end;
implementation
uses
SysUtils, Windows, cxControls, Dialogs, uDataModuleProveedores, uEditorRegistryUtils,
uDataTableUtils, uDADataTable, DB, schContactosClient_Intf, uEtiquetasContactosReportController,
uIEditorElegirProveedores, Controls, uIEditorElegirDireccionEntrega,
uEditorGridBase, uDAInterfaces, uIntegerListUtils, uFactuGES_App,
uPlugins_Intf, uModuleController;
{ TProveedoresController }
function TProveedoresController.Buscar(const ID: Integer): IBizContacto;
begin
Result := (FDataModule as IDataModuleProveedores).GetItem(ID);
FiltrarEmpresa(Result);
end;
function TProveedoresController.BuscarSubcontratas: IBizProveedor;
var
Condicion: TDAWhereExpression;
begin
Result := BuscarTodos as IBizProveedor;
with Result.DataTable.DynamicWhere do
begin
Condicion := NewBinaryExpression(NewField('', fld_ProveedoresSUBCONTRATA), NewConstant(1, datInteger), dboEqual);
Clear;
Expression := Condicion
end;
end;
function TProveedoresController.BuscarTodos: IBizContacto;
begin
Result := (FDataModule as IDataModuleProveedores).GetItems;
FiltrarEmpresa(Result);
end;
function TProveedoresController.BuscarTodosTiendaWeb: IBizProveedor;
begin
Result := (FDataModule as IDataModuleProveedores).GetItemsTiendaWeb;
FiltrarEmpresa(Result);
end;
constructor TProveedoresController.Create;
begin
inherited;
FDataModule := TDataModuleProveedores.Create(Nil);
FDireccionesController := TDireccionesContactoController.Create;
end;
function TProveedoresController.DarListaCuentasBancarias(const IdProveedor: Integer): TStringList;
var
AProveedor: IBizProveedor;
Aux : String;
begin
AProveedor := (Buscar(IdProveedor) as IBizProveedor);
AProveedor.DataTable.Active := True;
Result := TStringList.Create;
ShowHourglassCursor;
try
with Result do
begin
AProveedor.DatosBancarios.DataTable.First;
while not AProveedor.DatosBancarios.DataTable.EOF do
begin
Aux := Format('Nº de cuenta: %s %s %s %s - Titular: %s ', [AProveedor.DatosBancarios.ENTIDAD,
AProveedor.DatosBancarios.SUCURSAL, AProveedor.DatosBancarios.DC, AProveedor.DatosBancarios.CUENTA, AProveedor.DatosBancarios.TITULAR]);
Add(Format('%s=%d', [Aux, AProveedor.DatosBancarios.ID]));
AProveedor.DatosBancarios.DataTable.Next;
end;
end;
finally
AProveedor := NIL;
HideHourglassCursor;
end;
end;
function TProveedoresController.DarListaDescripcionesProveedores: TStringList;
begin
Result := (FDataModule as IDataModuleProveedores).DarListaDescripcionesProveedores;
end;
destructor TProveedoresController.Destroy;
begin
FDireccionesController := NIL;
inherited;
end;
function TProveedoresController.ElegirContacto(AContactos: IBizContacto;
AMensaje: String; AMultiSelect: Boolean): IBizContacto;
var
AEditor : IEditorElegirProveedores;
begin
Result := NIL;
CreateEditor('EditorElegirProveedores', IEditorElegirProveedores, AEditor);
if Assigned(AEditor) then
try
AEditor.Contactos := AContactos;
AEditor.Controller := Self;
AEditor.MultiSelect := AMultiSelect;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.ContactosSeleccionados;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
function TProveedoresController.ElegirDireccionEntrega(AProveedor: IBizProveedor;
AMensaje: String): IBizDireccionesContacto;
var
AEditor : IEditorElegirDireccionEntrega;
begin
Result := NIL;
CreateEditor('EditorElegirDireccionEntrega', IEditorElegirDireccionEntrega, AEditor);
if Assigned(AEditor) then
try
AEditor.Contacto := AProveedor;
AEditor.Mensaje := AMensaje;
if IsPositiveResult(AEditor.ShowModal) then
Result := AEditor.DireccionSeleccionada;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
function TProveedoresController.Eliminar(AProveedor: IBizContacto; AllItems: Boolean): Boolean;
//En el caso de eliminar almenos un elemento del conjunto se devuelve true
var
bEliminado: Boolean;
begin
bEliminado := False;
if not Assigned(AProveedor) then
raise Exception.Create ('Contacto no asignado');
ShowHourglassCursor;
try
if not AProveedor.DataTable.Active then
AProveedor.DataTable.Active := True;
if (AProveedor.State in dsEditModes) then
AProveedor.Cancel;
//Siempre eliminaremos el seleccionado
if EsEliminable(AProveedor) then
begin
AProveedor.Delete;
bEliminado := True;
end;
//En el caso de querer eliminar todos los items del objeto AProveedor
if AllItems then
begin
with AProveedor.DataTable do
begin
First;
while not EOF do
begin
if EsEliminable(AProveedor) then
begin
AProveedor.Delete;
bEliminado := True
end
else Next;
end;
end;
end;
if bEliminado then
begin
AProveedor.DataTable.ApplyUpdates;
Result := True;
end
else
Result := False;
HideHourglassCursor;
except
on E: Exception do
begin
AProveedor.DataTable.CancelUpdates;
HideHourglassCursor;
if (Pos('FOREIGN KEY', E.Message) > 0) then
MessageBox(0, 'No se pueden borrar el/los proveedor/es seleccionado/s porque, alguno/s de ellos tiene documentos dados de alta en la aplicación (pedidos, albaranes, facturas, etc)', 'Atención', MB_ICONWARNING or MB_OK);
end;
end;
end;
function TProveedoresController.EsEliminable(AProveedor: IBizContacto): Boolean;
begin
if not Assigned(AProveedor) then
raise Exception.Create ('Contacto no asignado: EsEliminable');
Result := True;
end;
function TProveedoresController.Nuevo: IBizContacto;
var
AContacto : IBizProveedor;
begin
AContacto := (FDataModule as IDataModuleProveedores).NewItem;
FiltrarEmpresa(AContacto);
AContacto.DataTable.Active := True;
AContacto.Insert;
Result := AContacto;
end;
procedure TProveedoresController.Preview(AProveedor: IBizProveedor; AllItems: Boolean);
var
AReportController : IEtiquetasContactosReportController;
ListaID: TIntegerList;
begin
AReportController := TEtiquetasContactosReportController.Create;
ListaID := TIntegerList.Create;
try
//Si deseamos previsualizar todos los items del objeto albaran
if AllItems then
begin
with AProveedor.DataTable do
begin
First;
while not EOF do
begin
ListaID.Add(AProveedor.ID);
Next;
end;
end;
end
//Solo previsualizamos el item seleccionado
else
ListaID.Add(AProveedor.ID);
AReportController.Preview(ListaID);
finally
AReportController := NIL;
FreeANDNil(ListaID);
end;
end;
procedure TProveedoresController.Print(AProveedor: IBizProveedor; AllItems: Boolean);
var
AReportController : IEtiquetasContactosReportController;
ListaID: TIntegerList;
begin
AReportController := TEtiquetasContactosReportController.Create;
ListaID := TIntegerList.Create;
try
//Si deseamos previsualizar todos los items del objeto albaran
if AllItems then
begin
with AProveedor.DataTable do
begin
First;
while not EOF do
begin
ListaID.Add(AProveedor.ID);
Next;
end;
end;
end
//Solo previsualizamos el item seleccionado
else
ListaID.Add(AProveedor.ID);
AReportController.Print(ListaID);
finally
AReportController := NIL;
FreeANDNil(ListaID);
end;
end;
procedure TProveedoresController.Ver(AContacto: IBizContacto);
var
AEditor : IEditorProveedor;
begin
AEditor := NIL;
CreateEditor('EditorProveedor', IEditorProveedor, AEditor);
if Assigned(AEditor) then
try
AEditor.Contacto := AContacto;
AEditor.Controller := Self;
AEditor.ShowModal;
finally
AEditor.Release;
AEditor := NIL;
end;
end;
procedure TProveedoresController.VerAlbaranesDeProveedor(
AProveedor: IBizProveedor);
var
AModule : TModuleController;
APlugin : IMCAlbaranesProveedor;
begin
if not Assigned(AProveedor) then
raise Exception.Create ('Proveedor no asignado (VerAlbaranesDeProveedor)');
if AProveedor.DataTable.Active then
AProveedor.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_ALBARANES_PROVEEDOR);
if Assigned(AModule) then
try
if Supports(AModule, IMCAlbaranesProveedor, APlugin) then
APlugin.VerAlbaranes(AProveedor.ID, AProveedor.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TProveedoresController.VerDevolucionesDeProveedor(
AProveedor: IBizProveedor);
var
AModule : TModuleController;
APlugin : IMCAlbaranesProveedor;
begin
if not Assigned(AProveedor) then
raise Exception.Create ('Proveedor no asignado (VerDevolucionesDeProveedor)');
if AProveedor.DataTable.Active then
AProveedor.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_ALBARANES_PROVEEDOR);
if Assigned(AModule) then
try
if Supports(AModule, IMCAlbaranesProveedor, APlugin) then
APlugin.VerDevoluciones(AProveedor.ID, AProveedor.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TProveedoresController.VerFacturasDeProveedor(
AProveedor: IBizProveedor);
var
AModule : TModuleController;
APlugin : IMCFacturasProveedor;
begin
if not Assigned(AProveedor) then
raise Exception.Create ('Proveedor no asignado (VerFacturasDeProveedor)');
if AProveedor.DataTable.Active then
AProveedor.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_FACTURAS_PROVEEDOR);
if Assigned(AModule) then
try
if Supports(AModule, IMCFacturasProveedor, APlugin) then
APlugin.VerFacturas(AProveedor.ID, AProveedor.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TProveedoresController.VerPedidosDeProveedor(
AProveedor: IBizProveedor);
var
AModule : TModuleController;
APlugin : IMCPedidosProveedor;
begin
if not Assigned(AProveedor) then
raise Exception.Create ('Proveedor no asignado (VerPedidosDeProveedor)');
if AProveedor.DataTable.Active then
AProveedor.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_PEDIDOS_PROVEEDOR);
if Assigned(AModule) then
try
if Supports(AModule, IMCPedidosProveedor, APlugin) then
APlugin.VerPedidos(AProveedor.ID, AProveedor.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TProveedoresController.VerRecibosDeProveedor(
AProveedor: IBizProveedor);
var
AModule : TModuleController;
APlugin : IMCRecibosProveedor;
begin
if not Assigned(AProveedor) then
raise Exception.Create ('Proveedor no asignado (VerRecibosDeProveedor)');
if AProveedor.DataTable.Active then
AProveedor.DataTable.Active := True;
AModule := AppFactuGES.GetModule(MODULENAME_RECIBOS_PROVEEDOR);
if Assigned(AModule) then
try
if Supports(AModule, IMCRecibosProveedor, APlugin) then
APlugin.VerRecibos(AProveedor.ID, AProveedor.NOMBRE);
finally
APlugin := NIL;
end;
end;
procedure TProveedoresController.VerTodos(AContactos: IBizContacto);
var
AEditor : IEditorProveedores;
begin
AEditor := NIL;
CreateEditor('EditorProveedores', IEditorProveedores, AEditor);
if Assigned(AEditor) then
with AEditor do
begin
Contactos := AContactos;
Controller := Self;
MultiSelect := True;
ShowEmbedded;
end;
end;
end.

View File

@ -104,12 +104,12 @@ begin
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosMedicacionController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este albarán de cliente', True);
AArticulos := (FArticulosController as IArticulosMedicacionController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir', True);
Add(ADetalles, AArticulos, ACantidad)
end
else
begin
AArticulos := (FArticulosController as IArticulosMedicacionController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a este albarán de cliente', False);
AArticulos := (FArticulosController as IArticulosMedicacionController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir', False);
RellenarDetalle(ADetalles, AArticulos, ACantidad);
end;
@ -124,19 +124,6 @@ begin
FArticulosController := TArticulosMedicacionController.Create;
end;
{procedure TDetallesMedicacionController.AsignarDatos(ADetalles: IDAStronglyTypedDataTable; IDCabecera: Integer);
begin
inherited;
with (ADetalles as IBizDetallesMedicacion) do
begin
Edit;
// ID := FDataModule.GetNextID(DataTable.LogicalName);
ID_ALBARAN := IDCabecera;
Post
end;
end;}
function TDetallesMedicacionController.CalcularImporteTotalConcepto(DataTable: TDADataTable): Double;
begin
Result := CalcularLineaConcepto(DataTable);

View File

@ -48,8 +48,6 @@ type
procedure RecuperarPaciente(AMedicacion: IBizMedicacion);
{function DarListaAnosAlbaranes: TStringList;
procedure FiltrarAno(AMedicacion: IBizMedicacion; ADynWhereDataTable: WideString; const Ano: String);}
end;
TMedicacionesController = class(TControllerBase, IMedicacionesController)
@ -198,15 +196,10 @@ begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end;
{function TMedicacionesController.DarListaAnosAlbaranes: TStringList;
begin
Result := FDataModule.GetAnosItems;
end;}
procedure TMedicacionesController.DescartarCambios(AMedicacion: IBizMedicacion);
begin
if not Assigned(AMedicacion) then
raise Exception.Create ('Albarán no asignado');
raise Exception.Create ('Medicación no asignada');
ShowHourglassCursor;
try
@ -277,11 +270,6 @@ begin
if (AMedicacion.Detalles.DataTable.RecordCount = 0) then
raise Exception.Create('La medicación debe tener en su contenido al menos un concepto');
//Validamos las fechas del albarán
// if not (EsFechaVacia(AMedicacion.FECHA_ENVIO)) then
// if AMedicacion.FECHA_ENVIO < AMedicacion.FECHA_PREVISTA_ENVIO then
// raise Exception.Create('La fecha de envio debe ser posterior a la fecha prevista de envio');
if AMedicacion.FECHA_HASTA < AMedicacion.FECHA_DESDE then
raise Exception.Create('La fecha final debe ser posterior a la fecha inicial');
@ -370,7 +358,7 @@ begin
AMedicacion := Buscar(ID);
if not Assigned(AMedicacion) then
raise Exception.Create(Format('No se ha encontrado el albarán con ID = %d', [ID]));
raise Exception.Create(Format('No se ha encontrado la medicación con ID = %d', [ID]));
Result := Eliminar(AMedicacion);
AMedicacion := NIL;
@ -405,7 +393,7 @@ begin
bEliminado := False;
if not Assigned(AMedicacion) then
raise Exception.Create ('Albarán no asignada');
raise Exception.Create ('Medicación no asignada');
ShowHourglassCursor;
try
@ -453,7 +441,7 @@ end;
function TMedicacionesController.EsEliminable(AMedicacion: IBizMedicacion): Boolean;
begin
if not Assigned(AMedicacion) then
raise Exception.Create ('Albarán no asignado: EsModificable');
raise Exception.Create ('Medicación no asignado: EsModificable');
Result := EsModificable(AMedicacion);
end;
@ -533,35 +521,6 @@ begin
Result := ASeleccionados;
end;
{procedure TMedicacionesController.FiltrarAno(AMedicacion: IBizMedicacion; ADynWhereDataTable: WideString; const Ano: String);
var
Condicion: TDAWhereExpression;
FechaIni: String;
FechaFin: String;
begin
AMedicacion.DataTable.DynamicWhere.Clear;
AMedicacion.DataTable.DynamicWhere.Xml := ADynWhereDataTable;
if (Ano <> 'Todos') then
begin
// Filtrar las facturas actuales por empresa
FechaIni := '01/01/' + Ano;
FechaFin := '31/12/' + Ano;
with AMedicacion.DataTable.DynamicWhere do
begin
// (FECHA_INICIO between FECHA_FIN)
Condicion := NewBinaryExpression(NewField('', fld_MedicacionFECHA_ALBARAN), NewConstant(FechaIni, datString), dboGreaterOrEqual);
Condicion := NewBinaryExpression(NewBinaryExpression(NewField('', fld_MedicacionFECHA_ALBARAN), NewConstant(FechaFin, datString), dboLessOrEqual), Condicion, dboAnd);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Condicion, Expression, dboAnd);
end;
end;
end; }
procedure TMedicacionesController.SetPacienteController(const Value: IPacientesController);
begin
FPacienteController := Value;
@ -577,7 +536,7 @@ begin
Result := False;
if not Assigned(AMedicacion) then
raise Exception.Create ('Albarán no asignada');
raise Exception.Create ('Medicación no asignada');
if not Assigned(FDetallesController) then
raise Exception.Create ('Controller detalles no asignado');

View File

@ -26,7 +26,7 @@ type
function _GetDetalles : IBizDetallesMedicacion;
protected
procedure AsignarClaseNegocio(AAlbaran: TDADataTable); virtual;
procedure AsignarClaseNegocio(AMedicacion: TDADataTable); virtual;
public
function GetItems : IBizMedicacion; virtual;
@ -47,9 +47,9 @@ uses
{ TdmMedicacion }
procedure TDataModuleMedicacion.AsignarClaseNegocio(AAlbaran: TDADataTable);
procedure TDataModuleMedicacion.AsignarClaseNegocio(AMedicacion: TDADataTable);
begin
AAlbaran.BusinessRulesID := BIZ_CLIENT_MEDICACION;
AMedicacion.BusinessRulesID := BIZ_CLIENT_MEDICACION;
end;
procedure TDataModuleMedicacion.DAClientDataModuleCreate(Sender: TObject);

View File

@ -38,23 +38,23 @@
<DelphiCompile Include="Medicaciones_model.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="adortl.dcp" />
<DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\ApplicationBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Contactos_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dsnap.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D11.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="Data\uIDataModuleMedicacion.pas" />
<DCCReference Include="Data\uIDataModuleMedicacionReport.pas" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="schMedicacionClient_Intf.pas" />
<DCCReference Include="schMedicacionServer_Intf.pas" />
<DCCReference Include="uBizDetallesMedicacion.pas" />
<DCCReference Include="uBizMedicaciones.pas" />
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vcldb.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

View File

@ -32,7 +32,7 @@ uses
const
REF_MEDICACIONES = 'REF_MEDICACIONES';
{ TBizAlbaranClienteServer }
{ TBizMedicacionServer }
procedure TBizMedicacionServer.AfterProcessChange(
Sender: TDABusinessProcessor; aChange: TDADeltaChange; Processed: Boolean;

View File

@ -71,7 +71,7 @@ uses
SysUtils, Variants, uDataModuleConfiguracion, uDataModuleUsuarios,
uDataTableUtils, DateUtils, uDateUtils, DB, uFactuGES_App;
{ TBizAlbaranPaciente }
{ TBizMedicacion }
constructor TBizMedicacion.Create(aDataTable: TDADataTable);
begin

View File

@ -52,13 +52,13 @@
<DelphiCompile Include="Medicaciones_plugin.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Medicaciones_controller.dcp" />
<DCCReference Include="..\Medicaciones_view.dcp" />
<DCCReference Include="..\ApplicationBase.dcp" />
<DCCReference Include="..\Articulos_view.dcp" />
<DCCReference Include="..\Base.dcp" />
<DCCReference Include="..\Contactos_view.dcp" />
<DCCReference Include="..\GUIBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\ApplicationBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Articulos_view.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Contactos_view.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Medicaciones_controller.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Medicaciones_view.dcp" />
<DCCReference Include="uPluginMedicaciones.pas">
<Form>PluginMedicaciones</Form>
</DCCReference>

View File

@ -74,17 +74,18 @@ requires
vclshlctrls,
dxPScxGrid6LnkD11,
dclcxLibraryD11,
JSDialog100;
JSDialog100,
JvCtrlsD11R;
contains
uMedicacionesViewRegister in 'uMedicacionesViewRegister.pas',
uViewMedicaciones in 'uViewMedicaciones.pas' {frViewMedicaciones: TFrame},
uViewMedicacion in 'uViewMedicacion.pas' {frViewMedicacion: TFrame},
uViewDatosYSeleccionPacienteMedicacion in 'uViewDatosYSeleccionPacienteMedicacion.pas' {frViewDatosYSeleccionClienteMedicacion: TCustomView},
uViewDetallesMedicacion in 'uViewDetallesMedicacion.pas' {frViewDetallesMedicacion: TFrame},
uEditorMedicacion in 'uEditorMedicacion.pas' {fEditorMedicacion: TFrame},
uEditorMedicaciones in 'uEditorMedicaciones.pas' {fEditorMedicaciones: TEditor},
uViewElegirArticulosMedicaciones in 'uViewElegirArticulosMedicaciones.pas' {frViewElegirArticulosMedicaciones: TFrame},
uEditorElegirArticulosMedicaciones in 'uEditorElegirArticulosMedicaciones.pas' {fEditorElegirArticulosMedicaciones: TEditor};
uEditorElegirArticulosMedicaciones in 'uEditorElegirArticulosMedicaciones.pas' {fEditorElegirArticulosMedicaciones: TEditor},
uViewDatosYSeleccionPacienteMedicacion in 'uViewDatosYSeleccionPacienteMedicacion.pas' {frViewDatosYSeleccionPacienteMedicacion: TFrame};
end.

View File

@ -51,6 +51,14 @@
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclIntraweb_80_100.bpl">File c:\archivos de programa\borland\delphi10\Bin\dclIntraweb_80_100.bpl not found</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclnet100.bpl">File c:\archivos de programa\borland\delphi10\Bin\dclnet100.bpl not found</Excluded_Packages>
<Excluded_Packages Name="c:\archivos de programa\borland\delphi10\Bin\dclsoap100.bpl">File c:\archivos de programa\borland\delphi10\Bin\dclsoap100.bpl not found</Excluded_Packages>
@ -62,56 +70,50 @@
<DelphiCompile Include="Medicaciones_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Articulos\Views\adortl.dcp" />
<DCCReference Include="..\..\Articulos\Views\ApplicationBase.dcp" />
<DCCReference Include="..\..\Articulos\Views\Articulos_view.dcp" />
<DCCReference Include="..\..\Articulos\Views\Base.dcp" />
<DCCReference Include="..\..\Articulos\Views\Contactos_model.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxDataD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxEditorsD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxExportD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxGridD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\cxPageControlD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dbrtl.dcp" />
<DCCReference Include="..\..\Articulos\Views\dclcxLibraryD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\designide.dcp" />
<DCCReference Include="..\..\Articulos\Views\dsnap.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxComnD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxCoreD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxLayoutControlD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxPSCoreD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxPScxCommonD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxPSLnksD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\dxThemeD11.dcp" />
<DCCReference Include="..\..\Articulos\Views\GUIBase.dcp" />
<DCCReference Include="..\..\Articulos\Views\GUISDK_D11R.dcp" />
<DCCReference Include="..\..\Articulos\Views\Jcl.dcp" />
<DCCReference Include="..\..\Articulos\Views\JclVcl.dcp" />
<DCCReference Include="..\..\Articulos\Views\JSDialog100.dcp" />
<DCCReference Include="..\..\Articulos\Views\JvCoreD11R.dcp" />
<DCCReference Include="..\..\Articulos\Views\JvPageCompsD11R.dcp" />
<DCCReference Include="..\..\Articulos\Views\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\Articulos\Views\JvSystemD11R.dcp" />
<DCCReference Include="..\..\Articulos\Views\Medicaciones_controller.dcp" />
<DCCReference Include="..\..\Articulos\Views\Medicaciones_model.dcp" />
<DCCReference Include="..\..\Articulos\Views\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Articulos\Views\PNG_D10.dcp" />
<DCCReference Include="..\..\Articulos\Views\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Articulos\Views\rtl.dcp" />
<DCCReference Include="..\..\Articulos\Views\tb2k_d10.dcp" />
<DCCReference Include="..\..\Articulos\Views\tbx_d10.dcp" />
<DCCReference Include="..\..\Articulos\Views\vcl.dcp" />
<DCCReference Include="..\..\Articulos\Views\vclactnband.dcp" />
<DCCReference Include="..\..\Articulos\Views\vcldb.dcp" />
<DCCReference Include="..\..\Articulos\Views\vcljpg.dcp" />
<DCCReference Include="..\..\Articulos\Views\vclshlctrls.dcp" />
<DCCReference Include="..\..\Articulos\Views\vclx.dcp" />
<DCCReference Include="..\..\Articulos\Views\xmlrtl.dcp" />
<DCCReference Include="adortl.dcp" />
<DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Articulos_view.dcp" />
<DCCReference Include="Base.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="cxDataD11.dcp" />
<DCCReference Include="cxEditorsD11.dcp" />
<DCCReference Include="cxExportD11.dcp" />
<DCCReference Include="cxExtEditorsD11.dcp" />
<DCCReference Include="cxGridD11.dcp" />
<DCCReference Include="cxLibraryD11.dcp" />
<DCCReference Include="cxPageControlD11.dcp" />
<DCCReference Include="DataAbstract_Core_D11.dcp" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="dclcxLibraryD11.dcp" />
<DCCReference Include="designide.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="dxComnD11.dcp" />
<DCCReference Include="dxCoreD11.dcp" />
<DCCReference Include="dxGDIPlusD11.dcp" />
<DCCReference Include="dxLayoutControlD11.dcp" />
<DCCReference Include="dxPSCoreD11.dcp" />
<DCCReference Include="dxPScxCommonD11.dcp" />
<DCCReference Include="dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="dxPSLnksD11.dcp" />
<DCCReference Include="dxThemeD11.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="GUISDK_D11R.dcp" />
<DCCReference Include="Jcl.dcp" />
<DCCReference Include="JclVcl.dcp" />
<DCCReference Include="JSDialog100.dcp" />
<DCCReference Include="JvCoreD11R.dcp" />
<DCCReference Include="JvCtrlsD11R.dcp" />
<DCCReference Include="JvPageCompsD11R.dcp" />
<DCCReference Include="JvStdCtrlsD11R.dcp" />
<DCCReference Include="JvSystemD11R.dcp" />
<DCCReference Include="Medicaciones_controller.dcp" />
<DCCReference Include="Medicaciones_model.dcp" />
<DCCReference Include="PngComponentsD10.dcp" />
<DCCReference Include="PNG_D10.dcp" />
<DCCReference Include="RemObjects_Core_D11.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="tb2k_d10.dcp" />
<DCCReference Include="tbx_d10.dcp" />
<DCCReference Include="uEditorElegirArticulosMedicaciones.pas">
<Form>fEditorElegirArticulosMedicaciones</Form>
<DesignClass>TEditor</DesignClass>
@ -126,15 +128,15 @@
</DCCReference>
<DCCReference Include="uMedicacionesViewRegister.pas" />
<DCCReference Include="uViewDatosYSeleccionPacienteMedicacion.pas">
<Form>frViewDatosYSeleccionClienteMedicacion</Form>
<DesignClass>TCustomView</DesignClass>
<Form>TfrViewDatosYSeleccionPacienteMedicacion</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewDetallesMedicacion.pas">
<Form>frViewDetallesMedicacion</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewElegirArticulosMedicaciones.pas">
<Form>fruViewElegirArticulosMedicaciones</Form>
<Form>frViewElegirArticulosMedicaciones</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewMedicacion.pas">
@ -145,6 +147,13 @@
<Form>frViewMedicaciones</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vclactnband.dcp" />
<DCCReference Include="vcldb.dcp" />
<DCCReference Include="vcljpg.dcp" />
<DCCReference Include="vclshlctrls.dcp" />
<DCCReference Include="vclx.dcp" />
<DCCReference Include="xmlrtl.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

View File

@ -164,155 +164,93 @@ inherited fEditorMedicacion: TfEditorMedicacion
end
inherited pgPaginas: TPageControl
Width = 759
Height = 526
Height = 186
Align = alTop
TabOrder = 1
TabStop = False
ExplicitWidth = 759
ExplicitHeight = 526
ExplicitHeight = 186
inherited pagGeneral: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
ExplicitWidth = 751
ExplicitHeight = 411
end
object pagContenido: TTabSheet
Caption = 'Contenido'
ImageIndex = 1
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 411
inline frViewDetallesMedicacion1: TfrViewDetallesMedicacion
ExplicitHeight = 126
inline frViewMedicacion1: TfrViewMedicacion
Left = 0
Top = 0
Width = 751
Height = 498
Align = alClient
BiDiMode = bdLeftToRight
Height = 164
Align = alTop
AutoSize = True
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentBiDiMode = False
ParentFont = False
TabOrder = 0
ReadOnly = False
ExplicitTop = -158
ExplicitWidth = 751
ExplicitHeight = 411
inherited ToolBar1: TToolBar
inherited dxLayoutControl1: TdxLayoutControl
Width = 751
Height = 46
ExplicitWidth = 751
ExplicitHeight = 46
inherited ToolButton3: TToolButton
Wrap = False
inherited edtFechaHasta: TcxDBDateEdit
Left = 267
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 267
ExplicitWidth = 182
Width = 182
end
inherited ToolButton4: TToolButton
Left = 184
Top = 0
Wrap = True
ExplicitLeft = 184
ExplicitTop = 0
inherited eReferencia: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 277
Width = 277
end
inherited ToolButton14: TToolButton
Left = 0
Wrap = False
ExplicitLeft = 0
inherited edtFechaDesde: TcxDBDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 200
Width = 200
end
inherited FontName: TJvFontComboBox
Left = 65
Top = 22
ExplicitLeft = 65
ExplicitTop = 22
inherited frViewDatosYSeleccionPacienteMedicacion1: TfrViewDatosYSeleccionPacienteMedicacion
Left = 388
Width = 533
ExplicitLeft = 388
ExplicitWidth = 533
inherited dxLayoutControl1: TdxLayoutControl
Width = 533
ExplicitWidth = 347
inherited edtlNombre: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 224
Width = 224
end
inherited edtNUMERO_SS: TcxDBTextEdit
Left = 228
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 228
end
inherited Button3: TBitBtn
Left = 139
ExplicitLeft = 139
end
end
end
inherited FontSize: TEdit
Left = 210
Top = 22
Width = 122
ExplicitLeft = 210
ExplicitTop = 22
ExplicitWidth = 122
end
inherited UpDown1: TUpDown
Left = 332
Top = 22
ExplicitLeft = 332
ExplicitTop = 22
end
inherited ToolButton13: TToolButton
Left = 349
Top = 22
ExplicitLeft = 349
ExplicitTop = 22
end
inherited ToolButton6: TToolButton
Left = 357
Top = 22
ExplicitLeft = 357
ExplicitTop = 22
end
inherited ToolButton7: TToolButton
Left = 423
Top = 22
ExplicitLeft = 423
ExplicitTop = 22
end
inherited ToolButton8: TToolButton
Left = 490
Top = 22
ExplicitLeft = 490
ExplicitTop = 22
end
inherited ToolButton12: TToolButton
Left = 573
Top = 22
ExplicitLeft = 573
ExplicitTop = 22
end
inherited ToolButton9: TToolButton
Left = 581
Top = 22
ExplicitLeft = 581
ExplicitTop = 22
end
inherited ToolButton10: TToolButton
Left = 726
Top = 22
ExplicitLeft = 726
ExplicitTop = 22
end
inherited ToolButton11: TToolButton
Left = 851
Top = 22
ExplicitLeft = 851
ExplicitTop = 22
end
end
inherited cxGrid: TcxGrid
Top = 72
Width = 751
Height = 426
ExplicitTop = 77
ExplicitWidth = 751
ExplicitHeight = 334
end
inherited TBXDock1: TTBXDock
Top = 46
Width = 751
ExplicitTop = 51
ExplicitWidth = 751
inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 751
end
end
inherited cxGridPopupMenu: TcxGridPopupMenu
PopupMenus = <
item
GridView = frViewDetallesMedicacion1.cxGridView
HitTypes = [gvhtNone, gvhtCell, gvhtRecord, gvhtRowIndicator]
Index = 0
PopupMenu = frViewDetallesMedicacion1.GridGeneralPopupMenu
end>
end
end
end
@ -324,10 +262,147 @@ inherited fEditorMedicacion: TfEditorMedicacion
item
Width = 200
end>
ExplicitTop = 566
ExplicitTop = 608
ExplicitWidth = 765
end
inherited EditorActionList: TActionList
inline frViewDetallesMedicacion1: TfrViewDetallesMedicacion [4]
Left = 0
Top = 268
Width = 765
Height = 340
Align = alClient
BiDiMode = bdLeftToRight
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentBiDiMode = False
ParentFont = False
TabOrder = 4
ReadOnly = False
ExplicitTop = 164
ExplicitWidth = 751
ExplicitHeight = 334
inherited ToolBar1: TToolBar
Width = 765
Height = 51
ExplicitWidth = 765
ExplicitHeight = 51
inherited ToolButton4: TToolButton [2]
Left = 129
Wrap = False
ExplicitLeft = 129
end
inherited ToolButton14: TToolButton [3]
Left = 185
ExplicitLeft = 185
ExplicitTop = 0
end
inherited FontName: TJvFontComboBox [4]
Left = 250
Top = 0
ExplicitLeft = 250
ExplicitTop = 0
end
inherited ToolButton13: TToolButton [5]
Left = 395
Top = 0
Wrap = False
ExplicitLeft = 395
ExplicitTop = 0
ExplicitHeight = 22
end
inherited ToolButton6: TToolButton [6]
Left = 403
Top = 0
ExplicitLeft = 403
ExplicitTop = 0
end
inherited ToolButton7: TToolButton [7]
Left = 469
Top = 0
Enabled = True
ExplicitLeft = 469
ExplicitTop = 0
end
inherited ToolButton8: TToolButton [8]
Left = 536
Top = 0
ExplicitLeft = 536
ExplicitTop = 0
end
inherited ToolButton12: TToolButton [9]
Top = 0
ExplicitTop = 0
end
inherited ToolButton3: TToolButton [10]
Left = 0
Top = 27
ExplicitLeft = 0
ExplicitTop = 27
end
inherited FontSize: TEdit [11]
Left = 55
Top = 27
Width = 170
ExplicitLeft = 55
ExplicitTop = 27
ExplicitWidth = 170
end
inherited UpDown1: TUpDown [12]
Left = 241
Top = 27
ExplicitLeft = 241
ExplicitTop = 27
end
inherited ToolButton9: TToolButton [13]
Left = 258
Top = 27
ExplicitLeft = 258
ExplicitTop = 27
end
inherited ToolButton10: TToolButton
Left = 403
Top = 27
ExplicitLeft = 403
ExplicitTop = 27
end
inherited ToolButton11: TToolButton
Left = 528
Top = 27
ExplicitLeft = 528
ExplicitTop = 27
end
end
inherited cxGrid: TcxGrid
Top = 77
Width = 765
Height = 263
ExplicitTop = 77
ExplicitWidth = 751
ExplicitHeight = 257
end
inherited TBXDock1: TTBXDock
Top = 51
Width = 765
ExplicitTop = 51
ExplicitWidth = 751
inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 472
end
end
inherited cxGridPopupMenu: TcxGridPopupMenu
PopupMenus = <
item
GridView = frViewDetallesMedicacion1.cxGridView
HitTypes = [gvhtNone, gvhtCell, gvhtRecord, gvhtRowIndicator]
Index = 0
PopupMenu = frViewDetallesMedicacion1.GridGeneralPopupMenu
end>
end
end
inherited EditorActionList: TActionList [5]
Left = 32
Top = 96
object actEnviarEMail: TAction
@ -338,7 +413,7 @@ inherited fEditorMedicacion: TfEditorMedicacion
Visible = False
end
end
inherited SmallImages: TPngImageList
inherited SmallImages: TPngImageList [6]
PngImages = <
item
PngImage.Data = {
@ -844,7 +919,7 @@ inherited fEditorMedicacion: TfEditorMedicacion
end>
Bitmap = {}
end
inherited LargeImages: TPngImageList
inherited LargeImages: TPngImageList [7]
PngImages = <
item
PngImage.Data = {
@ -1640,9 +1715,9 @@ inherited fEditorMedicacion: TfEditorMedicacion
end>
Bitmap = {}
end
inherited JvAppRegistryStorage: TJvAppRegistryStorage [8]
inherited JvFormStorage: TJvFormStorage [8]
end
inherited dsDataTable: TDADataSource [9]
inherited dsDataTable: TDADataSource [10]
Left = 24
Top = 136
end

View File

@ -17,7 +17,6 @@ uses
type
TfEditorMedicacion = class(TfEditorDBItem, IEditorMedicacion)
pagContenido: TTabSheet;
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
frViewDetallesMedicacion1: TfrViewDetallesMedicacion;
@ -26,6 +25,7 @@ type
TBXItem7: TTBXItem;
TBXItem33: TTBXItem;
TBXSeparatorItem6: TTBXSeparatorItem;
frViewMedicacion1: TfrViewMedicacion;
procedure FormShow(Sender: TObject);
procedure CustomEditorClose(Sender: TObject; var Action: TCloseAction);
@ -83,11 +83,9 @@ procedure TfEditorMedicacion.AsignarVista;
var
AViewMedicacion: TfrViewMedicacion;
begin
AViewMedicacion := TfrViewMedicacion.create(Self);
AViewMedicacion := frViewMedicacion1;
with AViewMedicacion do
begin
Parent := pagGeneral;
Align := alClient;
dxLayoutControl1.LookAndFeel := dxLayoutOfficeLookAndFeel1;
end;
ViewMedicacion := AViewMedicacion;

View File

@ -1611,319 +1611,6 @@ inherited fEditorMedicaciones: TfEditorMedicaciones
Caption = '-'
end
end
object JsNuevoMedicacionDialog: TJSDialog
Content.Strings = (
#191'C'#243'mo desea dar de alta el albar'#225'n?')
DialogOptions = [doCommandLinks, doModal]
Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB5193000003104944415478DAAD96FB4B14
5114C7CFE463DC1E606444BFF54424D3DC55CA52B1CCD7165A219905054182FD
1452FD5810FD100406610A669A998FC4F5BDB6266265DAB60F5DD15E58FE03B2
3F99D29ABBA7B9779C71C61D9D6177CFCE70CFDCB97B3EF7DCF3BD33C38082FD
B502B2B300CC656020048688A24F036233A0671F40D43160BA87BF62AEEE1010
60D7AE293AD8B835815E9B625C80DC8F1E88D4A7C1E8C1FB8F9FD6C3C44035B3
21500A65F6D700FE2EA580A5EC551F4A50359316B31D76EFDC0EE5F72A645045
A067AE0623074B8140891108F1057064CC0D556053DF173812B707E6DCF332A8
225080D201DB4AF99BF335B4D502F371415BCC364833C4C29F458F0C2A031281
081734AB0B3C88403C1E6E3E2E7960F6A8FFD27A7D3EF07A11DA2C76C84A8D87
A57FCB32E8B8A54A4C8C21B59365C9015996EF2240B6634DF435B51460A46D1F
70C093AA46BF09C980C12CA914E6F371ADD707EF1DB3B0B0B8006EB79B8EA96B
EA5106121851245129118FD8BFA2DC5C53C6BAF5EBBBBA97C2D64EC064195B1F
286C76E956A0EA5C51AEB4764A9929F5750D5A9581D2274B9B651C0BA2F514A8
6F28E36B70AD9A4253EF97A9AA55B0CEBA87D03B645B3F43C1DE589C58186D10
81150FCAC57B11E161B04517099BB953C78643141B01BA28EEE4DAB0B04DE2B8
CA460B9C399902E661BB3AB0F5AD038BF30CD4D7E7DD14815A61023027DD00EF
469C1A80FD1C307F1578FD4A81E665945AD68924181A9D5007B6F4DBF1527E32
F5C9D3632351F8F549AEE916B14EAA039BCD362C31A6040D23E7887D4A03B0CF
86C5C6641A24BB7646D3F2D51A77F8C1BCDCFFC79CD3EAC0D7BD56AE86294165
4660CB5C6B737DD3062CCA31D00069E76E05241862CF1EDD05E7D40F756063CF
673C7F5A4F679A59541EF03E4C8C3B0893DF67D481AFBAC7B0F05412CD30EBE2
ED80F7617CEC0198FEF94B1BF06C6622AD4B4EC99D80F7A1666043D7281A3312
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Text = 'Nuevo albar'#225'n de cliente'
Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
520000000467414D410000B18E7CFB5193000003104944415478DAAD96FB4B14
5114C7CFE463DC1E606444BFF54424D3DC55CA52B1CCD7165A219905054182FD
1452FD5810FD100406610A669A998FC4F5BDB6266265DAB60F5DD15E58FE03B2
3F99D29ABBA7B9779C71C61D9D6177CFCE70CFDCB97B3EF7DCF3BD33C38082FD
B502B2B300CC656020048688A24F036233A0671F40D43160BA87BF62AEEE1010
60D7AE293AD8B835815E9B625C80DC8F1E88D4A7C1E8C1FB8F9FD6C3C44035B3
21500A65F6D700FE2EA580A5EC551F4A50359316B31D76EFDC0EE5F72A645045
A067AE0623074B8140891108F1057064CC0D556053DF173812B707E6DCF332A8
225080D201DB4AF99BF335B4D502F371415BCC364833C4C29F458F0C2A031281
081734AB0B3C88403C1E6E3E2E7960F6A8FFD27A7D3EF07A11DA2C76C84A8D87
A57FCB32E8B8A54A4C8C21B59365C9015996EF2240B6634DF435B51460A46D1F
70C093AA46BF09C980C12CA914E6F371ADD707EF1DB3B0B0B8006EB79B8EA96B
EA5106121851245129118FD8BFA2DC5C53C6BAF5EBBBBA97C2D64EC064195B1F
286C76E956A0EA5C51AEB4764A9929F5750D5A9581D2274B9B651C0BA2F514A8
6F28E36B70AD9A4253EF97A9AA55B0CEBA87D03B645B3F43C1DE589C58186D10
81150FCAC57B11E161B04517099BB953C78643141B01BA28EEE4DAB0B04DE2B8
CA460B9C399902E661BB3AB0F5AD038BF30CD4D7E7DD14815A61023027DD00EF
469C1A80FD1C307F1578FD4A81E665945AD68924181A9D5007B6F4DBF1527E32
F5C9D3632351F8F549AEE916B14EAA039BCD362C31A6040D23E7887D4A03B0CF
86C5C6641A24BB7646D3F2D51A77F8C1BCDCFFC79CD3EAC0D7BD56AE86294165
4660CB5C6B737DD3062CCA31D00069E76E05241862CF1EDD05E7D40F756063CF
673C7F5A4F679A59541EF03E4C8C3B0893DF67D481AFBAC7B0F05412CD30EBE2
ED80F7617CEC0198FEF94B1BF06C6622AD4B4EC99D80F7A1666043D7281A3312
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Icon = tdiCustom
CustomButtons = <
item
Caption = 'Albar'#225'n nuevo vac'#237'o.'
Value = 100
end
item
Caption = 'Utilizar un pedido de cliente.'
Value = 200
Info.Strings = (
'Puede utilizar un pedido de cliente existente para dar de alta e' +
'l albar'#225'n nuevo.')
end>
ButtonBar.Buttons = [cbCancel]
MainIcon = tdiCustom
Title = 'FactuGES'
Position = dpMainFormCenter
Icon.Data = {
0000010003002020100001000400E8020000360000002020000001000800A808
00001E0300002020000001002000A8100000C60B000028000000200000004000
0000010004000000000000020000000000000000000000000000000000000000
000000008000008000000080800080000000800080008080000080808000C0C0
C0000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFFFF000000
0000000000000000000000000000000008777777777777777777777700000000
0877767777677776777767760000000008F88888888888888888888700000000
08F8FF8F8F888888888888860000000008FF8F8F88F8F8888888888C00000000
08F88888F8888888888888860000000008F8688878E8888E88E8788700000000
08F8688888F8F8FFFFFF88760000000008FF4888888F8FFFFFFF788700000000
08F8676767677677677658E50000000008FF8888888887878787888700000000
08FF8887887E8888888888860000000008FFE8E8E788C8E8FF8F8F8600000000
08FFF8F8F8F8FF8F88F8F8870000000008FFFFFF8FF8F8F8F88F888600000000
0FF8477878787878788788860000000008FF68888888F8FF8F8F788700000000
08B7588888FF8FFFFFFF78860000083008BB47887776777777776F86000000B7
8B9B73BB88788787E87878870000008BB8B9BB78888888EFF8F8FF8600000087
B8BB8B888E8E8E88FFF8F886000000088BBB888FFFFFFFFFF8F877770000B9BB
B8FFBB9B9BFFFFFFF87466460000BBB9BB8FBBBBB8FFFFFFF88F888700000008
B8BB88888FFFFFFFF88F8F7700000008BBBBBB8FFFFFFFFFFF8887700000007B
B7B98BB8FFFFFFFFF8887700000000B78B9B87B888F88F88F8877000000007B0
08BB883B78888788787700000000000000B9000000000000000000000000FFFF
FFFFF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000F9800000FC000000FC000000FC000000FE000000F0000
000F0000000FE000000FE000001FC000003FC000007F980000FFFCFFFFFF2800
0000200000004000000001000800000000000004000000000000000000000001
00000001000000000000694731007C5D49007E604C0081635000826451008567
540085685500886B5900896D5B008A6E5D008B705F008E715F008B7260008C72
61008E74640084766C00957A6900977D6D00887B72009A8171009D8272009C84
76009D8778009F897B00A28A7900A08B7D00A18C7E00E1B06E00E1B67D003E7A
970073A0A5007AA2B70074AFBD007BB2BB003CAACE0028A5DB0020ADDF000D9A
E500209EE3000DA6E2001AA4EF0000A6FF000CABFE0009ACFE0010A4F10015AC
FA0000B5FB0000B0FD000CB6FC0000BFF90000BAFD0004BAFD0009BBFB0013B6
F40015BFFA001CBDFB0026B7FD00589EC50040A4CD0040ABCC0050A2C7005DAE
C00060A3C20062A4C60060B7CB006AB0CD007BB6C80077BAC80061BADD0044AD
E50000C3F80007C6FB0000CAF80000CFFB0000D4F90026C8FA0026CDF8002BCC
F90039C4FB0039C2FC0039CAFA003FCFFB0024D6F80030D2F80039D5F80000F8
F8001FF8F8002CF6F8003EF4F8005AC6DC0070CDDF0052C0E40054C9E3004DCE
FA005FC7FF004FD2FB004DD9F8005FD9FB006ED3E70063CDFE0060D1FB0060D8
F90060DDF80046F8F90056F0F8005FFAFA0073E3F80073E4F90073EEF80060F1
F800958A84009A918C0081999500A68F8200AD968500A3968C00AE988900AD9A
8D00B19A8B00AF9C9000B09E9200B59F9200B7A29300B2A19600B5A19400B7A4
9700BDA79700B4A39800B1A59D00B4A79F00BAA69800BCA79900B4A89F00BCA8
9900BAA89C00BDAA9D00BEAC9E0083ADBD00B5A9A100BDABA000BEADA100BFAF
A500A0BABE00C0AB9E00C1AC9E00C6AE9F00E2B98100E4BA8300E4BB8400E5BC
8500E1BD8E00E3BF9000C0ADA000C2B0A300C2B1A500C4B2A600C1B2A800C3B5
AB00C8B4A800CCB9AD00CEBCB100D0BEB200D1BFB400E4C19300E5C29400E6C4
9600E8C69900D0C9A300CFC1B800D2C1B600D3C3B800D5C4B900D6C6BC00D8C6
BC00D6C8BE00DAC9BF00ECD3B000EDD4B200EFD6B500E7D1B800E7D3BD00F0D8
B6008CB7C40080BEC70097C3C70099C3C900ABD7CF00AFD9DD0086E3F90086E7
F90086ECF8009EE5FB0090E8F900ACEDFC00BCEAFD00BCF1FB00BFF1FD00D7C9
C000D9CAC100DCCBC200DACCC200DDCCC300DACCC400DDCEC400DED0C600DED1
C900DED3CC00DFD4CD00E1D1C900E2D5CD00F0DCC200E3D8D200E5D9D200E2DA
D500E6DBD400E5DCD500E8DDD600E6DDD800E9DFD900E6E0DB00EAE0DA00EAE2
DD00ECE3DE00EBE4DE00ECE4DE00F3E7D900C6E1EF00C9EFFD00D7F6FD00DFF3
FF00DFFEFE00EBE7E300EDE6E100EFE7E400EEE8E400F0EAE600F2EDE900F2EE
EC00F4EFEC00F5F0EE00F9F4ED00E7FAFD00EBF8FF00F6F2F000F7F4F100F8F4
F200F9F7F500FAF8F600FBF9F900FCFBFA00FCFCFB00FEFEFE00000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000007D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D0D
0D0D0000000000000000009C9C19191919191919191919191919191919191919
1903000000000000000000ABDECBCBC7C7AFABABABABAAA3A2A2A0A0A0A0A0A0
8607000000000000000000ABECEAE9DEDEDEDED7D5D2D2D2CBCBCBCBB0CBB0CB
9007000000000000000000ABEDECEAE9DEDEDBD7D7D5D2D2D2CDCDCBB0B0B0B0
9007000000000000000000AFEDE9A9CFD2CFD2CDCBCBCBB0B0ABACA3A3A3A3B0
9007000000000000000000AFF0D5017783838386868686869099909999907BB0
9007000000000000000000B0F4D501A0B0CBD2D5DEECEDF7FAFAFAFAFAF77BAA
9007000000000000000000CBF4DC01A0B0B0B0D2D5DBEAEDF7FAFAFAFAF47BB0
9007000000000000000000CBF8DC010404070604090909090D0D110D110D02A3
9007000000000000000000CBFAED9E9E9E9C999E8C8C8C868683837E7D7D7ACB
9007000000000000000000CBFAF1A7A7A6A6A6A69898989898B5DBDBD5D5D2D2
9907000000000000000000CDFAF796969696961D961D931D1DB4DEDBD7D5D5D2
9C07000000000000000000CFFAFAFAFAF8F7F0F0EDEDEDECE9E9DEDEDED7D5D5
9907000000000000000000CDFAFAEAF0EDEDECEAEAE9DEDEDBDCD5D5D5D5D2D5
9C07000000000000000000D2FAEC01737D7D7B7D7D7B7D7B7D7B7B7B7D7B7DD2
9907000000000000000000CFFAEC019EABB0CBD2D5DCDEECEDF4F4F4F4EA7BD2
9C07000000000000000000B9524601A0B0B0CBB5D5DEEAEDF7FAFAFAFAF47DD5
9C070000000000213F0000B83226010C3F5C1F111214141616191B1B1B1807D2
9C07000000000000253D8A5B322D711E2860BA7E7E7A7E797A797979767676D5
9E0700000000000041375E662F2B65314EBBB6B6B6B6B4B4B1E2F4EDEDEDECEA
9C070000000000008F5D66663232394EC1A81C1C1C1C1C1C1CD3F7F4EDDED7D5
9C0700000000000000B7BE6E5758BEBDE4E6E6F3FAFAFAFAFAFAF7F4D5928675
7304000000002A2A2A2A4A6AFAE7562F2A2A2A5FFAFAFAFAFAFAF8D577010101
0101000000004747472F4A59C5E7564A32474766FAFAFAFAFAFAFADCA0D2CFB0
A20C00000000000000436C6958686D6BC2C5C5E7FAFAFAFAFAFAFADEAADEDBCB
1470000000000000004551534A4A5250C0E7FAFAFAFAFAFAFAFAFADEAAD7B514
700000000000000042384C54472B613550C3FAFAFAFAFAFAFAFAFADEA1B0196F
000000000000000024234463322EBC5A3664E3ECE9E9E9E9E9E9E9CF90731300
000000000000003A3C00002232298B8B3E3B207E8B7E8B7E827E817E74100000
0000000000000000000000003227000000000000000000000000000000000000
000000000000FFFFFFFFF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800
000FF800000FF800000FF800000FF800000F9800000FC000000FC000000FC000
000FE000000F0000000F0000000FE000000FE000001FC000003FC000007F9800
00FFFCFFFFFF2800000020000000400000000100200000000000801000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000007067
5F70AA9382E570513CE3735540E3735540E3735540E3735540E3735540E37355
40E3735540E3735540E3735540E3735540E3735540E3735540E3735540E37355
40E3735540E3735540E3735540E3735540E3735540E3735540E372533EE5BAAB
A070000000000000000000000000000000000000000000000000000000005E54
4C7FCAB7ABFFC5B5AAFFA18877FFA28A78FFA28A79FFA28A79FFA28A79FFA28A
79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A
79FFA28A79FFA28A79FFA28A79FFA28A79FFA28A79FFA58D7CFF7A5B46FFB2A1
967F000000000000000000000000000000000000000000000000000000006055
4D7ED7C6BBFFEDE4E0FFD9CCC4FFD9CCC4FFD9CBC3FFD8CAC1FFD7C9BFFFD6C7
BDFFD5C6BBFFD4C4BAFFD3C3B8FFD2C1B7FFD1C0B5FFD0BEB3FFCFBDB2FFCEBC
B0FFCEBBAFFFCEBBAFFFCEBBAFFFCEBBAFFFCEBCB0FFBEAA9CFF82644FFFB2A1
967E000000000000000000000000000000000000000000000000000000006056
4D7ED7C8BCFFF2EBE8FFEFE9E5FFEEE7E2FFECE5E0FFEBE2DEFFEAE0DBFFE9DE
D8FFE7DBD4FFE5D9D1FFE3D7CFFFE2D4CCFFE1D2C9FFDFD0C7FFDDCDC4FFDCCB
C2FFDBC9BFFFDBC9BFFFDBC9BFFFDBC9BFFFDCCAC1FFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006155
4E7ED8C9BDFFF3EDE9FFF1EAE6FFF0E9E6FFEEE6E1FFECE4DFFFEBE2DDFFEAE0
DAFFE9DED7FFE7DBD4FFE5D9D1FFE3D7CFFFE2D4CCFFE1D2C9FFDFD0C7FFDDCD
C4FFDCCBC2FFDBC9BFFFDBC9BFFFDBC9BFFFDCCAC0FFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006157
4E7ED9C9BFFFF4EFEDFFEFE8E3FFD0C2B9FFDFD5CEFFE0D5CEFFE0D4CCFFDED3
CBFFDDD1C8FFDCCFC6FFDACCC4FFD9CBC1FFD8C9BFFFD7C7BDFFD6C5BBFFD5C4
B9FFD3C2B7FFD2C0B5FFD2BFB4FFD2BFB4FFDAC8BEFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDACCC0FFF5F2EFFFE5DDD9FF5C3821FFB0998AFFB8A394FFB8A394FFB9A3
94FFB8A495FFB9A597FFB9A698FFBAA698FFBBA799FFBBA89AFFBBA89BFFBCA8
9BFFBCA89BFFBCA89BFFBBA89AFFB49E8FFFD8C6BBFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDBCBC1FFF8F4F3FFE7E0DBFF5F3C24FFD0BDB2FFDCCBC1FFDDCCC3FFE2D2
CBFFE7DBD4FFEDE2DEFFF0E8E6FFF5F0EDFFF9F7F4FFFDFDFDFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFAF8F7FFB39D8DFFD8C6BBFFC1AC9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006256
4F7EDCCEC3FFFAF6F5FFE9E2DDFF5F3C24FFD2BFB5FFDFCDC4FFDECCC3FFE0CE
C6FFE4D4CDFFE9DDD6FFEFE4E0FFF1EAE8FFF7F1EFFFFBF8F6FFFFFEFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFCFBFAFFB5A090FFD9C7BEFFC1AD9FFF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006257
4F7EDDCFC4FFFCF9F9FFE9E4E0FF5F3A23FF7C5D49FF7F5F4CFF7E5F4CFF7E60
4DFF7F614DFF816350FF826552FF836654FF846856FF856A57FF866B59FF876C
5BFF876D5BFF876D5BFF866B59FF72523DFFD5C3B9FFC1AFA1FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006357
507EDECFC6FFFCFCFBFFF4F1F0FFC3B6AEFFC3B5ADFFC1B4ACFFC0B3AAFFBFB1
A9FFBEB0A6FFBDAEA5FFBDACA3FFBCABA2FFBBAAA0FFBAA99FFFB8A69AFFB8A4
98FFB6A396FFB5A194FFB49F93FFB39D90FFDCCDC4FFC2AEA1FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006357
507EDFD2C7FFFEFEFDFFF9F5EFFFE8C696FFE9C799FFE8C697FFE7C596FFE7C4
95FFE6C394FFE5C293FFE4C091FFE4C090FFE3BF8FFFE2BD8CFFE9D5BFFFEBE1
DCFFEADFD8FFE7DCD5FFE5DAD3FFE4D8D0FFE3D4CCFFC2AFA2FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006458
517EE0D3C8FFFFFFFFFFFAF5EFFFE3B77CFFE4B97FFFE2B87EFFE3B77DFFE2B7
7CFFE2B67BFFE1B57AFFE1B479FFE0B478FFE0B377FFDFB174FFE6D0B7FFEBE1
DCFFE8DFD9FFE8DDD6FFE6D9D2FFE3D8D1FFE4D7CFFFC3AFA2FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006458
517EE1D2C9FFFFFFFFFFFEFEFDFFFEFFFFFFFCFDFEFFFBFBFBFFF9F7F8FFF8F5
F6FFF7F3F2FFF5F1F0FFF4EFEEFFF1EDEBFFF0EBE9FFEEE9E6FFEDE6E2FFECE3
DEFFEBE1DBFFE9DFD9FFE8DDD6FFE6DAD3FFE5D9D2FFC3B0A3FF81634FFFB2A1
967E000000000000000000000000000000000000000000000000000000006459
517EE1D4CAFFFFFFFFFFFDFDFCFFEEEBE8FFF5F2F0FFF4F0EFFFF3EFECFFF2ED
EAFFF1EBE8FFEEE9E5FFEFE7E3FFECE5E1FFEAE4DEFFEAE1DCFFE8E0DAFFE7DE
D8FFE6DDD6FFE5DBD4FFE4D8D1FFE2D6CEFFE6DBD4FFC3B1A4FF81634EFFB2A1
967E000000000000000000000000000000000000000000000000000000006559
527EE2D4CAFFFFFFFFFFF0ECEAFF5B361EFFAB9383FFB39D8EFFB39D8DFFB39D
8DFFB29D8DFFB29C8DFFB29C8CFFB29C8CFFB29C8CFFB29C8CFFB29C8CFFB29C
8CFFB29C8CFFB29C8CFFB29C8DFFB39D8EFFE3D8D0FFC4B1A4FF81634EFFB2A1
967E000000000000000000000000000000000000000000000000000000006559
527EE5D4CAFFFFFFFFFFF7F0EBFF5F3B24FFCCB8ADFFD7C5BAFFD9C7BDFFDCCC
C3FFE1D4CCFFE5DAD4FFE8E0DBFFEDE5E1FFF1EBE9FFF5F2EFFFF7F5F3FFF8F6
F4FFF8F5F4FFF8F6F4FFF1EEEAFFB29C8DFFE6DAD3FFC4B2A5FF81634EFFB2A1
967E00000000000000000000000000000000000000000000000000000000685A
527E9AC6C9FF35CFFEFF3DAEEBFF663E24FFD2BFB4FFE0CBBFFFE0C9BDFFE1CD
C4FFE4D5CDFFE9DED7FFEEE5E0FFF2EBE8FFF6F2F0FFFCF8F8FFFFFFFEFFFFFF
FFFFFFFFFFFFFFFFFFFFFCFAF9FFB49E8FFFE7DED7FFC5B3A6FF81634EFFB2A1
967E00000000000000000000000000000000007792910072A7A3001E33366957
4C7C86C1C8FF00BFFBFF079AEBFF6A3E23FF926D57FF5FA3C8FF4AC1E8FF6C9C
A2FF917260FF927767FF947A69FF957C6CFF977E6FFF998171FF9A8374FF9B85
76FF9C8678FF9C8678FF998274FF7D5E49FFE3D9D4FFC5B3A7FF81634EFFB2A1
967E00000000000000000000000000000000005A6F7000A9E5E40075AEAE5C90
A5BD75D0E0FF00BFFAFF0CA3F4FF8A9A91FF3C7492FF03A4E4FF4AD5FFFF98C4
CBFFB3A196FFB1A197FFB0A096FFB09F95FFAF9D92FFAF9C91FFAD9A8EFFAC99
8CFFAB988AFFAB9789FFAA9688FFA99386FFE8E0DAFFC5B4A7FF81634EFFB2A1
967E00000000000000000000000000000000000000002DA5BFC110C2FFFF4DD0
FDFF64DBF9FF00B3FAFF09A8FEFF68D7FFFF04B5FFFF24CCFBFFAFD8CEFFF7DA
B8FFF3DBBBFFF3DBBAFFF2D9B9FFF1D8B7FFF0D7B4FFEED5B2FFF6EADDFFF9F6
F4FFF7F3F1FFF5F1EEFFF5EFECFFF4EDEAFFF1EBE7FFC6B4A8FF81634EFFB2A1
967E00000000000000000000000000000000000000005F8A909142C7E4E960DE
F8FF64D7FAFF00B6FDFF00B8FDFF21B2FDFF1ECCF7FF93EBFCFFD2C69BFFE1AB
63FFDFAC66FFDFAC66FFDFAC66FFDFAC66FFDFAC66FFDEA961FFEFDBC0FFF8F6
F5FFF6F2F0FFF3EDEBFFECE2DCFFE9DFD9FFE5DBD6FFC2B1A4FF81634FFFB2A1
967E000000000000000000000000000E171A000E171A00040B145994A4A990EB
FCFF61F1F7FF13FAF7FF23F9F7FF93EDF7FF8CE5F8FFD5F2FDFFE9F8FFFFE7F8
FFFFF0FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFDFEFFFFFAFAF9FFF9F7
F5FFF7F2F0FFE8DFD8FFC7AE9FFFBEA998FFAF9888FFB09A8AFF7F604DFFB2A1
967E00000000000000000000000000AAFFFF00AAFFFF00AAFFFF00A4FFFF00CD
FAFF5DFCF9FFFFFFFFFFEEFEFEFF00FBF7FF00AAFEFF00A1FFFF00A1FFFF00A0
FFFF56C3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFDFBFFFCFBFAFFFBFA
F8FFE6DDD6FFAA9180FF5D3922FF603D26FF613E27FF613E28FF634029FFB4A3
987E00000000000000000000000000CAFFFF00CAFFFF00CBFFFF00B0FFFF00CD
FBFF38F5F7FFC3EFFAFFF0FFFEFF00FAF7FF00C8F7FF00C2F7FF00C2F7FF00C1
F7FF57D7FAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFDFDFCFFFCFC
FBFFE7DED8FFCCB9ACFFE6DBD5FFE2D7D0FFDCCFC5FFD7C5BBFF8E705DFFB4A2
9680000000000000000000000000002E383C002E383C00252F364C99B0B57DE8
FBFF59F1F7FF25F7F7FF41FAF8FF7CEEF7FF77E4F7FFB5EFFCFFC6F2FDFFC3F2
FDFFD9F6FCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFEFEFFFEFE
FEFFE9E1DAFFCEBCAFFFF1E9E3FFEADFD8FFE4D5CCFF9D816FFF3A291F868985
831C00000000000000000000000000000000000000004E7073774AB0DADC37C9
FBFF22D5F7FF00D3F9FF02C3FBFF37D5F7FF34BEFCFFA2E6FAFFECFBFDFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFF
FFFFEAE2DCFFCDBBADFFEADFD8FFE3D5CBFF9F8271FF3E2D2386050100200000
000000000000000000000000000000000000000000003E9CC4C219C0FFFF23C9
FCFF30D3F8FF00BEF8FF06A8FEFF4FDCF8FF00B8FCFF32C2FBFFC0EBFCFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFEAE3DEFFCDB9ABFFDDCEC4FFA58979FF3E2C1F8F0905041B000000000000
000000000000000000000000000000000000003451510099DDDB0091C0C35DAD
BCCF76D7E9FF00BEF9FF10A9FBFFBDDEDEFF5AC8DDFF0AB5F7FF62CEFFFFCBE4
F1FFF1E7E0FFEFE7E1FFEEE6E1FFEEE6E1FFEEE6E0FFEDE6E0FFEDE5E0FFEEE6
E1FFE1D4CCFFC5AE9FFFA68D7FF53E2718A10402000E00000000000000000000
0000000000000000000000000000000000000075B7AF0099C7C500323E425442
3B5C6BA8B1DA00C1FCFF0EA1F3F8A98E80C0AB9081C12698B1C10088C4C14C85
A3C1A18D80C19E8D81C19E8B81C19D8C80C19B8C7FC19B8A7FC19C897FC19A89
7EC19B8B7EC1897769C2432B1BAC000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000045565A00C5FFFF0094E6E2000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000FFFFFFFFF0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0000007F0000007800000078000
0007C0000007C000000700000007000000070000000700000007C000000FC000
001F8000003F800000FFF8FFFFFF}
Left = 144
Top = 112
end
object JsImprimirDialog: TJSDialog
Content.Strings = (
'Elija una opci'#243'n:')
@ -1990,17 +1677,17 @@ inherited fEditorMedicaciones: TfEditorMedicaciones
Instruction.Icon = tdiCustom
CustomButtons = <
item
Caption = 'Imprimir el albaran/es seleccionado/s'
Caption = 'Imprimir las etiquetas de la medicación/es seleccionada/s'
Value = 100
Default = True
end
item
Caption = 'Imprimir la lista de Medicaciones actual'
Caption = 'Imprimir la lista de medicaciones actual'
Value = 200
end>
ButtonBar.Buttons = [cbCancel]
MainIcon = tdiCustom
Title = 'FactuGES'
Title = 'Etiquetas'
Position = dpMainFormCenter
Icon.Data = {
0000010003002020100001000400E8020000360000002020000001000800A808
@ -2301,17 +1988,17 @@ inherited fEditorMedicaciones: TfEditorMedicaciones
Instruction.Icon = tdiCustom
CustomButtons = <
item
Caption = 'Previsualizar el albaran/es seleccionado/s'
Caption = 'Previsualizar las etiquetas de la medicación/es seleccionada/s'
Value = 100
Default = True
end
item
Caption = 'Previsualizar la lista de Medicaciones actual'
Caption = 'Previsualizar la lista de medicaciones actual'
Value = 200
end>
ButtonBar.Buttons = [cbCancel]
MainIcon = tdiCustom
Title = 'FactuGES'
Title = 'Etiquetas'
Position = dpMainFormCenter
Icon.Data = {
0000010003002020100001000400E8020000360000002020000001000800A808
@ -2576,9 +2263,7 @@ inherited fEditorMedicaciones: TfEditorMedicaciones
FD84C20B8417C3AA789405239826E0CBCE4F98979E10344C33B0BE630473D312
82866906D6993E62F6F1C3F45D160A5305BE68FF8095CF5B4302134CFE1185EA
1FB8A1B4FF4FE32FF6FADB8B5E0000000049454E44AE426082}
Instruction.Text =
'Los siguientes Medicaciones no han podido ser eliminados, porque' +
' est'#225'n enviados o tiene una factura asociada'
Instruction.Text = 'Las siguientes medicaciones no han podido ser eliminadas.'
Instruction.Glyph.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001C00
00001C0806000000720DDF940000000970485973000017120000171201679FD2
@ -2613,7 +2298,7 @@ inherited fEditorMedicaciones: TfEditorMedicaciones
ButtonBar.Cancel = cbOK
ButtonBar.UseCancel = False
MainIcon = tdiCustom
Title = 'FactuGES'
Title = 'Etiquetas'
Position = dpMainFormCenter
Icon.Data = {
0000010003002020100001000400E8020000360000002020000001000800A808

View File

@ -16,7 +16,6 @@ uses
type
TfEditorMedicaciones = class(TfEditorGridBase, IEditorMedicaciones)
JsNuevoMedicacionDialog: TJSDialog;
N4: TMenuItem;
TBXSeparatorItem17: TTBXSeparatorItem;
JsImprimirDialog: TJSDialog;
@ -41,7 +40,6 @@ type
function GetController : IMedicacionesController; virtual;
procedure SetController (const Value : IMedicacionesController); virtual;
procedure NuevoInterno; override;
procedure ModificarInterno; override;
procedure EliminarInterno; override;
procedure DuplicarInterno; override;
@ -342,31 +340,6 @@ begin
FController.Ver(Medicaciones);
end;
procedure TfEditorMedicaciones.NuevoInterno;
{var
Respuesta : Integer;
AMedicacion : IBizMedicacion;
IDMedicacionAux: Integer;}
begin
inherited;
// Respuesta := JsNuevoMedicacionDialog.Execute;
// if Respuesta <> IDCANCEL then
// begin
// case JsNuevoMedicacionDialog.CustomButtonResult of
// 200 : begin // Utilizar un pedido
// if ElegirPedidoYGenerarMedicacionCli(IDMedicacionAux) then
// actRefrescar.Execute;
// end;
// 100 : begin // Medicacion nuevo vacio
if FController.Anadir(Medicaciones) then
FController.Ver(Medicaciones);
// end;
// end;
// end;
end;
procedure TfEditorMedicaciones.PonerTitulos(const ATitulo: string);
var
FTitulo : String;

View File

@ -17,7 +17,6 @@ inherited frViewDatosYSeleccionPacienteMedicacion: TfrViewDatosYSeleccionPacient
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
ExplicitHeight = 129
DesignSize = (
505
109)

View File

@ -15,7 +15,7 @@ uses
type
IViewDatosYSeleccionPacienteMedicacion = interface(IViewBase)
['{1BCBC024-2523-45C5-B83B-12A9B45FD443}']
['{EE6D3C7E-1F51-423F-8956-F848DC091D15}']
function GetMedicacion: IBizMedicacion;
procedure SetMedicacion(const Value: IBizMedicacion);
property Medicacion: IBizMedicacion read GetMedicacion write SetMedicacion;
@ -99,6 +99,8 @@ implementation
{$R *.dfm}
{ TfrViewDatosYSeleccionPacienteMedicacion }
uses
uDataModulePacientes, Math, uCustomView, uBizContactosPersonal, uDialogUtils;

View File

@ -1,98 +1,90 @@
inherited frViewDetallesMedicacion: TfrViewDetallesMedicacion
Width = 762
Height = 318
inherited ToolBar1: TToolBar
Width = 762
Height = 51
ExplicitHeight = 100
inherited ToolButton14: TToolButton
Height = 95
ExplicitHeight = 95
inherited ToolButton14: TToolButton [2]
Left = 129
Wrap = False
ExplicitLeft = 56
ExplicitTop = 22
end
inherited FontName: TJvFontComboBox
inherited ToolButton3: TToolButton [3]
Left = 194
ExplicitLeft = 194
end
inherited ToolButton4: TToolButton [4]
Left = 249
ExplicitLeft = 249
end
inherited ToolButton8: TToolButton [5]
Left = 305
Top = 0
Wrap = True
ExplicitLeft = 305
ExplicitTop = 0
end
inherited FontSize: TEdit
Left = 450
Top = 0
Width = 138
ExplicitLeft = 450
ExplicitTop = 0
ExplicitWidth = 138
inherited FontName: TJvFontComboBox [6]
end
inherited ToolButton13: TToolButton [7]
Left = 145
ExplicitLeft = 145
end
inherited ToolButton6: TToolButton [8]
Left = 153
ExplicitLeft = 153
end
inherited ToolButton9: TToolButton [9]
Left = 219
Top = 22
ExplicitLeft = 219
ExplicitTop = 22
end
inherited ToolButton12: TToolButton [10]
end
inherited FontSize: TEdit [11]
Left = 0
Top = 0
Wrap = True
Top = 52
Width = 154
ExplicitLeft = 0
ExplicitTop = 0
ExplicitHeight = 27
ExplicitTop = 52
ExplicitWidth = 154
end
inherited UpDown1: TUpDown [8]
Left = 0
Top = 27
ExplicitLeft = 0
ExplicitTop = 27
inherited UpDown1: TUpDown [12]
Left = 154
Top = 52
ExplicitLeft = 154
ExplicitTop = 52
end
inherited ToolButton6: TToolButton
Left = 17
Top = 27
ExplicitLeft = 17
ExplicitTop = 27
end
inherited ToolButton7: TToolButton
Left = 83
Top = 27
ExplicitLeft = 83
ExplicitTop = 27
end
inherited ToolButton8: TToolButton
Left = 150
Top = 27
ExplicitLeft = 150
ExplicitTop = 27
end
inherited ToolButton12: TToolButton
Left = 233
Top = 27
Wrap = False
ExplicitLeft = 233
ExplicitTop = 27
ExplicitHeight = 22
end
inherited ToolButton9: TToolButton
Left = 241
Top = 27
ExplicitLeft = 241
ExplicitTop = 27
inherited ToolButton7: TToolButton [13]
Left = 171
Top = 52
ExplicitLeft = 171
ExplicitTop = 52
end
inherited ToolButton10: TToolButton
Left = 386
Top = 27
ExplicitLeft = 386
ExplicitTop = 27
Left = 238
Wrap = True
ExplicitLeft = 238
end
inherited ToolButton11: TToolButton
Left = 511
Top = 27
ExplicitLeft = 511
ExplicitTop = 27
Left = 0
Top = 74
ExplicitLeft = 0
ExplicitTop = 74
end
end
inherited cxGrid: TcxGrid
Top = 77
Width = 762
Height = 241
ExplicitTop = 126
ExplicitHeight = 178
Top = 121
Height = 183
ExplicitTop = 121
ExplicitHeight = 183
inherited cxGridView: TcxGridDBTableView
inherited cxGridViewTIPO: TcxGridDBColumn
BestFitMaxWidth = 75
BestFitMaxWidth = 80
MinWidth = 75
Options.HorzSizing = True
VisibleForCustomization = False
Width = 75
Width = 80
end
inherited cxGridViewREFERENCIA: TcxGridDBColumn
Width = 43
@ -121,6 +113,7 @@ inherited frViewDetallesMedicacion: TfrViewDetallesMedicacion
Width = 40
end
object cxGridViewFORMA_COLOR: TcxGridDBColumn
Caption = 'Forma y color'
DataBinding.FieldName = 'FORMA_COLOR'
BestFitMaxWidth = 90
Width = 94
@ -133,12 +126,10 @@ inherited frViewDetallesMedicacion: TfrViewDetallesMedicacion
end
end
inherited TBXDock1: TTBXDock
Top = 51
Width = 762
ExplicitTop = 100
Top = 95
ExplicitTop = 95
inherited TBXToolbar1: TTBXToolbar
DockPos = 0
ExplicitWidth = 472
inherited TBXSubmenuItem1: TTBXSubmenuItem
Enabled = False
Visible = False

View File

@ -1,26 +1,26 @@
inherited frViewMedicacion: TfrViewMedicacion
Width = 516
Height = 248
Width = 803
Height = 164
AutoSize = True
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
ExplicitWidth = 516
ExplicitHeight = 248
ExplicitWidth = 803
ExplicitHeight = 164
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
Width = 516
Height = 248
Align = alClient
Width = 803
Height = 164
Align = alTop
ParentBackground = True
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
ExplicitHeight = 257
DesignSize = (
516
248)
803
164)
object edtFechaHasta: TcxDBDateEdit
Left = 338
Left = 286
Top = 55
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_HASTA'
@ -78,7 +78,7 @@ inherited frViewMedicacion: TfrViewMedicacion
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 0
Width = 336
Width = 277
end
object edtFechaDesde: TcxDBDateEdit
Left = 92
@ -112,10 +112,10 @@ inherited frViewMedicacion: TfrViewMedicacion
Width = 200
end
inline frViewDatosYSeleccionPacienteMedicacion1: TfrViewDatosYSeleccionPacienteMedicacion
Left = 22
Top = 112
Width = 859
Height = 107
Left = 424
Top = 28
Width = 505
Height = 109
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@ -124,52 +124,35 @@ inherited frViewMedicacion: TfrViewMedicacion
ParentFont = False
TabOrder = 3
ReadOnly = False
ExplicitLeft = 22
ExplicitTop = 112
ExplicitWidth = 859
ExplicitHeight = 107
ExplicitLeft = 424
ExplicitTop = 28
inherited dxLayoutControl1: TdxLayoutControl
Width = 859
Height = 107
ExplicitWidth = 406
ExplicitHeight = 181
inherited edtlNombre: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 224
Width = 224
ExplicitWidth = 249
Width = 249
end
inherited edtNUMERO_SS: TcxDBTextEdit
Left = 359
Left = 244
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 359
ExplicitLeft = 244
end
inherited Button3: TBitBtn
Left = 270
ExplicitLeft = 270
Left = 155
ExplicitLeft = 155
end
end
inherited dsPaciente: TDADataSource
Left = 272
Top = 32
end
inherited ActionList1: TActionList
Left = 312
Top = 32
end
inherited PngImageList: TPngImageList
Left = 232
Top = 32
end
end
object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControl1Group1: TdxLayoutGroup
AutoAligns = []
@ -202,33 +185,18 @@ inherited frViewMedicacion: TfrViewMedicacion
end
end
object dxLayoutControl1Group2: TdxLayoutGroup
AutoAligns = []
AlignHorz = ahClient
Caption = 'Datos del paciente'
object dxLayoutControl1Item1: TdxLayoutItem
Caption = 'New Item'
ShowCaption = False
Control = frViewDatosYSeleccionPacienteMedicacion1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
end
object dxLayoutControl1Group8: TdxLayoutGroup
AutoAligns = []
AlignHorz = ahClient
Caption = 'Direcci'#243'n de entrega'
Visible = False
end
object dxLayoutControl1Group11: TdxLayoutGroup
Caption = 'Almac'#233'n de origen'
Visible = False
end
object dxLayoutControl1Group7: TdxLayoutGroup
AutoAligns = [aaHorizontal]
AlignVert = avClient
Caption = 'Observaciones'
end
object dxLayoutControl1Group12: TdxLayoutGroup
Caption = 'Fechas de envio y recepci'#243'n'
Visible = False
end
end
object DADataSource: TDADataSource
Left = 8

View File

@ -13,7 +13,7 @@ uses
type
IViewMedicacion = interface(IViewBase)
['{140BEFAF-925B-43E2-A4EC-9349B54B3D64}']
['{29C74706-2900-49BA-B817-97884DB8E422}']
function GetMedicacion: IBizMedicacion;
procedure SetMedicacion(const Value: IBizMedicacion);
property Medicacion: IBizMedicacion read GetMedicacion write SetMedicacion;
@ -32,16 +32,12 @@ type
dxLayoutControl1Group2: TdxLayoutGroup;
dxLayoutControl1Item3: TdxLayoutItem;
eReferencia: TcxDBTextEdit;
dxLayoutControl1Group7: TdxLayoutGroup;
dxLayoutControl1Group8: TdxLayoutGroup;
ActionList1: TActionList;
dxLayoutControl1Group11: TdxLayoutGroup;
dxLayoutControl1Group12: TdxLayoutGroup;
dxLayoutControl1Item24: TdxLayoutItem;
edtFechaDesde: TcxDBDateEdit;
dxLayoutControl1Group3: TdxLayoutGroup;
frViewDatosYSeleccionPacienteMedicacion1: TfrViewDatosYSeleccionPacienteMedicacion;
dxLayoutControl1Item1: TdxLayoutItem;
dxLayoutControl1Group3: TdxLayoutGroup;
procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
procedure edtFechaHastaPropertiesValidate(Sender: TObject;

View File

@ -65,7 +65,7 @@ begin
try
Connected := True;
Application.MessageBox('Conexión válida con la base de datos.', 'FactuGES', MB_OK);
Application.MessageBox('Conexión válida con la base de datos.', 'Etiquetas', MB_OK);
Connected := False;
except
on E : Exception do

View File

@ -58,7 +58,7 @@ begin
try
Open;
Application.MessageBox('Conexión válida con la base de datos de Farmatic.', 'FactuGES', MB_OK);
Application.MessageBox('Conexión válida con la base de datos de Farmatic.', 'Etiquetas', MB_OK);
Close;
except
on E : Exception do

View File

@ -17,7 +17,7 @@ BEGIN
VALUE "InternalName", "Etiquetas Server\0"
VALUE "ProductName", "Etiquetas Server\0"
VALUE "ProductVersion", "1.0.0.0\0"
VALUE "CompileDate", "miércoles, 30 de noviembre de 2011 12:41\0"
VALUE "CompileDate", "miércoles, 30 de noviembre de 2011 14:08\0"
END
END
BLOCK "VarFileInfo"

Binary file not shown.

View File

@ -18,11 +18,11 @@ begin
if Assigned(fServerForm) then
with fServerForm.TrayIcon1 do
begin
BalloonTitle := 'FactuGES (Servidor)';
BalloonTitle := 'Etiquetas (Servidor)';
BalloonHint := AMensaje;
BalloonTimeout := 2000; // 2000ms => 2seg
BalloonFlags := ABalloonIcon;
Hint := 'FactuGES (Servidor)' + #10#13 + AMensaje;
Hint := 'Etiquetas (Servidor)' + #10#13 + AMensaje;
ShowBalloonHint;
end;
end;

View File

@ -69,7 +69,7 @@ begin
if not ROIsService then
with JvProgressDialog1 do
begin
InitValues(0, 100, 10, 0, 'Cerrar FactuGES Server', 'Espere mientras FactuGES Server se cierra...');
InitValues(0, 100, 10, 0, 'Cerrar Etiquetas Server', 'Espere mientras Etiquetas Server se cierra...');
Show;
while Assigned(dmServer) do
begin