Módulo de obras (por revisar)

git-svn-id: https://192.168.0.254/svn/Proyectos.Tecsitel_FactuGES2/trunk@715 0c75b7a4-871f-7646-8a2f-f78d34cc349f
This commit is contained in:
David Arranz 2008-10-27 19:03:34 +00:00
parent e94004caf8
commit 0a4b9e21ab
78 changed files with 11112 additions and 1836 deletions

File diff suppressed because it is too large Load Diff

View File

@ -174,6 +174,15 @@ SET GENERATOR GEN_INFORMES_ID TO 1;
CREATE GENERATOR GEN_MOVIMIENTOS_ID; CREATE GENERATOR GEN_MOVIMIENTOS_ID;
SET GENERATOR GEN_MOVIMIENTOS_ID TO 1; SET GENERATOR GEN_MOVIMIENTOS_ID TO 1;
CREATE GENERATOR GEN_OBRAS_EJECUCIONES_ID;
SET GENERATOR GEN_OBRAS_EJECUCIONES_ID TO 1;
CREATE GENERATOR GEN_OBRAS_EJEC_PRESUPUESTOS_ID;
SET GENERATOR GEN_OBRAS_EJEC_PRESUPUESTOS_ID TO 1;
CREATE GENERATOR GEN_OBRAS_EJEC_PEDIDOS_PROV_ID;
SET GENERATOR GEN_OBRAS_EJEC_PEDIDOS_PROV_ID TO 1;
CREATE GENERATOR GEN_PAGOS_CLIENTE_ID; CREATE GENERATOR GEN_PAGOS_CLIENTE_ID;
SET GENERATOR GEN_PAGOS_CLIENTE_ID TO 1; SET GENERATOR GEN_PAGOS_CLIENTE_ID TO 1;
@ -865,10 +874,34 @@ CREATE TABLE MOVIMIENTOS (
CREATE TABLE OBRAS_DATOS ( CREATE TABLE OBRAS_DATOS (
ID_ALMACEN TIPO_ID NOT NULL, ID_ALMACEN TIPO_ID NOT NULL,
ID_CLIENTE TIPO_ID, ID_CLIENTE TIPO_ID
ID_SUBCONTRATA TIPO_ID
); );
CREATE TABLE OBRAS_EJECUCIONES (
ID TIPO_ID NOT NULL,
ID_OBRA TIPO_ID,
FECHA_INICIO DATE,
FECHA_FIN DATE,
ID_SUBCONTRATA TIPO_ID,
OBSERVACIONES TIPO_NOTAS,
FECHA_ALTA TIMESTAMP,
FECHA_MODIFICACION TIMESTAMP
);
CREATE TABLE OBRAS_EJECUCIONES_PRESUPUESTOS (
ID TIPO_ID NOT NULL,
ID_EJECUCION TIPO_ID,
ID_PRESUPUESTO TIPO_ID
);
CREATE TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV (
ID TIPO_ID NOT NULL,
ID_EJECUCION TIPO_ID,
ID_PEDIDO TIPO_ID,
ID_PRESUPUESTO TIPO_ID
);
CREATE TABLE PAGOS_CLIENTE ( CREATE TABLE PAGOS_CLIENTE (
ID TIPO_ID NOT NULL, ID TIPO_ID NOT NULL,
ID_RECIBO TIPO_ID, ID_RECIBO TIPO_ID,
@ -2799,7 +2832,6 @@ GROUP BY ID_ALMACEN,
; ;
/* View: V_OBRAS */ /* View: V_OBRAS */
CREATE VIEW V_OBRAS( CREATE VIEW V_OBRAS(
ID, ID,
@ -2816,26 +2848,73 @@ CREATE VIEW V_OBRAS(
OBSERVACIONES, OBSERVACIONES,
ID_CLIENTE, ID_CLIENTE,
NOMBRE_CLIENTE, NOMBRE_CLIENTE,
ID_SUBCONTRATA,
NOMBRE_SUBCONTRATA,
FECHA_ALTA, FECHA_ALTA,
FECHA_MODIFICACION, FECHA_MODIFICACION,
USUARIO) USUARIO,
ID_EJECUCION)
AS AS
SELECT ALMACENES.ID, ALMACENES.ID_EMPRESA, ALMACENES.NOMBRE, SELECT ALMACENES.ID, ALMACENES.ID_EMPRESA, ALMACENES.NOMBRE,
ALMACENES.CALLE, ALMACENES.PROVINCIA, ALMACENES.POBLACION, ALMACENES.CODIGO_POSTAL, ALMACENES.CALLE, ALMACENES.PROVINCIA, ALMACENES.POBLACION, ALMACENES.CODIGO_POSTAL,
ALMACENES.TELEFONO, ALMACENES.MOVIL, ALMACENES.FAX, ALMACENES.PERSONA_CONTACTO, ALMACENES.TELEFONO, ALMACENES.MOVIL, ALMACENES.FAX, ALMACENES.PERSONA_CONTACTO,
ALMACENES.OBSERVACIONES, OBRAS_DATOS.ID_CLIENTE, CLIENTES.NOMBRE AS NOMBRE_CLIENTE, ALMACENES.OBSERVACIONES, OBRAS_DATOS.ID_CLIENTE, CLIENTES.NOMBRE AS NOMBRE_CLIENTE,
OBRAS_DATOS.ID_SUBCONTRATA, SUBCONTRATAS.NOMBRE AS NOMBRE_SUBCONTRATA, ALMACENES.FECHA_ALTA, ALMACENES.FECHA_MODIFICACION, ALMACENES.USUARIO,
ALMACENES.FECHA_ALTA, ALMACENES.FECHA_MODIFICACION, ALMACENES.USUARIO CASE
WHEN (OBRAS_EJECUCIONES.FECHA_INICIO IS NULL) THEN NULL
WHEN ((OBRAS_EJECUCIONES.FECHA_INICIO IS NOT NULL) AND ((OBRAS_EJECUCIONES.FECHA_FIN IS NULL))) THEN OBRAS_EJECUCIONES.ID
END AS ID_EJECUCION
FROM ALMACENES FROM ALMACENES
INNER JOIN OBRAS_DATOS ON (OBRAS_DATOS.ID_ALMACEN = ALMACENES.ID) INNER JOIN OBRAS_DATOS ON (OBRAS_DATOS.ID_ALMACEN = ALMACENES.ID)
LEFT OUTER JOIN CONTACTOS AS CLIENTES ON (CLIENTES.ID = OBRAS_DATOS.ID_CLIENTE) LEFT OUTER JOIN CONTACTOS AS CLIENTES ON (CLIENTES.ID = OBRAS_DATOS.ID_CLIENTE)
LEFT OUTER JOIN CONTACTOS AS SUBCONTRATAS ON (SUBCONTRATAS.ID = OBRAS_DATOS.ID_SUBCONTRATA) LEFT OUTER JOIN OBRAS_EJECUCIONES ON (OBRAS_EJECUCIONES.ID_OBRA = ALMACENES.ID)
WHERE ALMACENES.TIPO_ALMACEN = 'OBRA' WHERE ALMACENES.TIPO_ALMACEN = 'OBRA'
; ;
/* View: V_OBRAS_EJECUCIONES */
CREATE VIEW V_OBRAS_EJECUCIONES(
ID,
ID_OBRA,
FECHA_INICIO,
FECHA_FIN,
ID_SUBCONTRATA,
NOMBRE,
IMPORTE_GASTOS,
IMPORTE_INGRESOS,
IMPORTE_TOTAL,
OBSERVACIONES,
FECHA_ALTA,
FECHA_MODIFICACION)
AS
SELECT
OBRAS_EJECUCIONES.ID,
OBRAS_EJECUCIONES.ID_OBRA,
OBRAS_EJECUCIONES.FECHA_INICIO,
OBRAS_EJECUCIONES.FECHA_FIN,
OBRAS_EJECUCIONES.ID_SUBCONTRATA,
CONTACTOS.NOMBRE,
COALESCE(SUM(PEDIDOS_PROVEEDOR.BASE_IMPONIBLE), 0) IMPORTE_GASTOS,
COALESCE(SUM(PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE), 0) IMPORTE_INGRESOS,
COALESCE(SUM(PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE), 0) - COALESCE(SUM(PEDIDOS_PROVEEDOR.BASE_IMPONIBLE), 0) IMPORTE_TOTAL,
OBRAS_EJECUCIONES.OBSERVACIONES,
OBRAS_EJECUCIONES.FECHA_ALTA,
OBRAS_EJECUCIONES.FECHA_MODIFICACION
FROM OBRAS_EJECUCIONES
LEFT OUTER JOIN CONTACTOS ON (CONTACTOS.ID = OBRAS_EJECUCIONES.ID_SUBCONTRATA)
LEFT OUTER JOIN OBRAS_EJECUCIONES_PRESUPUESTOS ON (OBRAS_EJECUCIONES_PRESUPUESTOS.ID_EJECUCION = OBRAS_EJECUCIONES.ID)
LEFT OUTER JOIN PRESUPUESTOS_CLIENTE ON (PRESUPUESTOS_CLIENTE.ID = OBRAS_EJECUCIONES_PRESUPUESTOS.ID_PRESUPUESTO)
LEFT OUTER JOIN OBRAS_EJECUCIONES_PEDIDOS_PROV ON (OBRAS_EJECUCIONES_PEDIDOS_PROV.ID_EJECUCION = OBRAS_EJECUCIONES.ID)
LEFT OUTER JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = OBRAS_EJECUCIONES_PEDIDOS_PROV.ID_PEDIDO)
GROUP BY
OBRAS_EJECUCIONES.ID,
OBRAS_EJECUCIONES.ID_OBRA,
OBRAS_EJECUCIONES.FECHA_INICIO,
OBRAS_EJECUCIONES.FECHA_FIN,
OBRAS_EJECUCIONES.ID_SUBCONTRATA,
CONTACTOS.NOMBRE,
OBRAS_EJECUCIONES.OBSERVACIONES,
OBRAS_EJECUCIONES.FECHA_ALTA,
OBRAS_EJECUCIONES.FECHA_MODIFICACION;
/* View: V_PED_PROV_SITUACION */ /* View: V_PED_PROV_SITUACION */
CREATE VIEW V_PED_PROV_SITUACION( CREATE VIEW V_PED_PROV_SITUACION(
@ -3335,6 +3414,9 @@ ALTER TABLE FORMAS_PAGO ADD PRIMARY KEY (ID);
ALTER TABLE FORMAS_PAGO_PLAZOS ADD PRIMARY KEY (ID); ALTER TABLE FORMAS_PAGO_PLAZOS ADD PRIMARY KEY (ID);
ALTER TABLE INFORMES ADD CONSTRAINT PK_INFORMES PRIMARY KEY (ID); ALTER TABLE INFORMES ADD CONSTRAINT PK_INFORMES PRIMARY KEY (ID);
ALTER TABLE MOVIMIENTOS ADD CONSTRAINT PK_MOVIMIENTOS PRIMARY KEY (ID); ALTER TABLE MOVIMIENTOS ADD CONSTRAINT PK_MOVIMIENTOS PRIMARY KEY (ID);
ALTER TABLE OBRAS_EJECUCIONES ADD CONSTRAINT PK_OBRAS_EJE PRIMARY KEY (ID);
ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT PK_OBRAS_EJE_PRE PRIMARY KEY (ID);
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT PK_OBRAS_EJE_PED_PROV PRIMARY KEY (ID);
ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT PK_PAGOS_CLIENTE PRIMARY KEY (ID); ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT PK_PAGOS_CLIENTE PRIMARY KEY (ID);
ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT PK_PAGOS_PROVEEDOR PRIMARY KEY (ID); ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT PK_PAGOS_PROVEEDOR PRIMARY KEY (ID);
ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT PK_PEDIDOS_CLIENTE PRIMARY KEY (ID); ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT PK_PEDIDOS_CLIENTE PRIMARY KEY (ID);
@ -3382,6 +3464,11 @@ ALTER TABLE FACTURAS_CLIENTE ADD CONSTRAINT FK_FACTURAS_CLIENTE_EMPRESAS FOREIGN
ALTER TABLE FACTURAS_PROVEEDOR ADD CONSTRAINT FK_FACTURAS_PROVEEDOR_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION; ALTER TABLE FACTURAS_PROVEEDOR ADD CONSTRAINT FK_FACTURAS_PROVEEDOR_EMPRESAS FOREIGN KEY (ID_EMPRESA) REFERENCES EMPRESAS (ID) ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS FOREIGN KEY (ID_ARTICULO) REFERENCES ARTICULOS (ID); ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS FOREIGN KEY (ID_ARTICULO) REFERENCES ARTICULOS (ID);
ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS2 FOREIGN KEY (ID_ALMACEN) REFERENCES ALMACENES (ID); ALTER TABLE MOVIMIENTOS ADD CONSTRAINT FK_MOVIMIENTOS2 FOREIGN KEY (ID_ALMACEN) REFERENCES ALMACENES (ID);
ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT FK_OBRAS_EJE_PRE_1 FOREIGN KEY (ID_EJECUCION) REFERENCES OBRAS_EJECUCIONES (ID);
ALTER TABLE OBRAS_EJECUCIONES_PRESUPUESTOS ADD CONSTRAINT FK_OBRAS_EJE_PRE_2 FOREIGN KEY (ID_PRESUPUESTO) REFERENCES PRESUPUESTOS_CLIENTE (ID);
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_1 FOREIGN KEY (ID_EJECUCION) REFERENCES OBRAS_EJECUCIONES (ID);
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_2 FOREIGN KEY (ID_PEDIDO) REFERENCES PEDIDOS_PROVEEDOR (ID);
ALTER TABLE OBRAS_EJECUCIONES_PEDIDOS_PROV ADD CONSTRAINT FK_OBRAS_EJE_PED_PROV_3 FOREIGN KEY (ID_PRESUPUESTO) REFERENCES PRESUPUESTOS_CLIENTE (ID);
ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT FK_PAGOS_CLIENTE FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_CLIENTE (ID); ALTER TABLE PAGOS_CLIENTE ADD CONSTRAINT FK_PAGOS_CLIENTE FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_CLIENTE (ID);
ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT FK_PAGOS_PROVEEDOR FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_PROVEEDOR (ID); ALTER TABLE PAGOS_PROVEEDOR ADD CONSTRAINT FK_PAGOS_PROVEEDOR FOREIGN KEY (ID_RECIBO) REFERENCES RECIBOS_PROVEEDOR (ID);
ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID); ALTER TABLE PEDIDOS_CLIENTE ADD CONSTRAINT FK_PEDIDOS_CLIENTE FOREIGN KEY (ID_CLIENTE) REFERENCES CONTACTOS (ID);

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

View File

@ -60,27 +60,27 @@
<DelphiCompile Include="ApplicationBase.dpk"> <DelphiCompile Include="ApplicationBase.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\Base.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="..\dbrtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="..\dclIndyCore.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dclIndyCore.dcp" />
<DCCReference Include="..\designide.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
<DCCReference Include="..\GUIBase.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="..\IndyCore.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\IndyCore.dcp" />
<DCCReference Include="..\IndyProtocols.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\IndyProtocols.dcp" />
<DCCReference Include="..\IndySystem.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\IndySystem.dcp" />
<DCCReference Include="..\JvJansD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvJansD11R.dcp" />
<DCCReference Include="..\pckMD5.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\pckMD5.dcp" />
<DCCReference Include="..\pckUCDataConnector.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\pckUCDataConnector.dcp" />
<DCCReference Include="..\pckUserControl_RT.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\pckUserControl_RT.dcp" />
<DCCReference Include="..\PLuginSDK_D10R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\PLuginSDK_D10R.dcp" />
<DCCReference Include="..\rtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="..\vcl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="..\vclactnband.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
<DCCReference Include="..\vcldb.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="..\vcljpg.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
<DCCReference Include="..\VclSmp.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\VclSmp.dcp" />
<DCCReference Include="..\vclx.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
<DCCReference Include="..\xmlrtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\xmlrtl.dcp" />
<DCCReference Include="Empresas\Controller\uDatosBancariosEmpresaController.pas" /> <DCCReference Include="Empresas\Controller\uDatosBancariosEmpresaController.pas" />
<DCCReference Include="Empresas\Controller\uEmpresasController.pas" /> <DCCReference Include="Empresas\Controller\uEmpresasController.pas" />
<DCCReference Include="Empresas\Controller\View\uIEditorDatosBancarioEmpresa.pas" /> <DCCReference Include="Empresas\Controller\View\uIEditorDatosBancarioEmpresa.pas" />

View File

@ -4,7 +4,7 @@ interface
uses uses
Controls, SyncObjs, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher, Controls, SyncObjs, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
TBXOffice2003Theme, Classes, ImgList, TBXOffice2003Theme, Classes, ImgList, SysUtils,
DataAbstract4_Intf, uDADataTable, JvAppStorage, JvAppRegistryStorage, cxintl, DataAbstract4_Intf, uDADataTable, JvAppStorage, JvAppRegistryStorage, cxintl,
JvComponentBase, cxIntlPrintSys3, JvLogFile, dxPSGlbl, dxPSUtl, dxPrnPg, JvComponentBase, cxIntlPrintSys3, JvLogFile, dxPSGlbl, dxPSUtl, dxPrnPg,
dxBkgnd, dxWrap, dxPrnDev, dxPgsDlg, dxPSCore; dxBkgnd, dxWrap, dxPrnDev, dxPgsDlg, dxPSCore;
@ -45,7 +45,7 @@ implementation
uses uses
uDataModuleConexion, Dialogs, TBX, TBXThemes, Forms, Windows, uDataModuleConexion, Dialogs, TBX, TBXThemes, Forms, Windows,
JclFileUtils, cxControls, SysUtils, uDataModuleConfiguracion, JclFileUtils, cxControls, uDataModuleConfiguracion,
SHFolder, uSistemaFunc, uAppInfoUtils; SHFolder, uSistemaFunc, uAppInfoUtils;
{ {

View File

@ -59,6 +59,10 @@
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPSCoreD10.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages> <Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\dxPSCoreD10.bpl">ExpressPrinting System by Developer Express Inc.</Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\PluginSDK_D10R.bpl">PluginSDK for Delphi 10 (Runtime)</Excluded_Packages> <Excluded_Packages Name="C:\Documents and Settings\All Users\Documentos\RAD Studio\5.0\Bpl\PluginSDK_D10R.bpl">PluginSDK for Delphi 10 (Runtime)</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>

Binary file not shown.

View File

@ -58,30 +58,30 @@
<DelphiCompile Include="GUIBase.dpk"> <DelphiCompile Include="GUIBase.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\Modulos\Gestor de informes\Views\Base.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxLibraryD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\cxTreeListD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxTreeListD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dbrtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxBarD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxBarD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxBarExtItemsD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxBarExtItemsD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxComnD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxComnD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxGDIPlusD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxGDIPlusD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxLayoutControlD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxLayoutControlD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxPSCoreD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxPSCoreD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxPScxCommonD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxPScxCommonD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxPScxGrid6LnkD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxPScxGrid6LnkD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxPsPrVwAdvD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxPsPrVwAdvD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\dxThemeD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\frx11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\frx11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\frxe11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\frxe11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\fs11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\fs11.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvAppFrmD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvAppFrmD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\JvCtrlsD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\rtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vcl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vcldb.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vcljpg.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Gestor de informes\Views\vclx.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
<DCCReference Include="uDialogBase.pas"> <DCCReference Include="uDialogBase.pas">
<Form>fDialogBase</Form> <Form>fDialogBase</Form>
</DCCReference> </DCCReference>

View File

@ -144,7 +144,9 @@ end;
procedure TfEditorDBBase.dsDataTableDataChange(Sender: TObject; Field: TField); procedure TfEditorDBBase.dsDataTableDataChange(Sender: TObject; Field: TField);
begin begin
inherited; inherited;
if not (Sender as TDADataSource).Opening then if not (Sender as TDADataSource).DataTable.Opening and
not (Sender as TDADataSource).DataTable.Closing and
not (Sender as TDADataSource).DataTable.Fetching then
ActualizarEstadoEditor; ActualizarEstadoEditor;
end; end;

View File

@ -75,6 +75,10 @@ inherited fEditorDBItem: TfEditorDBItem
TabOrder = 2 TabOrder = 2
object pagGeneral: TTabSheet object pagGeneral: TTabSheet
Caption = 'General' Caption = 'General'
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
end end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar

View File

@ -39,6 +39,7 @@ inherited frViewDetallesGenerico: TfrViewDetallesGenerico
OptionsSelection.MultiSelect = True OptionsSelection.MultiSelect = True
OptionsSelection.UnselectFocusedRecordOnExit = False OptionsSelection.UnselectFocusedRecordOnExit = False
OptionsView.CellEndEllipsis = True OptionsView.CellEndEllipsis = True
OptionsView.NoDataToDisplayInfoText = '<No hay datos a visualizar>'
OptionsView.CellAutoHeight = True OptionsView.CellAutoHeight = True
OptionsView.ColumnAutoWidth = True OptionsView.ColumnAutoWidth = True
OptionsView.GridLineColor = cl3DLight OptionsView.GridLineColor = cl3DLight

View File

@ -94,7 +94,7 @@ end;
procedure TfrViewDetallesGenerico.actAnchoAutomaticoExecute(Sender: TObject); procedure TfrViewDetallesGenerico.actAnchoAutomaticoExecute(Sender: TObject);
begin begin
inherited; inherited;
cxGridView.ApplyBestFit; cxGridView.ApplyBestFit(nil, True, False);
end; end;
procedure TfrViewDetallesGenerico.actEliminarExecute(Sender: TObject); procedure TfrViewDetallesGenerico.actEliminarExecute(Sender: TObject);

View File

@ -2,8 +2,8 @@ inherited frViewPreview: TfrViewPreview
object frxPreview: TfrxPreview object frxPreview: TfrxPreview
Left = 0 Left = 0
Top = 0 Top = 0
Width = 294 Width = 445
Height = 214 Height = 291
Align = alClient Align = alClient
OutlineVisible = False OutlineVisible = False
OutlineWidth = 121 OutlineWidth = 121

View File

@ -1,14 +1,14 @@
inherited frViewTotales: TfrViewTotales inherited frViewTotales: TfrViewTotales
Width = 451 Width = 790
Height = 284 Height = 303
Align = alBottom Align = alBottom
ExplicitWidth = 451 ExplicitWidth = 799
ExplicitHeight = 284 ExplicitHeight = 303
object dxLayoutControl1: TdxLayoutControl object dxLayoutControl1: TdxLayoutControl
AlignWithMargins = True AlignWithMargins = True
Left = 0 Left = 0
Top = 0 Top = 0
Width = 451 Width = 790
Height = 217 Height = 217
Margins.Left = 0 Margins.Left = 0
Margins.Top = 0 Margins.Top = 0
@ -19,6 +19,7 @@ inherited frViewTotales: TfrViewTotales
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
ExplicitWidth = 451
object Bevel1: TBevel object Bevel1: TBevel
Left = 104 Left = 104
Top = 109 Top = 109
@ -27,14 +28,14 @@ inherited frViewTotales: TfrViewTotales
Shape = bsBottomLine Shape = bsBottomLine
end end
object Bevel3: TBevel object Bevel3: TBevel
Left = 278 Left = 401
Top = 28 Top = 28
Width = 3 Width = 3
Height = 122 Height = 122
Shape = bsRightLine Shape = bsRightLine
end end
object Bevel4: TBevel object Bevel4: TBevel
Left = 390 Left = 513
Top = 109 Top = 109
Width = 192 Width = 192
Height = 9 Height = 9
@ -77,7 +78,7 @@ inherited frViewTotales: TfrViewTotales
Width = 87 Width = 87
end end
object ImporteIVA: TcxDBCurrencyEdit object ImporteIVA: TcxDBCurrencyEdit
Left = 461 Left = 584
Top = 55 Top = 55
AutoSize = False AutoSize = False
DataBinding.DataField = 'IMPORTE_IVA' DataBinding.DataField = 'IMPORTE_IVA'
@ -112,7 +113,7 @@ inherited frViewTotales: TfrViewTotales
Width = 20 Width = 20
end end
object ImporteTotal: TcxDBCurrencyEdit object ImporteTotal: TcxDBCurrencyEdit
Left = 391 Left = 514
Top = 129 Top = 129
AutoSize = False AutoSize = False
DataBinding.DataField = 'IMPORTE_TOTAL' DataBinding.DataField = 'IMPORTE_TOTAL'
@ -182,7 +183,7 @@ inherited frViewTotales: TfrViewTotales
Width = 65 Width = 65
end end
object edtIVA: TcxDBSpinEdit object edtIVA: TcxDBSpinEdit
Left = 390 Left = 513
Top = 55 Top = 55
AutoSize = False AutoSize = False
DataBinding.DataField = 'IVA' DataBinding.DataField = 'IVA'
@ -223,7 +224,7 @@ inherited frViewTotales: TfrViewTotales
Width = 65 Width = 65
end end
object ImporteBase: TcxDBCurrencyEdit object ImporteBase: TcxDBCurrencyEdit
Left = 390 Left = 513
Top = 28 Top = 28
AutoSize = False AutoSize = False
DataBinding.DataField = 'BASE_IMPONIBLE' DataBinding.DataField = 'BASE_IMPONIBLE'
@ -258,7 +259,7 @@ inherited frViewTotales: TfrViewTotales
Width = 91 Width = 91
end end
object edtRE: TcxDBSpinEdit object edtRE: TcxDBSpinEdit
Left = 390 Left = 513
Top = 82 Top = 82
AutoSize = False AutoSize = False
DataBinding.DataField = 'RE' DataBinding.DataField = 'RE'
@ -299,7 +300,7 @@ inherited frViewTotales: TfrViewTotales
Width = 65 Width = 65
end end
object ImporteRE: TcxDBCurrencyEdit object ImporteRE: TcxDBCurrencyEdit
Left = 461 Left = 584
Top = 82 Top = 82
AutoSize = False AutoSize = False
DataBinding.DataField = 'IMPORTE_RE' DataBinding.DataField = 'IMPORTE_RE'
@ -438,7 +439,7 @@ inherited frViewTotales: TfrViewTotales
Width = 20 Width = 20
end end
object bTiposIVA: TButton object bTiposIVA: TButton
Left = 130 Left = 253
Top = 55 Top = 55
Width = 132 Width = 132
Height = 21 Height = 21

View File

@ -49,52 +49,52 @@
<DelphiCompile Include="Contactos_view.dpk"> <DelphiCompile Include="Contactos_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Pedidos a proveedor\adortl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\ApplicationBase.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\ApplicationBase.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Base.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Base.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\bdertl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\bdertl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\ccpackD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\ccpackD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cfpack_d11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cfpack_d11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Contactos_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Contactos_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Contactos_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Contactos_model.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxDataD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxDataD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxEditorsD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxEditorsD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxExportD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxExportD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxExtEditorsD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxExtEditorsD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxGridD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxGridD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxLibraryD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\cxPageControlD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\DataAbstract_Core_D11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dbrtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\designide.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dsnap.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dsnap.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxComnD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxComnD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxGDIPlusD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxGDIPlusD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxLayoutControlD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxLayoutControlD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\dxThemeD11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\FormasPago_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\FormasPago_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\FormasPago_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\FormasPago_model.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\GUIBase.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\GUISDK_D11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\Jcl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\JclVcl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\JvCoreD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\JvCtrlsD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\JvGlobusD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvGlobusD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\JvStdCtrlsD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\JvSystemD11R.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD11R.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\PngComponentsD10.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\PNG_D10.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\RemObjects_Core_D11.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\rtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\TiposIVA_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\TiposIVA_controller.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\TiposIVA_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\TiposIVA_model.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vcl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vclactnband.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vcldb.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vcljpg.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\vclx.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
<DCCReference Include="..\..\Pedidos a proveedor\xmlrtl.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\xmlrtl.dcp" />
<DCCReference Include="uContactosViewRegister.pas" /> <DCCReference Include="uContactosViewRegister.pas" />
<DCCReference Include="uEditorCliente.pas"> <DCCReference Include="uEditorCliente.pas">
<Form>fEditorCliente</Form> <Form>fEditorCliente</Form>

View File

@ -7,7 +7,6 @@ inherited fEditorContacto: TfEditorContacto
ClientWidth = 632 ClientWidth = 632
Scaled = False Scaled = False
ExplicitWidth = 640 ExplicitWidth = 640
ExplicitHeight = 240
PixelsPerInch = 96 PixelsPerInch = 96
TextHeight = 13 TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader inherited JvNavPanelHeader: TJvNavPanelHeader
@ -73,7 +72,7 @@ inherited fEditorContacto: TfEditorContacto
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 626 Width = 626
ActivePage = pagPersonal ActivePage = pagDatosBancarios
ExplicitWidth = 626 ExplicitWidth = 626
inherited pagGeneral: TTabSheet inherited pagGeneral: TTabSheet
ExplicitLeft = 4 ExplicitLeft = 4
@ -109,18 +108,6 @@ inherited fEditorContacto: TfEditorContacto
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 618 Width = 618
ExplicitWidth = 618 ExplicitWidth = 618
inherited ToolButton1: TToolButton
ExplicitWidth = 113
end
inherited ToolButton4: TToolButton
ExplicitWidth = 113
end
inherited ToolButton2: TToolButton
ExplicitWidth = 113
end
inherited ToolButton7: TToolButton
ExplicitWidth = 113
end
end end
end end
end end
@ -152,18 +139,6 @@ inherited fEditorContacto: TfEditorContacto
inherited ToolBar1: TToolBar inherited ToolBar1: TToolBar
Width = 618 Width = 618
ExplicitWidth = 618 ExplicitWidth = 618
inherited ToolButton1: TToolButton
ExplicitWidth = 113
end
inherited ToolButton4: TToolButton
ExplicitWidth = 113
end
inherited ToolButton2: TToolButton
ExplicitWidth = 113
end
inherited ToolButton7: TToolButton
ExplicitWidth = 113
end
end end
end end
end end

View File

@ -46,11 +46,11 @@
<DelphiCompile Include="Obras_controller.dpk"> <DelphiCompile Include="Obras_controller.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Lib\ApplicationBase.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\ApplicationBase.dcp" />
<DCCReference Include="..\..\Lib\Contactos_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Contactos_model.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\Obras_data.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Obras_data.dcp" />
<DCCReference Include="..\..\Lib\Obras_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Obras_model.dcp" />
<DCCReference Include="uObrasController.pas" /> <DCCReference Include="uObrasController.pas" />
<DCCReference Include="View\uIEditorListaObras.pas" /> <DCCReference Include="View\uIEditorListaObras.pas" />
<DCCReference Include="View\uIEditorObra.pas" /> <DCCReference Include="View\uIEditorObra.pas" />

View File

@ -29,6 +29,10 @@ type
procedure QuitarDireccion(AObra: IBizObra); procedure QuitarDireccion(AObra: IBizObra);
procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload; procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload;
procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload; procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload;
// procedure NuevaEjecucion(AObra: IBizObra; const AFecha : TDateTime);
procedure CerrarEjecucionActiva(AObra: IBizObra; const AFecha : TDateTime);
function LocalizarEjecucionActiva(AEjecuciones: IBizEjecucionesObra): boolean;
end; end;
TObrasController = class(TControllerBase, IObrasController) TObrasController = class(TControllerBase, IObrasController)
@ -58,7 +62,7 @@ type
function Eliminar(const ID : Integer): Boolean; overload; function Eliminar(const ID : Integer): Boolean; overload;
function Eliminar(AObra : IBizObra): Boolean; overload; function Eliminar(AObra : IBizObra): Boolean; overload;
function Guardar(AObra : IBizObra): Boolean; function Guardar(AObra : IBizObra): Boolean;
procedure DescartarCambios(AObra : IBizObra); virtual; procedure DescartarCambios(AObra : IBizObra);
function Existe(const ID: Integer) : Boolean; virtual; function Existe(const ID: Integer) : Boolean; virtual;
procedure Anadir(AObra : IBizObra); procedure Anadir(AObra : IBizObra);
function Buscar(const ID: Integer): IBizObra; function Buscar(const ID: Integer): IBizObra;
@ -70,17 +74,19 @@ type
function Duplicar(AObra: IBizObra): IBizObra; function Duplicar(AObra: IBizObra): IBizObra;
procedure Preview(AObra : IBizObra); procedure Preview(AObra : IBizObra);
procedure Print(AObra : IBizObra); procedure Print(AObra : IBizObra);
// procedure NuevaEjecucion(AObra: IBizObra; const AFecha : TDateTime);
procedure CerrarEjecucionActiva(AObra: IBizObra; const AFecha : TDateTime);
procedure QuitarDireccion(AObra: IBizObra); procedure QuitarDireccion(AObra: IBizObra);
procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload; procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload;
procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload; procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload;
function LocalizarEjecucionActiva(AEjecuciones: IBizEjecucionesObra): boolean;
end; end;
implementation implementation
uses uses
cxControls, DB, uEditorRegistryUtils, schObrasClient_Intf, cxControls, DB, uEditorRegistryUtils, schObrasClient_Intf,
uIEditorObras, uIEditorObra, uDataModuleObras, uIEditorObras, uIEditorObra, uDataModuleObras, Variants,
uDataModuleUsuarios, uDAInterfaces, uDataTableUtils, uFactuGES_App, uDataModuleUsuarios, uDAInterfaces, uDataTableUtils, uFactuGES_App,
uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorListaObras; uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorListaObras;
@ -166,6 +172,35 @@ begin
end; end;
end; end;
procedure TObrasController.CerrarEjecucionActiva(AObra: IBizObra;
const AFecha: TDateTime);
begin
if not Assigned(AObra) then
raise Exception.Create ('Obra no asignada (CerrarEjecucion)');
if AObra.DataTable.Active then
AObra.DataTable.Active := True;
{ with AObra.Ejecuciones do
begin
Insert;
FECHA_INICIO := AObra.EjecucionEnCurso.FECHA_INICIO;
FECHA_FIN := AFecha;
ID_SUBCONTRATA := AObra.EjecucionEnCurso.ID_SUBCONTRATA;
NOMBRE := AObra.EjecucionEnCurso.NOMBRE;
IMPORTE_GASTOS := AObra.EjecucionEnCurso.IMPORTE_GASTOS;
IMPORTE_INGRESOS := AObra.EjecucionEnCurso.IMPORTE_INGRESOS;
IMPORTE_TOTAL := AObra.EjecucionEnCurso.IMPORTE_TOTAL;
OBSERVACIONES.AddStrings(AObra.EjecucionEnCurso.OBSERVACIONES.Strings);
Post;
end;
with AObra.EjecucionEnCurso do
begin
Delete;
end;}
end;
procedure TObrasController.CopiarDireccion(const ACliente: IBizCliente; procedure TObrasController.CopiarDireccion(const ACliente: IBizCliente;
AObra: IBizObra); AObra: IBizObra);
var var
@ -217,7 +252,7 @@ begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf); Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end; end;
procedure TObrasController.DescartarCambios(AObra: IBizObra); procedure TObrasController.DescartarCambios(AObra : IBizObra);
begin begin
if not Assigned(AObra) then if not Assigned(AObra) then
raise Exception.Create ('Obra no asignado'); raise Exception.Create ('Obra no asignado');
@ -454,9 +489,9 @@ begin
begin begin
ShowHourglassCursor; ShowHourglassCursor;
try try
// AsignarCodigo(AObra); if (AObra.DataTable.State in dsEditModes) then
AObra.DataTable.Post;
AObra.DataTable.ApplyUpdates; AObra.DataTable.ApplyUpdates;
Result := True; Result := True;
finally finally
HideHourglassCursor; HideHourglassCursor;
@ -464,6 +499,60 @@ begin
end; end;
end; end;
function TObrasController.LocalizarEjecucionActiva(
AEjecuciones: IBizEjecucionesObra): boolean;
begin
Result := False;
if not Assigned(AEjecuciones) then
raise Exception.Create ('Ejecuciones no asignada (LocalizarEjecucionActiva)');
if AEjecuciones.IsEmpty then
Exit;
ShowHourglassCursor;
try
with AEjecuciones.DataTable do
begin
DisableControls;
try
First;
while not EOF do
begin
if AEjecuciones.FECHA_FINIsNull then
begin
Result := True;
Break;
end
else
Next;
end;
finally
EnableControls;
end;
end;
finally
HideHourglassCursor;
end;
end;
{procedure TObrasController.NuevaEjecucion(AObra: IBizObra;
const AFecha: TDateTime);
begin
if not Assigned(AObra) then
raise Exception.Create ('Obra no asignada (NuevaEjecucion)');
if AObra.DataTable.Active then
AObra.DataTable.Active := True;
with AObra.EjecucionEnCurso do
begin
Insert;
FECHA_INICIO := AFecha;
Post;
end;
end;}
function TObrasController.Nuevo: IBizObra; function TObrasController.Nuevo: IBizObra;
var var
AObra : IBizObra; AObra : IBizObra;

View File

@ -47,7 +47,7 @@
<DelphiCompile Include="Obras_data.dpk"> <DelphiCompile Include="Obras_data.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\Obras_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Obras_model.dcp" />
<DCCReference Include="uDataModuleObras.pas"> <DCCReference Include="uDataModuleObras.pas">
<Form>DataModuleObras</Form> <Form>DataModuleObras</Form>
</DCCReference> </DCCReference>

View File

@ -1,7 +1,7 @@
inherited DataModuleObras: TDataModuleObras inherited DataModuleObras: TDataModuleObras
OnCreate = DAClientDataModuleCreate OnCreate = DAClientDataModuleCreate
Height = 234 Height = 330
Width = 300 Width = 640
object RORemoteService: TRORemoteService object RORemoteService: TRORemoteService
Message = dmConexion.ROMessage Message = dmConexion.ROMessage
Channel = dmConexion.ROChannel Channel = dmConexion.ROChannel
@ -123,19 +123,6 @@ inherited DataModuleObras: TDataModuleObras
ServerAutoRefresh = True ServerAutoRefresh = True
DictionaryEntry = 'Obras_NOMBRE_CLIENTE' DictionaryEntry = 'Obras_NOMBRE_CLIENTE'
end end
item
Name = 'ID_SUBCONTRATA'
DataType = datInteger
DisplayLabel = 'Obras_ID_SUBCONTRATA'
DictionaryEntry = 'Obras_ID_SUBCONTRATA'
end
item
Name = 'NOMBRE_SUBCONTRATA'
DataType = datString
Size = 255
DisplayLabel = 'Subcontrata'
DictionaryEntry = 'Obras_NOMBRE_SUBCONTRATA'
end
item item
Name = 'FECHA_ALTA' Name = 'FECHA_ALTA'
DataType = datDateTime DataType = datDateTime
@ -151,6 +138,11 @@ inherited DataModuleObras: TDataModuleObras
DataType = datString DataType = datString
Size = 20 Size = 20
DictionaryEntry = 'Obras_USUARIO' DictionaryEntry = 'Obras_USUARIO'
end
item
Name = 'ID_EJECUCION'
DataType = datInteger
ServerAutoRefresh = True
end> end>
Params = <> Params = <>
StreamingOptions = [soDisableEventsWhileStreaming] StreamingOptions = [soDisableEventsWhileStreaming]
@ -160,7 +152,7 @@ inherited DataModuleObras: TDataModuleObras
LogicalName = 'Obras' LogicalName = 'Obras'
IndexDefs = <> IndexDefs = <>
Left = 192 Left = 192
Top = 96 Top = 104
end end
object ds_Obras: TDADataSource object ds_Obras: TDADataSource
DataSet = tbl_Obras.Dataset DataSet = tbl_Obras.Dataset
@ -168,4 +160,329 @@ inherited DataModuleObras: TDataModuleObras
Left = 192 Left = 192
Top = 32 Top = 32
end end
object tbl_ObrasEjecucionesPedidosProveedor: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID'
DataType = datAutoInc
GeneratorName = 'GEN_OBRAS_EJEC_PEDIDOS_PROV_ID'
Required = True
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID'
InPrimaryKey = True
end
item
Name = 'ID_EJECUCION'
DataType = datInteger
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_EJECUCION'
end
item
Name = 'ID_PEDIDO'
DataType = datInteger
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PEDIDO'
end
item
Name = 'ID_PRESUPUESTO'
DataType = datInteger
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PRESUPUESTO'
end
item
Name = 'SITUACION'
DataType = datString
Size = 9
LogChanges = False
DisplayLabel = 'Situaci'#243'n'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_SITUACION'
end
item
Name = 'ID_PROVEEDOR'
DataType = datInteger
LogChanges = False
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_PROVEEDOR'
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Proveedor'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE'
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Referencia'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_REFERENCIA'
end
item
Name = 'FECHA_PEDIDO'
DataType = datDateTime
LogChanges = False
DisplayLabel = 'Fecha pedido'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_FECHA_PEDIDO'
end
item
Name = 'FECHA_ENTREGA'
DataType = datDateTime
LogChanges = False
DisplayLabel = 'Fecha de entrega'
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_FECHA_ENTREGA'
end
item
Name = 'ID_ALMACEN'
DataType = datInteger
LogChanges = False
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_ALMACEN'
end
item
Name = 'NOMBRE_ALMACEN'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Almac'#233'n'
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE_ALMACEN'
end
item
Name = 'ID_OBRA'
DataType = datInteger
LogChanges = False
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_ID_OBRA'
end
item
Name = 'NOMBRE_OBRA'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Obra para reserva'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_NOMBRE_OBRA'
end
item
Name = 'BASE_IMPONIBLE'
DataType = datCurrency
LogChanges = False
DisplayLabel = 'Base imponible'
Alignment = taRightJustify
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPedidosProveedor_BASE_IMPONIBLE'
end>
Params = <>
MasterMappingMode = mmWhere
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_Obras
MasterSource = ds_ObrasEjecuciones
MasterFields = 'ID'
DetailFields = 'ID_EJECUCION'
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'ObrasEjecucionesPedidosProveedor'
IndexDefs = <>
Left = 456
Top = 256
end
object ds_ObrasEjecucionesPedidosProveedor: TDADataSource
DataSet = tbl_ObrasEjecucionesPedidosProveedor.Dataset
DataTable = tbl_ObrasEjecucionesPedidosProveedor
Left = 456
Top = 192
end
object tbl_ObrasEjecucionesPresupuestos: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID'
DataType = datAutoInc
GeneratorName = 'GEN_OBRAS_EJEC_PRESUPUESTOS_ID'
Required = True
DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID'
InPrimaryKey = True
end
item
Name = 'ID_EJECUCION'
DataType = datInteger
DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID_EJECUCION'
end
item
Name = 'ID_PRESUPUESTO'
DataType = datInteger
DictionaryEntry = 'ObrasEjecucionesPresupuestos_ID_PRESUPUESTO'
end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Referencia'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPresupuestos_REFERENCIA'
end
item
Name = 'FECHA_PRESUPUESTO'
DataType = datDateTime
LogChanges = False
DisplayLabel = 'Fecha presupuesto'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPresupuestos_FECHA_PRESUPUESTO'
end
item
Name = 'SITUACION'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Situaci'#243'n'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPresupuestos_SITUACION'
end
item
Name = 'BASE_IMPONIBLE'
DataType = datCurrency
LogChanges = False
DisplayLabel = 'Base imponible'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPresupuestos_BASE_IMPONIBLE'
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
LogChanges = False
DisplayLabel = 'Nombre'
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecucionesPresupuestos_NOMBRE'
end>
Params = <>
MasterMappingMode = mmWhere
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_Obras
MasterSource = ds_ObrasEjecuciones
MasterFields = 'ID'
DetailFields = 'ID_EJECUCION'
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'ObrasEjecucionesPresupuestos'
IndexDefs = <>
Left = 192
Top = 256
end
object ds_ObrasEjecucionesPresupuestos: TDADataSource
DataSet = tbl_ObrasEjecucionesPresupuestos.Dataset
DataTable = tbl_ObrasEjecucionesPresupuestos
Left = 192
Top = 192
end
object tbl_ObrasEjecuciones: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
item
Name = 'ID'
DataType = datAutoInc
GeneratorName = 'GEN_OBRAS_EJECUCIONES_ID'
Required = True
DisplayLabel = 'ObrasEjecuciones_ID'
DictionaryEntry = 'ObrasEjecuciones_ID'
InPrimaryKey = True
end
item
Name = 'ID_OBRA'
DataType = datInteger
DictionaryEntry = 'ObrasEjecuciones_ID_OBRA'
end
item
Name = 'FECHA_INICIO'
DataType = datDateTime
DisplayLabel = 'Inicio'
DictionaryEntry = 'ObrasEjecuciones_FECHA_INICIO'
end
item
Name = 'FECHA_FIN'
DataType = datDateTime
DisplayLabel = 'Finalizaci'#243'n'
DictionaryEntry = 'ObrasEjecuciones_FECHA_FIN'
end
item
Name = 'ID_SUBCONTRATA'
DataType = datInteger
DictionaryEntry = 'ObrasEjecuciones_ID_SUBCONTRATA'
end
item
Name = 'NOMBRE'
DataType = datString
Size = 255
DisplayLabel = 'Subcontrata'
DictionaryEntry = 'ObrasEjecuciones_NOMBRE'
end
item
Name = 'IMPORTE_GASTOS'
DataType = datCurrency
LogChanges = False
DisplayLabel = 'Gastos'
Alignment = taRightJustify
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecuciones_IMPORTE_GASTOS'
end
item
Name = 'IMPORTE_INGRESOS'
DataType = datCurrency
LogChanges = False
DisplayLabel = 'Ingresos'
Alignment = taRightJustify
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecuciones_IMPORTE_INGRESOS'
end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
LogChanges = False
DisplayLabel = 'Total'
Alignment = taRightJustify
ServerAutoRefresh = True
DictionaryEntry = 'ObrasEjecuciones_IMPORTE_TOTAL'
end
item
Name = 'OBSERVACIONES'
DataType = datMemo
DisplayLabel = 'Observaciones'
DictionaryEntry = 'ObrasEjecuciones_OBSERVACIONES'
end
item
Name = 'FECHA_ALTA'
DataType = datDateTime
DisplayLabel = 'ObrasEjecuciones_FECHA_ALTA'
DictionaryEntry = 'ObrasEjecuciones_FECHA_ALTA'
end
item
Name = 'FECHA_MODIFICACION'
DataType = datDateTime
DisplayLabel = 'ObrasEjecuciones_FECHA_MODIFICACION'
DictionaryEntry = 'ObrasEjecuciones_FECHA_MODIFICACION'
end>
Params = <>
MasterMappingMode = mmWhere
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteDataAdapter = rda_Obras
MasterSource = ds_Obras
MasterFields = 'ID'
DetailFields = 'ID_OBRA'
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'ObrasEjecuciones'
IndexDefs = <>
Left = 320
Top = 104
end
object ds_ObrasEjecuciones: TDADataSource
DataSet = tbl_ObrasEjecuciones.Dataset
DataTable = tbl_ObrasEjecuciones
Left = 320
Top = 32
end
end end

View File

@ -19,11 +19,19 @@ type
rda_Obras: TDARemoteDataAdapter; rda_Obras: TDARemoteDataAdapter;
tbl_Obras: TDAMemDataTable; tbl_Obras: TDAMemDataTable;
ds_Obras: TDADataSource; ds_Obras: TDADataSource;
tbl_ObrasEjecucionesPedidosProveedor: TDAMemDataTable;
ds_ObrasEjecucionesPedidosProveedor: TDADataSource;
tbl_ObrasEjecucionesPresupuestos: TDAMemDataTable;
ds_ObrasEjecucionesPresupuestos: TDADataSource;
tbl_ObrasEjecuciones: TDAMemDataTable;
ds_ObrasEjecuciones: TDADataSource;
procedure DAClientDataModuleCreate(Sender: TObject); procedure DAClientDataModuleCreate(Sender: TObject);
protected protected
procedure AsignarClaseNegocio(AAlmacen: TDADataTable); virtual; function _GetPresupuestos : IBizEjecucionPresupuestos;
function _GetPedidos : IBizEjecucionPedidosProveedor;
function _GetEjecuciones : IBizEjecucionesObra;
public public
function GetEjecucionPresupuestos(const IDEjecucion: Integer) : IBizEjecucionPresupuestos;
function GetItems : IBizObra; function GetItems : IBizObra;
function GetItem(const ID : Integer) : IBizObra; function GetItem(const ID : Integer) : IBizObra;
function NewItem : IBizObra; function NewItem : IBizObra;
@ -37,12 +45,7 @@ uses
FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls, FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls,
schObrasClient_Intf; schObrasClient_Intf;
{ TdmAlmacens } { TDataModuleObras }
procedure TDataModuleObras.AsignarClaseNegocio(AAlmacen: TDADataTable);
begin
AAlmacen.BusinessRulesID := BIZ_CLIENT_OBRA;
end;
procedure TDataModuleObras.DAClientDataModuleCreate(Sender: TObject); procedure TDataModuleObras.DAClientDataModuleCreate(Sender: TObject);
begin begin
@ -55,6 +58,92 @@ begin
Result := GetItem(ID_NULO) Result := GetItem(ID_NULO)
end; end;
function TDataModuleObras._GetEjecuciones: IBizEjecucionesObra;
var
AEjecuciones : TDAMemDataTable;
begin
ShowHourglassCursor;
try
AEjecuciones := CloneDataTable(tbl_ObrasEjecuciones);
with AEjecuciones do
begin
BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION;
DetailOptions := DetailOptions - [dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates];
end;
with TBizEjecucionesObra(AEjecuciones.BusinessEventsObj) do
begin
Presupuestos := _GetPresupuestos;
Pedidos := _GetPedidos;
end;
Result := (AEjecuciones as IBizEjecucionesObra);
finally
HideHourglassCursor;
end;
end;
function TDataModuleObras._GetPedidos: IBizEjecucionPedidosProveedor;
var
ATable : TDAMemDataTable;
begin
ShowHourglassCursor;
try
ATable := CloneDataTable(tbl_ObrasEjecucionesPedidosProveedor);
ATable.BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION_PEDIDO_PROVEEDOR;
Result := ATable as IBizEjecucionPedidosProveedor;
finally
HideHourglassCursor;
end;
end;
function TDataModuleObras._GetPresupuestos: IBizEjecucionPresupuestos;
var
ATable : TDAMemDataTable;
begin
ShowHourglassCursor;
try
ATable := CloneDataTable(tbl_ObrasEjecucionesPresupuestos);
ATable.BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO;
Result := ATable as IBizEjecucionPresupuestos;
finally
HideHourglassCursor;
end;
end;
function TDataModuleObras.GetEjecucionPresupuestos(
const IDEjecucion: Integer): IBizEjecucionPresupuestos;
var
APresupuestos : TDAMemDataTable;
Condicion: TDAWhereExpression;
begin
ShowHourglassCursor;
try
APresupuestos := CloneDataTable(tbl_ObrasEjecucionesPresupuestos);
with APresupuestos do
begin
BusinessRulesID := BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO;
with DynamicWhere do
begin
// (ID_EJECUCION = :ID)
Condicion := NewBinaryExpression(NewField('', fld_ObrasEjecucionesPresupuestosID_EJECUCION),
NewConstant(IDEjecucion, datInteger), dboEqual);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
end;
Result := (APresupuestos as IBizEjecucionPresupuestos);
finally
HideHourglassCursor;
end;
end;
function TDataModuleObras.GetItem(const ID: Integer): IBizObra; function TDataModuleObras.GetItem(const ID: Integer): IBizObra;
var var
Condicion: TDAWhereExpression; Condicion: TDAWhereExpression;
@ -86,11 +175,12 @@ begin
ShowHourglassCursor; ShowHourglassCursor;
try try
AObra := CloneDataTable(tbl_Obras); AObra := CloneDataTable(tbl_Obras);
AObra.BusinessRulesID := BIZ_CLIENT_OBRA;
AsignarClaseNegocio(AObra); with TBizObra(AObra.BusinessEventsObj) do
Ejecuciones := _GetEjecuciones;
Result := (AObra as IBizObra); Result := (AObra as IBizObra);
finally finally
HideHourglassCursor; HideHourglassCursor;
end; end;

View File

@ -8,6 +8,7 @@ uses
type type
IDataModuleObras = interface IDataModuleObras = interface
['{0FE2B5E6-DE76-4834-B27F-3C754C96B76A}'] ['{0FE2B5E6-DE76-4834-B27F-3C754C96B76A}']
// function GetEjecucionPresupuestos(const IDEjecucion: Integer) : IBizEjecucionPresupuestos;
function GetItems: IBizObra; function GetItems: IBizObra;
function GetItem(const ID : Integer) : IBizObra; function GetItem(const ID : Integer) : IBizObra;
function NewItem : IBizObra; function NewItem : IBizObra;

View File

@ -44,7 +44,6 @@
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Obras_model.dpk</Source></Source><Excluded_Packages> <BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Obras_model.dpk</Source></Source><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\applet100.bpl">CodeGear Control Panel Applet Package</Excluded_Packages> <Excluded_Packages Name="$(BDS)\bin\applet100.bpl">CodeGear Control Panel Applet Package</Excluded_Packages>
</Excluded_Packages></Delphi.Personality></BorlandProject></BorlandProject> </Excluded_Packages></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions> </ProjectExtensions>
@ -55,6 +54,7 @@
</DelphiCompile> </DelphiCompile>
<DCCReference Include="ApplicationBase.dcp" /> <DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" /> <DCCReference Include="Base.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="Data\uIDataModuleObras.pas" /> <DCCReference Include="Data\uIDataModuleObras.pas" />
<DCCReference Include="schObrasClient_Intf.pas" /> <DCCReference Include="schObrasClient_Intf.pas" />
<DCCReference Include="schObrasServer_Intf.pas" /> <DCCReference Include="schObrasServer_Intf.pas" />

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -3,47 +3,559 @@ unit uBizObras;
interface interface
uses uses
uDAInterfaces, uDADataTable, schObrasClient_Intf; uDAInterfaces, uDADataTable, schObrasClient_Intf, uBizContactos,
uDBSelectionListUtils;
const const
BIZ_CLIENT_OBRA = 'Client.Obra'; BIZ_CLIENT_OBRA = 'Client.Obra';
BIZ_CLIENT_OBRA_EJECUCION = 'Client.Obra.Ejecucion';
// BIZ_CLIENT_OBRA_EJECUCIONES_CERRADAS = 'Client.Obra.EjecucionesCerradas';
// BIZ_CLIENT_OBRA_EJECUCION_ENCURSO = 'Client.Obra.EjecucionEnCurso';
BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO = 'Client.Obra.Ejecucion.Presupuesto';
BIZ_CLIENT_OBRA_EJECUCION_PEDIDO_PROVEEDOR = 'Client.Obra.Ejecucion.PedidoProveedor';
type type
IBizEjecucionPresupuestos = interface(IObrasEjecucionesPresupuestos)
['{F335B047-7559-4C40-8DA7-E06719D1F683}']
function EsNuevo : Boolean;
end;
IBizEjecucionPedidosProveedor = interface(IObrasEjecucionesPedidosProveedor)
['{404DB8A7-7D36-459B-8C6A-33139B40F2C5}']
function EsNuevo : Boolean;
end;
IBizEjecucionesObra = interface(IObrasEjecuciones)
['{6BAFA32B-39A5-4BC3-9F16-97A36745C3D9}']
function EsNuevo : Boolean;
function EnCurso : Boolean;
function GetPresupuestos: IBizEjecucionPresupuestos;
procedure SetPresupuestos(Value: IBizEjecucionPresupuestos);
property Presupuestos: IBizEjecucionPresupuestos read GetPresupuestos write SetPresupuestos;
function GetPedidos: IBizEjecucionPedidosProveedor;
procedure SetPedidos(Value: IBizEjecucionPedidosProveedor);
property Pedidos: IBizEjecucionPedidosProveedor read GetPedidos write SetPedidos;
end;
// IBizEjecucionesCerradasObra = interface(IObrasEjecucionesTerminadas)
// ['{08CB6A7C-058C-4A07-AFED-64D861296BFE}']
// {procedure SetSubcontrata(AValue : IBizProveedor);
// function GetSubcontrata : IBizProveedor;
// property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata;}
//
// // Esta propidad es para que el controlador pueda acceder directamente
// // a la propiedad Cliente
// {procedure _SetSubcontrata(AValue : IBizProveedor);
// function _GetSubcontrata : IBizProveedor;
// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;}
// end;
//
//
// IBizEjecucionEnCursoObra = interface(IObrasEjecucionesEnCurso)
// ['{DDEE3280-32B0-4C5C-AC14-9AADD641407D}']
// function EsNuevo : Boolean;
// {procedure SetSubcontrata(AValue : IBizProveedor);
// function GetSubcontrata : IBizProveedor;
// property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata;}
//
// // Esta propidad es para que el controlador pueda acceder directamente
// // a la propiedad Cliente
// {procedure _SetSubcontrata(AValue : IBizProveedor);
// function _GetSubcontrata : IBizProveedor;
// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;}
// end;
IBizObra = interface(IObras) IBizObra = interface(IObras)
['{B447622D-3BFA-4432-BDC8-FD93FA73D65F}'] ['{96A7EC59-23CB-44FF-B3CF-8679C6F001C8}']
procedure SetCliente(AValue : IBizCliente);
function GetCliente : IBizCliente;
property Cliente : IBizCliente read GetCliente write SetCliente;
// Esta propidad es para que el controlador pueda acceder directamente
// a la propiedad Cliente
procedure _SetCliente(AValue : IBizCliente);
function _GetCliente : IBizCliente;
property _Cliente : IBizCliente read _GetCliente write _SetCliente;
function GetEjecuciones: IBizEjecucionesObra;
procedure SetEjecuciones(Value: IBizEjecucionesObra);
property Ejecuciones: IBizEjecucionesObra read GetEjecuciones write SetEjecuciones;
function EsNuevo : Boolean; function EsNuevo : Boolean;
end; end;
TBizObra = class(TObrasDataTableRules, IBizObra)
TBizEjecucionPresupuestos = class(TObrasEjecucionesPresupuestosDataTableRules, IBizEjecucionPresupuestos)
protected protected
procedure BeforeInsert(Sender: TDADataTable); override;
public
function EsNuevo : Boolean;
end;
TBizEjecucionPedidosProveedor = class(TObrasEjecucionesPedidosProveedorDataTableRules, IBizEjecucionPedidosProveedor)
protected
procedure BeforeInsert(Sender: TDADataTable); override;
public
function EsNuevo : Boolean;
end;
TBizEjecucionesObra = class(TObrasEjecucionesDataTableRules, IBizEjecucionesObra)
protected
FPresupuestos : IBizEjecucionPresupuestos;
FPresupuestosLink : TDADataSource;
FPedidos : IBizEjecucionPedidosProveedor;
FPedidosLink : TDADataSource;
procedure BeforeInsert(Sender: TDADataTable); override;
procedure OnNewRecord(Sender: TDADataTable); override; procedure OnNewRecord(Sender: TDADataTable); override;
function GetPresupuestos: IBizEjecucionPresupuestos;
procedure SetPresupuestos(Value: IBizEjecucionPresupuestos);
function GetPedidos: IBizEjecucionPedidosProveedor;
procedure SetPedidos(Value: IBizEjecucionPedidosProveedor);
public public
function EsNuevo : Boolean; function EsNuevo : Boolean;
function EnCurso : Boolean;
constructor Create(aDataTable: TDADataTable); override;
destructor Destroy; override;
property Presupuestos: IBizEjecucionPresupuestos read GetPresupuestos write SetPresupuestos;
property Pedidos: IBizEjecucionPedidosProveedor read GetPedidos write SetPedidos;
end;
// TBizEjecucionesCerradasObra = class(TObrasEjecucionesTerminadasDataTableRules, IBizEjecucionesCerradasObra)
// protected
//// FSubcontrata : IBizProveedor;
//
// procedure BeforeInsert(Sender: TDADataTable); override;
// procedure OnNewRecord(Sender: TDADataTable); override;
//
//
//{ procedure _SetSubcontrata(AValue : IBizProveedor);
// function _GetSubcontrata : IBizProveedor;
//
// procedure SetSubcontrata(AValue : IBizProveedor);
// function GetSubcontrata : IBizProveedor;}
// public
// constructor Create(aDataTable: TDADataTable); override;
// destructor Destroy; override;
//
//{ property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata;
// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;}
// end;
//
// TBizEjecucionEnCursoObra = class(TObrasEjecucionesEnCursoDataTableRules, IBizEjecucionEnCursoObra)
// protected
//// FSubcontrata : IBizProveedor;
//
// procedure BeforeInsert(Sender: TDADataTable); override;
// procedure OnNewRecord(Sender: TDADataTable); override;
//
//{ procedure _SetSubcontrata(AValue : IBizProveedor);
// function _GetSubcontrata : IBizProveedor;
//
// procedure SetSubcontrata(AValue : IBizProveedor);
// function GetSubcontrata : IBizProveedor;}
// public
// function EsNuevo : Boolean;
// constructor Create(aDataTable: TDADataTable); override;
// destructor Destroy; override;
//
//{ property Subcontrata : IBizProveedor read GetSubcontrata write SetSubcontrata;
// property _Subcontrata : IBizProveedor read _GetSubcontrata write _SetSubcontrata;}
// end;
TBizObra = class(TObrasDataTableRules, IBizObra, ISeleccionable)
protected
FSeleccionableInterface : ISeleccionable;
FCliente : IBizCliente;
// FEjecucionEnCurso : IBizEjecucionEnCursoObra;
// FEjecucionEnCursoLink : TDADataSource;
FEjecuciones : IBizEjecucionesObra;
FEjecucionesLink : TDADataSource;
procedure SetCliente(AValue : IBizCliente);
function GetCliente : IBizCliente;
procedure _SetCliente(AValue : IBizCliente);
function _GetCliente : IBizCliente;
function GetEjecuciones: IBizEjecucionesObra;
procedure SetEjecuciones(Value: IBizEjecucionesObra);
// function GetEjecucionEnCurso: IBizEjecucionEnCursoObra;
// procedure SetEjecucionEnCurso(Value: IBizEjecucionEnCursoObra);
procedure OnNewRecord(Sender: TDADataTable); override;
public
constructor Create(aDataTable: TDADataTable); override;
destructor Destroy; override;
function EsNuevo : Boolean;
property Cliente : IBizCliente read GetCliente write SetCliente;
property _Cliente : IBizCliente read _GetCliente write _SetCliente;
property Ejecuciones: IBizEjecucionesObra read GetEjecuciones write SetEjecuciones;
// property EjecucionEnCurso: IBizEjecucionEnCursoObra read GetEjecucionEnCurso write SetEjecucionEnCurso;
property SeleccionableInterface : ISeleccionable read FSeleccionableInterface
write FSeleccionableInterface implements ISeleccionable;
end; end;
implementation implementation
uses uses
uFactuGES_App; uFactuGES_App, DB, DateUtils, SysUtils, uDataTableUtils;
{ TBizEjecucionesCerradasObra }
procedure TBizEjecucionesObra.BeforeInsert(Sender: TDADataTable);
var
AMasterTable : TDADataTable;
begin
inherited;
AMasterTable := DataTable.GetMasterDataTable;
if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then
AMasterTable.Post;
end;
constructor TBizEjecucionesObra.Create(aDataTable: TDADataTable);
begin
inherited;
FPresupuestos := NIL;
FPresupuestosLink := TDADataSource.Create(NIL);
FPresupuestosLink.DataTable := aDataTable;
FPedidos := NIL;
FPedidosLink := TDADataSource.Create(NIL);
FPedidosLink.DataTable := aDataTable;
end;
destructor TBizEjecucionesObra.Destroy;
begin
FPresupuestos := NIL;
FreeANDNIL(FPresupuestosLink);
FPedidos := NIL;
FreeANDNIL(FPedidosLink);
inherited;
end;
function TBizEjecucionesObra.EnCurso: Boolean;
begin
Result := FECHA_FINIsNull;
end;
function TBizEjecucionesObra.EsNuevo: Boolean;
begin
Result := (ID < 0);
end;
function TBizEjecucionesObra.GetPedidos: IBizEjecucionPedidosProveedor;
begin
Result := FPedidos;
end;
function TBizEjecucionesObra.GetPresupuestos: IBizEjecucionPresupuestos;
begin
Result := FPresupuestos;
end;
procedure TBizEjecucionesObra.OnNewRecord(Sender: TDADataTable);
begin
inherited;
FECHA_INICIO := DateOf(Now);
end;
procedure TBizEjecucionesObra.SetPedidos(
Value: IBizEjecucionPedidosProveedor);
begin
FPedidos := Value;
EnlazarMaestroDetalle(FPedidosLink, FPedidos);
end;
procedure TBizEjecucionesObra.SetPresupuestos(Value: IBizEjecucionPresupuestos);
begin
FPresupuestos := Value;
EnlazarMaestroDetalle(FPresupuestosLink, FPresupuestos);
end;
{procedure TBizEjecucionesCerradasObra.SetSubcontrata(AValue: IBizProveedor);
var
bEnEdicion : Boolean;
begin
FSubcontrata := AValue;
if Assigned(FSubcontrata) then
begin
if not FSubcontrata.DataTable.Active then
FSubcontrata.DataTable.Active := True;
if ID_SUBCONTRATA <> FSubcontrata.ID then
begin
bEnEdicion := (DataTable.State in dsEditModes);
if not bEnEdicion then
DataTable.Edit;
ID_SUBCONTRATA := FSubcontrata.ID;
DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles
//si se quita el id de la cabecera y los detalles se desincroniza
if bEnEdicion then
DataTable.Edit;
end;
end;
end;}
{function TBizEjecucionesCerradasObra._GetSubcontrata: IBizProveedor;
begin
Result := FSubcontrata;
end;
procedure TBizEjecucionesCerradasObra._SetSubcontrata(AValue: IBizProveedor);
begin
FSubcontrata := AValue;
end;}
{ TBizEjecucionEnCursoObra }
//procedure TBizEjecucionEnCursoObra.BeforeInsert(Sender: TDADataTable);
//var
// AMasterTable : TDADataTable;
//begin
// inherited;
// AMasterTable := DataTable.GetMasterDataTable;
// if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then
// AMasterTable.Post;
//end;
//
//constructor TBizEjecucionEnCursoObra.Create(aDataTable: TDADataTable);
//begin
// inherited;
//// FSubcontrata := NIL;
//end;
//
//destructor TBizEjecucionEnCursoObra.Destroy;
//begin
//// FSubcontrata := NIL;
// inherited;
//end;
//
//function TBizEjecucionEnCursoObra.EsNuevo: Boolean;
//begin
// Result := (ID < 0);
//end;
//{
//function TBizEjecucionEnCursoObra.GetSubcontrata: IBizProveedor;
//begin
// Result := FSubcontrata;
//end;}
//
//procedure TBizEjecucionEnCursoObra.OnNewRecord(Sender: TDADataTable);
//begin
// inherited;
// FECHA_INICIO := DateOf(Now);
//end;
{procedure TBizEjecucionEnCursoObra.SetSubcontrata(AValue: IBizProveedor);
var
bEnEdicion : Boolean;
begin
FSubcontrata := AValue;
if Assigned(FSubcontrata) then
begin
if not FSubcontrata.DataTable.Active then
FSubcontrata.DataTable.Active := True;
if ID_SUBCONTRATA <> FSubcontrata.ID then
begin
bEnEdicion := (DataTable.State in dsEditModes);
if not bEnEdicion then
DataTable.Edit;
ID_SUBCONTRATA := FSubcontrata.ID;
DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles
//si se quita el id de la cabecera y los detalles se desincroniza
if bEnEdicion then
DataTable.Edit;
end;
end;
end;}
{function TBizEjecucionEnCursoObra._GetSubcontrata: IBizProveedor;
begin
Result := FSubcontrata;
end;}
{procedure TBizEjecucionEnCursoObra._SetSubcontrata(AValue: IBizProveedor);
begin
FSubcontrata := AValue;
end;}
{ TBizObra } { TBizObra }
constructor TBizObra.Create(aDataTable: TDADataTable);
begin
inherited;
FCliente := NIL;
// FEjecucionEnCurso := NIL;
// FEjecucionEnCursoLink := TDADataSource.Create(NIL);
// FEjecucionEnCursoLink.DataTable := aDataTable;
FEjecuciones := NIL;
FEjecucionesLink := TDADataSource.Create(NIL);
FEjecucionesLink.DataTable := aDataTable;
FSeleccionableInterface := TSeleccionable.Create(aDataTable);
end;
destructor TBizObra.Destroy;
begin
FCliente := NIL;
// FEjecucionEnCurso := NIL;
// FreeANDNIL(FEjecucionEnCursoLink);
FEjecuciones := NIL;
FreeANDNIL(FEjecucionesLink);
FSeleccionableInterface := NIL;
inherited;
end;
function TBizObra.EsNuevo: Boolean; function TBizObra.EsNuevo: Boolean;
begin begin
Result := (ID < 0); Result := (ID < 0);
end; end;
function TBizObra.GetCliente: IBizCliente;
begin
Result := FCliente;
end;
//function TBizObra.GetEjecucionEnCurso: IBizEjecucionEnCursoObra;
//begin
// Result := FEjecucionEnCurso;
//end;
function TBizObra.GetEjecuciones: IBizEjecucionesObra;
begin
Result := FEjecuciones;
end;
procedure TBizObra.OnNewRecord(Sender: TDADataTable); procedure TBizObra.OnNewRecord(Sender: TDADataTable);
begin begin
inherited; inherited;
// ID := GetRecNo; // -1, -2, -3...
ID_EMPRESA := AppFactuGES.EmpresaActiva.ID; ID_EMPRESA := AppFactuGES.EmpresaActiva.ID;
USUARIO := AppFactuGES.UsuarioActivo.UserName; USUARIO := AppFactuGES.UsuarioActivo.UserName;
end; end;
procedure TBizObra.SetCliente(AValue: IBizCliente);
var
bEnEdicion : Boolean;
begin
FCliente := AValue;
if Assigned(FCliente) then
begin
if not FCliente.DataTable.Active then
FCliente.DataTable.Active := True;
if ID_Cliente <> FCliente.ID then
begin
bEnEdicion := (DataTable.State in dsEditModes);
if not bEnEdicion then
DataTable.Edit;
ID_CLIENTE := FCliente.ID;
DataTable.Post; //Muy importante ya que es necesario hacer un post de la cabecera antes de añadir detalles
//si se quita el id de la cabecera y los detalles se desincroniza
if bEnEdicion then
DataTable.Edit;
end;
end;
end;
//procedure TBizObra.SetEjecucionEnCurso(Value: IBizEjecucionEnCursoObra);
//begin
// FEjecucionEnCurso := Value;
// EnlazarMaestroDetalle(FEjecucionEnCursoLink, FEjecucionEnCurso);
//end;
procedure TBizObra.SetEjecuciones(Value: IBizEjecucionesObra);
begin
FEjecuciones := Value;
EnlazarMaestroDetalle(FEjecucionesLink, FEjecuciones);
end;
function TBizObra._GetCliente: IBizCliente;
begin
Result := FCliente;
end;
procedure TBizObra._SetCliente(AValue: IBizCliente);
begin
FCliente := AValue;
end;
{ TBizEjecucionPresupuestos }
procedure TBizEjecucionPresupuestos.BeforeInsert(Sender: TDADataTable);
var
AMasterTable : TDADataTable;
begin
inherited;
AMasterTable := DataTable.GetMasterDataTable;
if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then
AMasterTable.Post;
end;
function TBizEjecucionPresupuestos.EsNuevo: Boolean;
begin
Result := (ID < 0);
end;
{ TBizEjecucionPedidosProveedor }
procedure TBizEjecucionPedidosProveedor.BeforeInsert(Sender: TDADataTable);
var
AMasterTable : TDADataTable;
begin
inherited;
AMasterTable := DataTable.GetMasterDataTable;
if Assigned(AMasterTable) and (AMasterTable.State = dsInsert) then
AMasterTable.Post;
end;
function TBizEjecucionPedidosProveedor.EsNuevo: Boolean;
begin
Result := (ID < 0);
end;
initialization initialization
RegisterDataTableRules(BIZ_CLIENT_OBRA, TBizObra); RegisterDataTableRules(BIZ_CLIENT_OBRA, TBizObra);
RegisterDataTableRules(BIz_CLIENT_OBRA_EJECUCION, TBizEjecucionesObra);
// RegisterDataTableRules(BIz_CLIENT_OBRA_EJECUCIONES_CERRADAS, TBizEjecucionesCerradasObra);
// RegisterDataTableRules(BIz_CLIENT_OBRA_EJECUCION_ENCURSO, TBizEjecucionEnCursoObra);
RegisterDataTableRules(BIZ_CLIENT_OBRA_EJECUCION_PRESUPUESTO, TBizEjecucionPresupuestos);
RegisterDataTableRules(BIZ_CLIENT_OBRA_EJECUCION_PEDIDO_PROVEEDOR, TBizEjecucionPedidosProveedor);
finalization finalization

View File

@ -92,7 +92,6 @@ begin
begin begin
ParamByName('ID_ALMACEN').Value := aChange.NewValueByName[fld_ObrasID]; ParamByName('ID_ALMACEN').Value := aChange.NewValueByName[fld_ObrasID];
ParamByName('ID_CLIENTE').Value := aChange.NewValueByName[fld_ObrasID_CLIENTE]; ParamByName('ID_CLIENTE').Value := aChange.NewValueByName[fld_ObrasID_CLIENTE];
ParamByName('ID_SUBCONTRATA').Value := aChange.NewValueByName[fld_ObrasID_SUBCONTRATA];
Execute; Execute;
end; end;
finally finally
@ -108,8 +107,8 @@ begin
inherited; inherited;
//IMPORTANTE ESTO HACE QUE EL CLIENTE SE ENTERE DEL ERROR Y LOS BP ASOCIADOS EN EL //IMPORTANTE ESTO HACE QUE EL CLIENTE SE ENTERE DEL ERROR Y LOS BP ASOCIADOS EN EL
//SCHEMA HAGAN ROLLBACK TAMBIEN //SCHEMA HAGAN ROLLBACK TAMBIEN
CanRemoveFromDelta := True; // CanRemoveFromDelta := True;
raise Exception.Create(Error.Message); // raise Exception.Create(Error.Message);
end; end;
procedure TBizObrasServer.Update_Datos_Obra(aChange: TDADeltaChange); procedure TBizObrasServer.Update_Datos_Obra(aChange: TDADeltaChange);
@ -127,7 +126,6 @@ begin
begin begin
ParamByName('OLD_ID_ALMACEN').Value := aChange.NewValueByName[fld_ObrasID]; ParamByName('OLD_ID_ALMACEN').Value := aChange.NewValueByName[fld_ObrasID];
ParamByName('ID_CLIENTE').Value := aChange.NewValueByName[fld_ObrasID_CLIENTE]; ParamByName('ID_CLIENTE').Value := aChange.NewValueByName[fld_ObrasID_CLIENTE];
ParamByName('ID_SUBCONTRATA').Value := aChange.NewValueByName[fld_ObrasID_SUBCONTRATA];
Execute; Execute;
end; end;
finally finally

View File

@ -10,6 +10,9 @@
<Projects Include="..\..\GUIBase\GUIBase.dproj" /> <Projects Include="..\..\GUIBase\GUIBase.dproj" />
<Projects Include="..\..\Servidor\FactuGES_Server.dproj" /> <Projects Include="..\..\Servidor\FactuGES_Server.dproj" />
<Projects Include="..\Contactos\Views\Contactos_view.dproj" /> <Projects Include="..\Contactos\Views\Contactos_view.dproj" />
<Projects Include="..\Pedidos a proveedor\Controller\PedidosProveedor_controller.dproj" />
<Projects Include="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" />
<Projects Include="..\Presupuestos de cliente\Model\PresupuestosCliente_model.dproj" />
<Projects Include="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" /> <Projects Include="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" />
<Projects Include="Controller\Obras_controller.dproj" /> <Projects Include="Controller\Obras_controller.dproj" />
<Projects Include="Data\Obras_data.dproj" /> <Projects Include="Data\Obras_data.dproj" />
@ -59,6 +62,33 @@
<Target Name="Contactos_view:Make"> <Target Name="Contactos_view:Make">
<MSBuild Projects="..\Contactos\Views\Contactos_view.dproj" Targets="Make" /> <MSBuild Projects="..\Contactos\Views\Contactos_view.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PresupuestosCliente_model">
<MSBuild Projects="..\Presupuestos de cliente\Model\PresupuestosCliente_model.dproj" Targets="" />
</Target>
<Target Name="PresupuestosCliente_model:Clean">
<MSBuild Projects="..\Presupuestos de cliente\Model\PresupuestosCliente_model.dproj" Targets="Clean" />
</Target>
<Target Name="PresupuestosCliente_model:Make">
<MSBuild Projects="..\Presupuestos de cliente\Model\PresupuestosCliente_model.dproj" Targets="Make" />
</Target>
<Target Name="PresupuestosCliente_controller">
<MSBuild Projects="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" Targets="" />
</Target>
<Target Name="PresupuestosCliente_controller:Clean">
<MSBuild Projects="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" Targets="Clean" />
</Target>
<Target Name="PresupuestosCliente_controller:Make">
<MSBuild Projects="..\Presupuestos de cliente\Controller\PresupuestosCliente_controller.dproj" Targets="Make" />
</Target>
<Target Name="PresupuestosCliente_view">
<MSBuild Projects="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" Targets="" />
</Target>
<Target Name="PresupuestosCliente_view:Clean">
<MSBuild Projects="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" Targets="Clean" />
</Target>
<Target Name="PresupuestosCliente_view:Make">
<MSBuild Projects="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" Targets="Make" />
</Target>
<Target Name="Obras_model"> <Target Name="Obras_model">
<MSBuild Projects="Model\Obras_model.dproj" Targets="" /> <MSBuild Projects="Model\Obras_model.dproj" Targets="" />
</Target> </Target>
@ -122,23 +152,23 @@
<Target Name="FactuGES_Server:Make"> <Target Name="FactuGES_Server:Make">
<MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" /> <MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PresupuestosCliente_view"> <Target Name="PedidosProveedor_controller">
<MSBuild Projects="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" Targets="" /> <MSBuild Projects="..\Pedidos a proveedor\Controller\PedidosProveedor_controller.dproj" Targets="" />
</Target> </Target>
<Target Name="PresupuestosCliente_view:Clean"> <Target Name="PedidosProveedor_controller:Clean">
<MSBuild Projects="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" Targets="Clean" /> <MSBuild Projects="..\Pedidos a proveedor\Controller\PedidosProveedor_controller.dproj" Targets="Clean" />
</Target> </Target>
<Target Name="PresupuestosCliente_view:Make"> <Target Name="PedidosProveedor_controller:Make">
<MSBuild Projects="..\Presupuestos de cliente\Views\PresupuestosCliente_view.dproj" Targets="Make" /> <MSBuild Projects="..\Pedidos a proveedor\Controller\PedidosProveedor_controller.dproj" Targets="Make" />
</Target> </Target>
<Target Name="Build"> <Target Name="Build">
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_view;Obras_model;Obras_data;Obras_controller;Obras_view;Obras_plugin;FactuGES;FactuGES_Server;PresupuestosCliente_view" /> <CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_view;PresupuestosCliente_model;PresupuestosCliente_controller;PresupuestosCliente_view;Obras_model;Obras_data;Obras_controller;Obras_view;Obras_plugin;FactuGES;FactuGES_Server;PedidosProveedor_controller" />
</Target> </Target>
<Target Name="Clean"> <Target Name="Clean">
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_view:Clean;Obras_model:Clean;Obras_data:Clean;Obras_controller:Clean;Obras_view:Clean;Obras_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;PresupuestosCliente_view:Clean" /> <CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_view:Clean;PresupuestosCliente_model:Clean;PresupuestosCliente_controller:Clean;PresupuestosCliente_view:Clean;Obras_model:Clean;Obras_data:Clean;Obras_controller:Clean;Obras_view:Clean;Obras_plugin:Clean;FactuGES:Clean;FactuGES_Server:Clean;PedidosProveedor_controller:Clean" />
</Target> </Target>
<Target Name="Make"> <Target Name="Make">
<CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_view:Make;Obras_model:Make;Obras_data:Make;Obras_controller:Make;Obras_view:Make;Obras_plugin:Make;FactuGES:Make;FactuGES_Server:Make;PresupuestosCliente_view:Make" /> <CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_view:Make;PresupuestosCliente_model:Make;PresupuestosCliente_controller:Make;PresupuestosCliente_view:Make;Obras_model:Make;Obras_data:Make;Obras_controller:Make;Obras_view:Make;Obras_plugin:Make;FactuGES:Make;FactuGES_Server:Make;PedidosProveedor_controller:Make" />
</Target> </Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" /> <Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project> </Project>

View File

@ -39,56 +39,500 @@
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject> <BorlandProject>
<BorlandProject xmlns=""> <Delphi.Personality> <Parameters> <BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Source><Source Name="MainSource">Obras_plugin.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
<Parameters Name="UseLauncher">False</Parameters>
<Parameters Name="LoadAllSymbols">True</Parameters>
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
</Parameters>
<Package_Options>
<Package_Options Name="ImplicitBuild">True</Package_Options>
<Package_Options Name="DesigntimeOnly">False</Package_Options>
<Package_Options Name="RuntimeOnly">False</Package_Options>
</Package_Options>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">3082</VersionInfo>
<VersionInfo Name="CodePage">1252</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
<Source>
<Source Name="MainSource">Obras_plugin.dpk</Source>
</Source>
</Delphi.Personality> </BorlandProject></BorlandProject>
</ProjectExtensions> </ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" /> <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup> <ItemGroup>
<DelphiCompile Include="Obras_plugin.dpk"> <DelphiCompile Include="Obras_plugin.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Lib\Obras_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Obras_controller.dcp" />
<DCCReference Include="..\..\Lib\Obras_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Obras_model.dcp" />
<DCCReference Include="..\..\Lib\Obras_view.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Obras_view.dcp" />
<DCCReference Include="uPluginObras.pas" /> <DCCReference Include="uPluginObras.pas" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=6011
Activate=0
Activate Handle=1
Save Log File=1
Foreground Tab=0
Freeze Activate=0
Freeze Timeout=60
SMTP From=eurekalog@email.com
SMTP Host=
SMTP Port=25
SMTP UserID=
SMTP Password=
Append to Log=0
TerminateBtn Operation=2
Errors Number=32
Errors Terminate=3
Email Address=
Email Object=
Email Send Options=0
Output Path=
Encrypt Password=
AutoCloseDialogSecs=0
WebSendMode=0
SupportULR=
HTMLLayout Count=15
HTMLLine0="%3Chtml%3E"
HTMLLine1=" %3Chead%3E"
HTMLLine2=" %3C/head%3E"
HTMLLine3=" %3Cbody TopMargin=10 LeftMargin=10%3E"
HTMLLine4=" %3Ctable width="100%%" border="0"%3E"
HTMLLine5=" %3Ctr%3E"
HTMLLine6=" %3Ctd nowrap%3E"
HTMLLine7=" %3Cfont face="Lucida Console, Courier" size="2"%3E"
HTMLLine8=" %3C%%HTML_TAG%%%3E"
HTMLLine9=" %3C/font%3E"
HTMLLine10=" %3C/td%3E"
HTMLLine11=" %3C/tr%3E"
HTMLLine12=" %3C/table%3E"
HTMLLine13=" %3C/body%3E"
HTMLLine14="%3C/html%3E"
AutoCrashOperation=2
AutoCrashNumber=10
AutoCrashMinutes=1
WebURL=
WebUserID=
WebPassword=
WebPort=0
AttachedFiles=
ProxyURL=
ProxyUser=
ProxyPassword=
ProxyPort=8080
TrakerUser=
TrakerPassword=
TrakerAssignTo=
TrakerProject=
TrakerCategory=
TrakerTrialID=
ZipPassword=
PreBuildEvent=
PostSuccessfulBuildEvent=
PostFailureBuildEvent=
ExceptionDialogType=2
Count=0
EMail Message Line Count=0
loNoDuplicateErrors=0
loAppendReproduceText=0
loDeleteLogAtVersionChange=0
loAddComputerNameInLogFileName=0
loSaveModulesAndProcessesSections=1
loSaveAssemblerAndCPUSections=1
soAppStartDate=1
soAppName=1
soAppVersionNumber=1
soAppParameters=1
soAppCompilationDate=1
soAppUpTime=1
soExcDate=1
soExcAddress=1
soExcModuleName=1
soExcModuleVersion=1
soExcType=1
soExcMessage=1
soExcID=1
soExcCount=1
soExcStatus=1
soExcNote=1
soUserID=1
soUserName=1
soUserEmail=1
soUserPrivileges=1
soUserCompany=1
soActCtlsFormClass=1
soActCtlsFormText=1
soActCtlsControlClass=1
soActCtlsControlText=1
soCmpName=1
soCmpTotalMemory=1
soCmpFreeMemory=1
soCmpTotalDisk=1
soCmpFreeDisk=1
soCmpSysUpTime=1
soCmpProcessor=1
soCmpDisplayMode=1
soCmpDisplayDPI=1
soCmpVideoCard=1
soCmpPrinter=1
soOSType=1
soOSBuildN=1
soOSUpdate=1
soOSLanguage=1
soOSCharset=1
soNetIP=1
soNetSubmask=1
soNetGateway=1
soNetDNS1=1
soNetDNS2=1
soNetDHCP=1
soCustomData=1
sndShowSendDialog=1
sndShowSuccessFailureMsg=0
sndSendEntireLog=0
sndSendXMLLogCopy=0
sndSendScreenshot=1
sndUseOnlyActiveWindow=0
sndSendLastHTMLPage=1
sndSendInSeparatedThread=0
sndAddDateInFileName=0
sndAddComputerNameInFileName=0
edoSendErrorReportChecked=1
edoAttachScreenshotChecked=1
edoShowCopyToClipOption=1
edoShowDetailsButton=1
edoShowInDetailedMode=0
edoShowInTopMostMode=0
edoUseEurekaLogLookAndFeel=0
edoShowSendErrorReportOption=1
edoShowAttachScreenshotOption=1
edoShowCustomButton=0
csoShowDLLs=1
csoShowBPLs=1
csoShowBorlandThreads=1
csoShowWindowsThreads=1
csoDoNotStoreProcNames=0
boPauseBorlandThreads=0
boDoNotPauseMainThread=0
boPauseWindowsThreads=0
boUseMainModuleOptions=1
boCopyLogInCaseOfError=1
boSaveCompressedCopyInCaseOfError=0
boHandleSafeCallExceptions=1
boCallRTLExceptionEvent=0
boCatchHandledExceptions=0
loCatchLeaks=0
loGroupsSonLeaks=1
loHideBorlandLeaks=1
loFreeAllLeaks=1
loCatchLeaksExceptions=1
cfoReduceFileSize=1
cfoCheckFileCorruption=0
Count mtInformationMsgCaption=1
mtInformationMsgCaption0="Information."
Count mtQuestionMsgCaption=1
mtQuestionMsgCaption0="Question."
Count mtErrorMsgCaption=1
mtErrorMsgCaption0="Error."
Count mtDialog_Caption=1
mtDialog_Caption0="Error occurred"
Count mtDialog_ErrorMsgCaption=2
mtDialog_ErrorMsgCaption0="An error has occurred during program execution."
mtDialog_ErrorMsgCaption1="Please read the following information for further details."
Count mtDialog_GeneralCaption=1
mtDialog_GeneralCaption0="General"
Count mtDialog_GeneralHeader=1
mtDialog_GeneralHeader0="General Information"
Count mtDialog_CallStackCaption=1
mtDialog_CallStackCaption0="Call Stack"
Count mtDialog_CallStackHeader=1
mtDialog_CallStackHeader0="Call Stack Information"
Count mtDialog_ModulesCaption=1
mtDialog_ModulesCaption0="Modules"
Count mtDialog_ModulesHeader=1
mtDialog_ModulesHeader0="Modules Information"
Count mtDialog_ProcessesCaption=1
mtDialog_ProcessesCaption0="Processes"
Count mtDialog_ProcessesHeader=1
mtDialog_ProcessesHeader0="Processes Information"
Count mtDialog_AsmCaption=1
mtDialog_AsmCaption0="Assembler"
Count mtDialog_AsmHeader=1
mtDialog_AsmHeader0="Assembler Information"
Count mtDialog_CPUCaption=1
mtDialog_CPUCaption0="CPU"
Count mtDialog_CPUHeader=1
mtDialog_CPUHeader0="CPU Information"
Count mtDialog_OKButtonCaption=1
mtDialog_OKButtonCaption0="%26OK"
Count mtDialog_TerminateButtonCaption=1
mtDialog_TerminateButtonCaption0="%26Terminate"
Count mtDialog_RestartButtonCaption=1
mtDialog_RestartButtonCaption0="%26Restart"
Count mtDialog_DetailsButtonCaption=1
mtDialog_DetailsButtonCaption0="%26Details"
Count mtDialog_CustomButtonCaption=1
mtDialog_CustomButtonCaption0="%26Help"
Count mtDialog_SendMessage=1
mtDialog_SendMessage0="%26Send this error via Internet"
Count mtDialog_ScreenshotMessage=1
mtDialog_ScreenshotMessage0="%26Attach a Screenshot image"
Count mtDialog_CopyMessage=1
mtDialog_CopyMessage0="%26Copy to Clipboard"
Count mtDialog_SupportMessage=1
mtDialog_SupportMessage0="Go to the Support Page"
Count mtMSDialog_ErrorMsgCaption=1
mtMSDialog_ErrorMsgCaption0="The application has encountered a problem. We are sorry for the inconvenience."
Count mtMSDialog_RestartCaption=1
mtMSDialog_RestartCaption0="Restart application."
Count mtMSDialog_TerminateCaption=1
mtMSDialog_TerminateCaption0="Terminate application."
Count mtMSDialog_PleaseCaption=1
mtMSDialog_PleaseCaption0="Please tell us about this problem."
Count mtMSDialog_DescriptionCaption=1
mtMSDialog_DescriptionCaption0="We have created an error report that you can send to us. We will treat this report as confidential and anonymous."
Count mtMSDialog_SeeDetailsCaption=1
mtMSDialog_SeeDetailsCaption0="To see what data the error report contains,"
Count mtMSDialog_SeeClickCaption=1
mtMSDialog_SeeClickCaption0="click here."
Count mtMSDialog_HowToReproduceCaption=1
mtMSDialog_HowToReproduceCaption0="What were you doing when the problem happened (optional)?"
Count mtMSDialog_EmailCaption=1
mtMSDialog_EmailCaption0="Email address (optional):"
Count mtMSDialog_SendButtonCaption=1
mtMSDialog_SendButtonCaption0="%26Send Error Report"
Count mtMSDialog_NoSendButtonCaption=1
mtMSDialog_NoSendButtonCaption0="%26Don't Send"
Count mtLog_AppHeader=1
mtLog_AppHeader0="Application"
Count mtLog_AppStartDate=1
mtLog_AppStartDate0="Start Date"
Count mtLog_AppName=1
mtLog_AppName0="Name/Description"
Count mtLog_AppVersionNumber=1
mtLog_AppVersionNumber0="Version Number"
Count mtLog_AppParameters=1
mtLog_AppParameters0="Parameters"
Count mtLog_AppCompilationDate=1
mtLog_AppCompilationDate0="Compilation Date"
Count mtLog_AppUpTime=1
mtLog_AppUpTime0="Up Time"
Count mtLog_ExcHeader=1
mtLog_ExcHeader0="Exception"
Count mtLog_ExcDate=1
mtLog_ExcDate0="Date"
Count mtLog_ExcAddress=1
mtLog_ExcAddress0="Address"
Count mtLog_ExcModuleName=1
mtLog_ExcModuleName0="Module Name"
Count mtLog_ExcModuleVersion=1
mtLog_ExcModuleVersion0="Module Version"
Count mtLog_ExcType=1
mtLog_ExcType0="Type"
Count mtLog_ExcMessage=1
mtLog_ExcMessage0="Message"
Count mtLog_ExcID=1
mtLog_ExcID0="ID"
Count mtLog_ExcCount=1
mtLog_ExcCount0="Count"
Count mtLog_ExcStatus=1
mtLog_ExcStatus0="Status"
Count mtLog_ExcNote=1
mtLog_ExcNote0="Note"
Count mtLog_UserHeader=1
mtLog_UserHeader0="User"
Count mtLog_UserID=1
mtLog_UserID0="ID"
Count mtLog_UserName=1
mtLog_UserName0="Name"
Count mtLog_UserEmail=1
mtLog_UserEmail0="Email"
Count mtLog_UserCompany=1
mtLog_UserCompany0="Company"
Count mtLog_UserPrivileges=1
mtLog_UserPrivileges0="Privileges"
Count mtLog_ActCtrlsHeader=1
mtLog_ActCtrlsHeader0="Active Controls"
Count mtLog_ActCtrlsFormClass=1
mtLog_ActCtrlsFormClass0="Form Class"
Count mtLog_ActCtrlsFormText=1
mtLog_ActCtrlsFormText0="Form Text"
Count mtLog_ActCtrlsControlClass=1
mtLog_ActCtrlsControlClass0="Control Class"
Count mtLog_ActCtrlsControlText=1
mtLog_ActCtrlsControlText0="Control Text"
Count mtLog_CmpHeader=1
mtLog_CmpHeader0="Computer"
Count mtLog_CmpName=1
mtLog_CmpName0="Name"
Count mtLog_CmpTotalMemory=1
mtLog_CmpTotalMemory0="Total Memory"
Count mtLog_CmpFreeMemory=1
mtLog_CmpFreeMemory0="Free Memory"
Count mtLog_CmpTotalDisk=1
mtLog_CmpTotalDisk0="Total Disk"
Count mtLog_CmpFreeDisk=1
mtLog_CmpFreeDisk0="Free Disk"
Count mtLog_CmpSystemUpTime=1
mtLog_CmpSystemUpTime0="System Up Time"
Count mtLog_CmpProcessor=1
mtLog_CmpProcessor0="Processor"
Count mtLog_CmpDisplayMode=1
mtLog_CmpDisplayMode0="Display Mode"
Count mtLog_CmpDisplayDPI=1
mtLog_CmpDisplayDPI0="Display DPI"
Count mtLog_CmpVideoCard=1
mtLog_CmpVideoCard0="Video Card"
Count mtLog_CmpPrinter=1
mtLog_CmpPrinter0="Printer"
Count mtLog_OSHeader=1
mtLog_OSHeader0="Operating System"
Count mtLog_OSType=1
mtLog_OSType0="Type"
Count mtLog_OSBuildN=1
mtLog_OSBuildN0="Build #"
Count mtLog_OSUpdate=1
mtLog_OSUpdate0="Update"
Count mtLog_OSLanguage=1
mtLog_OSLanguage0="Language"
Count mtLog_OSCharset=1
mtLog_OSCharset0="Charset"
Count mtLog_NetHeader=1
mtLog_NetHeader0="Network"
Count mtLog_NetIP=1
mtLog_NetIP0="IP Address"
Count mtLog_NetSubmask=1
mtLog_NetSubmask0="Submask"
Count mtLog_NetGateway=1
mtLog_NetGateway0="Gateway"
Count mtLog_NetDNS1=1
mtLog_NetDNS10="DNS 1"
Count mtLog_NetDNS2=1
mtLog_NetDNS20="DNS 2"
Count mtLog_NetDHCP=1
mtLog_NetDHCP0="DHCP"
Count mtLog_CustInfoHeader=1
mtLog_CustInfoHeader0="Custom Information"
Count mtCallStack_Address=1
mtCallStack_Address0="Address"
Count mtCallStack_Name=1
mtCallStack_Name0="Module"
Count mtCallStack_Unit=1
mtCallStack_Unit0="Unit"
Count mtCallStack_Class=1
mtCallStack_Class0="Class"
Count mtCallStack_Procedure=1
mtCallStack_Procedure0="Procedure/Method"
Count mtCallStack_Line=1
mtCallStack_Line0="Line"
Count mtCallStack_MainThread=1
mtCallStack_MainThread0="Main"
Count mtCallStack_ExceptionThread=1
mtCallStack_ExceptionThread0="Exception Thread"
Count mtCallStack_RunningThread=1
mtCallStack_RunningThread0="Running Thread"
Count mtCallStack_CallingThread=1
mtCallStack_CallingThread0="Calling Thread"
Count mtCallStack_ThreadID=1
mtCallStack_ThreadID0="ID"
Count mtCallStack_ThreadPriority=1
mtCallStack_ThreadPriority0="Priority"
Count mtCallStack_ThreadClass=1
mtCallStack_ThreadClass0="Class"
Count mtCallStack_LeakCaption=1
mtCallStack_LeakCaption0="Memory Leak"
Count mtCallStack_LeakData=1
mtCallStack_LeakData0="Data"
Count mtCallStack_LeakType=1
mtCallStack_LeakType0="Type"
Count mtCallStack_LeakSize=1
mtCallStack_LeakSize0="Total size"
Count mtCallStack_LeakCount=1
mtCallStack_LeakCount0="Count"
Count mtSendDialog_Caption=1
mtSendDialog_Caption0="Send."
Count mtSendDialog_Message=1
mtSendDialog_Message0="Message"
Count mtSendDialog_Resolving=1
mtSendDialog_Resolving0="Resolving DNS..."
Count mtSendDialog_Login=1
mtSendDialog_Login0="Login..."
Count mtSendDialog_Connecting=1
mtSendDialog_Connecting0="Connecting with server..."
Count mtSendDialog_Connected=1
mtSendDialog_Connected0="Connected with server."
Count mtSendDialog_Sending=1
mtSendDialog_Sending0="Sending message..."
Count mtSendDialog_Sent=1
mtSendDialog_Sent0="Message sent."
Count mtSendDialog_SelectProject=1
mtSendDialog_SelectProject0="Select project..."
Count mtSendDialog_Searching=1
mtSendDialog_Searching0="Searching..."
Count mtSendDialog_Modifying=1
mtSendDialog_Modifying0="Modifying..."
Count mtSendDialog_Disconnecting=1
mtSendDialog_Disconnecting0="Disconnecting..."
Count mtSendDialog_Disconnected=1
mtSendDialog_Disconnected0="Disconnected."
Count mtReproduceDialog_Caption=1
mtReproduceDialog_Caption0="Request"
Count mtReproduceDialog_Request=1
mtReproduceDialog_Request0="Please describe the steps to reproduce the error:"
Count mtReproduceDialog_OKButtonCaption=1
mtReproduceDialog_OKButtonCaption0="%26OK"
Count mtModules_Handle=1
mtModules_Handle0="Handle"
Count mtModules_Name=1
mtModules_Name0="Name"
Count mtModules_Description=1
mtModules_Description0="Description"
Count mtModules_Version=1
mtModules_Version0="Version"
Count mtModules_Size=1
mtModules_Size0="Size"
Count mtModules_LastModified=1
mtModules_LastModified0="Modified"
Count mtModules_Path=1
mtModules_Path0="Path"
Count mtProcesses_ID=1
mtProcesses_ID0="ID"
Count mtProcesses_Name=1
mtProcesses_Name0="Name"
Count mtProcesses_Description=1
mtProcesses_Description0="Description"
Count mtProcesses_Version=1
mtProcesses_Version0="Version"
Count mtProcesses_Memory=1
mtProcesses_Memory0="Memory"
Count mtProcesses_Priority=1
mtProcesses_Priority0="Priority"
Count mtProcesses_Threads=1
mtProcesses_Threads0="Threads"
Count mtProcesses_Path=1
mtProcesses_Path0="Path"
Count mtCPU_Registers=1
mtCPU_Registers0="Registers"
Count mtCPU_Stack=1
mtCPU_Stack0="Stack"
Count mtCPU_MemoryDump=1
mtCPU_MemoryDump0="Memory Dump"
Count mtSend_SuccessMsg=1
mtSend_SuccessMsg0="The message was sent successfully."
Count mtSend_FailureMsg=1
mtSend_FailureMsg0="Sorry, sending the message didn't work."
Count mtSend_BugClosedMsg=2
mtSend_BugClosedMsg0="These BUG is just closed."
mtSend_BugClosedMsg1="Contact the program support to obtain an update."
Count mtSend_UnknownErrorMsg=1
mtSend_UnknownErrorMsg0="Unknown error."
Count mtSend_InvalidLoginMsg=1
mtSend_InvalidLoginMsg0="Invalid login request."
Count mtSend_InvalidSearchMsg=1
mtSend_InvalidSearchMsg0="Invalid search request."
Count mtSend_InvalidSelectionMsg=1
mtSend_InvalidSelectionMsg0="Invalid selection request."
Count mtSend_InvalidInsertMsg=1
mtSend_InvalidInsertMsg0="Invalid insert request."
Count mtSend_InvalidModifyMsg=1
mtSend_InvalidModifyMsg0="Invalid modify request."
Count mtFileCrackedMsg=2
mtFileCrackedMsg0="This file is cracked."
mtFileCrackedMsg1="The application will be closed."
Count mtException_LeakMultiFree=1
mtException_LeakMultiFree0="Multi Free memory leak."
Count mtException_LeakMemoryOverrun=1
mtException_LeakMemoryOverrun0="Memory Overrun leak."
Count mtException_AntiFreeze=1
mtException_AntiFreeze0="The application seems to be frozen."
Count mtInvalidEmailMsg=1
mtInvalidEmailMsg0="Invalid email."
TextsCollection=English
EurekaLog Last Line -->

View File

@ -0,0 +1,22 @@
1 VERSIONINFO
FILEVERSION 1,0,0,0
PRODUCTVERSION 1,0,0,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "FileVersion", "1.0.0.0\0"
VALUE "ProductVersion", "1.0.0.0\0"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x0C0A, 1252
END
END

File diff suppressed because it is too large Load Diff

View File

@ -16,7 +16,7 @@ uses
{Used RODLs:} DataAbstract4_Intf, {Used RODLs:} DataAbstract4_Intf,
{Generated:} uDABusinessProcessor, uDABin2DataStreamer, uDADataStreamer, {Generated:} uDABusinessProcessor, uDABin2DataStreamer, uDADataStreamer,
uDAScriptingProvider, uDAClasses, uDAScriptingProvider, uDAClasses,
FactuGES_Intf, uDAInterfaces; FactuGES_Intf, uDAInterfaces, uRORemoteDataModule;
type type
{ TsrvObras } { TsrvObras }
@ -24,13 +24,80 @@ type
Diagrams: TDADiagrams; Diagrams: TDADiagrams;
Bin2DataStreamer: TDABin2DataStreamer; Bin2DataStreamer: TDABin2DataStreamer;
bpObras: TDABusinessProcessor; bpObras: TDABusinessProcessor;
bpObrasEjecuciones: TDABusinessProcessor;
bpObrasEjecucionesPresupuestos: TDABusinessProcessor;
bpObrasEjecucionesPedidosProv: TDABusinessProcessor;
schObras: TDASchema; schObras: TDASchema;
DataDictionary: TDADataDictionary; DataDictionary: TDADataDictionary;
procedure DataAbstractServiceAfterAcquireConnection(aSender: TObject;
const aConnectionName: string;
const aAcquiredConnection: IDAConnection);
procedure DataAbstractServiceAfterExecuteCommand(aSender: TObject;
const aCommand: IDASQLCommand; aRowsAffacted: Integer);
procedure DataAbstractServiceAfterGetDatasetSchema(aSender: TObject;
const aDataset: IDADataset);
procedure DataAbstractServiceAfterProcessDeltas(aSender: TObject;
aDeltaStructs: TDADeltaStructList);
procedure DataAbstractServiceAfterReleaseConnection(aSender: TObject;
const aConnectionName: string);
procedure DataAbstractServiceBeforeExecuteCommand(aSender: TObject;
const aCommand: IDASQLCommand);
procedure DataAbstractServiceBeforeGetDatasetData(aSender: TObject;
const aDataset: IDADataset; const aIncludeSchema: Boolean;
const aMaxRecords: Integer);
procedure DataAbstractServiceBeforeGetDatasetSchema(aSender: TObject;
const aDataset: IDADataset);
procedure DataAbstractServiceBeforeProcessDeltas(aSender: TObject;
aDeltaStructs: TDADeltaStructList);
procedure DataAbstractServiceBeforeReleaseConnection(aSender: TObject;
const aConnectionName: string;
const aAcquiredConnection: IDAConnection);
procedure DataAbstractServiceGetSchemaAsXMLEvent(aSender: TObject;
var aSchemaXML: string);
procedure DataAbstractServiceProcessDeltasError(aSender: TObject;
aDeltaStructs: TDADeltaStructList; aError: Exception;
var aDoRaise: Boolean);
procedure DataAbstractServiceUpdateDataBeginTransaction(
Sender: TObject; var aUseDefaultTransactionLogic: Boolean);
procedure DataAbstractServiceUpdateDataCommitTransaction(
Sender: TObject; var aUseDefaultTransactionLogic: Boolean);
procedure DataAbstractServiceUpdateDataRollBackTransaction(
Sender: TObject; var aUseDefaultTransactionLogic: Boolean);
procedure DataAbstractServiceValidateCommandExecution(Sender: TObject;
const aConnection: IDAConnection; const aDatasetName: string;
const aParamNames: array of string;
const aParamValues: array of Variant; aSchema: TDASchema;
var Allowed: Boolean);
procedure DataAbstractServiceValidateDatasetAccess(Sender: TObject;
const aConnection: IDAConnection; const aDatasetName: string;
const aParamNames: array of string;
const aParamValues: array of Variant; aSchema: TDASchema;
var Allowed: Boolean);
procedure DataAbstractServiceValidateDirectSQLAccess(Sender: TObject;
const aConnection: IDAConnection; const aSQLText: string;
const aParamNames: array of string;
const aParamValues: array of Variant; var Allowed: Boolean);
procedure DataAbstractServiceAcquireConnectionFailure(aSender: TObject;
const aConnectionName: string; aError: Exception);
procedure DataAbstractServiceDestroy(Sender: TObject);
procedure DataAbstractServiceActivate(const aClientID: TGUID;
aSession: TROSession; const aMessage: IROMessage);
procedure DataAbstractServiceDeactivate(const aClientID: TGUID;
aSession: TROSession);
procedure DataAbstractServiceBusinessProcessorAutoCreated(
aSender: TRORemoteDataModule;
BusinessProcessor: TDABusinessProcessor);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string);
procedure DARemoteServiceAfterGetDatasetData(const Dataset: IDADataset; procedure DARemoteServiceAfterGetDatasetData(const Dataset: IDADataset;
const IncludeSchema: Boolean; const MaxRecords: Integer); const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DARemoteServiceCreate(Sender: TObject); procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject; procedure DataAbstractServiceAfterGetDatasetData(aSender: TObject;
var aConnectionName: string); const aDataset: IDADataset; const aIncludeSchema: Boolean;
const aMaxRecords: Integer);
private
procedure Log(Astr: string);
end; end;
implementation implementation
@ -39,7 +106,7 @@ implementation
uses uses
{Generated:} FactuGES_Invk, uDataModuleServer, {Generated:} FactuGES_Invk, uDataModuleServer,
uDatabaseUtils, schObrasClient_Intf, uRestriccionesUsuarioUtils, uDatabaseUtils, schObrasClient_Intf, uRestriccionesUsuarioUtils,
uBizObrasServer; uBizObrasServer, Variants;
procedure Create_srvObras(out anInstance : IUnknown); procedure Create_srvObras(out anInstance : IUnknown);
begin begin
@ -62,6 +129,10 @@ end;
procedure TsrvObras.DARemoteServiceCreate(Sender: TObject); procedure TsrvObras.DARemoteServiceCreate(Sender: TObject);
begin begin
// Log('***Create***');
// Log('************');
// Log('');
SessionManager := dmServer.SessionManager; SessionManager := dmServer.SessionManager;
bpObras.BusinessRulesID := BIZ_SERVER_OBRA; bpObras.BusinessRulesID := BIZ_SERVER_OBRA;
end; end;
@ -69,9 +140,319 @@ end;
procedure TsrvObras.DataAbstractServiceBeforeAcquireConnection( procedure TsrvObras.DataAbstractServiceBeforeAcquireConnection(
aSender: TObject; var aConnectionName: string); aSender: TObject; var aConnectionName: string);
begin begin
inherited;
ConnectionName := dmServer.ConnectionName; ConnectionName := dmServer.ConnectionName;
// Log('***BeforeAcquireConnection***');
// Log('aConnectionName:'#9 + aConnectionName);
// Log('************************');
// Log('');
end; end;
procedure TsrvObras.DataAbstractServiceAfterAcquireConnection(
aSender: TObject; const aConnectionName: string;
const aAcquiredConnection: IDAConnection);
begin
inherited;
// Log('***AfterAcquireConnection***');
// Log('ConnectionName:'#9 + aConnectionName);
// Log('aAcquiredConnection.Name:'#9 + aAcquiredConnection.Name);
// Log('aAcquiredConnection.ConnectionString:'#9 + aAcquiredConnection.ConnectionString);
// Log('****************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceAfterExecuteCommand(
aSender: TObject; const aCommand: IDASQLCommand; aRowsAffacted: Integer);
begin
inherited;
// Log('***AfterExecuteCommand***');
// Log('aCommand.Name:'#9 + aCommand.Name);
// Log('aCommand.SQL:'#9 + aCommand.SQL);
// Log('aRowsAffacted:'#9 + IntToStr(aRowsAffacted));
// Log('*************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceAfterGetDatasetData(
aSender: TObject; const aDataset: IDADataset;
const aIncludeSchema: Boolean; const aMaxRecords: Integer);
begin
inherited;
// Log('***AfterGetDatasetData***');
// Log('aDataset.Name:'#9 + aDataset.Name);
// Log('aDataset.SQL:'#9 + aDataset.SQL);
// Log('aIncludeSchema:'#9 + BoolStr[aIncludeSchema]);
// Log('aMaxRecords:'#9 + IntToStr(aMaxRecords));
// Log('*************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceAfterGetDatasetSchema(
aSender: TObject; const aDataset: IDADataset);
begin
inherited;
// Log('***AfterGetDatasetSchema***');
// Log('aDataset.Name:'#9 + aDataset.Name);
// Log('aDataset.SQL:'#9 + aDataset.SQL);
// Log('***************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceAfterProcessDeltas(
aSender: TObject; aDeltaStructs: TDADeltaStructList);
begin
inherited;
// Log('***AfterProcessDeltas***');
// Log('aDeltaStructs.Count:'#9 + IntToStr(aDeltaStructs.Count));
// Log('************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceAfterReleaseConnection(
aSender: TObject; const aConnectionName: string);
begin
inherited;
// Log('***AfterReleaseConnection***');
// Log('aConnectionName:'#9 + aConnectionName);
// Log('****************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceBeforeExecuteCommand(
aSender: TObject; const aCommand: IDASQLCommand);
begin
inherited;
// Log('***BeforeExecuteCommand***');
// Log('aCommand.Name:'#9 + aCommand.Name);
// Log('aCommand.SQL:'#9 + aCommand.SQL);
// Log('************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceBeforeGetDatasetData(
aSender: TObject; const aDataset: IDADataset;
const aIncludeSchema: Boolean; const aMaxRecords: Integer);
begin
inherited;
// Log('***BeforeGetDatasetData***');
// Log('aDataset.Name:'#9 + aDataset.Name);
// Log('aDataset.SQL:'#9 + aDataset.SQL);
// Log('aIncludeSchema:'#9 + BoolStr[aIncludeSchema]);
// Log('aMaxRecords:'#9 + IntToStr(aMaxRecords));
// Log('*************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceBeforeGetDatasetSchema(
aSender: TObject; const aDataset: IDADataset);
begin
inherited;
// Log('***BeforeGetDatasetSchema***');
// Log('aDataset.Name:'#9 + aDataset.Name);
// Log('aDataset.SQL:'#9 + aDataset.SQL);
// Log('****************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceBeforeProcessDeltas(
aSender: TObject; aDeltaStructs: TDADeltaStructList);
begin
inherited;
// Log('***BeforeProcessDeltas***');
// Log('aDeltaStructs.Count:'#9 + IntToStr(aDeltaStructs.Count));
// Log('*************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceBeforeReleaseConnection(
aSender: TObject; const aConnectionName: string;
const aAcquiredConnection: IDAConnection);
begin
inherited;
// Log('***BeforeReleaseConnection***');
// Log('aConnectionName:'#9 + aConnectionName);
// Log('aAcquiredConnection.Name:'#9 + aAcquiredConnection.Name);
// Log('aAcquiredConnection.ConnectionString:'#9 + aAcquiredConnection.ConnectionString);
// Log('*****************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceGetSchemaAsXMLEvent(
aSender: TObject; var aSchemaXML: string);
begin
inherited;
// Log('***GetSchemaAsXMLEvent***');
// Log('Length(aSchemaXML):'#9 + intTostr(Length(aSchemaXML)));
// Log('*************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceProcessDeltasError(
aSender: TObject; aDeltaStructs: TDADeltaStructList; aError: Exception;
var aDoRaise: Boolean);
begin
inherited;
// Log('***ProcessDeltasError***');
// Log('aDeltaStructs.Count:'#9 + IntToStr(aDeltaStructs.Count));
// Log('aError.ClassName:'#9 + aError.ClassName);
// Log('aError.Message:'#9 + aError.Message);
// Log('aDoRaise:'#9 + BoolStr[aDoRaise]);
// Log('*************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceUpdateDataBeginTransaction(
Sender: TObject; var aUseDefaultTransactionLogic: Boolean);
begin
inherited;
// Log('***UpdateDataBeginTransaction***');
// Log('aUseDefaultTransactionLogic:'#9 + BoolStr[aUseDefaultTransactionLogic]);
// Log('********************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceUpdateDataCommitTransaction(
Sender: TObject; var aUseDefaultTransactionLogic: Boolean);
begin
inherited;
// Log('***UpdateDataCommitTransaction***');
// Log('aUseDefaultTransactionLogic:'#9 + BoolStr[aUseDefaultTransactionLogic]);
// Log('*********************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceUpdateDataRollBackTransaction(
Sender: TObject; var aUseDefaultTransactionLogic: Boolean);
begin
inherited;
// Log('***UpdateDataRollBackTransaction***');
// Log('aUseDefaultTransactionLogic:'#9 + BoolStr[aUseDefaultTransactionLogic]);
// Log('***********************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceValidateCommandExecution(
Sender: TObject; const aConnection: IDAConnection;
const aDatasetName: string; const aParamNames: array of string;
const aParamValues: array of Variant; aSchema: TDASchema;
var Allowed: Boolean);
var
i: integer;
SQLCommand: TDASQLCommand;
begin
inherited;
// Log('***ValidateCommandExecution***');
// Log('aConnection.Name:'#9 + aConnection.Name);
// Log('aDatasetName:'#9 + aDatasetName);
// SQLCommand := aSchema.Commands.SQLCommandByName(aDatasetName);
// if (SQLCommand <> nil) and (SQLCommand.Statements.Count > 0) then
// Log('Command SQL:'#9 + SQLCommand.Statements[0].SQL);
// Log('ParamCount:'#9 + intToStr(1 + ord(High(aParamNames)) - ord(Low(aParamNames))));
// for i := Low(aParamNames) to High(aParamNames) do
// Log(#9 + aParamNames[i] + ' = ' + VarToStr(aParamValues[i]));
// Log('aSchema.Name:'#9 + aSchema.Name);
// Log('Allowed:'#9 + BoolStr[Allowed]);
// Log('******************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceValidateDatasetAccess(
Sender: TObject; const aConnection: IDAConnection;
const aDatasetName: string; const aParamNames: array of string;
const aParamValues: array of Variant; aSchema: TDASchema;
var Allowed: Boolean);
var
i: integer;
begin
inherited;
// Log('***ValidateDatasetAccess***');
// Log('aConnection.Name:'#9 + aConnection.Name);
// Log('aDatasetName:'#9 + aDatasetName);
// Log('ParamCount:'#9 + intToStr(1 + ord(High(aParamNames)) - ord(Low(aParamNames))));
// for i := Low(aParamNames) to High(aParamNames) do
// Log(#9 + aParamNames[i] + ' = ' + VarToStr(aParamValues[i]));
// Log('aSchema.Name:'#9 + aSchema.Name);
// Log('Allowed:'#9 + BoolStr[Allowed]);
// Log('***************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceValidateDirectSQLAccess(
Sender: TObject; const aConnection: IDAConnection;
const aSQLText: string; const aParamNames: array of string;
const aParamValues: array of Variant; var Allowed: Boolean);
var
i: integer;
begin
inherited;
// Log('***ValidateDirectSQLAccess***');
// Log('aConnection.Name:'#9 + aConnection.Name);
// Log('aSQLText:'#9 + aSQLText);
// Log('ParamCount:'#9 + intToStr(1 + ord(High(aParamNames)) - ord(Low(aParamNames))));
// for i := Low(aParamNames) to High(aParamNames) do
// Log(#9 + aParamNames[i] + ' = ' + VarToStr(aParamValues[i]));
// Log('Allowed:'#9 + BoolStr[Allowed]);
// Log('***************************');
// Log('');
end;
procedure TsrvObras.Log(Astr: string);
begin
dmServer.EscribirLog(Astr)
end;
procedure TsrvObras.DataAbstractServiceAcquireConnectionFailure(
aSender: TObject; const aConnectionName: string; aError: Exception);
begin
inherited;
// Log('***AcquireConnectionFailure***');
// Log('aConnectionName:'#9 + aConnectionName);
// Log('aError.ClassName:'#9 + aError.ClassName);
// Log('aError.Message:'#9 + aError.Message);
// Log('******************************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceDestroy(
Sender: TObject);
begin
// Log('***Destroy***');
// Log('*************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceActivate(
const aClientID: TGUID; aSession: TROSession;
const aMessage: IROMessage);
begin
// Log('***Activate***');
// Log('aClientID:'#9 + GUIDToString(aClientID));
// // Log('aSession:'#9 + aSession.ClassName);
// // Log('aError.Message:'#9 + aError.Message);
// Log('**************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceDeactivate(
const aClientID: TGUID; aSession: TROSession);
begin
// Log('***Deactivate***');
// Log('aClientID:'#9 + GUIDToString(aClientID));
// Log('****************');
// Log('');
end;
procedure TsrvObras.DataAbstractServiceBusinessProcessorAutoCreated(
aSender: TRORemoteDataModule; BusinessProcessor: TDABusinessProcessor);
begin
// Log('***BusinessProcessorAutoCreated***');
// Log('****************');
// Log('');
end;
initialization initialization
TROClassFactory.Create('srvObras', Create_srvObras, TsrvObras_Invoker); TROClassFactory.Create('srvObras', Create_srvObras, TsrvObras_Invoker);

