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;
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;
SET GENERATOR GEN_PAGOS_CLIENTE_ID TO 1;
@ -865,10 +874,34 @@ CREATE TABLE MOVIMIENTOS (
CREATE TABLE OBRAS_DATOS (
ID_ALMACEN TIPO_ID NOT NULL,
ID_CLIENTE TIPO_ID,
ID_SUBCONTRATA TIPO_ID
ID_CLIENTE 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 (
ID TIPO_ID NOT NULL,
ID_RECIBO TIPO_ID,
@ -2799,7 +2832,6 @@ GROUP BY ID_ALMACEN,
;
/* View: V_OBRAS */
CREATE VIEW V_OBRAS(
ID,
@ -2816,26 +2848,73 @@ CREATE VIEW V_OBRAS(
OBSERVACIONES,
ID_CLIENTE,
NOMBRE_CLIENTE,
ID_SUBCONTRATA,
NOMBRE_SUBCONTRATA,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO)
USUARIO,
ID_EJECUCION)
AS
SELECT ALMACENES.ID, ALMACENES.ID_EMPRESA, ALMACENES.NOMBRE,
ALMACENES.CALLE, ALMACENES.PROVINCIA, ALMACENES.POBLACION, ALMACENES.CODIGO_POSTAL,
ALMACENES.TELEFONO, ALMACENES.MOVIL, ALMACENES.FAX, ALMACENES.PERSONA_CONTACTO,
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.OBSERVACIONES, OBRAS_DATOS.ID_CLIENTE, CLIENTES.NOMBRE AS NOMBRE_CLIENTE,
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
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 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'
;
/* 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 */
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 INFORMES ADD CONSTRAINT PK_INFORMES 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_PROVEEDOR ADD CONSTRAINT PK_PAGOS_PROVEEDOR 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 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 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_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);

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

View File

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

View File

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

Binary file not shown.

View File

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

View File

@ -144,7 +144,9 @@ end;
procedure TfEditorDBBase.dsDataTableDataChange(Sender: TObject; Field: TField);
begin
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;
end;

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -7,7 +7,6 @@ inherited fEditorContacto: TfEditorContacto
ClientWidth = 632
Scaled = False
ExplicitWidth = 640
ExplicitHeight = 240
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
@ -73,7 +72,7 @@ inherited fEditorContacto: TfEditorContacto
end
inherited pgPaginas: TPageControl
Width = 626
ActivePage = pagPersonal
ActivePage = pagDatosBancarios
ExplicitWidth = 626
inherited pagGeneral: TTabSheet
ExplicitLeft = 4
@ -109,18 +108,6 @@ inherited fEditorContacto: TfEditorContacto
inherited ToolBar1: TToolBar
Width = 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
@ -152,18 +139,6 @@ inherited fEditorContacto: TfEditorContacto
inherited ToolBar1: TToolBar
Width = 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

View File

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

View File

@ -29,6 +29,10 @@ type
procedure QuitarDireccion(AObra: IBizObra);
procedure CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; 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;
TObrasController = class(TControllerBase, IObrasController)
@ -58,7 +62,7 @@ type
function Eliminar(const ID : Integer): Boolean; overload;
function Eliminar(AObra : IBizObra): Boolean; overload;
function Guardar(AObra : IBizObra): Boolean;
procedure DescartarCambios(AObra : IBizObra); virtual;
procedure DescartarCambios(AObra : IBizObra);
function Existe(const ID: Integer) : Boolean; virtual;
procedure Anadir(AObra : IBizObra);
function Buscar(const ID: Integer): IBizObra;
@ -70,17 +74,19 @@ type
function Duplicar(AObra: IBizObra): IBizObra;
procedure Preview(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 CopiarDireccion (const ADireccionEnvio: IBizDireccionesContacto; AObra: IBizObra); overload;
procedure CopiarDireccion (const ACliente: IBizCliente; AObra: IBizObra); overload;
function LocalizarEjecucionActiva(AEjecuciones: IBizEjecucionesObra): boolean;
end;
implementation
uses
cxControls, DB, uEditorRegistryUtils, schObrasClient_Intf,
uIEditorObras, uIEditorObra, uDataModuleObras,
uIEditorObras, uIEditorObra, uDataModuleObras, Variants,
uDataModuleUsuarios, uDAInterfaces, uDataTableUtils, uFactuGES_App,
uDateUtils, uROTypes, DateUtils, Controls, Windows, uIEditorListaObras;
@ -166,6 +172,35 @@ begin
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;
AObra: IBizObra);
var
@ -217,7 +252,7 @@ begin
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
end;
procedure TObrasController.DescartarCambios(AObra: IBizObra);
procedure TObrasController.DescartarCambios(AObra : IBizObra);
begin
if not Assigned(AObra) then
raise Exception.Create ('Obra no asignado');
@ -454,9 +489,9 @@ begin
begin
ShowHourglassCursor;
try
// AsignarCodigo(AObra);
if (AObra.DataTable.State in dsEditModes) then
AObra.DataTable.Post;
AObra.DataTable.ApplyUpdates;
Result := True;
finally
HideHourglassCursor;
@ -464,6 +499,60 @@ begin
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;
var
AObra : IBizObra;

View File

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

View File

@ -1,7 +1,7 @@
inherited DataModuleObras: TDataModuleObras
OnCreate = DAClientDataModuleCreate
Height = 234
Width = 300
Height = 330
Width = 640
object RORemoteService: TRORemoteService
Message = dmConexion.ROMessage
Channel = dmConexion.ROChannel
@ -123,19 +123,6 @@ inherited DataModuleObras: TDataModuleObras
ServerAutoRefresh = True
DictionaryEntry = 'Obras_NOMBRE_CLIENTE'
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
Name = 'FECHA_ALTA'
DataType = datDateTime
@ -151,6 +138,11 @@ inherited DataModuleObras: TDataModuleObras
DataType = datString
Size = 20
DictionaryEntry = 'Obras_USUARIO'
end
item
Name = 'ID_EJECUCION'
DataType = datInteger
ServerAutoRefresh = True
end>
Params = <>
StreamingOptions = [soDisableEventsWhileStreaming]
@ -160,7 +152,7 @@ inherited DataModuleObras: TDataModuleObras
LogicalName = 'Obras'
IndexDefs = <>
Left = 192
Top = 96
Top = 104
end
object ds_Obras: TDADataSource
DataSet = tbl_Obras.Dataset
@ -168,4 +160,329 @@ inherited DataModuleObras: TDataModuleObras
Left = 192
Top = 32
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

View File

@ -19,11 +19,19 @@ type
rda_Obras: TDARemoteDataAdapter;
tbl_Obras: TDAMemDataTable;
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);
protected
procedure AsignarClaseNegocio(AAlmacen: TDADataTable); virtual;
function _GetPresupuestos : IBizEjecucionPresupuestos;
function _GetPedidos : IBizEjecucionPedidosProveedor;
function _GetEjecuciones : IBizEjecucionesObra;
public
function GetEjecucionPresupuestos(const IDEjecucion: Integer) : IBizEjecucionPresupuestos;
function GetItems : IBizObra;
function GetItem(const ID : Integer) : IBizObra;
function NewItem : IBizObra;
@ -37,12 +45,7 @@ uses
FactuGES_Intf, uDataModuleConexion, uDataTableUtils, cxControls,
schObrasClient_Intf;
{ TdmAlmacens }
procedure TDataModuleObras.AsignarClaseNegocio(AAlmacen: TDADataTable);
begin
AAlmacen.BusinessRulesID := BIZ_CLIENT_OBRA;
end;
{ TDataModuleObras }
procedure TDataModuleObras.DAClientDataModuleCreate(Sender: TObject);
begin
@ -55,6 +58,92 @@ begin
Result := GetItem(ID_NULO)
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;
var
Condicion: TDAWhereExpression;
@ -86,11 +175,12 @@ begin
ShowHourglassCursor;
try
AObra := CloneDataTable(tbl_Obras);
AObra.BusinessRulesID := BIZ_CLIENT_OBRA;
AsignarClaseNegocio(AObra);
with TBizObra(AObra.BusinessEventsObj) do
Ejecuciones := _GetEjecuciones;
Result := (AObra as IBizObra);
finally
HideHourglassCursor;
end;

View File

@ -8,6 +8,7 @@ uses
type
IDataModuleObras = interface
['{0FE2B5E6-DE76-4834-B27F-3C754C96B76A}']
// function GetEjecucionPresupuestos(const IDEjecucion: Integer) : IBizEjecucionPresupuestos;
function GetItems: IBizObra;
function GetItem(const ID : Integer) : 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>
<Excluded_Packages Name="$(BDS)\bin\applet100.bpl">CodeGear Control Panel Applet Package</Excluded_Packages>
</Excluded_Packages></Delphi.Personality></BorlandProject></BorlandProject>
</ProjectExtensions>
@ -55,6 +54,7 @@
</DelphiCompile>
<DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="Data\uIDataModuleObras.pas" />
<DCCReference Include="schObrasClient_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
uses
uDAInterfaces, uDADataTable, schObrasClient_Intf;
uDAInterfaces, uDADataTable, schObrasClient_Intf, uBizContactos,
uDBSelectionListUtils;
const
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
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)
['{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;
end;
TBizObra = class(TObrasDataTableRules, IBizObra)
TBizEjecucionPresupuestos = class(TObrasEjecucionesPresupuestosDataTableRules, IBizEjecucionPresupuestos)
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;
function GetPresupuestos: IBizEjecucionPresupuestos;
procedure SetPresupuestos(Value: IBizEjecucionPresupuestos);
function GetPedidos: IBizEjecucionPedidosProveedor;
procedure SetPedidos(Value: IBizEjecucionPedidosProveedor);
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;
implementation
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 }
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;
begin
Result := (ID < 0);
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);
begin
inherited;
// ID := GetRecNo; // -1, -2, -3...
ID_EMPRESA := AppFactuGES.EmpresaActiva.ID;
USUARIO := AppFactuGES.UsuarioActivo.UserName;
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
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

