diff --git a/Database/FACTUGES.FDB b/Database/FACTUGES.FDB
new file mode 100644
index 00000000..9f26c664
Binary files /dev/null and b/Database/FACTUGES.FDB differ
diff --git a/Database/scripts/factuges.sql b/Database/scripts/factuges.sql
index 3e263068..76893ad1 100644
--- a/Database/scripts/factuges.sql
+++ b/Database/scripts/factuges.sql
@@ -1,5 +1,5 @@
/******************************************************************************/
-/**** Generated by IBExpert 2007.05.03 12/11/2007 21:23:54 ****/
+/**** Generated by IBExpert 2007.05.03 11/12/2007 16:51:58 ****/
/******************************************************************************/
SET SQL DIALECT 3;
@@ -11,7 +11,6 @@ PAGE_SIZE 4096
DEFAULT CHARACTER SET ISO8859_1;
-
/******************************************************************************/
/**** User Defined Functions ****/
/******************************************************************************/
@@ -22,7 +21,7 @@ DECLARE EXTERNAL FUNCTION F_RTFTOTEXT
ENTRY_POINT 'RtfToText' MODULE_NAME 'udf_RtfToText.dll';
-DECLARE EXTERNAL FUNCTION MOD
+DECLARE EXTERNAL FUNCTION "MOD"
INTEGER,
INTEGER
RETURNS DOUBLE PRECISION BY VALUE
@@ -116,7 +115,7 @@ CREATE GENERATOR GEN_CONTACTOS_DATOS_BANCO_ID;
SET GENERATOR GEN_CONTACTOS_DATOS_BANCO_ID TO 0;
CREATE GENERATOR GEN_CONTACTOS_DIR_ID;
-SET GENERATOR GEN_CONTACTOS_DIR_ID TO 3;
+SET GENERATOR GEN_CONTACTOS_DIR_ID TO 5;
CREATE GENERATOR GEN_CONTACTOS_ID;
SET GENERATOR GEN_CONTACTOS_ID TO 2001;
@@ -201,6 +200,57 @@ SET GENERATOR GEN_USUARIOS_ID TO 0;
+SET TERM ^ ;
+
+
+
+/******************************************************************************/
+/**** Stored Procedures ****/
+/******************************************************************************/
+
+CREATE PROCEDURE PRO_PRES_CAPITULOS (
+ AID INTEGER)
+RETURNS (
+ ID INTEGER,
+ ID_PRESUPUESTO INTEGER,
+ POSICION INTEGER,
+ TIPO_DETALLE VARCHAR(10),
+ CONCEPTO VARCHAR(2000),
+ IMPORTE_TOTAL NUMERIC(11,2),
+ VISIBLE SMALLINT)
+AS
+BEGIN
+ SUSPEND;
+END^
+
+
+CREATE PROCEDURE PRO_PRES_CAPITULOS_CONCEPTOS (
+ AID INTEGER)
+RETURNS (
+ ID INTEGER,
+ ID_PRESUPUESTO INTEGER,
+ POSICION INTEGER,
+ TIPO_DETALLE VARCHAR(10),
+ ID_CAPITULO INTEGER,
+ ID_ARTICULO INTEGER,
+ REFERENCIA VARCHAR(255),
+ CONCEPTO VARCHAR(2000),
+ CANTIDAD INTEGER,
+ IMPORTE_UNIDAD NUMERIC(11,2),
+ DESCUENTO FLOAT,
+ IMPORTE_PORTE NUMERIC(11,2),
+ IMPORTE_TOTAL NUMERIC(11,2),
+ VISIBLE SMALLINT)
+AS
+BEGIN
+ SUSPEND;
+END^
+
+
+
+SET TERM ; ^
+
+
/******************************************************************************/
/**** Tables ****/
/******************************************************************************/
@@ -214,6 +264,7 @@ CREATE TABLE AGENTES_COMISIONES (
COMISION TIPO_PORCENTAJE DEFAULT 0
);
+
CREATE TABLE ALBARANES_CLIENTE (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -250,6 +301,7 @@ CREATE TABLE ALBARANES_CLIENTE (
REFERENCIA_CLIENTE VARCHAR(255) COLLATE ES_ES
);
+
CREATE TABLE ALBARANES_CLIENTE_DETALLES (
ID TIPO_ID NOT NULL,
ID_ALBARAN TIPO_ID NOT NULL,
@@ -267,6 +319,7 @@ CREATE TABLE ALBARANES_CLIENTE_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE ALBARANES_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -301,6 +354,7 @@ CREATE TABLE ALBARANES_PROVEEDOR (
REF_FACTURA_PROV VARCHAR(255)
);
+
CREATE TABLE ALBARANES_PROVEEDOR_DETALLES (
ID TIPO_ID NOT NULL,
ID_ALBARAN TIPO_ID NOT NULL,
@@ -318,6 +372,7 @@ CREATE TABLE ALBARANES_PROVEEDOR_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE ALMACENES (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID NOT NULL,
@@ -336,6 +391,7 @@ CREATE TABLE ALMACENES (
USUARIO TIPO_USUARIO
);
+
CREATE TABLE ARTICULOS (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -357,11 +413,13 @@ CREATE TABLE ARTICULOS (
ELIMINADO TIPO_BOOLEANO
);
+
CREATE TABLE CATEGORIAS (
ID TIPO_ID NOT NULL,
CATEGORIA VARCHAR(255) NOT NULL
);
+
CREATE TABLE CLIENTES_DATOS (
ID_CLIENTE TIPO_ID NOT NULL,
ID_AGENTE TIPO_ID,
@@ -379,6 +437,7 @@ CREATE TABLE CLIENTES_DATOS (
CODIGO_ASIGNADO VARCHAR(255)
);
+
CREATE TABLE CLIENTES_DTOS_PROVEEDORES (
ID TIPO_ID NOT NULL,
ID_CLIENTE TIPO_ID DEFAULT 0 NOT NULL,
@@ -386,10 +445,12 @@ CREATE TABLE CLIENTES_DTOS_PROVEEDORES (
DESCUENTO TIPO_PORCENTAJE DEFAULT 0
);
+
CREATE TABLE CLIENTES_GRUPOS (
DESCRIPCION VARCHAR(255)
);
+
CREATE TABLE COMISIONES_LIQUIDADAS (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -403,12 +464,14 @@ CREATE TABLE COMISIONES_LIQUIDADAS (
USUARIO TIPO_USUARIO
);
+
CREATE TABLE CONFIGURACION (
CODIGO VARCHAR(50) NOT NULL,
VALOR VARCHAR(255) NOT NULL,
ID_EMPRESA TIPO_ID
);
+
CREATE TABLE CONTACTOS (
ID TIPO_ID NOT NULL,
NIF_CIF VARCHAR(15),
@@ -433,11 +496,13 @@ CREATE TABLE CONTACTOS (
PERSONA_CONTACTO VARCHAR(255)
);
+
CREATE TABLE CONTACTOS_CATEGORIAS (
ID_CONTACTO TIPO_ID NOT NULL,
ID_CATEGORIA TIPO_ID NOT NULL
);
+
CREATE TABLE CONTACTOS_DATOS_BANCO (
ID TIPO_ID NOT NULL,
ID_CONTACTO TIPO_ID NOT NULL,
@@ -450,6 +515,7 @@ CREATE TABLE CONTACTOS_DATOS_BANCO (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE CONTACTOS_DIRECCIONES (
ID TIPO_ID NOT NULL,
ID_CONTACTO TIPO_ID NOT NULL,
@@ -469,6 +535,7 @@ CREATE TABLE CONTACTOS_DIRECCIONES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE EMPLEADOS_DATOS (
ID_EMPLEADO TIPO_ID NOT NULL,
FECHA_NACIMIENTO DATE,
@@ -480,10 +547,12 @@ CREATE TABLE EMPLEADOS_DATOS (
EXPERIENCIA TIPO_NOTAS
);
+
CREATE TABLE EMPLEADOS_GRUPOS (
DESCRIPCION VARCHAR(255)
);
+
CREATE TABLE EMPRESAS (
ID TIPO_ID NOT NULL,
NIF_CIF VARCHAR(15),
@@ -510,11 +579,13 @@ CREATE TABLE EMPRESAS (
IVA TIPO_PORCENTAJE
);
+
CREATE TABLE EMPRESAS_CONTACTOS (
ID_EMPRESA TIPO_ID NOT NULL,
ID_CONTACTO TIPO_ID NOT NULL
);
+
CREATE TABLE EMPRESAS_DATOS_BANCO (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID NOT NULL,
@@ -527,21 +598,25 @@ CREATE TABLE EMPRESAS_DATOS_BANCO (
SUFIJO_N58 VARCHAR(3)
);
+
CREATE TABLE EMPRESAS_USUARIOS (
ID_EMPRESA TIPO_ID NOT NULL,
ID_USUARIO TIPO_ID NOT NULL
);
+
CREATE TABLE F_PERFILES (
ID TIPO_ID NOT NULL,
PERFIL TIPO_PERFIL NOT NULL
);
+
CREATE TABLE F_PERFILES_USUARIOS (
ID_PERFIL TIPO_ID NOT NULL,
ID_USUARIO TIPO_ID NOT NULL
);
+
CREATE TABLE F_USUARIOS (
ID TIPO_ID NOT NULL,
USUARIO TIPO_USUARIO NOT NULL,
@@ -550,6 +625,7 @@ CREATE TABLE F_USUARIOS (
PASS VARCHAR(10)
);
+
CREATE TABLE FACTURAS_CLIENTE (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -582,6 +658,7 @@ CREATE TABLE FACTURAS_CLIENTE (
ID_COMISION_LIQUIDADA TIPO_ID
);
+
CREATE TABLE FACTURAS_CLIENTE_DETALLES (
ID TIPO_ID NOT NULL,
ID_FACTURA TIPO_ID NOT NULL,
@@ -599,6 +676,7 @@ CREATE TABLE FACTURAS_CLIENTE_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE FACTURAS_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -631,6 +709,7 @@ CREATE TABLE FACTURAS_PROVEEDOR (
RECARGO_EQUIVALENCIA TIPO_BOOLEANO
);
+
CREATE TABLE FACTURAS_PROVEEDOR_DETALLES (
ID TIPO_ID NOT NULL,
ID_FACTURA TIPO_ID NOT NULL,
@@ -648,10 +727,12 @@ CREATE TABLE FACTURAS_PROVEEDOR_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE FAMILIAS (
DESCRIPCION VARCHAR(255)
);
+
CREATE TABLE FORMAS_PAGO (
ID TIPO_ID NOT NULL,
REFERENCIA VARCHAR(255),
@@ -663,6 +744,7 @@ CREATE TABLE FORMAS_PAGO (
CUENTA VARCHAR(15)
);
+
CREATE TABLE FORMAS_PAGO_PLAZOS (
ID TIPO_ID NOT NULL,
ID_FORMA_PAGO TIPO_ID NOT NULL,
@@ -670,6 +752,7 @@ CREATE TABLE FORMAS_PAGO_PLAZOS (
PORCENTAJE TIPO_PORCENTAJE
);
+
CREATE TABLE INFORMES (
ID SMALLINT NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -683,6 +766,7 @@ CREATE TABLE INFORMES (
VISTA BLOB SUB_TYPE 2 SEGMENT SIZE 4096
);
+
CREATE TABLE MOVIMIENTOS (
ID TIPO_ID NOT NULL,
ID_ALMACEN TIPO_ID,
@@ -693,6 +777,7 @@ CREATE TABLE MOVIMIENTOS (
CAUSA TIPO_CONCEPTO
);
+
CREATE TABLE PAGOS_CLIENTE (
ID TIPO_ID NOT NULL,
ID_RECIBO TIPO_ID,
@@ -708,6 +793,7 @@ CREATE TABLE PAGOS_CLIENTE (
USUARIO TIPO_USUARIO
);
+
CREATE TABLE PAGOS_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_RECIBO TIPO_ID,
@@ -723,6 +809,7 @@ CREATE TABLE PAGOS_PROVEEDOR (
USUARIO TIPO_USUARIO
);
+
CREATE TABLE PEDIDOS_CLIENTE (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -755,6 +842,7 @@ CREATE TABLE PEDIDOS_CLIENTE (
REFERENCIA_CLIENTE VARCHAR(255) COLLATE ES_ES
);
+
CREATE TABLE PEDIDOS_CLIENTE_DETALLES (
ID TIPO_ID NOT NULL,
ID_PEDIDO TIPO_ID NOT NULL,
@@ -772,6 +860,7 @@ CREATE TABLE PEDIDOS_CLIENTE_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE PEDIDOS_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -806,6 +895,7 @@ CREATE TABLE PEDIDOS_PROVEEDOR (
FECHA_ENVIO DATE
);
+
CREATE TABLE PEDIDOS_PROVEEDOR_DETALLES (
ID TIPO_ID NOT NULL,
ID_PEDIDO TIPO_ID NOT NULL,
@@ -823,6 +913,7 @@ CREATE TABLE PEDIDOS_PROVEEDOR_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE PERMISOS (
ID_USUARIO TIPO_ID,
MODULO VARCHAR(50),
@@ -830,6 +921,7 @@ CREATE TABLE PERMISOS (
CHECKSUM VARCHAR(250)
);
+
CREATE TABLE PERMISOSEX (
ID_USUARIO TIPO_ID,
MODULO VARCHAR(50),
@@ -838,6 +930,7 @@ CREATE TABLE PERMISOSEX (
CHECKSUM VARCHAR(250)
);
+
CREATE TABLE PRESUPUESTOS_CLIENTE (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -867,6 +960,7 @@ CREATE TABLE PRESUPUESTOS_CLIENTE (
CLIENTE_FINAL VARCHAR(255) COLLATE ES_ES
);
+
CREATE TABLE PRESUPUESTOS_CLIENTE_DETALLES (
ID TIPO_ID NOT NULL,
ID_PRESUPUESTO TIPO_ID NOT NULL,
@@ -884,6 +978,7 @@ CREATE TABLE PRESUPUESTOS_CLIENTE_DETALLES (
FECHA_MODIFICACION TIMESTAMP
);
+
CREATE TABLE PROVEEDORES_DATOS (
ID_PROVEEDOR TIPO_ID NOT NULL,
DESCUENTO TIPO_PORCENTAJE,
@@ -898,10 +993,12 @@ CREATE TABLE PROVEEDORES_DATOS (
HOMOLOGADO SMALLINT
);
+
CREATE TABLE PROVEEDORES_GRUPOS (
DESCRIPCION VARCHAR(255)
);
+
CREATE TABLE RECIBOS_CLIENTE (
ID TIPO_ID NOT NULL,
ID_FACTURA TIPO_ID,
@@ -919,6 +1016,7 @@ CREATE TABLE RECIBOS_CLIENTE (
ID_RECIBO_COMPENSADO INTEGER
);
+
CREATE TABLE RECIBOS_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_FACTURA TIPO_ID,
@@ -937,6 +1035,7 @@ CREATE TABLE RECIBOS_PROVEEDOR (
ID_RECIBO_COMPENSADO INTEGER
);
+
CREATE TABLE REFERENCIAS (
CODIGO VARCHAR(50) NOT NULL,
VALOR VARCHAR(255) NOT NULL,
@@ -944,6 +1043,7 @@ CREATE TABLE REFERENCIAS (
DESCRIPCION VARCHAR(255) COLLATE ES_ES
);
+
CREATE TABLE REMESAS_CLIENTE (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -958,6 +1058,7 @@ CREATE TABLE REMESAS_CLIENTE (
TIPO VARCHAR(40)
);
+
CREATE TABLE REMESAS_PROVEEDOR (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID,
@@ -972,6 +1073,7 @@ CREATE TABLE REMESAS_PROVEEDOR (
TIPO VARCHAR(40)
);
+
CREATE TABLE TIENDA_WEB (
ID TIPO_ID NOT NULL,
ID_EMPRESA TIPO_ID NOT NULL,
@@ -984,6 +1086,7 @@ CREATE TABLE TIENDA_WEB (
BDPASS VARCHAR(255)
);
+
CREATE TABLE TIPOS_IVA (
ID TIPO_ID NOT NULL,
REFERENCIA VARCHAR(255),
@@ -992,6 +1095,7 @@ CREATE TABLE TIPOS_IVA (
RE TIPO_PORCENTAJE
);
+
CREATE TABLE USUARIOS (
ID TIPO_ID NOT NULL,
USERNAME VARCHAR(30),
@@ -1007,6 +1111,7 @@ CREATE TABLE USUARIOS (
CHECKSUM VARCHAR(250)
);
+
CREATE TABLE USUARIOS_EVENTOS (
APLICACION VARCHAR(250),
ID_USUARIO TIPO_ID,
@@ -1019,6 +1124,7 @@ CREATE TABLE USUARIOS_EVENTOS (
TNAME VARCHAR(20)
);
+
CREATE TABLE USUARIOS_LOGON (
LOGONID CHAR(38) NOT NULL,
ID_USUARIO TIPO_ID,
@@ -1029,6 +1135,7 @@ CREATE TABLE USUARIOS_LOGON (
+
/******************************************************************************/
/**** Views ****/
/******************************************************************************/
@@ -2344,6 +2451,9 @@ LEFT JOIN V_REC_PRO_SITUACION RECIBO_COMPENSADO2
ON (RECIBO_COMPENSADO2.ID_RECIBO = RECIBOS_PROVEEDOR.ID_RECIBO_COMPENSADO)
;
+
+
+
/******************************************************************************/
/**** Primary Keys ****/
/******************************************************************************/
@@ -2486,3 +2596,145 @@ CREATE INDEX IDX_RECIBOS_PROVEEDOR ON RECIBOS_PROVEEDOR (ID_RECIBO_COMPENSADO);
CREATE INDEX IDX_REFERENCIAS ON REFERENCIAS (ID_EMPRESA);
CREATE INDEX IDX_REMESAS_CLIENTE ON REMESAS_CLIENTE (ID_DATOS_BANCO);
CREATE INDEX IDX_REMESAS_PROVEEDOR ON REMESAS_PROVEEDOR (ID_DATOS_BANCO);
+
+
+/******************************************************************************/
+/**** Stored Procedures ****/
+/******************************************************************************/
+
+
+SET TERM ^ ;
+
+ALTER PROCEDURE PRO_PRES_CAPITULOS (
+ AID INTEGER)
+RETURNS (
+ ID INTEGER,
+ ID_PRESUPUESTO INTEGER,
+ POSICION INTEGER,
+ TIPO_DETALLE VARCHAR(10),
+ CONCEPTO VARCHAR(2000),
+ IMPORTE_TOTAL NUMERIC(11,2),
+ VISIBLE SMALLINT)
+AS
+declare variable num_capitulos integer;
+declare variable existe numeric(11,2);
+declare variable total_acumulado numeric(11,2);
+begin
+ num_capitulos = 0;
+ existe = 0;
+ total_acumulado = 0.0;
+
+ /* ¿Existe el presupuesto? */
+ for select count(*)
+ from presupuestos_cliente_detalles
+ where id_presupuesto = :AID
+ into :EXISTE
+ do
+ begin
+ if (existe = 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
+
+ if (existe = 1) then
+ begin
+ /* Existen conceptos sin capitulo */
+ for select tipo_detalle, importe_total, coalesce(visible, 1)
+ from presupuestos_cliente_detalles
+ where id_presupuesto = :AID
+ order by id_presupuesto, posicion
+ into :TIPO_DETALLE, :IMPORTE_TOTAL, :VISIBLE
+ do
+ begin
+ if (tipo_detalle <> 'Concepto') then
+ begin
+ importe_total = total_acumulado;
+ tipo_detalle = 'Titulo';
+ concepto = 'General';
+ visible = 1;
+ ID = -1;
+ posicion = -1;
+ suspend;
+ break;
+ end
+ else begin
+ if (visible <> 0) then
+ total_acumulado = total_acumulado + importe_total;
+ end
+ end
+ end
+
+
+ for select id, id_presupuesto, posicion, tipo_detalle, concepto,
+ importe_total, coalesce(visible, 1)
+ from presupuestos_cliente_detalles
+ where tipo_detalle <> 'Concepto' and id_presupuesto = :AID
+ order by id_presupuesto, posicion
+ into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :CONCEPTO,
+ :IMPORTE_TOTAL, :VISIBLE
+ do
+ suspend;
+
+end
+^
+
+ALTER PROCEDURE PRO_PRES_CAPITULOS_CONCEPTOS (
+ AID INTEGER)
+RETURNS (
+ ID INTEGER,
+ ID_PRESUPUESTO INTEGER,
+ POSICION INTEGER,
+ TIPO_DETALLE VARCHAR(10),
+ ID_CAPITULO INTEGER,
+ ID_ARTICULO INTEGER,
+ REFERENCIA VARCHAR(255),
+ CONCEPTO VARCHAR(2000),
+ CANTIDAD INTEGER,
+ IMPORTE_UNIDAD NUMERIC(11,2),
+ DESCUENTO FLOAT,
+ IMPORTE_PORTE NUMERIC(11,2),
+ IMPORTE_TOTAL NUMERIC(11,2),
+ VISIBLE SMALLINT)
+AS
+declare variable capitulo_actual integer;
+begin
+capitulo_actual = -1;
+ID_CAPITULO = -1;
+for select pre.id, pre.id_presupuesto, pre.posicion, pre.tipo_detalle,
+ pre.id_articulo, articulos.referencia, pre.concepto, pre.cantidad,
+ pre.importe_unidad, pre.descuento, pre.importe_porte,
+ pre.importe_total, coalesce(pre.visible, 1)
+ from presupuestos_cliente_detalles pre
+ left join articulos on (pre.id_articulo = articulos.id)
+ where pre.id_presupuesto = :AID
+ order by pre.id_presupuesto, pre.posicion
+ into :ID, :ID_PRESUPUESTO, :POSICION, :TIPO_DETALLE, :ID_ARTICULO,
+ :REFERENCIA, :CONCEPTO, :CANTIDAD, :IMPORTE_UNIDAD, :DESCUENTO,
+ :IMPORTE_PORTE, :IMPORTE_TOTAL, :VISIBLE
+do
+ begin
+ if (:tipo_detalle <> 'Concepto') then
+ begin
+ capitulo_actual = :ID;
+ ID_CAPITULO = capitulo_actual;
+ end
+ else
+ suspend;
+ end
+end
+^
+
+
+SET TERM ; ^
\ No newline at end of file
diff --git a/Source/Base/Base.dproj b/Source/Base/Base.dproj
index 065b913c..3dcc8be0 100644
--- a/Source/Base/Base.dproj
+++ b/Source/Base/Base.dproj
@@ -60,56 +60,56 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
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/GUIBase/GUIBase.dpk b/Source/GUIBase/GUIBase.dpk
index 82c968ff..fe98cd83 100644
--- a/Source/GUIBase/GUIBase.dpk
+++ b/Source/GUIBase/GUIBase.dpk
@@ -65,6 +65,7 @@ contains
uEditorBasico in 'uEditorBasico.pas' {fEditorBasico},
uDialogBase in 'uDialogBase.pas' {fDialogBase},
uViewFiltroBase in 'uViewFiltroBase.pas' {frViewFiltroBase: TFrame},
- uViewGrid in 'uViewGrid.pas' {frViewGrid: TFrame};
+ uViewGrid in 'uViewGrid.pas' {frViewGrid: TFrame},
+ uViewRichEditor in 'uViewRichEditor.pas' {frViewRichEditor: TCustomView};
end.
diff --git a/Source/GUIBase/GUIBase.dproj b/Source/GUIBase/GUIBase.dproj
index 70b14487..ceaab69b 100644
--- a/Source/GUIBase/GUIBase.dproj
+++ b/Source/GUIBase/GUIBase.dproj
@@ -57,22 +57,22 @@
MainSource
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -155,6 +155,10 @@
TFrame
+
+
+ TCustomView
+
TFrame
diff --git a/Source/GUIBase/GUIBase.res b/Source/GUIBase/GUIBase.res
index 8b251f31..1641339f 100644
Binary files a/Source/GUIBase/GUIBase.res and b/Source/GUIBase/GUIBase.res differ
diff --git a/Source/GUIBase/uViewRichEditor.dfm b/Source/GUIBase/uViewRichEditor.dfm
new file mode 100644
index 00000000..0310a08d
--- /dev/null
+++ b/Source/GUIBase/uViewRichEditor.dfm
@@ -0,0 +1,1395 @@
+inherited frViewRichEditor: TfrViewRichEditor
+ Width = 635
+ Height = 401
+ OnCreate = CustomViewCreate
+ OnShow = CustomViewShow
+ ExplicitWidth = 635
+ ExplicitHeight = 401
+ object TBXDock1: TTBXDock
+ Left = 0
+ Top = 0
+ Width = 635
+ Height = 26
+ BackgroundOnToolbars = False
+ UseParentBackground = True
+ object TBXToolbar1: TTBXToolbar
+ Left = 0
+ Top = 0
+ Caption = 'TBXToolbar1'
+ DragHandleStyle = dhNone
+ Images = SmallImages
+ TabOrder = 0
+ object TBControlItem1: TTBControlItem
+ Control = fcbFontName
+ end
+ object TBControlItem2: TTBControlItem
+ Control = meFontSize
+ end
+ object TBControlItem3: TTBControlItem
+ Control = cxSpinButton
+ end
+ object TBXSeparatorItem3: TTBXSeparatorItem
+ end
+ object TBXColorItem1: TTBXColorItem
+ Caption = 'Color'
+ end
+ object TBXSeparatorItem1: TTBXSeparatorItem
+ end
+ object bBold: TTBXItem
+ AutoCheck = True
+ Caption = 'Negrita'
+ DisplayMode = nbdmTextOnlyInMenus
+ ImageIndex = 0
+ OnClick = bBoldClick
+ end
+ object bItalic: TTBXItem
+ AutoCheck = True
+ Caption = 'Cursiva'
+ DisplayMode = nbdmTextOnlyInMenus
+ ImageIndex = 1
+ OnClick = bItalicClick
+ end
+ object bUnderline: TTBXItem
+ AutoCheck = True
+ Caption = 'Subrayado'
+ DisplayMode = nbdmTextOnlyInMenus
+ ImageIndex = 2
+ OnClick = bUnderlineClick
+ end
+ object TBXSeparatorItem2: TTBXSeparatorItem
+ end
+ object TBXItem5: TTBXItem
+ Action = actEditCut
+ end
+ object TBXItem6: TTBXItem
+ Action = actEditCopy
+ end
+ object TBXItem7: TTBXItem
+ Action = actEditPaste
+ end
+ object TBXSeparatorItem4: TTBXSeparatorItem
+ end
+ object bAlignLeft: TTBXItem
+ AutoCheck = True
+ Caption = 'Alinear a la izquierda'
+ GroupIndex = 50
+ ImageIndex = 8
+ OnClick = bAlignLeftClick
+ end
+ object bAlignCenter: TTBXItem
+ Tag = 2
+ AutoCheck = True
+ Caption = 'Centrar'
+ GroupIndex = 50
+ ImageIndex = 9
+ OnClick = bAlignCenterClick
+ end
+ object bAlignRight: TTBXItem
+ Tag = 1
+ AutoCheck = True
+ Caption = 'Alinear a la derecha'
+ GroupIndex = 50
+ ImageIndex = 10
+ OnClick = bAlignRightClick
+ end
+ object TBXSeparatorItem5: TTBXSeparatorItem
+ end
+ object bBullets: TTBXItem
+ AutoCheck = True
+ Caption = 'Vi'#241'etas'
+ ImageIndex = 12
+ OnClick = bBulletsClick
+ end
+ object fcbFontName: TcxFontNameComboBox
+ Left = 0
+ Top = 0
+ ParentFont = False
+ Properties.DropDownSizeable = True
+ Properties.FontPreview.ShowButtons = False
+ Properties.OnChange = cxFontNameComboBox1PropertiesChange
+ Properties.OnInitPopup = fcbFontNamePropertiesInitPopup
+ Style.LookAndFeel.Kind = lfStandard
+ Style.LookAndFeel.NativeStyle = True
+ StyleDisabled.LookAndFeel.Kind = lfStandard
+ StyleDisabled.LookAndFeel.NativeStyle = True
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 0
+ Width = 215
+ end
+ object meFontSize: TcxMaskEdit
+ Left = 215
+ Top = 0
+ Hint = 'cxMaskEdit'
+ ParentFont = False
+ Properties.MaskKind = emkRegExpr
+ Properties.EditMask = '\d\d'
+ Properties.MaxLength = 0
+ Properties.OnChange = meFontSizePropertiesChange
+ Style.LookAndFeel.Kind = lfStandard
+ Style.LookAndFeel.NativeStyle = True
+ StyleDisabled.LookAndFeel.Kind = lfStandard
+ StyleDisabled.LookAndFeel.NativeStyle = True
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 1
+ Text = '0'
+ Width = 24
+ end
+ object cxSpinButton: TcxSpinButton
+ Left = 239
+ Top = 0
+ Hint = 'cxSpinButton'
+ Associate = meFontSize
+ AutoSize = False
+ ParentFont = False
+ Properties.MaxValue = 100.000000000000000000
+ Style.LookAndFeel.Kind = lfStandard
+ Style.LookAndFeel.NativeStyle = True
+ StyleDisabled.LookAndFeel.Kind = lfStandard
+ StyleDisabled.LookAndFeel.NativeStyle = True
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 2
+ Height = 21
+ Width = 20
+ end
+ end
+ end
+ object RichEdit: TcxDBRichEdit
+ Left = 0
+ Top = 26
+ Align = alClient
+ Properties.HideSelection = False
+ Properties.ScrollBars = ssBoth
+ Properties.OnChange = RichEditPropertiesChange
+ Properties.OnSelectionChange = RichEditPropertiesSelectionChange
+ Style.LookAndFeel.Kind = lfStandard
+ Style.LookAndFeel.NativeStyle = True
+ StyleDisabled.LookAndFeel.Kind = lfStandard
+ StyleDisabled.LookAndFeel.NativeStyle = True
+ StyleFocused.LookAndFeel.Kind = lfStandard
+ StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
+ StyleHot.LookAndFeel.NativeStyle = True
+ TabOrder = 1
+ Height = 375
+ Width = 635
+ end
+ object ActionList: TActionList
+ Images = SmallImages
+ Left = 320
+ Top = 80
+ object actEditCut: TAction
+ Category = 'Edit'
+ Caption = 'Cu&t'
+ Hint = 'Delete selected item'
+ ImageIndex = 3
+ ShortCut = 16472
+ OnExecute = actEditCutExecute
+ end
+ object actEditCopy: TAction
+ Category = 'Edit'
+ Caption = '&Copy'
+ Hint = 'Copy selected item to clipboard'
+ ImageIndex = 4
+ ShortCut = 16451
+ OnExecute = actEditCopyExecute
+ end
+ object actEditPaste: TAction
+ Category = 'Edit'
+ Caption = '&Paste'
+ Hint = 'Paste contents of clipboard'
+ ImageIndex = 5
+ ShortCut = 16470
+ OnExecute = actEditPasteExecute
+ end
+ object actEditFont: TAction
+ Category = 'Edit'
+ Caption = '&Font...'
+ ImageIndex = 7
+ end
+ object actBullets: TAction
+ AutoCheck = True
+ Caption = 'actBullets'
+ ImageIndex = 12
+ OnExecute = actBulletsExecute
+ end
+ end
+ object pmColorSchemes: TPopupMenu
+ Left = 216
+ Top = 96
+ object miStandard: TMenuItem
+ Caption = 'Delphi Colors'
+ RadioItem = True
+ end
+ object miHTML: TMenuItem
+ Tag = 1
+ Caption = '16 Standard Colors'
+ RadioItem = True
+ end
+ object miWeb: TMenuItem
+ Tag = 2
+ Caption = 'Web Colors'
+ RadioItem = True
+ end
+ object miWebSorted: TMenuItem
+ Tag = 3
+ Caption = 'Web Colors By Hue'
+ RadioItem = True
+ end
+ end
+ object ToolbarImages: TImageList
+ Left = 56
+ Top = 136
+ Bitmap = {
+ 494C01010F001100040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
+ 0000000000003600000028000000400000004000000001002000000000000040
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000008400000084000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000084000000840000008400000084000000840000008400
+ 0000840000008400000084000000840000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000840000000000000000000000840000000000000000000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000840000008400000084000000840000008400
+ 0000840000008400000084000000840000000000000000000000000000000000
+ 0000000000000000000084000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00840000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000840000000000000000000000840000000000000084000000000000000000
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000084000000FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00840000000000000084848400008484008484
+ 8400008484008484840084000000FFFFFF000000000000000000000000000000
+ 00000000000000000000FFFFFF00840000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000840000000000000000000000840000000000000084000000000000000000
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000084000000FFFFFF0000000000000000000000
+ 00000000000000000000FFFFFF00840000000000000000848400848484000084
+ 8400848484000084840084000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00840000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 0000000000008400000084000000840000000000000084000000000000000000
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000084000000FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00840000000000000084848400008484008484
+ 8400008484008484840084000000FFFFFF00000000000000000000000000FFFF
+ FF00840000008400000084000000840000000000000000000000840000008400
+ 0000840000008400000084000000000000000000000000000000000000000000
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000840000000000000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF0084000000FFFFFF0000000000000000000000
+ 00000000000000000000FFFFFF00840000000000000000848400848484000084
+ 8400848484000084840084000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF0084000000FFFFFF0084000000000000000000000000000000840000008400
+ 0000840000008400000000000000000000000000000000000000000000000000
+ 0000000000008400000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000840000000000000084000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF000000
+ 000000000000000000000000000084000000FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00840000000000000084848400008484008484
+ 8400008484008484840084000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00840000008400000000000000000000000000000000000000840000008400
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 0000000000008400000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF0084000000FFFFFF000000000000000000FFFF
+ FF00840000008400000084000000840000000000000000848400848484000084
+ 8400848484000084840084000000840000008400000084000000840000008400
+ 0000840000000000000000000000000000000000000000000000840000008400
+ 0000000000008400000000000000000000000000000000000000000000000000
+ 0000000000008400000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF000000
+ 000000000000000000000000000084000000FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF0084000000FFFFFF0084000000000000000000000084848400008484008484
+ 8400008484008484840000848400848484000084840084848400008484008484
+ 8400008484000000000000000000000000000000000000000000840000000000
+ 0000000000000000000084000000840000000000000000000000000000000000
+ 0000840000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF0084000000FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00840000008400000000000000000000000000000000848400848484000000
+ 0000000000000000000000000000000000000000000000000000000000008484
+ 8400848484000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000008400000084000000840000008400
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF000000
+ 000000000000FFFFFF0000000000840000008400000084000000840000008400
+ 0000840000000000000000000000000000000000000084848400848484000000
+ 0000000000000000000000000000000000000000000000000000000000008484
+ 8400008484000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF0000000000FFFFFF000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000848400848484000084
+ 84000000000000FFFF00000000000000000000FFFF0000000000848484000084
+ 8400848484000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000FFFFFF00FFFF
+ FF00FFFFFF00FFFFFF0000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000FFFF0000FFFF000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000008484000084
+ 8400000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00000000000000000000000000000000000000000000000000008484000084
+ 8400008484000084840000848400008484000084840000848400008484000000
+ 0000000000000000000000000000000000000000000000000000008484000084
+ 8400000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00000000000000000000000000000000000000000000FFFF00000000000084
+ 8400008484000084840000848400008484000084840000848400008484000084
+ 8400000000000000000000000000000000000000000000000000008484000084
+ 8400000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 000000000000000000000000000000FFFF0000FFFF0000FFFF00000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF000000000000000000000000000000000000000000FFFFFF0000FFFF000000
+ 0000008484000084840000848400008484000084840000848400008484000084
+ 8400008484000000000000000000000000000000000000000000008484000084
+ 8400000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 0000000000000000000000000000848484008484840084848400000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00000000000000000000000000000000000000000000FFFF00FFFFFF0000FF
+ FF00000000000084840000848400008484000084840000848400008484000084
+ 8400008484000084840000000000000000000000000000000000008484000084
+ 8400008484000084840000848400008484000084840000848400008484000084
+ 8400008484000084840000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF000000000000000000000000000000000000000000FFFFFF0000FFFF00FFFF
+ FF0000FFFF000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000008484000084
+ 8400000000000000000000000000000000000000000000000000000000000000
+ 0000008484000084840000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00000000000000000000000000000000000000000000FFFF00FFFFFF0000FF
+ FF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00000000000000
+ 0000000000000000000000000000000000000000000000000000008484000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF000000000000000000000000000000000000000000FFFFFF0000FFFF00FFFF
+ FF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF00000000000000
+ 0000000000000000000000000000000000000000000000000000008484000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000008484000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00000000000000000000000000000000000000000000FFFF00FFFFFF0000FF
+ FF00000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000008484000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 0000FFFFFF000000000000000000000000000000000000000000FFFFFF000000
+ 000000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000008484000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000084840000000000000000000000000000000000000000000000
+ 0000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF0000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000FFFFFF000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000008484000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000FFFFFF000000000000000000000000000000000000000000FFFF
+ FF0000000000000000000000000000000000000000000000000000000000FFFF
+ FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000008484000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
+ FF00FFFFFF000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 0000000000000000000000000000000000000000000000000000000000000000
+ 000000000000000000000000000000000000424D3E000000000000003E000000
+ 2800000040000000400000000100010000000000000200000000000000000000
+ 000000000000000000000000FFFFFF00FFFFFFFFFFFF0000FFFFFFFFFFFF0000
+ FFFFFFFF8FFF0000C007C0078C030000FFFFFFFF8FFF0000F83FF807FFFF0000
+ FFFFFFFFFFFF0000C007C0078FFF0000FFFFFFFF8C030000F01FF8078FFF0000
+ FFFFFFFFFFFF0000C007C007FFFF0000FFFFFFFF8FFF0000F83FF8078C030000
+ FFFFFFFF8FFF0000FFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
+ FFFFFFFFE00FFFFFFFFFFFFFFFFFC007F00F81FFF83FFFFFF8C7E3FFF39FC03F
+ F8C7F1FFF39FFFFFF8C7F8FFF39FC007F80FFC7FF39FFFFFF8C7FE3FF39FC03F
+ F8C7FF1FF39FFFFFF8C7FF8FF39FC007F00FFF03E10FFFFFFFFFFFFFFFFFC03F
+ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9FFFFFFFC00
+ FFFFF6CFFE008000FFFFF6B7FE000000FFFFF6B7FE000000FFF7F8B780000000
+ C1F7FE8F80000001C3FBFE3F80000003C7FBFF7F80000003CBFBFE3F80010003
+ DCF7FEBF80030003FF0FFC9F80070FC3FFFFFDDF807F0003FFFFFDDF80FF8007
+ FFFFFDDF81FFF87FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC001C007
+ C007001F8031BFEBC007000F80310005C007000780317E31C007000380017E35
+ C007000180010006C007000080017FEAC007001F8FF18014C007001F8FF1C00A
+ C007001F8FF1E001C0078FF18FF1E007C00FFFF98FF1F007C01FFF758FF5F003
+ C03FFF8F8001F803FFFFFFFFFFFFFFFF00000000000000000000000000000000
+ 000000000000}
+ end
+ object LargeImages: TPngImageList
+ Height = 24
+ Width = 24
+ PngImages = <
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000002C04944415478DA
+ 63FCFFFF3F032D0123C882851B8E4603E9255435989131263EC07A29D88205EB
+ 8FFC4F08B421C900903E90DFFFFDFBCFF0F7DF3F86BF7FFF41D8401A04A272DA
+ 18B62E6C6624CB02EC868368087FD3BED30C0B976F63D8BFAA8B740B08190EA2
+ B71E3C43BE05FF80EA910D8760281F88FF01D93B8E9C236C01A3E14CBC16890B
+ 7332A8C9F133C47AAB3004392BA058B4E7F805E27C70F5EE7B069D905570FEAF
+ D3290C9FBEFC62B870F32D43E5E4530CA7AFBE068B37A41B32A40569C07DB1FF
+ E425E28308D927DF4F24010D80B8F2F5FBEF0C2ABE10CB85F8D9192EAE08805A
+ F09FE1D0E9CBE459F0E55822349CFF31BC78FB9D4133680D585C418A87E1C06C
+ 4F88E540B9A3E7AE1267012875301BCF86F33F1E896778F3FE07C3D9EBAF195A
+ E75C60B878EB1DD8F00925E60CBAAA82F0483F71F13A610B40A905A498CD740E
+ CE88B6D4136368CF35629011E78646F05F307DE6CA4DEC16C0CA25100DF32EA7
+ C53CB881AFF64533FCFAFD97E1EEE34F0C53565E6358BDFB01033B1B33C3B40A
+ 73A065A2703DE7AFDFC6B400586E800D0129FA074BE34036AFF502B805CF7747
+ C28B8417EFBE3198C56C018BABCAF131ACEB7180EBB974F30E760BD00D07D102
+ 768BE0163CD9110E36FCCF3F88252A7E6BE1721796FBC053D8D5DBF7302D88F1
+ B3C2301CA458D80151C83EDA160637FCC3E79F0C26D1101FA8C8F232ACECB085
+ 3810A8EFFABD07981644F95860187EEDDE0706DBA42D700B764E7303A79A8B37
+ DF314C5B7583E1C0D9170C5C1C2C0C53CA4C19745404E0C5C7ED878F302D08F7
+ 34C3E97274C0CCCCC8A008B4C85C478421C25D81414C901D49EF7F86FB4F1E63
+ 5A10EC6682A2E81FD4A23F48BEFA87E40044E9F90F451FC8BC074F9F605A10E0
+ 6C8C4503A6E17FA025262EC34100AB05BE8E86040D27E47218C069C1E6FDA719
+ A805502C0055FA2BD76D5FF2EDFB4FAA5990181D80A8F4690900D0674DFECB86
+ 8A7D0000000049454E44AE426082}
+ Name = 'PngImage5'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000002724944415478DA
+ 63FCFFFF3F032D0123C882851B8E4603E9255435989131263EC07A29D88205EB
+ 8FFC4F08B421C900903E90DFFFFDFBCFF0F7DF3F86BF7FFF41D8401A04A272DA
+ 18B62E6C6624CB02EC868368087FD3BED30C0B976F63D8BFAA8B740B08190EA2
+ B71E3C43BE05FF80EA910D8760281F88FF01D93B8E9C23DD02CBB80D0C272EBF
+ C4100F7353629856698562D19EE31748B700140C2D73CE33D44F3F03E6CB49F2
+ 30AC6877645093E7C7F0C5FE939748B3001CC6C060496E38C8B078EB6DB05873
+ 96314366A82686E12075874E5F26DE0298E12083340257313C7CFE052C7E708E
+ 37838602D4F5B03881AA3B7AEE2A7116201B7EFFD96706ADA0D560717E1E3686
+ 9B1B4280118A6938089FB8789DB005A0D4024F2540CDA0A0C96C3D0296F3B496
+ 61985B670316FFF3F72FD47090457FC1F4992B37B15B002B974034DC452043FE
+ FC65C86C3BCAB07CC75DB07C63862143A29F2AC39F7F88DC0B0F2A207DFEFA6D
+ 4C0B80E506583348D1BF7FA81A40416010B19EE1F18BAF60353BA6B831A829F0
+ 61351C445FBA7907BB05B80C0745AC51E406B0E17CDCAC0C1756FAE3341CA4FE
+ EAED7B9816C4F85961351CC45EBEFD2E437EF709B0056E16520CD3AA2CB1180E
+ 618322FEFABD07981644F95860D570EBC10786989A830C0F9E4192675EA41643
+ 76983AAA5AE4D40464DF7EF808D382704F330CC3931A0E316C39F41823F9AACA
+ F131ACEDB107973B7FB004D3FD278F312D0876334151F40F6AD11F24CDFF901D
+ F017A9C043D20732EFC1D327981604381B63D18069F81F688989CB7010C06A81
+ AFA32141C309B91C06705AB079FF69A2EA0462008A05A04A7FE5BAED4BBE7DFF
+ 49350B12A30310953E2D01006441B6FE0F06917C0000000049454E44AE426082}
+ Name = 'PngImage6'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD2520000029E4944415478DA
+ 63FCFFFF3F032D0123C882851B8E4603E9255435989131263EC07A29D88205EB
+ 8FFC4F08B421C900903E90DFFFFDFBCFF0F7DF3F86BF7FFF41D8401A04A272DA
+ 18B62E6C6624CB02EC868368087FD3BED30C0B976F63D8BFAA8B740B08190EA2
+ B71E3C83DF0246C399382DF87B2E8D81D9681686F89BFD31600BFE012DD871E4
+ 1C611FDC7CF081412370259CFF605B1483AC040F3CAC0F9C79C6E091BD9D61C7
+ 140F06136D11B038CC177B8E5F202E88907DF2F76C2A50332412FF428387DF66
+ 21C4E5488683F0FE939748B7E0D7E91414C3416C21FBC50C2FF744A1180E923F
+ 74FA32E9167C3F910437FC1FD42211C7250CCF7646202C85FAF0E8B9ABA45BF0
+ E558223C1241F41FA041122ECB181E6F0F47311C844F5CBC4ED8827F4071E4D4
+ F2F1483C8AE1205F48B9AF60B8BF25046A3848EE2F983E73E526760B60E51288
+ 066962339D03B7E0ED815878D8C352929CD72A863B9B82E162305F9CBF7E1BD3
+ 0260B901492D4045FFE091B888E1C7AFBF60F157FBA2510C7FF1EE1B8377EE1E
+ 8623F33C510C07D1976EDEC16E01B2E120B653DA5686D3575F832D38BED09741
+ 569C0B6CF81FA09A5DC79F32ACDC799F616A853946F2BD7AFB1EA605317E5628
+ 8683E8EDC71E33C4561F0086F97F0617732986B61C630611417686F337DE32D4
+ 4C3DC7D09469C0A0A1C00FD503D1078A9BEBF71E605A10E56381E65508FBC8F9
+ 170CDD0B2F335CBAFD8EE1EBF73F0C7CDCAC0C96FA620C79111A0C7212DCA8E1
+ 0F75E0ED878F302D08F734C3301C3DF250E52149F60F1635F79F3CC6B420D8CD
+ 04AE089481480587E7B882F583CC7BF0F409A60501CEC6886488C527B0CAE40F
+ 52664377392C9963B5C0D7D190A0E17F51CA7DEC86E3B560F3FED324070D2E80
+ 6201A8D25FB96EFB926FDF7F52CD82C4E80044A54F4B0000DAB495FE133533B1
+ 0000000049454E44AE426082}
+ Name = 'PngImage4'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F8000000097048597300000E9C00000E9C01079453DD000004BF4944415478DA
+ B5D37B4C53571800F0737A5B6ECB4B2F2D2D2D2053408286870CD4C9C0B89989
+ 8ACEB041F035064CEB365800D93235C0EA40FD836D380C085B44C7C30993111E
+ 93199411DE844029B80908586094577B81963EE8E3EE82D311662A35DB97DCE4
+ 3CBE737EB9E77C07120401FECF802B010821A8ACACC7BAC453B54A95E6405AE2
+ E111631B7C9E7E331102E87431313C76B1FFAFFD9E071492C0A3A109218D8AD4
+ 68C68527040281E1799B9FCF2A738306439314971765244598060C3C9E1406FA
+ BA73EE36F6045E381DD6B672F39339393457C4BE748BFBFAE08AFBED572E9B04
+ 94D7B20647645D7111FB7805E58D359DF2817DB97CBE76795E7246717450E096
+ 5C7239E5C7AAA62B99C9260039F977B893B3AA9E84A8FD3603C313BA9FAA5B8F
+ 9C8F0B2D799A73F6AB627B77676E4750A0375BD43B0ACA6ADA7ECE4C8A085935
+ 9097574B1F56C89A2342767A6356E6A0AAB6E3E1AF1DFD5B6E0822D5A1A1C588
+ D71B66D7DF7B3BE0E862767BCF20A8691265647D1115BF6A6031522E9784B130
+ EB9BEF066DA72C68B5C4F5D2BACF5262DF493F935E78684F804FE9C6F53CF8E7
+ 040E6E57B7E04A9572DBB7C951FD26018BCDF8B4FCAC5DDB37F377F86C84AD5D
+ 0353F79A1FECD9ECC22B3EF8E6AB2EB25925B85327D4F70E8DC5640B22AF3E5D
+ 640A004EA7FCC046D7A06D216F6D73E230AD417E59BD243CF8353B081128FC43
+ 0C6A9BBBEF4BF48CBD2582B085970296904B45611C1BEB225F4F67848A40E0FA
+ 0A178C4864A0F46EEB2C3E33BF332735BA6B79BEC9C062BD5B482D8A5998D5A1
+ 0D8E6C60678B01D14331E81D94246509DE4F052BC26400B8FC821E0E5178D9D9
+ 326A5BC516E6737225F0B09BEB1892500FB688E7A5A02E52FD72C08E026F3B1E
+ 2B92CBC676D3E9664E23A313A85EA7910368A6B1E3602C3A1D5DA0D210B14422
+ BBFF6860FC3BD018DEB53AC03797C659E79062CF65C6418346AF981AD3E85438
+ 9C56D3692C864A6EE1E0A3D62AA6AD0787261A210D250044BCD45A832DB93413
+ A8E70544FB49AD5100DB5FF1D14667CE3732F103056A98EBA322C42D8D9ED239
+ 348725AEB39CF56438FA2E5066FAB893B8C27D4C4A1D279770C9DF3E09CCE831
+ 8002CF12F5C7B28C022E11BF89508DD489AA1ABE26421D12414998FEEF23BBEA
+ 6683EF46ED7D09BDACD756A61AE2492A05CAA539A73C3A60EB6F03338623D170
+ C4D328E01E5DAF21A47D5A864EE92FACFAE49F12F42F28DA84C93CA9F67E2832
+ 3FECA4C30739DD5567F067F3BEB9A90035FF9468388A1A053CF8CD7238FDFB3C
+ 55A7F2E92C8F1D7B329A42A1BCEE52ED8EC9AC11DE56E61A44EE3833DA13DC5D
+ 9E50B30CB848023124606514F03AD5D24F99E9B5D42B64FEDD5509834B837E37
+ 98660CD8E7B616BF2745DD985C267D977E52745D88D49F0025254F8ED0EFFB22
+ F21EFC48C0D52860B9B7347B2D9C896252E70E8B2AE24BC1CE142AD0B97ECD36
+ 577DCC3197F3BB71762B8FC3CAD8C0D46D958FF59DEA2A4F2804DED99B009D71
+ 0B204803D170EC43E3651A50E88F52F4D55C0B45E563B9F597900031185DF381
+ BD85A262DA801F5FBAD8C0020F1EDBA61ACE8D40E50225145722C1804AE39355
+ 7480A83FDAF8E287E69FCF275BE7C82EC7D152A1C650F5B529037EEE59D52C5D
+ 7AD166000C17C85610F94D904F2C0D341ECF79E143FBAFE32F16D672EF3D728C
+ 4A0000000049454E44AE426082}
+ Name = 'PngImage0'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD2520000022C4944415478DA
+ 63FCFFFF3F032D0123CC82D53BCF13655398871123B18683CC46B120D4DD10AF
+ 06A01A86F6FED90CE7774E27CA12922CF80754B776D7050651415E86A2BA3EA2
+ 2C21DA0290E17FFFFE63D8B0F712838DB12AC3CD7B2F88B284280BFEFDFBCFF0
+ 0768F89FBF7F19B61EBC0A0E2218A08A0520D0B3EA2131410E06A5E10A704BB1
+ 5AD0B2EA0186260E0646869230798286831CD2317B23C3DB3DF98C382D00F141
+ 610E0E963FFF18FEFEFBC7306BEB4BA22D3051F8CD1052BD0D6C098605216E06
+ D008FDCFF0FBCF5FB0E1A0C89DBBE335410B7EFDF9CF3069DD23866827617022
+ 0059F266771E238A0541AEFA0CED6B1E91144440FBC186FF02FA76F69627E020
+ 82010C0BFC1C7519DE7EF88661C8B203EFB15A806C388CDEB9FF2458AE6CC679
+ 4C0B3C6DB5C061FF179A2C81084CAF3AFC096E4144CB159CC1D49EA60AB6E4E8
+ F133D82D70B5D26098B2FD25C120C2E67264FAF4E9B3D82D70325763F8F8F907
+ 8605EB8E7F815B40C87010BE78FE1C760BEC4C5418FEFD852451502A82E4E07F
+ 0CDBCEFE005B00323CBA0D7710954629327CFBF997E1F6B58BD82DB0355261B8
+ FFF41D86C6A3B718180A43E419BEFFFA87D5C520F6CFDF08B187B72E61B760DE
+ 92B5E0B2071DB8FAA73164F8C912653888FDE2FE654C0B181971975BDD2B1FFC
+ 4FF292061B5030E5264E75715E32608BDE3DBE4ABA05316E52045DFE0B5CB430
+ 307C7C4A8605614E1244190E026459106027CE70E8E869066201C916209731C4
+ 02140B6805009C1383EFACA508270000000049454E44AE426082}
+ Name = 'PngImage3'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD2520000027F4944415478DA
+ 63FCFFFF3F032D0123CC02464646AC0A66243060B820630103230391006EC1C9
+ 898CEE406A07B2E4890B40C33AA6A268B8B8229761E9E67F0CD1BE4C1886FD67
+ F8E76151C0B0139705FF154C1A18045444212EAFC8061BFEE5C54D86A6E24970
+ 0D75BD790C770F4C015BD2B16802C3FFBFBF19FE01F1D7A7BF1836CC69C0F01D
+ 8A05061153510C7F7D7527032EF0ECF216B025AD73DAC016DCD8D2C870FEC23F
+ E22C787C6C21C3D64DA70886AFB79F1983988E07D8825B3B3B89B70066092100
+ 331C84EFECE923CD027430F9A037410B61A0345C016E095116FCFFFF8F61CA21
+ 5F869230798286F7AC7AC8D0317B23C3DB3DF98C445900321C9452A61E0D22DA
+ 021385DF0C21D5DBC096E0B50066F8BF3FBF18A69F8C2068C1AF3FFF1926AD7B
+ C410ED24CC70F3DE0BB025382D00451C03D00290E120F6CC33B1382DF8FB0F62
+ F8AF3FFF18666F79020E22BC71003210968160ECD91752B05A806C388CDEB9FF
+ 2458AE6CC6794C0BB0190EF2C5DC2B59700B225AAEE00CA6F63455B025478F9F
+ C1B4402F740256C341F4BCEBF9283EC0E67264FAF4E9B39816E8067563351CC4
+ 5F70AB046E0121C341F8E2F973981668FBB761351C8417DDAD045B00323CBA0D
+ 7710954629327CFBF997E1F6B58B981668FA346235FCFFBF3F0C8BEFD7321486
+ C8337CFFF50FAB8B41EC9FBF11620F6F5DC2B440C3B306ABE120FE92474D0C19
+ 7EB244190E62BFB87F19D302559712B8E1E8F4F2E75D0C495ED260030AA6DCC4
+ 1944715E32608BDE3DBE8A6981B45E00C3B34B9BB06A3C24798F21C64D8AA0CB
+ 416C503C7D7C8A6901B8CABC7001BBCB3E7B3E6008739220CA7010C0B00057A5
+ 0F03DD2B1FFC0FB013673874F43403B180640B90CB18620100261ED9D6E5FCF2
+ FA0000000049454E44AE426082}
+ Name = 'PngImage1'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F8000000097048597300000E9C00000E9C01079453DD000003DC4944415478DA
+ BD947F4C1B6518C79F7BEF8EFBD56BAFC7951F33BA75E9822B88520C88D92C93
+ 05C410CA70986D3261B1DB3F261B24D3F92331F2A799C6B0F96B666668165D88
+ 12E7FE598CC14C639C43D0988D41B69974DD5A680B584A5B68EFFA7AAD81306C
+ 8D0BE2935CEE9E7B9FE7FB79DEF779DF97C018C35A1AF1BF020882C81978E004
+ A6EB6BA106236D0B42E4BD080045E3AA8A35ECA3587A607709717531F60ECD7F
+ 0378FFDBF806A9807E2734956898F027A94844054D03C86310701C02AB950B47
+ E3DA075D4EEEA5BB069CB898DCC671D03F3E1655BCDE0548A520F3A4D332DFFA
+ 9BA208D8B2D5047351B5EB48BDD09B13F0E27B41E7A580E5870B3D849AF64F5F
+ 49BA522AEE1B198E48B11806DE40416C4EBDA380A9192D03E278048D0DE61BDE
+ 49B2FAE5ED309515B0AFD7838D14FFEE3C6DE9AEAD559B6211AD7F642842A91A
+ B1243E3D1D85D999202416E2C08B0A30BC5907109999382A045C5E2674B6DAE0
+ 93AC8096377EC7452C8F79237DB6AC5CAC1BBA14165329B4243EE10B82DF3B06
+ 34237E93C2DA607C36F4B849595F67B26C22B03E0B399F82E626F9B3A76CB027
+ 27A0D0600235F9D7325034B5241E0C84E1E6F591A02E7870F058D599F4F87AE7
+ 295654882F8B37D434D08CA4C7226869967F7CA6143D9A1320911C305C5EC65F
+ 140F8713E0B9368C3535F5E4D069D7F9E53DB0EF38D526291BFB8DCAFD603090
+ B0C3257DB7A79474660534BF12C0884A81C9844056988C7824A24168D283FDDE
+ AB472F7FD17164E52EB3B77D7C1FCF291EB9F8613D8F84D656F3B95D25A83927
+ E076488375051498440C825E5178568399D0ED9F3DD7475CE35FB97D2B01B627
+ 3EB218154B405E570D160B05AD2D52DF4E1BDA97133039A3427AD714EA0D33EA
+ 907455A169350E40BA075EB37CBA12B0A9ADEF1E91C9BF251557C1462B03CEAD
+ E25BED65E8705640E5013F9E5767F553A4014AA9A07700B4E43CA49271482EC4
+ E7584172FD76A66E7039A0F2D9F35588CCFB49904BC1F1100F763B77F0390779
+ 3C2BA0F11830E274805EF4037F3BD731F5428F757EF91FC7DEAFBB04B3ED6D82
+ 12A0A9D1A4996554ED76D0C35901FF74D965B347BA6F725AD8F73D27592BD3B9
+ 9DED66DF956B0B9547DB8489FF0450D171712F6750FA106D440F3EC0E9CBC39C
+ 7CBE266FFF5DDFA6D9CCDE71B98867F02F2C5F50C43024EC6C312646C763F6E3
+ 9DD28D5503CADB7F1568160D7086C27A8AD42FB97A51CDB75087DD0EAA373DBE
+ 6A40C5FEB10F395674CB324B6C731A4010D09B7E0FF56ACFD34462D580C70E85
+ 369BCC7874730987CB4AD9D1C980FAFA0BDBD9CF97C7AC0AE03C3423EDDA2D9C
+ 5414FADCAD089CEDAE20FE58199313B016B6E6803F0192C0D6E065D4DD9D0000
+ 000049454E44AE426082}
+ Name = 'PngImage2'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000003494944415478DA
+ B5956B48536118C7FF6B864285420991141445AB282C57A6DDD45C65AEB40B5D
+ 746681D89720838AEA8351D155238308A2DBCC5564999736539A99A9A56D4E9D
+ A9E944A74E9AB1FA6034D176CE3AE7DD9C5B676E06F9C2E1BD9CE7FDFFCEF33C
+ EF795E9ED56AC544361E0BC82EA84E647AD97F15E6F124C9F16B1E138034BFCA
+ 7A70C7DA7F1260F7B1BED3B415144D83A268DB98E9D99670E41214D917781E01
+ 75DFEA10FD321AFA437AF8FBFA7B11677BDBBCE8AD0AD94F8B519E7BCD3320A9
+ 3409B22F32646DC8C2D1E0A3E312677B4585DA3BA0DFDC8F881711309A8DF0E3
+ FBC19062009FC707CDD83B8BDB1EFB9C7968665C52A5F10EB8AABE0A9F493E30
+ FE3222539309E926299204075C624DB97CF9E858F9B1C13380B252103C12A066
+ 6F0D4C8326320E0E0CC6A73D6ABB3037B1CE5E94D76A3D03F23AF220EF92E3A1
+ E82199B3892EEB2D4351AC1C5141228FE22CFCBDAAC93340942F82B247C949FA
+ BA59EB21DF5ACAC4D9EEC5480E463CB2AF556B9AC706349A1A91A24C816A9FCA
+ 763A984DC396DF58289B8FBE5F7DA88CABC5A28025B0B01ED8C573141D3873AB
+ 0EED053B09A0A6B1D53DA0FB6737C485624804129C0839E9F285E7546791517F
+ 05C1D35720273217D327CF20EB159AAF484EAF24616AC98B23BDFA739B7B00EF
+ 26CF118E038264DC89B84B4452CB53F04497E378377BCA1C54C736A0B36F00C7
+ 6FA8A16E3191F5A6DCEDE483EA5B755C0053376C2788B6DA7F1CA738D3AE3167
+ 933B601EC6FE5315C8481362CB9137646FC35331B1D3B675B8078C577CC842E1
+ F0850F488C998BB0658158BCBBD0565A1EC712FB665D271720D91E3E2E710BB3
+ 764DDA043F5F3E52772C20EF97EE2922804F393124F1AD9D7A2E2041BCDAAB38
+ BBF65CA9C7C92CB5DB0AFB51BA99D8EABA7BB880BD31ABC6141F196BBE7CC7E5
+ 075ADC4B0F079F0F5277D8E32A94141340E53D11B1ED32F47201BB36099D0056
+ FB19A789C0E0100545652FA4451DB87D3A1401D3263BFE5EA3C90C71DA3B02B8
+ 9F1E8A794153A1EF337001F11B43468BD65F9E3C2868C7C5FB5A2212B57226AE
+ 1F133A6C43934B5CC2F4E87C1828CB0F2E605BE4F231733066F574F2D8F96E77
+ EB010B7855AEFAA76BD3537301B097FEB397AF65E6C1A1FF063894183F7AE94F
+ 64FB03E70FC5FE7DFF61640000000049454E44AE426082}
+ Name = 'PngImage7'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000000844944415478DA
+ 63FCFFFF3F032D0123DD2CE0E6E626D9A66FDFBE31E29307998D6241DBD4D518
+ 8A3E7CFC0CC19FBE307C4462DF3CBC90740B68EA03464646A20C2505D0D70272
+ 828810F8FAF52B23C1484606DFBEFF60F8FEFD279806B37FFC4411FB0E150301
+ 5022C0B080A63E1899913C9A932906833F9209816196936905462D200800B3F4
+ 07E01B49C5960000000049454E44AE426082}
+ Name = 'PngImage10'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000000884944415478DA
+ 63FCFFFF3F032D0123DD2C6064644491E0E2E222D9E66FDFBEA11802321BAF05
+ 6D53576318F2E1E36708FEF485E12312FBE6E185A45B40531F5003D0D7026E6E
+ 6EAA27A7AF5FBF32A258802D5291C1B7EF3F18BE7FFF09A6C1EC1F3F51C4BE43
+ C5400014E91816D0D407433F92477332C93EA00618CDC9832C27D30A8C5A4010
+ 000093B807E097AFA8400000000049454E44AE426082}
+ Name = 'PngImage8'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000000814944415478DA
+ 63FCFFFF3F032D0123DD2C606464C4AB908B8B8B64977CFDFA9591240BDAA6AE
+ C610FFF0F133047FFAC2F011897DF3F042D22DA0A90FC80120B3E96701373737
+ D593134A10812CC01689C8E0DBF71F0CDFBFFF04D360F68F9F2862DFA1622080
+ 11C934F7C1D08FE401CF07A3397934270F829C4C2B306A01410000E973F5D1CA
+ C2F46B0000000049454E44AE426082}
+ Name = 'PngImage11'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000000664944415478DA
+ 63FCFFFF3F032D0123DD2CE0E6E6A6BA4D5FBF7E6544B1A06DEA6ABC1ABE7DFF
+ C1F0FDFB4F300D66FFF88922F61D2A0602370F2FC4B480A63E606464A4B6F90C
+ 20B3E967C1682413F4C16824130CA2D148C606462379904532ADC0A805040100
+ 50940DE0E82572D70000000049454E44AE426082}
+ Name = 'PngImage9'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D4948445200000018000000180806000000E0773D
+ F80000000970485973000017120000171201679FD252000002DA4944415478DA
+ B5956D4853511CC69F7DCA37245F0AD33058AB61616586A4D687088422CDE883
+ F8826941319090C42F068E3012A4CF5110D2521183CA976622E22AB754E674EA
+ A6AECD39DF3229C9DADCB4BC7779EEF4BA75AF7507FA8771EEEEBDE7F9DDFF79
+ 1ECE11B9DD6EEC64890840D1A8C95D1B6BB7555824CABB96995AC7009EBD56BB
+ 0BAE9CF14B80CC23BDD3B41B144D83A268CFF5DA482AA7E801948A0A910FC0F2
+ D9817AD514DA75F3483E12819B17C5904487081427A3E77F73A7168AFA56A85E
+ 54F9022AEA46102A3988623D90B540C1B53280A67BA98C687070B0A0CE6CD3F3
+ 50BEEFE3079CBDA3825A9AE279F3CB18D0D803F7C02D1670F7610D969C2E389D
+ CBCCE8B02F61F1A7038B3FEC585EF905539702E3B639B4A9FBF90197E51A04EE
+ 4A40C36F33235A38A9447575995F1D98C667D1D1ADE707100F4A9E0CA2B9D980
+ C2840594DDBFCD7AC0ACF1BA89148FB11BEB4F7EAADE217EC056E58F3879FE41
+ 3BBC7507351D3674EABF22491A0659BA04E2A8208E384D7901BDA1EBF734FD46
+ 7E80FCB901E1D2436C8A9CCBFD78599ECC4C8A08DF2DC803DDB0153D83A3C253
+ E4EAB9CE7CD9DEC8304129EAD55BD06730F10332CAD5080A38C9A628DFFA068F
+ 1E97627595427454A4A00E3EEA3E6160D4CC05ACED1B6C8A5A5A8CC83FF60D25
+ 72190EEC09F459DF0D7357696F937D433064B2F003C8439AFE7B827FE2E47DA3
+ D9CA05E465A4C03C6B87A27D029A91EF38210E45415A2C62490782C43DD72461
+ A3561B179073E934CA1506EC8B8F6353E470EAF0B4F8382370581C23C883F6AE
+ 619827A7B880AC0B49482BD3705234D396C57C599C64BFA014B5BE1BC2C4CC34
+ 177035ED14B22BB508094A6453946D6E42655511038897C60AEA40A91A846D76
+ 860BC83C9F88F13907E43563502A47907D741EB2D21B888908F0D916180FA8CD
+ EDC2DBE08DE39717907E2E61CBF4D0DEF7FE23FE4F408B4A2B681984940F801C
+ FA0DAFDED63A5D2BDB0628CCCDDC3CF477B2FE0097C77CFE55ACDC7600000000
+ 49454E44AE426082}
+ Name = 'PngImage12'
+ Background = clWindow
+ end>
+ PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
+ Left = 123
+ Top = 136
+ Bitmap = {}
+ end
+ object SmallImages: TPngImageList
+ PngImages = <
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001984944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5360BD30046
+ C399181A59989918A23C55181A328C1804F9D8C0069CBD7C07BB01C886FC3F9F
+ CEF00F28BF7AD75D86888ABD0CEC6CCC0C8F774430FCF9F38FE1E2F57B840DF8
+ 7B2E0DACF8C7AF3F0CFC360BC006DCDF120676C1B5DB0F091BF0F3540AC3C3E7
+ 9F19DAE79D6758B6FD2E4353A6114384BB22D0D0BF0CB7EE3F216C003288F254
+ 66288BD765E0E56206BAE01FC3FDC7CFB01B00F233B3D12C30FBFDA138B0730F
+ 9C7ECE1056BE8FC1C954926172991958ECF9ABD79806803483FCCC6E36076CC0
+ 8B3D5160C52031459FD560B10BCB7DC02E78F3EE2DAA01317E56F038E6B75908
+ 567C6D6D1003273B33C396C38F18723B4F32B0B332311C99E70156F3F1D30754
+ 03C2BDCC51342303666646066F1B1986EC5035065E6E16B0BA6FDF3EA31A10E4
+ 6602762ACC1570F6EFBF503184DCBF7FFF197EFCF8826A809F9311C3A98BB748
+ CA4C700340B971E28CA524E7C6FC8CE81800E35A4E592A9A5C6B000000004945
+ 4E44AE426082}
+ Name = 'PngImage22'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001844944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5360BB7010B
+ 37DF6248A8DB0FE7CB4BF2325C5D1B0237E0ECE53BF80D0081C69967191A669C
+ 6188F35163985C61C5F0EF1FC4057FFEFC63B878FD1E6103744357335CB9F38E
+ 61CB240F066B0331B866107DEDF643FC067CFFF98781CB622E98FD745714032B
+ 0B235CF31F20BE75FF096E03FE01C5CE5D7FC3601ABD8E41535180E1E05C6F14
+ CDBF81ECFB8F9F613700A419A478C9D65B0CC98D871862BC5518BAF24DE19A7F
+ 005D06623F7FF51AD30098669082CA49A71826AFB8CAD05D68CA10E2AC0009FD
+ DF7FA1B1F08FE1CDBBB7A806C4F859C1A3E8DDC79F0C0185BB182EDE7AC7B0BE
+ D799415B991F453388FEF8E903AA01E15EE6608993975F31B8656E4709D02D13
+ 9D1964C438E19A41F8DBB7CFA80604B999C09D8F1C5DE83683F0BF7FFF197EFC
+ F8826A809F9311C3A98BB748CA4C700340B971E28CA524E7C6FC8CE818000A3C
+ 81590C9B58CC0000000049454E44AE426082}
+ Name = 'PngImage26'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001854944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4806100A3E14C140DFFCFA763887F3C12
+ CF70ECEC0D86AAB65998067CFCF28B41C0763E98FDE6403C83303F07C33FA09A
+ B71F7E3088392D62B8BB259C81978B85E1ECE53BD80D40B60D643B48F39F3F10
+ 67F358CD6778B52F1ACCBF78FD1E6103FE9E4B836B066141BB450CCF764582D9
+ D76E3F246CC0CF532970CD202CE6B494E1E1B630A0A17F196EDD7F42D880B707
+ E318981819C09ADF7DFCC9A011B886E1EEA66020FF1FC3FDC7CFB01B00F2B356
+ D02A869B0F3E305424EA3364846A80BDD1B5F012C3D53BEF1966D558820D7CFE
+ EA35A601B000BBF5F00343CDD4D30C07CE3C07C70A1F372B838BB91443419426
+ 90CD0276C19B776F510D88F1B382FB1539E0E0ECDFB0B080F03F7EFA806A40B8
+ 97395882DF6621C1D47870B60BC3B76F9F510D08723321CA6610FEF7EF3FC38F
+ 1F5F500DF07332623875F1164999096E0028374E9CB194E4DC989F111D03002B
+ D67559EB1C43180000000049454E44AE426082}
+ Name = 'PngImage28'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 61000000097048597300000E9C00000E9C01079453DD000002574944415478DA
+ 63FCFFFF3F03258011D9004646468696696B17FFFECAD0DE581A7C0D596155CF
+ 0AF77F7FFFD975944755A3E8413760EA929DAF393938D62785D8A7C1C48BBB17
+ 711BABAB5C7AF9F6FDDFC2446F354206BC75B6D4E35ABCFE90536B49F87190F8
+ E4853B2779DA1BE46EDE7FE62ED00015BC06F4CFDBBA24CACF26FAD0A99B5B42
+ BDCC7C6BFA563B057B986FFDFDE72FC7D20D072B26D62574E235A0A26DA999B0
+ 98E0F2607713F9251B8E85692A4B5698E9AB9AAEDA7EE2DEBB571F3DDAAB226F
+ E33500044A3B979507B898B6BF78F3FEA3B1B612FF992BF7FF1F3975336E425D
+ CC52903C4103EAEBEB5998450D8FAA2A889BC94888306CD977664D675964284C
+ 1D0103EA99F8DDF50C8CD439E3FFFE67CB7DFFE9DB1F7E3E9EC637DF5977DC98
+ B3E73C0343E33F9C0670B8AC555292175BC8F6FF9BEEDF6FEF995E7DF8F95941
+ 55EDE5AB17AFBEFCFAC7C2F1ECC5FBEF0C4C4C89FF0F47DDC36A8056F2A103FF
+ DEDEE465FBFFB5F1D577EECB8C8CFFF72AAA6A7CFFF4F842CED54D7907184CE7
+ 4631B0B227FC3F1AE38AD5008D981DDFD9BEDE48BABCA1703983DE226E09891F
+ D754B4756F7DBC7FBAEFF286BCED0C32BD9C0CB222B7FF1F8B93C16A805ED2EE
+ D74CEFAF445FDC50B48BC172858E34DFFB6582B2DAFB38BEDCFC7166456A0583
+ CE0471063EA103FF8FC66A623540C063F55669B6E747AE3DE3E861E5E158A9C8
+ FBF1D1FD6F628BF4147977FC7A79D3E3F2736E39060E9E84FF47A202B0C782ED
+ 627356C6FF935998FEB349737FB9FE95E975F2F32D8DDF98EC9647B1FCFF55F0
+ EB1FD31FA08EC2FF87634F6235801C0000382740F0DFD997BD0000000049454E
+ 44AE426082}
+ Name = 'PngImage24'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001514944415478DA
+ 635CB5E3DC7F062C20CCC388918108C0083220D4DD104570F5CEF30CEDFDB319
+ CEEF9C4ED0109C06D818AB3278C7941134046E40CBAA0760819A3005B80B6000
+ 9F21182EF8F1F30F10FF86E05F7F1882926B883300E60264C0C1805D5F69B802
+ 238601E836FF04E2CDA7BF339484C9A368EE59F59261D9C1BB0CE7A75933C20D
+ F0B4D56698B0E5195617601AF09021DA4998C1297307C38D35A18C60031CCDD4
+ C036FF84DAFCE7EF3F307DF0FA7FB001112D57C09A57D4E8800D98BBFA346A18
+ 58EA2BC235C39C0FC2671EB0A2B8E0DBCF7F0C5F7FFE05E27F60B65DE26C8801
+ 7316ADC11A58AEFE69282E4009C8284506F7F4B90C781349F7CA07FF4106A0DB
+ FCFD171003E980BCF9840D48F5916148EFBB8E2197EC2BCB1059B290B001512E
+ 92609BC1B602F1EF3FFFC1F437204EAE5A4CD8007F5B71B8E66F480681407AED
+ 12C20674CCDE884F0903000B1A00979E81F9710000000049454E44AE426082}
+ Name = 'PngImage23'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001934944415478DA
+ 6364C002662430FC47E6672C606064C001C0122726A06AB870818121A1632A98
+ 5D169DCD10E58B90B32840358C11A4D920622A5C604145365833482308D4F5E6
+ 3134154F62A8EE4805F35B2B66334CDA8B3004C50098E62F2F6E823581347F7F
+ FB80E1E58DBD0C8BD67D6588F6656258BAF91F7E03AE3D66C009081A800CD61F
+ B161C0072243F419711AF0F7F777864D275D192282F5B06A5EB1F23C43D7FCD9
+ 0CE7774E67C43000A41984B79EF3C36AC08F9F7F18366CB8CC10116EC860E491
+ 85EA0298E6BFBFBE33ECB8120E36C071E64DB8E6ED09CA40037E33ECD87E03EC
+ 02142F206BFEF7FB07C3AE9BF1282E00D90CD20CC6BFFE30EC3B719561CAECE5
+ 100374837B503483E8BDF733305C000333DC04198E9EBB893040CBAF1945F3DF
+ 3FDF190E3C2E041B806EF34F283E73E52EC200758F2A865B3B3A506CB927739E
+ C1C75383C177F17D0C17745971325CBEF51062004820CF19352F808065E64506
+ 172748A0C16CFDF3F71F9806B9E4F683A70803B081E56B2EFEB7B19663D875F4
+ 32CEC444D080AED9331808010085EE16005695A1DA0000000049454E44AE4260
+ 82}
+ Name = 'PngImage27'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 61000000097048597300000E9C00000E9C01079453DD000002324944415478DA
+ 63FCFFFF3F03258011640023232386C4922BFF0D9818FFC57EFFFE57FDEFBFFF
+ CC8CFF19BEF0F1B36D5C73E9EAAAD5613ABF60166318505FFF9F4939F077F98B
+ 97BF6BEFDCFEC6F9EDDB3F86BF7F810A9918192424D9FEF3F1B32FBFFA93236E
+ 5528C35FB8018D9B7E2C6DF0E38859759581F5E7BF3FD36EDEF89AF4E51B03E3
+ B72F7FC0867EF8F897E1EF3F06867F40ACA1C9F96FE392D5BA5737265D831BE0
+ 58F9F0BF83A5F83245796696CB973E87FEF9C70CD6FCE2D92B86E78F6EFCFCF7
+ EFEF17360E5E4151590326666626067D7DDE65F57E1CD12806288BB3FF676567
+ 66E0E062036B7EFEF425C39307576E8A2A19B9EE6A557DA217B2A88E9B5FBA41
+ 405C87C1DC9CEF01D0004514031444391804843918409ADFBFFFCE70E7EA91FB
+ 9F3FF06BDED9E1F513A450357481341FBBD03D611973362B4B2C067CF8C1C060
+ A020C0F0E3FB4F86CF1FDEBCBE7FFD84C3B54DC9D760812B13DACB29CAAAF84A
+ 58C69AC7C61A8B01CF9FFF61E014646190E365627870FD40C3A535718DC8D1AA
+ E2B1988F5788E7B998823597A5392FA6010C1F1EC0157FF8F081E1DF9F4F0D1C
+ EC6AFDA7965A7C02899924ED550746C555793523665D1D2ED440C49690D08149
+ D2A9764E3ED90A037DEEFF3696BC7161EA0C4B8836402FF6A41A37AFF0690E2E
+ 7E3E7B5B9E65C08494084C48BF8832402BF40A0F8F30DB3E0E2E4153277B9E65
+ 0DFE9C60A7E34CCA280098ACCDDF3C5A2925C913ACAFCBB51CA6997803ECF7B3
+ 301C74FC834D0AC5004A000026261CF09ABF155A0000000049454E44AE426082}
+ Name = 'PngImage29'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001CB4944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC480D580CAA3950C4B6E2C61789CFC18A7
+ E663676F3054B5CDC234E0EFFFBF0C327364185E7C7BC17020E40083BDB43DC3
+ 3FA09A3F7F109A41F8ECE53BD80D587B672D43CBA916860BAF2F3024682530CC
+ 759987A119C4BF78FD1E76031CD73A324CB09FC0E0B0C681E1CFBF3F0C8F129E
+ 32B0317280350ADA2D6278B62B12CCBE76FB21A60137DFDF64D058A481E2EFB9
+ 4E0B188214C2C09A41E0E1B630A00BFE32DCBAFF04D380C243850C06A2060CB1
+ 1A710C871E1F61705C6FC7E020E5C470A02D0C6CB394DB7286BB9B82812EF8C7
+ 70FFF13354034CED04194C969B303C4B7DCEC0CDC40B76A6DA52258667536B19
+ 562D92623017B16190F75AC57075B53F58EEF9ABD7A806347E886578F0E90183
+ 3CAF02C3D5C89B0C69FB531896555B63A4830BCB7DC02E78F3EE2DAA01317E56
+ 28A12CECB098E1F18E70440CFCFECBA01DBA91E1F4622F30FFE3A70FA806847B
+ 99A36886815B1B82E09A61E0E06C17866FDF3EA31A10E4668212DFC83643C410
+ 72FFFEFD67F8F1E30BAA017E4E460CA72EDE222933C10D00E5C6893396929C1B
+ F333A26300FC1C815930D4A9C10000000049454E44AE426082}
+ Name = 'PngImage25'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000000F94944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
+ 01D5FCF983D00CC2672FDFC134809B9B1BAF0B9EBE7803D60C32ECE2F57B845D
+ 80CD6618FFDAED87A4BB00062EDF78C870EBFE13DC2EC067F31F30FF1FC3FDC7
+ CF487701C8E61F3FFF800D7AFEEA35A601E836FFFCF507C5F6DFBF612EFAC7F0
+ E6DD5B540362FCAC18F8F978890A833D47AF327CFCF401D580702F7354DB70D8
+ 0C93FBF6ED33AA01416E26446BFEF7EF3FC38F1F5F500DF07332623875F11651
+ 5E8001B801A0DC3871C6529273637E46740C002BB66C59EAC44C620000000049
+ 454E44AE426082}
+ Name = 'PngImage31'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001004944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
+ 01D5FCF983D00CC2672FDFC16D0037373756839EBE7803D60C32ECE2F57B845D
+ 80CD6618FFDAED879806E0B2191D5CBEF190E1D6FD27B85D80CFE63F60FE3F86
+ FB8F9F613700A499978707A7CD3F7EFE011BF4FCD56B4C03D06DFEF9EB0F8AED
+ BF7FC35CF48FE1CDBBB7A806C4F85931F0F3F11215067B8E5E65F8F8E903AA01
+ E15EE6A8B6E1B01926F7EDDB67540382DC4C88D6FCEFDF7F861F3FBEA01AE0E7
+ 64C470EAE22DA2BC0003700340B971E28CA524E7C6FC8CE8180048E16F597BCE
+ 9D230000000049454E44AE426082}
+ Name = 'PngImage21'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000000FC4944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
+ 01D5FCF983D00CC2672FDFC16D003737375E97DC79F09CE1E2F57B845D80CD66
+ 18FFDAED87980610B219062EDF78C870EBFE13DC2EC067F31F30FF1FC3FDC7CF
+ B01B00D2CCCBC383D705C7CEDE6278FEEA35A601E836FFFCF507C5F6DFBF612E
+ FAC7F0E6DD5B540362FCAC18F8F978890A833D47AF327CFCF401D580702F7354
+ DB70D80C93FBF6ED33AA01416E26446BFEF7EF3FC38F1F5F500DF07332623875
+ F116515E8001B801A0DC3871C6529273637E46740C0021BE635977EAA72D0000
+ 000049454E44AE426082}
+ Name = 'PngImage30'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000000F14944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC4409201C89A8F9DBDC150D5368B3803FE
+ 01D5FCF983D00CC2672FDFC134809B9B9B286FDC79F09CE1E2F57B845D80CD66
+ 18FFDAED87E4BBE0F28D870CB7EE3FC1ED027C36FF01F3FF31DC7FFC8C7C171C
+ 3B7B8BE1F9ABD79806A0DBFCF3D71F14DB7FFF86B9E81FC39B776F510D88F1B3
+ 62E0E7E325CA057B8E5E65F8F8E903AA01E15EE6A8B6E1B01926F7EDDB675403
+ 82DC4C88D6FCEFDF7F861F3FBEA01AE0E764C470EAE22DA2BC0003700340B971
+ E28CA524E7C6FC8CE8180004936059AAE3EEF00000000049454E44AE426082}
+ Name = 'PngImage12'
+ Background = clWindow
+ end
+ item
+ PngImage.Data = {
+ 89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
+ 610000000970485973000017120000171201679FD252000001704944415478DA
+ 63FCFFFF3F0325801164C0C20D47A381F41292353332C6800D58B0FEC8FF8440
+ 1BA234FDF9FB8FE1F79FBF60EC105CC48062C0BEFB0C0CF593F7331C79CFC5B0
+ B7CE9CC14911B7E663676F3054B5CD4235C0B6683F4348B81543C105A0EA190B
+ 18FE9F4F67686C6CC47045565E31C3D9CB77300D604C3CC9C06061C0C0F0E206
+ 83C186090CE7CFCF67E0E6E6C630E0CE83E70C17AFDFC33400E405E7A0990C06
+ 0C27187AD7CD677050F8CFF0E70FC2D9200CE35FBBFD10D30064F0EF3F6ECD7F
+ 80F8D6FD27B80D20A4F937907DFFF133EC5E80C5C2FA0A730607A9EF189A7FFC
+ FC03663F7FF59A702CBCD813C530634A1F46207A072731BC79F716D580183F2B
+ 06D694D328B1B079473F83BA923486017B8E5E65F8F8E903AA01E15EE60C3B1F
+ B03204464062A174C97C062B81779030F80D0B0B44B87CFBF619D58020371394
+ 8083B3B168FEF7EF3FC38F1F5F500DF07332623875F1164999096E0028374E9C
+ B194E4DC989F111D03003D3E8159D33DF1820000000049454E44AE426082}
+ Name = 'PngImage11'
+ Background = clWindow
+ end>
+ PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
+ Left = 91
+ Top = 136
+ Bitmap = {}
+ end
+end
diff --git a/Source/GUIBase/uViewRichEditor.pas b/Source/GUIBase/uViewRichEditor.pas
new file mode 100644
index 00000000..2f554bb7
--- /dev/null
+++ b/Source/GUIBase/uViewRichEditor.pas
@@ -0,0 +1,238 @@
+unit uViewRichEditor;
+
+interface
+
+uses
+ Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
+ Dialogs, uViewBase, Menus, cxLookAndFeelPainters, cxGraphics, cxSpinEdit,
+ cxSpinButton, cxMaskEdit, cxFontNameComboBox, cxControls, cxContainer, cxEdit,
+ cxTextEdit, cxDropDownEdit, cxColorComboBox, StdCtrls, cxButtons, ComCtrls,
+ ToolWin, ImgList, ActnList, TBXExtItems, TB2ExtItems, TB2Item, TBX, TB2Dock,
+ TB2Toolbar, PngImageList, cxMemo, cxRichEdit, ExtCtrls, DB, uDAInterfaces,
+ uDADataTable, cxDBRichEdit;
+
+type
+ IViewRichEditor = interface(IViewBase)
+ ['{C29F4555-A57A-436D-BF23-2E2F013BC13D}']
+ end;
+
+
+ TfrViewRichEditor = class(TfrViewBase, IViewRichEditor)
+ ActionList: TActionList;
+ actEditCut: TAction;
+ actEditCopy: TAction;
+ actEditPaste: TAction;
+ actEditFont: TAction;
+ actBullets: TAction;
+ pmColorSchemes: TPopupMenu;
+ miStandard: TMenuItem;
+ miHTML: TMenuItem;
+ miWeb: TMenuItem;
+ miWebSorted: TMenuItem;
+ ToolbarImages: TImageList;
+ TBXDock1: TTBXDock;
+ TBXToolbar1: TTBXToolbar;
+ bBold: TTBXItem;
+ bItalic: TTBXItem;
+ TBXSeparatorItem1: TTBXSeparatorItem;
+ bUnderline: TTBXItem;
+ TBXSeparatorItem2: TTBXSeparatorItem;
+ TBXItem5: TTBXItem;
+ TBXItem6: TTBXItem;
+ TBXItem7: TTBXItem;
+ TBXSeparatorItem4: TTBXSeparatorItem;
+ bAlignLeft: TTBXItem;
+ bAlignCenter: TTBXItem;
+ bAlignRight: TTBXItem;
+ LargeImages: TPngImageList;
+ SmallImages: TPngImageList;
+ TBControlItem1: TTBControlItem;
+ fcbFontName: TcxFontNameComboBox;
+ TBXColorItem1: TTBXColorItem;
+ RichEdit: TcxDBRichEdit;
+ TBControlItem2: TTBControlItem;
+ meFontSize: TcxMaskEdit;
+ TBControlItem3: TTBControlItem;
+ cxSpinButton: TcxSpinButton;
+ TBXSeparatorItem3: TTBXSeparatorItem;
+ TBXSeparatorItem5: TTBXSeparatorItem;
+ bBullets: TTBXItem;
+ procedure actBulletsExecute(Sender: TObject);
+ procedure actEditCutExecute(Sender: TObject);
+ procedure actEditCopyExecute(Sender: TObject);
+ procedure actEditPasteExecute(Sender: TObject);
+ procedure RichEditPropertiesChange(Sender: TObject);
+ procedure CustomViewShow(Sender: TObject);
+ procedure RichEditPropertiesSelectionChange(Sender: TObject);
+ procedure cxFontNameComboBox1PropertiesChange(Sender: TObject);
+ procedure CustomViewCreate(Sender: TObject);
+ procedure fcbFontNamePropertiesInitPopup(Sender: TObject);
+ procedure meFontSizePropertiesChange(Sender: TObject);
+ procedure bBoldClick(Sender: TObject);
+ procedure bItalicClick(Sender: TObject);
+ procedure bUnderlineClick(Sender: TObject);
+ procedure bAlignLeftClick(Sender: TObject);
+ procedure bAlignCenterClick(Sender: TObject);
+ procedure bAlignRightClick(Sender: TObject);
+ procedure bBulletsClick(Sender: TObject);
+ private
+ FUpdating: Boolean;
+ FChanged: Boolean;
+ function CurrText: TTextAttributes;
+ public
+ { Public declarations }
+ end;
+
+implementation
+
+{$R *.dfm}
+
+procedure TfrViewRichEditor.actBulletsExecute(Sender: TObject);
+begin
+ if FUpdating or (RichEdit = nil) then Exit;
+ RichEdit.Paragraph.Numbering := TNumberingStyle(actBullets.Checked);
+end;
+
+procedure TfrViewRichEditor.actEditCopyExecute(Sender: TObject);
+begin
+ RichEdit.CopyToClipboard;
+end;
+
+procedure TfrViewRichEditor.actEditCutExecute(Sender: TObject);
+begin
+ RichEdit.CutToClipboard;
+end;
+
+procedure TfrViewRichEditor.actEditPasteExecute(Sender: TObject);
+begin
+ RichEdit.PasteFromClipboard;
+end;
+
+procedure TfrViewRichEditor.bAlignCenterClick(Sender: TObject);
+begin
+ if FUpdating or (RichEdit = nil) then Exit;
+ RichEdit.Paragraph.Alignment := TAlignment(TControl(Sender).Tag);
+end;
+
+procedure TfrViewRichEditor.bAlignLeftClick(Sender: TObject);
+begin
+ if FUpdating or (RichEdit = nil) then Exit;
+ RichEdit.Paragraph.Alignment := TAlignment(TControl(Sender).Tag);
+end;
+
+procedure TfrViewRichEditor.bAlignRightClick(Sender: TObject);
+begin
+ if FUpdating or (RichEdit = nil) then Exit;
+ RichEdit.Paragraph.Alignment := TAlignment(TControl(Sender).Tag);
+end;
+
+procedure TfrViewRichEditor.bBoldClick(Sender: TObject);
+begin
+ if FUpdating then Exit;
+ if bBold.Checked then
+ CurrText.Style := CurrText.Style + [fsBold]
+ else
+ CurrText.Style := CurrText.Style - [fsBold];
+end;
+
+procedure TfrViewRichEditor.bBulletsClick(Sender: TObject);
+begin
+ if FUpdating or (RichEdit = nil) then Exit;
+ RichEdit.Paragraph.Numbering := TNumberingStyle(bBullets.Checked);
+end;
+
+procedure TfrViewRichEditor.bItalicClick(Sender: TObject);
+begin
+ if FUpdating then Exit;
+ if bItalic.Checked then
+ CurrText.Style := CurrText.Style + [fsItalic]
+ else
+ CurrText.Style := CurrText.Style - [fsItalic];
+end;
+
+procedure TfrViewRichEditor.bUnderlineClick(Sender: TObject);
+begin
+ if FUpdating then Exit;
+ if bUnderline.Checked then
+ CurrText.Style := CurrText.Style + [fsUnderline]
+ else
+ CurrText.Style := CurrText.Style - [fsUnderline];
+end;
+
+function TfrViewRichEditor.CurrText: TTextAttributes;
+begin
+{ if RichEdit.SelLength > 0 then}
+ Result := RichEdit.SelAttributes
+{ else
+ Result := RichEdit.DefAttributes;}
+end;
+
+procedure TfrViewRichEditor.CustomViewCreate(Sender: TObject);
+begin
+ inherited;
+ CurrText.Name := DefFontData.Name;
+ RichEditPropertiesSelectionChange(Self);
+end;
+
+procedure TfrViewRichEditor.CustomViewShow(Sender: TObject);
+begin
+ inherited;
+ FChanged := False;
+end;
+
+procedure TfrViewRichEditor.cxFontNameComboBox1PropertiesChange(
+ Sender: TObject);
+begin
+ if FUpdating then Exit;
+ CurrText.Name := TcxFontNameComboBox(Sender).Text;
+end;
+
+procedure TfrViewRichEditor.fcbFontNamePropertiesInitPopup(Sender: TObject);
+begin
+ inherited;
+ fcbFontName.Properties.FontPreview.FontStyle := CurrText.Style;
+end;
+
+procedure TfrViewRichEditor.meFontSizePropertiesChange(Sender: TObject);
+begin
+ if FUpdating then Exit;
+ if meFontSize.EditText <> '' then
+ CurrText.Size := StrToInt(meFontSize.EditText)
+ else
+ CurrText.Size := 0;
+end;
+
+procedure TfrViewRichEditor.RichEditPropertiesChange(Sender: TObject);
+begin
+ FChanged := True;
+end;
+
+procedure TfrViewRichEditor.RichEditPropertiesSelectionChange(Sender: TObject);
+begin
+ with RichEdit.Paragraph do
+ try
+ FUpdating := True;
+ bBold.Checked := fsBold in CurrText.Style;
+ bItalic.Checked := fsItalic in CurrText.Style;
+ bUnderline.Checked := fsUnderline in CurrText.Style;
+ bBullets.Checked := Boolean(Numbering);
+ meFontSize.Text := IntToStr(CurrText.Size);
+ fcbFontName.EditValue := CurrText.Name;
+ //cxColorComboBox.EditValue := CurrText.Color;
+ case Ord(Alignment) of
+ 0: begin
+ bAlignLeft.Checked := True;
+ end;
+ 1: begin
+ bAlignRight.Checked := True;
+ end;
+ 2: begin
+ bAlignCenter.Checked := True;
+ end;
+ end;
+ finally
+ FUpdating := False;
+ end;
+end;
+
+end.
diff --git a/Source/Informes/InfPresupuestoCliente.fr3 b/Source/Informes/InfPresupuestoCliente.fr3
index 89d9318e..5fabf2e5 100644
--- a/Source/Informes/InfPresupuestoCliente.fr3
+++ b/Source/Informes/InfPresupuestoCliente.fr3
@@ -1,12 +1,84 @@
-
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
diff --git a/Source/Modulos/Contactos/Views/uEditorDireccion.dfm b/Source/Modulos/Contactos/Views/uEditorDireccion.dfm
index d9a08928..95a926b9 100644
--- a/Source/Modulos/Contactos/Views/uEditorDireccion.dfm
+++ b/Source/Modulos/Contactos/Views/uEditorDireccion.dfm
@@ -4,7 +4,7 @@ object fEditorDireccion: TfEditorDireccion
ActiveControl = eNombre
BorderStyle = bsDialog
Caption = 'Cambiar datos de la direcci'#243'n'
- ClientHeight = 589
+ ClientHeight = 499
ClientWidth = 426
Color = clBtnFace
ParentFont = True
@@ -12,14 +12,14 @@ object fEditorDireccion: TfEditorDireccion
Position = poOwnerFormCenter
DesignSize = (
426
- 589)
+ 499)
PixelsPerInch = 96
TextHeight = 13
object Bevel1: TBevel
Left = 8
Top = 8
- Width = 322
- Height = 511
+ Width = 329
+ Height = 457
Anchors = [akLeft, akTop, akRight]
Shape = bsFrame
end
@@ -120,20 +120,14 @@ object fEditorDireccion: TfEditorDireccion
AutoSize = False
Caption = 'Notas:'
end
- object Bevel2: TBevel
- Left = 20
- Top = 457
- Width = 306
- Height = 9
- Shape = bsBottomLine
- end
object Label10: TLabel
- Left = 21
- Top = 489
+ Left = 20
+ Top = 471
Width = 156
Height = 13
AutoSize = False
Caption = 'Coste del env'#237'o a esta direcci'#243'n:'
+ Visible = False
end
object Label11: TLabel
Left = 21
@@ -160,7 +154,6 @@ object fEditorDireccion: TfEditorDireccion
Caption = '&Aceptar'
ModalResult = 1
TabOrder = 0
- ExplicitLeft = 350
end
object CancelBtn: TButton
Left = 343
@@ -172,7 +165,6 @@ object fEditorDireccion: TfEditorDireccion
Caption = '&Cancelar'
ModalResult = 2
TabOrder = 1
- ExplicitLeft = 350
end
object eDireccion: TDBEdit
Left = 135
@@ -272,8 +264,8 @@ object fEditorDireccion: TfEditorDireccion
TabOrder = 10
end
object ePortes: TcxDBCurrencyEdit
- Left = 183
- Top = 486
+ Left = 194
+ Top = 471
DataBinding.DataField = 'PORTE'
DataBinding.DataSource = dsDireccion
Properties.UseThousandSeparator = True
@@ -286,6 +278,7 @@ object fEditorDireccion: TfEditorDireccion
StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 11
+ Visible = False
Width = 143
end
object eMovil: TDBEdit
diff --git a/Source/Modulos/Contactos/Views/uEditorDireccion.pas b/Source/Modulos/Contactos/Views/uEditorDireccion.pas
index dd882276..c46beae0 100644
--- a/Source/Modulos/Contactos/Views/uEditorDireccion.pas
+++ b/Source/Modulos/Contactos/Views/uEditorDireccion.pas
@@ -6,7 +6,7 @@ uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
Buttons, ExtCtrls, Mask, DBCtrls, DB, uDADataTable, PngSpeedButton,
cxControls, cxContainer, cxEdit, cxTextEdit, cxHyperLinkEdit, cxDBEdit,
uIEditorDireccionContacto, uDireccionesContactoController, uBizDireccionesContacto,
- cxCurrencyEdit;
+ cxCurrencyEdit, uDAInterfaces;
type
TfEditorDireccion = class(TForm, IEditorEditorDireccion)
@@ -33,7 +33,6 @@ type
Label8: TLabel;
Label9: TLabel;
eNotas: TDBMemo;
- Bevel2: TBevel;
Label10: TLabel;
ePortes: TcxDBCurrencyEdit;
Label11: TLabel;
diff --git a/Source/Modulos/Contactos/Views/uViewProveedor.dfm b/Source/Modulos/Contactos/Views/uViewProveedor.dfm
index 6a3856e5..8617c312 100644
--- a/Source/Modulos/Contactos/Views/uViewProveedor.dfm
+++ b/Source/Modulos/Contactos/Views/uViewProveedor.dfm
@@ -19,7 +19,7 @@ inherited frViewProveedor: TfrViewProveedor
ExplicitLeft = 613
end
object Label1: TLabel [3]
- Left = 366
+ Left = 370
Top = 307
Width = 342
Height = 26
@@ -29,37 +29,37 @@ inherited frViewProveedor: TfrViewProveedor
WordWrap = True
end
inherited eCalle: TcxDBTextEdit
- Left = 124
+ Left = 134
Top = 304
TabOrder = 9
- ExplicitLeft = 124
+ ExplicitLeft = 134
ExplicitTop = 304
ExplicitWidth = 264
Width = 264
end
inherited eProvincia: TcxDBTextEdit
- Left = 124
+ Left = 134
Top = 358
TabOrder = 12
- ExplicitLeft = 124
+ ExplicitLeft = 134
ExplicitTop = 358
ExplicitWidth = 264
Width = 264
end
inherited ePoblacion: TcxDBTextEdit
- Left = 124
+ Left = 134
Top = 331
TabOrder = 10
- ExplicitLeft = 124
+ ExplicitLeft = 134
ExplicitTop = 331
ExplicitWidth = 163
Width = 163
end
inherited eCodigoPostal: TcxDBTextEdit
- Left = 271
+ Left = 275
Top = 331
TabOrder = 11
- ExplicitLeft = 271
+ ExplicitLeft = 275
ExplicitTop = 331
end
inherited eObservaciones: TcxDBMemo
@@ -70,7 +70,7 @@ inherited frViewProveedor: TfrViewProveedor
Height = 20
end
object cxDBCheckBox1: TcxDBCheckBox [9]
- Left = 366
+ Left = 370
Top = 280
Caption = 'Incluir este proveedor en la tienda web'
DataBinding.DataField = 'TIENDA_WEB'
@@ -119,7 +119,7 @@ inherited frViewProveedor: TfrViewProveedor
Width = 326
end
object eCertificaciones: TcxDBTextEdit [11]
- Left = 124
+ Left = 134
Top = 220
DataBinding.DataField = 'CERTIFICACION'
DataBinding.DataSource = dsContacto
@@ -138,7 +138,7 @@ inherited frViewProveedor: TfrViewProveedor
Width = 227
end
object cbGrupoProveedor: TcxDBComboBox [12]
- Left = 124
+ Left = 134
Top = 136
DataBinding.DataField = 'GRUPO_PROVEEDOR'
DataBinding.DataSource = dsContacto
@@ -161,18 +161,8 @@ inherited frViewProveedor: TfrViewProveedor
TabOrder = 5
Width = 227
end
- inherited eTlfParticular: TcxDBTextEdit
- Left = 461
- TabOrder = 14
- ExplicitLeft = 461
- end
- inherited eTlfTrabajo: TcxDBTextEdit
- Left = 461
- TabOrder = 13
- ExplicitLeft = 461
- end
- object eDescripcionProveedor: TcxDBTextEdit [15]
- Left = 124
+ object eDescripcionProveedor: TcxDBTextEdit [13]
+ Left = 134
Top = 82
DataBinding.DataField = 'DESCRIPCION_PROVEEDOR'
DataBinding.DataSource = dsContacto
@@ -190,8 +180,8 @@ inherited frViewProveedor: TfrViewProveedor
TabOrder = 3
Width = 221
end
- object eCodigoAsignado: TcxDBTextEdit [16]
- Left = 124
+ object eCodigoAsignado: TcxDBTextEdit [14]
+ Left = 134
Top = 109
DataBinding.DataField = 'CODIGO_ASIGNADO'
DataBinding.DataSource = dsContacto
@@ -209,53 +199,83 @@ inherited frViewProveedor: TfrViewProveedor
TabOrder = 4
Width = 221
end
+ inherited eTlfParticular: TcxDBTextEdit
+ Left = 465
+ TabOrder = 14
+ ExplicitLeft = 465
+ ExplicitWidth = 91
+ Width = 91
+ end
+ inherited eTlfTrabajo: TcxDBTextEdit
+ Left = 465
+ TabOrder = 13
+ ExplicitLeft = 465
+ ExplicitWidth = 127
+ Width = 127
+ end
inherited eTlfMovil: TcxDBTextEdit
- Left = 461
+ Left = 465
TabOrder = 15
- ExplicitLeft = 461
+ ExplicitLeft = 465
+ ExplicitWidth = 155
+ Width = 155
end
inherited eFax: TcxDBTextEdit
- Left = 461
+ Left = 465
TabOrder = 16
- ExplicitLeft = 461
+ ExplicitLeft = 465
+ ExplicitWidth = 121
+ Width = 121
end
inherited eNombre: TcxDBTextEdit
- Left = 124
- ExplicitLeft = 124
+ Left = 134
+ ExplicitLeft = 134
+ ExplicitWidth = 221
+ Width = 221
end
inherited eNIFCIF: TcxDBTextEdit
- Left = 197
- ExplicitLeft = 197
+ Left = 207
+ ExplicitLeft = 207
ExplicitWidth = 205
Width = 205
end
inherited eMailTrabajo: TcxDBHyperLinkEdit
- Left = 461
+ Left = 465
Properties.Prefix = 'mailto:'
TabOrder = 17
- ExplicitLeft = 461
+ ExplicitLeft = 465
+ ExplicitWidth = 133
+ Width = 133
end
inherited eMailParticular: TcxDBHyperLinkEdit
- Left = 461
+ Left = 465
Properties.Prefix = 'mailto:'
TabOrder = 18
- ExplicitLeft = 461
+ ExplicitLeft = 465
+ ExplicitWidth = 133
+ Width = 133
end
inherited ePaginaWeb: TcxDBHyperLinkEdit
- Left = 461
+ Left = 465
TabOrder = 19
- ExplicitLeft = 461
+ ExplicitLeft = 465
+ ExplicitWidth = 133
+ Width = 133
end
inherited eReferencia: TcxDBTextEdit
- Left = 124
- ExplicitLeft = 124
+ Left = 134
+ ExplicitLeft = 134
+ ExplicitWidth = 38
+ Width = 38
end
inherited ePersonaContacto: TcxDBTextEdit
- Left = 124
+ Left = 134
Top = 277
TabOrder = 8
- ExplicitLeft = 124
+ ExplicitLeft = 134
ExplicitTop = 277
+ ExplicitWidth = 256
+ Width = 256
end
inherited dxLayoutControlContactoGroup_Root: TdxLayoutGroup
inherited dxLayoutControlContactoGroup9: TdxLayoutGroup
@@ -286,7 +306,7 @@ inherited frViewProveedor: TfrViewProveedor
ControlOptions.ShowBorder = False
end
object dxLayoutControlContactoItem23: TdxLayoutItem
- Caption = 'Certificaciones:'
+ Caption = 'Tipo de homologaci'#243'n:'
Control = eCertificaciones
ControlOptions.ShowBorder = False
end
diff --git a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm
index bb8e7b64..4fc3c91d 100644
--- a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm
+++ b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.dfm
@@ -1,8 +1,8 @@
object RptFacturasCliente: TRptFacturasCliente
OldCreateOrder = True
OnCreate = DataModuleCreate
- Height = 405
- Width = 447
+ Height = 577
+ Width = 479
object DADataCabecera: TDADataSource
Left = 264
Top = 72
@@ -39,34 +39,6 @@ object RptFacturasCliente: TRptFacturasCliente
Left = 344
Top = 128
end
- object DABINAdapter: TDABINAdapter
- Left = 48
- Top = 80
- end
- object frxRichObject1: TfrxRichObject
- Left = 48
- Top = 296
- end
- object frxBarCodeObject1: TfrxBarCodeObject
- Left = 144
- Top = 296
- end
- object frxOLEObject1: TfrxOLEObject
- Left = 48
- Top = 344
- end
- object frxCrossObject1: TfrxCrossObject
- Left = 144
- Top = 344
- end
- object frxCheckBoxObject1: TfrxCheckBoxObject
- Left = 256
- Top = 296
- end
- object frxGradientObject1: TfrxGradientObject
- Left = 360
- Top = 296
- end
object schReport: TDASchema
ConnectionManager = dmServer.ConnectionManager
Datasets = <
@@ -823,7 +795,7 @@ object RptFacturasCliente: TRptFacturasCliente
Top = 158
end
object frxReport: TfrxReport
- Version = '3.23.7'
+ Version = '4.3'
DotMatrixReport = False
EngineOptions.DoublePass = True
IniFile = '\Software\Fast Reports'
@@ -831,6 +803,7 @@ object RptFacturasCliente: TRptFacturasCliente
PreviewOptions.OutlineWidth = 180
PreviewOptions.Zoom = 1.000000000000000000
PrintOptions.Printer = 'Default'
+ PrintOptions.PrintOnSheet = 0
ReportOptions.CreateDate = 37871.995398692100000000
ReportOptions.LastChange = 39290.847101226850000000
ReportOptions.VersionBuild = '1'
@@ -986,70 +959,6 @@ object RptFacturasCliente: TRptFacturasCliente
OnStartReport = 'frxReportOnStartReport'
Left = 169
Top = 16
- Datasets = <
- item
- DataSet = frxDBCabecera
- DataSetName = 'frxDBCabecera'
- end
- item
- DataSet = frxDBDetalles
- DataSetName = 'frxDBDetalles'
- end
- item
- DataSet = frxDBDataset1
- DataSetName = 'frxDBVencimientos'
- end>
- Variables = <
- item
- Name = ' Paginacion'
- Value = Null
- end
- item
- Name = 'Pagina'
- Value = Null
- end
- item
- Name = 'TotalPaginas'
- Value = Null
- end>
- Style = <
- item
- Name = 'Concepto normal'
- Color = clNone
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = []
- end
- item
- Name = 'Concepto subtotal'
- Color = clNone
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = [fsBold]
- end
- item
- Name = 'Cabecera de columna'
- Color = 15790320
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -12
- Font.Name = 'Tahoma'
- Font.Style = [fsBold]
- Frame.Typ = [ftLeft, ftRight, ftTop, ftBottom]
- end
- item
- Name = 'Concepto titulo'
- Color = clNone
- Font.Charset = ANSI_CHARSET
- Font.Color = clWindowText
- Font.Height = -13
- Font.Name = 'Tahoma'
- Font.Style = [fsBold]
- end>
end
object frxDBCabecera: TfrxDBDataset
UserName = 'frxDBCabecera'
@@ -1087,4 +996,98 @@ object RptFacturasCliente: TRptFacturasCliente
Left = 344
Top = 184
end
+ object frxBarCodeObject1: TfrxBarCodeObject
+ Left = 280
+ Top = 496
+ end
+ object frxOLEObject1: TfrxOLEObject
+ Left = 184
+ Top = 432
+ end
+ object frxCrossObject1: TfrxCrossObject
+ Left = 384
+ Top = 496
+ end
+ object frxCheckBoxObject1: TfrxCheckBoxObject
+ Left = 280
+ Top = 440
+ end
+ object frxGradientObject1: TfrxGradientObject
+ Left = 384
+ Top = 440
+ end
+ object IBDatabase1: TIBDatabase
+ DatabaseName = 'C:\Codigo Tecsitel\Output\Debug\Database\FACTUGES.FDB'
+ Params.Strings = (
+ 'user_name=sysdba'
+ 'password=masterkey'
+ 'lc_ctype=ISO8859_1')
+ LoginPrompt = False
+ DefaultTransaction = IBTransaction1
+ Left = 48
+ Top = 296
+ end
+ object IBTransaction1: TIBTransaction
+ Left = 48
+ Top = 352
+ end
+ object DataSource1: TDataSource
+ DataSet = cabecera
+ Left = 216
+ Top = 296
+ end
+ object DataSource2: TDataSource
+ DataSet = detalles
+ Left = 216
+ Top = 352
+ end
+ object cabecera: TIBQuery
+ Database = IBDatabase1
+ Transaction = IBTransaction1
+ SQL.Strings = (
+ 'SELECT '
+ ' ID, ID_EMPRESA, FECHA_PRESUPUESTO, FECHA_DECISION, '
+ ' REFERENCIA, SITUACION, ID_CLIENTE, NIF_CIF, NOMBRE, '
+ ' REFERENCIA_CLIENTE, CLIENTE_FINAL, PORTADA, MEMORIA, '
+
+ ' OBSERVACIONES, INCIDENCIAS, INCIDENCIAS_ACTIVAS, FECHA_ALTA,' +
+ ' '
+ ' FECHA_MODIFICACION, USUARIO, IMPORTE_NETO, IMPORTE_PORTE, '
+ ' DESCUENTO, IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, '
+ ' IMPORTE_IVA, IMPORTE_TOTAL, ID_FORMA_PAGO'
+ ' FROM'
+ ' V_PRESUPUESTOS_CLIENTE'
+ ' WHERE V_PRESUPUESTOS_CLIENTE.ID = 31')
+ Left = 136
+ Top = 296
+ end
+ object detalles: TIBQuery
+ Database = IBDatabase1
+ Transaction = IBTransaction1
+ SQL.Strings = (
+
+ 'SELECT PRESUPUESTOS_CLIENTE_DETALLES.ID, PRESUPUESTOS_CLIENTE_DE' +
+ 'TALLES.ID_PRESUPUESTO,'
+
+ ' PRESUPUESTOS_CLIENTE_DETALLES.POSICION, PRESUPUESTOS_CLIE' +
+ 'NTE_DETALLES.TIPO_DETALLE,'
+
+ ' PRESUPUESTOS_CLIENTE_DETALLES.CONCEPTO, PRESUPUESTOS_CLIE' +
+ 'NTE_DETALLES.CANTIDAD,'
+
+ ' PRESUPUESTOS_CLIENTE_DETALLES.IMPORTE_UNIDAD, PRESUPUESTO' +
+ 'S_CLIENTE_DETALLES.IMPORTE_TOTAL,'
+
+ ' ARTICULOS.REFERENCIA, ARTICULOS.FAMILIA, ARTICULOS.REFERE' +
+ 'NCIA_PROV as REFERENCIA_PROVEEDOR'
+ ''
+ 'FROM PRESUPUESTOS_CLIENTE_DETALLES'
+
+ 'LEFT JOIN ARTICULOS ON (PRESUPUESTOS_CLIENTE_DETALLES.ID_ARTICUL' +
+ 'O = ARTICULOS.ID)'
+ 'WHERE PRESUPUESTOS_CLIENTE_DETALLES.ID_PRESUPUESTO = 31'
+ 'ORDER BY POSICION')
+ Left = 136
+ Top = 352
+ end
end
diff --git a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas
index d9d03c27..bd95b1a1 100644
--- a/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas
+++ b/Source/Modulos/Facturas de cliente/Reports/uRptFacturasCliente_Server.pas
@@ -7,7 +7,7 @@ uses
Dialogs, frxClass, frxDBSet, uDAScriptingProvider,
uDADataTable, uDACDSDataTable, DB, uDAClasses, frxChart, frxGradient,
frxChBox, frxCross, frxOLE, frxBarcode, frxRich, uDABINAdapter, uROTypes,
- uDAInterfaces, uDADataStreamer;
+ uDAInterfaces, uDADataStreamer, IBCustomDataSet, IBQuery, IBDatabase;
type
TRptFacturasCliente = class(TDataModule)
@@ -15,13 +15,6 @@ type
DADataDetalles: TDADataSource;
tbl_FacturaCliente: TDACDSDataTable;
tbl_DetallesFacturaCliente: TDACDSDataTable;
- DABINAdapter: TDABINAdapter;
- frxRichObject1: TfrxRichObject;
- frxBarCodeObject1: TfrxBarCodeObject;
- frxOLEObject1: TfrxOLEObject;
- frxCrossObject1: TfrxCrossObject;
- frxCheckBoxObject1: TfrxCheckBoxObject;
- frxGradientObject1: TfrxGradientObject;
frxDBCabecera: TfrxDBDataset;
frxDBDetalles: TfrxDBDataset;
DADataVencimientos: TDADataSource;
@@ -30,10 +23,21 @@ type
schReport: TDASchema;
DataDictionary: TDADataDictionary;
frxReport: TfrxReport;
+ frxBarCodeObject1: TfrxBarCodeObject;
+ frxOLEObject1: TfrxOLEObject;
+ frxCrossObject1: TfrxCrossObject;
+ frxCheckBoxObject1: TfrxCheckBoxObject;
+ frxGradientObject1: TfrxGradientObject;
+ IBDatabase1: TIBDatabase;
+ IBTransaction1: TIBTransaction;
+ DataSource1: TDataSource;
+ DataSource2: TDataSource;
+ cabecera: TIBQuery;
+ detalles: TIBQuery;
procedure DataModuleCreate(Sender: TObject);
private
FConnection: IDAConnection;
- //Genera cada uno de los albaranes a imprimir
+ //Genera cada una de las facturas a imprimir
procedure GenerarFactura(const ID: integer); overload;
public
function GenerarFactura(const AFacturaID : String): Binary; overload;
@@ -78,7 +82,7 @@ begin
ID_Facturas := TStringList.Create;
ID_Facturas.CommaText := AFacturaID;
- //Vamos generando todos y cada uno de los albaranes recibidos
+ //Vamos generando todos y cada una de las facturas recibidas
for i := 0 to ID_Facturas.Count - 1 do
GenerarFactura(StrToInt(ID_Facturas.Strings[i]));
@@ -103,7 +107,7 @@ begin
dsDetail := schReport.NewDataset(FConnection, ds_InformeFacturasCliente_Detalles, ['ID_FACTURA'], [ID], False);
dsVencimientos := schReport.NewDataset(FConnection, ds_InformeFacturasCliente_Vencimientos, ['ID_FACTURA'], [ID], False);
- AStream.Clear;
+{ AStream.Clear;
DABINAdapter.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
DABINAdapter.ReadDataset(AStream, tbl_FacturaCliente, TRUE, '', TRUE, TRUE);
@@ -113,7 +117,7 @@ begin
AStream.Clear;
DABINAdapter.WriteDataset(AStream, dsVencimientos, [woRows, woSchema], -1);
- DABINAdapter.ReadDataset(AStream, tbl_Vencimientos, TRUE, '', TRUE, TRUE);
+ DABINAdapter.ReadDataset(AStream, tbl_Vencimientos, TRUE, '', TRUE, TRUE);}
frxReport.LoadFromFile(DarRutaInformes + rptFacturaCliente, True);
diff --git a/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas b/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas
index f2b94c44..1549b687 100644
--- a/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas
+++ b/Source/Modulos/Presupuestos de cliente/Controller/uPresupuestosClienteController.pas
@@ -270,9 +270,8 @@ begin
USUARIO := AppFactuGES.UsuarioActivo.UserName;
FECHA_PRESUPUESTO := DateOf(Now);
INCIDENCIAS_ACTIVAS := 0;
-// INCIDENCIAS := Nil;
+ INCIDENCIAS := NIL;
REFERENCIA := '';
-// SetFieldNull(DataTable, fld_PresupuestosClienteREF_TIENDA_WEB);
end;
Result.Post;
finally
diff --git a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm
index b73ee363..dd1eb816 100644
--- a/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Data/uDataModulePresupuestosCliente.dfm
@@ -63,7 +63,7 @@ inherited DataModulePresupuestosCliente: TDataModulePresupuestosCliente
Name = 'SITUACION'
DataType = datString
Size = 255
- DisplayLabel = 'Situaci'#195#179'n'
+ DisplayLabel = 'Situaci'#243'n'
DictionaryEntry = 'PresupuestosCliente_SITUACION'
end
item
diff --git a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm
index d3fde1b4..126529d8 100644
--- a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.dfm
@@ -2,38 +2,38 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
OldCreateOrder = True
OnCreate = DataModuleCreate
Height = 604
- Width = 447
- object DADataCabecera: TDADataSource
+ Width = 629
+ object DADSCabecera: TDADataSource
DataSet = tbl_Cabecera.Dataset
DataTable = tbl_Cabecera
Left = 264
Top = 72
end
- object DADataDetalles: TDADataSource
+ object DADSDetalles: TDADataSource
DataSet = tbl_Detalles.Dataset
DataTable = tbl_Detalles
- Left = 344
+ Left = 440
Top = 72
end
object frxBarCodeObject1: TfrxBarCodeObject
- Left = 280
- Top = 496
+ Left = 400
+ Top = 424
end
object frxOLEObject1: TfrxOLEObject
- Left = 184
- Top = 432
+ Left = 400
+ Top = 488
end
object frxCrossObject1: TfrxCrossObject
- Left = 384
- Top = 496
+ Left = 400
+ Top = 360
end
object frxCheckBoxObject1: TfrxCheckBoxObject
- Left = 280
- Top = 440
+ Left = 400
+ Top = 232
end
object frxGradientObject1: TfrxGradientObject
- Left = 384
- Top = 440
+ Left = 400
+ Top = 296
end
object schReport: TDASchema
ConnectionManager = dmServer.ConnectionManager
@@ -43,22 +43,30 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Params = <
item
Name = 'ID'
- Value = ''
+ Value = '31'
ParamType = daptInput
end>
Statements = <
item
Connection = 'IBX'
- TargetTable = 'V_PRESUPUESTOS_CLIENTE'
SQL =
- 'SELECT '#10' ID, ID_EMPRESA, FECHA_PRESUPUESTO, FECHA_DECISION, '#10 +
- ' REFERENCIA, SITUACION, ID_CLIENTE, NIF_CIF, NOMBRE, '#10' REF' +
- 'ERENCIA_CLIENTE, CLIENTE_FINAL, PORTADA, MEMORIA, '#10' OBSERVACI' +
- 'ONES, INCIDENCIAS, INCIDENCIAS_ACTIVAS, FECHA_ALTA, '#10' FECHA_M' +
- 'ODIFICACION, USUARIO, IMPORTE_NETO, IMPORTE_PORTE, '#10' DESCUENT' +
- 'O, IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, '#10' IMPORTE_IVA, IMP' +
- 'ORTE_TOTAL, ID_FORMA_PAGO'#10' FROM'#10' V_PRESUPUESTOS_CLIENTE'#10' WH' +
- 'ERE V_PRESUPUESTOS_CLIENTE.ID = :ID'#10
+ 'SELECT'#10' V_PRESUPUESTOS_CLIENTE.ID, V_PRESUPUESTOS_CLIENTE.ID_' +
+ 'EMPRESA,'#10' V_PRESUPUESTOS_CLIENTE.FECHA_PRESUPUESTO,'#10' V_PRE' +
+ 'SUPUESTOS_CLIENTE.REFERENCIA,'#10' V_PRESUPUESTOS_CLIENTE.PORTADA' +
+ ','#10' V_PRESUPUESTOS_CLIENTE.MEMORIA, V_PRESUPUESTOS_CLIENTE.OBS' +
+ 'ERVACIONES,'#10' V_PRESUPUESTOS_CLIENTE.IMPORTE_NETO, V_PRESUPUES' +
+ 'TOS_CLIENTE.IMPORTE_PORTE,'#10' V_PRESUPUESTOS_CLIENTE.DESCUENTO,' +
+ ' V_PRESUPUESTOS_CLIENTE.IMPORTE_DESCUENTO,'#10' V_PRESUPUESTOS_CL' +
+ 'IENTE.BASE_IMPONIBLE, V_PRESUPUESTOS_CLIENTE.IVA,'#10' V_PRESUPUE' +
+ 'STOS_CLIENTE.ID_CLIENTE,'#10' V_PRESUPUESTOS_CLIENTE.REFERENCIA_C' +
+ 'LIENTE,'#10' V_PRESUPUESTOS_CLIENTE.CLIENTE_FINAL,'#10' V_CLIENTES' +
+ '.NIF_CIF, V_CLIENTES.NOMBRE,'#10' V_PRESUPUESTOS_CLIENTE.IMPORTE_' +
+ 'IVA, V_PRESUPUESTOS_CLIENTE.IMPORTE_TOTAL,'#10' V_CLIENTES.PERSON' +
+ 'A_CONTACTO, V_CLIENTES.CALLE, V_CLIENTES.POBLACION,'#10' V_CLIENT' +
+ 'ES.PROVINCIA, V_CLIENTES.CODIGO_POSTAL'#10'FROM'#10' V_PRESUPUESTOS_C' +
+ 'LIENTE INNER JOIN V_CLIENTES ON'#10' (V_PRESUPUESTOS_CLIENTE.' +
+ 'ID_CLIENTE = V_CLIENTES.ID)'#10' WHERE V_PRESUPUESTOS_CLIENTE.ID = ' +
+ ':ID'#10
StatementType = stSQL
ColumnMappings = <
item
@@ -73,38 +81,10 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
DatasetField = 'FECHA_PRESUPUESTO'
TableField = 'FECHA_PRESUPUESTO'
end
- item
- DatasetField = 'FECHA_DECISION'
- TableField = 'FECHA_DECISION'
- end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
- item
- DatasetField = 'SITUACION'
- TableField = 'SITUACION'
- end
- item
- DatasetField = 'ID_CLIENTE'
- TableField = 'ID_CLIENTE'
- end
- item
- DatasetField = 'NIF_CIF'
- TableField = 'NIF_CIF'
- end
- item
- DatasetField = 'NOMBRE'
- TableField = 'NOMBRE'
- end
- item
- DatasetField = 'REFERENCIA_CLIENTE'
- TableField = 'REFERENCIA_CLIENTE'
- end
- item
- DatasetField = 'CLIENTE_FINAL'
- TableField = 'CLIENTE_FINAL'
- end
item
DatasetField = 'PORTADA'
TableField = 'PORTADA'
@@ -117,26 +97,6 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
- item
- DatasetField = 'INCIDENCIAS'
- TableField = 'INCIDENCIAS'
- end
- item
- DatasetField = 'INCIDENCIAS_ACTIVAS'
- TableField = 'INCIDENCIAS_ACTIVAS'
- end
- item
- DatasetField = 'FECHA_ALTA'
- TableField = 'FECHA_ALTA'
- end
- item
- DatasetField = 'FECHA_MODIFICACION'
- TableField = 'FECHA_MODIFICACION'
- end
- item
- DatasetField = 'USUARIO'
- TableField = 'USUARIO'
- end
item
DatasetField = 'IMPORTE_NETO'
TableField = 'IMPORTE_NETO'
@@ -161,6 +121,26 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
DatasetField = 'IVA'
TableField = 'IVA'
end
+ item
+ DatasetField = 'ID_CLIENTE'
+ TableField = 'ID_CLIENTE'
+ end
+ item
+ DatasetField = 'REFERENCIA_CLIENTE'
+ TableField = 'REFERENCIA_CLIENTE'
+ end
+ item
+ DatasetField = 'CLIENTE_FINAL'
+ TableField = 'CLIENTE_FINAL'
+ end
+ item
+ DatasetField = 'NIF_CIF'
+ TableField = 'NIF_CIF'
+ end
+ item
+ DatasetField = 'NOMBRE'
+ TableField = 'NOMBRE'
+ end
item
DatasetField = 'IMPORTE_IVA'
TableField = 'IMPORTE_IVA'
@@ -170,8 +150,24 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
TableField = 'IMPORTE_TOTAL'
end
item
- DatasetField = 'ID_FORMA_PAGO'
- TableField = 'ID_FORMA_PAGO'
+ DatasetField = 'PERSONA_CONTACTO'
+ TableField = 'PERSONA_CONTACTO'
+ end
+ item
+ DatasetField = 'CALLE'
+ TableField = 'CALLE'
+ end
+ item
+ DatasetField = 'POBLACION'
+ TableField = 'POBLACION'
+ end
+ item
+ DatasetField = 'PROVINCIA'
+ TableField = 'PROVINCIA'
+ end
+ item
+ DatasetField = 'CODIGO_POSTAL'
+ TableField = 'CODIGO_POSTAL'
end>
end>
Name = 'Informe_Cabecera'
@@ -190,44 +186,11 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'FECHA_PRESUPUESTO'
DataType = datDateTime
end
- item
- Name = 'FECHA_DECISION'
- DataType = datDateTime
- end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
- item
- Name = 'SITUACION'
- DataType = datString
- Size = 255
- end
- item
- Name = 'ID_CLIENTE'
- DataType = datInteger
- end
- item
- Name = 'NIF_CIF'
- DataType = datString
- Size = 15
- end
- item
- Name = 'NOMBRE'
- DataType = datString
- Size = 255
- end
- item
- Name = 'REFERENCIA_CLIENTE'
- DataType = datString
- Size = 255
- end
- item
- Name = 'CLIENTE_FINAL'
- DataType = datString
- Size = 255
- end
item
Name = 'PORTADA'
DataType = datMemo
@@ -240,28 +203,6 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'OBSERVACIONES'
DataType = datMemo
end
- item
- Name = 'INCIDENCIAS'
- DataType = datMemo
- end
- item
- Name = 'INCIDENCIAS_ACTIVAS'
- DataType = datSmallInt
- Required = True
- end
- item
- Name = 'FECHA_ALTA'
- DataType = datDateTime
- end
- item
- Name = 'FECHA_MODIFICACION'
- DataType = datDateTime
- end
- item
- Name = 'USUARIO'
- DataType = datString
- Size = 30
- end
item
Name = 'IMPORTE_NETO'
DataType = datCurrency
@@ -286,6 +227,30 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'IVA'
DataType = datFloat
end
+ item
+ Name = 'ID_CLIENTE'
+ DataType = datInteger
+ end
+ item
+ Name = 'REFERENCIA_CLIENTE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CLIENTE_FINAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'NIF_CIF'
+ DataType = datString
+ Size = 15
+ end
+ item
+ Name = 'NOMBRE'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'IMPORTE_IVA'
DataType = datCurrency
@@ -295,14 +260,173 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
DataType = datCurrency
end
item
- Name = 'ID_FORMA_PAGO'
- DataType = datInteger
+ Name = 'PERSONA_CONTACTO'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CALLE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'POBLACION'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'PROVINCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CODIGO_POSTAL'
+ DataType = datString
+ Size = 10
end>
+ ReadOnly = True
end
item
Params = <
+ item
+ Name = 'ID_PRESUPUESTO'
+ Value = ''
+ ParamType = daptInput
+ end>
+ Statements = <
+ item
+ ConnectionType = 'Interbase'
+ Default = True
+ SQL =
+ 'SELECT * FROM PRO_PRES_CAPITULOS_CONCEPTOS(:ID_PRESUPUESTO)'#10'WHER' +
+ 'E {where}'#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'ID'
+ SQLOrigin = 'ID'
+ end
+ item
+ DatasetField = 'ID_PRESUPUESTO'
+ SQLOrigin = 'ID_PRESUPUESTO'
+ end
+ item
+ DatasetField = 'POSICION'
+ SQLOrigin = 'POSICION'
+ end
+ item
+ DatasetField = 'TIPO_DETALLE'
+ SQLOrigin = 'TIPO_DETALLE'
+ end
+ item
+ DatasetField = 'ID_CAPITULO'
+ SQLOrigin = 'ID_CAPITULO'
+ end
+ item
+ DatasetField = 'ID_ARTICULO'
+ SQLOrigin = 'ID_ARTICULO'
+ end
+ item
+ DatasetField = 'REFERENCIA'
+ SQLOrigin = 'REFERENCIA'
+ end
+ item
+ DatasetField = 'CONCEPTO'
+ SQLOrigin = 'CONCEPTO'
+ end
+ item
+ DatasetField = 'CANTIDAD'
+ SQLOrigin = 'CANTIDAD'
+ end
+ item
+ DatasetField = 'IMPORTE_UNIDAD'
+ SQLOrigin = 'IMPORTE_UNIDAD'
+ end
+ item
+ DatasetField = 'DESCUENTO'
+ SQLOrigin = 'DESCUENTO'
+ end
+ item
+ DatasetField = 'IMPORTE_PORTE'
+ SQLOrigin = 'IMPORTE_PORTE'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ SQLOrigin = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'VISIBLE'
+ SQLOrigin = 'VISIBLE'
+ end>
+ end>
+ Name = 'Informe_Capitulos_Detalles'
+ Fields = <
item
Name = 'ID'
+ DataType = datInteger
+ InPrimaryKey = True
+ end
+ item
+ Name = 'ID_PRESUPUESTO'
+ DataType = datInteger
+ end
+ item
+ Name = 'POSICION'
+ DataType = datInteger
+ end
+ item
+ Name = 'TIPO_DETALLE'
+ DataType = datString
+ Size = 10
+ end
+ item
+ Name = 'ID_CAPITULO'
+ DataType = datInteger
+ end
+ item
+ Name = 'ID_ARTICULO'
+ DataType = datInteger
+ end
+ item
+ Name = 'REFERENCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CONCEPTO'
+ DataType = datString
+ Size = 2000
+ end
+ item
+ Name = 'CANTIDAD'
+ DataType = datInteger
+ end
+ item
+ Name = 'IMPORTE_UNIDAD'
+ DataType = datCurrency
+ end
+ item
+ Name = 'DESCUENTO'
+ DataType = datFloat
+ end
+ item
+ Name = 'IMPORTE_PORTE'
+ DataType = datCurrency
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'VISIBLE'
+ DataType = datSmallInt
+ end>
+ ReadOnly = True
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_PRESUPUESTO'
Value = ''
ParamType = daptInput
end>
@@ -311,68 +435,42 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Connection = 'IBX'
TargetTable = 'PRESUPUESTOS_CLIENTE_DETALLES'
SQL =
- 'SELECT PRESUPUESTOS_CLIENTE_DETALLES.ID, PRESUPUESTOS_CLIENTE_DE' +
- 'TALLES.ID_PRESUPUESTO,'#10' PRESUPUESTOS_CLIENTE_DETALLES.POSI' +
- 'CION, PRESUPUESTOS_CLIENTE_DETALLES.TIPO_DETALLE,'#10' PRESUPU' +
- 'ESTOS_CLIENTE_DETALLES.CONCEPTO, PRESUPUESTOS_CLIENTE_DETALLES.C' +
- 'ANTIDAD,'#10' PRESUPUESTOS_CLIENTE_DETALLES.IMPORTE_UNIDAD, PR' +
- 'ESUPUESTOS_CLIENTE_DETALLES.IMPORTE_TOTAL,'#10' ARTICULOS.REFE' +
- 'RENCIA, ARTICULOS.FAMILIA, ARTICULOS.REFERENCIA_PROV as REFERENC' +
- 'IA_PROVEEDOR'#10#10'FROM PRESUPUESTOS_CLIENTE_DETALLES'#10'LEFT JOIN ARTIC' +
- 'ULOS ON (PRESUPUESTOS_CLIENTE_DETALLES.ID_ARTICULO = ARTICULOS.I' +
- 'D)'#10'WHERE PRESUPUESTOS_CLIENTE_DETALLES.ID_PRESUPUESTO = :ID'#10'ORDE' +
- 'R BY POSICION'#10
+ 'select id, id_presupuesto, posicion, tipo_detalle, concepto,'#10' ' +
+ ' importe_total, visible'#10'from presupuestos_cliente_detalles'#10'wh' +
+ 'ere (tipo_detalle = '#39'Titulo'#39') and (id_presupuesto = :ID_PRESUPUE' +
+ 'STO)'#10'and {where}'#10'order by posicion'#10
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'ID'
- TableField = 'ID'
+ SQLOrigin = 'ID'
end
item
DatasetField = 'ID_PRESUPUESTO'
- TableField = 'ID_PRESUPUESTO'
+ SQLOrigin = 'ID_PRESUPUESTO'
end
item
DatasetField = 'POSICION'
- TableField = 'POSICION'
+ SQLOrigin = 'POSICION'
end
item
DatasetField = 'TIPO_DETALLE'
- TableField = 'TIPO_DETALLE'
+ SQLOrigin = 'TIPO_DETALLE'
end
item
DatasetField = 'CONCEPTO'
- TableField = 'CONCEPTO'
- end
- item
- DatasetField = 'CANTIDAD'
- TableField = 'CANTIDAD'
- end
- item
- DatasetField = 'IMPORTE_UNIDAD'
- TableField = 'IMPORTE_UNIDAD'
+ SQLOrigin = 'CONCEPTO'
end
item
DatasetField = 'IMPORTE_TOTAL'
- TableField = 'IMPORTE_TOTAL'
+ SQLOrigin = 'IMPORTE_TOTAL'
end
item
- DatasetField = 'REFERENCIA'
- TableField = ''
- SQLOrigin = 'REFERENCIA'
- end
- item
- DatasetField = 'FAMILIA'
- TableField = ''
- SQLOrigin = 'FAMILIA'
- end
- item
- DatasetField = 'REFERENCIA_PROVEEDOR'
- TableField = ''
- SQLOrigin = 'REFERENCIA_PROVEEDOR'
+ DatasetField = 'VISIBLE'
+ SQLOrigin = 'VISIBLE'
end>
end>
- Name = 'Informe_Detalles'
+ Name = 'Informe_Resumen'
Fields = <
item
Name = 'ID'
@@ -398,32 +496,92 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Size = 2000
end
item
- Name = 'CANTIDAD'
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'VISIBLE'
+ DataType = datSmallInt
+ end>
+ ReadOnly = True
+ end
+ item
+ Params = <
+ item
+ Name = 'ID_PRESUPUESTO'
+ Value = ''
+ ParamType = daptInput
+ end>
+ Statements = <
+ item
+ ConnectionType = 'Interbase'
+ Default = True
+ SQL = 'SELECT * FROM PRO_PRES_CAPITULOS(:ID_PRESUPUESTO)'#10'WHERE {where}'#10
+ StatementType = stSQL
+ ColumnMappings = <
+ item
+ DatasetField = 'ID'
+ SQLOrigin = 'ID'
+ end
+ item
+ DatasetField = 'ID_PRESUPUESTO'
+ SQLOrigin = 'ID_PRESUPUESTO'
+ end
+ item
+ DatasetField = 'POSICION'
+ SQLOrigin = 'POSICION'
+ end
+ item
+ DatasetField = 'TIPO_DETALLE'
+ SQLOrigin = 'TIPO_DETALLE'
+ end
+ item
+ DatasetField = 'CONCEPTO'
+ SQLOrigin = 'CONCEPTO'
+ end
+ item
+ DatasetField = 'IMPORTE_TOTAL'
+ SQLOrigin = 'IMPORTE_TOTAL'
+ end
+ item
+ DatasetField = 'VISIBLE'
+ SQLOrigin = 'VISIBLE'
+ end>
+ end>
+ Name = 'Informe_Capitulos'
+ Fields = <
+ item
+ Name = 'ID'
+ DataType = datInteger
+ InPrimaryKey = True
+ end
+ item
+ Name = 'ID_PRESUPUESTO'
DataType = datInteger
end
item
- Name = 'IMPORTE_UNIDAD'
- DataType = datCurrency
+ Name = 'POSICION'
+ DataType = datInteger
+ end
+ item
+ Name = 'TIPO_DETALLE'
+ DataType = datString
+ Size = 10
+ end
+ item
+ Name = 'CONCEPTO'
+ DataType = datString
+ Size = 2000
end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
end
item
- Name = 'REFERENCIA'
- DataType = datString
- Size = 255
- end
- item
- Name = 'FAMILIA'
- DataType = datString
- Size = 255
- end
- item
- Name = 'REFERENCIA_PROVEEDOR'
- DataType = datString
- Size = 255
+ Name = 'VISIBLE'
+ DataType = datSmallInt
end>
+ ReadOnly = True
end>
JoinDataTables = <>
UnionDataTables = <>
@@ -449,7 +607,7 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
PrintOptions.Printer = 'Por defecto'
PrintOptions.PrintOnSheet = 0
ReportOptions.CreateDate = 39065.872423495400000000
- ReportOptions.LastChange = 39404.953391377300000000
+ ReportOptions.LastChange = 39427.585072685190000000
ScriptLanguage = 'PascalScript'
ScriptText.Strings = (
''
@@ -510,17 +668,38 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
''
'procedure PageHeader1OnBeforePrint(Sender: TfrxComponent);'
'begin'
- ' if not Engine.FinalPass then'
+ '{ if not Engine.FinalPass then'
' Set('#39'TotalPaginas'#39', ( + 1));'
''
' if Engine.FinalPass then'
- ' Set('#39'Pagina'#39', ( + 1));'
+ ' Set('#39'Pagina'#39', ( + 1));} '
'end;'
''
'procedure frxReportOnStartReport(Sender: TfrxComponent);'
'begin'
' Set('#39'Pagina'#39', 0);'
' Set('#39'TotalPaginas'#39', 0);'
+
+ ' Set('#39'Capitulo'#39', 0); ' +
+ ' '
+ 'end;'
+ ''
+ 'procedure Rich3OnBeforePrint(Sender: TfrxComponent);'
+ 'begin'
+
+ ' if Engine.FinalPass then ' +
+ ' '
+
+ ' Set('#39'Capitulo'#39', ( + 1)); ' +
+ ' '
+ 'end;'
+ ''
+ 'procedure Page2OnBeforePrint(Sender: TfrxComponent);'
+ 'begin'
+ ' if (Length() = 0) then'
+
+ ' Page2.Visible := False; ' +
+ ' '
'end;'
''
'begin'
@@ -534,22 +713,18 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
end
object frxDBCabecera: TfrxDBDataset
UserName = 'frxDBCabecera'
- CloseDataSource = False
- DataSource = DADataCabecera
+ CloseDataSource = True
+ DataSource = DADSCabecera
Left = 264
Top = 16
end
object frxDBDetalles: TfrxDBDataset
UserName = 'frxDBDetalles'
- CloseDataSource = False
- DataSource = DADataDetalles
- Left = 344
+ CloseDataSource = True
+ DataSource = DADSDetalles
+ Left = 440
Top = 16
end
- object Bin2DataStreamer: TDABin2DataStreamer
- Left = 48
- Top = 80
- end
object tbl_Cabecera: TDAMemDataTable
RemoteUpdatesOptions = []
Fields = <
@@ -567,44 +742,11 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'FECHA_PRESUPUESTO'
DataType = datDateTime
end
- item
- Name = 'FECHA_DECISION'
- DataType = datDateTime
- end
item
Name = 'REFERENCIA'
DataType = datString
Size = 255
end
- item
- Name = 'SITUACION'
- DataType = datString
- Size = 255
- end
- item
- Name = 'ID_CLIENTE'
- DataType = datInteger
- end
- item
- Name = 'NIF_CIF'
- DataType = datString
- Size = 15
- end
- item
- Name = 'NOMBRE'
- DataType = datString
- Size = 255
- end
- item
- Name = 'REFERENCIA_CLIENTE'
- DataType = datString
- Size = 255
- end
- item
- Name = 'CLIENTE_FINAL'
- DataType = datString
- Size = 255
- end
item
Name = 'PORTADA'
DataType = datMemo
@@ -617,28 +759,6 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'OBSERVACIONES'
DataType = datMemo
end
- item
- Name = 'INCIDENCIAS'
- DataType = datMemo
- end
- item
- Name = 'INCIDENCIAS_ACTIVAS'
- DataType = datSmallInt
- Required = True
- end
- item
- Name = 'FECHA_ALTA'
- DataType = datDateTime
- end
- item
- Name = 'FECHA_MODIFICACION'
- DataType = datDateTime
- end
- item
- Name = 'USUARIO'
- DataType = datString
- Size = 30
- end
item
Name = 'IMPORTE_NETO'
DataType = datCurrency
@@ -663,6 +783,30 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'IVA'
DataType = datFloat
end
+ item
+ Name = 'ID_CLIENTE'
+ DataType = datInteger
+ end
+ item
+ Name = 'REFERENCIA_CLIENTE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CLIENTE_FINAL'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'NIF_CIF'
+ DataType = datString
+ Size = 15
+ end
+ item
+ Name = 'NOMBRE'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'IMPORTE_IVA'
DataType = datCurrency
@@ -672,21 +816,41 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
DataType = datCurrency
end
item
- Name = 'ID_FORMA_PAGO'
- DataType = datInteger
+ Name = 'PERSONA_CONTACTO'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CALLE'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'POBLACION'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'PROVINCIA'
+ DataType = datString
+ Size = 255
+ end
+ item
+ Name = 'CODIGO_POSTAL'
+ DataType = datString
+ Size = 10
end>
Params = <
item
Name = 'ID'
- Value = ''
+ Value = '31'
ParamType = daptInput
end>
- MasterMappingMode = mmDataRequest
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
LocalSchema = schReport
- LocalDataStreamer = Bin2DataStreamer
+ LocalDataStreamer = DABin2DataStreamer1
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
LogicalName = 'Informe_Cabecera'
@@ -715,6 +879,19 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
DataType = datString
Size = 10
end
+ item
+ Name = 'ID_CAPITULO'
+ DataType = datInteger
+ end
+ item
+ Name = 'ID_ARTICULO'
+ DataType = datInteger
+ end
+ item
+ Name = 'REFERENCIA'
+ DataType = datString
+ Size = 255
+ end
item
Name = 'CONCEPTO'
DataType = datString
@@ -728,50 +905,48 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Name = 'IMPORTE_UNIDAD'
DataType = datCurrency
end
+ item
+ Name = 'DESCUENTO'
+ DataType = datFloat
+ end
+ item
+ Name = 'IMPORTE_PORTE'
+ DataType = datCurrency
+ end
item
Name = 'IMPORTE_TOTAL'
DataType = datCurrency
end
item
- Name = 'REFERENCIA'
- DataType = datString
- Size = 255
- end
- item
- Name = 'FAMILIA'
- DataType = datString
- Size = 255
- end
- item
- Name = 'REFERENCIA_PROVEEDOR'
- DataType = datString
- Size = 255
+ Name = 'VISIBLE'
+ DataType = datSmallInt
end>
Params = <
item
- Name = 'ID'
+ Name = 'ID_PRESUPUESTO'
Value = ''
ParamType = daptInput
end>
+ MasterMappingMode = mmWhere
MasterParamsMappings.Strings = (
- 'ID=ID')
+ 'ID_PRESUPUESTO=ID_PRESUPUESTO')
LogChanges = False
StreamingOptions = [soDisableEventsWhileStreaming]
RemoteFetchEnabled = False
LocalSchema = schReport
- LocalDataStreamer = Bin2DataStreamer
- MasterSource = DADataCabecera
+ LocalDataStreamer = DABin2DataStreamer1
+ MasterSource = DADSCapitulos
MasterFields = 'ID'
- DetailFields = 'ID_PRESUPUESTO'
+ DetailFields = 'ID_CAPITULO'
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
- LogicalName = 'Informe_Detalles'
+ LogicalName = 'Informe_Capitulos_Detalles'
IndexDefs = <>
- Left = 344
+ Left = 440
Top = 128
end
object IBDatabase1: TIBDatabase
- DatabaseName = 'C:\Codigo Tecsitel\Output\Debug\Database\FACTUGES.FDB'
+ DatabaseName = 'C:\Codigo Tecsitel\Database\FACTUGES.FDB'
Params.Strings = (
'user_name=sysdba'
'password=masterkey'
@@ -791,57 +966,418 @@ object RptPresupuestosCliente: TRptPresupuestosCliente
Top = 296
end
object DataSource2: TDataSource
- DataSet = detalles
+ DataSet = capitulos
Left = 216
Top = 352
end
- object cabecera: TIBQuery
+ object capitulos: TIBQuery
Database = IBDatabase1
Transaction = IBTransaction1
SQL.Strings = (
- 'SELECT '
- ' ID, ID_EMPRESA, FECHA_PRESUPUESTO, FECHA_DECISION, '
- ' REFERENCIA, SITUACION, ID_CLIENTE, NIF_CIF, NOMBRE, '
- ' REFERENCIA_CLIENTE, CLIENTE_FINAL, PORTADA, MEMORIA, '
-
- ' OBSERVACIONES, INCIDENCIAS, INCIDENCIAS_ACTIVAS, FECHA_ALTA,' +
- ' '
- ' FECHA_MODIFICACION, USUARIO, IMPORTE_NETO, IMPORTE_PORTE, '
- ' DESCUENTO, IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, '
- ' IMPORTE_IVA, IMPORTE_TOTAL, ID_FORMA_PAGO'
- ' FROM'
- ' V_PRESUPUESTOS_CLIENTE'
- ' WHERE V_PRESUPUESTOS_CLIENTE.ID = 31')
+ 'SELECT * FROM PRO_PRES_CAPITULOS(31)')
Left = 136
- Top = 296
+ Top = 352
+ end
+ object DataSource3: TDataSource
+ DataSet = detalles
+ Left = 216
+ Top = 416
end
object detalles: TIBQuery
Database = IBDatabase1
Transaction = IBTransaction1
SQL.Strings = (
-
- 'SELECT PRESUPUESTOS_CLIENTE_DETALLES.ID, PRESUPUESTOS_CLIENTE_DE' +
- 'TALLES.ID_PRESUPUESTO,'
-
- ' PRESUPUESTOS_CLIENTE_DETALLES.POSICION, PRESUPUESTOS_CLIE' +
- 'NTE_DETALLES.TIPO_DETALLE,'
-
- ' PRESUPUESTOS_CLIENTE_DETALLES.CONCEPTO, PRESUPUESTOS_CLIE' +
- 'NTE_DETALLES.CANTIDAD,'
-
- ' PRESUPUESTOS_CLIENTE_DETALLES.IMPORTE_UNIDAD, PRESUPUESTO' +
- 'S_CLIENTE_DETALLES.IMPORTE_TOTAL,'
-
- ' ARTICULOS.REFERENCIA, ARTICULOS.FAMILIA, ARTICULOS.REFERE' +
- 'NCIA_PROV as REFERENCIA_PROVEEDOR'
- ''
- 'FROM PRESUPUESTOS_CLIENTE_DETALLES'
-
- 'LEFT JOIN ARTICULOS ON (PRESUPUESTOS_CLIENTE_DETALLES.ID_ARTICUL' +
- 'O = ARTICULOS.ID)'
- 'WHERE PRESUPUESTOS_CLIENTE_DETALLES.ID_PRESUPUESTO = 31'
- 'ORDER BY POSICION')
+ 'SELECT * FROM PRO_PRES_CAPITULOS_CONCEPTOS(31)')
Left = 136
- Top = 352
+ Top = 416
+ end
+ object DataSource4: TDataSource
+ DataSet = resumen
+ Left = 216
+ Top = 488
+ end
+ object resumen: TIBQuery
+ Database = IBDatabase1
+ Transaction = IBTransaction1
+ SQL.Strings = (
+ 'select id, id_presupuesto, posicion, tipo_detalle, concepto,'
+ ' importe_total, visible'
+ 'from presupuestos_cliente_detalles'
+ 'where tipo_detalle = '#39'Titulo'#39' and id_presupuesto = 31'
+ 'order by posicion'
+ '')
+ Left = 136
+ Top = 488
+ object resumenID: TIntegerField
+ FieldName = 'ID'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."ID"'
+ ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
+ Required = True
+ end
+ object resumenID_PRESUPUESTO: TIntegerField
+ FieldName = 'ID_PRESUPUESTO'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."ID_PRESUPUESTO"'
+ Required = True
+ end
+ object resumenPOSICION: TIntegerField
+ FieldName = 'POSICION'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."POSICION"'
+ end
+ object resumenTIPO_DETALLE: TIBStringField
+ FieldName = 'TIPO_DETALLE'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."TIPO_DETALLE"'
+ Size = 10
+ end
+ object resumenCONCEPTO: TIBStringField
+ FieldName = 'CONCEPTO'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."CONCEPTO"'
+ Size = 2000
+ end
+ object resumenIMPORTE_TOTAL: TIBBCDField
+ FieldName = 'IMPORTE_TOTAL'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."IMPORTE_TOTAL"'
+ Precision = 18
+ Size = 2
+ end
+ object resumenVISIBLE: TSmallintField
+ FieldName = 'VISIBLE'
+ Origin = '"PRESUPUESTOS_CLIENTE_DETALLES"."VISIBLE"'
+ end
+ end
+ object frxDBCapitulos: TfrxDBDataset
+ UserName = 'frxDBCapitulos'
+ CloseDataSource = True
+ DataSource = DADSCapitulos
+ Left = 352
+ Top = 16
+ end
+ object frxDBResumen: TfrxDBDataset
+ UserName = 'frxDBResumen'
+ CloseDataSource = True
+ DataSource = DADSResumen
+ Left = 520
+ Top = 16
+ end
+ object DABin2DataStreamer1: TDABin2DataStreamer
+ Left = 48
+ Top = 80
+ end
+ object cabecera: TIBQuery
+ Database = IBDatabase1
+ Transaction = IBTransaction1
+ SQL.Strings = (
+ 'SELECT'
+
+ ' V_PRESUPUESTOS_CLIENTE.ID, V_PRESUPUESTOS_CLIENTE.ID_EMPRESA' +
+ ','
+ ' V_PRESUPUESTOS_CLIENTE.FECHA_PRESUPUESTO,'
+ ' V_PRESUPUESTOS_CLIENTE.REFERENCIA,'
+ ' V_PRESUPUESTOS_CLIENTE.PORTADA,'
+
+ ' V_PRESUPUESTOS_CLIENTE.MEMORIA, V_PRESUPUESTOS_CLIENTE.OBSER' +
+ 'VACIONES,'
+
+ ' V_PRESUPUESTOS_CLIENTE.IMPORTE_NETO, V_PRESUPUESTOS_CLIENTE.' +
+ 'IMPORTE_PORTE,'
+
+ ' V_PRESUPUESTOS_CLIENTE.DESCUENTO, V_PRESUPUESTOS_CLIENTE.IMP' +
+ 'ORTE_DESCUENTO,'
+
+ ' V_PRESUPUESTOS_CLIENTE.BASE_IMPONIBLE, V_PRESUPUESTOS_CLIENT' +
+ 'E.IVA,'
+ ' V_PRESUPUESTOS_CLIENTE.ID_CLIENTE,'
+ ' V_PRESUPUESTOS_CLIENTE.REFERENCIA_CLIENTE,'
+ ' V_PRESUPUESTOS_CLIENTE.CLIENTE_FINAL,'
+ ' V_CLIENTES.NIF_CIF, V_CLIENTES.NOMBRE,'
+
+ ' V_PRESUPUESTOS_CLIENTE.IMPORTE_IVA, V_PRESUPUESTOS_CLIENTE.I' +
+ 'MPORTE_TOTAL,'
+
+ ' V_CLIENTES.PERSONA_CONTACTO, V_CLIENTES.CALLE, V_CLIENTES.PO' +
+ 'BLACION,'
+ ' V_CLIENTES.PROVINCIA, V_CLIENTES.CODIGO_POSTAL'
+ 'FROM'
+ ' V_PRESUPUESTOS_CLIENTE INNER JOIN V_CLIENTES ON'
+ ' (V_PRESUPUESTOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID)'
+ ' WHERE V_PRESUPUESTOS_CLIENTE.ID = 31')
+ Left = 136
+ Top = 296
+ object cabeceraID: TIntegerField
+ FieldName = 'ID'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."ID"'
+ end
+ object cabeceraID_EMPRESA: TIntegerField
+ FieldName = 'ID_EMPRESA'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."ID_EMPRESA"'
+ end
+ object cabeceraFECHA_PRESUPUESTO: TDateField
+ FieldName = 'FECHA_PRESUPUESTO'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."FECHA_PRESUPUESTO"'
+ end
+ object cabeceraREFERENCIA: TIBStringField
+ FieldName = 'REFERENCIA'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."REFERENCIA"'
+ Size = 255
+ end
+ object cabeceraPORTADA: TMemoField
+ FieldName = 'PORTADA'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."PORTADA"'
+ ProviderFlags = [pfInUpdate]
+ BlobType = ftMemo
+ Size = 8
+ end
+ object cabeceraMEMORIA: TMemoField
+ FieldName = 'MEMORIA'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."MEMORIA"'
+ ProviderFlags = [pfInUpdate]
+ BlobType = ftMemo
+ Size = 8
+ end
+ object cabeceraOBSERVACIONES: TMemoField
+ FieldName = 'OBSERVACIONES'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."OBSERVACIONES"'
+ ProviderFlags = [pfInUpdate]
+ BlobType = ftMemo
+ Size = 8
+ end
+ object cabeceraIMPORTE_NETO: TIBBCDField
+ FieldName = 'IMPORTE_NETO'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."IMPORTE_NETO"'
+ Precision = 18
+ Size = 2
+ end
+ object cabeceraIMPORTE_PORTE: TIBBCDField
+ FieldName = 'IMPORTE_PORTE'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."IMPORTE_PORTE"'
+ Precision = 18
+ Size = 2
+ end
+ object cabeceraDESCUENTO: TFloatField
+ FieldName = 'DESCUENTO'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."DESCUENTO"'
+ end
+ object cabeceraIMPORTE_DESCUENTO: TIBBCDField
+ FieldName = 'IMPORTE_DESCUENTO'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."IMPORTE_DESCUENTO"'
+ Precision = 18
+ Size = 2
+ end
+ object cabeceraBASE_IMPONIBLE: TIBBCDField
+ FieldName = 'BASE_IMPONIBLE'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."BASE_IMPONIBLE"'
+ Precision = 18
+ Size = 2
+ end
+ object cabeceraIVA: TFloatField
+ FieldName = 'IVA'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."IVA"'
+ end
+ object cabeceraID_CLIENTE: TIntegerField
+ FieldName = 'ID_CLIENTE'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."ID_CLIENTE"'
+ end
+ object cabeceraREFERENCIA_CLIENTE: TIBStringField
+ FieldName = 'REFERENCIA_CLIENTE'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."REFERENCIA_CLIENTE"'
+ Size = 255
+ end
+ object cabeceraCLIENTE_FINAL: TIBStringField
+ FieldName = 'CLIENTE_FINAL'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."CLIENTE_FINAL"'
+ Size = 255
+ end
+ object cabeceraNIF_CIF: TIBStringField
+ FieldName = 'NIF_CIF'
+ Origin = '"V_CLIENTES"."NIF_CIF"'
+ Size = 15
+ end
+ object cabeceraNOMBRE: TIBStringField
+ FieldName = 'NOMBRE'
+ Origin = '"V_CLIENTES"."NOMBRE"'
+ Size = 255
+ end
+ object cabeceraIMPORTE_IVA: TIBBCDField
+ FieldName = 'IMPORTE_IVA'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."IMPORTE_IVA"'
+ Precision = 18
+ Size = 2
+ end
+ object cabeceraIMPORTE_TOTAL: TIBBCDField
+ FieldName = 'IMPORTE_TOTAL'
+ Origin = '"V_PRESUPUESTOS_CLIENTE"."IMPORTE_TOTAL"'
+ Precision = 18
+ Size = 2
+ end
+ object cabeceraPERSONA_CONTACTO: TIBStringField
+ FieldName = 'PERSONA_CONTACTO'
+ Origin = '"V_CLIENTES"."PERSONA_CONTACTO"'
+ Size = 255
+ end
+ object cabeceraCALLE: TIBStringField
+ FieldName = 'CALLE'
+ Origin = '"V_CLIENTES"."CALLE"'
+ Size = 255
+ end
+ object cabeceraPOBLACION: TIBStringField
+ FieldName = 'POBLACION'
+ Origin = '"V_CLIENTES"."POBLACION"'
+ Size = 255
+ end
+ object cabeceraPROVINCIA: TIBStringField
+ FieldName = 'PROVINCIA'
+ Origin = '"V_CLIENTES"."PROVINCIA"'
+ Size = 255
+ end
+ object cabeceraCODIGO_POSTAL: TIBStringField
+ FieldName = 'CODIGO_POSTAL'
+ Origin = '"V_CLIENTES"."CODIGO_POSTAL"'
+ Size = 10
+ end
+ end
+ object DADSCapitulos: TDADataSource
+ DataSet = tbl_Capitulos.Dataset
+ DataTable = tbl_Capitulos
+ Left = 352
+ Top = 72
+ end
+ object tbl_Capitulos: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'ID'
+ DataType = datInteger
+ InPrimaryKey = True
+ end
+ item
+ Name = 'ID_PRESUPUESTO'
+ DataType = datInteger
+ end
+ item
+ Name = 'POSICION'
+ DataType = datInteger
+ end
+ item
+ Name = 'TIPO_DETALLE'
+ DataType = datString
+ Size = 10
+ end
+ item
+ Name = 'CONCEPTO'
+ DataType = datString
+ Size = 2000
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'VISIBLE'
+ DataType = datSmallInt
+ end>
+ Params = <
+ item
+ Name = 'ID_PRESUPUESTO'
+ Value = ''
+ ParamType = daptInput
+ end>
+ MasterParamsMappings.Strings = (
+ 'ID_PRESUPUESTO=ID')
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = DABin2DataStreamer1
+ DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
+ MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
+ LogicalName = 'Informe_Capitulos'
+ IndexDefs = <>
+ Left = 352
+ Top = 128
+ end
+ object DADSResumen: TDADataSource
+ DataSet = tbl_Resumen.Dataset
+ DataTable = tbl_Resumen
+ Left = 520
+ Top = 72
+ end
+ object tbl_Resumen: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <
+ item
+ Name = 'ID'
+ DataType = datInteger
+ InPrimaryKey = True
+ end
+ item
+ Name = 'ID_PRESUPUESTO'
+ DataType = datInteger
+ end
+ item
+ Name = 'POSICION'
+ DataType = datInteger
+ end
+ item
+ Name = 'TIPO_DETALLE'
+ DataType = datString
+ Size = 10
+ end
+ item
+ Name = 'CONCEPTO'
+ DataType = datString
+ Size = 2000
+ end
+ item
+ Name = 'IMPORTE_TOTAL'
+ DataType = datCurrency
+ end
+ item
+ Name = 'VISIBLE'
+ DataType = datSmallInt
+ end>
+ Params = <
+ item
+ Name = 'ID_PRESUPUESTO'
+ Value = ''
+ ParamType = daptInput
+ end>
+ MasterParamsMappings.Strings = (
+ 'ID_PRESUPUESTO=ID')
+ LogChanges = False
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ LocalSchema = schReport
+ LocalDataStreamer = DABin2DataStreamer1
+ DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
+ MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
+ LogicalName = 'Informe_Resumen'
+ IndexDefs = <>
+ Left = 520
+ Top = 128
+ end
+ object DAMemDataTable1: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <>
+ Params = <>
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ ReadOnly = True
+ DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
+ MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
+ IndexDefs = <>
+ Left = 264
+ Top = 192
+ end
+ object DAMemDataTable2: TDAMemDataTable
+ RemoteUpdatesOptions = []
+ Fields = <>
+ Params = <>
+ StreamingOptions = [soDisableEventsWhileStreaming]
+ RemoteFetchEnabled = False
+ ReadOnly = True
+ DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
+ MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
+ IndexDefs = <>
+ Left = 352
+ Top = 192
end
end
diff --git a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas
index a94f64b6..5df9f951 100644
--- a/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas
+++ b/Source/Modulos/Presupuestos de cliente/Reports/uRptPresupuestosCliente_Server.pas
@@ -12,8 +12,8 @@ uses
type
TRptPresupuestosCliente = class(TDataModule)
- DADataCabecera: TDADataSource;
- DADataDetalles: TDADataSource;
+ DADSCabecera: TDADataSource;
+ DADSDetalles: TDADataSource;
frxBarCodeObject1: TfrxBarCodeObject;
frxOLEObject1: TfrxOLEObject;
frxCrossObject1: TfrxCrossObject;
@@ -21,18 +21,62 @@ type
frxGradientObject1: TfrxGradientObject;
frxDBCabecera: TfrxDBDataset;
frxDBDetalles: TfrxDBDataset;
- Bin2DataStreamer: TDABin2DataStreamer;
tbl_Cabecera: TDAMemDataTable;
tbl_Detalles: TDAMemDataTable;
frxReport: TfrxReport;
- schReport: TDASchema;
- DataDictionary: TDADataDictionary;
IBDatabase1: TIBDatabase;
IBTransaction1: TIBTransaction;
DataSource1: TDataSource;
DataSource2: TDataSource;
- cabecera: TIBQuery;
+ capitulos: TIBQuery;
+ DataSource3: TDataSource;
detalles: TIBQuery;
+ DataSource4: TDataSource;
+ resumen: TIBQuery;
+ resumenID: TIntegerField;
+ resumenID_PRESUPUESTO: TIntegerField;
+ resumenPOSICION: TIntegerField;
+ resumenTIPO_DETALLE: TIBStringField;
+ resumenCONCEPTO: TIBStringField;
+ resumenIMPORTE_TOTAL: TIBBCDField;
+ resumenVISIBLE: TSmallintField;
+ frxDBCapitulos: TfrxDBDataset;
+ frxDBResumen: TfrxDBDataset;
+ DABin2DataStreamer1: TDABin2DataStreamer;
+ cabecera: TIBQuery;
+ cabeceraID: TIntegerField;
+ cabeceraID_EMPRESA: TIntegerField;
+ cabeceraFECHA_PRESUPUESTO: TDateField;
+ cabeceraREFERENCIA: TIBStringField;
+ cabeceraPORTADA: TMemoField;
+ cabeceraMEMORIA: TMemoField;
+ cabeceraOBSERVACIONES: TMemoField;
+ cabeceraIMPORTE_NETO: TIBBCDField;
+ cabeceraIMPORTE_PORTE: TIBBCDField;
+ cabeceraDESCUENTO: TFloatField;
+ cabeceraIMPORTE_DESCUENTO: TIBBCDField;
+ cabeceraBASE_IMPONIBLE: TIBBCDField;
+ cabeceraIVA: TFloatField;
+ cabeceraID_CLIENTE: TIntegerField;
+ cabeceraREFERENCIA_CLIENTE: TIBStringField;
+ cabeceraCLIENTE_FINAL: TIBStringField;
+ cabeceraNIF_CIF: TIBStringField;
+ cabeceraNOMBRE: TIBStringField;
+ cabeceraIMPORTE_IVA: TIBBCDField;
+ cabeceraIMPORTE_TOTAL: TIBBCDField;
+ cabeceraPERSONA_CONTACTO: TIBStringField;
+ cabeceraCALLE: TIBStringField;
+ cabeceraPOBLACION: TIBStringField;
+ cabeceraPROVINCIA: TIBStringField;
+ cabeceraCODIGO_POSTAL: TIBStringField;
+ DADSCapitulos: TDADataSource;
+ tbl_Capitulos: TDAMemDataTable;
+ DADSResumen: TDADataSource;
+ tbl_Resumen: TDAMemDataTable;
+ DAMemDataTable1: TDAMemDataTable;
+ DAMemDataTable2: TDAMemDataTable;
+ schReport: TDASchema;
+ DataDictionary: TDADataDictionary;
procedure DataModuleCreate(Sender: TObject);
private
FConnection: IDAConnection;
@@ -53,7 +97,7 @@ const
{ Dataset names for schReport }
ds_InformeCabecera = 'Informe_Cabecera';
- ds_InformeDetalles = 'Informe_Detalles';
+ ds_InformeCapitulos = 'Informe_Capitulos';
{ TRptPresupuestosProveedor }
@@ -93,35 +137,62 @@ end;
procedure TRptPresupuestosCliente.GenerarPresupuesto(const AID: Integer);
var
AStream: TMemoryStream;
- dsMaster: IDADataset;
- dsDetail: IDADataset;
+ dsCabecera: IDADataset;
+ dsCapitulos: IDADataset;
+ I: Integer;
begin
- //AStream := TMemoryStream.Create;
+ AStream := TMemoryStream.Create;
try
- {dsMaster := schReport.NewDataset(FConnection, ds_InformeCabecera, ['ID'], [AID]);
- dsDetail := schReport.NewDataset(FConnection, ds_InformeDetalles, ['ID'], [AID], False);
+{ dsCabecera := schReport.NewDataset(FConnection, ds_InformeCabecera, ['ID'], [AID]);
+ dsCapitulos := schReport.NewDataset(FConnection, ds_InformeCapitulos, ['ID_PRESUPUESTO'], [AID], False);
AStream.Clear;
- Bin2DataStreamer.WriteDataset(AStream, dsMaster, [woRows, woSchema], -1);
- Bin2DataStreamer.ReadDataset(AStream, tbl_Cabecera, TRUE, '', TRUE, TRUE);
-
+ DABin2DataStreamer1.WriteDataset(AStream, dsCabecera, [woRows, woSchema]);
+ DABin2DataStreamer1.ReadDataset(AStream, DAMemDataTable1, True, ds_InformeCabecera, True, True);
AStream.Clear;
+ DABin2DataStreamer1.WriteDataset(AStream, dsCapitulos, [woRows, woSchema]);
+ DABin2DataStreamer1.ReadDataset(AStream, DAMemDataTable2, True, ds_InformeCapitulos, True, True);
+
+
+ DADSCabecera.DataTable := DAMemDataTable1;
+ frxDBCabecera.DataSource := DADSCabecera;
+
+ DADSCapitulos.DataTable := DAMemDataTable2;
+ frxDBCapitulos.DataSource := DADSCapitulos;}
+
+{ DAMemDataTable1.Active := True;
+
+ for I := 0 to DAMemDataTable1.RecordCount - 1 do
+ ShowMessage(DAMemDataTable1.Fields[2].AsString);}
+
+{ AStream.Clear;
Bin2DataStreamer.WriteDataset(AStream, dsDetail, [woRows, woSchema], -1);
Bin2DataStreamer.ReadDataset(AStream, tbl_Detalles, TRUE, '', TRUE, TRUE);}
+ frxDBCabecera.DataSource := DADSCabecera;
+ frxDBCapitulos.DataSource := DADSCapitulos;
+ frxDBDetalles.DataSource := DADSDetalles;
+ frxDBResumen.DataSource := DADSResumen;
+
tbl_Cabecera.ParamByName('ID').AsInteger := AID;
- tbl_Detalles.ParamByName('ID').AsInteger := AID;
+ tbl_Capitulos.ParamByName('ID_PRESUPUESTO').AsInteger := AID;
+ tbl_Detalles.ParamByName('ID_PRESUPUESTO').AsInteger := AID;
+ tbl_Resumen.ParamByName('ID_PRESUPUESTO').AsInteger := AID;
+
tbl_Cabecera.Active := True;
+ tbl_Capitulos.Active := True;
tbl_Detalles.Active := True;
+ tbl_Resumen.Active := True;
frxReport.LoadFromFile(DarRutaInformes + rptInforme, True);
frxReport.PrepareReport(False);
+ //frxReport.ShowPreparedReport;
finally
- //AStream.Free;
- dsMaster := Nil;
- dsDetail := Nil;
+ AStream.Free;
+ dsCabecera := Nil;
+ dsCapitulos := Nil;
end;
end;
diff --git a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm
index 2133b44e..4e84330e 100644
--- a/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Servidor/srvPresupuestosCliente_Impl.dfm
@@ -1,7 +1,6 @@
object srvPresupuestosCliente: TsrvPresupuestosCliente
OldCreateOrder = True
OnCreate = DARemoteServiceCreate
- RequiresSession = True
SessionManager = dmServer.SessionManager
ConnectionName = 'IBX'
ServiceSchema = schPresupuestosCliente
diff --git a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj
index 3070f7db..ea7653a1 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj
+++ b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.dproj
@@ -43,6 +43,8 @@
FalseTrueFalseTrueFalseFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.01.0.0.0
+
+
Intraweb 8.0 Design Package for Borland Development Studio 2006
PresupuestosCliente_view.dpk
@@ -51,11 +53,11 @@
MainSource
-
-
-
-
-
+
+
+
+
+
TfEditorElegirArticulosPedidoCliente
@@ -577,4 +579,4 @@ mtException_AntiFreeze0="The application seems to be frozen."
Count mtInvalidEmailMsg=1
mtInvalidEmailMsg0="Invalid email."
TextsCollection=English
-EurekaLog Last Line -->
\ No newline at end of file
+EurekaLog Last Line -->
diff --git a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.res b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.res
index 8b251f31..1641339f 100644
Binary files a/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.res and b/Source/Modulos/Presupuestos de cliente/Views/PresupuestosCliente_view.res differ
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.dfm b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.dfm
index 7c2396af..8a8b2d81 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.dfm
@@ -2,19 +2,20 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Left = 332
Top = 147
Caption = 'Nuevo pedido de cliente'
- ClientHeight = 631
- ClientWidth = 674
+ ClientHeight = 615
+ ClientWidth = 749
OnClose = CustomEditorClose
- ExplicitWidth = 682
- ExplicitHeight = 658
+ ExplicitTop = -85
+ ExplicitWidth = 757
+ ExplicitHeight = 642
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
- Width = 674
+ Width = 749
Caption = 'Nuevo pedido de cliente'
ExplicitWidth = 674
inherited Image1: TImage
- Left = 647
+ Left = 722
Picture.Data = {
0A54504E474F626A65637489504E470D0A1A0A0000000D494844520000001800
0000180806000000E0773DF80000000970485973000017120000171201679FD2
@@ -126,7 +127,7 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end
end
inherited TBXDock: TTBXDock
- Width = 674
+ Width = 749
ExplicitWidth = 674
inherited tbxMain: TTBXToolbar
ExplicitWidth = 488
@@ -141,30 +142,32 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end
end
inherited tbxMenu: TTBXToolbar
- ExplicitWidth = 674
+ ExplicitWidth = 749
end
end
inherited pgPaginas: TPageControl
- Width = 674
- Height = 465
+ Width = 749
+ Height = 420
TabOrder = 1
OnChanging = pgPaginasChanging
ExplicitWidth = 674
- ExplicitHeight = 465
+ ExplicitHeight = 402
inherited pagGeneral: TTabSheet
ExplicitLeft = 4
ExplicitTop = 24
- ExplicitWidth = 666
- ExplicitHeight = 437
+ ExplicitWidth = 741
+ ExplicitHeight = 421
end
object pagContenido: TTabSheet
Caption = 'Contenido'
ImageIndex = 1
+ ExplicitWidth = 666
+ ExplicitHeight = 374
inline frViewDetallesPresupuestoCliente1: TfrViewDetallesPresupuestoCliente
Left = 0
Top = 0
- Width = 666
- Height = 437
+ Width = 741
+ Height = 392
Align = alClient
BiDiMode = bdLeftToRight
Font.Charset = DEFAULT_CHARSET
@@ -177,10 +180,10 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
TabOrder = 0
ReadOnly = False
ExplicitWidth = 666
- ExplicitHeight = 437
+ ExplicitHeight = 374
inherited ToolBar1: TToolBar
- Width = 666
- ExplicitWidth = 666
+ Width = 741
+ ExplicitWidth = 741
inherited FontSize: TEdit
Width = 57
ExplicitWidth = 57
@@ -223,14 +226,14 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
end
end
inherited cxGrid: TcxGrid
- Width = 666
- Height = 365
+ Width = 741
+ Height = 320
ExplicitWidth = 666
- ExplicitHeight = 365
+ ExplicitHeight = 302
end
inherited TBXDock1: TTBXDock
- Width = 666
- ExplicitWidth = 624
+ Width = 741
+ ExplicitWidth = 741
inherited TBXToolbar1: TTBXToolbar
ExplicitWidth = 548
end
@@ -240,11 +243,13 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
object pagInicidencias: TTabSheet
Caption = 'Incidencias'
ImageIndex = 2
+ ExplicitWidth = 666
+ ExplicitHeight = 374
inline frViewIncidenciasCli: TfrViewIncidencias
Left = 0
Top = 0
- Width = 666
- Height = 437
+ Width = 741
+ Height = 392
Align = alClient
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -255,24 +260,24 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
TabOrder = 0
ReadOnly = False
ExplicitWidth = 666
- ExplicitHeight = 437
+ ExplicitHeight = 374
inherited pnlSup: TPanel
- Width = 666
- ExplicitWidth = 624
+ Width = 741
+ ExplicitWidth = 741
inherited eIncidenciaActiva: TcxDBCheckBox
ExplicitHeight = 21
end
end
inherited GroupBox1: TGroupBox
- Width = 666
- Height = 409
- ExplicitWidth = 666
- ExplicitHeight = 409
+ Width = 741
+ Height = 364
+ ExplicitWidth = 741
+ ExplicitHeight = 393
inherited eIncidencias: TcxDBMemo
- ExplicitWidth = 643
- ExplicitHeight = 376
- Height = 376
- Width = 643
+ ExplicitWidth = 718
+ ExplicitHeight = 360
+ Height = 331
+ Width = 718
end
end
end
@@ -280,55 +285,456 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
object pagPortada: TTabSheet
Caption = 'Portada'
ImageIndex = 3
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object edtPortada: TcxDBRichEdit
+ ExplicitWidth = 666
+ ExplicitHeight = 374
+ object Panel1: TPanel
Left = 0
Top = 0
- Align = alClient
- DataBinding.DataField = 'PORTADA'
- DataBinding.DataSource = dsDataTable
+ Width = 145
+ Height = 392
+ Align = alLeft
TabOrder = 0
- Height = 437
- Width = 666
+ ExplicitHeight = 421
+ object Image2: TImage
+ Left = 16
+ Top = 16
+ Width = 115
+ Height = 170
+ AutoSize = True
+ Picture.Data = {
+ 0B544A76474946496D6167651C0900004749463839617300AA00C400008E8E8E
+ CFD3CF8C8C8CFF0000BDD6C697A997ABB9AB8997897888786874688689865763
+ 574950493944393539355F5F5F8A8C8A898B89878B87868A86888B88B7CCB7DA
+ EADADEEFE7FBFEFB0000000000000000000000000000000000000000002C0000
+ 00007300AA000005FFE0238C64699E68AAAE6CEBBEE90360746DDF78AEEF7CEF
+ FF401D60162C1A8FC8646EA86C3A9F4E26744AADE2A4D6AC5689DD1A2FB48BC5
+ 1B25928104CB187309D002E973B12BBFA9DDB4CADA8227D8EB3C74806F703501
+ 6B62346A35177E834B668F6169783C6018049717979282646A9C95407B996B8F
+ 9E5E171518A649019B8EA7917516993B7C04B9048739B59C83A856AD3A1615C6
+ C7C8C6C38CB675C154B515B13701C9D6C9C36A71CEB35B63CBAAD7E2C7BF62AB
+ 80CF55CBC5E3EDC39BC0DD80ECC9BB8770E2CBB2928AC8DBC4048E4DE38721DD
+ 168160E088C221465F27796702EAA121D11841230685496394ECD7C51E19AB6C
+ AC51D198C78F3B42FF4E6974C31A4A202AA1BCB241CFD8C230B572CDFC18F3C9
+ B06AC84E9644C61322A0A137C2E5BBD8D34A3D1BE178D5C85914653251BB3055
+ B859F523364663C20D44D9B44A49536B803A245896CA591C125FDE683BA5E6CD
+ B8726BD085A274A40DBC790B1A05E40F07BBC034F6FE68C3B5DF3186167BC03A
+ 9945B1E47F3A902D0BB8F6CDAECE532CFB149823F20E31F0CE887E12D4F0D6C0
+ AB2F77260D1934BAC1753148D5A1D4A18593BFF7D5C19C4329E5E2718E57C6BD
+ 328844E57626DE96947A0750E850853F6AC6A39A6D7EB1D154974C99FBC34789
+ 182551357EFAC55ADF15D1C4BE25BC9134F4498E05CFDCCB34969CA481565664
+ F597CA54BF99220DFF5A79D9D74400BB65720E620E22569F8116BE546186566C
+ C821151E7E084588229651A288249E98448AC5BDE2E26F2EB621231EBC3416CF
+ 45066060C00539F2A8A38E3CAA42C88F055EE446056DC028648C48B202E13D5D
+ A968618A09B66198298CEDC1871850BAF8061BC1A98661125A426881014F9A89
+ 871A88F0718F9569C6999F896754E9E22B5CDEB1C96FF0BCC2279B6C38790897
+ DC1034E7872C32F224186C26740F8CC1F1B1C8185E9EF7889E6CE099259F8BCA
+ C8A86E7CF047DD266090CA28A98AA4875AA0AB5A2AC94EEA95CA6918F06C02AB
+ AB83C0896AA56EBAC198AC36CA9128549B18C0272B3252DA68A7A03035A69485
+ 5E945E526069A29EFFB38040F8AB998E429A66318CA509AAB637D631289BDCEA
+ 36E821BD6AABEDA6E9BA57E2A1F242DBE0B3F692316CBE20E1CBAF16FBFE2B84
+ BF02571170C173118CF0880A2F4CA7C3B8425CAFC4D1523CB1C5FA368CF11C1A
+ 6F0C53C71EFB7030C4233B5CF2C20635C4E6CA2CB7ECF2CB30C72CF3CC31D397
+ 4EB021B3D2AF2539FB00DD335A4A0A69927B32A69B1871F0122ABB1F76164C7A
+ AB2893861FECAAA1C7677A540306928446DDB4724F5FB2553102FAB1891EC5A4
+ 8D41D64D0A7DE4DA1FB66743D8F2E93CF4224A2BE286D2BE7EB3088772EB6554
+ E03D139BD2E009B5A3F8E28C37EEF8E2B41E7E1ABD18132ED8E4855B0236E299
+ 633EB0E79D33B439FFE83A534E6BA9C85A8E92E5741B220D3EBA4843602F4BDB
+ 1A2AE0A3F3F6CB6F2519E0FB613ABCB9EEB416B2CE7916A68F2AB9EEA11797BB
+ F3D44EF5051B9C6019A85CC693FE5982C6866989A48BC2F8E4ECAB3F2FFA5FF4
+ AC6D80693C24780FBB6D50823320D9337F6D58A6FA8CAAACFB5FFF52FDD06B5E
+ 52CC37C0E26C21795A00E0F9A6720863F10F3B59A144A8D6E72624ED4D52A0BA
+ 839BD8648F1AED4D5BDBABDA1B2865B8CFD98F229B2840019261ACF6A96147C6
+ 3AC4D8140207D4ECC849C56A081CD0B4153F7DC600014952350695883BCC4E81
+ 05ACD6F6D0059D49C187524CE3459226D510D4A16A68994A88BA6C072818212B
+ 72260CA0001941C0FF128E118C90205D1206C0C636BAF18D708CA31CE748473A
+ A2F10AC76BC200F2B547EA2D4F8C4A1880A90649C8421AF290884C24A9FA8844
+ 3306F2022A24640114A9C84952F2928C2C23199F20480454E00007300002CE84
+ 8050FA6E01A034400110A0C20310E000AC2C80010E508054AE7047974C6426FF
+ B8403D5E2096A15C00016A09CC06B49296A13C40058889CC55264095B0CCA52E
+ EF983035224190D2A46410B349C95D86B1978F648FA9F8D40870719390E43CA7
+ 37D378C247568095BE83E62DE37900DEC952952AFCA431F019CA02B0E302B454
+ A5EF4CE9CF6E52736E797C642D17504B5082B2A10F5DDF2C59998002240096A0
+ 4CC0026659CB65EEFFA8000DA8A80A1180CA02644291EBC4A3358F20C89509C8
+ 02FE64591A9451CE5A1CA09C2FFD8D25B5C1A67AFAC2A07EFC66127DD988429E
+ D454472DAA528D3A4E7226B5A8494D6A4AABD9CE353602013B2A060C55F8BBF5
+ AD301304C02A24D1764F597A9447AA34C92CB35A01510ED3586D95E5220F2AB8
+ 951A4190B57CE6442D5A4B675A80A1B48424031000D05AFE7585B2BC68011670
+ 818A5614920B18A549159B00563294A1279D2A42ED5A04410604882F8429017C
+ 578000A0094D6055651B4C220D202ED3B4A38DAD848669B5AF8E16A640C4E505
+ 345BD7AA5EB368874C6721854B2A7212979BBC4D4C42AD6A0157A266A6A44200
+ 67B6A7329F9E366DFFA3AC8525CF39D7A0B21390565DE84091A9530420A0A2A0
+ 0C08614BE90056821298C90C2C77BBDBC84D3A4190CB34E999D617CA46047499
+ 6D6DAE2AD62AD17D7E92B45C9BEF6EE9AA5CCE06019B97D41428141CDCE326F7
+ 72BE65298FD296861D6DA59E60F524402B3BD2551E200122150368D5CA80775A
+ F4C4154880031AEA580B50D49F176E9D2F69B95863A890C4A504E86055B14A7F
+ 0E53BAAB9C2591CDEB5E022480000DA84003D24B52596E94C9FE64C02473BCDC
+ DF2200B6AAA8A749E130C9D14E52BB6D15686BEFA9CFDCFAB8111C9D24478D15
+ C9D17AD5025C7630105A4AE13E6392C11806EF6F555862589256A48FC5EA682B
+ 7AE459D212C07E36A1559E337CD7304FD201B965684819806220A2D8A2327631
+ 8A09CB0048469ABE9A04F48379244BB946A3AD000DEB0A893CC99BD6D2581515
+ 6D82FD7C61087459C3A70E76212F2C81C1C48707754CB6B297CDECBAE9C0D7ED
+ 3BA3F478D90B6983C620DECB1CF184CA1B9A79FBDBE00E77CD7E70328495BB60
+ E71658BAFFB56E7EB53B5FEFB617004400837ADBFBDE2788C00414C0EF7EFBFB
+ DF0AA000BE47F0801000003B}
+ end
+ end
+ inline frViewRichEditor1: TfrViewRichEditor
+ Left = 145
+ Top = 0
+ Width = 596
+ Height = 392
+ Align = alClient
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 1
+ ReadOnly = False
+ ExplicitLeft = 145
+ ExplicitWidth = 521
+ ExplicitHeight = 374
+ inherited TBXDock1: TTBXDock
+ Width = 596
+ ExplicitWidth = 596
+ inherited TBXToolbar1: TTBXToolbar
+ ExplicitWidth = 517
+ inherited TBXColorItem1: TTBXColorItem
+ Visible = False
+ end
+ end
+ end
+ inherited RichEdit: TcxDBRichEdit
+ DataBinding.DataField = 'PORTADA'
+ DataBinding.DataSource = dsDataTable
+ ExplicitWidth = 596
+ ExplicitHeight = 395
+ Height = 366
+ Width = 596
+ end
end
end
object pagMemoria: TTabSheet
Caption = 'Memoria'
ImageIndex = 4
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- object cxDBMemo1: TcxDBMemo
+ ExplicitWidth = 666
+ ExplicitHeight = 374
+ object Panel2: TPanel
Left = 0
Top = 0
- Align = alClient
- DataBinding.DataField = 'MEMORIA'
- DataBinding.DataSource = dsDataTable
+ Width = 145
+ Height = 392
+ Align = alLeft
TabOrder = 0
- Height = 437
- Width = 666
+ ExplicitHeight = 374
+ object Image3: TImage
+ Left = 16
+ Top = 16
+ Width = 115
+ Height = 170
+ AutoSize = True
+ Picture.Data = {
+ 0B544A76474946496D616765821E00004749463839617300AA00F70000DEE6DE
+ E0E8E09C9C9CCDD5CDDAE2DAB1B1B1E4ECE4CDCDCDECF1ECE2EAE2D2DDC79FBB
+ 9FD2D3D2EAF2EAC4CBC4F2F5F2DCE4DCF7FCF7E5EEE5606160ADADADD4D9D4C4
+ D5C4D0D8D0939593D8E0D8A4AAA4CCD2CCD1D5D1E6EFE6D6DED6E2EDE2C2D0B3
+ E9EEE9C1C1C1BDBDBDE4EAE4D0D0D0CAD1CAD8E1CEB2C5A1DCE2DC979B97D3DA
+ D3E8F0E8B5B5B5ABC4ABD6E2D6F8FAF8CACACAFBFEFBC6C6C6D4DCD4F0FAF0EC
+ F4ECA5BB90BCC3BC868986C8C8C8EAF0EAA6A6A6D4D6D4B0C39EC4C4C4ACB2AC
+ E1E6E18A8E8AB8B8B8DBE0DBDFE4DFE9F4E9D1D3D1F5F8F5D0DED0888A88D8DE
+ D8E0EAE0DBE4D3DFE0DFA0A5A0EBF6EBE3E7E3DEE7DAF4F7F4DCE0DCCCDBCCC5
+ D3B8F6F9F6B5CBB5A3A3A3E0E5E0E6ECE6E1E9E1797D79D7E3D7A8AEA8EEF3EE
+ E5E7E5D7DCD7B9CAA9E1E2E1D2D7D2CBD8BFC9D6BCB7C9A78E8E8EF2FFF2F1FF
+ F18C8C8CEEF7EEFCFCFCFDFDFDFBFBFBFAFAFAFEFFFEF9F9F9F5F5F5F8F8F8EF
+ F7EFF6F6F6F3F3F3F7F7F7EFEFEFEEF8EEF1F1F1E5E5E5FDFEFDE3E3E3EEEEEE
+ F2F2F2EBEBEBF4F4F4E9E9E9F0F0F0E2E2E2DBDBDBE7E7E7E4E4E4EDEDEDEAEA
+ EAE6E6E6DDDDDDECECECE1E1E1E8E8E8F0F8F0DEDEDEE0E0E0D4D4D4F0FCF0F1
+ FDF1DADADAF0FDF0DFDFDFF2FBF2F4FAF4ECEBECDCDCDCEFFBEFF2F9F2D7D7D7
+ F1F9F1D8D8D8FCFEFCFAFDFAF6FBF6F5FBF5D9D9D9F1FEF1D6D7D6F8FCF8EDF8
+ EDF9FDF9F2FEF2F3FAF3F7FBF7EEFAEEFBFDFBEAF3EAEBF4EBF3F9F3F1F8F1EC
+ F7ECEBF5EBE9F2E9F9FCF9E8F2E8E6F0E6E7F1E7EDF9EDD5D5D5EFFAEFFCFDFC
+ D6D6D6F5FAF5EEF9EEEAF5EAE7F0E7F0F9F0E8F3E8EDF6EDECF8ECFAFCFAECF6
+ ECEFFCEFF8FDF8EAF4EADBE3DBF4FBF4FBFCFBDFE7DFEDF7EDF1FCF1F2FAF2EF
+ F9EFDDDEDDE4E5E4CEDAC2E9EAE9F6FAF6E7F2E7F2FDF2FDFFFDD8D9D8E3E4E3
+ 8D928DB1B3B1F4F5F4F5F4F5C8CFC8F2F3F2F0F4F0BFD2BFB1B8B1F0F1F0E2E3
+ E2F7FAF8EAECEAE8E9E8E6E7E6EDEEED838683D1D9D1E8EEE8D5DDD5BBCFBBEE
+ FBEEBFCFB2AAAAAADFE3DFF3FBF3F3F6F3FEFEFEEFF8EFFF0000FFFFFF2C0000
+ 00007300AA000008FF0027B01948B0A0C18308132A5CC8B0A1C3870927A4F947
+ B1A2C58B18336ADCC8B1A3C78F2035A69918B2A4C9932853661CA9915F2E2453
+ A6F0B378274F9D3973EAD0B1C90F8E9B372A4BBA7192AAA8D1A348932A5DFA6D
+ D045961891EC98F7601F821DE72A3A8244E80E224384202DE2A7884FA099413D
+ D229630413264B6EE1BE8D2BB76E5CB773F3D6B5E42903368B502DEE9B87C400
+ 3A2C1642EC4040710E9E42780229AA2399CFA0418EF2A4F5D803D51A356B3E83
+ E65B0953255895520FAB64A95725359E2A7942C52CF6306B9652F3C5E4698D3C
+ 381503578C0623890B0B168EBF414231CF1D3A6F0205CA4387CE1D3C7CDC6CF6
+ 282F3468D16B8C10FF10F3C10000004B123C83E00C420654093248B8C5C54006
+ 6901022C799680C0870E6B30734870245D8480175854C18F1B6EA0F5CF1C79FC
+ 54C78470C411471E11F2A3E186FF70B89D3C6A8016A277B648B00B14BA24B0CA
+ 07C57041CC325C1C838901BAEC328C2C461C634932B2F062C48F46F0A2062603
+ 52245C45485CB140005BA0530F0C15E581131E71D491071F70BC31481C6E4486
+ C71D730C42591D786CF74F779F7927E29ADEA9B9C631B874B08B2C0068210131
+ 1DE82201149518E04907A01149A046FB2C8000005500E32085D439F7251C135E
+ 78474D6E8449251D66A2F9DD889C6EEA2617120010807A19A46000171D182001
+ 33104800412F6B08FF6A64811581F10F302E6CB1C30B149D03CC3F79C4810783
+ 77D471C720C50E02C74E6E5C3887991681C8669A9FCDC61A2AA8CCE6C96C9674
+ 63092AB2A566CD2FA8FC62095FDDA0326491FF1CF9CF14FBFCE385056F78110D
+ 3008FC0A07753F15AB93855B4E1A071C60425B91A66E8688CA2EBCEC22C12F25
+ CA72CB07BAF0520C2FC9AC620431B7C8224B321D48204B071D58122BBBEEE672
+ 0E0C7EBC10801FC0EC632BB003BF01661C81D0E1061D37DDA1A1C117210C9EC2
+ 9530630F6ABCC5068B27C9C0C2CC30B9A5E6492BDB9ABBADC9B2B64B6B455320
+ 8084324982C11845C242B7D31CC77699AC834053242D78D4760AF7A66AF4E20C
+ 2EDC3823712F124CFF03C52DB7F4B2EEA019C1C0CEA9F05AB4614F6FBCA16196
+ 3E35CE8FE39303FDF68871B38939DD9E2CF32214BC2CE3092EB0AC720B31B00C
+ 3E2B471E5614C8757AE0314720783C163B1D7AF0C1C7B1AF5BDEE6D0D3D20DF7
+ 34B6FCBDCA30B610F3B72DC72CF3CBC9849744B9E48D579F65F58E3B6EB9DC99
+ 03FF7B88B354BC8B2D9EE0C98B2C293A638BEA5A5BE40B25F0C72FFFFCF4D76F
+ 3F25DAA575396BAD284C748896E89F35FA1722354CA312ADB0C4305AC1C06178
+ 822F0C649F701647C10A5AF08218DC4C19BC83895DAC82179ED8450270A18B8A
+ C9A21706E8C02F02601E26F0E73CD2480100B8C0055E188005A24A4002D6E009
+ 946D2D0E9C08A210FF8748C4221AB188803013254664895F5462159858852D96
+ B68A5E30E389ABF004C66E0105092C8317B6E8D82DF406B86570D116AB504319
+ F2D73ED71D21050420400AE0384739C2D18E78AC631DF348C71464007F9BB9C3
+ 063AA089421AF290884CA42217698C0AAC0330B4E280E63CE5BDEE716F5335F8
+ C676DC2089233080019E04652847F9C95082B294A814652A7B408EA7D0AA023C
+ EC00FA48808B5540A103683400C348D0014F042F61D3AA40DB86B911E154400D
+ C9D0A134A44100092400541D1055312490424BFE5234C224A63621699163628B
+ 2FD370E20353B307A835D133C2BBA49AB2B9CD6D1AF333B961A03C19882D0656
+ A25CDB8A4D25C805FF4CB8B1B39DC43426686C71A20F10037D1238460778D18B
+ 1EA11002D200C031B8F08C345E3344FF0468DB04BA86D454A217C980022C6C31
+ 8C55AC42367C59853358B08555C08217D350273635AACD77AA0116A8C1296B24
+ 80CB63F054630630002F704149E1512BA33485D63BD710D25D1443A8B0508F34
+ B8A10500E8491A44606668B6CAD5AE8606A949DD0E47CFE5096A50E35BD4A841
+ 6C3C610DD93C30ADDEDBDC3AC3BAD1577EC616BCE0852E8861005804A917BB38
+ 463A8B3AC9AFD21568C6B4841A52A3314FC84236BC99C52C06FBBD49AA41164E
+ 38ACC18433070E6CE0B3A00DAD68474B5AD25E836D9A4D8BBB52CBDA93ACB6B5
+ B0FDC86B634B5B91FF6CADB6B85DC96D73CBDBD561C41FC00DAE70874BDCE21A
+ F7B8C84DAE72977B5C8CACD61F14E1D0E23A5411D462E467D48DAE83AC7B11EE
+ 5E37BB8A0B0A745D9991F1766212238084284A3082479C62048E98011C18C087
+ 12F0036D7198541D06F1BA42CC010E5F82D0630AC1B3C9C0212737A9501DB234
+ 999C70E90D7A98D44E60978742C0C111C822D322ACE386053F2B24E3E5E66F29
+ C208465060129DF0050F1621890224A2058A388021860088AFF061128798C425
+ 1E010A5F64621093C84420503C0944640214C1304421FAD08844FC41107D48C4
+ 230A7189433C22118458C49019D1883FFC21C79710C5250AC188415CB9CB97E8
+ 83200CD108449424FFC4D1B3C8783148E73E14E0CE78CEB39EF7CCE73EFBF9CE
+ 83A03376410267DF5EA4D02019F445805211467BC4BB1B51F47610FD5C8AF041
+ 0F83E00324F080E9400C623252CA0320F4C0083D4CA7108AC0031D1441084014
+ 820F74280464F800884CF357117A18F520E8100742142277778803AEF150162C
+ 717A1080B0892376470738B8BA1081885D1D4E42E9DD8E97108FE803930FC188
+ 3F8005118270041C08D107423819128280042020C108AE983B1382D0C3220C71
+ 09733F82109930C424B44D883F00421284D0C324BAF2874CF4E11108E7C39517
+ D1874538C2DF8A484420FA60883F2022DB8C80B446AA5DDEF066841F71E08866
+ CCB45DED7A1CBC51FF020EB59D6BEDDEA696E32376F961617E6899CF9CE51DB7
+ 7958692E678AA83A0E93D350F53434B00635EE1F0D0A3A3F7CB6F40A4AEEBE4A
+ AF125022B46090E7E16714A49CCFDE7075A04CCF7152D77845783E768A0C4214
+ 92B844230E710A4628E2108D78049B3BE1884C48C2BDA7F0F1214051023D1CDC
+ 11A09004BDF3DD0847D43D116ADFFB244E510724EBE1125F3944261AF1864474
+ 821292100524324188BE23A204A2F8B22FE82D8A465C22C8A020C447C84E91F1
+ BEA1427328BA4F642F7B38544810033BF01CDC607B45708952161A56202A64A1
+ E2DF77F7737843EEAD64FBFF6A7A60C93F30EC0766A1FFFE7760ABC779CC754E
+ 53D6FFC3F50C2258FFB3DF50870569C80D816010EFF9016B30F1830EFF65D082
+ DEE00629D19FF7AF577FE3F870FF37C43EF971001D3EC17BE1871375807F0DA2
+ 7F70C00F81B06007887F1BA77D35F70F7AC00092D009A2000A8D60777FD0085A
+ 76088740098F200987E0159D500892A0083D667A99700755760A97D00980D009
+ 24780A69C76486B0088D500887700986D00797700A8BF0070C508189100CA000
+ 0A7D100C9770090C700AA030828EE0838840837AE00B9DD008A7B081A0500811
+ 485E31777FBC677BF4477F3A337C0C528669D82003786079907EFAA77E0AD838
+ 3F9186FDB77EE1B7867958870BA27E0B388072E86813286283D868D9F30F82C8
+ 7D69E17DE3450790FF806B89D0707DE008E556268AB88812D873FF8007D8D607
+ 935071FAF6088BB0086C748928C188A60850A8988ADBB48AAC484CAEF88A6D13
+ 8BDAA57183365D64738BADC33A92A68A995876FFD00999100382700AA2100399
+ 700931E00825F00F8DC00025A08307000925D008345865815002A0C0004E3603
+ 80700062168383700878500207C000811003A2F0083B66088790088C4057ABF8
+ 078990059D000A0720008870083CF00714900833400114D008253003A0500023
+ A0033FF0033340073A500222C00088100307C003A030030C9907220007053004
+ F0350323100318A903EB1503F2F88BAD47118DC325BC1707F4C725F157218068
+ 7B75C886CDF27AF4FF4793F2F7870F46800B887F89E88B603881BD9868DFA512
+ 6C2376D0B28AC83607BC06213A91134B8707792008D6012115126139A10711F2
+ 188E21257560217AE094569207CA1296B16725846019D3E60871107B0213086F
+ 591DF0F7967300080473070DF87E6199251CB18A7A7008E7657A7DC000A5D709
+ 70000A7A708159980999C007832909806008A7B098BEC08E87F007A080088B40
+ 8377678C93F007A2B0085C368293608D8F900788B0856AD7099080085E060A3D
+ 28097CD00799D0839DA0768F197782D0087AF09728F97DD545398B1669A8855D
+ 82189416A1252AD96821D721DCA57CCDB911CA598886A689E7373949B7219473
+ 7EAFD713D029740BFFD8138FF31382365D4F677E146474DD295D20B738DB898B
+ 9A48889AF870DE168989509B178708885008AED608B699088640077F50647FC0
+ 08864089997925DC069B35466E78C008E4F607ECD60777200825C608892016B9
+ D30707AA6D88C06E4A666EEDC60F84400892108970F0087EB7A11AFA077C805A
+ 4C59088ED06A7AF06A8C100880B0A374403B8B906E84E00875E0083BCA078A20
+ 088010167C40259726083973695C190890000998366A61826A80106F99460780
+ A0088510A43B9A6B833089F29669A6060867010877F06BD211088BA0082A078C
+ F429A7D7A594695194268116787A94F31967C07807E3494157C70FE5B7387D79
+ 9E42C7741EB22185FF4AA8BB878B19549E174468C1395E9E6808FF9607535A70
+ 93C0071D4807882009A27A0888609B1407081AFA088C300993706586908CD8D6
+ 0893000975206F9DE06D93E0088B300917A86D8FA0088AF0070E07A058260951
+ 866A8F9009BC2A7817C7A5A479071EC194D371077C1007C84260BC0619CB026D
+ D0066BAA762974300879801D5639087AA007E14A3B3D83083D5A3BC66216C782
+ 3B68036B9B560780E018BBF6967CD0ADB4731D36E1181F069C43D9A7D465A7B2
+ D811AB08217980AE80007407AB12AB6808A2D00930780A99508A0FFB66959AB1
+ 40438BAF2807201BB2220BB21A3BB0746A8A72E007A3200311500A9BF0B2B460
+ 0A2F6B0A11C00A06FF2B9C269B928A28071A2203AA1001D5600776D006445BB4
+ 46DB0676B009369B7D398BB33697B2AC1001AE100942DB067BB007FD90B55ABB
+ B5FDB0076DD00FAAA094AB480850E6888290088B00097D800790F00F82106E7D
+ A0339080136B59668810A18970B683F083A00A084BBA8974A0A18AF0087C3021
+ 88A0086576A46180004B601F4175B55C1BB95CDB0691A00A7280B01BFB0F3F98
+ 052418032AD099592008148007943003EC25026F30903140018640010C300407
+ 80073170081860BA2320020570008230046F70BB7870007FD0023360083A5000
+ C12000DA30025FF00419A0010E80012B8003923BBD5BDB06A1300A98DBB4E335
+ 087860083A0A0889FF300885F0077AF008D8816B5CEA0693F0B690F0704E8607
+ 493A087F106D5C8A086E2A087050086FDA158010AE8280088E602ACC741F2B60
+ 002B90001D40BD0ADC0F7610011AE7B1A9C50F7EF00AA130B45FBBC018BCB576
+ F0090F9CB973C007D079604107601A8207DA632142179E33D19E41A77542777E
+ D1F000AE40B41EF3B5BC800CC5D00612800CFD50B45A4BB4597BC13ADCC335DC
+ 0F0D300E92039D04DB461368088B5965A040098E60798A8063A0700A7B370763
+ 26091BB87689000A89E0068690827FF00894700A88200A856008ABAA08929009
+ A2700D62E00003E00117200F17300010600226F00C34300019300003B001B270
+ 0126B0022B000007FF3C001770C7805C0E2B90C70460006A7B0882F007C68A29
+ 3A3BA73AEB7F398160CDC2256FF9AFE5F75F6E8933D4875FB95725C817CA0038
+ 075360030D800BB220591E230B36800B0D6003B3800BB3E0310D800C00E0CBB5
+ 2C31C5200DBF2C590D70CBB260073000290C62218E06C18A76B32121C1A5D0C3
+ 19BCCD0ACCC102CBC9387B0737FA6A347A078EE094397A168E701D8570198A00
+ 08E7EB5FB33329B486AE7C90071746950F4002D2204B09404D12C005FF6C0023
+ 032AB3F00C06300B0630C9CF104D3AFC543A6400C5201F290401BC200DE7D0C1
+ DA4B11A4160CDE067753BC6688109A7C406E8B8070BDE98EDC36096C9BA598CC
+ AA3FAA08812009EFFF10058A0CC8CC440F1B9001047001CF201F1910D4D26002
+ 06F0D317B00282BC0201200FEE71D419400319B002F23000E50000414006D90B
+ CE88C611A5C85D58A711721001D5ABB53BFCC341ACC0C870C13D8C0B921B09A4
+ 10AD994B9E2D8C88953313DB65D76CC368DCE507628DB592FBB56A2DB97630B9
+ DAACB583ADCD76F00A779D735A4D1185C09991486E889B0789A00782A03B8200
+ AC7D20D3642B0879E0A54E3C088BE09F6E90D982E00E3B202AB8800B09302AE7
+ 0101140500100000D250435C304300A02A1ED001CFE02A10150019D00114250D
+ 1EF00C0130C90FA00E5FEA6BC7B67D7EAAB36E6A085056C6AD7A6334AA6E88C0
+ 081727DD7F40088CFF10B889E081962D167320A089900FF6F10CCF0000F4400F
+ EC4D001900011E4000F4B002F07D0BF2ED1E0170DB450DDFCF104344A02B5A50
+ 015AA00554E004D8400769EB64F6EB088AE0DCD779B21FA1947A4A116E900B91
+ F0C3B7C0C3DCECC3A1E00A11400A32E0071B02B27020B225DBD816BE38B18788
+ 4E0114EF973DE8F920D49A256FF90F72A00CB510D8197CB5401C0AA5C00AC040
+ E2B398B953080A97100C6E4C0943D807A1C7078210780C000A5F160C793BC668
+ 979B93200AA2A00832B0E3DC1CC4941B09A6400A247EB9B098B990C23307682C
+ FEA77BB283211862802E8936A48C213CB3093CBEC05E6B07A630E4D60CB1994B
+ 4CFC100187BDCD48FFFB09618BE61A05C1662207B110097B2EB97D4E0B361BE8
+ 9BE1E8DBE107339CC15F1B0A11E0072F37E840C30FA570E8D40BC4A540E4A3BE
+ D188983FDCA911DD69E1D7F50A5D9BD6918BEB485B0BB9B08B18C1465D8D7D16
+ AE9C95831129EB0FAC1EE13ABB845BC1078E00AA8370A20ED76A7880A17CB008
+ E60A6EFD9BB661110501200DF1DD0FEA510CB24D03060001101002F0F0078AC0
+ 15E7EAD9D37D0A89F079161708D3C86AB67900B9FA648FD00886503BCF4EA4FC
+ F9A38EC00FA4F00AA5600AAEE00F9F200C367BB995F60FC9E608A8C60864266F
+ AFB9667D90A493A09A492AA57ECB0886F707EBED011E60EE0100001210511E90
+ 0044E004593A098BFFC099E966BFAFFA07C100098F200AEEB808944008EDAEA1
+ B22A9A87F0AA7217088850957C600888800DEB1005A1C0C045EB0F406C0A3311
+ F11FE192137EEA635DBDA1400A982E3DD5E507ACB009190EC45BEB0F411C09D8
+ 1BF1ED19A81504F7EED921A490D693DEC36ECDB3189474404767B6B721D00174
+ 7DDFB36060035F3B0B92ABF6599BD84CAC89AC9608851003675C8D9770073170
+ 0AE7B58D93000AB9D9097480078320088F9D02ED6D001E304310B0025C400FCF
+ 400451B0086B1A052140054510045A000EF1E6768CF0038D00BEBE20021B187A
+ A28008BEC0E5A439038E89C505070E1C400338E00004500E783C00BC90F63FFC
+ 0A8D0F8C5C3A6AC1FFE0A14516B794B0D9E0DBDD795B62171A6B7A4008B70D01
+ 2C900029D4DACE4402DA406BED800001D000CF1454195004EA00108AF82C9AC4
+ 480FA147A7FE2842B4E811A43E841205D2F3E78F4347DA9C2420106045066919
+ 00702190A0DFC97EFE50F653F52F4D9A7F3165FEF337F31FBF373671DAD4C92F
+ 263F552B85B6F9344A0E3F52B5DAEC19DAA6962A9F3CA54A95E3479552A15951
+ FADBB3A74D283F2E61F2AC39D5EC593FB4DA68FD1A4BCEBF58A1D66AEDB79655
+ D4B353FD98B233376BD73681DBD8F167C74E24A862A596CDDB38A61C6576B432
+ 55F596DF36C9744F120DEB5867AEBA6C07F7AB456B53A966FE22348B15F5E562
+ CF8EF9BD9A6CA754FFD45891986A3E6927D7DBD8379545F27BD26B9B489B7291
+ F2C3CF393F7FCE812B261B3C2F3F5A9957B6D9D4F95F50DE28F798C2EBD9CFA7
+ E2750F9B6A0DDBE6EBEAD6CD8EAAB51BA59D4F32666ED2CEBB0DADF2F23A6A9B
+ E2BC8AA41419F899CE26C664828F41F9CCA26DA848DC9AC995F0C4033036A084
+ F2EA935C028C6FA607676A304299E428A5BFBA220890BF0CFBB16343CF46210E
+ A5C13631AAB113A98310459D4CB1AFAE4FBC9389AF186714D12CF036B34398E6
+ 9E3BABC71265EA11453F3014CF8E08168CC994184FDA6449AA84F1EB493F72D9
+ 64135364F0D2449EAA8CE9CA086DDCAE3BA93609B39F311D9363945098F20ACA
+ 08EA0AACA837E78CFF73AC1F81948914EDF640542A2D335452B615FBF1AA3B52
+ 42DB6C9344695AD43D47632AF4BE6DC8443243498D348B9F5A24FB6F147EC014
+ AAC2A9A86414CE52FF91E354944831AB993D43D1AF313F02DDA316A3F8D15328
+ 3B5A22D5C15DADECD5D74D769394CC7F3A0D3312611B6305A5CA6E7A76A56813
+ D5755A20E5F864256542ED76CF7E72698C9F526474A5337E5C61718F2ED9F591
+ D752DDDD8CC6A9720BB38D72D1AA662D69CDD5AA1475471DD151834F8A20AF2C
+ 87E4ADCFB3F88186B451647296C57EA05972DD8B81F42694932229F92C1551A6
+ 0B2C8EF569E315BCF0D50AE79607B6B6D7973555B9B1096394594068704DB149
+ A18011584E9AFCB1FFFA6AACB3D67A6BAEBBF6FA6BB0C3E6DAE26B7992434B65
+ 6483394961E4F5D51461021C05BDAC4CF18CEAB2E5D0339499AF73C563BA5AA5
+ B91456BCF419DA221DC3FB5A39A0B9B4313972B199AE70A792E315A979EA74C8
+ 3D7C733BA6C57B9503CCBB3C8B45D330793E8B15577FA27B3B57B8A5B66CAA4A
+ 59DABC8763FCAAF5999CA36A5C0FFB21E5F3D00B56E5763F0B059CAE80E53B2F
+ 3D3E6517DA51DF7FE267947D834B167AADF0E3B7FA9B681E97F37A652F3EB626
+ 4E00E10614501803847BD0F0211B1F3C9BCD8EE53DB4A374054E18E3867BDC00
+ 0456F0011AC660053304A92F2BD983B1E4753ECF48E1046700810F4E70023364
+ C30A2750C0186243FF9FC90D2576FFE81F08E8D7040564C3841354004FFC00A3
+ EDD0A26F64A3DD4CE4F039AAAC2A3C7B00178AFEF43A1CD18277D3AB219064A0
+ 1BDDE12942FC88051051678AE6D0B088D4D3216F3AD7BC0891E24638E28E8820
+ 3845C8B10289AC4A1C8A90E28AC088A71FC2481089AA054633662A75D2A3991F
+ 68B314E37C25027E00CE17E1C831276A06399533E32B42B140279982143EF1E3
+ 1FCD220731722F2B6DC81EF546510AA5CC25309188C0281AE9C8A9E00B7FAC8A
+ 161D1D23834D44C2505EB14328D8F046505AA72A68D45D2D4224BAEB91E215D5
+ E84B609400CB5806470EC008E46490533AC6F1C30FA460052954F1CA60968A1F
+ A0B18F3162668C48FF182314C668032F3E110B9399524037E4C727A73284028C
+ E00092D0410C78400149FCC317824004F584B14013A84005E9D08000C2F1040C
+ 7CE10B40C001070A2000431460080260280F664081188C40051132A7540E5100
+ 0A9420064A98810E04808F42B4600605B884A3FC90AF3638400542D0800A9E90
+ 03210801084F8887061C00D0446060083C10C42918AA84110C211C1405A675E2
+ C0074838020F8A28441D0CD1073AE8210F845884345F21196C66139BA108C500
+ 8A0080010CC004E2B80603245102DA55349A52F119F4243081814EE0095D8847
+ 17C491862CC0A16C6A5D2B4FF851A8F434A0010648802C0C908172B0A00CE6A8
+ E75E8BDA57EBF0A367195BB4225194C1C76BF115B23691C364F1181EE4EC519C
+ 67D1EC667BD70CB948723B078AA2A34A6B5A93C5C214C4C91F8EECB089458E56
+ 8AB0A55E2EB09221E4B047B7249A001B8C7B5CE42657B9CB656E739DFBDCE52A
+ 2107D3A56E75AD3B5D2540B7B9130808003B}
+ end
+ end
+ inline frViewRichEditor2: TfrViewRichEditor
+ Left = 145
+ Top = 0
+ Width = 596
+ Height = 392
+ Align = alClient
+ Font.Charset = DEFAULT_CHARSET
+ Font.Color = clWindowText
+ Font.Height = -11
+ Font.Name = 'Tahoma'
+ Font.Style = []
+ ParentFont = False
+ TabOrder = 1
+ ReadOnly = False
+ ExplicitLeft = 145
+ ExplicitWidth = 521
+ ExplicitHeight = 374
+ inherited TBXDock1: TTBXDock
+ Width = 596
+ ExplicitWidth = 521
+ inherited TBXToolbar1: TTBXToolbar
+ ExplicitWidth = 517
+ inherited TBXColorItem1: TTBXColorItem
+ Visible = False
+ end
+ end
+ end
+ inherited RichEdit: TcxDBRichEdit
+ DataBinding.DataField = 'MEMORIA'
+ DataBinding.DataSource = dsDataTable
+ ExplicitWidth = 521
+ ExplicitHeight = 348
+ Height = 366
+ Width = 596
+ end
end
end
end
inherited StatusBar: TJvStatusBar
- Top = 612
- Width = 674
+ Top = 596
+ Width = 749
Panels = <
item
Width = 200
end>
- ExplicitTop = 612
+ ExplicitTop = 549
ExplicitWidth = 674
end
inline frViewTotales1: TfrViewTotales [4]
Left = 0
- Top = 541
- Width = 674
- Height = 71
+ Top = 496
+ Width = 749
+ Height = 100
Align = alBottom
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -338,11 +744,11 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ParentFont = False
TabOrder = 4
ReadOnly = False
- ExplicitTop = 541
- ExplicitWidth = 674
- ExplicitHeight = 71
+ ExplicitTop = 496
+ ExplicitWidth = 749
+ ExplicitHeight = 100
inherited dxLayoutControl1: TdxLayoutControl
- Width = 674
+ Width = 749
Height = 171
LookAndFeel = dxLayoutOfficeLookAndFeel1
ExplicitWidth = 674
@@ -356,20 +762,20 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitWidth = 73
end
inherited Bevel3: TBevel
- Left = 333
+ Left = 368
Top = 11
Width = 8
Height = 54
- ExplicitLeft = 333
+ ExplicitLeft = 368
ExplicitTop = 11
ExplicitWidth = 8
ExplicitHeight = 54
end
inherited Bevel4: TBevel
- Left = 450
+ Left = 485
Top = 92
Width = 21
- ExplicitLeft = 450
+ ExplicitLeft = 485
ExplicitTop = 92
ExplicitWidth = 21
end
@@ -383,19 +789,19 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 93
end
inherited ImporteIVA: TcxDBCurrencyEdit
- Left = 521
+ Left = 556
Top = 38
Style.IsFontAssigned = True
- ExplicitLeft = 521
+ ExplicitLeft = 556
ExplicitTop = 38
ExplicitWidth = 137
Width = 137
end
inherited ImporteTotal: TcxDBCurrencyEdit
- Left = 451
+ Left = 486
Top = 112
Style.IsFontAssigned = True
- ExplicitLeft = 451
+ ExplicitLeft = 486
ExplicitTop = 112
ExplicitWidth = 137
Width = 137
@@ -408,37 +814,37 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
ExplicitTop = 112
end
inherited edtIVA: TcxDBSpinEdit
- Left = 450
+ Left = 485
Top = 38
Style.IsFontAssigned = True
- ExplicitLeft = 450
+ ExplicitLeft = 485
ExplicitTop = 38
end
inherited ImporteBase: TcxDBCurrencyEdit
- Left = 450
+ Left = 485
Top = 11
Style.IsFontAssigned = True
- ExplicitLeft = 450
+ ExplicitLeft = 485
ExplicitTop = 11
ExplicitWidth = 92
Width = 92
end
inherited edtRE: TcxDBSpinEdit
- Left = 450
+ Left = 485
Top = 65
DataBinding.DataField = ''
DataBinding.DataSource = nil
Style.IsFontAssigned = True
- ExplicitLeft = 450
+ ExplicitLeft = 485
ExplicitTop = 65
end
inherited ImporteRE: TcxDBCurrencyEdit
- Left = 521
+ Left = 556
Top = 65
DataBinding.DataField = ''
DataBinding.DataSource = nil
Style.IsFontAssigned = True
- ExplicitLeft = 521
+ ExplicitLeft = 556
ExplicitTop = 65
ExplicitWidth = 56
Width = 56
@@ -473,9 +879,9 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
Width = 81
end
inherited bTiposIVA: TButton
- Left = 185
+ Left = 220
Top = 38
- ExplicitLeft = 185
+ ExplicitLeft = 220
ExplicitTop = 38
end
inherited cbRecargoEquivalencia: TcxDBCheckBox
@@ -501,9 +907,6 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited dxLayoutControl1Item10: TdxLayoutItem
Visible = False
end
- inherited dxLayoutControl1Group7: TdxLayoutGroup
- Visible = False
- end
end
inherited dxLayoutControl1Group5: TdxLayoutGroup
inherited dxLayoutControl1Group3: TdxLayoutGroup
@@ -528,8 +931,11 @@ inherited fEditorPresupuestoCliente: TfEditorPresupuestoCliente
inherited EditorActionList: TActionList [5]
end
inherited SmallImages: TPngImageList [6]
+ Top = 72
end
inherited LargeImages: TPngImageList [7]
+ Left = 435
+ Top = 72
end
inherited JvFormStorage: TJvFormStorage [8]
end
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.pas b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.pas
index eafb6154..1767272d 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.pas
+++ b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestoCliente.pas
@@ -16,7 +16,7 @@ uses
dxLayoutLookAndFeels, JvExComCtrls, JvStatusBar, uViewTotales,
uIEditorPresupuestoCliente, uBizPresupuestosCliente, uViewPresupuestoCliente,
uViewDetallesDTO, uViewDetallesArticulos, uViewDetallesPresupuestoCliente,
- uDAInterfaces, cxRichEdit, cxDBRichEdit;
+ uDAInterfaces, cxRichEdit, cxDBRichEdit, JvGIF, uViewRichEditor;
type
TfEditorPresupuestoCliente = class(TfEditorDBItem, IEditorPresupuestoCliente)
@@ -29,8 +29,12 @@ type
frViewDetallesPresupuestoCliente1: TfrViewDetallesPresupuestoCliente;
pagPortada: TTabSheet;
pagMemoria: TTabSheet;
- cxDBMemo1: TcxDBMemo;
- edtPortada: TcxDBRichEdit;
+ Panel1: TPanel;
+ Image2: TImage;
+ Panel2: TPanel;
+ Image3: TImage;
+ frViewRichEditor1: TfrViewRichEditor;
+ frViewRichEditor2: TfrViewRichEditor;
procedure FormShow(Sender: TObject);
procedure CustomEditorClose(Sender: TObject; var Action: TCloseAction);
@@ -201,12 +205,9 @@ end;
procedure TfEditorPresupuestoCliente.ImprimirInterno;
begin
-AppFactuGES.ShowCapado;
-{
inherited;
if not Modified then
FController.Print(FPresupuesto);
-}
end;
procedure TfEditorPresupuestoCliente.OnClienteChanged(Sender: TObject);
@@ -220,13 +221,14 @@ begin
AClientesController := TClientesController.Create;
try
- if not AClientesController.TieneDatosBancarios(FPresupuesto.Cliente) then
- MessageBox(0, 'Este cliente no tiene datos bancarios en su ficha', 'Atención', MB_ICONWARNING or MB_OK);
+ { // Esto podría ser configurable en el programa
+ if not AClientesController.TieneDatosBancarios(FPresupuesto.Cliente) then
+ MessageBox(0, 'Este cliente no tiene datos bancarios en su ficha', 'Atención', MB_ICONWARNING or MB_OK);}
case FPresupuesto.Cliente.Direcciones.RecordCount of
0 : begin
FController.QuitarDireccionEnvio(FPresupuesto);
- MessageBox(0, '¡Atención! Este cliente no tiene ' + #10#13 + 'ninguna dirección de envío en su ficha', 'Atención', MB_ICONWARNING or MB_OK);
+ MessageBox(0, '¡Atención! Este cliente no tiene ' + #10#13 + 'ninguna dirección en su ficha', 'Atención', MB_ICONWARNING or MB_OK);
FPresupuesto.Edit;
FPresupuesto.IMPORTE_PORTE := 0;
end;
@@ -290,12 +292,9 @@ end;
procedure TfEditorPresupuestoCliente.PrevisualizarInterno;
begin
-AppFactuGES.ShowCapado;
-{
inherited;
if not Modified then
FController.Preview(FPresupuesto);
-}
end;
procedure TfEditorPresupuestoCliente.RecalcularPortePorUnidad;
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas
index 824097fa..7abe7244 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas
+++ b/Source/Modulos/Presupuestos de cliente/Views/uEditorPresupuestosCliente.pas
@@ -192,8 +192,6 @@ procedure TfEditorPresupuestosCliente.DuplicarInterno;
var
APresupuesto : IBizPresupuestoCliente;
begin
-AppFactuGES.ShowCapado;
-{
inherited;
APresupuesto := FController.Duplicar(Presupuestos);
try
@@ -201,7 +199,6 @@ AppFactuGES.ShowCapado;
finally
actRefrescar.Execute;
end;
-}
end;
procedure TfEditorPresupuestosCliente.EliminarInterno;
@@ -283,8 +280,6 @@ var
APresupuestos: IBizPresupuestoCliente;
AllItems: Boolean;
begin
-AppFactuGES.ShowCapado;
-{
APresupuestos := Nil;
AllItems := False;
@@ -318,7 +313,6 @@ AppFactuGES.ShowCapado;
end;
end;
end;
-}
end;
procedure TfEditorPresupuestosCliente.ModificarInterno;
@@ -348,8 +342,6 @@ var
APresupuestos: IBizPresupuestoCliente;
AllItems: Boolean;
begin
-AppFactuGES.ShowCapado;
-{
APresupuestos := Nil;
AllItems := False;
@@ -384,7 +376,6 @@ AppFactuGES.ShowCapado;
end;
end;
APresupuestos := Nil;
-}
end;
procedure TfEditorPresupuestosCliente.SetController(const Value: IPresupuestosClienteController);
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestoCliente.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestoCliente.dfm
index 1c0902c9..e9cf6034 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestoCliente.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestoCliente.dfm
@@ -14,8 +14,6 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
ParentBackground = True
TabOrder = 0
AutoContentSizes = [acsWidth, acsHeight]
- ExplicitWidth = 740
- ExplicitHeight = 465
DesignSize = (
766
513)
@@ -52,9 +50,13 @@ inherited frViewPresupuestoCliente: TfrViewPresupuestoCliente
Style.BorderColor = clWindowFrame
Style.BorderStyle = ebs3D
Style.HotTrack = False
+ Style.LookAndFeel.Kind = lfStandard
Style.LookAndFeel.NativeStyle = True
+ StyleDisabled.LookAndFeel.Kind = lfStandard
StyleDisabled.LookAndFeel.NativeStyle = True
+ StyleFocused.LookAndFeel.Kind = lfStandard
StyleFocused.LookAndFeel.NativeStyle = True
+ StyleHot.LookAndFeel.Kind = lfStandard
StyleHot.LookAndFeel.NativeStyle = True
TabOrder = 9
Height = 253
diff --git a/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm b/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm
index 6feab4fd..4dab1a1d 100644
--- a/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm
+++ b/Source/Modulos/Presupuestos de cliente/Views/uViewPresupuestosCliente.dfm
@@ -71,6 +71,11 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
BestFitMaxWidth = 25
Width = 68
end
+ object cxGridViewSITUACION: TcxGridDBColumn
+ Caption = 'Situaci'#243'n'
+ DataBinding.FieldName = 'SITUACION'
+ Width = 69
+ end
object cxGridViewFECHA_PRESUPUESTO: TcxGridDBColumn
Caption = 'Fecha presupuesto'
DataBinding.FieldName = 'FECHA_PRESUPUESTO'
@@ -79,10 +84,6 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
SortOrder = soDescending
Width = 45
end
- object cxGridViewSITUACION: TcxGridDBColumn
- DataBinding.FieldName = 'SITUACION'
- Width = 69
- end
object cxGridViewFECHA_DECISION: TcxGridDBColumn
Caption = 'Fecha decisi'#243'n'
DataBinding.FieldName = 'FECHA_DECISION'
@@ -101,7 +102,6 @@ inherited frViewPresupuestosCliente: TfrViewPresupuestosCliente
object cxGridViewCLIENTE_FINAL: TcxGridDBColumn
Caption = 'Cliente final'
DataBinding.FieldName = 'CLIENTE_FINAL'
- Visible = False
end
object cxGridViewIMPORTE_TOTAL: TcxGridDBColumn
Caption = 'Importe total'
diff --git a/Source/Servicios/FactuGES.RODL b/Source/Servicios/FactuGES.RODL
index 8e57f238..48e36e7f 100644
--- a/Source/Servicios/FactuGES.RODL
+++ b/Source/Servicios/FactuGES.RODL
@@ -313,7 +313,6 @@
-
diff --git a/Source/Servidor/FactuGES_Server.RES b/Source/Servidor/FactuGES_Server.RES
index e31af9c3..855655ef 100644
Binary files a/Source/Servidor/FactuGES_Server.RES and b/Source/Servidor/FactuGES_Server.RES differ
diff --git a/Source/Servidor/FactuGES_Server.dpr b/Source/Servidor/FactuGES_Server.dpr
index eb57d714..dff89894 100644
--- a/Source/Servidor/FactuGES_Server.dpr
+++ b/Source/Servidor/FactuGES_Server.dpr
@@ -95,7 +95,8 @@ uses
schInventarioClient_Intf in '..\Modulos\Inventario\Model\schInventarioClient_Intf.pas',
schInventarioServer_Intf in '..\Modulos\Inventario\Model\schInventarioServer_Intf.pas',
schHistoricoMovimientosClient_Intf in '..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosClient_Intf.pas',
- schHistoricoMovimientosServer_Intf in '..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas';
+ schHistoricoMovimientosServer_Intf in '..\Modulos\Historico de movimientos\Model\schHistoricoMovimientosServer_Intf.pas',
+ uRptFacturasCliente_Server in '..\Modulos\Facturas de cliente\Reports\uRptFacturasCliente_Server.pas' {RptFacturasCliente: TDataModule};
{$R *.res}
{$R ..\Servicios\RODLFile.res}
diff --git a/Source/Servidor/FactuGES_Server.dproj b/Source/Servidor/FactuGES_Server.dproj
index 4cf5427f..9e182051 100644
--- a/Source/Servidor/FactuGES_Server.dproj
+++ b/Source/Servidor/FactuGES_Server.dproj
@@ -1,206 +1,214 @@
-
+
-
- {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
-
-
- FalseTrueFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.03.0.0.0lunes, 19 de noviembre de 2007 18:58
- RemObjects Pascal Script - RemObjects SDK 3.0 Integration
- FactuGES_Server.dpr
-
-
-
-
- MainSource
-
-
-
-
-
- TDARemoteService
-
-
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDARemoteService
-
-
-
-
-
-
-
-
-
-
-
-
- TDARemoteService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
- TDataAbstractService
-
-
-
-
-
-
-
-
-
- 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
+
+
+FalseTrueFalseTrueFalse1000FalseFalseFalseFalseFalse308212521.0.0.03.0.0.0lunes, 19 de noviembre de 2007 18:58
+
+
+
+
+ RemObjects Pascal Script - RemObjects SDK 3.0 Integration
+ FactuGES_Server.dpr
+
+
+
+
+ MainSource
+
+
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+
+
+
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+ TDataModule
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+ TDataAbstractService
+
+
+
+
+
+
+
+
+ TDataAbstractService
+
+
+
+ TFrame
+
+
+
+ TFrame
+
+
+
+ TForm
+
+
+
+ TFrame
+
+
+
+ TDARemoteService
+
+
+
+
+
+
+ TDataModule
+
+
+
+
+
+
+
+
+
+
+
+
+