View File

@ -47,43 +47,18 @@
<DelphiCompile Include="Obras_view.dpk"> <DelphiCompile Include="Obras_view.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Lib\ApplicationBase.dcp" /> <DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="..\..\Lib\Base.dcp" /> <DCCReference Include="Base.dcp" />
<DCCReference Include="..\..\Lib\Contactos_controller.dcp" /> <DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="..\..\Lib\Contactos_model.dcp" /> <DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="..\..\Lib\Contactos_view.dcp" /> <DCCReference Include="Contactos_view.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" /> <DCCReference Include="GUIBase.dcp" />
<DCCReference Include="..\..\Lib\Obras_controller.dcp" /> <DCCReference Include="Obras_controller.dcp" />
<DCCReference Include="..\..\Lib\Obras_model.dcp" /> <DCCReference Include="Obras_model.dcp" />
<DCCReference Include="uEditorListaObras.pas"> <DCCReference Include="PedidosProveedor_controllercontainsuViewObrain.dcp" />
<Form>fEditorListaObras</Form> <DCCReference Include="PedidosProveedor_model.dcp" />
<DesignClass>TfListaObras</DesignClass> <DCCReference Include="PresupuestosCliente_controller.dcp" />
</DCCReference> <DCCReference Include="PresupuestosCliente_model.dcp" />
<DCCReference Include="uEditorObra.pas">
<Form>fEditorObra</Form>
<DesignClass>TfEditorObra</DesignClass>
</DCCReference>
<DCCReference Include="uEditorObras.pas">
<Form>fEditorObras</Form>
<DesignClass>TfEditorObras</DesignClass>
</DCCReference>
<DCCReference Include="uObrasViewRegister.pas" />
<DCCReference Include="uViewClienteAsociadoObra.pas">
<Form>frViewClienteAsociadoObra</Form>
<DesignClass>T</DesignClass>
</DCCReference>
<DCCReference Include="uViewObra.pas">
<Form>frViewObra</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewObras.pas">
<Form>frViewObras</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="uViewSubcontrataObra.pas">
<Form>frViewSubcontrataObra</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