View File

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

View File

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

View File

@ -39,56 +39,500 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject xmlns=""> <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">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>
<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>
</ProjectExtensions>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="Obras_plugin.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\Obras_controller.dcp" />
<DCCReference Include="..\..\Lib\Obras_model.dcp" />
<DCCReference Include="..\..\Lib\Obras_view.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Obras_controller.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Obras_model.dcp" />
<DCCReference Include="C:\Documents and Settings\Usuario\Obras_view.dcp" />
<DCCReference Include="uPluginObras.pas" />
</ItemGroup>
</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,
{Generated:} uDABusinessProcessor, uDABin2DataStreamer, uDADataStreamer,
uDAScriptingProvider, uDAClasses,
FactuGES_Intf, uDAInterfaces;
FactuGES_Intf, uDAInterfaces, uRORemoteDataModule;
type
{ TsrvObras }
@ -24,13 +24,80 @@ type
Diagrams: TDADiagrams;
Bin2DataStreamer: TDABin2DataStreamer;
bpObras: TDABusinessProcessor;
bpObrasEjecuciones: TDABusinessProcessor;
bpObrasEjecucionesPresupuestos: TDABusinessProcessor;
bpObrasEjecucionesPedidosProv: TDABusinessProcessor;
schObras: TDASchema;
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;
const IncludeSchema: Boolean; const MaxRecords: Integer);
procedure DARemoteServiceCreate(Sender: TObject);
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
var aConnectionName: string);
procedure DataAbstractServiceAfterGetDatasetData(aSender: TObject;
const aDataset: IDADataset; const aIncludeSchema: Boolean;
const aMaxRecords: Integer);
private
procedure Log(Astr: string);
end;
implementation
@ -39,7 +106,7 @@ implementation
uses
{Generated:} FactuGES_Invk, uDataModuleServer,
uDatabaseUtils, schObrasClient_Intf, uRestriccionesUsuarioUtils,
uBizObrasServer;
uBizObrasServer, Variants;
procedure Create_srvObras(out anInstance : IUnknown);
begin
@ -62,6 +129,10 @@ end;
procedure TsrvObras.DARemoteServiceCreate(Sender: TObject);
begin
// Log('***Create***');
// Log('************');
// Log('');
SessionManager := dmServer.SessionManager;
bpObras.BusinessRulesID := BIZ_SERVER_OBRA;
end;
@ -69,9 +140,319 @@ end;
procedure TsrvObras.DataAbstractServiceBeforeAcquireConnection(
aSender: TObject; var aConnectionName: string);
begin
inherited;
ConnectionName := dmServer.ConnectionName;
// Log('***BeforeAcquireConnection***');
// Log('aConnectionName:'#9 + aConnectionName);
// Log('************************');
// Log('');
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
TROClassFactory.Create('srvObras', Create_srvObras, TsrvObras_Invoker);

View File

