diff --git a/Build/Build.fbp5 b/Build/Build.fbp5
index 14cbe849..952854ab 100644
--- a/Build/Build.fbp5
+++ b/Build/Build.fbp5
@@ -16180,6 +16180,134 @@ Comments=
True
+
diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql
index e9b04e5f..071ec540 100644
--- a/Database/scripts/factuges.sql
+++ b/Database/scripts/factuges.sql
@@ -395,36 +395,20 @@ BEGIN
EXIT;
END^
-
-CREATE PROCEDURE PRO_PRES_CAPITULOS (
- aid integer)
+CREATE PROCEDURE PROC_PRE_CON_CAPITULOS (
+ aid integer, tipo varchar(15))
as
begin
exit;
end^
-CREATE PROCEDURE PRO_PRES_CAPITULOS_CONCEPTOS (
- aid integer)
+CREATE PROCEDURE PROC_PRE_CON_CAPITULOS_CONCEP(
+ aid integer, tipo varchar(15))
as
begin
exit;
end^
-CREATE PROCEDURE PRO_PRES_CAPITULOS_TOTALES (
- aid integer)
-as
-begin
-exit;
-end^
-
-CREATE PROCEDURE PRO_PRES_RESUMEN (
- aid integer)
-as
-begin
-exit;
-end^
-
-
SET TERM ; ^
@@ -5165,11 +5149,11 @@ begin
end
^
-ALTER PROCEDURE PRO_PRES_CAPITULOS (
- aid integer)
+ALTER PROCEDURE PROC_PRE_CON_CAPITULOS (
+ aid integer, tipo varchar(15))
returns (
id integer,
- id_presupuesto integer,
+ id_pre_con integer,
posicion integer,
tipo_detalle varchar(25),
concepto varchar(2000),
@@ -5209,77 +5193,129 @@ begin
tipo_detalle_aux = 'Titulo';
tipo_articulo_aux = 'NA';
- /* ¿Existe el presupuesto? */
- for select count(*)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- into :num_filas
- do
+ if (TIPO = 'Presupuesto') then
begin
+ /* ¿Existe el presupuesto? */
+ for select count(*)
+ from presupuestos_cliente_detalles
+ where id_presupuesto = :AID
+ into :num_filas
+ do
+ begin
if (num_filas = 0) then
- suspend;
+ suspend;
+ end
+ end
+ else if (TIPO = 'Contrato') then
+ begin
+ /* ¿Existe el contrato? */
+ for select count(*)
+ from contratos_cliente_detalles
+ where id_contrato = :AID
+ into :num_filas
+ do
+ begin
+ if (num_filas = 0) then
+ suspend;
+ end
end
- for select id, id_presupuesto, posicion, tipo_detalle, tipo_articulo, F_RTFTOTEXT(concepto) as concepto,
- coalesce(descuento,0), coalesce(importe_total,0), coalesce(visible, 1)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- order by id_presupuesto, posicion
- into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :TIPO_ARTICULO, :CONCEPTO,
- :DESCUENTO, :IMPORTE_TOTAL, :VISIBLE
- do
+ if (TIPO = 'Presupuesto') then
begin
- contador = contador + 1;
-
- /*CONCEPTO*/
- if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
+ for select id, id_presupuesto, posicion, tipo_detalle, tipo_articulo, F_RTFTOTEXT(concepto) as concepto,
+ coalesce(descuento,0), coalesce(importe_total,0), coalesce(visible, 1)
+ from presupuestos_cliente_detalles
+ where id_presupuesto = :AID
+ order by id_presupuesto, posicion
+ into :ID, :ID_PRE_CON, :POSICION, :TIPO_DETALLE, :TIPO_ARTICULO, :CONCEPTO,
+ :DESCUENTO, :IMPORTE_TOTAL, :VISIBLE
+ do
begin
- /*Escribimos capitulo anterior*/
- if ((Importe_total > 0) and
- ((ultimo_tipo_detalle = 'Descuento')
- or (ultimo_tipo_detalle = 'Subtotal'))) then
- begin
- Importe_aux = Importe_total;
- id = id_aux;
- posicion = posicion_aux;
- tipo_detalle = tipo_detalle_aux;
- tipo_articulo = tipo_articulo_aux;
- concepto = concepto_aux;
- importe_total = total_acumulado;
- importe_descuento = importe_descuento_aux;
- descuento = descuento_aux;
- visible = 1;
- suspend;
- total_acumulado = 0.0;
- importe_descuento_aux = 0.0;
- descuento_aux = 0.0;
- /*Inicializamos*/
- ID_AUX = -1;
- posicion_aux = -1;
- concepto_aux = 'General';
- tipo_detalle_aux = 'Titulo';
- tipo_articulo_aux = 'NA';
- importe_total = Importe_aux;
- end
+ contador = contador + 1;
- total_acumulado = total_acumulado + importe_total;
- ultimo_tipo_detalle = tipo_detalle;
- end
+ /*CONCEPTO*/
+ if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
+ begin
+ /*Escribimos capitulo anterior*/
+ if ((Importe_total > 0)
+ and ((ultimo_tipo_detalle = 'Descuento') or (ultimo_tipo_detalle = 'Subtotal'))) then
+ begin
+ Importe_aux = Importe_total;
+ id = id_aux;
+ posicion = posicion_aux;
+ tipo_detalle = tipo_detalle_aux;
+ tipo_articulo = tipo_articulo_aux;
+ concepto = concepto_aux;
+ importe_total = total_acumulado;
+ importe_descuento = importe_descuento_aux;
+ descuento = descuento_aux;
+ visible = 1;
+ suspend;
+ total_acumulado = 0.0;
+ importe_descuento_aux = 0.0;
+ descuento_aux = 0.0;
+ /*Inicializamos*/
+ ID_AUX = -1;
+ posicion_aux = -1;
+ concepto_aux = 'General';
+ tipo_detalle_aux = 'Titulo';
+ tipo_articulo_aux = 'NA';
+ importe_total = Importe_aux;
+ end
- /*TITULO*/
- else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
- begin
- ultimo_tipo_detalle = tipo_detalle;
+ total_acumulado = total_acumulado + importe_total;
+ ultimo_tipo_detalle = tipo_detalle;
+ end
- id_aux_temp = id;
- posicion_aux_temp = posicion;
- tipo_detalle_aux_temp = tipo_detalle;
- tipo_articulo_aux_temp = tipo_articulo;
- concepto_aux_temp = concepto;
+ /*TITULO*/
+ else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
+ begin
+ ultimo_tipo_detalle = tipo_detalle;
+ id_aux_temp = id;
+ posicion_aux_temp = posicion;
+ tipo_detalle_aux_temp = tipo_detalle;
+ tipo_articulo_aux_temp = tipo_articulo;
+ concepto_aux_temp = concepto;
- /*Escribimos capitulo anterior*/
- if (id_aux > 0) then
+ /*Escribimos capitulo anterior*/
+ if (id_aux > 0) then
+ begin
+ id = id_aux;
+ posicion = posicion_aux;
+ tipo_detalle = tipo_detalle_aux;
+ tipo_articulo = tipo_articulo_aux;
+ concepto = concepto_aux;
+ importe_total = total_acumulado;
+ importe_descuento = importe_descuento_aux;
+ descuento = descuento_aux;
+ visible = 1;
+ suspend;
+ total_acumulado = 0.0;
+ importe_descuento_aux = 0.0;
+ descuento_aux = 0.0;
+ end
+
+ id_aux = id_aux_temp;
+ posicion_aux = posicion_aux_temp;
+ tipo_detalle_aux = tipo_detalle_aux_temp;
+ tipo_articulo_aux = tipo_articulo_aux_temp;
+ concepto_aux = concepto_aux_temp;
+ end
+
+ /*SUBTOTAL*/
+ else if (tipo_detalle = 'Subtotal') then
+ begin
+ ultimo_tipo_detalle = tipo_detalle;
+ end
+ else if (tipo_detalle = 'Descuento') then
+ begin
+ ultimo_tipo_detalle = tipo_detalle;
+ importe_descuento_aux = importe_total;
+ descuento_aux = descuento;
+ end
+
+ if (contador = num_filas) then
begin
id = id_aux;
posicion = posicion_aux;
@@ -5291,33 +5327,106 @@ begin
descuento = descuento_aux;
visible = 1;
suspend;
- total_acumulado = 0.0;
- importe_descuento_aux = 0.0;
- descuento_aux = 0.0;
+ break;
+ end
+ end
+ end
+ else if (TIPO = 'Contrato') then
+ begin
+ for select id, id_contrato, posicion, tipo_detalle, tipo_articulo, F_RTFTOTEXT(concepto) as concepto,
+ coalesce(descuento,0), coalesce(importe_total,0), coalesce(visible, 1)
+ from contratos_cliente_detalles
+ where id_contrato = :AID
+ order by id_contrato, posicion
+ into :ID, :ID_PRE_CON, :POSICION, :TIPO_DETALLE, :TIPO_ARTICULO, :CONCEPTO,
+ :DESCUENTO, :IMPORTE_TOTAL, :VISIBLE
+ do
+ begin
+ contador = contador + 1;
+
+ /*CONCEPTO*/
+ if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
+ begin
+ /*Escribimos capitulo anterior*/
+ if ((Importe_total > 0)
+ and ((ultimo_tipo_detalle = 'Descuento') or (ultimo_tipo_detalle = 'Subtotal'))) then
+ begin
+ Importe_aux = Importe_total;
+ id = id_aux;
+ posicion = posicion_aux;
+ tipo_detalle = tipo_detalle_aux;
+ tipo_articulo = tipo_articulo_aux;
+ concepto = concepto_aux;
+ importe_total = total_acumulado;
+ importe_descuento = importe_descuento_aux;
+ descuento = descuento_aux;
+ visible = 1;
+ suspend;
+ total_acumulado = 0.0;
+ importe_descuento_aux = 0.0;
+ descuento_aux = 0.0;
+ /*Inicializamos*/
+ ID_AUX = -1;
+ posicion_aux = -1;
+ concepto_aux = 'General';
+ tipo_detalle_aux = 'Titulo';
+ tipo_articulo_aux = 'NA';
+ importe_total = Importe_aux;
+ end
+
+ total_acumulado = total_acumulado + importe_total;
+ ultimo_tipo_detalle = tipo_detalle;
end
- id_aux = id_aux_temp;
- posicion_aux = posicion_aux_temp;
- tipo_detalle_aux = tipo_detalle_aux_temp;
- tipo_articulo_aux = tipo_articulo_aux_temp;
- concepto_aux = concepto_aux_temp;
- end
+ /*TITULO*/
+ else if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
+ begin
+ ultimo_tipo_detalle = tipo_detalle;
+ id_aux_temp = id;
+ posicion_aux_temp = posicion;
+ tipo_detalle_aux_temp = tipo_detalle;
+ tipo_articulo_aux_temp = tipo_articulo;
+ concepto_aux_temp = concepto;
- /*SUBTOTAL*/
- else if (tipo_detalle = 'Subtotal') then
- begin
- ultimo_tipo_detalle = tipo_detalle;
- end
+ /*Escribimos capitulo anterior*/
+ if (id_aux > 0) then
+ begin
+ id = id_aux;
+ posicion = posicion_aux;
+ tipo_detalle = tipo_detalle_aux;
+ tipo_articulo = tipo_articulo_aux;
+ concepto = concepto_aux;
+ importe_total = total_acumulado;
+ importe_descuento = importe_descuento_aux;
+ descuento = descuento_aux;
+ visible = 1;
+ suspend;
+ total_acumulado = 0.0;
+ importe_descuento_aux = 0.0;
+ descuento_aux = 0.0;
+ end
- else if (tipo_detalle = 'Descuento') then
- begin
- ultimo_tipo_detalle = tipo_detalle;
- importe_descuento_aux = importe_total;
- descuento_aux = descuento;
- end
+ id_aux = id_aux_temp;
+ posicion_aux = posicion_aux_temp;
+ tipo_detalle_aux = tipo_detalle_aux_temp;
+ tipo_articulo_aux = tipo_articulo_aux_temp;
+ concepto_aux = concepto_aux_temp;
+ end
- if (contador = num_filas) then
- begin
+ /*SUBTOTAL*/
+ else if (tipo_detalle = 'Subtotal') then
+ begin
+ ultimo_tipo_detalle = tipo_detalle;
+ end
+ else if (tipo_detalle = 'Descuento') then
+ begin
+ ultimo_tipo_detalle = tipo_detalle;
+ importe_descuento_aux = importe_total;
+ descuento_aux = descuento;
+ end
+
+ if (contador = num_filas) then
+ begin
id = id_aux;
posicion = posicion_aux;
tipo_detalle = tipo_detalle_aux;
@@ -5329,16 +5438,17 @@ begin
visible = 1;
suspend;
break;
+ end
end
end
-end;
-^
+end^
-ALTER PROCEDURE PRO_PRES_CAPITULOS_CONCEPTOS (
- aid integer)
+ALTER PROCEDURE PROC_PRE_CON_CAPITULOS_CONCEP (
+ aid integer,
+ tipo varchar(15))
returns (
id integer,
- id_presupuesto integer,
+ id_pre_con integer,
posicion integer,
tipo_detalle varchar(25),
id_capitulo integer,
@@ -5357,248 +5467,86 @@ declare variable capitulo_actual integer;
begin
capitulo_actual = -1;
ID_CAPITULO = -1;
-for select pre.id, pre.id_presupuesto, pre.posicion, pre.tipo_detalle,
- coalesce(pre.tipo_articulo,'NA'), pre.id_articulo, presupuestos_propiedades.descripcion,
+
+if (TIPO = 'Presupuesto') then
+begin
+ for select pre.id, pre.id_presupuesto, pre.posicion, pre.tipo_detalle,
+ coalesce(pre.tipo_articulo,'NA'), pre.id_articulo, presupuestos_propiedades.descripcion,
/* F_RTFTOTEXT(F_RTFTOTEXT(pre.CONCEPTO)) as CONCEPTO,*/
- pre.CONCEPTO,
- pre.cantidad,
- case
- when (pre.descuento <> 0) then (pre.importe_total / pre.cantidad)
- else pre.importe_unidad
- end as importe_unidad,
- pre.descuento, pre.importe_porte,
- pre.importe_total, coalesce(pre.visible, 1)
- from presupuestos_cliente_detalles pre
- left join presupuestos_propiedades on (pre.id_articulo = presupuestos_propiedades.id)
- where pre.id_presupuesto = :AID
- order by pre.id_presupuesto, pre.posicion
- into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE,
- :TIPO_ARTICULO, :ID_ARTICULO, :PROPIEDAD, :CONCEPTO, :CANTIDAD,
- :IMPORTE_UNIDAD, :DESCUENTO, :IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
-do
+ pre.CONCEPTO,
+ pre.cantidad,
+ case
+ when (pre.descuento <> 0) then (pre.importe_total / pre.cantidad)
+ else pre.importe_unidad
+ end as importe_unidad,
+ pre.descuento, pre.importe_porte,
+ pre.importe_total, coalesce(pre.visible, 1)
+ from presupuestos_cliente_detalles pre
+ left join presupuestos_propiedades on (pre.id_articulo = presupuestos_propiedades.id)
+ where pre.id_presupuesto = :AID
+ order by pre.id_presupuesto, pre.posicion
+ into :ID, :ID_PRE_CON, :POSICION, :TIPO_DETALLE,
+ :TIPO_ARTICULO, :ID_ARTICULO, :PROPIEDAD, :CONCEPTO, :CANTIDAD,
+ :IMPORTE_UNIDAD, :DESCUENTO, :IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
+ do
+ begin
+ if (:tipo_detalle = 'Titulo') then
begin
- if (:tipo_detalle = 'Titulo') then
- begin
- capitulo_actual = :ID;
- ID_CAPITULO = capitulo_actual;
- end
- else if ((:tipo_detalle = 'Subtotal')
- or (:tipo_detalle = 'Descuento')) then
- begin
- capitulo_actual = -1;
- ID_CAPITULO = capitulo_actual;
- end
- else
- if (:tipo_detalle = 'Concepto') then
- begin
- suspend;
- end
+ capitulo_actual = :ID;
+ ID_CAPITULO = capitulo_actual;
end
-end;
-^
-
-ALTER PROCEDURE PRO_PRES_CAPITULOS_TOTALES (
- aid integer)
-returns (
- id integer,
- id_presupuesto integer,
- posicion integer,
- tipo_detalle varchar(25),
- concepto varchar(2000),
- importe_total numeric(11,2),
- visible smallint,
- tipo_articulo varchar(2))
-as
-declare variable num_filas integer;
-declare variable contador integer;
-declare variable existe numeric(11,2);
-declare variable total_acumulado numeric(11,2);
+ else if ((:tipo_detalle = 'Subtotal')
+ or (:tipo_detalle = 'Descuento')) then
+ begin
+ capitulo_actual = -1;
+ ID_CAPITULO = capitulo_actual;
+ end
+ else if (:tipo_detalle = 'Concepto') then
+ begin
+ suspend;
+ end
+ end
+end
+else if (TIPO = 'Contrato') then
begin
- existe = 0;
- total_acumulado = 0.0;
- contador = 0;
- num_filas = 0;
-
- /* ¿Existe el presupuesto? */
- for select count(*)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- into :num_filas
- do
+ for select pre.id, pre.id_contrato, pre.posicion, pre.tipo_detalle,
+ coalesce(pre.tipo_articulo,'NA'), pre.id_articulo, presupuestos_propiedades.descripcion,
+/* F_RTFTOTEXT(F_RTFTOTEXT(pre.CONCEPTO)) as CONCEPTO,*/
+ pre.CONCEPTO,
+ pre.cantidad,
+ case
+ when (pre.descuento <> 0) then (pre.importe_total / pre.cantidad)
+ else pre.importe_unidad
+ end as importe_unidad,
+ pre.descuento, pre.importe_porte,
+ pre.importe_total, coalesce(pre.visible, 1)
+ from contratos_cliente_detalles pre
+ left join presupuestos_propiedades on (pre.id_articulo = presupuestos_propiedades.id)
+ where pre.id_contrato = :AID
+ order by pre.id_contrato, pre.posicion
+ into :ID, :ID_PRE_CON, :POSICION, :TIPO_DETALLE,
+ :TIPO_ARTICULO, :ID_ARTICULO, :PROPIEDAD, :CONCEPTO, :CANTIDAD,
+ :IMPORTE_UNIDAD, :DESCUENTO, :IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
+ do
+ begin
+ if (:tipo_detalle = 'Titulo') then
begin
- if (num_filas = 0) then
- suspend;
+ capitulo_actual = :ID;
+ ID_CAPITULO = capitulo_actual;
end
-
- /* Ver si hay conceptos al principio sin capitulos */
- for select id, id_presupuesto, posicion, tipo_detalle, tipo_articulo
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- order by id_presupuesto, posicion
- rows 1
- into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :TIPO_ARTICULO
- do
+ else if ((:tipo_detalle = 'Subtotal')
+ or (:tipo_detalle = 'Descuento')) then
begin
- if (TIPO_DETALLE = 'Concepto') then
- EXISTE = 1;
+ capitulo_actual = -1;
+ ID_CAPITULO = capitulo_actual;
end
-
- if (existe = 1) then
+ else if (:tipo_detalle = 'Concepto') then
begin
- contador = 0;
- /* Existen conceptos sin capitulo */
- for select tipo_detalle, tipo_articulo, importe_total, coalesce(visible, 1)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- order by id_presupuesto, posicion
- into :TIPO_DETALLE, :TIPO_ARTICULO, :IMPORTE_TOTAL, :VISIBLE
- do
- begin
- contador = contador + 1;
-
- if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
- total_acumulado = total_acumulado + importe_total;
-
- if ((tipo_detalle <> 'Concepto') or (contador = num_filas)) then
- begin
- importe_total = total_acumulado;
- tipo_detalle = 'Titulo';
- concepto = 'General';
- visible = 1;
- ID = -1;
- posicion = -1;
- suspend;
- break;
- end
- end
+ suspend;
end
-
-
- for select id, id_presupuesto, posicion, tipo_detalle, tipo_articulo, F_RTFTOTEXT(concepto) as concepto,
- importe_total, coalesce(visible, 1)
- from presupuestos_cliente_detalles
- where ((tipo_detalle = 'Subtotal') or (tipo_detalle = 'Descuento')) and id_presupuesto = :AID
- order by id_presupuesto, posicion
- into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :TIPO_ARTICULO, :CONCEPTO,
- :IMPORTE_TOTAL, :VISIBLE
- do
- suspend;
-end;
-^
-
-ALTER PROCEDURE PRO_PRES_RESUMEN (
- aid integer)
-returns (
- id integer,
- id_presupuesto integer,
- posicion integer,
- tipo_detalle varchar(25),
- concepto varchar(2000),
- importe_total numeric(11,2),
- visible smallint)
-as
-declare variable num_capitulos integer;
-declare variable num_filas integer;
-declare variable contador integer;
-declare variable existe numeric(11,2);
-declare variable total_acumulado numeric(11,2);
-declare variable concepto_capitulo varchar(2000);
-declare variable tipo varchar(25);
-begin
- existe = 0;
- total_acumulado = 0.0;
- contador = 0;
- num_filas = 0;
- num_capitulos = 0;
- concepto_capitulo = '';
- tipo = '';
-
- /* ¿Existe el presupuesto? */
- for select count(*)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- into :num_filas
- do
- begin
- if (num_filas = 0) then
- suspend;
- end
-
- /* Ver si hay conceptos al principio sin capitulos */
- for select id, id_presupuesto, posicion, tipo_detalle
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- order by id_presupuesto, posicion
- rows 1
- into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE
- do
- begin
- if (TIPO_DETALLE = 'Concepto') then
- EXISTE = 1;
- end
-
- num_capitulos = 1;
- if (existe = 1) then
- begin
- contador = 0;
- /* Existen conceptos sin capitulo */
- for select tipo_detalle, coalesce(importe_total,0), coalesce(visible, 1)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID
- order by id_presupuesto, posicion
- into :TIPO_DETALLE, :IMPORTE_TOTAL, :VISIBLE
- do
- begin
- contador = contador + 1;
-
- if ((visible <> 0) and (tipo_detalle = 'Concepto')) then
- total_acumulado = total_acumulado + importe_total;
-
- if ((tipo_detalle <> 'Concepto') or (contador = num_filas)) then
- begin
- importe_total = total_acumulado;
- tipo_detalle = 'Titulo';
- if (num_capitulos > 1) then
- concepto = 'CAPÍTULO ' || num_capitulos ||'. General';
- else
- concepto = 'General';
- visible = 1;
- ID = -1;
- posicion = -1;
- suspend;
- break;
- end
- end
- end
-
- /* Tratar el resto de las filas */
- for select id, id_presupuesto, posicion, tipo_detalle,
- F_RTFTOTEXT(concepto) as concepto, coalesce(importe_total,0), coalesce(visible, 1)
- from presupuestos_cliente_detalles
- where id_presupuesto = :AID and
- tipo_detalle in ('Titulo', 'Titulo opcional', 'Subtotal')
- order by posicion
- into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :CONCEPTO,
- :IMPORTE_TOTAL, :VISIBLE
- do
- begin
- contador = contador + 1;
- if ((tipo_detalle = 'Titulo') or (tipo_detalle = 'Titulo opcional')) then
- begin
- concepto_capitulo = concepto;
- tipo = tipo_detalle;
- end
- if (tipo_detalle = 'Subtotal') then
- begin
- concepto = 'CAPÍTULO ' || num_capitulos || '. ' || concepto_capitulo;
- tipo_detalle = tipo;
- num_capitulos = num_capitulos + 1;
- suspend;
- end
- end
-end;
-^
-
+ end
+end
+end^
SET TERM ; ^
diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index 9391e310..b36f21a8 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -44,13 +44,6 @@
Package
FalseTrueFalseLibreria base de FactuGESFalseFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0
-
-
-
-
-
-
-
VCL for the Web Design Package for CodeGear RAD Studio
CodeGear WebSnap Components
CodeGear SOAP Components
@@ -65,52 +58,52 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
TForm
diff --git a/Source/Base/Base.res b/Source/Base/Base.res
index 8b251f31..1641339f 100644
Binary files a/Source/Base/Base.res and b/Source/Base/Base.res differ
diff --git a/Source/Informes/1/InfContratoCliente.fr3 b/Source/Informes/1/InfContratoCliente.fr3
new file mode 100644
index 00000000..a88134f8
--- /dev/null
+++ b/Source/Informes/1/InfContratoCliente.fr3
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+