View File

@ -43,7 +43,7 @@ inherited fEditorObra: TfEditorObra
end end
inherited lblDesbloquear: TcxLabel inherited lblDesbloquear: TcxLabel
Left = 507 Left = 507
ExplicitLeft = 534 ExplicitLeft = 507
end end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
@ -98,24 +98,94 @@ inherited fEditorObra: TfEditorObra
Visible = False Visible = False
end end
end end
object TBXSubmenuItem2: TTBXSubmenuItem [4]
Caption = 'A&cciones'
object TBXItem7: TTBXItem
Action = actNuevaEjecucion
end
object TBXItem33: TTBXItem
Action = actFinalizarEjecucion
end
end
end end
end end
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 626 Width = 626
Height = 318
ActivePage = pagListaEjecuciones
OnChange = pgPaginasChange
ExplicitWidth = 626 ExplicitWidth = 626
ExplicitHeight = 240
inherited pagGeneral: TTabSheet inherited pagGeneral: TTabSheet
ExplicitLeft = 4 ExplicitLeft = 4
ExplicitTop = 24 ExplicitTop = 24
ExplicitWidth = 618 ExplicitWidth = 618
ExplicitHeight = 332 ExplicitHeight = 212
end end
object TabSheet1: TTabSheet object pagNuevaEjecucion: TTabSheet
Caption = 'Presupuestos de cliente' Caption = 'Ejecuci'#243'n en curso'
ImageIndex = 1 ImageIndex = 3
ExplicitHeight = 212
object bNuevaEjecucion: TButton
Left = 48
Top = 24
Width = 145
Height = 25
Action = actNuevaEjecucion
TabOrder = 0
end
end end
object TabSheet2: TTabSheet object pagEjecucionActual: TTabSheet
Caption = 'Pedidos a proveedor' Caption = 'Ejecuci'#243'n en curso'
ImageIndex = 2 ImageIndex = 4
ExplicitHeight = 212
end
object pagListaEjecuciones: TTabSheet
Caption = 'Lista de ejecuciones'
ImageIndex = 5
ExplicitHeight = 212
inline frViewListaEjecucionesObra1: TfrViewListaEjecucionesObra
Left = 0
Top = 0
Width = 618
Height = 290
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 0
ReadOnly = False
ExplicitWidth = 618
ExplicitHeight = 212
inherited cxGrid: TcxGrid
Width = 618
Height = 265
ExplicitWidth = 618
ExplicitHeight = 187
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
Column = frViewListaEjecucionesObra1.cxGridViewIMPORTE_GASTOS
end
item
Kind = skSum
Column = frViewListaEjecucionesObra1.cxGridViewIMPORTE_INGRESOS
end
item
Kind = skSum
Column = frViewListaEjecucionesObra1.cxGridViewIMPORTE_TOTAL
end>
end
end
inherited ToolBar1: TToolBar
Width = 618
ExplicitWidth = 618
end
end
end end
end end
inherited StatusBar: TJvStatusBar inherited StatusBar: TJvStatusBar
@ -126,24 +196,61 @@ inherited fEditorObra: TfEditorObra
end> end>
ExplicitWidth = 632 ExplicitWidth = 632
end end
object DBGrid1: TDBGrid [4]
Left = 0
Top = 400
Width = 632
Height = 42
Align = alBottom
DataSource = dsEjecucionActiva
TabOrder = 4
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'Tahoma'
TitleFont.Style = []
Visible = False
end
inherited EditorActionList: TActionList inherited EditorActionList: TActionList
Top = 128 Top = 128
object actNuevaEjecucion: TAction
Category = 'Acciones'
Caption = 'Abrir una nueva ejecuci'#243'n'
OnExecute = actNuevaEjecucionExecute
OnUpdate = actNuevaEjecucionUpdate
end
object actFinalizarEjecucion: TAction
Category = 'Acciones'
Caption = 'Finalizar la ejecuci'#243'n en curso...'
OnExecute = actFinalizarEjecucionExecute
OnUpdate = actFinalizarEjecucionUpdate
end
end end
inherited SmallImages: TPngImageList inherited SmallImages: TPngImageList
Top = 112 Top = 112
end end
inherited dsDataTable: TDADataSource [6] inherited dsDataTable: TDADataSource [7]
Left = 168 Left = 16
Top = 120 Top = 160
end end
inherited LargeImages: TPngImageList [7] inherited LargeImages: TPngImageList [8]
Top = 112 Top = 112
end end
inherited JvFormStorage: TJvFormStorage [8] inherited JvFormStorage: TJvFormStorage [9]
Left = 400
Top = 144
end
inherited JvAppRegistryStorage: TJvAppRegistryStorage
Left = 432
Top = 144
end
inherited StatusBarImages: TPngImageList
Left = 16
Top = 192
end end
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
Left = 320 Left = 16
Top = 248 Top = 224
object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel
GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
GroupOptions.CaptionOptions.Font.Color = clWindowText GroupOptions.CaptionOptions.Font.Color = clWindowText
@ -154,4 +261,9 @@ inherited fEditorObra: TfEditorObra
GroupOptions.CaptionOptions.UseDefaultFont = False GroupOptions.CaptionOptions.UseDefaultFont = False
end end
end end
object dsEjecucionActiva: TDADataSource
OnDataChange = dsDataTableDataChange
Left = 40
Top = 352
end
end end