@ -47,43 +47,18 @@
<DelphiCompile Include="Obras_view.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\..\Lib\ApplicationBase.dcp" />
<DCCReference Include="..\..\Lib\Base.dcp" />
<DCCReference Include="..\..\Lib\Contactos_controller.dcp" />
<DCCReference Include="..\..\Lib\Contactos_model.dcp" />
<DCCReference Include="..\..\Lib\Contactos_view.dcp" />
<DCCReference Include="..\..\Lib\GUIBase.dcp" />
<DCCReference Include="..\..\Lib\Obras_controller.dcp" />
<DCCReference Include="..\..\Lib\Obras_model.dcp" />
<DCCReference Include="uEditorListaObras.pas">
<Form>fEditorListaObras</Form>
<DesignClass>TfListaObras</DesignClass>
</DCCReference>
<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>
<DCCReference Include="ApplicationBase.dcp" />
<DCCReference Include="Base.dcp" />
<DCCReference Include="Contactos_controller.dcp" />
<DCCReference Include="Contactos_model.dcp" />
<DCCReference Include="Contactos_view.dcp" />
<DCCReference Include="GUIBase.dcp" />
<DCCReference Include="Obras_controller.dcp" />
<DCCReference Include="Obras_model.dcp" />
<DCCReference Include="PedidosProveedor_controllercontainsuViewObrain.dcp" />
<DCCReference Include="PedidosProveedor_model.dcp" />
<DCCReference Include="PresupuestosCliente_controller.dcp" />
<DCCReference Include="PresupuestosCliente_model.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

View File

@ -43,7 +43,7 @@ inherited fEditorObra: TfEditorObra
end
inherited lblDesbloquear: TcxLabel
Left = 507
ExplicitLeft = 534
ExplicitLeft = 507
end
end
inherited TBXDock: TTBXDock
@ -98,24 +98,94 @@ inherited fEditorObra: TfEditorObra
Visible = False
end
end
object TBXSubmenuItem2: TTBXSubmenuItem [4]
Caption = 'A&cciones'
object TBXItem7: TTBXItem
Action = actNuevaEjecucion
end
object TBXItem33: TTBXItem
Action = actFinalizarEjecucion
end
end
end
end
inherited pgPaginas: TPageControl
Width = 626
Height = 318
ActivePage = pagListaEjecuciones
OnChange = pgPaginasChange
ExplicitWidth = 626
ExplicitHeight = 240
inherited pagGeneral: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
ExplicitWidth = 618
ExplicitHeight = 332
ExplicitHeight = 212
end
object TabSheet1: TTabSheet
Caption = 'Presupuestos de cliente'
ImageIndex = 1
object pagNuevaEjecucion: TTabSheet
Caption = 'Ejecuci'#243'n en curso'
ImageIndex = 3
ExplicitHeight = 212
object bNuevaEjecucion: TButton
Left = 48
Top = 24
Width = 145
Height = 25
Action = actNuevaEjecucion
TabOrder = 0
end
end
object TabSheet2: TTabSheet
Caption = 'Pedidos a proveedor'
ImageIndex = 2
object pagEjecucionActual: TTabSheet
Caption = 'Ejecuci'#243'n en curso'
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
inherited StatusBar: TJvStatusBar
@ -126,24 +196,61 @@ inherited fEditorObra: TfEditorObra
end>
ExplicitWidth = 632
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
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
inherited SmallImages: TPngImageList
Top = 112
end
inherited dsDataTable: TDADataSource [6]
Left = 168
Top = 120
inherited dsDataTable: TDADataSource [7]
Left = 16
Top = 160
end
inherited LargeImages: TPngImageList [7]
inherited LargeImages: TPngImageList [8]
Top = 112
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
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
Left = 320
Top = 248
Left = 16
Top = 224
object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel
GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
GroupOptions.CaptionOptions.Font.Color = clWindowText
@ -154,4 +261,9 @@ inherited fEditorObra: TfEditorObra
GroupOptions.CaptionOptions.UseDefaultFont = False
end
end
object dsEjecucionActiva: TDADataSource
OnDataChange = dsDataTableDataChange
Left = 40
Top = 352
end
end

View File

@ -14,21 +14,37 @@ uses
uViewObras, uIEditorObra, uObrasController, JvExComCtrls,
JvStatusBar, dxLayoutLookAndFeels, uDAInterfaces, dxGDIPlusClasses,
cxControls, cxContainer, cxEdit, cxLabel;
cxControls, cxContainer, cxEdit, cxLabel, uViewDetallesGenerico,
uViewListaEjecucionesObra, uViewEjecucionObra, Grids, DBGrids;
type
TfEditorObra = class(TfEditorDBItem, IEditorObra)
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
pagNuevaEjecucion: 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 dsDataTableDataChange(Sender: TObject; Field: TField);
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
FController : IObrasController;
FObra: IBizObra;
FViewObra : IViewObra;
FViewEjecucionActual: IViewEjecucionObra;
function GetController : IObrasController;
procedure SetController (const Value : IObrasController); virtual;
@ -42,10 +58,12 @@ type
procedure EliminarInterno; override;
procedure PonerTitulos(const ATitulo: string = ''); override;
procedure ActualizarPestanas;
//Si queremos crear otra vista para el editor heredado solo tendriamos que
//sobreescribir este metodo
procedure AsignarVista; virtual;
procedure AsignarVistaEjecucion;
public
property Obra: IBizObra read GetObra write SetObra;
@ -58,7 +76,7 @@ implementation
{$R *.dfm}
uses
uCustomEditor, uDataModuleObras, uDataModuleBase;
uCustomEditor, uDataModuleObras, uDataModuleBase, uDialogUtils;
function ShowEditorObra (ABizObject : TDADataTableRules): TModalResult;
var
@ -92,12 +110,34 @@ begin
end;
procedure TfEditorObra.GuardarInterno;
{var
FPresupuestos : IBizEjecucionPresupuestos;}
begin
inherited;
{ FPresupuestos := NIL;
if Assigned(FViewEjecucionActual) then
FPresupuestos := FViewEjecucionActual.Presupuestos;}
FController.Guardar(FObra);
Modified := False;
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);
var
FTitulo : String;
@ -118,8 +158,22 @@ begin
FObra := Value;
dsDataTable.DataTable := FObra.DataTable;
if Assigned(FViewObra) and Assigned(Obra) then
FViewObra.Obra := Obra;
if Assigned(FViewObra) and Assigned(FObra) then
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;
procedure TfEditorObra.SetController(const Value: IObrasController);
@ -156,11 +210,68 @@ begin
inherited;
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;
var
AViewObra: TfrViewObra;
begin
AViewObra := TfrViewObra.create(Self);
AViewObra := TfrViewObra.Create(Self);
with AViewObra do
begin
Parent := pagGeneral;
@ -170,10 +281,28 @@ begin
ViewObra := AViewObra;
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);
begin
inherited;
pgPaginas.ActivePageIndex := 0;
pgPaginas.ActivePage := pagGeneral;
FViewEjecucionActual := NIL;
AsignarVista;
end;
@ -186,22 +315,13 @@ begin
FObra := NIL;
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;
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
inherited;
if not FController.Eliminar(FObra) then
actRefrescar.Execute;
actRefrescar.Execute;
end;
end;

