diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql
index 177665fe..454cd395 100644
--- a/Database/scripts/factuges.sql
+++ b/Database/scripts/factuges.sql
@@ -5272,7 +5272,7 @@ begin
end
/*TITULO*/
- else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
+ else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo_opc')) then
begin
ultimo_tipo_detalle = tipo_detalle;
id_aux_temp = id;
@@ -5382,7 +5382,7 @@ begin
end
/*TITULO*/
- else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
+ else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo_opc')) then
begin
ultimo_tipo_detalle = tipo_detalle;
id_aux_temp = id;
@@ -5493,7 +5493,7 @@ begin
:IMPORTE_UNIDAD, :DESCUENTO, :IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
do
begin
- if (:tipo_detalle = 'Titulo') then
+ if ((:tipo_detalle = 'Titulo') or (:tipo_detalle = 'Titulo_opc')) then
begin
capitulo_actual = :ID;
ID_CAPITULO = capitulo_actual;
@@ -5532,7 +5532,7 @@ begin
:IMPORTE_UNIDAD, :DESCUENTO, :IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
do
begin
- if (:tipo_detalle = 'Titulo') then
+ if ((:tipo_detalle = 'Titulo') or (:tipo_detalle = 'Titulo_opc') ) then
begin
capitulo_actual = :ID;
ID_CAPITULO = capitulo_actual;
diff --git a/Database/scripts/factuges_sysdata.sql b/Database/scripts/factuges_sysdata.sql
index ad83ff5c..76a74748 100644
--- a/Database/scripts/factuges_sysdata.sql
+++ b/Database/scripts/factuges_sysdata.sql
@@ -115,6 +115,15 @@ INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION)
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (71, 2, 2, 'REF_ALBARANES_CLIENTE', 'BAVA/00000', 'Ref. albaranes de cliente Valdebernardo');
INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (72, 2, 3, 'REF_ALBARANES_CLIENTE', 'BAAB/00000', 'Ref. albaranes de cliente Abeto');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (73, 1, 2, 'REF_CONTRATOS_CLIENTE', 'COVA08/00000', 'Ref. contrato de cliente Valdebernardo');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (74, 1, 0, 'REF_CONTRATOS_CLIENTE', 'COAC08/00000', 'Ref. contrato de cliente General');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (75, 1, 1, 'REF_CONTRATOS_CLIENTE', 'COAL08/00000', 'Ref. contrato de cliente Alcalá');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (76, 1, 3, 'REF_CONTRATOS_CLIENTE', 'COAB08/00000', 'Ref. contrato de cliente Abeto');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (77, 2, 2, 'REF_CONTRATOS_CLIENTE', 'BCOVA08/0000', 'Ref. contrato de cliente Valdebernardo');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (78, 2, 0, 'REF_CONTRATOS_CLIENTE', 'BCOAC08/0000', 'Ref. contrato de cliente General');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (79, 2, 1, 'REF_CONTRATOS_CLIENTE', 'BCOAL08/0000', 'Ref. contrato de cliente Alcalá');
+INSERT INTO REFERENCIAS (ID, ID_EMPRESA, ID_TIENDA, CODIGO, VALOR, DESCRIPCION) VALUES (80, 2, 3, 'REF_CONTRATOS_CLIENTE', 'BCOAB08/0000', 'Ref. contrato de cliente Abeto');
+
COMMIT WORK;
diff --git a/Source/Base/Base.res b/Source/Base/Base.res
index 1641339f..8b251f31 100644
Binary files a/Source/Base/Base.res and b/Source/Base/Base.res differ
diff --git a/Source/Base/Controladores/uControllerDetallesBase.pas b/Source/Base/Controladores/uControllerDetallesBase.pas
index e2743a77..42a6f45b 100644
--- a/Source/Base/Controladores/uControllerDetallesBase.pas
+++ b/Source/Base/Controladores/uControllerDetallesBase.pas
@@ -7,6 +7,7 @@ uses Classes, Variants, uDACDSDataTable, uDADataTable, uControllerBase, uCalculo
const
TIPO_DETALLE_CONCEPTO = 'Concepto';
TIPO_DETALLE_TITULO = 'Titulo';
+ TIPO_DETALLE_TITULO_OPCIONAL = 'Titulo_opc';
TIPO_DETALLE_SUBTOTAL = 'Subtotal';
TIPO_DETALLE_SALTO = 'Salto';
TIPO_DETALLE_DESCUENTO = 'Descuento';
@@ -56,11 +57,13 @@ type
//Si sobreescribimos este método podremos tener en cuenta otras columnas para el calculo del importe total de un concepto
function CalcularImporteTotalConcepto(DataTable: TDADataTable): Double; virtual;
procedure TratamientoDetalleConcepto(DataTable: TDADataTable); virtual;
- procedure CalculoDetalleConcepto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual;
+ procedure CalculoDetalleConcepto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double; const Opcional: Boolean); virtual;
procedure TratamientoDetalleSalto(DataTable: TDADataTable); virtual;
procedure CalculoDetalleSalto(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual;
procedure TratamientoDetalleTitulo(DataTable: TDADataTable); virtual;
procedure CalculoDetalleTitulo(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual;
+ procedure TratamientoDetalleTituloOpcional(DataTable: TDADataTable); virtual;
+ procedure CalculoDetalleTituloOpcional(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual;
procedure TratamientoDetalleSubtotal(DataTable: TDADataTable); virtual;
procedure CalculoDetalleSubtotal(DataTable: TDADataTable; var ImporteAcumulado : Double; var ImporteTotal : Double); virtual;
procedure TratamientoDetalleDescuento(DataTable: TDADataTable); virtual;
@@ -156,6 +159,7 @@ var
AuxPosicion : Integer;
AuxImporteAcumulado : Double;
AuxImporteTotal : Double;
+ SemaforoOpcional: Boolean;
begin
if (DataTable.State in dsEditModes) then
@@ -169,7 +173,8 @@ begin
AuxPosicion := 0;
AuxImporteAcumulado := 0;
AuxImporteTotal := 0;
- FImporteSubtotal := 0;
+ FImporteSubtotal := 0;
+ SemaforoOpcional := False;
try
DataTable.First;
@@ -185,16 +190,26 @@ begin
//TITULOS
else if (DataTable.FieldByName(CAMPO_TIPO).AsString = TIPO_DETALLE_TITULO) then
begin
+ SemaforoOpcional := False;
if Modificar then
TratamientoDetalleTitulo(DataTable); //Se podrá sobreescribir para que se tengan en cuenta nuevos campos en hijos
CalculoDetalleTitulo(DataTable, AuxImporteAcumulado, AuxImporteTotal); //Se podrá sobreescribir para posibles nuevos calculos de los hijos
end
+ //TITULOS OPCIONALES
+ else if (DataTable.FieldByName(CAMPO_TIPO).AsString = TIPO_DETALLE_TITULO_OPCIONAL) then
+ begin
+ SemaforoOpcional := True;
+ if Modificar then
+ TratamientoDetalleTituloOpcional(DataTable); //Se podrá sobreescribir para que se tengan en cuenta nuevos campos en hijos
+ CalculoDetalleTituloOpcional(DataTable, AuxImporteAcumulado, AuxImporteTotal); //Se podrá sobreescribir para posibles nuevos calculos de los hijos
+ end
//SUBTOTAL
else if (DataTable.FieldByName(CAMPO_TIPO).AsString = TIPO_DETALLE_SUBTOTAL) then
begin
if Modificar then
TratamientoDetalleSubtotal(DataTable); //Se podrá sobreescribir para que se tengan en cuenta nuevos campos
CalculoDetalleSubtotal(DataTable, AuxImporteAcumulado, AuxImporteTotal); //Se podrá sobreescribir para posibles nuevos calculos de los hijos
+ SemaforoOpcional := False;
end
//DESCUENTO DE CAPITULO
else if (DataTable.FieldByName(CAMPO_TIPO).AsString = TIPO_DETALLE_DESCUENTO) then
@@ -208,7 +223,7 @@ begin
begin
if Modificar then
TratamientoDetalleConcepto(DataTable); //Se podrá sobreescribir para que se tengan en cuenta nuevos campos
- CalculoDetalleConcepto(DataTable, AuxImporteAcumulado, AuxImporteTotal); //Se podrá sobreescribir para posibles nuevos calculos de los hijos
+ CalculoDetalleConcepto(DataTable, AuxImporteAcumulado, AuxImporteTotal, SemaforoOpcional); //Se podrá sobreescribir para posibles nuevos calculos de los hijos
end
//HIJOS
else CalcularTotalesHijos(Modificar, DataTable, AuxImporteAcumulado, AuxImporteTotal);
@@ -232,12 +247,13 @@ begin
Result := 0;
end;
-procedure TControllerDetallesBase.CalculoDetalleConcepto(DataTable: TDADataTable; var ImporteAcumulado, ImporteTotal: Double);
+procedure TControllerDetallesBase.CalculoDetalleConcepto(DataTable: TDADataTable; var ImporteAcumulado, ImporteTotal: Double; const Opcional: Boolean);
begin
with DataTable do
begin
ImporteAcumulado := ImporteAcumulado + FieldByName(CAMPO_IMPORTE_TOTAL).AsFloat;
- ImporteTotal := ImporteTotal + FieldByName(CAMPO_IMPORTE_TOTAL).AsFloat;
+ if not Opcional then
+ ImporteTotal := ImporteTotal + FieldByName(CAMPO_IMPORTE_TOTAL).AsFloat;
end;
end;
@@ -287,6 +303,12 @@ begin
//
end;
+procedure TControllerDetallesBase.CalculoDetalleTituloOpcional(
+ DataTable: TDADataTable; var ImporteAcumulado, ImporteTotal: Double);
+begin
+//
+end;
+
procedure TControllerDetallesBase.Clear(ADataTable: IDAStronglyTypedDataTable);
begin
//
@@ -302,6 +324,7 @@ begin
Result := TStringList.Create;
Result.Values[TIPO_DETALLE_CONCEPTO] := TIPO_DETALLE_CONCEPTO;
Result.Values[TIPO_DETALLE_TITULO] := TIPO_DETALLE_TITULO;
+ Result.Values[TIPO_DETALLE_TITULO_OPCIONAL] := TIPO_DETALLE_TITULO_OPCIONAL;
Result.Values[TIPO_DETALLE_SUBTOTAL] := TIPO_DETALLE_SUBTOTAL;
Result.Values[TIPO_DETALLE_DESCUENTO] := TIPO_DETALLE_DESCUENTO;
Result.Values[TIPO_DETALLE_SALTO] := TIPO_DETALLE_SALTO;
@@ -639,6 +662,20 @@ begin
end;
end;
+procedure TControllerDetallesBase.TratamientoDetalleTituloOpcional(DataTable: TDADataTable);
+begin
+ with DataTable do
+ begin
+ if not Editing then Edit;
+ if (FieldByName(CAMPO_CONCEPTO).AsString = CTE_DESC_SALTO) then
+ FieldByName(CAMPO_CONCEPTO).AsVariant := Null;
+ FieldByName(CAMPO_CANTIDAD).AsVariant := Null;
+ FieldByName(CAMPO_IMPORTE_UNIDAD).AsVariant := Null;
+ FieldByName(CAMPO_IMPORTE_TOTAL).AsVariant := Null;
+ Post;
+ end;
+end;
+
procedure TControllerDetallesBase.validarCampos(DataTable: TDADataTable);
var
AField: TDAField;
@@ -700,8 +737,7 @@ begin
if (ATipoCampo = TIPO_DETALLE_SUBTOTAL) and bEnCapitulo then
bEnCapitulo := False;
- if (ATipoCampo = TIPO_DETALLE_TITULO) then
- //or (ATipoCampo = TIPO_DETALLE_TITULO_OPCIONAL)) then Solo es valido para Tecsitel
+ if ((ATipoCampo = TIPO_DETALLE_TITULO) or (ATipoCampo = TIPO_DETALLE_TITULO_OPCIONAL)) then
begin
// Borramos cualquier valor que haya en las columnas de cantidad, importe, etc.
with ADataTable.DataTable do
diff --git a/Source/Cliente/FactuGES.dproj b/Source/Cliente/FactuGES.dproj
index 4714b502..ae1e6517 100644
--- a/Source/Cliente/FactuGES.dproj
+++ b/Source/Cliente/FactuGES.dproj
@@ -53,7 +53,7 @@
Delphi.Personality
VCLApplication
-FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2370FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.7.0FactuGESFactuGES2.3.7.0FactuGES.dprFalse
+FalseTrueFalseC:\Archivos de programa\Borland\Delphi7\Bin\TrueFalse2380FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.8.0FactuGESFactuGES2.3.8.0FactuGES.dprFalse
diff --git a/Source/Cliente/FactuGES.rc b/Source/Cliente/FactuGES.rc
index 4161ede1..8cbb0a72 100644
--- a/Source/Cliente/FactuGES.rc
+++ b/Source/Cliente/FactuGES.rc
@@ -1,7 +1,7 @@
MAINICON ICON "C:\Codigo Acana\Resources\Iconos\Factuges.ico"
1 VERSIONINFO
-FILEVERSION 2,3,7,0
-PRODUCTVERSION 2,3,7,0
+FILEVERSION 2,3,8,0
+PRODUCTVERSION 2,3,8,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@@ -13,10 +13,10 @@ BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0"
- VALUE "FileVersion", "2.3.7.0\0"
+ VALUE "FileVersion", "2.3.8.0\0"
VALUE "InternalName", "FactuGES\0"
VALUE "ProductName", "FactuGES\0"
- VALUE "ProductVersion", "2.3.7.0\0"
+ VALUE "ProductVersion", "2.3.8.0\0"
END
END
BLOCK "VarFileInfo"
diff --git a/Source/Cliente/FactuGES.res b/Source/Cliente/FactuGES.res
index 6c5d298a..329097c7 100644
Binary files a/Source/Cliente/FactuGES.res and b/Source/Cliente/FactuGES.res differ
diff --git a/Source/GUIBase/GUIBase.dproj b/Source/GUIBase/GUIBase.dproj
index 37aa08af..6f7ba7e5 100644
--- a/Source/GUIBase/GUIBase.dproj
+++ b/Source/GUIBase/GUIBase.dproj
@@ -58,38 +58,38 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/GUIBase/uViewDetallesBase.dfm b/Source/GUIBase/uViewDetallesBase.dfm
index 72baea21..454b0c9d 100644
--- a/Source/GUIBase/uViewDetallesBase.dfm
+++ b/Source/GUIBase/uViewDetallesBase.dfm
@@ -64,7 +64,7 @@ inherited frViewDetallesBase: TfrViewDetallesBase
DroppedDownWidth = 145
MaxMRUCount = 0
FontName = 'Tahoma'
- ItemIndex = 34
+ ItemIndex = 35
Options = [foTrueTypeOnly, foNoOEMFonts, foScalableOnly, foWysiWyg]
Sorted = True
TabOrder = 2
diff --git a/Source/GUIBase/uViewDetallesBase.pas b/Source/GUIBase/uViewDetallesBase.pas
index ebf37180..dea8faaa 100644
--- a/Source/GUIBase/uViewDetallesBase.pas
+++ b/Source/GUIBase/uViewDetallesBase.pas
@@ -444,7 +444,7 @@ begin
begin
ATipo := DarTipoConcepto(ARecord);
- if ATipo = TIPO_DETALLE_TITULO then
+ if ((ATipo = TIPO_DETALLE_TITULO) or (ATipo = TIPO_DETALLE_TITULO_OPCIONAL)) then
AStyle := cxStyle_TITULO;
if ATipo = TIPO_DETALLE_SUBTOTAL then
@@ -472,7 +472,7 @@ begin
Result.Style := [];
end;
- if ATipo = TIPO_DETALLE_TITULO then
+ if ((ATipo = TIPO_DETALLE_TITULO) or (ATipo = TIPO_DETALLE_TITULO_OPCIONAL)) then
begin
Result.Name := cxStyle_TITULO.Font.Name;
Result.Color := cxStyle_TITULO.TextColor;
@@ -540,6 +540,7 @@ begin
IndiceCol := cxGridView.GetColumnByFieldName(CAMPO_TIPO).Index;
if (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_SUBTOTAL)
+ or (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_TITULO_OPCIONAL)
or (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_TITULO) then
begin
IndiceCol := cxGridView.GetColumnByFieldName(CAMPO_CONCEPTO).Index;
diff --git a/Source/Informes/InfContratoCliente.fr3 b/Source/Informes/InfContratoCliente.fr3
index 3c6e98ea..15398361 100644
--- a/Source/Informes/InfContratoCliente.fr3
+++ b/Source/Informes/InfContratoCliente.fr3
@@ -1,102 +1,102 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Source/Informes/InfPresupuestoCliente.fr3 b/Source/Informes/InfPresupuestoCliente.fr3
index a395f097..638d81eb 100644
--- a/Source/Informes/InfPresupuestoCliente.fr3
+++ b/Source/Informes/InfPresupuestoCliente.fr3
@@ -1,79 +1,79 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
diff --git a/Source/Modulos/Contratos de cliente/Controller/ContratosCliente_controller.drc b/Source/Modulos/Contratos de cliente/Controller/ContratosCliente_controller.drc
index 55420148..4ca11c75 100644
--- a/Source/Modulos/Contratos de cliente/Controller/ContratosCliente_controller.drc
+++ b/Source/Modulos/Contratos de cliente/Controller/ContratosCliente_controller.drc
@@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Controller\ContratosCliente_controller.res */
-/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf3B1.tmp */
+/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf7EC.tmp */
diff --git a/Source/Modulos/Contratos de cliente/Data/ContratosCliente_data.drc b/Source/Modulos/Contratos de cliente/Data/ContratosCliente_data.drc
index 3008bbe1..76945adc 100644
--- a/Source/Modulos/Contratos de cliente/Data/ContratosCliente_data.drc
+++ b/Source/Modulos/Contratos de cliente/Data/ContratosCliente_data.drc
@@ -14,4 +14,4 @@ END
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Data\uDataModuleContratosCliente.dfm */
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Data\ContratosCliente_data.res */
-/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf3AF.tmp */
+/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf7EA.tmp */
diff --git a/Source/Modulos/Contratos de cliente/Model/ContratosCliente_model.drc b/Source/Modulos/Contratos de cliente/Model/ContratosCliente_model.drc
index 2d24ca9f..9019c967 100644
--- a/Source/Modulos/Contratos de cliente/Model/ContratosCliente_model.drc
+++ b/Source/Modulos/Contratos de cliente/Model/ContratosCliente_model.drc
@@ -13,4 +13,4 @@ BEGIN
END
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Model\ContratosCliente_model.res */
-/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf3AD.tmp */
+/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf7E8.tmp */
diff --git a/Source/Modulos/Contratos de cliente/Plugin/ContratosCliente_plugin.drc b/Source/Modulos/Contratos de cliente/Plugin/ContratosCliente_plugin.drc
index 8c449645..6b54df01 100644
--- a/Source/Modulos/Contratos de cliente/Plugin/ContratosCliente_plugin.drc
+++ b/Source/Modulos/Contratos de cliente/Plugin/ContratosCliente_plugin.drc
@@ -14,4 +14,4 @@ END
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Plugin\uPluginContratosCliente.dfm */
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Plugin\ContratosCliente_plugin.res */
-/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf3F9.tmp */
+/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf834.tmp */
diff --git a/Source/Modulos/Contratos de cliente/Views/ContratosCliente_view.drc b/Source/Modulos/Contratos de cliente/Views/ContratosCliente_view.drc
index 33b8280d..7992dac4 100644
--- a/Source/Modulos/Contratos de cliente/Views/ContratosCliente_view.drc
+++ b/Source/Modulos/Contratos de cliente/Views/ContratosCliente_view.drc
@@ -25,4 +25,4 @@ END
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Views\uEditorElegirArticulosContratoCliente.dfm */
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Views\uEditorContratosClienteReport.dfm */
/* C:\Codigo Acana\Source\Modulos\Contratos de cliente\Views\ContratosCliente_view.res */
-/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf3F7.tmp */
+/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf832.tmp */
diff --git a/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.dfm b/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.dfm
index 6902c853..0d0cc809 100644
--- a/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.dfm
+++ b/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.dfm
@@ -142,6 +142,11 @@ inherited frViewDetallesContratoCliente: TfrViewDetallesContratoCliente
object TBXItem20: TTBXItem
Action = actCapituloVarios
end
+ object TBXSeparatorItem11: TTBXSeparatorItem
+ end
+ object TBXItem21: TTBXItem
+ Action = actCapituloImportes
+ end
end
object TBXSeparatorItem6: TTBXSeparatorItem [1]
end
@@ -232,6 +237,11 @@ inherited frViewDetallesContratoCliente: TfrViewDetallesContratoCliente
Caption = 'Cap'#237'tulo de varios'
OnExecute = actCapituloVariosExecute
end
+ object actCapituloImportes: TAction
+ Category = 'Operaciones'
+ Caption = 'Capitulo de importes'
+ OnExecute = actCapituloImportesExecute
+ end
end
inherited cxStyleRepository: TcxStyleRepository
inherited cxStyle_IMPORTETOTAL: TcxStyle
diff --git a/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.pas b/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.pas
index 112be744..a3a0a016 100644
--- a/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.pas
+++ b/Source/Modulos/Contratos de cliente/Views/uViewDetallesContratoCliente.pas
@@ -52,6 +52,9 @@ type
TBXSeparatorItem7: TTBXSeparatorItem;
TBXSeparatorItem8: TTBXSeparatorItem;
TBXSeparatorItem10: TTBXSeparatorItem;
+ actCapituloImportes: TAction;
+ TBXSeparatorItem11: TTBXSeparatorItem;
+ TBXItem21: TTBXItem;
procedure actAsignarDescuentoExecute(Sender: TObject);
procedure actAsignarDescuentoUpdate(Sender: TObject);
procedure CustomViewShow(Sender: TObject);
@@ -64,6 +67,7 @@ type
procedure actCapituloElectrodomesticosExecute(Sender: TObject);
procedure actCapituloVariosExecute(Sender: TObject);
procedure actAnadirExecute(Sender: TObject);
+ procedure actCapituloImportesExecute(Sender: TObject);
private
procedure AnadirCapitulo(const Tipo: String);
@@ -175,6 +179,12 @@ begin
AnadirCapitulo(TIPO_CAPITULO_E);
end;
+procedure TfrViewDetallesContratoCliente.actCapituloImportesExecute(Sender: TObject);
+begin
+ inherited;
+ AnadirCapitulo(TIPO_CAPITULO_IMPORTES);
+end;
+
procedure TfrViewDetallesContratoCliente.actCapituloVariosExecute(Sender: TObject);
begin
AnadirCapitulo(TIPO_CAPITULO_V);
diff --git a/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas b/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas
index ac63e35b..96a971dd 100644
--- a/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas
+++ b/Source/Modulos/Presupuestos de cliente/Controller/uDetallesPresupuestoClienteController.pas
@@ -107,63 +107,64 @@ end;
procedure TDetallesPresupuestoClienteController.AnadirCapitulo(const Tipo: String; ADetalles: IDAStronglyTypedDataTable);
var
ACapitulo: IBizCapitulo;
+ TipoAux: String;
begin
+ if ((Tipo = TIPO_CAPITULO_IMPORTES)
+ or (Tipo = TIPO_CAPITULO_IMPORTES_OPCIONAL)) then
+ //Esta capitulo será igual que un capitulo de varios
+ TipoAux := TIPO_CAPITULO_V
+ else
+ TipoAux := Tipo;
+
Self.Add(ADetalles, TIPO_DETALLE_TITULO);
if not ADetalles.DataTable.Editing then
ADetalles.DataTable.Edit;
if Tipo = TIPO_CAPITULO_AF then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'FRENTE DE ARMARIO Nº ';
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'FRENTE DE ARMARIO Nº ';
end
else if Tipo = TIPO_CAPITULO_AI then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'INTERIOR DE ARMARIO Nº ';
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'INTERIOR DE ARMARIO Nº ';
end
else if Tipo = TIPO_CAPITULO_B then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'MUEBLE DE BAÑO Nº ';
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'MUEBLE DE BAÑO Nº ';
end
else if (Tipo = TIPO_CAPITULO_C) or (Tipo = TIPO_CAPITULO_C_VACIO) then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'MUEBLES DE COCINA ';
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'MUEBLES DE COCINA ';
end
else if Tipo = TIPO_CAPITULO_E then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'ELECTRODOMÉSTICOS ';
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'ELECTRODOMÉSTICOS ';
end
else if Tipo = TIPO_CAPITULO_V then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'VARIOS ';
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'VARIOS ';
+ end
+ else if Tipo = TIPO_CAPITULO_IMPORTES then
+ begin
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'IMPORTES ';
+ end
+ else if Tipo = TIPO_CAPITULO_IMPORTES_OPCIONAL then
+ begin
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'IMPORTES ';
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_DETALLE).AsString := TIPO_DETALLE_TITULO_OPCIONAL;
end;
//Rellenamos con las propiedades del capitulo
- ACapitulo := FDataModule.GetCapitulo(Tipo);
+ ACapitulo := FDataModule.GetCapitulo(TipoAux);
ACapitulo.DataTable.Active := True;
with ACapitulo.DataTable do
begin
@@ -173,10 +174,7 @@ begin
if not ADetalles.DataTable.Editing then
ADetalles.DataTable.Edit;
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).ID_ARTICULO := ACapitulo.ID_ARTICULO;
-
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesID_ARTICULO).AsInteger := ACapitulo.ID_ARTICULO;
Next;
until EOF;
@@ -188,57 +186,47 @@ begin
if Tipo = TIPO_CAPITULO_AF then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'TOTAL FRENTE DE ARMARIO Nº ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL FRENTE DE ARMARIO Nº ';
end
else if Tipo = TIPO_CAPITULO_AI then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'TOTAL INTERIOR DE ARMARIO Nº ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL INTERIOR DE ARMARIO Nº ';
end
else if Tipo = TIPO_CAPITULO_B then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'TOTAL MUEBLE DE BAÑO Nº ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL MUEBLE DE BAÑO Nº ';
end
else if (Tipo = TIPO_CAPITULO_C) or (Tipo = TIPO_CAPITULO_C_VACIO) then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'TOTAL MUEBLES DE COCINA ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL MUEBLES DE COCINA ';
end
else if Tipo = TIPO_CAPITULO_E then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'TOTAL ELECTRODOMÉSTICOS ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL ELECTRODOMÉSTICOS ';
end
else if Tipo = TIPO_CAPITULO_V then
begin
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'TOTAL VARIOS ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL VARIOS ';
+ end
+ else if ((Tipo = TIPO_CAPITULO_IMPORTES) or (Tipo = TIPO_CAPITULO_IMPORTES_OPCIONAL)) then
+ begin
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'TOTAL IMPORTES ';
+
+ Self.Add(ADetalles, TIPO_DETALLE_DESCUENTO);
+ if not ADetalles.DataTable.Editing then
+ ADetalles.DataTable.Edit;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := TipoAux;
+ ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'DESCUENTO ';
end;
- Self.Add(ADetalles, TIPO_DETALLE_DESCUENTO);
- if not ADetalles.DataTable.Editing then
- ADetalles.DataTable.Edit;
-// (ADetalles as IBizDetallesPresupuestoCliente).TIPO_ARTICULO := Tipo;
-// (ADetalles as IBizDetallesPresupuestoCliente).CONCEPTO := 'DESCUENTO ';
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesTIPO_ARTICULO).AsString := Tipo;
- ADetalles.DataTable.FieldByName(fld_PresupuestosCliente_DetallesCONCEPTO).AsString := 'DESCUENTO ';
-
Self.Add(ADetalles, TIPO_DETALLE_CONCEPTO);
-// Controller.add(FDetalles, TIPO_DETALLE_DESCUENTO);
end;
procedure TDetallesPresupuestoClienteController.AsignarController;
diff --git a/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas b/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas
index 38a4e1ae..c8a8113e 100644
--- a/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas
+++ b/Source/Modulos/Presupuestos de cliente/Model/uBizDetallesPresupuestoCliente.pas
@@ -17,7 +17,9 @@ const
TIPO_CAPITULO_C = 'C'; //COCINA
TIPO_CAPITULO_E = 'E'; //ELECTRODOMÉSTICOS
TIPO_CAPITULO_V = 'V'; //VARIOS
- TIPO_CAPITULO_C_VACIO = 'CV'; //COCINAVACIO
+ TIPO_CAPITULO_C_VACIO = 'CV'; //COCINAVACIO
+ TIPO_CAPITULO_IMPORTES = 'IM'; //CAPITULO DE IMPORTES
+ TIPO_CAPITULO_IMPORTES_OPCIONAL = 'IO'; //CAPITULO DE IMPORTES OPCIONALES
type
IBizValores = interface(IValores)
diff --git a/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj b/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj
index 05677b26..766beaa6 100644
--- a/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj
+++ b/Source/Modulos/Presupuestos de cliente/PresupuestosCliente_Group.groupproj
@@ -19,6 +19,7 @@
+
@@ -221,14 +222,23 @@
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.dfm
index 83c67604..ce2f925d 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.dfm
@@ -57,6 +57,9 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
end
inherited cxGrid: TcxGrid
inherited cxGridView: TcxGridDBTableView
+ inherited cxGridViewTIPO: TcxGridDBColumn
+ VisibleForCustomization = False
+ end
inherited cxGridViewID_ARTICULO: TcxGridDBColumn
Width = 57
end
@@ -143,6 +146,11 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
object TBXItem20: TTBXItem
Action = actCapituloVarios
end
+ object TBXSeparatorItem11: TTBXSeparatorItem
+ end
+ object TBXItem21: TTBXItem
+ Action = actCapituloImportes
+ end
end
object TBXSeparatorItem6: TTBXSeparatorItem [3]
end
@@ -233,6 +241,11 @@ inherited frViewDetallesPresupuestoCliente: TfrViewDetallesPresupuestoCliente
Caption = 'Cap'#237'tulo de varios'
OnExecute = actCapituloVariosExecute
end
+ object actCapituloImportes: TAction
+ Category = 'Operaciones'
+ Caption = 'Capitulo de importes'
+ OnExecute = actCapituloImportesExecute
+ end
end
inherited cxStyleRepository: TcxStyleRepository
inherited cxStyle_IMPORTETOTAL: TcxStyle
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.pas b/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.pas
index fa380c45..541910e5 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.pas
+++ b/Source/Modulos/Presupuestos de cliente/Views/uViewDetallesPresupuestoCliente.pas
@@ -52,6 +52,9 @@ type
TBXSeparatorItem7: TTBXSeparatorItem;
TBXSeparatorItem8: TTBXSeparatorItem;
TBXSeparatorItem10: TTBXSeparatorItem;
+ actCapituloImportes: TAction;
+ TBXSeparatorItem11: TTBXSeparatorItem;
+ TBXItem21: TTBXItem;
procedure actAsignarDescuentoExecute(Sender: TObject);
procedure actAsignarDescuentoUpdate(Sender: TObject);
procedure CustomViewShow(Sender: TObject);
@@ -64,6 +67,7 @@ type
procedure actCapituloElectrodomesticosExecute(Sender: TObject);
procedure actCapituloVariosExecute(Sender: TObject);
procedure actAnadirExecute(Sender: TObject);
+ procedure actCapituloImportesExecute(Sender: TObject);
private
procedure AnadirCapitulo(const Tipo: String);
@@ -167,6 +171,7 @@ end;
procedure TfrViewDetallesPresupuestoCliente.actCapituloCocinaExecute(Sender: TObject);
begin
AnadirCapitulo(TIPO_CAPITULO_C_VACIO);
+ AnadirCapitulo(TIPO_CAPITULO_IMPORTES_OPCIONAL);
end;
procedure TfrViewDetallesPresupuestoCliente.actCapituloElectrodomesticosExecute(Sender: TObject);
@@ -174,6 +179,11 @@ begin
AnadirCapitulo(TIPO_CAPITULO_E);
end;
+procedure TfrViewDetallesPresupuestoCliente.actCapituloImportesExecute(Sender: TObject);
+begin
+ AnadirCapitulo(TIPO_CAPITULO_IMPORTES);
+end;
+
procedure TfrViewDetallesPresupuestoCliente.actCapituloVariosExecute(Sender: TObject);
begin
AnadirCapitulo(TIPO_CAPITULO_V);
@@ -265,7 +275,8 @@ begin
if ((AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_SALTO) or
(AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_SUBTOTAL) or
(AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_DESCUENTO) or
- (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_TITULO)) then
+ (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_TITULO) or
+ (AItem.GridView.Items[IndiceCol].EditValue = TIPO_DETALLE_TITULO_OPCIONAL)) then
Result := False
else
begin
diff --git a/Source/Modulos/Relaciones/Presupuestos de cliente - Contratos de cliente/uGenerarContratosCliUtils.pas b/Source/Modulos/Relaciones/Presupuestos de cliente - Contratos de cliente/uGenerarContratosCliUtils.pas
index f03ee9f7..7ecc6383 100644
--- a/Source/Modulos/Relaciones/Presupuestos de cliente - Contratos de cliente/uGenerarContratosCliUtils.pas
+++ b/Source/Modulos/Relaciones/Presupuestos de cliente - Contratos de cliente/uGenerarContratosCliUtils.pas
@@ -130,7 +130,11 @@ begin
and (AArticulos.TIPO_ARTICULO = TIPO_CAPITULO_C_VACIO)) then
ADetallesController.AnadirCapitulo(TIPO_CAPITULO_C, ADetalles);
- ADetallesController.Add(ADetalles, AArticulos.TIPO_DETALLE);
+ //En contratos ya no existirá ningún capitulo opcional todos sumarán
+ if (AArticulos.TIPO_DETALLE = TIPO_DETALLE_TITULO_OPCIONAL) then
+ ADetallesController.Add(ADetalles, TIPO_DETALLE_TITULO)
+ else
+ ADetallesController.Add(ADetalles, AArticulos.TIPO_DETALLE);
ADetalles.Edit;
ADetalles.REFERENCIA := AArticulos.REFERENCIA;
ADetalles.ID_ARTICULO := AArticulos.ID_ARTICULO;
diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES
index 1b799a01..3fc1ff37 100644
Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ
diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj
index 4ef38019..bbf026cb 100644
--- a/Source/Servidor/FactuGES_Server.dproj
+++ b/Source/Servidor/FactuGES_Server.dproj
@@ -1,303 +1,295 @@
-
+
-
- {ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}
- FactuGES_Server.dpr
- Debug
- AnyCPU
- DCC32
- ..\..\Output\Debug\Servidor\FactuGES_Server.exe
-
-
- 7.0
- False
- False
- 0
- 3
- ..\..\Output\Release\Servidor
- RELEASE
-
-
- 7.0
- 3
- ..\..\Output\Debug\Servidor
- DEBUG;
- True
-
-
- Delphi.Personality
-
-
-FalseTrueFalseTrueFalse2370FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.7.0FactuGES (Servidor)2.3.7.0miércoles, 14 de octubre de 2009 13:26
-
-
-
-
-
-
-
-
- FastQueryBuilder 1.03
- JVCL Unified Interbase Components
- FactuGES_Server.dpr
-
-
-
-
- MainSource
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDARemoteService
-
-
-
- TRORemoteDataModule
-
-
-
-
-
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDARemoteService
-
-
-
-
-
-
-
-
-
- TDataModule
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
-
-
- TDataModule
-
-
-
- TDARemoteService
-
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataModule
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataModule
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
- TDataModule
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
- TDataModule
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDataAbstractService
-
-
-
- TFrame
-
-
-
- TFrame
-
-
-
- TForm
-
-
-
- TFrame
-
-
-
- TDARemoteService
-
-
-
-
-
-
- TDataModule
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ {ebdcd25d-40d7-4146-91ec-a0ea4aa1dcd1}
+ FactuGES_Server.dpr
+ Debug
+ AnyCPU
+ DCC32
+ ..\..\Output\Debug\Servidor\FactuGES_Server.exe
+
+
+ 7.0
+ False
+ False
+ 0
+ 3
+ ..\..\Output\Release\Servidor
+ RELEASE
+
+
+ 7.0
+ 3
+ ..\..\Output\Debug\Servidor
+ DEBUG;
+ True
+
+
+ Delphi.Personality
+
+
+ FalseTrueFalseTrueFalse2380FalseFalseFalseFalseFalse30821252Rodax Software S.L.2.3.8.0FactuGES (Servidor)2.3.8.0lunes, 26 de octubre de 2009 18:37
+ FastQueryBuilder 1.03
+ JVCL Unified Interbase Components
+ FactuGES_Server.dpr
+
+
+
+
+ MainSource
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDARemoteService
+
+
+
+ TRORemoteDataModule
+
+
+
+
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+ TFrame
+
+
+
+ TFrame
+
+
+
+ TForm
+
+
+
+ TFrame
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+ TDataModule
+
+
+
+
+
+
+
+
+
+
+
+
+