View File

@ -14,21 +14,37 @@ uses
uViewObras, uIEditorObra, uObrasController, JvExComCtrls, uViewObras, uIEditorObra, uObrasController, JvExComCtrls,
JvStatusBar, dxLayoutLookAndFeels, uDAInterfaces, dxGDIPlusClasses, JvStatusBar, dxLayoutLookAndFeels, uDAInterfaces, dxGDIPlusClasses,
cxControls, cxContainer, cxEdit, cxLabel; cxControls, cxContainer, cxEdit, cxLabel, uViewDetallesGenerico,
uViewListaEjecucionesObra, uViewEjecucionObra, Grids, DBGrids;
type type
TfEditorObra = class(TfEditorDBItem, IEditorObra) TfEditorObra = class(TfEditorDBItem, IEditorObra)
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList; dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel; dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
TabSheet1: TTabSheet; pagNuevaEjecucion: TTabSheet;
TabSheet2: TTabSheet; pagEjecucionActual: TTabSheet;
pagListaEjecuciones: TTabSheet;
bNuevaEjecucion: TButton;
frViewListaEjecucionesObra1: TfrViewListaEjecucionesObra;
actNuevaEjecucion: TAction;
actFinalizarEjecucion: TAction;
TBXSubmenuItem2: TTBXSubmenuItem;
TBXItem7: TTBXItem;
TBXItem33: TTBXItem;
DBGrid1: TDBGrid;
dsEjecucionActiva: TDADataSource;
procedure FormShow(Sender: TObject); procedure FormShow(Sender: TObject);
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
procedure CustomEditorClose(Sender: TObject; var Action: TCloseAction); procedure CustomEditorClose(Sender: TObject; var Action: TCloseAction);
procedure actNuevaEjecucionExecute(Sender: TObject);
procedure actNuevaEjecucionUpdate(Sender: TObject);
procedure actFinalizarEjecucionExecute(Sender: TObject);
procedure actFinalizarEjecucionUpdate(Sender: TObject);
procedure pgPaginasChange(Sender: TObject);
protected protected
FController : IObrasController; FController : IObrasController;
FObra: IBizObra; FObra: IBizObra;
FViewObra : IViewObra; FViewObra : IViewObra;
FViewEjecucionActual: IViewEjecucionObra;
function GetController : IObrasController; function GetController : IObrasController;
procedure SetController (const Value : IObrasController); virtual; procedure SetController (const Value : IObrasController); virtual;
@ -42,10 +58,12 @@ type
procedure EliminarInterno; override; procedure EliminarInterno; override;
procedure PonerTitulos(const ATitulo: string = ''); override; procedure PonerTitulos(const ATitulo: string = ''); override;
procedure ActualizarPestanas;
//Si queremos crear otra vista para el editor heredado solo tendriamos que //Si queremos crear otra vista para el editor heredado solo tendriamos que
//sobreescribir este metodo //sobreescribir este metodo
procedure AsignarVista; virtual; procedure AsignarVista; virtual;
procedure AsignarVistaEjecucion;
public public
property Obra: IBizObra read GetObra write SetObra; property Obra: IBizObra read GetObra write SetObra;
@ -58,7 +76,7 @@ implementation
{$R *.dfm} {$R *.dfm}
uses uses
uCustomEditor, uDataModuleObras, uDataModuleBase; uCustomEditor, uDataModuleObras, uDataModuleBase, uDialogUtils;
function ShowEditorObra (ABizObject : TDADataTableRules): TModalResult; function ShowEditorObra (ABizObject : TDADataTableRules): TModalResult;
var var
@ -92,12 +110,34 @@ begin
end; end;
procedure TfEditorObra.GuardarInterno; procedure TfEditorObra.GuardarInterno;
{var
FPresupuestos : IBizEjecucionPresupuestos;}
begin begin
inherited; inherited;
{ FPresupuestos := NIL;
if Assigned(FViewEjecucionActual) then
FPresupuestos := FViewEjecucionActual.Presupuestos;}
FController.Guardar(FObra); FController.Guardar(FObra);
Modified := False; Modified := False;
end; end;
procedure TfEditorObra.pgPaginasChange(Sender: TObject);
begin
inherited;
if pgPaginas.ActivePage = pagEjecucionActual then
begin
if FObra.Ejecuciones.State in dsEditModes then
FObra.Ejecuciones.Post;
FController.LocalizarEjecucionActiva(FObra.Ejecuciones)
end
else
if pgPaginas.ActivePage = pagListaEjecuciones then
FObra.Ejecuciones.First;
end;
procedure TfEditorObra.PonerTitulos(const ATitulo: string); procedure TfEditorObra.PonerTitulos(const ATitulo: string);
var var
FTitulo : String; FTitulo : String;
@ -118,8 +158,22 @@ begin
FObra := Value; FObra := Value;
dsDataTable.DataTable := FObra.DataTable; dsDataTable.DataTable := FObra.DataTable;
if Assigned(FViewObra) and Assigned(Obra) then if Assigned(FViewObra) and Assigned(FObra) then
FViewObra.Obra := Obra; begin
FViewObra.Obra := FObra;
dsEjecucionActiva.DataTable := FObra.Ejecuciones.DataTable;
frViewListaEjecucionesObra1.dsDetalles.DataTable := FObra.Ejecuciones.DataTable;
if FController.LocalizarEjecucionActiva(FObra.Ejecuciones) then
AsignarVistaEjecucion
end
else begin
FViewObra.Obra := NIL;
dsEjecucionActiva.DataTable := NIL;
frViewListaEjecucionesObra1.dsDetalles.DataTable := NIL;
end;
ActualizarPestanas;
end; end;
procedure TfEditorObra.SetController(const Value: IObrasController); procedure TfEditorObra.SetController(const Value: IObrasController);
@ -156,11 +210,68 @@ begin
inherited; inherited;
end; end;
procedure TfEditorObra.actFinalizarEjecucionExecute(Sender: TObject);
begin
if (ShowConfirmMessage('Finalizar la ejecución en curso', 'La ejecución actual pasará a ser histórica. ¿Desea cerrar la ejecución actual de la obra?') = IDYES) then
begin
ShowHourglassCursor;
try
FController.CerrarEjecucionActiva(FObra, Now);
FViewEjecucionActual := NIL;
ActualizarPestanas;
pgPaginas.ActivePageIndex := pagNuevaEjecucion.PageIndex;
finally
HideHourglassCursor;
end;
end;
end;
procedure TfEditorObra.actFinalizarEjecucionUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := not actNuevaEjecucion.Enabled;
end;
procedure TfEditorObra.actNuevaEjecucionExecute(Sender: TObject);
begin
inherited;
ShowHourglassCursor;
try
FObra.Ejecuciones.Insert;
AsignarVistaEjecucion;
ActualizarPestanas;
pgPaginas.ActivePageIndex := pagEjecucionActual.PageIndex;
finally
HideHourglassCursor;
end;
end;
procedure TfEditorObra.actNuevaEjecucionUpdate(Sender: TObject);
begin
inherited;
(Sender as TAction).Enabled := not pagEjecucionActual.TabVisible;
end;
procedure TfEditorObra.ActualizarPestanas;
begin
if Assigned(FViewEjecucionActual) then
begin
pagNuevaEjecucion.TabVisible := False;
pagEjecucionActual.TabVisible := True
end
else begin
pagNuevaEjecucion.TabVisible := True;
pagEjecucionActual.TabVisible := False;
end;
end;
procedure TfEditorObra.AsignarVista; procedure TfEditorObra.AsignarVista;
var var
AViewObra: TfrViewObra; AViewObra: TfrViewObra;
begin begin
AViewObra := TfrViewObra.create(Self); AViewObra := TfrViewObra.Create(Self);
with AViewObra do with AViewObra do
begin begin
Parent := pagGeneral; Parent := pagGeneral;
@ -170,10 +281,28 @@ begin
ViewObra := AViewObra; ViewObra := AViewObra;
end; end;
procedure TfEditorObra.AsignarVistaEjecucion;
var
AViewEjecucion: TfrViewEjecucionObra;
begin
AViewEjecucion := TfrViewEjecucionObra.Create(Self);
with AViewEjecucion do
begin
Parent := pagEjecucionActual;
Align := alClient;
dxLayoutControlEjecucionObra.LookAndFeel := dxLayoutOfficeLookAndFeel1;
Controller := FController;
Obra := FObra;
end;
FViewEjecucionActual := AViewEjecucion;
end;
constructor TfEditorObra.Create(AOwner: TComponent); constructor TfEditorObra.Create(AOwner: TComponent);
begin begin
inherited; inherited;
pgPaginas.ActivePageIndex := 0; pgPaginas.ActivePage := pagGeneral;
FViewEjecucionActual := NIL;
AsignarVista; AsignarVista;
end; end;
@ -186,22 +315,13 @@ begin
FObra := NIL; FObra := NIL;
end; end;
procedure TfEditorObra.dsDataTableDataChange(Sender: TObject;
Field: TField);
begin
inherited;
if Assigned(FObra) and (not (FObra.DataTable.Fetching) or
not (FObra.DataTable.Opening) or not (FObra.DataTable.Closing)) then
PonerTitulos;
end;
procedure TfEditorObra.EliminarInterno; procedure TfEditorObra.EliminarInterno;
begin begin
if (Application.MessageBox('¿Desea borrar este obra?', 'Atención', MB_YESNO) = IDYES) then if (ShowConfirmMessage('Eliminar la obra', '¿Desea eliminar esta obra?') = IDYES) then
begin begin
inherited; inherited;
if not FController.Eliminar(FObra) then if not FController.Eliminar(FObra) then
actRefrescar.Execute; actRefrescar.Execute;
end; end;
end; end;

View File

@ -19,7 +19,7 @@ inherited fEditorObras: TfEditorObras
000000180806000000E0773DF8000000017352474200AECE1CE9000000046741 000000180806000000E0773DF8000000017352474200AECE1CE9000000046741
4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000 4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000
80E8000075300000EA6000003A98000017709CBA513C00000009704859730000 80E8000075300000EA6000003A98000017709CBA513C00000009704859730000
17110000171101CA26F33F000001C149444154484BED564D4B025114B55D3FA3 17100000171001186111DB000001C149444154484BED564D4B025114B55D3FA3
4DAB7E444449DA0FC8428B3EC032A96428182209A4851F8B4C515A894A8A2DDC 4DAB7E444449DA0FC8428B3EC032A96428182209A4851F8B4C515A894A8A2DDC
B82985A2A581A4B4103547FA5C54532EDAB83B791F8C98683E29770DDCC5CC65 B82985A2A581A4B4103547FA5C54532EDAB83B791F8C98683E29770DDCC5CC65
CE79E7BC731F6F0080AAAF0F11F4B3FA0ACEDCE9E7EAB9086A6915940A040250 CE79E7BC731F6F0080AAAF0F11F4B3FA0ACEDCE9E7EAB9086A6915940A040250
@ -42,7 +42,7 @@ inherited fEditorObras: TfEditorObras
Width = 853 Width = 853
ExplicitWidth = 853 ExplicitWidth = 853
inherited tbxMain: TTBXToolbar inherited tbxMain: TTBXToolbar
ExplicitWidth = 474 ExplicitWidth = 617
end end
inherited tbxFiltro: TTBXToolbar inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 269 ExplicitWidth = 269
@ -97,9 +97,6 @@ inherited fEditorObras: TfEditorObras
Kind = skCount Kind = skCount
Column = frViewObras1.cxGridViewNOMBRE Column = frViewObras1.cxGridViewNOMBRE
end> end>
inherited cxGridViewID: TcxGridDBColumn
IsCaptionAssigned = True
end
end end
end end
inherited frViewFiltroBase1: TfrViewFiltroBase inherited frViewFiltroBase1: TfrViewFiltroBase
@ -111,21 +108,37 @@ inherited fEditorObras: TfEditorObras
Width = 853 Width = 853
ExplicitWidth = 853 ExplicitWidth = 853
inherited txtFiltroTodo: TcxTextEdit inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 756 ExplicitWidth = 756
Width = 756 Width = 756
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 121 ExplicitWidth = 121
Width = 121 Width = 121
end end
inherited edtFechaFinFiltro: TcxDateEdit inherited edtFechaFinFiltro: TcxDateEdit
Left = 225 Left = 225
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 225 ExplicitLeft = 225
ExplicitWidth = 121 ExplicitWidth = 121
Width = 121 Width = 121
end end
inherited eLista: TcxComboBox inherited eLista: TcxComboBox
Left = 383 Left = 383
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 383 ExplicitLeft = 383
ExplicitWidth = 460 ExplicitWidth = 460
Width = 460 Width = 460

View File