View File

@ -19,7 +19,7 @@ inherited fEditorObras: TfEditorObras
000000180806000000E0773DF8000000017352474200AECE1CE9000000046741
4D410000B18F0BFC6105000000206348524D00007A26000080840000FA000000
80E8000075300000EA6000003A98000017709CBA513C00000009704859730000
17110000171101CA26F33F000001C149444154484BED564D4B025114B55D3FA3
17100000171001186111DB000001C149444154484BED564D4B025114B55D3FA3
4DAB7E444449DA0FC8428B3EC032A96428182209A4851F8B4C515A894A8A2DDC
B82985A2A581A4B4103547FA5C54532EDAB83B791F8C98683E29770DDCC5CC65
CE79E7BC731F6F0080AAAF0F11F4B3FA0ACEDCE9E7EAB9086A6915940A040250
@ -42,7 +42,7 @@ inherited fEditorObras: TfEditorObras
Width = 853
ExplicitWidth = 853
inherited tbxMain: TTBXToolbar
ExplicitWidth = 474
ExplicitWidth = 617
end
inherited tbxFiltro: TTBXToolbar
ExplicitWidth = 269
@ -97,9 +97,6 @@ inherited fEditorObras: TfEditorObras
Kind = skCount
Column = frViewObras1.cxGridViewNOMBRE
end>
inherited cxGridViewID: TcxGridDBColumn
IsCaptionAssigned = True
end
end
end
inherited frViewFiltroBase1: TfrViewFiltroBase
@ -111,21 +108,37 @@ inherited fEditorObras: TfEditorObras
Width = 853
ExplicitWidth = 853
inherited txtFiltroTodo: TcxTextEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 756
Width = 756
end
inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 121
Width = 121
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 225
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 225
ExplicitWidth = 121
Width = 121
end
inherited eLista: TcxComboBox
Left = 383
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 383
ExplicitWidth = 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
Width = 451
Height = 304
Width = 692
Height = 448
Align = alClient
ExplicitWidth = 451
ExplicitHeight = 304
object dxLayoutControlObra: TdxLayoutControl
Left = 0
Top = 0
Width = 451
Height = 304
Width = 692
Height = 448
Align = alClient
ParentBackground = True
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
ExplicitWidth = 451
ExplicitHeight = 304
DesignSize = (
451
304)
692
448)
object eNombre: TcxDBTextEdit
Left = 130
Top = 34
@ -169,7 +171,7 @@ inherited frViewObra: TfrViewObra
Width = 203
end
object eCodigoPostal: TcxDBTextEdit
Left = 189
Left = 236
Top = 145
DataBinding.DataField = 'CODIGO_POSTAL'
DataBinding.DataSource = DADataSource
@ -244,123 +246,8 @@ inherited frViewObra: TfrViewObra
Height = 246
Width = 224
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
Left = 310
Left = 357
Top = 34
Width = 503
Height = 213
@ -372,7 +259,7 @@ inherited frViewObra: TfrViewObra
ParentFont = False
TabOrder = 10
ReadOnly = False
ExplicitLeft = 310
ExplicitLeft = 357
ExplicitTop = 34
ExplicitWidth = 503
ExplicitHeight = 213
@ -422,16 +309,16 @@ inherited frViewObra: TfrViewObra
Width = 429
end
inherited edtCodigoPostal: TcxDBTextEdit
Left = 192
Left = 221
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 192
ExplicitLeft = 221
end
inherited Button3: TBitBtn
Left = 82
ExplicitLeft = 82
Left = 111
ExplicitLeft = 111
end
end
end
@ -541,33 +428,16 @@ inherited frViewObra: TfrViewObra
end
end
end
object dxLayoutControlObraGroup6: TdxLayoutGroup
AutoAligns = [aaVertical]
object dxLayoutControlObraGroup7: TdxLayoutGroup
AutoAligns = []
AlignHorz = ahClient
ShowCaption = False
Hidden = True
ShowBorder = False
object dxLayoutControlObraGroup7: TdxLayoutGroup
AutoAligns = []
AlignHorz = ahClient
Caption = 'Cliente asociado'
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
Caption = 'Cliente asociado'
object dxLayoutControlObraItem13: TdxLayoutItem
Caption = 'New Item'
ShowCaption = False
Control = frViewClienteAsociadoObra1
ControlOptions.AutoColor = True
ControlOptions.ShowBorder = False
end
end
end

View File

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

View File

@ -1,6 +1,5 @@
inherited frViewObras: TfrViewObras
inherited cxGrid: TcxGrid
ExplicitTop = 102
inherited cxGridView: TcxGridDBTableView
DataController.KeyFieldNames = 'ID'
DataController.Summary.FooterSummaryItems = <
@ -10,15 +9,6 @@ inherited frViewObras: TfrViewObras
Column = cxGridViewNOMBRE
end>
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
DataBinding.FieldName = 'NOMBRE'
PropertiesClassName = 'TcxTextEditProperties'
@ -74,9 +64,16 @@ inherited frViewObras: TfrViewObras
object cxGridViewNOMBRE_SUBCONTRATA: TcxGridDBColumn
DataBinding.FieldName = 'NOMBRE_SUBCONTRATA'
PropertiesClassName = 'TcxTextEditProperties'
Visible = False
BestFitMaxWidth = 80
VisibleForCustomization = False
Width = 100
end
object cxGridViewID_EJECUCION: TcxGridDBColumn
DataBinding.FieldName = 'ID_EJECUCION'
Visible = False
VisibleForCustomization = False
end
end
end
inherited frViewFiltroBase1: TfrViewFiltroBase
@ -87,6 +84,8 @@ inherited frViewObras: TfrViewObras
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 510
Width = 510
end
inherited edtFechaIniFiltro: TcxDateEdit
Style.LookAndFeel.SkinName = ''
@ -100,6 +99,14 @@ inherited frViewObras: TfrViewObras
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
end
inherited eLista: TcxComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 215
Width = 215
end
end
end
end
@ -109,4 +116,116 @@ inherited frViewObras: TfrViewObras
BuiltInReportLink = True
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