@ -0,0 +1,468 @@
inherited frViewEjecucionObra: TfrViewEjecucionObra
Width = 836
Height = 601
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
OnShow = CustomViewShow
ExplicitWidth = 836
ExplicitHeight = 601
object dxLayoutControlEjecucionObra: TdxLayoutControl
Left = 0
Top = 0
Width = 836
Height = 601
Align = alClient
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
DesignSize = (
836
601)
object Bevel4: TBevel
Left = 22
Top = 543
Width = 347
Height = 9
Shape = bsBottomLine
end
object edtFecha: TcxDBDateEdit
Left = 115
Top = 30
Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'FECHA_INICIO'
DataBinding.DataSource = dsEjecucion
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.Color = clInfoBk
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.Shadow = False
Style.ButtonStyle = bts3D
Style.ButtonTransparency = ebtNone
Style.PopupBorderStyle = epbsFrame3D
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 0
Width = 158
end
object bCancelarEjecucion: TButton
Left = 685
Top = 28
Width = 129
Height = 25
Action = actCancelarEjecucion
TabOrder = 2
end
object bFinEjecucion: TButton
Left = 279
Top = 28
Width = 137
Height = 25
Action = actFinEjecucion
TabOrder = 1
end
object ImporteBase: TcxDBCurrencyEdit
Left = 115
Top = 489
AutoSize = False
DataBinding.DataField = 'IMPORTE_GASTOS'
DataBinding.DataSource = dsEjecucion
ParentFont = False
Properties.Alignment.Horz = taRightJustify
Properties.ReadOnly = True
Properties.UseLeftAlignmentOnEditing = False
Properties.UseThousandSeparator = True
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.Color = clBtnFace
Style.Font.Charset = DEFAULT_CHARSET
Style.Font.Color = clWindowText
Style.Font.Height = -11
Style.Font.Name = 'Tahoma'
Style.Font.Style = []
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.TextColor = clWindowText
Style.TextStyle = []
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 7
Height = 21
Width = 254
end
object ImporteIVA: TcxDBCurrencyEdit
Left = 115
Top = 516
AutoSize = False
DataBinding.DataField = 'IMPORTE_INGRESOS'
DataBinding.DataSource = dsEjecucion
ParentFont = False
Properties.Alignment.Horz = taRightJustify
Properties.ReadOnly = True
Properties.UseLeftAlignmentOnEditing = False
Properties.UseThousandSeparator = True
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.Color = clBtnFace
Style.Font.Charset = DEFAULT_CHARSET
Style.Font.Color = clWindowText
Style.Font.Height = -11
Style.Font.Name = 'Tahoma'
Style.Font.Style = []
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.TextColor = clWindowText
Style.TextStyle = []
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 8
Height = 21
Width = 254
end
object ImporteTotal: TcxDBCurrencyEdit
Left = 115
Top = 558
AutoSize = False
DataBinding.DataField = 'IMPORTE_TOTAL'
DataBinding.DataSource = dsEjecucion
ParentFont = False
Properties.Alignment.Horz = taRightJustify
Properties.ReadOnly = True
Properties.UseLeftAlignmentOnEditing = False
Properties.UseThousandSeparator = True
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.Color = clBtnFace
Style.Font.Charset = DEFAULT_CHARSET
Style.Font.Color = clWindowText
Style.Font.Height = -11
Style.Font.Name = 'Tahoma'
Style.Font.Style = []
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
Style.TextColor = clWindowText
Style.TextStyle = [fsBold]
Style.IsFontAssigned = True
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 9
Height = 21
Width = 254
end
inline frViewListaPresupuestosObra1: TfrViewListaPresupuestosObra
Left = 22
Top = 120
Width = 645
Height = 103
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 5
ReadOnly = False
ExplicitLeft = 22
ExplicitTop = 120
ExplicitWidth = 645
ExplicitHeight = 103
inherited cxGrid: TcxGrid
Width = 645
Height = 78
ExplicitWidth = 645
ExplicitHeight = 78
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
Column = frViewListaPresupuestosObra1.cxGridViewBASE_IMPONIBLE
end>
end
end
inherited ToolBar1: TToolBar
Width = 645
ExplicitWidth = 645
inherited ToolButton1: TToolButton
ExplicitWidth = 62
end
inherited ToolButton4: TToolButton
ExplicitWidth = 74
end
inherited ToolButton2: TToolButton
ExplicitWidth = 67
end
inherited ToolButton7: TToolButton
ExplicitWidth = 117
end
end
inherited dsDetalles: TDADataSource
Left = 56
Top = 32
end
inherited ContenidoImageList: TPngImageList
Left = 88
Top = 32
end
inherited ActionListContenido: TActionList
Left = 24
Top = 32
end
end
inline frViewListaPedidosProvObra1: TfrViewListaPedidosProvObra
Left = 22
Top = 294
Width = 645
Height = 119
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 6
ReadOnly = False
ExplicitLeft = 22
ExplicitTop = 294
ExplicitWidth = 645
ExplicitHeight = 119
inherited cxGrid: TcxGrid
Width = 645
Height = 94
ExplicitWidth = 645
ExplicitHeight = 94
end
inherited ToolBar1: TToolBar
Width = 645
ExplicitWidth = 645
end
inherited dsDetalles: TDADataSource
Left = 24
Top = 32
end
inherited ContenidoImageList: TPngImageList
Left = 88
Top = 32
end
inherited ActionListContenido: TActionList
Left = 56
Top = 32
end
end
object bElegirSubcontrata: TBitBtn
Left = 422
Top = 59
Width = 120
Height = 25
Caption = 'Elegir subcontrata'
TabOrder = 4
OnClick = bElegirSubcontrataClick
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000000000000000000000000000000000000FF00FF00FF00
FF00FF00FF00EB00EB00C507C600AB13AD00A119A2009F19A000A215A400AA10
AC00B608B800CE00CE00EF00EF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00B118C10040407B00344A830031498F002F4596002F4499002F4597003148
900033498500374678005A3E5300D201D200FF00FF00FF00FF00FF00FF00FF00
FF004E42860035508100314990002E429C002C3CA6002B3AAA002B3BA7002D40
9E0030479200344F840038577500A0189F00FF00FF00FF00FF00FF00FF00FF00
FF004C428900334D89002F4499002B3CA8002835B4002631BB002734B6002A3A
AB002E429C00324B8C0036537B00B015B100FF00FF00FF00FF00FF00FF00FF00
FF008726B300324A8D002D409E002938AF003138B6007A7BCB002830BF002835
B2002D3FA10031499000483B8700EC01EC00FF00FF00FF00FF00FF00FF00FF00
FF00F002F60051379D002D409F002937B000808AA300D2D3D3008181BB002834
B2002D3FA2003A3F9300C511CE00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00EE02F4007324B7003C359300598CAE00498CBB004A81A600392A
71005929A600D608E100FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00EA0CF400608CD00054A2D80053A1D6004F9DD300488B
C2009D11AC00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF008C67DE005CA9DD005CA9DD005AA7DC0056A4D900519F
D400565FAB00EA00EA00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00EC0DF60060A7DE0063B0E30063B0E30061AEE1005CA9DD0056A4
D9004E94CC00C105C600FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00C532ED0066B2E5006BB7E9006BB7E90067B3E60061AEE1005AA7
DC00539FD500A817BE00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00BA3AE7004989B1004A85AC005895BD0068B2E30064B0E4005CA9
DE0053A0D400AA1BC300FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00CA23E8005098C400539AC7004E93BE00437DA2005190BA005198
C6003C79A000BE08C300FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00F804FC006995D40062ACDA005DA6D3005299C6004284AD003C7F
A900535AA100F300F300FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00C140ED0071BAEA0068B2E00059A1CF004990BC004378
AA00C315D600FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00
FF00FF00FF00FF00FF00FF00FF00C83EF000808BDF00668BCC007C60C700D116
E400FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00}
end
object edtlNombre: TcxDBTextEdit
Left = 115
Top = 61
Anchors = [akLeft, akTop, akRight]
AutoSize = False
DataBinding.DataField = 'NOMBRE'
DataBinding.DataSource = dsEjecucion
Enabled = False
ParentFont = False
Properties.ReadOnly = True
Properties.UseLeftAlignmentOnEditing = False
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 3
Height = 21
Width = 301
end
object dxLayoutControlEjecucionObraGroup_Root: TdxLayoutGroup
ShowCaption = False
Hidden = True
ShowBorder = False
object dxLayoutControlEjecucionObraGroup1: TdxLayoutGroup
Caption = 'Datos de la ejecuci'#243'n en curso'
object dxLayoutControlEjecucionObraGroup5: TdxLayoutGroup
ShowCaption = False
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControlEjecucionObraItem1: TdxLayoutItem
AutoAligns = []
AlignVert = avCenter
Caption = 'Inicio:'
Control = edtFecha
ControlOptions.ShowBorder = False
end
object dxLayoutControlEjecucionObraItem3: TdxLayoutItem
AutoAligns = [aaVertical]
ShowCaption = False
Control = bFinEjecucion
ControlOptions.ShowBorder = False
end
object dxLayoutControlEjecucionObraItem2: TdxLayoutItem
AutoAligns = [aaVertical]
AlignHorz = ahRight
ShowCaption = False
Control = bCancelarEjecucion
ControlOptions.ShowBorder = False
end
end
object dxLayoutControlEjecucionObraGroup6: TdxLayoutGroup
ShowCaption = False
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControlEjecucionObraItem10: TdxLayoutItem
AutoAligns = [aaHorizontal]
AlignVert = avCenter
Caption = 'Subcontrata:'
Control = edtlNombre
ControlOptions.ShowBorder = False
end
object dxLayoutControlEjecucionObraItem11: TdxLayoutItem
ShowCaption = False
Control = bElegirSubcontrata
ControlOptions.ShowBorder = False
end
end
end
object dxLayoutControlEjecucionObraGroup4: TdxLayoutGroup
AutoAligns = [aaHorizontal]
AlignVert = avClient
Caption = 'Lista de presupuestos de la obra'
object dxLayoutControlEjecucionObraItem8: TdxLayoutItem
AutoAligns = [aaHorizontal]
AlignVert = avClient
Control = frViewListaPresupuestosObra1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
object dxLayoutControlEjecucionObraGroup3: TdxLayoutGroup
AutoAligns = [aaHorizontal]
AlignVert = avClient
Caption = 'Lista de pedidos a proveedor de la obra'
object dxLayoutControlEjecucionObraItem9: TdxLayoutItem
AutoAligns = [aaHorizontal]
AlignVert = avClient
Control = frViewListaPedidosProvObra1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
object dxLayoutControlEjecucionObraGroup2: TdxLayoutGroup
AutoAligns = [aaHorizontal]
AlignVert = avBottom
Caption = 'C'#225'lculo de costes de la ejecuci'#243'n'
object dxLayoutControlEjecucionObraItem4: TdxLayoutItem
AutoAligns = [aaVertical]
Caption = 'Suma de gastos:'
Control = ImporteBase
ControlOptions.ShowBorder = False
end
object dxLayoutControlEjecucionObraItem5: TdxLayoutItem
AutoAligns = [aaVertical]
Caption = 'Suma de ingresos:'
Control = ImporteIVA
ControlOptions.ShowBorder = False
end
object dxLayoutControlEjecucionObraItem7: TdxLayoutItem
AutoAligns = [aaVertical]
Control = Bevel4
ControlOptions.ShowBorder = False
end
object dxLayoutControlEjecucionObraItem6: TdxLayoutItem
AutoAligns = [aaVertical]
Caption = 'Beneficio total:'
Control = ImporteTotal
ControlOptions.ShowBorder = False
end
end
end
end
object dsEjecucion: TDADataSource
Left = 24
Top = 16
end
object ActionList1: TActionList
Left = 16
Top = 88
object actFinEjecucion: TAction
Caption = 'Finalizar ejecuci'#243'n...'
OnExecute = actFinEjecucionExecute
end
object actCancelarEjecucion: TAction
Caption = 'Cancelar ejecuci'#243'n'
end
end
end

View File

@ -0,0 +1,183 @@
unit uViewEjecucionObra;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, dxLayoutControl, cxControls, uBizObras, DB, uDAInterfaces,
uDADataTable, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit,
cxCalendar, cxDBEdit, uCustomView, uViewDatosYSeleccionProveedor,
uViewSubcontrataObra, StdCtrls, ActnList, ComCtrls, ExtCtrls, cxCurrencyEdit,
uViewListaPedidosProvObra, uViewDetallesGenerico, uViewListaPresupuestosObra,
Buttons, uProveedoresController, uObrasController;
type
IViewEjecucionObra = interface(IViewBase)
['{09B874DF-8A3B-4775-8617-4B4F834EEB25}']
function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra);
property Obra: IBizObra read GetObra write SetObra;
function GetController : IObrasController;
procedure SetController (const Value : IObrasController);
property Controller : IObrasController read GetController write SetController;
end;
TfrViewEjecucionObra = class(TfrViewBase, IViewEjecucionObra)
dxLayoutControlEjecucionObraGroup_Root: TdxLayoutGroup;
dxLayoutControlEjecucionObra: TdxLayoutControl;
dxLayoutControlEjecucionObraGroup1: TdxLayoutGroup;
dxLayoutControlEjecucionObraGroup2: TdxLayoutGroup;
dsEjecucion: TDADataSource;
dxLayoutControlEjecucionObraItem1: TdxLayoutItem;
edtFecha: TcxDBDateEdit;
ActionList1: TActionList;
actFinEjecucion: TAction;
actCancelarEjecucion: TAction;
dxLayoutControlEjecucionObraItem2: TdxLayoutItem;
bCancelarEjecucion: TButton;
dxLayoutControlEjecucionObraItem3: TdxLayoutItem;
bFinEjecucion: TButton;
dxLayoutControlEjecucionObraGroup3: TdxLayoutGroup;
dxLayoutControlEjecucionObraItem4: TdxLayoutItem;
ImporteBase: TcxDBCurrencyEdit;
dxLayoutControlEjecucionObraItem5: TdxLayoutItem;
ImporteIVA: TcxDBCurrencyEdit;
dxLayoutControlEjecucionObraItem6: TdxLayoutItem;
ImporteTotal: TcxDBCurrencyEdit;
dxLayoutControlEjecucionObraItem7: TdxLayoutItem;
Bevel4: TBevel;
dxLayoutControlEjecucionObraItem8: TdxLayoutItem;
frViewListaPresupuestosObra1: TfrViewListaPresupuestosObra;
dxLayoutControlEjecucionObraItem9: TdxLayoutItem;
frViewListaPedidosProvObra1: TfrViewListaPedidosProvObra;
dxLayoutControlEjecucionObraGroup4: TdxLayoutGroup;
dxLayoutControlEjecucionObraGroup5: TdxLayoutGroup;
dxLayoutControlEjecucionObraItem11: TdxLayoutItem;
bElegirSubcontrata: TBitBtn;
dxLayoutControlEjecucionObraItem10: TdxLayoutItem;
edtlNombre: TcxDBTextEdit;
dxLayoutControlEjecucionObraGroup6: TdxLayoutGroup;
procedure CustomViewShow(Sender: TObject);
procedure actFinEjecucionExecute(Sender: TObject);
procedure bElegirSubcontrataClick(Sender: TObject);
procedure CustomViewCreate(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
protected
FObra : IBizObra;
FEjecucion : IBizEjecucionesObra;
FObrasController : IObrasController;
FProveedoresController : IProveedoresController;
FPresupuestos : IBizEjecucionPresupuestos;
function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra);
function GetController : IObrasController;
procedure SetController (const Value : IObrasController);
public
property Controller : IObrasController read GetController write SetController;
property Obra: IBizObra read GetObra write SetObra;
end;
implementation
{$R *.dfm}
{ TfrViewEjecucionObra }
uses
uDialogUtils, uEditorObra, uBizContactos;
procedure TfrViewEjecucionObra.actFinEjecucionExecute(Sender: TObject);
begin
inherited;
if (Parent is TfEditorObra) then
(Parent as TfEditorObra).actFinalizarEjecucion.Execute;
end;
procedure TfrViewEjecucionObra.bElegirSubcontrataClick(Sender: TObject);
var
ASubcontratas : IBizProveedor;
ASubcontrata : IBizProveedor;
begin
inherited;
ASubcontratas := IBizProveedor(FProveedoresController.BuscarSubcontratas);
try
ASubcontrata := IBizProveedor(FProveedoresController.ElegirContacto(ASubcontratas, 'Elija la subcontrata de esta ejecución de obra', False));
finally
ASubcontratas := NIL;
end;
if Assigned(ASubcontrata) then
begin
try
ASubcontrata.Open;
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.ID_SUBCONTRATA := ASubcontrata.ID;
FObra.Ejecuciones.NOMBRE := ASubcontrata.NOMBRE;
finally
ASubcontrata := NIL;
end;
end;
end;
procedure TfrViewEjecucionObra.CustomViewCreate(Sender: TObject);
begin
inherited;
FProveedoresController := TProveedoresController.Create;
end;
procedure TfrViewEjecucionObra.CustomViewDestroy(Sender: TObject);
begin
inherited;
FProveedoresController := NIL;
end;
procedure TfrViewEjecucionObra.CustomViewShow(Sender: TObject);
begin
inherited;
bCancelarEjecucion.Visible := False;
end;
function TfrViewEjecucionObra.GetController: IObrasController;
begin
Result := FObrasController;
end;
function TfrViewEjecucionObra.GetObra: IBizObra;
begin
Result := FObra;
end;
procedure TfrViewEjecucionObra.SetController(const Value: IObrasController);
begin
FObrasController := Value;
frViewListaPresupuestosObra1.Controller := FObrasController;
end;
procedure TfrViewEjecucionObra.SetObra(const Value: IBizObra);
begin
FObra := Value;
if Assigned(FObra) then
begin
FEjecucion := FObra.Ejecuciones;
dsEjecucion.DataTable := FEjecucion.DataTable;
FPresupuestos := FEjecucion.Presupuestos;
frViewListaPresupuestosObra1.Obra := FObra;
frViewListaPedidosProvObra1.Obra := FObra;
end
else begin
FEjecucion := NIL;
FObra := NIL;
dsEjecucion.DataTable := NIL;
FPresupuestos := NIL;
frViewListaPresupuestosObra1.Obra := NIL;
frViewListaPedidosProvObra1.Obra := NIL;
end;
end;
end.

View File

@ -0,0 +1,110 @@
inherited frViewListaEjecucionesObra: TfrViewListaEjecucionesObra
Width = 697
Height = 435
OnCreate = CustomViewCreate
ExplicitWidth = 697
ExplicitHeight = 435
inherited cxGrid: TcxGrid
Width = 697
Height = 410
ExplicitWidth = 697
ExplicitHeight = 410
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
Column = cxGridViewIMPORTE_GASTOS
end
item
Kind = skSum
Column = cxGridViewIMPORTE_INGRESOS
end
item
Kind = skSum
Column = cxGridViewIMPORTE_TOTAL
end>
OptionsData.Appending = False
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsData.Editing = False
OptionsData.Inserting = False
OptionsView.Footer = True
OptionsView.FooterAutoHeight = True
object cxGridViewFECHA_INICIO: TcxGridDBColumn
Caption = 'Inicio'
DataBinding.FieldName = 'FECHA_INICIO'
PropertiesClassName = 'TcxDateEditProperties'
BestFitMaxWidth = 65
MinWidth = 65
Width = 65
end
object cxGridViewFECHA_FIN: TcxGridDBColumn
Caption = 'Finalizaci'#243'n'
DataBinding.FieldName = 'FECHA_FIN'
PropertiesClassName = 'TcxDateEditProperties'
BestFitMaxWidth = 65
MinWidth = 65
Width = 65
end
object cxGridViewSUBCONTRATA: TcxGridDBColumn
Caption = 'Subcontrata'
DataBinding.FieldName = 'NOMBRE'
PropertiesClassName = 'TcxTextEditProperties'
Width = 425
end
object cxGridViewIMPORTE_GASTOS: TcxGridDBColumn
Caption = 'Gastos'
DataBinding.FieldName = 'IMPORTE_GASTOS'
PropertiesClassName = 'TcxCurrencyEditProperties'
BestFitMaxWidth = 75
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
MinWidth = 75
Width = 75
end
object cxGridViewIMPORTE_INGRESOS: TcxGridDBColumn
Caption = 'Ingresos'
DataBinding.FieldName = 'IMPORTE_INGRESOS'
PropertiesClassName = 'TcxCurrencyEditProperties'
BestFitMaxWidth = 75
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
MinWidth = 75
Width = 75
end
object cxGridViewIMPORTE_TOTAL: TcxGridDBColumn
Caption = 'Total'
DataBinding.FieldName = 'IMPORTE_TOTAL'
PropertiesClassName = 'TcxCurrencyEditProperties'
BestFitMaxWidth = 75
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
MinWidth = 75
Width = 75
end
end
end
inherited ToolBar1: TToolBar
Width = 697
Visible = False
ExplicitWidth = 697
inherited ToolButton1: TToolButton
ExplicitWidth = 62
end
inherited ToolButton4: TToolButton
ExplicitWidth = 74
end
inherited ToolButton2: TToolButton
ExplicitWidth = 67
end
inherited ToolButton7: TToolButton
ExplicitWidth = 117
end
end
inherited ActionListContenido: TActionList
inherited actAnadir: TAction
Enabled = False
Visible = False
end
end
end

View File

@ -0,0 +1,59 @@
unit uViewListaEjecucionesObra;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewDetallesGenerico, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, ActnList, ImgList, PngImageList,
uDAInterfaces, uDADataTable, ComCtrls, ToolWin, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, uBizObras, cxCalendar, cxTextEdit,
cxCurrencyEdit;
type
IViewListaEjecucionesObra = interface(IViewDetallesGenerico)
['{EBDB67B7-145D-45D4-9C9D-384FD06686D0}']
end;
TfrViewListaEjecucionesObra = class(TfrViewDetallesGenerico, IViewListaEjecucionesObra)
cxGridViewFECHA_INICIO: TcxGridDBColumn;
cxGridViewFECHA_FIN: TcxGridDBColumn;
cxGridViewSUBCONTRATA: TcxGridDBColumn;
cxGridViewIMPORTE_GASTOS: TcxGridDBColumn;
cxGridViewIMPORTE_INGRESOS: TcxGridDBColumn;
cxGridViewIMPORTE_TOTAL: TcxGridDBColumn;
procedure CustomViewCreate(Sender: TObject);
private
function AddFilterGrid(
const Operacion: tcxFilterBoolOperatorKind): TcxFilterCriteriaItemList;
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
function TfrViewListaEjecucionesObra.AddFilterGrid(const Operacion: tcxFilterBoolOperatorKind): TcxFilterCriteriaItemList;
var
AItemList: TcxFilterCriteriaItemList;
begin
AItemList := cxGridView.DataController.Filter.Root;
Result := AItemList.AddItemList(Operacion);
end;
procedure TfrViewListaEjecucionesObra.CustomViewCreate(Sender: TObject);
var
FFiltro : TcxFilterCriteriaItemList;
begin
inherited;
FFiltro := AddFilterGrid(fboAnd);
FFiltro.AddItem(cxGridViewFECHA_FIN, foNotEqual, NULL, 'Ejecuciones terminadas');
cxGridView.DataController.Filter.Active := True;
end;
end.

View File

@ -0,0 +1,111 @@
inherited frViewListaPedidosProvObra: TfrViewListaPedidosProvObra
inherited cxGrid: TcxGrid
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
Column = cxGridViewBASE_IMPONIBLE
end>
OptionsView.Footer = True
object cxGridViewREFERENCIA: TcxGridDBColumn
DataBinding.FieldName = 'REFERENCIA'
PropertiesClassName = 'TcxTextEditProperties'
Properties.ReadOnly = True
BestFitMaxWidth = 30
Width = 30
end
object cxGridViewFECHA_PEDIDO: TcxGridDBColumn
DataBinding.FieldName = 'FECHA_PEDIDO'
PropertiesClassName = 'TcxDateEditProperties'
Properties.ReadOnly = True
BestFitMaxWidth = 30
Width = 30
end
object cxGridViewSITUACION: TcxGridDBColumn
DataBinding.FieldName = 'SITUACION'
PropertiesClassName = 'TcxTextEditProperties'
Properties.ReadOnly = True
BestFitMaxWidth = 30
Width = 30
end
object cxGridViewNOMBRE: TcxGridDBColumn
DataBinding.FieldName = 'NOMBRE'
PropertiesClassName = 'TcxTextEditProperties'
Properties.ReadOnly = True
Width = 80
end
object cxGridViewID_PRESUPUESTO: TcxGridDBColumn
Caption = 'Presupuesto de origen'
DataBinding.FieldName = 'ID_PRESUPUESTO'
PropertiesClassName = 'TcxLookupComboBoxProperties'
Properties.DropDownListStyle = lsFixedList
Properties.DropDownSizeable = True
Properties.DropDownWidth = 320
Properties.ImmediatePost = True
Properties.ListColumns = <
item
Caption = 'Referencia'
Width = 30
FieldName = 'REFERENCIA'
end
item
Caption = 'Cliente'
Width = 64
FieldName = 'NOMBRE'
end
item
Caption = 'Fecha'
Width = 30
FieldName = 'FECHA_PRESUPUESTO'
end>
BestFitMaxWidth = 30
Width = 30
end
object cxGridViewBASE_IMPONIBLE: TcxGridDBColumn
DataBinding.FieldName = 'BASE_IMPONIBLE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.ReadOnly = True
BestFitMaxWidth = 55
Width = 55
end
end
end
inherited ToolBar1: TToolBar
inherited ToolButton1: TToolButton
ExplicitWidth = 104
end
inherited ToolButton4: TToolButton
Left = 104
ExplicitLeft = 104
ExplicitWidth = 74
end
inherited ToolButton5: TToolButton
Left = 178
ExplicitLeft = 178
end
inherited ToolButton2: TToolButton
Left = 186
ExplicitLeft = 186
ExplicitWidth = 67
end
inherited ToolButton6: TToolButton
Left = 253
ExplicitLeft = 253
end
inherited ToolButton7: TToolButton
Left = 261
ExplicitLeft = 261
ExplicitWidth = 117
end
end
inherited ActionListContenido: TActionList
inherited actAnadir: TAction
Caption = 'Elegir pedido...'
end
end
object dsPresupuestos: TDADataSource
Left = 40
Top = 184
end
end

View File

@ -0,0 +1,241 @@
unit uViewListaPedidosProvObra;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewDetallesGenerico, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, ActnList, ImgList, PngImageList,
uDAInterfaces, uDADataTable, ComCtrls, ToolWin, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, uBizObras, uBizPedidosProveedor,
uPedidosProveedorController, cxCalendar, cxTextEdit, cxCurrencyEdit,
cxDBLookupComboBox;
type
IViewListaPedidosProvObra = interface(IViewDetallesGenerico)
['{3DF64147-679B-4BE5-A984-98099D57C84D}']
function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra);
property Obra: IBizObra read GetObra write SetObra;
end;
TfrViewListaPedidosProvObra = class(TfrViewDetallesGenerico, IViewListaPedidosProvObra)
cxGridViewFECHA_PEDIDO: TcxGridDBColumn;
cxGridViewSITUACION: TcxGridDBColumn;
cxGridViewNOMBRE: TcxGridDBColumn;
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewBASE_IMPONIBLE: TcxGridDBColumn;
cxGridViewID_PRESUPUESTO: TcxGridDBColumn;
dsPresupuestos: TDADataSource;
private
procedure CopiarDatosPedido(APedido: IBizPedidoProveedor);
function BuscarPedidosParaElegir: IBizPedidoProveedor;
{ Private declarations }
protected
FObra : IBizObra;
FPedidosProvEjecucion: IBizEjecucionPedidosProveedor;
FPedidosProvController : IPedidosProveedorController;
function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra);
procedure AnadirInterno; override;
procedure ModificarInterno; override;
procedure EliminarInterno; override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
property Obra: IBizObra read GetObra write SetObra;
end;
implementation
uses uDataModuleObras;
{$R *.dfm}
{ TfrViewListaPedidosProvObra }
procedure TfrViewListaPedidosProvObra.AnadirInterno;
var
APedidosProv : IBizPedidoProveedor;
APedido : IBizPedidoProveedor;
begin
// inherited; <- No llamar al padre porque queremos tratamiento especial.
APedidosProv := BuscarPedidosParaElegir;
try
APedido := FPedidosProvController.ElegirPedidos(APedidosProv, 'Elija el pedido que desea asociar a la ejecución de esta obra', False);
if Assigned(APedido) then
begin
APedido.Open;
FPedidosProvEjecucion.Insert;
CopiarDatosPedido(APedido);
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.IMPORTE_GASTOS := FObra.Ejecuciones.IMPORTE_GASTOS + FPedidosProvEjecucion.BASE_IMPONIBLE;
end;
finally
APedido := NIL;
APedidosProv := NIL;
end;
end;
constructor TfrViewListaPedidosProvObra.Create(AOwner: TComponent);
begin
inherited;
FPedidosProvController := TPedidosProveedorController.Create;
with TcxLookupComboBoxProperties(cxGridViewID_PRESUPUESTO.Properties) do
begin
ListSource := dsPresupuestos;
ListFieldNames := 'REFERENCIA;NOMBRE;FECHA_PRESUPUESTO';
KeyFieldNames := 'ID_PRESUPUESTO';
end;
end;
destructor TfrViewListaPedidosProvObra.Destroy;
begin
FPedidosProvEjecucion := NIL;
FObra := NIL;
FPedidosProvController := NIL;
inherited;
end;
procedure TfrViewListaPedidosProvObra.EliminarInterno;
var
AImporte : Currency;
begin
AImporte := FPedidosProvEjecucion.BASE_IMPONIBLE;
// Llamamos al padre que hace un delete.
inherited;
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.IMPORTE_GASTOS := FObra.Ejecuciones.IMPORTE_GASTOS - AImporte;
end;
function TfrViewListaPedidosProvObra.GetObra: IBizObra;
begin
Result := FObra;
end;
procedure TfrViewListaPedidosProvObra.ModificarInterno;
var
AImporte : Currency;
AID : Integer;
APedido : IBizPedidoProveedor;
begin
// inherited; <- No llamar al padre porque queremos tratamiento especial.
if not FPedidosProvEjecucion.ID_PEDIDOIsNull then
begin
AID := FPedidosProvEjecucion.ID_PEDIDO;
APedido := FPedidosProvController.Buscar(AID);
try
APedido.Open;
if not APedido.IsEmpty then
begin
AImporte := APedido.BASE_IMPONIBLE;
FPedidosProvController.Ver(APedido);
FPedidosProvEjecucion.Edit;
CopiarDatosPedido(APedido);
if AImporte <> APedido.BASE_IMPONIBLE then
begin
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.IMPORTE_GASTOS := FObra.Ejecuciones.IMPORTE_GASTOS - AImporte;
FObra.Ejecuciones.IMPORTE_GASTOS := FObra.Ejecuciones.IMPORTE_GASTOS + FPedidosProvEjecucion.BASE_IMPONIBLE;
end;
end;
finally
APedido := NIL;
end;
end;
end;
procedure TfrViewListaPedidosProvObra.SetObra(const Value: IBizObra);
begin
FObra := Value;
if Assigned(FObra) then
begin
FObra.Active := True;
FPedidosProvEjecucion := FObra.Ejecuciones.Pedidos;
dsDetalles.DataTable := FPedidosProvEjecucion.DataTable;
dsPresupuestos.DataTable := FObra.Ejecuciones.Presupuestos.DataTable;
end
else begin
FObra := NIL;
FPedidosProvEjecucion := NIL;
dsDetalles.DataTable := NIL;
dsPresupuestos.DataTable := NIL;
end;
end;
function TfrViewListaPedidosProvObra.BuscarPedidosParaElegir: IBizPedidoProveedor;
var
Expression1, Expression2, Expression3, CompoundExpression: TDAWhereExpression;
AArray : Array of TDAWhereExpression;
begin
Expression1 := NIL;
Expression2 := NIL;
Expression3 := NIL;
CompoundExpression := NIL;
ShowHourglassCursor;
try
Result := FPedidosProvController.BuscarTodos;
with Result.DataTable.DynamicWhere do
begin
// (ID_OBRA is null)
Expression1 := NewBinaryExpression(NewField('', 'ID_OBRA'), NewNull, dboEqual);
// (ID_OBRA = :ID)
if not FObra.Ejecuciones.EsNuevo then
Expression2 := NewBinaryExpression(NewField('', 'ID_OBRA'), NewConstant(FObra.ID, datInteger), dboEqual);
if Assigned(Expression2) then
CompoundExpression := NewBinaryExpression(Expression1, Expression2, dboOr)
else
CompoundExpression := Expression1;
// (ID not in (1, 2, 3...)
//Expression3 := NewUnaryExpression(NewBinaryExpression(NewField('', 'conditionc'), NewConstant('wk', datString), dboIn), duoNot);
// Unir todo
if IsEmpty then
Expression := CompoundExpression //NewBinaryExpression(CompoundExpression, Expression3, dboAnd)
else
Expression := NewBinaryExpression(Expression, CompoundExpression, dboAnd); //NewBinaryExpression(Expression, NewBinaryExpression(CompoundExpression, Expression3, dboAnd), dboAnd);
end;
finally
HideHourglassCursor;
end;
end;
procedure TfrViewListaPedidosProvObra.CopiarDatosPedido(APedido: IBizPedidoProveedor);
begin
with FPedidosProvEjecucion do
begin
if not (State in dsEditModes) then
Edit;
ID_EJECUCION := FObra.Ejecuciones.ID;
ID_PEDIDO := APedido.ID;
REFERENCIA := APedido.REFERENCIA;
FECHA_PEDIDO := APedido.FECHA_PEDIDO;
FECHA_ENTREGA := APedido.FECHA_ENTREGA;
ID_PROVEEDOR := APedido.ID_PROVEEDOR;
NOMBRE := APedido.NOMBRE;
ID_ALMACEN := APedido.ID_ALMACEN;
NOMBRE_ALMACEN := APedido.NOMBRE_ALMACEN;
ID_OBRA := APedido.ID_OBRA;
NOMBRE_OBRA := APedido.NOMBRE_OBRA;
BASE_IMPONIBLE := APedido.BASE_IMPONIBLE;
Post;
end;
end;
end.

View File

@ -0,0 +1,88 @@
inherited frViewListaPresupuestosObra: TfrViewListaPresupuestosObra
Width = 821
ExplicitWidth = 821
inherited cxGrid: TcxGrid
Width = 821
inherited cxGridView: TcxGridDBTableView
DataController.Summary.FooterSummaryItems = <
item
Format = ',0.00 '#8364';-,0.00 '#8364
Kind = skSum
Column = cxGridViewBASE_IMPONIBLE
end>
OptionsData.Appending = False
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsData.Editing = False
OptionsData.Inserting = False
OptionsView.Footer = True
object cxGridViewREFERENCIA: TcxGridDBColumn
DataBinding.FieldName = 'REFERENCIA'
BestFitMaxWidth = 30
Width = 30
end
object cxGridViewFECHA_PRESUPUESTO: TcxGridDBColumn
DataBinding.FieldName = 'FECHA_PRESUPUESTO'
BestFitMaxWidth = 30
SortIndex = 0
SortOrder = soAscending
Width = 30
end
object cxGridViewSITUACION: TcxGridDBColumn
Caption = 'Situaci'#243'n'
DataBinding.FieldName = 'SITUACION'
BestFitMaxWidth = 30
Width = 30
end
object cxGridViewNOMBRE: TcxGridDBColumn
Caption = 'Cliente'
DataBinding.FieldName = 'NOMBRE'
Width = 60
end
object cxGridViewBASE_IMPONIBLE: TcxGridDBColumn
DataBinding.FieldName = 'BASE_IMPONIBLE'
PropertiesClassName = 'TcxCurrencyEditProperties'
Properties.Alignment.Horz = taRightJustify
BestFitMaxWidth = 50
FooterAlignmentHorz = taRightJustify
HeaderAlignmentHorz = taRightJustify
Width = 50
end
end
end
inherited ToolBar1: TToolBar
Width = 821
ButtonWidth = 128
inherited ToolButton1: TToolButton
ExplicitWidth = 132
end
inherited ToolButton4: TToolButton
Left = 132
ExplicitLeft = 132
ExplicitWidth = 74
end
inherited ToolButton5: TToolButton
Left = 206
ExplicitLeft = 206
end
inherited ToolButton2: TToolButton
Left = 214
ExplicitLeft = 214
ExplicitWidth = 67
end
inherited ToolButton6: TToolButton
Left = 281
ExplicitLeft = 281
end
inherited ToolButton7: TToolButton
Left = 289
ExplicitLeft = 289
ExplicitWidth = 117
end
end
inherited ActionListContenido: TActionList
inherited actAnadir: TAction
Caption = 'Elegir presupuesto...'
end
end
end

View File

@ -0,0 +1,202 @@
unit uViewListaPresupuestosObra;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewDetallesGenerico, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, ActnList, ImgList, PngImageList,
uDAInterfaces, uDADataTable, ComCtrls, ToolWin, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, uBizObras, uBizPresupuestosCliente,
uObrasController, uPresupuestosClienteController, cxCurrencyEdit;
type
IViewListaPresupuestosObra = interface(IViewDetallesGenerico)
['{E52E2718-EEE5-4ABD-8E9C-33CD9D54D6F2}']
function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra);
property Obra: IBizObra read GetObra write SetObra;
function GetController : IObrasController;
procedure SetController (const Value : IObrasController);
property Controller : IObrasController read GetController write SetController;
end;
TfrViewListaPresupuestosObra = class(TfrViewDetallesGenerico, IViewListaPresupuestosObra)
cxGridViewREFERENCIA: TcxGridDBColumn;
cxGridViewFECHA_PRESUPUESTO: TcxGridDBColumn;
cxGridViewSITUACION: TcxGridDBColumn;
cxGridViewBASE_IMPONIBLE: TcxGridDBColumn;
cxGridViewNOMBRE: TcxGridDBColumn;
private
procedure CopiarDatosPresupuesto(APresupuesto: IBizPresupuestoCliente);
protected
FObra : IBizObra;
FPresupuestosEjecucion : IBizEjecucionPresupuestos;
FObrasController : IObrasController;
//FPresupuestos: IBizPresupuestoCliente;
FPresupuestosController : IPresupuestosClienteController;
function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra);
procedure AnadirInterno; override;
procedure ModificarInterno; override;
procedure EliminarInterno; override;
function GetController : IObrasController;
procedure SetController (const Value : IObrasController);
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
property Obra: IBizObra read GetObra write SetObra;
property Controller : IObrasController read GetController write SetController;
end;
implementation
{$R *.dfm}
{ TfrViewListaPresupuestosObra }
procedure TfrViewListaPresupuestosObra.AnadirInterno;
var
APresupuestos : IBizPresupuestoCliente;
APresupuesto : IBizPresupuestoCliente;
begin
// inherited; <- No llamar al padre porque queremos tratamiento especial.
APresupuestos := FPresupuestosController.BuscarAceptados;
try
APresupuesto := FPresupuestosController.ElegirPresupuestos(APresupuestos, 'Elija el presupuesto de cliente que quiere asociar a la ejecución de esta obra', False);
if Assigned(APresupuesto) then
begin
APresupuesto.Open;
FPresupuestosEjecucion.Insert;
CopiarDatosPresupuesto(APresupuesto);
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.IMPORTE_INGRESOS := FObra.Ejecuciones.IMPORTE_INGRESOS + FPresupuestosEjecucion.BASE_IMPONIBLE;
end;
finally
APresupuesto := NIL;
APresupuestos := NIL;
end;
end;
constructor TfrViewListaPresupuestosObra.Create(AOwner: TComponent);
begin
inherited;
FPresupuestosController := TPresupuestosClienteController.Create;
end;
destructor TfrViewListaPresupuestosObra.Destroy;
begin
//FPresupuestos := NIL;
FObra := NIL;
FObrasController := NIL;
FPresupuestosEjecucion := NIL;
FPresupuestosController := NIL;
inherited;
end;
procedure TfrViewListaPresupuestosObra.EliminarInterno;
var
AImporte : Currency;
begin
AImporte := FPresupuestosEjecucion.BASE_IMPONIBLE;
// Llamamos al padre que hace un delete.
inherited;
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.IMPORTE_INGRESOS := FObra.Ejecuciones.IMPORTE_INGRESOS - AImporte;
end;
function TfrViewListaPresupuestosObra.GetController: IObrasController;
begin
Result := FObrasController;
end;
function TfrViewListaPresupuestosObra.GetObra: IBizObra;
begin
Result := FObra;
end;
procedure TfrViewListaPresupuestosObra.ModificarInterno;
var
AImporte : Currency;
AID : Integer;
APresupuesto : IBizPresupuestoCliente;
begin
// inherited; <- No llamar al padre porque queremos tratamiento especial.
if not FPresupuestosEjecucion.ID_PRESUPUESTOIsNull then
begin
AID := FPresupuestosEjecucion.ID_PRESUPUESTO;
APresupuesto := FPresupuestosController.Buscar(AID);
try
APresupuesto.Open;
if not APresupuesto.IsEmpty then
begin
AImporte := APresupuesto.BASE_IMPONIBLE;
FPresupuestosController.Ver(APresupuesto);
FPresupuestosEjecucion.Edit;
CopiarDatosPresupuesto(APresupuesto);
if AImporte <> APresupuesto.BASE_IMPONIBLE then
begin
FObra.Ejecuciones.Edit;
FObra.Ejecuciones.IMPORTE_INGRESOS := FObra.Ejecuciones.IMPORTE_INGRESOS - AImporte;
FObra.Ejecuciones.IMPORTE_INGRESOS := FObra.Ejecuciones.IMPORTE_INGRESOS + FPresupuestosEjecucion.BASE_IMPONIBLE;
end;
end;
finally
APresupuesto := NIL;
end;
end;
end;
procedure TfrViewListaPresupuestosObra.SetController(
const Value: IObrasController);
begin
FObrasController := Value;
end;
procedure TfrViewListaPresupuestosObra.SetObra(const Value: IBizObra);
begin
FObra := Value;
if Assigned(FObra) then
begin
FObra.Active := True;
FPresupuestosEjecucion := FObra.Ejecuciones.Presupuestos;
dsDetalles.DataTable := FPresupuestosEjecucion.DataTable;
end
else begin
FObra := NIL;
FPresupuestosEjecucion := NIL;
dsDetalles.DataTable := NIL;
end;
end;
procedure TfrViewListaPresupuestosObra.CopiarDatosPresupuesto(APresupuesto: IBizPresupuestoCliente);
begin
with FPresupuestosEjecucion do
begin
if not (State in dsEditModes) then
Edit;
ID_EJECUCION := FObra.Ejecuciones.ID;
ID_PRESUPUESTO := APresupuesto.ID;
REFERENCIA := APresupuesto.REFERENCIA;
FECHA_PRESUPUESTO := APresupuesto.FECHA_PRESUPUESTO;
SITUACION := APresupuesto.SITUACION;
BASE_IMPONIBLE := APresupuesto.BASE_IMPONIBLE;
NOMBRE := APresupuesto.NOMBRE;
Post;
end;
end;
end.

View File

@ -1,22 +1,24 @@
inherited frViewObra: TfrViewObra inherited frViewObra: TfrViewObra
Width = 451 Width = 692
Height = 304 Height = 448
Align = alClient Align = alClient
ExplicitWidth = 451 ExplicitWidth = 451
ExplicitHeight = 304 ExplicitHeight = 304
object dxLayoutControlObra: TdxLayoutControl object dxLayoutControlObra: TdxLayoutControl
Left = 0 Left = 0
Top = 0 Top = 0
Width = 451 Width = 692
Height = 304 Height = 448
Align = alClient Align = alClient
ParentBackground = True ParentBackground = True
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
ExplicitWidth = 451
ExplicitHeight = 304
DesignSize = ( DesignSize = (
451 692
304) 448)
object eNombre: TcxDBTextEdit object eNombre: TcxDBTextEdit
Left = 130 Left = 130
Top = 34 Top = 34
@ -169,7 +171,7 @@ inherited frViewObra: TfrViewObra
Width = 203 Width = 203
end end
object eCodigoPostal: TcxDBTextEdit object eCodigoPostal: TcxDBTextEdit
Left = 189 Left = 236
Top = 145 Top = 145
DataBinding.DataField = 'CODIGO_POSTAL' DataBinding.DataField = 'CODIGO_POSTAL'
DataBinding.DataSource = DADataSource DataBinding.DataSource = DADataSource
@ -244,123 +246,8 @@ inherited frViewObra: TfrViewObra
Height = 246 Height = 246
Width = 224 Width = 224
end end
inline frViewSubcontrataObra1: TfrViewSubcontrataObra
Left = 310
Top = 283
Width = 503
Height = 159
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 11
ReadOnly = False
ExplicitLeft = 310
ExplicitTop = 283
ExplicitWidth = 503
ExplicitHeight = 159
inherited dxLayoutControl1: TdxLayoutControl
Width = 503
Height = 265
ExplicitWidth = 503
ExplicitHeight = 265
DesignSize = (
503
265)
inherited edtlNombre: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 375
Width = 375
end
inherited edtNIFCIF: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 375
Width = 375
end
inherited edtCalle: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 375
Width = 375
end
inherited edtPoblacion: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 257
Width = 257
end
inherited edtProvincia: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 375
Width = 375
end
inherited edtCodigoPostal: TcxDBTextEdit
Left = 249
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 249
end
inherited Button3: TBitBtn
Left = 108
ExplicitLeft = 108
end
inherited edtPersonaContacto: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 375
Width = 375
end
inherited edtReferenciaAsignada: TcxDBTextEdit
Left = 210
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 210
end
inherited edtTlf: TcxDBTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 182
Width = 182
end
end
inherited DADataSource: TDADataSource
Left = 240
Top = 16
end
inherited ActionList1: TActionList
Left = 264
Top = 16
end
inherited PngImageList: TPngImageList
Left = 296
Top = 16
end
end
inline frViewClienteAsociadoObra1: TfrViewClienteAsociadoObra inline frViewClienteAsociadoObra1: TfrViewClienteAsociadoObra
Left = 310 Left = 357
Top = 34 Top = 34
Width = 503 Width = 503
Height = 213 Height = 213
@ -372,7 +259,7 @@ inherited frViewObra: TfrViewObra
ParentFont = False ParentFont = False
TabOrder = 10 TabOrder = 10
ReadOnly = False ReadOnly = False
ExplicitLeft = 310 ExplicitLeft = 357
ExplicitTop = 34 ExplicitTop = 34
ExplicitWidth = 503 ExplicitWidth = 503
ExplicitHeight = 213 ExplicitHeight = 213
@ -422,16 +309,16 @@ inherited frViewObra: TfrViewObra
Width = 429 Width = 429
end end
inherited edtCodigoPostal: TcxDBTextEdit inherited edtCodigoPostal: TcxDBTextEdit
Left = 192 Left = 221
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 192 ExplicitLeft = 221
end end
inherited Button3: TBitBtn inherited Button3: TBitBtn
Left = 82 Left = 111
ExplicitLeft = 82 ExplicitLeft = 111
end end
end end
end end
@ -541,33 +428,16 @@ inherited frViewObra: TfrViewObra
end end
end end
end end
object dxLayoutControlObraGroup6: TdxLayoutGroup object dxLayoutControlObraGroup7: TdxLayoutGroup
AutoAligns = [aaVertical] AutoAligns = []
AlignHorz = ahClient AlignHorz = ahClient
ShowCaption = False Caption = 'Cliente asociado'
Hidden = True object dxLayoutControlObraItem13: TdxLayoutItem
ShowBorder = False Caption = 'New Item'
object dxLayoutControlObraGroup7: TdxLayoutGroup ShowCaption = False
AutoAligns = [] Control = frViewClienteAsociadoObra1
AlignHorz = ahClient ControlOptions.AutoColor = True
Caption = 'Cliente asociado' ControlOptions.ShowBorder = False
object dxLayoutControlObraItem13: TdxLayoutItem
Caption = 'New Item'
ShowCaption = False
Control = frViewClienteAsociadoObra1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
object dxLayoutControlObraGroup9: TdxLayoutGroup
AutoAligns = [aaVertical]
AlignHorz = ahClient
Caption = 'Subcontrata'
object dxLayoutControlObraItem8: TdxLayoutItem
Control = frViewSubcontrataObra1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end end
end end
end end

View File

@ -54,14 +54,10 @@ type
eObservaciones: TcxDBMemo; eObservaciones: TcxDBMemo;
dxLayoutControlObraGroup2: TdxLayoutGroup; dxLayoutControlObraGroup2: TdxLayoutGroup;
dxLayoutControlObraGroup8: TdxLayoutGroup; dxLayoutControlObraGroup8: TdxLayoutGroup;
dxLayoutControlObraGroup9: TdxLayoutGroup;
dxLayoutControlObraItem8: TdxLayoutItem;
frViewSubcontrataObra1: TfrViewSubcontrataObra;
frViewClienteAsociadoObra1: TfrViewClienteAsociadoObra; frViewClienteAsociadoObra1: TfrViewClienteAsociadoObra;
dxLayoutControlObraItem12: TdxLayoutItem; dxLayoutControlObraItem12: TdxLayoutItem;
dxLayoutControlObraItem13: TdxLayoutItem; dxLayoutControlObraItem13: TdxLayoutItem;
dxLayoutControlObraGroup11: TdxLayoutGroup; dxLayoutControlObraGroup11: TdxLayoutGroup;
dxLayoutControlObraGroup6: TdxLayoutGroup;
procedure cbPoblacionPropertiesInitPopup(Sender: TObject); procedure cbPoblacionPropertiesInitPopup(Sender: TObject);
procedure cbProvinciaPropertiesInitPopup(Sender: TObject); procedure cbProvinciaPropertiesInitPopup(Sender: TObject);
protected protected
@ -74,7 +70,6 @@ type
function GetObra: IBizObra; function GetObra: IBizObra;
procedure SetObra(const Value: IBizObra); procedure SetObra(const Value: IBizObra);
procedure OnClienteChanged(Sender : TObject); procedure OnClienteChanged(Sender : TObject);
procedure OnSubcontrataChanged(Sender : TObject);
function GetController : IObrasController; function GetController : IObrasController;
procedure SetController (const Value : IObrasController); virtual; procedure SetController (const Value : IObrasController); virtual;
public public
@ -242,15 +237,6 @@ begin
end; end;
end; end;
procedure TfrViewObra.OnSubcontrataChanged(Sender: TObject);
begin
if Assigned(FObra) then
begin
FObra.Edit;
FObra.ID_SUBCONTRATA := frViewSubcontrataObra1.ID_Proveedor;
end;
end;
procedure TfrViewObra.SetController(const Value: IObrasController); procedure TfrViewObra.SetController(const Value: IObrasController);
begin begin
FController := Value; FController := Value;
@ -260,7 +246,6 @@ procedure TfrViewObra.SetObra(const Value: IBizObra);
begin begin
FObra := Value; FObra := Value;
frViewClienteAsociadoObra1.OnClienteChanged := NIL; frViewClienteAsociadoObra1.OnClienteChanged := NIL;
frViewSubcontrataObra1.OnProveedorChanged := NIL;
if Assigned(FObra) then if Assigned(FObra) then
begin begin
@ -268,12 +253,7 @@ begin
if not FObra.ID_CLIENTEIsNull then if not FObra.ID_CLIENTEIsNull then
frViewClienteAsociadoObra1.ID_Cliente := FObra.ID_CLIENTE; frViewClienteAsociadoObra1.ID_Cliente := FObra.ID_CLIENTE;
if not FObra.ID_SUBCONTRATAIsNull then
frViewSubcontrataObra1.ID_Proveedor := FObra.ID_SUBCONTRATA;
frViewClienteAsociadoObra1.OnClienteChanged := OnClienteChanged; frViewClienteAsociadoObra1.OnClienteChanged := OnClienteChanged;
frViewSubcontrataObra1.OnProveedorChanged := OnSubcontrataChanged;
end end
else else
DADataSource.DataTable := NIL; DADataSource.DataTable := NIL;

View File

@ -1,6 +1,5 @@
inherited frViewObras: TfrViewObras inherited frViewObras: TfrViewObras
inherited cxGrid: TcxGrid inherited cxGrid: TcxGrid
ExplicitTop = 102
inherited cxGridView: TcxGridDBTableView inherited cxGridView: TcxGridDBTableView
DataController.KeyFieldNames = 'ID' DataController.KeyFieldNames = 'ID'
DataController.Summary.FooterSummaryItems = < DataController.Summary.FooterSummaryItems = <
@ -10,15 +9,6 @@ inherited frViewObras: TfrViewObras
Column = cxGridViewNOMBRE Column = cxGridViewNOMBRE
end> end>
OptionsBehavior.PullFocusing = True OptionsBehavior.PullFocusing = True
object cxGridViewID: TcxGridDBColumn
DataBinding.FieldName = 'ID'
BestFitMaxWidth = 22
MinWidth = 22
Options.HorzSizing = False
VisibleForCustomization = False
Width = 22
IsCaptionAssigned = True
end
object cxGridViewNOMBRE: TcxGridDBColumn object cxGridViewNOMBRE: TcxGridDBColumn
DataBinding.FieldName = 'NOMBRE' DataBinding.FieldName = 'NOMBRE'
PropertiesClassName = 'TcxTextEditProperties' PropertiesClassName = 'TcxTextEditProperties'
@ -74,9 +64,16 @@ inherited frViewObras: TfrViewObras
object cxGridViewNOMBRE_SUBCONTRATA: TcxGridDBColumn object cxGridViewNOMBRE_SUBCONTRATA: TcxGridDBColumn
DataBinding.FieldName = 'NOMBRE_SUBCONTRATA' DataBinding.FieldName = 'NOMBRE_SUBCONTRATA'
PropertiesClassName = 'TcxTextEditProperties' PropertiesClassName = 'TcxTextEditProperties'
Visible = False
BestFitMaxWidth = 80 BestFitMaxWidth = 80
VisibleForCustomization = False
Width = 100 Width = 100
end end
object cxGridViewID_EJECUCION: TcxGridDBColumn
DataBinding.FieldName = 'ID_EJECUCION'
Visible = False
VisibleForCustomization = False
end
end end
end end
inherited frViewFiltroBase1: TfrViewFiltroBase inherited frViewFiltroBase1: TfrViewFiltroBase
@ -87,6 +84,8 @@ inherited frViewObras: TfrViewObras
StyleDisabled.LookAndFeel.SkinName = '' StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 510
Width = 510
end end
inherited edtFechaIniFiltro: TcxDateEdit inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = '' Style.LookAndFeel.SkinName = ''
@ -100,6 +99,14 @@ inherited frViewObras: TfrViewObras
StyleFocused.LookAndFeel.SkinName = '' StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
end end
inherited eLista: TcxComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 215
Width = 215
end
end end
end end
end end
@ -109,4 +116,116 @@ inherited frViewObras: TfrViewObras
BuiltInReportLink = True BuiltInReportLink = True
end end
end end
inherited GridPNGImageList: TPngImageList
PngImages = <
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000097048597300000B1300000B1301009A9C1800000A4F694343505068
6F746F73686F70204943432070726F66696C65000078DA9D53675453E9163DF7
DEF4424B8880944B6F5215082052428B801491262A2109104A8821A1D91551C1
114545041BC8A088038E8E808C15512C0C8A0AD807E421A28E83A3888ACAFBE1
7BA36BD6BCF7E6CDFEB5D73EE7ACF39DB3CF07C0080C9648335135800CA9421E
11E083C7C4C6E1E42E40810A2470001008B3642173FD230100F87E3C3C2B22C0
07BE000178D30B0800C04D9BC0301C87FF0FEA42995C01808401C07491384B08
801400407A8E42A600404601809D98265300A0040060CB6362E300502D006027
7FE6D300809DF8997B01005B94211501A09100201365884400683B00ACCF568A
450058300014664BC43900D82D00304957664800B0B700C0CE100BB200080C00
305188852900047B0060C8232378008499001446F2573CF12BAE10E72A000078
99B23CB9243945815B082D710757572E1E28CE49172B14366102619A402EC279
99193281340FE0F3CC0000A0911511E083F3FD78CE0EAECECE368EB60E5F2DEA
BF06FF226262E3FEE5CFAB70400000E1747ED1FE2C2FB31A803B06806DFEA225
EE04685E0BA075F78B66B20F40B500A0E9DA57F370F87E3C3C45A190B9D9D9E5
E4E4D84AC4425B61CA577DFE67C25FC057FD6CF97E3CFCF7F5E0BEE22481325D
814704F8E0C2CCF44CA51CCF92098462DCE68F47FCB70BFFFC1DD322C44962B9
582A14E35112718E449A8CF332A52289429229C525D2FF64E2DF2CFB033EDF35
00B06A3E017B912DA85D6303F64B27105874C0E2F70000F2BB6FC1D428080380
6883E1CF77FFEF3FFD47A02500806649927100005E44242E54CAB33FC7080000
44A0812AB0411BF4C1182CC0061CC105DCC10BFC6036844224C4C24210420A64
801C726029AC82422886CDB01D2A602FD4401D34C051688693700E2EC255B80E
3D700FFA61089EC128BC81090441C808136121DA8801628A58238E08179985F8
21C14804128B2420C9881451224B91354831528A542055481DF23D720239875C
46BA913BC8003282FC86BC47319481B2513DD40CB543B9A8371A8446A20BD064
74319A8F16A09BD072B41A3D8C36A1E7D0AB680FDA8F3E43C730C0E8180733C4
6C302EC6C342B1382C099363CBB122AC0CABC61AB056AC03BB89F563CFB17704
128145C0093604774220611E4148584C584ED848A8201C243411DA0937090384
51C2272293A84BB426BA11F9C4186232318758482C23D6128F132F107B8843C4
37241289433227B9900249B1A454D212D246D26E5223E92CA99B34481A2393C9
DA646BB20739942C202BC885E49DE4C3E433E41BE421F25B0A9D624071A4F853
E22852CA6A4A19E510E534E5066598324155A39A52DDA8A15411358F5A42ADA1
B652AF5187A81334759A39CD8316494BA5ADA295D31A681768F769AFE874BA11
DD951E4E97D057D2CBE947E897E803F4770C0D861583C7886728199B18071867
197718AF984CA619D38B19C754303731EB98E7990F996F55582AB62A7C1591CA
0A954A9526951B2A2F54A9AAA6AADEAA0B55F355CB548FA95E537DAE46553353
E3A909D496AB55AA9D50EB531B5367A93BA887AA67A86F543FA47E59FD890659
C34CC34F43A451A0B15FE3BCC6200B6319B3782C216B0DAB86758135C426B1CD
D97C762ABB98FD1DBB8B3DAAA9A13943334A3357B352F394663F07E39871F89C
744E09E728A797F37E8ADE14EF29E2291BA6344CB931655C6BAA96979658AB48
AB51AB47EBBD36AEEDA79DA6BD45BB59FB810E41C74A275C2747678FCE059DE7
53D953DDA70AA7164D3D3AF5AE2EAA6BA51BA1BB4477BF6EA7EE989EBE5E809E
4C6FA7DE79BDE7FA1C7D2FFD54FD6DFAA7F5470C5806B30C2406DB0CCE183CC5
35716F3C1D2FC7DBF151435DC34043A561956197E18491B9D13CA3D5468D460F
8C69C65CE324E36DC66DC6A326062621264B4DEA4DEE9A524DB9A629A63B4C3B
4CC7CDCCCDA2CDD699359B3D31D732E79BE79BD79BDFB7605A785A2CB6A8B6B8
6549B2E45AA659EEB6BC6E855A3959A558555A5DB346AD9DAD25D6BBADBBA711
A7B94E934EAB9ED667C3B0F1B6C9B6A9B719B0E5D806DBAEB66DB67D61676217
67B7C5AEC3EE93BD937DBA7D8DFD3D070D87D90EAB1D5A1D7E73B472143A563A
DE9ACE9CEE3F7DC5F496E92F6758CF10CFD833E3B613CB29C4699D539BD34767
1767B97383F3888B894B82CB2E973E2E9B1BC6DDC8BDE44A74F5715DE17AD2F5
9D9BB39BC2EDA8DBAFEE36EE69EE87DC9FCC349F299E593373D0C3C843E051E5
D13F0B9F95306BDFAC7E4F434F8167B5E7232F632F9157ADD7B0B7A577AAF761
EF173EF63E729FE33EE33C37DE32DE595FCC37C0B7C8B7CB4FC36F9E5F85DF43
7F23FF64FF7AFFD100A78025016703898141815B02FBF87A7C21BF8E3F3ADB65
F6B2D9ED418CA0B94115418F82AD82E5C1AD2168C8EC90AD21F7E798CE91CE69
0E85507EE8D6D00761E6618BC37E0C2785878557863F8E7088581AD131973577
D1DC4373DF44FA449644DE9B67314F39AF2D4A352A3EAA2E6A3CDA37BA34BA3F
C62E6659CCD5589D58496C4B1C392E2AAE366E6CBEDFFCEDF387E29DE20BE37B
17982FC85D7079A1CEC2F485A716A92E122C3A96404C884E3894F041102AA816
8C25F21377258E0A79C21DC267222FD136D188D8435C2A1E4EF2482A4D7A92EC
91BC357924C533A52CE5B98427A990BC4C0D4CDD9B3A9E169A76206D323D3ABD
31839291907142AA214D93B667EA67E66676CBAC6585B2FEC56E8BB72F1E9507
C96BB390AC05592D0AB642A6E8545A28D72A07B267655766BFCD89CA3996AB9E
2BCDEDCCB3CADB90379CEF9FFFED12C212E192B6A5864B572D1D58E6BDAC6A39
B23C7179DB0AE315052B865606AC3CB88AB62A6DD54FABED5797AE7EBD267A4D
6B815EC1CA82C1B5016BEB0B550AE5857DEBDCD7ED5D4F582F59DFB561FA869D
1B3E15898AAE14DB1797157FD828DC78E51B876FCABF99DC94B4A9ABC4B964CF
66D266E9E6DE2D9E5B0E96AA97E6970E6E0DD9DAB40DDF56B4EDF5F645DB2F97
CD28DBBB83B643B9A3BF3CB8BC65A7C9CECD3B3F54A454F454FA5436EED2DDB5
61D7F86ED1EE1B7BBCF634ECD5DB5BBCF7FD3EC9BEDB5501554DD566D565FB49
FBB3F73FAE89AAE9F896FB6D5DAD4E6D71EDC703D203FD07230EB6D7B9D4D51D
D23D54528FD62BEB470EC71FBEFE9DEF772D0D360D558D9CC6E223704479E4E9
F709DFF71E0D3ADA768C7BACE107D31F761D671D2F6A429AF29A469B539AFB5B
625BBA4FCC3ED1D6EADE7AFC47DB1F0F9C343C59794AF354C969DAE982D39367
F2CF8C9D959D7D7E2EF9DC60DBA2B67BE763CEDF6A0F6FEFBA1074E1D245FF8B
E73BBC3BCE5CF2B874F2B2DBE51357B8579AAF3A5F6DEA74EA3CFE93D34FC7BB
9CBB9AAEB95C6BB9EE7ABDB57B66F7E91B9E37CEDDF4BD79F116FFD6D59E393D
DDBDF37A6FF7C5F7F5DF16DD7E7227FDCECBBBD97727EEADBC4FBC5FF440ED41
D943DD87D53F5BFEDCD8EFDC7F6AC077A0F3D1DC47F7068583CFFE91F58F0F43
058F998FCB860D86EB9E383E3939E23F72FDE9FCA743CF64CF269E17FEA2FECB
AE17162F7EF8D5EBD7CED198D1A197F29793BF6D7CA5FDEAC0EB19AFDBC6C2C6
1EBEC97833315EF456FBEDC177DC771DEFA3DF0F4FE47C207F28FF68F9B1F553
D0A7FB93199393FF040398F3FC63332DDB000000434944415478DA63FCFFFF3F
03258011D900464646ACA601D530126D00BA6298A1B80C21CA0090183639925C
80CB3B040DC0E69A510306BD010C04005E03C801036F00008D248BE16F9028BA
0000000049454E44AE426082}
Name = 'Icono_header'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000AF4944415478DACDD22116C2300C06E0BF37889CAC4456222791CC21
E1063D428F503939898C444E222B2723919573A50758D7B119F25EE4FF35C9AB
C2C152FF090C2F7FBD5F2CEF063CBB84190F7B73C36E204A043554458A407B6E
C1CC205A478A803E69C418216F599D641978BA441A908FE48EC0940FEB596D06
DC908FD8E4D727C1E803485317C6C0DB81DE2699EBE132E06DCA2357C3EB40CF
5D5EA1FA99160163B40941422D5C047EA9C3C017C80A5B11B742150D00000000
49454E44AE426082}
Name = 'PngImage1'
Background = clWindow
end>
Left = 88
Top = 160
Bitmap = {}
end
end end

View File

@ -27,7 +27,6 @@ type
cxGridViewPERSONACONTACTO: TcxGridDBColumn; cxGridViewPERSONACONTACTO: TcxGridDBColumn;
cxGridViewNOMBRE: TcxGridDBColumn; cxGridViewNOMBRE: TcxGridDBColumn;
cxGridViewTELEFONO: TcxGridDBColumn; cxGridViewTELEFONO: TcxGridDBColumn;
cxGridViewID: TcxGridDBColumn;
cxGridViewCALLE: TcxGridDBColumn; cxGridViewCALLE: TcxGridDBColumn;
cxGridViewPROVINCIA: TcxGridDBColumn; cxGridViewPROVINCIA: TcxGridDBColumn;
cxGridViewPOBLACION: TcxGridDBColumn; cxGridViewPOBLACION: TcxGridDBColumn;
@ -36,6 +35,10 @@ type
cxGridViewFAX: TcxGridDBColumn; cxGridViewFAX: TcxGridDBColumn;
cxGridViewNOMBRE_CLIENTE: TcxGridDBColumn; cxGridViewNOMBRE_CLIENTE: TcxGridDBColumn;
cxGridViewNOMBRE_SUBCONTRATA: TcxGridDBColumn; cxGridViewNOMBRE_SUBCONTRATA: TcxGridDBColumn;
cxGridViewID_EJECUCION: TcxGridDBColumn;
procedure cxGridViewICONOCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
protected protected
FObras: IBizObra; FObras: IBizObra;
function GetObras: IBizObra; virtual; function GetObras: IBizObra; virtual;
@ -56,6 +59,16 @@ uses uDataModuleObras;
{ {
******************************* TfrViewObras ******************************* ******************************* TfrViewObras *******************************
} }
procedure TfrViewObras.cxGridViewICONOCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
// Poner el icono sólo a las obras activas.
if (cxGridView.DataController.DisplayTexts[AViewInfo.GridRecord.RecordIndex,
cxGridViewID_EJECUCION.Index] <> '') then
inherited;
end;
function TfrViewObras.GetObras: IBizObra; function TfrViewObras.GetObras: IBizObra;
begin begin
Result := FObras; Result := FObras;

View File

@ -6,13 +6,17 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
Width = 514 Width = 514
Height = 273 Height = 273
ExplicitWidth = 473 ExplicitWidth = 514
ExplicitHeight = 273 ExplicitHeight = 273
DesignSize = ( DesignSize = (
514 514
273) 273)
inherited edtlNombre: TcxDBTextEdit inherited edtlNombre: TcxDBTextEdit
Left = 118 Left = 118
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 118 ExplicitLeft = 118
ExplicitWidth = 345 ExplicitWidth = 345
Width = 345 Width = 345
@ -20,6 +24,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtNIFCIF: TcxDBTextEdit inherited edtNIFCIF: TcxDBTextEdit
Left = 118 Left = 118
Top = 153 Top = 153
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 7 TabOrder = 7
ExplicitLeft = 118 ExplicitLeft = 118
ExplicitTop = 153 ExplicitTop = 153
@ -29,6 +37,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtCalle: TcxDBTextEdit inherited edtCalle: TcxDBTextEdit
Left = 118 Left = 118
Top = 180 Top = 180
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 8 TabOrder = 8
ExplicitLeft = 118 ExplicitLeft = 118
ExplicitTop = 180 ExplicitTop = 180
@ -38,6 +50,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtPoblacion: TcxDBTextEdit inherited edtPoblacion: TcxDBTextEdit
Left = 118 Left = 118
Top = 207 Top = 207
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 9 TabOrder = 9
ExplicitLeft = 118 ExplicitLeft = 118
ExplicitTop = 207 ExplicitTop = 207
@ -47,6 +63,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtProvincia: TcxDBTextEdit inherited edtProvincia: TcxDBTextEdit
Left = 118 Left = 118
Top = 234 Top = 234
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 11 TabOrder = 11
ExplicitLeft = 118 ExplicitLeft = 118
ExplicitTop = 234 ExplicitTop = 234
@ -56,6 +76,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtCodigoPostal: TcxDBTextEdit inherited edtCodigoPostal: TcxDBTextEdit
Left = 422 Left = 422
Top = 207 Top = 207
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 10 TabOrder = 10
ExplicitLeft = 422 ExplicitLeft = 422
ExplicitTop = 207 ExplicitTop = 207
@ -88,10 +112,14 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
Style.BorderStyle = ebs3D Style.BorderStyle = ebs3D
Style.HotTrack = False Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.NativeStyle = True StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 5 TabOrder = 5
Height = 21 Height = 21
Width = 345 Width = 345
@ -111,10 +139,14 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
Style.BorderStyle = ebs3D Style.BorderStyle = ebs3D
Style.HotTrack = False Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.NativeStyle = True StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 4 TabOrder = 4
Height = 21 Height = 21
Width = 121 Width = 121
@ -134,10 +166,14 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
Style.BorderStyle = ebs3D Style.BorderStyle = ebs3D
Style.HotTrack = False Style.HotTrack = False
Style.LookAndFeel.NativeStyle = True Style.LookAndFeel.NativeStyle = True
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.NativeStyle = True StyleDisabled.LookAndFeel.NativeStyle = True
StyleDisabled.LookAndFeel.SkinName = ''
StyleDisabled.TextColor = clWindowText StyleDisabled.TextColor = clWindowText
StyleFocused.LookAndFeel.NativeStyle = True StyleFocused.LookAndFeel.NativeStyle = True
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 3 TabOrder = 3
Height = 21 Height = 21
Width = 152 Width = 152

File diff suppressed because it is too large Load Diff

View File

@ -95,7 +95,7 @@ type
function Buscar(const ID: Integer): IBizPedidoProveedor; function Buscar(const ID: Integer): IBizPedidoProveedor;
function BuscarTodos: IBizPedidoProveedor; function BuscarTodos: IBizPedidoProveedor;
function BuscarPendientesRecepcion: IBizPedidoProveedor; function BuscarPendientesRecepcion: IBizPedidoProveedor;
function BuscarSinFacturar : IBizPedidoProveedor; function BuscarSinFacturar : IBizPedidoProveedor;
function Nuevo : IBizPedidoProveedor; function Nuevo : IBizPedidoProveedor;
procedure Ver(APedido : IBizPedidoProveedor); procedure Ver(APedido : IBizPedidoProveedor);
procedure VerTodos(APedidos: IBizPedidoProveedor); procedure VerTodos(APedidos: IBizPedidoProveedor);
@ -294,11 +294,10 @@ end;
destructor TPedidosProveedorController.Destroy; destructor TPedidosProveedorController.Destroy;
begin begin
inherited;
FDataModule := Nil; FDataModule := Nil;
FProveedorController := Nil; FProveedorController := Nil;
FDetallesController := Nil; FDetallesController := Nil;
inherited;
end; end;
function TPedidosProveedorController.Duplicar( function TPedidosProveedorController.Duplicar(

View File

@ -41,6 +41,10 @@ inherited fEditorPedidoProveedor: TfEditorPedidoProveedor
00C20B50400F1E42A70000000049454E44AE426082} 00C20B50400F1E42A70000000049454E44AE426082}
ExplicitLeft = 735 ExplicitLeft = 735
end end
inherited lblDesbloquear: TcxLabel
Left = 754
ExplicitLeft = 754
end
end end
inherited TBXDock: TTBXDock inherited TBXDock: TTBXDock
Width = 879 Width = 879
@ -75,7 +79,6 @@ inherited fEditorPedidoProveedor: TfEditorPedidoProveedor
inherited pgPaginas: TPageControl inherited pgPaginas: TPageControl
Width = 873 Width = 873
Height = 534 Height = 534
ActivePage = pagContenido
TabOrder = 1 TabOrder = 1
OnChanging = pgPaginasChanging OnChanging = pgPaginasChanging
ExplicitWidth = 873 ExplicitWidth = 873
@ -137,10 +140,10 @@ inherited fEditorPedidoProveedor: TfEditorPedidoProveedor
inherited FontSize: TEdit inherited FontSize: TEdit
Left = 544 Left = 544
Top = 0 Top = 0
Width = 246 Width = 278
ExplicitLeft = 544 ExplicitLeft = 544
ExplicitTop = 0 ExplicitTop = 0
ExplicitWidth = 246 ExplicitWidth = 278
end end
inherited ToolButton13: TToolButton [7] inherited ToolButton13: TToolButton [7]
Left = 0 Left = 0