View File

@ -27,7 +27,6 @@ type
cxGridViewPERSONACONTACTO: TcxGridDBColumn;
cxGridViewNOMBRE: TcxGridDBColumn;
cxGridViewTELEFONO: TcxGridDBColumn;
cxGridViewID: TcxGridDBColumn;
cxGridViewCALLE: TcxGridDBColumn;
cxGridViewPROVINCIA: TcxGridDBColumn;
cxGridViewPOBLACION: TcxGridDBColumn;
@ -36,6 +35,10 @@ type
cxGridViewFAX: TcxGridDBColumn;
cxGridViewNOMBRE_CLIENTE: TcxGridDBColumn;
cxGridViewNOMBRE_SUBCONTRATA: TcxGridDBColumn;
cxGridViewID_EJECUCION: TcxGridDBColumn;
procedure cxGridViewICONOCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
protected
FObras: IBizObra;
function GetObras: IBizObra; virtual;
@ -56,6 +59,16 @@ uses uDataModuleObras;
{
******************************* 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;
begin
Result := FObras;

View File

@ -6,13 +6,17 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited dxLayoutControl1: TdxLayoutControl
Width = 514
Height = 273
ExplicitWidth = 473
ExplicitWidth = 514
ExplicitHeight = 273
DesignSize = (
514
273)
inherited edtlNombre: TcxDBTextEdit
Left = 118
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitLeft = 118
ExplicitWidth = 345
Width = 345
@ -20,6 +24,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtNIFCIF: TcxDBTextEdit
Left = 118
Top = 153
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 7
ExplicitLeft = 118
ExplicitTop = 153
@ -29,6 +37,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtCalle: TcxDBTextEdit
Left = 118
Top = 180
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 8
ExplicitLeft = 118
ExplicitTop = 180
@ -38,6 +50,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtPoblacion: TcxDBTextEdit
Left = 118
Top = 207
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 9
ExplicitLeft = 118
ExplicitTop = 207
@ -47,6 +63,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtProvincia: TcxDBTextEdit
Left = 118
Top = 234
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 11
ExplicitLeft = 118
ExplicitTop = 234
@ -56,6 +76,10 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
inherited edtCodigoPostal: TcxDBTextEdit
Left = 422
Top = 207
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
TabOrder = 10
ExplicitLeft = 422
ExplicitTop = 207
@ -88,10 +112,14 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
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 = 5
Height = 21
Width = 345
@ -111,10 +139,14 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
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 = 4
Height = 21
Width = 121
@ -134,10 +166,14 @@ inherited frViewSubcontrataObra: TfrViewSubcontrataObra
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 = 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 BuscarTodos: IBizPedidoProveedor;
function BuscarPendientesRecepcion: IBizPedidoProveedor;
function BuscarSinFacturar : IBizPedidoProveedor;
function BuscarSinFacturar : IBizPedidoProveedor;
function Nuevo : IBizPedidoProveedor;
procedure Ver(APedido : IBizPedidoProveedor);
procedure VerTodos(APedidos: IBizPedidoProveedor);
@ -294,11 +294,10 @@ end;
destructor TPedidosProveedorController.Destroy;
begin
inherited;
FDataModule := Nil;
FProveedorController := Nil;
FDetallesController := Nil;
inherited;
end;
function TPedidosProveedorController.Duplicar(

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -36,6 +36,7 @@ type
actVerObra: TAction;
procedure actVerObraExecute(Sender: TObject);
procedure actVerObraUpdate(Sender: TObject);
procedure cbListaObrasReservaPropertiesEditValueChanged(Sender: TObject);
protected
FObrasController : IObrasController;
FObras: IBizObra;
@ -70,6 +71,20 @@ begin
(not EsCadenaVacia(cbListaObrasReserva.Text));
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);
begin
inherited;
@ -82,6 +97,8 @@ end;
destructor TfrViewObraReserva.Destroy;
begin
cbListaObrasReserva.Properties.OnEditValueChanged := NIL;
FObrasController := Nil;
FObras := Nil;
@ -98,8 +115,11 @@ procedure TfrViewObraReserva.SetPedidoProveedor(
const Value: IBizPedidoProveedor);
begin
dsPedido.DataTable := nil;
cbListaObrasReserva.Properties.OnEditValueChanged := NIL;
FPedido := Value;
dsPedido.DataTable := FPedido.DataTable;
cbListaObrasReserva.Properties.OnEditValueChanged := cbListaObrasReservaPropertiesEditValueChanged;
end;

View File

@ -1,23 +1,24 @@
inherited frViewPedidoProveedor: TfrViewPedidoProveedor
Width = 965
Height = 546
Height = 560
OnCreate = CustomViewCreate
OnDestroy = CustomViewDestroy
ExplicitWidth = 965
ExplicitHeight = 546
ExplicitHeight = 560
object dxLayoutControl1: TdxLayoutControl
Left = 0
Top = 0
Width = 965
Height = 546
Height = 560
Align = alClient
ParentBackground = True
TabOrder = 0
TabStop = False
AutoContentSizes = [acsWidth, acsHeight]
ExplicitHeight = 546
DesignSize = (
965
546)
560)
object edtFechaPedido: TcxDBDateEdit
Left = 121
Top = 55
@ -142,7 +143,7 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
end
inline frViewDireccionEntregaPedidoProv1: TfrViewDireccionEntregaPedidoProv
Left = 22
Top = 168
Top = 276
Width = 432
Height = 248
Font.Charset = DEFAULT_CHARSET
@ -151,12 +152,51 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 6
TabOrder = 7
ReadOnly = False
ExplicitLeft = 22
ExplicitTop = 168
ExplicitTop = 276
ExplicitWidth = 432
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
Left = 72
end
@ -373,7 +413,7 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
end
inline frViewObraReserva1: TfrViewObraReserva
Left = 22
Top = 452
Top = 168
Width = 432
Height = 72
Font.Charset = DEFAULT_CHARSET
@ -382,10 +422,10 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
Font.Name = 'Tahoma'
Font.Style = []
ParentFont = False
TabOrder = 7
TabOrder = 6
ReadOnly = False
ExplicitLeft = 22
ExplicitTop = 452
ExplicitTop = 168
ExplicitWidth = 432
ExplicitHeight = 72
inherited dxLayoutControl1: TdxLayoutControl
@ -401,10 +441,6 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
ExplicitWidth = 235
end
inherited cbListaObrasReserva: TcxDBLookupComboBox
Style.LookAndFeel.SkinName = ''
StyleDisabled.LookAndFeel.SkinName = ''
StyleFocused.LookAndFeel.SkinName = ''
StyleHot.LookAndFeel.SkinName = ''
ExplicitWidth = 397
Width = 397
end
@ -413,6 +449,21 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
ExplicitLeft = 278
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
object dxLayoutControl1Group_Root: TdxLayoutGroup
ShowCaption = False
@ -487,6 +538,17 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
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
AutoAligns = []
AlignHorz = ahClient
@ -500,18 +562,6 @@ inherited frViewPedidoProveedor: TfrViewPedidoProveedor
ControlOptions.ShowBorder = False
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
object dxLayoutControl1Group3: TdxLayoutGroup
AutoAligns = [aaVertical]