View File

@ -14,7 +14,7 @@ uses
uBizPedidosProveedor, uIEditorPedidoProveedor, uPedidosProveedorController, uBizPedidosProveedor, uIEditorPedidoProveedor, uPedidosProveedorController,
uViewDetallesBase, uViewDetallesPedidoProveedor, uViewDetallesBase, uViewDetallesPedidoProveedor,
dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales, dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales,
uViewDetallesDTO, uViewDetallesArticulos, uDAInterfaces; uViewDetallesDTO, uViewDetallesArticulos, uDAInterfaces, cxLabel;
type type
TfEditorPedidoProveedor = class(TfEditorDBItem, IEditorPedidoProveedor) TfEditorPedidoProveedor = class(TfEditorDBItem, IEditorPedidoProveedor)

View File

@ -1,32 +1,32 @@
inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
Width = 586 Width = 484
Height = 476 Height = 240
ExplicitWidth = 586 ExplicitWidth = 484
ExplicitHeight = 476 ExplicitHeight = 240
object dxLayoutControl1: TdxLayoutControl object dxLayoutControl1: TdxLayoutControl
Left = 0 Left = 0
Top = 0 Top = 0
Width = 586 Width = 484
Height = 476 Height = 240
Align = alClient Align = alClient
ParentBackground = True ParentBackground = True
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
DesignSize = ( DesignSize = (
586 484
476) 240)
object Bevel1: TBevel object Bevel1: TBevel
Left = 10 Left = 10
Top = 432 Top = 178
Width = 566 Width = 566
Height = 2 Height = 2
Shape = bsTopLine Shape = bsTopLine
end end
object rdxDestino1: TRadioButton object rdxDestino1: TRadioButton
Left = 10 Left = 10
Top = 10 Top = 12
Width = 566 Width = 175
Height = 17 Height = 17
Action = actListaAlmacenes Action = actListaAlmacenes
TabOrder = 0 TabOrder = 0
@ -34,15 +34,15 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
end end
object rdxDestino2: TRadioButton object rdxDestino2: TRadioButton
Left = 10 Left = 10
Top = 110 Top = 67
Width = 566 Width = 566
Height = 17 Height = 17
Action = actOtro Action = actOtro
TabOrder = 4 TabOrder = 4
end end
object cbListaAlmacenes: TcxDBLookupComboBox object cbListaAlmacenes: TcxDBLookupComboBox
Left = 25 Left = 206
Top = 33 Top = 10
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'ID_ALMACEN' DataBinding.DataField = 'ID_ALMACEN'
DataBinding.DataSource = dsPedido DataBinding.DataSource = dsPedido
@ -77,8 +77,8 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
Width = 551 Width = 551
end end
object bModificar: TBitBtn object bModificar: TBitBtn
Left = 448 Left = 346
Top = 396 Top = 142
Width = 128 Width = 128
Height = 25 Height = 25
Caption = 'Modificar la direcci'#243'n...' Caption = 'Modificar la direcci'#243'n...'
@ -87,9 +87,9 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
end end
object txtDireccion: TStaticText object txtDireccion: TStaticText
Left = 25 Left = 25
Top = 133 Top = 90
Width = 551 Width = 882
Height = 257 Height = 47
AutoSize = False AutoSize = False
BevelKind = bkFlat BevelKind = bkFlat
TabOrder = 5 TabOrder = 5
@ -97,15 +97,15 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
end end
object RadioButton1: TRadioButton object RadioButton1: TRadioButton
Left = 10 Left = 10
Top = 60 Top = 39
Width = 566 Width = 383
Height = 17 Height = 17
Action = actListaObras Action = actListaObras
TabOrder = 2 TabOrder = 2
end end
object cbListaObras: TcxDBLookupComboBox object cbListaObras: TcxDBLookupComboBox
Left = 25 Left = 414
Top = 83 Top = 37
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'ID_ALMACEN' DataBinding.DataField = 'ID_ALMACEN'
DataBinding.DataSource = dsPedido DataBinding.DataSource = dsPedido
@ -137,11 +137,11 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
StyleHot.LookAndFeel.NativeStyle = True StyleHot.LookAndFeel.NativeStyle = True
StyleHot.LookAndFeel.SkinName = '' StyleHot.LookAndFeel.SkinName = ''
TabOrder = 3 TabOrder = 3
Width = 551 Width = 128
end end
object edtEntregarA: TcxDBButtonEdit object edtEntregarA: TcxDBButtonEdit
Left = 242 Left = 10
Top = 445 Top = 209
DataBinding.DataField = 'PERSONA_CONTACTO' DataBinding.DataField = 'PERSONA_CONTACTO'
DataBinding.DataSource = dsPedido DataBinding.DataSource = dsPedido
Properties.Buttons = < Properties.Buttons = <
@ -174,34 +174,62 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
ShowCaption = False ShowCaption = False
Hidden = True Hidden = True
ShowBorder = False ShowBorder = False
object dxLayoutItem1: TdxLayoutItem object dxLayoutControl1Group1: TdxLayoutGroup
Caption = 'New Item'
ShowCaption = False ShowCaption = False
Control = rdxDestino1 Hidden = True
ControlOptions.AutoColor = True ShowBorder = False
ControlOptions.ShowBorder = False object dxLayoutControl1Group2: TdxLayoutGroup
end ShowCaption = False
object dxLayoutControl1Item3: TdxLayoutItem Hidden = True
Caption = 'New Item' LayoutDirection = ldHorizontal
Offsets.Left = 15 ShowBorder = False
ShowCaption = False object dxLayoutItem1: TdxLayoutItem
Control = cbListaAlmacenes AutoAligns = [aaHorizontal]
ControlOptions.ShowBorder = False AlignVert = avCenter
end Caption = 'New Item'
object dxLayoutControl1Item4: TdxLayoutItem ShowCaption = False
ShowCaption = False Control = rdxDestino1
Control = RadioButton1 ControlOptions.AutoColor = True
ControlOptions.AutoColor = True ControlOptions.ShowBorder = False
ControlOptions.ShowBorder = False end
end object dxLayoutControl1Item3: TdxLayoutItem
object dxLayoutControl1Item6: TdxLayoutItem AutoAligns = [aaVertical]
Offsets.Left = 15 AlignHorz = ahClient
ShowCaption = False Caption = 'New Item'
Control = cbListaObras Offsets.Left = 15
ControlOptions.ShowBorder = False ShowCaption = False
Control = cbListaAlmacenes
ControlOptions.ShowBorder = False
end
end
object dxLayoutControl1Group3: TdxLayoutGroup
ShowCaption = False
Hidden = True
LayoutDirection = ldHorizontal
ShowBorder = False
object dxLayoutControl1Item4: TdxLayoutItem
AutoAligns = [aaHorizontal]
AlignVert = avCenter
ShowCaption = False
Control = RadioButton1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
object dxLayoutControl1Item6: TdxLayoutItem
AutoAligns = [aaVertical]
AlignHorz = ahClient
Offsets.Left = 15
ShowCaption = False
Visible = False
Control = cbListaObras
ControlOptions.ShowBorder = False
end
end
end end
object dxLayoutControl1Item2: TdxLayoutItem object dxLayoutControl1Item2: TdxLayoutItem
AutoAligns = [aaHorizontal]
Caption = 'New Item' Caption = 'New Item'
Offsets.Top = 3
ShowCaption = False ShowCaption = False
Control = rdxDestino2 Control = rdxDestino2
ControlOptions.AutoColor = True ControlOptions.AutoColor = True
@ -235,6 +263,7 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
end end
object dxLayoutControl1Item7: TdxLayoutItem object dxLayoutControl1Item7: TdxLayoutItem
Caption = 'Entregar este pedido a la persona de contacto:' Caption = 'Entregar este pedido a la persona de contacto:'
CaptionOptions.Layout = clTop
Control = edtEntregarA Control = edtEntregarA
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
@ -255,7 +284,7 @@ inherited frViewDireccionEntregaPedidoProv: TfrViewDireccionEntregaPedidoProv
OnExecute = actOtroExecute OnExecute = actOtroExecute
end end
object actListaObras: TAction object actListaObras: TAction
Caption = 'Recibir el pedido en la obra:' Caption = 'Recibir el pedido en la direcci'#243'n de la obra.'
GroupIndex = 1 GroupIndex = 1
OnExecute = actListaObrasExecute OnExecute = actListaObrasExecute
end end

View File

@ -3,7 +3,7 @@ unit uViewDireccionEntregaPedidoProv;
interface interface
uses uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, uBizPedidosProveedor, cxGraphics, dxLayoutControl, cxMemo, Dialogs, uViewBase, uBizPedidosProveedor, cxGraphics, dxLayoutControl, cxMemo,
cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit, cxLookupEdit, cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit, cxLookupEdit,
cxDBLookupEdit, cxDBLookupComboBox, StdCtrls, cxControls, DB, uDADataTable, cxDBLookupEdit, cxDBLookupComboBox, StdCtrls, cxControls, DB, uDADataTable,
@ -47,6 +47,9 @@ type
dxLayoutControl1Item8: TdxLayoutItem; dxLayoutControl1Item8: TdxLayoutItem;
edtEntregarA: TcxDBButtonEdit; edtEntregarA: TcxDBButtonEdit;
dxLayoutControl1Item7: TdxLayoutItem; dxLayoutControl1Item7: TdxLayoutItem;
dxLayoutControl1Group1: TdxLayoutGroup;
dxLayoutControl1Group2: TdxLayoutGroup;
dxLayoutControl1Group3: TdxLayoutGroup;
procedure actListaAlmacenesExecute(Sender: TObject); procedure actListaAlmacenesExecute(Sender: TObject);
procedure actOtroExecute(Sender: TObject); procedure actOtroExecute(Sender: TObject);
procedure cbListaAlmacenesPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean); procedure cbListaAlmacenesPropertiesValidate(Sender: TObject; var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
@ -68,8 +71,9 @@ type
procedure CambioDireccionAlmacen; procedure CambioDireccionAlmacen;
procedure CambioDireccionObra; procedure CambioDireccionObra;
procedure RefrescarDireccion; procedure RefrescarDireccion;
procedure PrepararObra;
procedure SetReadOnly(Value: Boolean); override; procedure SetReadOnly(Value: Boolean); override;
procedure ID_OBRAOnChange(Sender: TDACustomField);
public public
property PedidoProveedor: IBizPedidoProveedor read GetPedidoProveedor write SetPedidoProveedor; property PedidoProveedor: IBizPedidoProveedor read GetPedidoProveedor write SetPedidoProveedor;
constructor Create(AOwner: TComponent); override; constructor Create(AOwner: TComponent); override;
@ -94,6 +98,7 @@ procedure TfrViewDireccionEntregaPedidoProv.actListaObrasExecute(
begin begin
actListaObras.Checked := True; actListaObras.Checked := True;
RefrescarDireccion; RefrescarDireccion;
CambioDireccionObra;
end; end;
procedure TfrViewDireccionEntregaPedidoProv.actOtroExecute(Sender: TObject); procedure TfrViewDireccionEntregaPedidoProv.actOtroExecute(Sender: TObject);
@ -203,8 +208,11 @@ var
begin begin
inherited; inherited;
AID_Subcontrata := -1; AID_Subcontrata := -1;
{ ********************************************************* REPASAR
if actListaObras.Checked then if actListaObras.Checked then
AID_Subcontrata := FObras.ID_SUBCONTRATA; AID_Subcontrata := FObras.ID_SUBCONTRATA;}
APersonaContacto := FPedido.PERSONA_CONTACTO; APersonaContacto := FPedido.PERSONA_CONTACTO;
if ElegirPersonaContactoPedido(AID_Subcontrata, APersonaContacto) then if ElegirPersonaContactoPedido(AID_Subcontrata, APersonaContacto) then
@ -219,6 +227,13 @@ begin
Result := FPedido; Result := FPedido;
end; end;
procedure TfrViewDireccionEntregaPedidoProv.ID_OBRAOnChange(
Sender: TDACustomField);
begin
PrepararObra;
CambioDireccionObra;
end;
procedure TfrViewDireccionEntregaPedidoProv.RefrescarDireccion; procedure TfrViewDireccionEntregaPedidoProv.RefrescarDireccion;
begin begin
txtDireccion.Caption := ''; txtDireccion.Caption := '';
@ -248,17 +263,38 @@ begin
bModificar.Enabled := False; bModificar.Enabled := False;
end end
else begin else begin
bModificar.Enabled := False;
txtDireccion.Enabled := False; txtDireccion.Enabled := False;
cbListaAlmacenes.Enabled := False; cbListaAlmacenes.Enabled := False;
cbListaAlmacenes.Text := ''; cbListaAlmacenes.Text := '';
cbListaObras.Enabled := True; cbListaObras.Enabled := True;
cbListaObras.DroppedDown := True; cbListaObras.DroppedDown := True;
bModificar.Enabled := False;
end; end;
end; end;
end; end;
procedure TfrViewDireccionEntregaPedidoProv.PrepararObra;
begin
if Assigned(FPedido) and FPedido.Active then
if FPedido.ID_OBRAIsNull then
begin
actListaObras.Enabled := False;
actListaObras.Caption := 'Recibir el pedido en la dirección de la obra.';
if actListaObras.Checked then
actListaAlmacenes.Execute;
end
else begin
actListaObras.Enabled := True;
FObras.DataTable.First;
FObras.DataTable.Locate('ID', FPedido.ID_OBRA, []);
actListaObras.Caption := 'Recibir el pedido en la dirección de la obra (' + FObras.NOMBRE + ')';
end;
end;
procedure TfrViewDireccionEntregaPedidoProv.SetPedidoProveedor( procedure TfrViewDireccionEntregaPedidoProv.SetPedidoProveedor(
const Value: IBizPedidoProveedor); const Value: IBizPedidoProveedor);
begin begin
@ -269,6 +305,7 @@ begin
FPedido := Value; FPedido := Value;
dsPedido.DataTable := FPedido.DataTable; dsPedido.DataTable := FPedido.DataTable;
FPedido.DataTable.FieldByName('ID_OBRA').OnChange := ID_OBRAOnChange;
cbListaAlmacenes.Properties.OnValidate := cbListaAlmacenesPropertiesValidate; cbListaAlmacenes.Properties.OnValidate := cbListaAlmacenesPropertiesValidate;
cbListaObras.Properties.OnValidate := cbListaObrasPropertiesValidate; cbListaObras.Properties.OnValidate := cbListaObrasPropertiesValidate;
@ -279,12 +316,13 @@ begin
if (FPedido.ID_ALMACEN > 0) then if (FPedido.ID_ALMACEN > 0) then
if FPedido.TIPO_ALMACEN = CTE_INV_ALMACEN then if FPedido.TIPO_ALMACEN = CTE_INV_ALMACEN then
actListaAlmacenes.Checked := True actListaAlmacenes.Checked := True
else else begin
actListaObras.Checked := True actListaObras.Checked := True
end
else else
actOtro.Checked := True; actOtro.Checked := True;
end; end;
PrepararObra;
RefrescarDireccion; RefrescarDireccion;
end; end;

View File

@ -1,21 +1,22 @@
inherited frViewObraReserva: TfrViewObraReserva inherited frViewObraReserva: TfrViewObraReserva
Width = 586 Width = 586
Height = 66 Height = 73
ExplicitWidth = 586 ExplicitWidth = 586
ExplicitHeight = 66 ExplicitHeight = 73
object dxLayoutControl1: TdxLayoutControl object dxLayoutControl1: TdxLayoutControl
Left = 0 Left = 0
Top = 0 Top = 0
Width = 586 Width = 586
Height = 66 Height = 73
Align = alClient Align = alClient
ParentBackground = True ParentBackground = True
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
ExplicitHeight = 66
DesignSize = ( DesignSize = (
586 586
66) 73)
object Label1: TLabel object Label1: TLabel
Left = 10 Left = 10
Top = 10 Top = 10
@ -25,7 +26,7 @@ inherited frViewObraReserva: TfrViewObraReserva
end end
object cbListaObrasReserva: TcxDBLookupComboBox object cbListaObrasReserva: TcxDBLookupComboBox
Left = 25 Left = 25
Top = 29 Top = 31
Anchors = [akLeft, akTop, akRight] Anchors = [akLeft, akTop, akRight]
DataBinding.DataField = 'ID_OBRA' DataBinding.DataField = 'ID_OBRA'
DataBinding.DataSource = dsPedido DataBinding.DataSource = dsPedido
@ -43,6 +44,7 @@ inherited frViewObraReserva: TfrViewObraReserva
Properties.ListOptions.SyncMode = True Properties.ListOptions.SyncMode = True
Properties.ListSource = dsObras Properties.ListSource = dsObras
Properties.PostPopupValueOnTab = True Properties.PostPopupValueOnTab = True
Properties.OnEditValueChanged = cbListaObrasReservaPropertiesEditValueChanged
Style.BorderColor = clWindowFrame Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D Style.BorderStyle = ebs3D
Style.HotTrack = False Style.HotTrack = False
@ -120,8 +122,9 @@ inherited frViewObraReserva: TfrViewObraReserva
LayoutDirection = ldHorizontal LayoutDirection = ldHorizontal
ShowBorder = False ShowBorder = False
object dxLayoutControl1Item6: TdxLayoutItem object dxLayoutControl1Item6: TdxLayoutItem
AutoAligns = [aaVertical] AutoAligns = []
AlignHorz = ahClient AlignHorz = ahClient
AlignVert = avCenter
Offsets.Left = 15 Offsets.Left = 15
ShowCaption = False ShowCaption = False
Control = cbListaObrasReserva Control = cbListaObrasReserva

View File

@ -36,6 +36,7 @@ type
actVerObra: TAction; actVerObra: TAction;
procedure actVerObraExecute(Sender: TObject); procedure actVerObraExecute(Sender: TObject);
procedure actVerObraUpdate(Sender: TObject); procedure actVerObraUpdate(Sender: TObject);
procedure cbListaObrasReservaPropertiesEditValueChanged(Sender: TObject);
protected protected
FObrasController : IObrasController; FObrasController : IObrasController;
FObras: IBizObra; FObras: IBizObra;
@ -70,6 +71,20 @@ begin
(not EsCadenaVacia(cbListaObrasReserva.Text)); (not EsCadenaVacia(cbListaObrasReserva.Text));
end; end;
procedure TfrViewObraReserva.cbListaObrasReservaPropertiesEditValueChanged(
Sender: TObject);
begin
inherited;
{ if Assigned(FPedido) and (FPedido.Active) then
begin
if not (FPedido.ID_OBRAIsNull) and (FPedido.NOMBRE_OBRA <> cbListaObrasReserva.Text) then
begin
FPedido.Edit;
FPedido.NOMBRE_OBRA := cbListaObrasReserva.Text;
end;
end;}
end;
constructor TfrViewObraReserva.Create(AOwner: TComponent); constructor TfrViewObraReserva.Create(AOwner: TComponent);
begin begin
inherited; inherited;
@ -82,6 +97,8 @@ end;
destructor TfrViewObraReserva.Destroy; destructor TfrViewObraReserva.Destroy;
begin begin
cbListaObrasReserva.Properties.OnEditValueChanged := NIL;
FObrasController := Nil; FObrasController := Nil;
FObras := Nil; FObras := Nil;
@ -98,8 +115,11 @@ procedure TfrViewObraReserva.SetPedidoProveedor(
const Value: IBizPedidoProveedor); const Value: IBizPedidoProveedor);
begin begin
dsPedido.DataTable := nil; dsPedido.DataTable := nil;
cbListaObrasReserva.Properties.OnEditValueChanged := NIL;
FPedido := Value; FPedido := Value;
dsPedido.DataTable := FPedido.DataTable; dsPedido.DataTable := FPedido.DataTable;
cbListaObrasReserva.Properties.OnEditValueChanged := cbListaObrasReservaPropertiesEditValueChanged;
end; end;

View File

@ -1,23 +1,24 @@
inherited frViewPedidoProveedor: TfrViewPedidoProveedor inherited frViewPedidoProveedor: TfrViewPedidoProveedor
Width = 965 Width = 965
Height = 546 Height = 560
OnCreate = CustomViewCreate OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy OnDestroy = CustomViewDestroy
ExplicitWidth = 965 ExplicitWidth = 965
ExplicitHeight = 546 ExplicitHeight = 560
object dxLayoutControl1: TdxLayoutControl object dxLayoutControl1: TdxLayoutControl
Left = 0 Left = 0
Top = 0 Top = 0
Width = 965 Width = 965
Height = 546 Height = 560
Align = alClient Align = alClient
ParentBackground = True ParentBackground = True
TabOrder = 0 TabOrder = 0
TabStop = False TabStop = False
AutoContentSizes = [acsWidth, acsHeight] AutoContentSizes = [acsWidth, acsHeight]
ExplicitHeight = 546
DesignSize = ( DesignSize = (
965 965
546) 560)
object edtFechaPedido: TcxDBDateEdit object edtFechaPedido: TcxDBDateEdit
Left = 121 Left = 121
Top = 55 Top = 55
@ -142,7 +143,7 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
end end
inline frViewDireccionEntregaPedidoProv1: TfrViewDireccionEntregaPedidoProv inline frViewDireccionEntregaPedidoProv1: TfrViewDireccionEntregaPedidoProv
Left = 22 Left = 22
Top = 168 Top = 276
Width = 432 Width = 432
Height = 248 Height = 248
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -151,12 +152,51 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 6 TabOrder = 7
ReadOnly = False ReadOnly = False
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 168 ExplicitTop = 276
ExplicitWidth = 432 ExplicitWidth = 432
ExplicitHeight = 248 ExplicitHeight = 248
inherited dxLayoutControl1: TdxLayoutControl
Width = 432
Height = 248
ExplicitWidth = 432
ExplicitHeight = 248
DesignSize = (
432
248)
inherited Bevel1: TBevel
Top = 200
ExplicitTop = 200
end
inherited cbListaAlmacenes: TcxDBLookupComboBox
end
inherited bModificar: TBitBtn
Left = 294
Top = 164
ExplicitLeft = 294
ExplicitTop = 164
end
inherited txtDireccion: TStaticText
Height = 37
ExplicitHeight = 37
end
inherited RadioButton1: TRadioButton
Width = 342
ExplicitWidth = 342
end
inherited cbListaObras: TcxDBLookupComboBox
Left = 373
ExplicitLeft = 373
ExplicitWidth = 82
Width = 82
end
inherited edtEntregarA: TcxDBButtonEdit
Top = 231
ExplicitTop = 231
end
end
inherited ActionList1: TActionList inherited ActionList1: TActionList
Left = 72 Left = 72
end end
@ -373,7 +413,7 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
end end
inline frViewObraReserva1: TfrViewObraReserva inline frViewObraReserva1: TfrViewObraReserva
Left = 22 Left = 22
Top = 452 Top = 168
Width = 432 Width = 432
Height = 72 Height = 72
Font.Charset = DEFAULT_CHARSET Font.Charset = DEFAULT_CHARSET
@ -382,10 +422,10 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
Font.Name = 'Tahoma' Font.Name = 'Tahoma'
Font.Style = [] Font.Style = []
ParentFont = False ParentFont = False
TabOrder = 7 TabOrder = 6
ReadOnly = False ReadOnly = False
ExplicitLeft = 22 ExplicitLeft = 22
ExplicitTop = 452 ExplicitTop = 168
ExplicitWidth = 432 ExplicitWidth = 432
ExplicitHeight = 72 ExplicitHeight = 72
inherited dxLayoutControl1: TdxLayoutControl inherited dxLayoutControl1: TdxLayoutControl
@ -401,10 +441,6 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
ExplicitWidth = 235 ExplicitWidth = 235
end end
inherited cbListaObrasReserva: TcxDBLookupComboBox inherited cbListaObrasReserva: TcxDBLookupComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 397 ExplicitWidth = 397
Width = 397 Width = 397
end end
@ -413,6 +449,21 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
ExplicitLeft = 278 ExplicitLeft = 278
end end
end end
inherited dsPedido: TDADataSource
Left = 192
Top = 24
end
inherited dsObras: TDADataSource
Top = 24
end
inherited PngImageList: TPngImageList
Left = 224
Top = 24
end
inherited ActionList1: TActionList
Left = 256
Top = 24
end
end end
object dxLayoutControl1Group_Root: TdxLayoutGroup object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False ShowCaption = False
@ -487,6 +538,17 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
end end
end end
end end
object dxLayoutControl1Group11: TdxLayoutGroup
AutoAligns = [aaHorizontal]
Caption = 'Obra relacionada'
object dxLayoutControl1Item13: TdxLayoutItem
Caption = 'Reservar para obra:'
ShowCaption = False
Control = frViewObraReserva1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
object dxLayoutControl1Group8: TdxLayoutGroup object dxLayoutControl1Group8: TdxLayoutGroup
AutoAligns = [] AutoAligns = []
AlignHorz = ahClient AlignHorz = ahClient
@ -500,18 +562,6 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
ControlOptions.ShowBorder = False ControlOptions.ShowBorder = False
end end
end end
object dxLayoutControl1Group11: TdxLayoutGroup
AutoAligns = [aaHorizontal]
AlignVert = avBottom
Caption = 'Datos de reserva'
object dxLayoutControl1Item13: TdxLayoutItem
Caption = 'Reservar para obra:'
ShowCaption = False
Control = frViewObraReserva1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
end end
object dxLayoutControl1Group3: TdxLayoutGroup object dxLayoutControl1Group3: TdxLayoutGroup
AutoAligns = [aaVertical] AutoAligns = [aaVertical]

View File

@ -49,12 +49,12 @@
<DelphiCompile Include="PresupuestosCliente_controller.dpk"> <DelphiCompile Include="PresupuestosCliente_controller.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\..\Lib\Articulos_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Articulos_controller.dcp" />
<DCCReference Include="..\..\Lib\Contactos_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\Contactos_controller.dcp" />
<DCCReference Include="..\..\Lib\GestorDocumentos_controller.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\GestorDocumentos_controller.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\PresupuestosCliente_data.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\PresupuestosCliente_data.dcp" />
<DCCReference Include="..\..\Lib\PresupuestosCliente_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\PresupuestosCliente_model.dcp" />
<DCCReference Include="uArticulosPresupuestoClienteController.pas" /> <DCCReference Include="uArticulosPresupuestoClienteController.pas" />
<DCCReference Include="uDetallesPresupuestoClienteController.pas" /> <DCCReference Include="uDetallesPresupuestoClienteController.pas" />
<DCCReference Include="uPresupuestosClienteController.pas" /> <DCCReference Include="uPresupuestosClienteController.pas" />

View File

@ -7,7 +7,8 @@ uses
Classes, uROTypes, SysUtils, uDADataTable, uEditorDBItem, Classes, uROTypes, SysUtils, uDADataTable, uEditorDBItem,
uControllerBase, uIDataModulePresupuestosCliente, uClientesController, uControllerBase, uIDataModulePresupuestosCliente, uClientesController,
uDetallesPresupuestoClienteController, uGestorDocumentosController, uDetallesPresupuestoClienteController, uGestorDocumentosController,
uBizPresupuestosCliente, uBizDireccionesContacto, uBizDetallesPresupuestoCliente; uBizPresupuestosCliente, uBizDireccionesContacto, uBizDetallesPresupuestoCliente,
uIntegerListUtils;
type type
IPresupuestosClienteController = interface(IControllerBase) IPresupuestosClienteController = interface(IControllerBase)
@ -26,7 +27,8 @@ type
property GestorDocumentosController: IGestorDocumentosController read GetGestorDocumentosController write SetGestorDocumentosController; property GestorDocumentosController: IGestorDocumentosController read GetGestorDocumentosController write SetGestorDocumentosController;
procedure RecuperarCliente(APresupuesto : IBizPresupuestoCliente); procedure RecuperarCliente(APresupuesto : IBizPresupuestoCliente);
function Buscar(const ID: Integer): IBizPresupuestoCliente; function Buscar(const ID: Integer): IBizPresupuestoCliente; overload;
function Buscar(const ListaID: TIntegerList): IBizPresupuestoCliente; overload;
function BuscarTodos: IBizPresupuestoCliente; function BuscarTodos: IBizPresupuestoCliente;
function BuscarAceptados : IBizPresupuestoCliente; function BuscarAceptados : IBizPresupuestoCliente;
function BuscarSinFacturar : IBizPresupuestoCliente; function BuscarSinFacturar : IBizPresupuestoCliente;
@ -102,7 +104,8 @@ type
procedure DescartarCambios(APresupuesto : IBizPresupuestoCliente); virtual; procedure DescartarCambios(APresupuesto : IBizPresupuestoCliente); virtual;
function Existe(const ID: Integer) : Boolean; virtual; function Existe(const ID: Integer) : Boolean; virtual;
function Anadir(APresupuesto : IBizPresupuestoCliente) : Boolean; function Anadir(APresupuesto : IBizPresupuestoCliente) : Boolean;
function Buscar(const ID: Integer): IBizPresupuestoCliente; function Buscar(const ListaID: TIntegerList): IBizPresupuestoCliente; overload;
function Buscar(const ID: Integer): IBizPresupuestoCliente; overload;
function BuscarTodos: IBizPresupuestoCliente; function BuscarTodos: IBizPresupuestoCliente;
function BuscarAceptados : IBizPresupuestoCliente; function BuscarAceptados : IBizPresupuestoCliente;
function BuscarSinFacturar : IBizPresupuestoCliente; function BuscarSinFacturar : IBizPresupuestoCliente;
@ -136,7 +139,7 @@ uses
schPresupuestosClienteClient_Intf, uDAInterfaces, uDateUtils, uIEditorPresupuestoCliente, schPresupuestosClienteClient_Intf, uDAInterfaces, uDateUtils, uIEditorPresupuestoCliente,
uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente, uIEditorElegirPresupuestosCliente, uIEditorDireccionEntregaPresupuestoCliente,
schContactosClient_Intf, uPresupuestosClienteReportController, schContactosClient_Intf, uPresupuestosClienteReportController,
uSistemaFunc, uEMailUtils, uDialogElegirEMail, uIntegerListUtils, Dialogs; uSistemaFunc, uEMailUtils, uDialogElegirEMail, Dialogs;
{ TPresupuestosClienteController } { TPresupuestosClienteController }
@ -194,6 +197,13 @@ begin
FiltrarEmpresa(Result); FiltrarEmpresa(Result);
end; end;
function TPresupuestosClienteController.Buscar(
const ListaID: TIntegerList): IBizPresupuestoCliente;
begin
Result := FDataModule.GetItems(ListaID);
FiltrarEmpresa(Result);
end;
function TPresupuestosClienteController.BuscarAceptados: IBizPresupuestoCliente; function TPresupuestosClienteController.BuscarAceptados: IBizPresupuestoCliente;
var var
Condicion: TDAWhereExpression; Condicion: TDAWhereExpression;

View File

@ -29,10 +29,12 @@ type
function _GetDetalles : IBizDetallesPresupuestoCliente; function _GetDetalles : IBizDetallesPresupuestoCliente;
protected protected
procedure AsignarClaseNegocio(APresupuesto: TDADataTable); virtual; procedure AsignarClaseNegocio(APresupuesto: TDADataTable);
public public
function GetItems : IBizPresupuestoCliente; virtual; function GetItems : IBizPresupuestoCliente; overload;
function GetItems(const AListaID: TIntegerList) : IBizPresupuestoCliente; overload;
function GetItem(const ID : Integer) : IBizPresupuestoCliente; function GetItem(const ID : Integer) : IBizPresupuestoCliente;
function NewItem : IBizPresupuestoCliente; function NewItem : IBizPresupuestoCliente;
@ -161,6 +163,41 @@ begin
end; end;
end; end;
function TDataModulePresupuestosCliente.GetItems(
const AListaID: TIntegerList): IBizPresupuestoCliente;
var
Condicion: TDAWhereExpression;
i : Integer;
AArray : Array of TDAWhereExpression;
begin
if not Assigned(AListaID) then
raise Exception.Create('ListaID no asignada (GetItems)');
ShowHourglassCursor;
try
Result := Self.GetItems;
with Result.DataTable.DynamicWhere do
begin
// (ID in (1, 2, 3...)
SetLength(AArray, AListaID.Count);
for i := 0 to AListaID.Count - 1 do
AArray[i] := NewConstant(AListaID[i], datInteger);
Condicion := NewBinaryExpression(NewField('', fld_PresupuestosClienteID), NewList(AArray), dboIn);
if IsEmpty then
Expression := Condicion
else
Expression := NewBinaryExpression(Expression, Condicion, dboAnd);
end;
finally
HideHourglassCursor;
end;
end;
function TDataModulePresupuestosCliente.GetItems: IBizPresupuestoCliente; function TDataModulePresupuestosCliente.GetItems: IBizPresupuestoCliente;
var var
APresupuesto: TDAMemDataTable; APresupuesto: TDAMemDataTable;

View File

@ -3,12 +3,14 @@ unit uIDataModulePresupuestosCliente;
interface interface
uses uses
Classes, uROTypes, uBizPresupuestosCliente, uBizDetallesPresupuestoCliente; Classes, uROTypes, uBizPresupuestosCliente, uBizDetallesPresupuestoCliente,
uIntegerListUtils;
type type
IDataModulePresupuestosCliente = interface IDataModulePresupuestosCliente = interface
['{F0DDD126-9E62-4FEC-A849-FDCA75718F5B}'] ['{F0DDD126-9E62-4FEC-A849-FDCA75718F5B}']
function GetItems: IBizPresupuestoCliente; function GetItems: IBizPresupuestoCliente; overload;
function GetItems(const AListaID: TIntegerList) : IBizPresupuestoCliente; overload;
function GetItem(const ID : Integer) : IBizPresupuestoCliente; function GetItem(const ID : Integer) : IBizPresupuestoCliente;
function NewItem : IBizPresupuestoCliente; function NewItem : IBizPresupuestoCliente;
end; end;

View File

@ -52,20 +52,22 @@
<DelphiCompile Include="PresupuestosCliente_model.dpk"> <DelphiCompile Include="PresupuestosCliente_model.dpk">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="adortl.dcp" /> <DCCReference Include="..\Controller\adortlBase.dcp" />
<DCCReference Include="Base.dcp" /> <DCCReference Include="..\Controller\Contactos_modelcontainsuIDataModulePresupuestosClientein.dcp" />
<DCCReference Include="Contactos_model.dcp" /> <DCCReference Include="C:\Documents and Settings\Usuario\adortl.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\dbrtl.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\dsnap.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\uIDataModulePresupuestosCliente.pas" /> <DCCReference Include="Data\uIDataModulePresupuestosCliente.pas" />
<DCCReference Include="Data\uIDataModulePresupuestosClienteReport.pas" /> <DCCReference Include="Data\uIDataModulePresupuestosClienteReport.pas" />
<DCCReference Include="dbrtl.dcp" />
<DCCReference Include="dsnap.dcp" />
<DCCReference Include="rtl.dcp" />
<DCCReference Include="schPresupuestosClienteClient_Intf.pas" /> <DCCReference Include="schPresupuestosClienteClient_Intf.pas" />
<DCCReference Include="schPresupuestosClienteServer_Intf.pas" /> <DCCReference Include="schPresupuestosClienteServer_Intf.pas" />
<DCCReference Include="uBizDetallesPresupuestoCliente.pas" /> <DCCReference Include="uBizDetallesPresupuestoCliente.pas" />
<DCCReference Include="uBizPresupuestosCliente.pas" /> <DCCReference Include="uBizPresupuestosCliente.pas" />
<DCCReference Include="vcl.dcp" />
<DCCReference Include="vcldb.dcp" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line

View File

@ -171,6 +171,24 @@
<Target Name="PresupuestosCliente_controller:Make"> <Target Name="PresupuestosCliente_controller:Make">
<MSBuild Projects="Controller\PresupuestosCliente_controller.dproj" Targets="Make" /> <MSBuild Projects="Controller\PresupuestosCliente_controller.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PreCli_FacCli_relation">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Facturas de cliente\PreCli_FacCli_relation.dproj" Targets="" />
</Target>
<Target Name="PreCli_FacCli_relation:Clean">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Facturas de cliente\PreCli_FacCli_relation.dproj" Targets="Clean" />
</Target>
<Target Name="PreCli_FacCli_relation:Make">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Facturas de cliente\PreCli_FacCli_relation.dproj" Targets="Make" />
</Target>
<Target Name="PreCli_AlbCli_relation">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Albaranes de cliente\PreCli_AlbCli_relation.dproj" Targets="" />
</Target>
<Target Name="PreCli_AlbCli_relation:Clean">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Albaranes de cliente\PreCli_AlbCli_relation.dproj" Targets="Clean" />
</Target>
<Target Name="PreCli_AlbCli_relation:Make">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Albaranes de cliente\PreCli_AlbCli_relation.dproj" Targets="Make" />
</Target>
<Target Name="PresupuestosCliente_view"> <Target Name="PresupuestosCliente_view">
<MSBuild Projects="Views\PresupuestosCliente_view.dproj" Targets="" /> <MSBuild Projects="Views\PresupuestosCliente_view.dproj" Targets="" />
</Target> </Target>
@ -189,15 +207,6 @@
<Target Name="PresupuestosCliente_plugin:Make"> <Target Name="PresupuestosCliente_plugin:Make">
<MSBuild Projects="Plugin\PresupuestosCliente_plugin.dproj" Targets="Make" /> <MSBuild Projects="Plugin\PresupuestosCliente_plugin.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PreCli_AlbCli_relation">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Albaranes de cliente\PreCli_AlbCli_relation.dproj" Targets="" />
</Target>
<Target Name="PreCli_AlbCli_relation:Clean">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Albaranes de cliente\PreCli_AlbCli_relation.dproj" Targets="Clean" />
</Target>
<Target Name="PreCli_AlbCli_relation:Make">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Albaranes de cliente\PreCli_AlbCli_relation.dproj" Targets="Make" />
</Target>
<Target Name="AlbProv_FacProv_relation"> <Target Name="AlbProv_FacProv_relation">
<MSBuild Projects="..\Relaciones\Albaranes de proveedor - Facturas de proveedor\AlbProv_FacProv_relation.dproj" Targets="" /> <MSBuild Projects="..\Relaciones\Albaranes de proveedor - Facturas de proveedor\AlbProv_FacProv_relation.dproj" Targets="" />
</Target> </Target>
@ -225,15 +234,6 @@
<Target Name="AlbaranesCliente_controller:Make"> <Target Name="AlbaranesCliente_controller:Make">
<MSBuild Projects="..\Albaranes de cliente\Controller\AlbaranesCliente_controller.dproj" Targets="Make" /> <MSBuild Projects="..\Albaranes de cliente\Controller\AlbaranesCliente_controller.dproj" Targets="Make" />
</Target> </Target>
<Target Name="PreCli_FacCli_relation">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Facturas de cliente\PreCli_FacCli_relation.dproj" Targets="" />
</Target>
<Target Name="PreCli_FacCli_relation:Clean">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Facturas de cliente\PreCli_FacCli_relation.dproj" Targets="Clean" />
</Target>
<Target Name="PreCli_FacCli_relation:Make">
<MSBuild Projects="..\Relaciones\Presupuestos de cliente - Facturas de cliente\PreCli_FacCli_relation.dproj" Targets="Make" />
</Target>
<Target Name="FacturasCliente_controller"> <Target Name="FacturasCliente_controller">
<MSBuild Projects="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" Targets="" /> <MSBuild Projects="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" Targets="" />
</Target> </Target>
@ -262,13 +262,13 @@
<MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" /> <MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" />
</Target> </Target>
<Target Name="Build"> <Target Name="Build">
<CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_data;Articulos_controller;Articulos_view;PresupuestosCliente_model;PresupuestosCliente_data;GestorDocumentos_data;GestorDocumentos_controller;PresupuestosCliente_controller;PresupuestosCliente_view;PresupuestosCliente_plugin;PreCli_AlbCli_relation;AlbProv_FacProv_relation;AlbaranesProveedor_view;AlbaranesCliente_controller;PreCli_FacCli_relation;FacturasCliente_controller;FactuGES;FactuGES_Server" /> <CallTarget Targets="Base;GUIBase;ApplicationBase;Contactos_model;Contactos_data;Contactos_controller;Contactos_view;Articulos_data;Articulos_controller;Articulos_view;PresupuestosCliente_model;PresupuestosCliente_data;GestorDocumentos_data;GestorDocumentos_controller;PresupuestosCliente_controller;PreCli_FacCli_relation;PreCli_AlbCli_relation;PresupuestosCliente_view;PresupuestosCliente_plugin;AlbProv_FacProv_relation;AlbaranesProveedor_view;AlbaranesCliente_controller;FacturasCliente_controller;FactuGES;FactuGES_Server" />
</Target> </Target>
<Target Name="Clean"> <Target Name="Clean">
<CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;PresupuestosCliente_model:Clean;PresupuestosCliente_data:Clean;GestorDocumentos_data:Clean;GestorDocumentos_controller:Clean;PresupuestosCliente_controller:Clean;PresupuestosCliente_view:Clean;PresupuestosCliente_plugin:Clean;PreCli_AlbCli_relation:Clean;AlbProv_FacProv_relation:Clean;AlbaranesProveedor_view:Clean;AlbaranesCliente_controller:Clean;PreCli_FacCli_relation:Clean;FacturasCliente_controller:Clean;FactuGES:Clean;FactuGES_Server:Clean" /> <CallTarget Targets="Base:Clean;GUIBase:Clean;ApplicationBase:Clean;Contactos_model:Clean;Contactos_data:Clean;Contactos_controller:Clean;Contactos_view:Clean;Articulos_data:Clean;Articulos_controller:Clean;Articulos_view:Clean;PresupuestosCliente_model:Clean;PresupuestosCliente_data:Clean;GestorDocumentos_data:Clean;GestorDocumentos_controller:Clean;PresupuestosCliente_controller:Clean;PreCli_FacCli_relation:Clean;PreCli_AlbCli_relation:Clean;PresupuestosCliente_view:Clean;PresupuestosCliente_plugin:Clean;AlbProv_FacProv_relation:Clean;AlbaranesProveedor_view:Clean;AlbaranesCliente_controller:Clean;FacturasCliente_controller:Clean;FactuGES:Clean;FactuGES_Server:Clean" />
</Target> </Target>
<Target Name="Make"> <Target Name="Make">
<CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;PresupuestosCliente_model:Make;PresupuestosCliente_data:Make;GestorDocumentos_data:Make;GestorDocumentos_controller:Make;PresupuestosCliente_controller:Make;PresupuestosCliente_view:Make;PresupuestosCliente_plugin:Make;PreCli_AlbCli_relation:Make;AlbProv_FacProv_relation:Make;AlbaranesProveedor_view:Make;AlbaranesCliente_controller:Make;PreCli_FacCli_relation:Make;FacturasCliente_controller:Make;FactuGES:Make;FactuGES_Server:Make" /> <CallTarget Targets="Base:Make;GUIBase:Make;ApplicationBase:Make;Contactos_model:Make;Contactos_data:Make;Contactos_controller:Make;Contactos_view:Make;Articulos_data:Make;Articulos_controller:Make;Articulos_view:Make;PresupuestosCliente_model:Make;PresupuestosCliente_data:Make;GestorDocumentos_data:Make;GestorDocumentos_controller:Make;PresupuestosCliente_controller:Make;PreCli_FacCli_relation:Make;PreCli_AlbCli_relation:Make;PresupuestosCliente_view:Make;PresupuestosCliente_plugin:Make;AlbProv_FacProv_relation:Make;AlbaranesProveedor_view:Make;AlbaranesCliente_controller:Make;FacturasCliente_controller:Make;FactuGES:Make;FactuGES_Server:Make" />
</Target> </Target>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" /> <Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project> </Project>

Binary file not shown.

View File

@ -91,8 +91,6 @@ uses
uRptWordPedidoProveedor in '..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas' {RptWordPedidoProveedor: TDataModule}, uRptWordPedidoProveedor in '..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas' {RptWordPedidoProveedor: TDataModule},
srvObras_Impl in '..\Modulos\Obras\Servidor\srvObras_Impl.pas', srvObras_Impl in '..\Modulos\Obras\Servidor\srvObras_Impl.pas',
uBizObrasServer in '..\Modulos\Obras\Model\uBizObrasServer.pas', uBizObrasServer in '..\Modulos\Obras\Model\uBizObrasServer.pas',
schObrasClient_Intf in '..\Modulos\Obras\Model\schObrasClient_Intf.pas',
schObrasServer_Intf in '..\Modulos\Obras\Model\schObrasServer_Intf.pas',
uRptRecibosCliente_Server in '..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas' {RptRecibosCliente: TDataModule}, uRptRecibosCliente_Server in '..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas' {RptRecibosCliente: TDataModule},
srvProvinciasPoblaciones_Impl in '..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas', srvProvinciasPoblaciones_Impl in '..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas',
uBizArticulosServer in '..\Modulos\Articulos\Model\uBizArticulosServer.pas', uBizArticulosServer in '..\Modulos\Articulos\Model\uBizArticulosServer.pas',
@ -127,6 +125,8 @@ uses
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas', schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas', schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
srvGestorInformes_Impl in '..\Modulos\Gestor de informes\Servidor\srvGestorInformes_Impl.pas' {srvGestorInformes: TDataAbstractService}, srvGestorInformes_Impl in '..\Modulos\Gestor de informes\Servidor\srvGestorInformes_Impl.pas' {srvGestorInformes: TDataAbstractService},
schObrasClient_Intf in '..\Modulos\Obras\Model\schObrasClient_Intf.pas',
schObrasServer_Intf in '..\Modulos\Obras\Model\schObrasServer_Intf.pas',
schRecibosClienteClient_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas', schRecibosClienteClient_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas',
schRecibosClienteServer_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas', schRecibosClienteServer_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas',
schRecibosProveedorClient_Intf in '..\Modulos\Recibos de proveedor\Model\schRecibosProveedorClient_Intf.pas', schRecibosProveedorClient_Intf in '..\Modulos\Recibos de proveedor\Model\schRecibosProveedorClient_Intf.pas',

View File

@ -1,305 +1,305 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid> <ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid>
<MainSource>FactuGES_Server.dpr</MainSource> <MainSource>FactuGES_Server.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler> <DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Servidor\FactuGES_Server.exe</DCC_DependencyCheckOutputName> <DCC_DependencyCheckOutputName>..\..\Output\Debug\Servidor\FactuGES_Server.exe</DCC_DependencyCheckOutputName>
<DCC_UsePackage>vcl;rtl;vclx;vclactnband;dbrtl;vcldb;vcldbx;bdertl;dsnap;dsnapcon;teeUI;teedb;tee;adortl;vclib;ibxpress;dbxcds;dbexpress;DbxCommonDriver;IndyCore;IndySystem;IndyProtocols;VclSmp;vclie;webdsnap;xmlrtl;inet;inetdbbde;inetdbxpress;RemObjects_BPDX_D11;RemObjects_RODX_D11;RemObjects_Indy_D11;RemObjects_Synapse_D11;RemObjects_WebBroker_D11;DataAbstract_Core_D11;DataAbstract_DBXDriver_D11;DataAbstract_IDE_D11;DataAbstract_Scripting_D11;DataAbstract_SDACDriver_D11;sdac105;dac105;DataAbstract_SQLiteDriver_D11;cxEditorsD10;cxLibraryD10;dxThemeD10;cxDataD10;cxExtEditorsD10;cxGridD10;cxPageControlD10;cxSchedulerD10;cxTreeListD10;cxVerticalGridD10;dxBarD10;dxComnD10;dxBarDBNavD10;dxBarExtDBItemsD10;dxBarExtItemsD10;dxDockingD10;dxLayoutControlD10;dxNavBarD10;dxPSCoreD10;dxsbD10;dxPScxCommonD10;dxPSLnksD10;vclshlctrls;dxPScxExtCommonD10;dxPScxGridLnkD10;dxPScxPCProdD10;dxPScxScheduler2LnkD10;dxPScxTLLnkD10;dxPSdxLCLnkD10;dxPsPrVwAdvD10;pckMD5;pckUCDataConnector;pckUserControl_RT;PluginSDK_D10R;PNG_D10;PngComponentsD10;tb2k_d10;tbx_d10;JclVcl;Jcl;JvXPCtrlsD11R;JvCoreD11R;JvSystemD11R;JvStdCtrlsD11R;JvAppFrmD11R;JvBandsD11R;JvDBD11R;JvDlgsD11R;JvBDED11R;JvCmpD11R;JvCryptD11R;JvCtrlsD11R;JvCustomD11R;JvDockingD11R;JvDotNetCtrlsD11R;JvEDID11R;JvGlobusD11R;JvHMID11R;JvInterpreterD11R;JvJansD11R;JvManagedThreadsD11R;JvMMD11R;JvNetD11R;JvPageCompsD11R;JvPluginD11R;JvPrintPreviewD11R;JvRuntimeDesignD11R;JvTimeFrameworkD11R;JvUIBD11R;JvValidatorsD11R;JvWizardD11R;pckUCADOConn;pckUCBDEConn;pckUCIBXConn;pckUCMidasConn;cxIntlPrintSys3D10;cxExportD10;cxIntl5D10;GUISDK_D11;ccpackD11;JSDialog100;fsTee11;fs11;frx11;frxADO11;frxBDE11;frxDB11;frxDBX11;frxe11;frxIBX11;frxTee11;fsADO11;fsBDE11;fsDB11;fsIBX11;websnap;soaprtl;IntrawebDB_90_100;Intraweb_90_100</DCC_UsePackage> <DCC_UsePackage>vcl;rtl;vclx;vclactnband;dbrtl;vcldb;vcldbx;bdertl;dsnap;dsnapcon;teeUI;teedb;tee;adortl;vclib;ibxpress;dbxcds;dbexpress;DbxCommonDriver;IndyCore;IndySystem;IndyProtocols;VclSmp;vclie;webdsnap;xmlrtl;inet;inetdbbde;inetdbxpress;RemObjects_BPDX_D11;RemObjects_RODX_D11;RemObjects_Indy_D11;RemObjects_Synapse_D11;RemObjects_WebBroker_D11;DataAbstract_Core_D11;DataAbstract_DBXDriver_D11;DataAbstract_IDE_D11;DataAbstract_Scripting_D11;DataAbstract_SDACDriver_D11;sdac105;dac105;DataAbstract_SQLiteDriver_D11;cxEditorsD10;cxLibraryD10;dxThemeD10;cxDataD10;cxExtEditorsD10;cxGridD10;cxPageControlD10;cxSchedulerD10;cxTreeListD10;cxVerticalGridD10;dxBarD10;dxComnD10;dxBarDBNavD10;dxBarExtDBItemsD10;dxBarExtItemsD10;dxDockingD10;dxLayoutControlD10;dxNavBarD10;dxPSCoreD10;dxsbD10;dxPScxCommonD10;dxPSLnksD10;vclshlctrls;dxPScxExtCommonD10;dxPScxGridLnkD10;dxPScxPCProdD10;dxPScxScheduler2LnkD10;dxPScxTLLnkD10;dxPSdxLCLnkD10;dxPsPrVwAdvD10;pckMD5;pckUCDataConnector;pckUserControl_RT;PluginSDK_D10R;PNG_D10;PngComponentsD10;tb2k_d10;tbx_d10;JclVcl;Jcl;JvXPCtrlsD11R;JvCoreD11R;JvSystemD11R;JvStdCtrlsD11R;JvAppFrmD11R;JvBandsD11R;JvDBD11R;JvDlgsD11R;JvBDED11R;JvCmpD11R;JvCryptD11R;JvCtrlsD11R;JvCustomD11R;JvDockingD11R;JvDotNetCtrlsD11R;JvEDID11R;JvGlobusD11R;JvHMID11R;JvInterpreterD11R;JvJansD11R;JvManagedThreadsD11R;JvMMD11R;JvNetD11R;JvPageCompsD11R;JvPluginD11R;JvPrintPreviewD11R;JvRuntimeDesignD11R;JvTimeFrameworkD11R;JvUIBD11R;JvValidatorsD11R;JvWizardD11R;pckUCADOConn;pckUCBDEConn;pckUCIBXConn;pckUCMidasConn;cxIntlPrintSys3D10;cxExportD10;cxIntl5D10;GUISDK_D11;ccpackD11;JSDialog100;fsTee11;fs11;frx11;frxADO11;frxBDE11;frxDB11;frxDBX11;frxe11;frxIBX11;frxTee11;fsADO11;fsBDE11;fsDB11;fsIBX11;websnap;soaprtl;IntrawebDB_90_100;Intraweb_90_100</DCC_UsePackage>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version> <Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation> <DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols> <DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile> <DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput> <DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput>
<DCC_Define>RELEASE</DCC_Define> <DCC_Define>RELEASE</DCC_Define>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version> <Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile> <DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput> <DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput>
<DCC_Define>DEBUG;</DCC_Define> <DCC_Define>DEBUG;</DCC_Define>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames> <DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe> <DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
<DCC_DebugVN>True</DCC_DebugVN> <DCC_DebugVN>True</DCC_DebugVN>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_UnitSearchPath> <DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ResourcePath> <DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ObjPath> <DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_IncludePath> <DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_IncludePath>
</PropertyGroup> </PropertyGroup>
<ProjectExtensions> <ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality> <Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType/> <Borland.ProjectType />
<BorlandProject> <BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">4</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.4.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.4.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">lunes, 20 de octubre de 2008 20:06</VersionInfoKeys></VersionInfoKeys><Excluded_Packages/><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject> <BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters><Parameters Name="RunParams">/standalone</Parameters></Parameters><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">4</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.4.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.4.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys><VersionInfoKeys Name="CompileDate">lunes, 20 de octubre de 2008 20:06</VersionInfoKeys></VersionInfoKeys><Excluded_Packages /><Source><Source Name="MainSource">FactuGES_Server.dpr</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions> </ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets"/> <Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup> <ItemGroup>
<DelphiCompile Include="FactuGES_Server.dpr"> <DelphiCompile Include="FactuGES_Server.dpr">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\uBizEmpresasServer.pas"/> <DCCReference Include="..\ApplicationBase\Empresas\Model\uBizEmpresasServer.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas"> <DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas">
<Form>srvEmpresas</Form> <Form>srvEmpresas</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas"/> <DCCReference Include="..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas"/> <DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas"/> <DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas" />
<DCCReference Include="..\Base\schBase_Intf.pas"/> <DCCReference Include="..\Base\schBase_Intf.pas" />
<DCCReference Include="..\Base\Utiles\uSistemaFunc.pas"/> <DCCReference Include="..\Base\Utiles\uSistemaFunc.pas" />
<DCCReference Include="..\Base\Utiles\uStringsUtils.pas"/> <DCCReference Include="..\Base\Utiles\uStringsUtils.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de cliente\Model\schAlbaranesClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Model\uBizAlbaranClienteServer.pas"/> <DCCReference Include="..\Modulos\Albaranes de cliente\Model\uBizAlbaranClienteServer.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptAlbaranesCliente_Server.pas"> <DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptAlbaranesCliente_Server.pas">
<Form>RptAlbaranesCliente</Form> <Form>RptAlbaranesCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas"> <DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas">
<Form>RptWordAlbaranCliente</Form> <Form>RptWordAlbaranCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Servidor\srvAlbaranesCliente_Impl.pas"> <DCCReference Include="..\Modulos\Albaranes de cliente\Servidor\srvAlbaranesCliente_Impl.pas">
<Form>srvAlbaranesCliente</Form> <Form>srvAlbaranesCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Albaranes de proveedor\Model\schAlbaranesProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Model\uBizAlbaranProveedorServer.PAS"/> <DCCReference Include="..\Modulos\Albaranes de proveedor\Model\uBizAlbaranProveedorServer.PAS" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Servidor\srvAlbaranesProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Albaranes de proveedor\Servidor\srvAlbaranesProveedor_Impl.pas">
<Form>srvAlbaranesProveedor</Form> <Form>srvAlbaranesProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesClient_Intf.pas"/> <DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesClient_Intf.pas" />
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesServer_Intf.pas"/> <DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesServer_Intf.pas" />
<DCCReference Include="..\Modulos\Almacenes\Servidor\srvAlmacenes_Impl.pas"> <DCCReference Include="..\Modulos\Almacenes\Servidor\srvAlmacenes_Impl.pas">
<Form>srvAlmacenes</Form> <Form>srvAlmacenes</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosClient_Intf.pas"/> <DCCReference Include="..\Modulos\Articulos\Model\schArticulosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosServer_Intf.pas"/> <DCCReference Include="..\Modulos\Articulos\Model\schArticulosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Articulos\Model\uBizArticulosServer.pas"/> <DCCReference Include="..\Modulos\Articulos\Model\uBizArticulosServer.pas" />
<DCCReference Include="..\Modulos\Articulos\Servidor\srvArticulos_Impl.pas"> <DCCReference Include="..\Modulos\Articulos\Servidor\srvArticulos_Impl.pas">
<Form>srvArticulos</Form> <Form>srvArticulos</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas"/> <DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas"> <DCCReference Include="..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas">
<Form>RptEtiquetasContacto</Form> <Form>RptEtiquetasContacto</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas"> <DCCReference Include="..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas">
<Form>RptFichasEmpleado</Form> <Form>RptFichasEmpleado</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas"> <DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas">
<Form>srvContactos</Form> <Form>srvContactos</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesClient_Intf.pas"/> <DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesClient_Intf.pas" />
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesServer_Intf.pas"/> <DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesServer_Intf.pas" />
<DCCReference Include="..\Modulos\Fabricantes\Servidor\srvFabricantes_Impl.pas"> <DCCReference Include="..\Modulos\Fabricantes\Servidor\srvFabricantes_Impl.pas">
<Form>srvFabricantes</Form> <Form>srvFabricantes</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de cliente\Model\schFacturasClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Model\uBizFacturasClienteServer.pas"/> <DCCReference Include="..\Modulos\Facturas de cliente\Model\uBizFacturasClienteServer.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas"> <DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas">
<Form>RptFacturasCliente</Form> <Form>RptFacturasCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptWordFacturaCliente.pas"> <DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptWordFacturaCliente.pas">
<Form>RptWordFacturaCliente</Form> <Form>RptWordFacturaCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Servidor\srvFacturasCliente_Impl.pas"> <DCCReference Include="..\Modulos\Facturas de cliente\Servidor\srvFacturasCliente_Impl.pas">
<Form>srvFacturasCliente</Form> <Form>srvFacturasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Facturas de proveedor\Model\schFacturasProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Model\uBizFacturasProveedorServer.pas"/> <DCCReference Include="..\Modulos\Facturas de proveedor\Model\uBizFacturasProveedorServer.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Reports\uRptFacturasProveedor_Server.pas"> <DCCReference Include="..\Modulos\Facturas de proveedor\Reports\uRptFacturasProveedor_Server.pas">
<Form>RptFacturasProveedor</Form> <Form>RptFacturasProveedor</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Facturas de proveedor\Servidor\srvFacturasProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Facturas de proveedor\Servidor\srvFacturasProveedor_Impl.pas">
<Form>srvFacturasProveedor</Form> <Form>srvFacturasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas"/> <DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.pas"/> <DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Servidor\srvFamilias_Impl.pas"/> <DCCReference Include="..\Modulos\Familias\Servidor\srvFamilias_Impl.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoClient_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Model\schFormasPagoServer_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas"/> <DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas" />
<DCCReference Include="..\Modulos\Gestion de documentos\Servidor\srvGestorDocumentos_Impl.pas"> <DCCReference Include="..\Modulos\Gestion de documentos\Servidor\srvGestorDocumentos_Impl.pas">
<Form>srvGestorDocumentos</Form> <Form>srvGestorDocumentos</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Gestor de informes\Servidor\srvGestorInformes_Impl.pas"> <DCCReference Include="..\Modulos\Gestor de informes\Servidor\srvGestorInformes_Impl.pas">
<Form>srvGestorInformes</Form> <Form>srvGestorInformes</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosClient_Intf.pas"/> <DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas"/> <DCCReference Include="..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Historico de movimientos\Servidor\srvHistoricoMovimientos_Impl.pas"> <DCCReference Include="..\Modulos\Historico de movimientos\Servidor\srvHistoricoMovimientos_Impl.pas">
<Form>srvHistoricoMovimientos</Form> <Form>srvHistoricoMovimientos</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioClient_Intf.pas"/> <DCCReference Include="..\Modulos\Inventario\Model\schInventarioClient_Intf.pas" />
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioServer_Intf.pas"/> <DCCReference Include="..\Modulos\Inventario\Model\schInventarioServer_Intf.pas" />
<DCCReference Include="..\Modulos\Inventario\Servidor\srvInventario_Impl.pas"> <DCCReference Include="..\Modulos\Inventario\Servidor\srvInventario_Impl.pas">
<Form>srvInventario</Form> <Form>srvInventario</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Obras\Model\schObrasClient_Intf.pas"/> <DCCReference Include="..\Modulos\Obras\Model\schObrasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Obras\Model\schObrasServer_Intf.pas"/> <DCCReference Include="..\Modulos\Obras\Model\schObrasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Obras\Model\uBizObrasServer.pas"/> <DCCReference Include="..\Modulos\Obras\Model\uBizObrasServer.pas" />
<DCCReference Include="..\Modulos\Obras\Servidor\srvObras_Impl.pas"/> <DCCReference Include="..\Modulos\Obras\Servidor\srvObras_Impl.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Pedidos a proveedor\Model\schPedidosProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\uBizPedidosProveedorServer.pas"/> <DCCReference Include="..\Modulos\Pedidos a proveedor\Model\uBizPedidosProveedorServer.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptPedidosProveedor_Server.pas"> <DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptPedidosProveedor_Server.pas">
<Form>RptPedidosProveedor</Form> <Form>RptPedidosProveedor</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas"> <DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas">
<Form>RptWordPedidoProveedor</Form> <Form>RptWordPedidoProveedor</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Servidor\srvPedidosProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Pedidos a proveedor\Servidor\srvPedidosProveedor_Impl.pas">
<Form>srvPedidosProveedor</Form> <Form>srvPedidosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Presupuestos de cliente\Model\schPresupuestosClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Model\uBizPresupuestosClienteServer.pas"/> <DCCReference Include="..\Modulos\Presupuestos de cliente\Model\uBizPresupuestosClienteServer.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas">
<Form>RptPresupuestosCliente</Form> <Form>RptPresupuestosCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordCertificadoTrabajo_Server.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordCertificadoTrabajo_Server.pas">
<Form>RptWordCertificadoTrabajo</Form> <Form>RptWordCertificadoTrabajo</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas">
<Form>RptWordPresupuestoCliente</Form> <Form>RptWordPresupuestoCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Servidor\srvPresupuestosCliente_Impl.pas"> <DCCReference Include="..\Modulos\Presupuestos de cliente\Servidor\srvPresupuestosCliente_Impl.pas">
<Form>srvPresupuestosCliente</Form> <Form>srvPresupuestosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas"> <DCCReference Include="..\Modulos\Recibos de cliente\Reports\uRptRecibosCliente_Server.pas">
<Form>RptRecibosCliente</Form> <Form>RptRecibosCliente</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de cliente\Servidor\srvRecibosCliente_Impl.pas"> <DCCReference Include="..\Modulos\Recibos de cliente\Servidor\srvRecibosCliente_Impl.pas">
<Form>srvRecibosCliente</Form> <Form>srvRecibosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Recibos de proveedor\Model\schRecibosProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Recibos de proveedor\Reports\uRptRecibosProveedor_Server.pas"> <DCCReference Include="..\Modulos\Recibos de proveedor\Reports\uRptRecibosProveedor_Server.pas">
<Form>RptRecibosProveedor</Form> <Form>RptRecibosProveedor</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Recibos de proveedor\Servidor\srvRecibosProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Recibos de proveedor\Servidor\srvRecibosProveedor_Impl.pas">
<Form>srvRecibosProveedor</Form> <Form>srvRecibosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas"/> <DCCReference Include="..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas"/> <DCCReference Include="..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas"> <DCCReference Include="..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas">
<Form>srvReferencias</Form> <Form>srvReferencias</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteClient_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteClient_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteServer_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de cliente\Model\schRemesasClienteServer_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Model\uBizRemesasClienteServer.pas"/> <DCCReference Include="..\Modulos\Remesas de cliente\Model\uBizRemesasClienteServer.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Servidor\srvRemesasCliente_Impl.pas"> <DCCReference Include="..\Modulos\Remesas de cliente\Servidor\srvRemesasCliente_Impl.pas">
<Form>srvRemesasCliente</Form> <Form>srvRemesasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorClient_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorClient_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorServer_Intf.pas"/> <DCCReference Include="..\Modulos\Remesas de proveedor\Model\schRemesasProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Model\uBizRemesasProveedorServer.pas"/> <DCCReference Include="..\Modulos\Remesas de proveedor\Model\uBizRemesasProveedorServer.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Servidor\srvRemesasProveedor_Impl.pas"> <DCCReference Include="..\Modulos\Remesas de proveedor\Servidor\srvRemesasProveedor_Impl.pas">
<Form>srvRemesasProveedor</Form> <Form>srvRemesasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas"/> <DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAClient_Intf.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas"/> <DCCReference Include="..\Modulos\Tipos de IVA\Model\schTiposIVAServer_Intf.pas" />
<DCCReference Include="..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas"/> <DCCReference Include="..\Modulos\Tipos de IVA\Servidor\srvTiposIVA_Impl.pas" />
<DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaClient_Intf.pas"/> <DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaClient_Intf.pas" />
<DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaServer_Intf.pas"/> <DCCReference Include="..\Modulos\Unidades de medida\Model\schUnidadesMedidaServer_Intf.pas" />
<DCCReference Include="..\Modulos\Unidades de medida\Servidor\srvUnidadesMedida_Impl.pas"> <DCCReference Include="..\Modulos\Unidades de medida\Servidor\srvUnidadesMedida_Impl.pas">
<Form>srvUnidadesMedida</Form> <Form>srvUnidadesMedida</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="..\Servicios\FactuGES_Intf.pas"/> <DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="..\Servicios\FactuGES_Invk.pas"/> <DCCReference Include="..\Servicios\FactuGES_Invk.pas" />
<DCCReference Include="Configuracion\srvConfiguracion_Impl.pas"> <DCCReference Include="Configuracion\srvConfiguracion_Impl.pas">
<Form>srvConfiguracion</Form> <Form>srvConfiguracion</Form>
<DesignClass>TDataAbstractService</DesignClass> <DesignClass>TDataAbstractService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uConexionBD.pas"> <DCCReference Include="Configuracion\uConexionBD.pas">
<Form>frConexionBD</Form> <Form>frConexionBD</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uConfGeneral.pas"> <DCCReference Include="Configuracion\uConfGeneral.pas">
<Form>frConfGeneral</Form> <Form>frConfGeneral</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uConfiguracion.pas"> <DCCReference Include="Configuracion\uConfiguracion.pas">
<Form>fConfiguracion</Form> <Form>fConfiguracion</Form>
<DesignClass>TForm</DesignClass> <DesignClass>TForm</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="Configuracion\uFrameConfiguracion.pas"> <DCCReference Include="Configuracion\uFrameConfiguracion.pas">
<Form>FrameConfiguracion</Form> <Form>FrameConfiguracion</Form>
<DesignClass>TFrame</DesignClass> <DesignClass>TFrame</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="srvLogin_Impl.pas"> <DCCReference Include="srvLogin_Impl.pas">
<Form>srvLogin</Form> <Form>srvLogin</Form>
<DesignClass>TDARemoteService</DesignClass> <DesignClass>TDARemoteService</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uAcercaDe.pas"> <DCCReference Include="uAcercaDe.pas">
<Form>fAcercaDe</Form> <Form>fAcercaDe</Form>
</DCCReference> </DCCReference>
<DCCReference Include="uDataModuleServer.pas"> <DCCReference Include="uDataModuleServer.pas">
<Form>dmServer</Form> <Form>dmServer</Form>
<DesignClass>TDataModule</DesignClass> <DesignClass>TDataModule</DesignClass>
</DCCReference> </DCCReference>
<DCCReference Include="uServerMainForm.pas"> <DCCReference Include="uServerMainForm.pas">
<Form>fServerForm</Form> <Form>fServerForm</Form>
</DCCReference> </DCCReference>
<DCCReference Include="Utiles\AHWord97.pas"/> <DCCReference Include="Utiles\AHWord97.pas" />
<DCCReference Include="Utiles\RegExpr.pas"/> <DCCReference Include="Utiles\RegExpr.pas" />
<DCCReference Include="Utiles\uBusinessUtils.pas"/> <DCCReference Include="Utiles\uBusinessUtils.pas" />
<DCCReference Include="Utiles\uDatabaseUtils.pas"/> <DCCReference Include="Utiles\uDatabaseUtils.pas" />
<DCCReference Include="Utiles\uReferenciasUtils.pas"/> <DCCReference Include="Utiles\uReferenciasUtils.pas" />
<DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas"/> <DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas" />
<DCCReference Include="Utiles\uSchemaUtilsServer.pas"/> <DCCReference Include="Utiles\uSchemaUtilsServer.pas" />
<DCCReference Include="Utiles\uServerAppUtils.pas"/> <DCCReference Include="Utiles\uServerAppUtils.pas" />
<DCCReference Include="Utiles\uSesionesUtils.pas"/> <DCCReference Include="Utiles\uSesionesUtils.pas" />
</ItemGroup> </ItemGroup>
</Project> </Project>
<!-- EurekaLog First Line <!-- EurekaLog First Line
[Exception Log] [Exception Log]

View File

@ -14,7 +14,7 @@ BEGIN
BEGIN BEGIN
VALUE "FileVersion", "1.4.0.0\0" VALUE "FileVersion", "1.4.0.0\0"
VALUE "ProductVersion", "1.4.0.0\0" VALUE "ProductVersion", "1.4.0.0\0"
VALUE "CompileDate", "miércoles, 22 de octubre de 2008 18:09\0" VALUE "CompileDate", "lunes, 27 de octubre de 2008 11:41\0"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

View File

@ -267,11 +267,11 @@ end;
procedure TdmServer.EscribirLog(const AMensaje: String); procedure TdmServer.EscribirLog(const AMensaje: String);
begin begin
FEscribirLog.Acquire; FEscribirLog.Enter;
try try
JvLogFile1.Add(AMensaje); JvLogFile1.Add(AMensaje);
finally finally
FEscribirLog.Release; FEscribirLog.Leave;
end; end;
end; end;