View File

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

View File

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

View File

@ -29,10 +29,12 @@ type
function _GetDetalles : IBizDetallesPresupuestoCliente;
protected
procedure AsignarClaseNegocio(APresupuesto: TDADataTable); virtual;
procedure AsignarClaseNegocio(APresupuesto: TDADataTable);
public
function GetItems : IBizPresupuestoCliente; virtual;
function GetItems : IBizPresupuestoCliente; overload;
function GetItems(const AListaID: TIntegerList) : IBizPresupuestoCliente; overload;
function GetItem(const ID : Integer) : IBizPresupuestoCliente;
function NewItem : IBizPresupuestoCliente;
@ -161,6 +163,41 @@ begin
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;
var
APresupuesto: TDAMemDataTable;

View File

@ -3,12 +3,14 @@ unit uIDataModulePresupuestosCliente;
interface
uses
Classes, uROTypes, uBizPresupuestosCliente, uBizDetallesPresupuestoCliente;
Classes, uROTypes, uBizPresupuestosCliente, uBizDetallesPresupuestoCliente,
uIntegerListUtils;
type
IDataModulePresupuestosCliente = interface
['{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 NewItem : IBizPresupuestoCliente;
end;

View File

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

View File

@ -171,6 +171,24 @@
<Target Name="PresupuestosCliente_controller:Make">
<MSBuild Projects="Controller\PresupuestosCliente_controller.dproj" Targets="Make" />
</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">
<MSBuild Projects="Views\PresupuestosCliente_view.dproj" Targets="" />
</Target>
@ -189,15 +207,6 @@
<Target Name="PresupuestosCliente_plugin:Make">
<MSBuild Projects="Plugin\PresupuestosCliente_plugin.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="AlbProv_FacProv_relation">
<MSBuild Projects="..\Relaciones\Albaranes de proveedor - Facturas de proveedor\AlbProv_FacProv_relation.dproj" Targets="" />
</Target>
@ -225,15 +234,6 @@
<Target Name="AlbaranesCliente_controller:Make">
<MSBuild Projects="..\Albaranes de cliente\Controller\AlbaranesCliente_controller.dproj" Targets="Make" />
</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">
<MSBuild Projects="..\Facturas de cliente\Controller\FacturasCliente_controller.dproj" Targets="" />
</Target>
@ -262,13 +262,13 @@
<MSBuild Projects="..\..\Servidor\FactuGES_Server.dproj" Targets="Make" />
</Target>
<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 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 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>
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
</Project>

Binary file not shown.

View File

@ -91,8 +91,6 @@ uses
uRptWordPedidoProveedor in '..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas' {RptWordPedidoProveedor: TDataModule},
srvObras_Impl in '..\Modulos\Obras\Servidor\srvObras_Impl.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},
srvProvinciasPoblaciones_Impl in '..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas',
uBizArticulosServer in '..\Modulos\Articulos\Model\uBizArticulosServer.pas',
@ -127,6 +125,8 @@ uses
schContactosClient_Intf in '..\Modulos\Contactos\Model\schContactosClient_Intf.pas',
schContactosServer_Intf in '..\Modulos\Contactos\Model\schContactosServer_Intf.pas',
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',
schRecibosClienteServer_Intf in '..\Modulos\Recibos de cliente\Model\schRecibosClienteServer_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">
<PropertyGroup>
<ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid>
<MainSource>FactuGES_Server.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<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>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput>
<DCC_Define>DEBUG;</DCC_Define>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
<DCC_DebugVN>True</DCC_DebugVN>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_IncludePath>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType/>
<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>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets"/>
<ItemGroup>
<DelphiCompile Include="FactuGES_Server.dpr">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Empresas\Model\uBizEmpresasServer.pas"/>
<DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas">
<Form>srvEmpresas</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas"/>
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas"/>
<DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas"/>
<DCCReference Include="..\Base\schBase_Intf.pas"/>
<DCCReference Include="..\Base\Utiles\uSistemaFunc.pas"/>
<DCCReference Include="..\Base\Utiles\uStringsUtils.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\uBizAlbaranClienteServer.pas"/>
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptAlbaranesCliente_Server.pas">
<Form>RptAlbaranesCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas">
<Form>RptWordAlbaranCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Servidor\srvAlbaranesCliente_Impl.pas">
<Form>srvAlbaranesCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizAlbaranProveedorServer.PAS"/>
<DCCReference Include="..\Modulos\Albaranes de proveedor\Servidor\srvAlbaranesProveedor_Impl.pas">
<Form>srvAlbaranesProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Almacenes\Servidor\srvAlmacenes_Impl.pas">
<Form>srvAlmacenes</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Articulos\Model\uBizArticulosServer.pas"/>
<DCCReference Include="..\Modulos\Articulos\Servidor\srvArticulos_Impl.pas">
<Form>srvArticulos</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas"/>
<DCCReference Include="..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas">
<Form>RptEtiquetasContacto</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas">
<Form>RptFichasEmpleado</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas">
<Form>srvContactos</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Fabricantes\Servidor\srvFabricantes_Impl.pas">
<Form>srvFabricantes</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizFacturasClienteServer.pas"/>
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas">
<Form>RptFacturasCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptWordFacturaCliente.pas">
<Form>RptWordFacturaCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Servidor\srvFacturasCliente_Impl.pas">
<Form>srvFacturasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizFacturasProveedorServer.pas"/>
<DCCReference Include="..\Modulos\Facturas de proveedor\Reports\uRptFacturasProveedor_Server.pas">
<Form>RptFacturasProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas de proveedor\Servidor\srvFacturasProveedor_Impl.pas">
<Form>srvFacturasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.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\schFormasPagoServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas"/>
<DCCReference Include="..\Modulos\Gestion de documentos\Servidor\srvGestorDocumentos_Impl.pas">
<Form>srvGestorDocumentos</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Gestor de informes\Servidor\srvGestorInformes_Impl.pas">
<Form>srvGestorInformes</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Servidor\srvHistoricoMovimientos_Impl.pas">
<Form>srvHistoricoMovimientos</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Inventario\Servidor\srvInventario_Impl.pas">
<Form>srvInventario</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Obras\Model\schObrasClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Obras\Model\schObrasServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Obras\Model\uBizObrasServer.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\schPedidosProveedorServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\uBizPedidosProveedorServer.pas"/>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptPedidosProveedor_Server.pas">
<Form>RptPedidosProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas">
<Form>RptWordPedidoProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Servidor\srvPedidosProveedor_Impl.pas">
<Form>srvPedidosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizPresupuestosClienteServer.pas"/>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas">
<Form>RptPresupuestosCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordCertificadoTrabajo_Server.pas">
<Form>RptWordCertificadoTrabajo</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas">
<Form>RptWordPresupuestoCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Servidor\srvPresupuestosCliente_Impl.pas">
<Form>srvPresupuestosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Reports\uRptRecibosCliente_Server.pas">
<Form>RptRecibosCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Recibos de cliente\Servidor\srvRecibosCliente_Impl.pas">
<Form>srvRecibosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Reports\uRptRecibosProveedor_Server.pas">
<Form>RptRecibosProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Recibos de proveedor\Servidor\srvRecibosProveedor_Impl.pas">
<Form>srvRecibosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas"/>
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas"/>
<DCCReference Include="..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas">
<Form>srvReferencias</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizRemesasClienteServer.pas"/>
<DCCReference Include="..\Modulos\Remesas de cliente\Servidor\srvRemesasCliente_Impl.pas">
<Form>srvRemesasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizRemesasProveedorServer.pas"/>
<DCCReference Include="..\Modulos\Remesas de proveedor\Servidor\srvRemesasProveedor_Impl.pas">
<Form>srvRemesasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Servidor\srvTiposIVA_Impl.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\Servidor\srvUnidadesMedida_Impl.pas">
<Form>srvUnidadesMedida</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Servicios\FactuGES_Intf.pas"/>
<DCCReference Include="..\Servicios\FactuGES_Invk.pas"/>
<DCCReference Include="Configuracion\srvConfiguracion_Impl.pas">
<Form>srvConfiguracion</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uConexionBD.pas">
<Form>frConexionBD</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uConfGeneral.pas">
<Form>frConfGeneral</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uConfiguracion.pas">
<Form>fConfiguracion</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uFrameConfiguracion.pas">
<Form>FrameConfiguracion</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="srvLogin_Impl.pas">
<Form>srvLogin</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="uAcercaDe.pas">
<Form>fAcercaDe</Form>
</DCCReference>
<DCCReference Include="uDataModuleServer.pas">
<Form>dmServer</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="uServerMainForm.pas">
<Form>fServerForm</Form>
</DCCReference>
<DCCReference Include="Utiles\AHWord97.pas"/>
<DCCReference Include="Utiles\RegExpr.pas"/>
<DCCReference Include="Utiles\uBusinessUtils.pas"/>
<DCCReference Include="Utiles\uDatabaseUtils.pas"/>
<DCCReference Include="Utiles\uReferenciasUtils.pas"/>
<DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas"/>
<DCCReference Include="Utiles\uSchemaUtilsServer.pas"/>
<DCCReference Include="Utiles\uServerAppUtils.pas"/>
<DCCReference Include="Utiles\uSesionesUtils.pas"/>
</ItemGroup>
<PropertyGroup>
<ProjectGuid>{ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}</ProjectGuid>
<MainSource>FactuGES_Server.dpr</MainSource>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<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>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Version>7.0</Version>
<DCC_DebugInformation>False</DCC_DebugInformation>
<DCC_LocalDebugSymbols>False</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Release\Servidor</DCC_ExeOutput>
<DCC_Define>RELEASE</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<Version>7.0</Version>
<DCC_MapFile>3</DCC_MapFile>
<DCC_ExeOutput>..\..\Output\Debug\Servidor</DCC_ExeOutput>
<DCC_Define>DEBUG;</DCC_Define>
<DCC_GenerateStackFrames>True</DCC_GenerateStackFrames>
<DCC_DebugInfoInExe>True</DCC_DebugInfoInExe>
<DCC_DebugVN>True</DCC_DebugVN>
<DCC_UnitSearchPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_UnitSearchPath>
<DCC_ResourcePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ResourcePath>
<DCC_ObjPath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_ObjPath>
<DCC_IncludePath>$(BDS)\lib\Debug;$(BDS)\Lib\Debug\Indy10</DCC_IncludePath>
</PropertyGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType />
<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>
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
<ItemGroup>
<DelphiCompile Include="FactuGES_Server.dpr">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\schEmpresasServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Model\uBizEmpresasServer.pas" />
<DCCReference Include="..\ApplicationBase\Empresas\Servidor\srvEmpresas_Impl.pas">
<Form>srvEmpresas</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\ApplicationBase\ProvinciasPoblaciones\Servidor\srvProvinciasPoblaciones_Impl.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosClient_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Model\schUsuariosServer_Intf.pas" />
<DCCReference Include="..\ApplicationBase\Usuarios\Servidor\srvUsuarios_Impl.pas" />
<DCCReference Include="..\Base\schBase_Intf.pas" />
<DCCReference Include="..\Base\Utiles\uSistemaFunc.pas" />
<DCCReference Include="..\Base\Utiles\uStringsUtils.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\uBizAlbaranClienteServer.pas" />
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptAlbaranesCliente_Server.pas">
<Form>RptAlbaranesCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Reports\uRptWordAlbaranCliente.pas">
<Form>RptWordAlbaranCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Albaranes de cliente\Servidor\srvAlbaranesCliente_Impl.pas">
<Form>srvAlbaranesCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizAlbaranProveedorServer.PAS" />
<DCCReference Include="..\Modulos\Albaranes de proveedor\Servidor\srvAlbaranesProveedor_Impl.pas">
<Form>srvAlbaranesProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesClient_Intf.pas" />
<DCCReference Include="..\Modulos\Almacenes\Model\schAlmacenesServer_Intf.pas" />
<DCCReference Include="..\Modulos\Almacenes\Servidor\srvAlmacenes_Impl.pas">
<Form>srvAlmacenes</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Articulos\Model\schArticulosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Articulos\Model\uBizArticulosServer.pas" />
<DCCReference Include="..\Modulos\Articulos\Servidor\srvArticulos_Impl.pas">
<Form>srvArticulos</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Contactos\Model\schContactosClient_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\schContactosServer_Intf.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizClientesServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizContactosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizEmpleadosServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Model\uBizProveedoresServer.pas" />
<DCCReference Include="..\Modulos\Contactos\Reports\uRptEtiquetasContacto_Server.pas">
<Form>RptEtiquetasContacto</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Contactos\Reports\uRptFichasEmpleado_Server.pas">
<Form>RptFichasEmpleado</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Contactos\Servidor\srvContactos_Impl.pas">
<Form>srvContactos</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesClient_Intf.pas" />
<DCCReference Include="..\Modulos\Fabricantes\Model\schFabricantesServer_Intf.pas" />
<DCCReference Include="..\Modulos\Fabricantes\Servidor\srvFabricantes_Impl.pas">
<Form>srvFabricantes</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizFacturasClienteServer.pas" />
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas">
<Form>RptFacturasCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Reports\uRptWordFacturaCliente.pas">
<Form>RptWordFacturaCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas de cliente\Servidor\srvFacturasCliente_Impl.pas">
<Form>srvFacturasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizFacturasProveedorServer.pas" />
<DCCReference Include="..\Modulos\Facturas de proveedor\Reports\uRptFacturasProveedor_Server.pas">
<Form>RptFacturasProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Facturas de proveedor\Servidor\srvFacturasProveedor_Impl.pas">
<Form>srvFacturasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Familias\Model\schFamiliasServer_Intf.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\schFormasPagoServer_Intf.pas" />
<DCCReference Include="..\Modulos\Formas de pago\Servidor\srvFormasPago_Impl.pas" />
<DCCReference Include="..\Modulos\Gestion de documentos\Servidor\srvGestorDocumentos_Impl.pas">
<Form>srvGestorDocumentos</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Gestor de informes\Servidor\srvGestorInformes_Impl.pas">
<Form>srvGestorInformes</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Servidor\srvHistoricoMovimientos_Impl.pas">
<Form>srvHistoricoMovimientos</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioClient_Intf.pas" />
<DCCReference Include="..\Modulos\Inventario\Model\schInventarioServer_Intf.pas" />
<DCCReference Include="..\Modulos\Inventario\Servidor\srvInventario_Impl.pas">
<Form>srvInventario</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Obras\Model\schObrasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Obras\Model\schObrasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Obras\Model\uBizObrasServer.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\schPedidosProveedorServer_Intf.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Model\uBizPedidosProveedorServer.pas" />
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptPedidosProveedor_Server.pas">
<Form>RptPedidosProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Reports\uRptWordPedidoProveedor.pas">
<Form>RptWordPedidoProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Pedidos a proveedor\Servidor\srvPedidosProveedor_Impl.pas">
<Form>srvPedidosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizPresupuestosClienteServer.pas" />
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptPresupuestosCliente_Server.pas">
<Form>RptPresupuestosCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordCertificadoTrabajo_Server.pas">
<Form>RptWordCertificadoTrabajo</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Reports\uRptWordPresupuestoCliente.pas">
<Form>RptWordPresupuestoCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Presupuestos de cliente\Servidor\srvPresupuestosCliente_Impl.pas">
<Form>srvPresupuestosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Reports\uRptRecibosCliente_Server.pas">
<Form>RptRecibosCliente</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Recibos de cliente\Servidor\srvRecibosCliente_Impl.pas">
<Form>srvRecibosCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Reports\uRptRecibosProveedor_Server.pas">
<Form>RptRecibosProveedor</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Recibos de proveedor\Servidor\srvRecibosProveedor_Impl.pas">
<Form>srvRecibosProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasClient_Intf.pas" />
<DCCReference Include="..\Modulos\Referencias\Model\schReferenciasServer_Intf.pas" />
<DCCReference Include="..\Modulos\Referencias\Servidor\srvReferencias_Impl.pas">
<Form>srvReferencias</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizRemesasClienteServer.pas" />
<DCCReference Include="..\Modulos\Remesas de cliente\Servidor\srvRemesasCliente_Impl.pas">
<Form>srvRemesasCliente</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\uBizRemesasProveedorServer.pas" />
<DCCReference Include="..\Modulos\Remesas de proveedor\Servidor\srvRemesasProveedor_Impl.pas">
<Form>srvRemesasProveedor</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<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\Servidor\srvTiposIVA_Impl.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\Servidor\srvUnidadesMedida_Impl.pas">
<Form>srvUnidadesMedida</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="..\Servicios\FactuGES_Invk.pas" />
<DCCReference Include="Configuracion\srvConfiguracion_Impl.pas">
<Form>srvConfiguracion</Form>
<DesignClass>TDataAbstractService</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uConexionBD.pas">
<Form>frConexionBD</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uConfGeneral.pas">
<Form>frConfGeneral</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uConfiguracion.pas">
<Form>fConfiguracion</Form>
<DesignClass>TForm</DesignClass>
</DCCReference>
<DCCReference Include="Configuracion\uFrameConfiguracion.pas">
<Form>FrameConfiguracion</Form>
<DesignClass>TFrame</DesignClass>
</DCCReference>
<DCCReference Include="srvLogin_Impl.pas">
<Form>srvLogin</Form>
<DesignClass>TDARemoteService</DesignClass>
</DCCReference>
<DCCReference Include="uAcercaDe.pas">
<Form>fAcercaDe</Form>
</DCCReference>
<DCCReference Include="uDataModuleServer.pas">
<Form>dmServer</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="uServerMainForm.pas">
<Form>fServerForm</Form>
</DCCReference>
<DCCReference Include="Utiles\AHWord97.pas" />
<DCCReference Include="Utiles\RegExpr.pas" />
<DCCReference Include="Utiles\uBusinessUtils.pas" />
<DCCReference Include="Utiles\uDatabaseUtils.pas" />
<DCCReference Include="Utiles\uReferenciasUtils.pas" />
<DCCReference Include="Utiles\uRestriccionesUsuarioUtils.pas" />
<DCCReference Include="Utiles\uSchemaUtilsServer.pas" />
<DCCReference Include="Utiles\uServerAppUtils.pas" />
<DCCReference Include="Utiles\uSesionesUtils.pas" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line
[Exception Log]

View File

@ -14,7 +14,7 @@ BEGIN
BEGIN
VALUE "FileVersion", "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
BLOCK "VarFileInfo"

View File

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