Arreglo para que cuando se cambie de cliente o proveedor en los documentos las cantidades de los detalles no se modifiquen, y se recalule el importe total del nuevo documento. Se añade campo que informa si un documento se ha impreso y el numero de veces que se ha impreso. Ademas de otros fallos varios, como la recogida de pedidos de la tienda web

git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@271 c93665c3-c93d-084d-9b98-7d5f4a9c3376
This commit is contained in:
David Arranz 2008-07-15 18:09:26 +00:00
parent fa50cd7e2a
commit 9f7d7df6d1
141 changed files with 5085 additions and 1336 deletions

Binary file not shown.

View File

@ -1,32 +1,828 @@
ALTER TABLE ALBARANES_CLIENTE_DETALLES
ADD ID_PEDIDO TIPO_ID;
CREATE TABLE IMPRESIONES(
ID TIPO_ID NOT NULL,
ID_TABLA TIPO_ID,
TABLA VARCHAR(50) COLLATE ES_ES,
NUM_COPIAS SMALLINT
);
update albaranes_cliente_detalles
set id_pedido = (select albaranes_cliente.id_pedido
from albaranes_cliente
where albaranes_cliente.id = albaranes_cliente_detalles.ID_ALBARAN);
/* Create generator... */
CREATE GENERATOR GEN_IMPRESIONES_ID;
ALTER TABLE ALBARANES_PROVEEDOR_DETALLES
ADD ID_PEDIDO TIPO_ID;
update albaranes_proveedor_detalles
set id_pedido = (select albaranes_proveedor.id_pedido
from albaranes_proveedor
where albaranes_proveedor.id = albaranes_proveedor_detalles.ID_ALBARAN);
CREATE TRIGGER FACTURAS_CLIENTE_DELETE FOR FACTURAS_CLIENTE
ACTIVE BEFORE DELETE POSITION 0
AS
CREATE PROCEDURE PRO_ANADIR_MARCA_IMPRESION (
tabla varchar(255),
id_tabla integer)
as
declare variable id integer;
begin
update albaranes_cliente
set albaranes_cliente.fecha_recepcion = null
where albaranes_cliente.id_factura = id_factura;
end
^
select ID
from IMPRESIONES
where ID_TABLA = :ID_TABLA
and TABLA = UPPER(:TABLA)
into :ID;
/*En el caso de que ya exista se modifica la cantidad en caso contrario se anade el elemetno*/
if (ID > 0) then
begin
update IMPRESIONES
set NUM_COPIAS = NUM_COPIAS + 1
where ID = :ID;
end
else
begin
insert into IMPRESIONES (ID, TABLA, ID_TABLA, NUM_COPIAS)
values (GEN_ID(GEN_IMPRESIONES_ID, 1), UPPER(:TABLA), :ID_TABLA, 1);
end
suspend;
end;
SET TERM ; ^
DROP VIEW V_ALBARANES_CLIENTE;
/* Create altered view: V_ALBARANES_CLIENTE */
/* Create view: V_ALBARANES_CLIENTE (ViwData.CreateDependDef) */
CREATE VIEW V_ALBARANES_CLIENTE(
ID,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE,
FECHA_ALBARAN,
REFERENCIA,
REFERENCIA_CLIENTE,
TIPO,
SITUACION,
ID_ALMACEN,
NOMBRE_ALMACEN,
ID_PEDIDO,
REF_PEDIDO,
ID_FACTURA,
REF_FACTURA,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
FECHA_PREVISTA_ENVIO,
FECHA_ENVIO,
FECHA_RECEPCION,
ID_AGENTE,
AGENTE,
NUM_COPIAS)
AS
SELECT
ALBARANES_CLIENTE.ID,
ALBARANES_CLIENTE.ID_EMPRESA,
ALBARANES_CLIENTE.ID_CLIENTE,
CLIENTES.NOMBRE,
ALBARANES_CLIENTE.FECHA_ALBARAN,
ALBARANES_CLIENTE.REFERENCIA,
ALBARANES_CLIENTE.REFERENCIA_CLIENTE,
ALBARANES_CLIENTE.TIPO,
V_ALB_CLI_SITUACION.SITUACION,
ALBARANES_CLIENTE.ID_ALMACEN,
ALMACENES.NOMBRE AS NOMBRE_ALMACEN,
ALBARANES_CLIENTE.ID_PEDIDO,
PEDIDOS_CLIENTE.REFERENCIA AS REF_PEDIDO,
ALBARANES_CLIENTE.ID_FACTURA,
FACTURAS_CLIENTE.REFERENCIA AS REF_FACTURA,
ALBARANES_CLIENTE.CALLE,
ALBARANES_CLIENTE.CODIGO_POSTAL,
ALBARANES_CLIENTE.POBLACION,
ALBARANES_CLIENTE.PROVINCIA,
ALBARANES_CLIENTE.PERSONA_CONTACTO,
ALBARANES_CLIENTE.TELEFONO,
ALBARANES_CLIENTE.IMPORTE_NETO,
ALBARANES_CLIENTE.IMPORTE_PORTE,
ALBARANES_CLIENTE.DESCUENTO,
ALBARANES_CLIENTE.IMPORTE_DESCUENTO,
ALBARANES_CLIENTE.BASE_IMPONIBLE,
ALBARANES_CLIENTE.IVA,
ALBARANES_CLIENTE.IMPORTE_IVA,
ALBARANES_CLIENTE.IMPORTE_TOTAL,
ALBARANES_CLIENTE.OBSERVACIONES,
ALBARANES_CLIENTE.INCIDENCIAS,
ALBARANES_CLIENTE.INCIDENCIAS_ACTIVAS,
ALBARANES_CLIENTE.FECHA_ALTA,
ALBARANES_CLIENTE.FECHA_MODIFICACION,
ALBARANES_CLIENTE.USUARIO,
ALBARANES_CLIENTE.ID_FORMA_PAGO,
ALBARANES_CLIENTE.FECHA_PREVISTA_ENVIO,
ALBARANES_CLIENTE.FECHA_ENVIO,
ALBARANES_CLIENTE.FECHA_RECEPCION,
CLIENTES_DATOS.ID_AGENTE,
AGENTES.NOMBRE,
IMPRESIONES.NUM_COPIAS
FROM
ALBARANES_CLIENTE
INNER JOIN V_ALB_CLI_SITUACION ON (V_ALB_CLI_SITUACION.ID = ALBARANES_CLIENTE.ID)
INNER JOIN CONTACTOS CLIENTES ON (CLIENTES.ID = ALBARANES_CLIENTE.ID_CLIENTE)
LEFT OUTER JOIN CLIENTES_DATOS ON (CLIENTES_DATOS.ID_CLIENTE = ALBARANES_CLIENTE.ID_CLIENTE)
LEFT OUTER JOIN CONTACTOS AGENTES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = ALBARANES_CLIENTE.ID_PEDIDO)
LEFT OUTER JOIN FACTURAS_CLIENTE ON (FACTURAS_CLIENTE.ID = ALBARANES_CLIENTE.ID_FACTURA)
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_CLIENTE.ID_ALMACEN)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = ALBARANES_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'ALBARANESCLIENTE'));
;
/* Drop altered view: V_ALBARANES_PROVEEDOR */
DROP VIEW V_ALBARANES_PROVEEDOR;
/* Create altered view: V_ALBARANES_PROVEEDOR */
/* Create view: V_ALBARANES_PROVEEDOR (ViwData.CreateDependDef) */
CREATE VIEW V_ALBARANES_PROVEEDOR(
ID,
ID_EMPRESA,
ID_PROVEEDOR,
NOMBRE,
FECHA_ALBARAN,
REFERENCIA,
REFERENCIA_PROVEEDOR,
TIPO,
ID_ALMACEN,
NOMBRE_ALMACEN,
ID_PEDIDO,
REF_PED_PROVEEDOR,
ID_FACTURA,
REF_FACTURA,
REF_FACTURA_PROV,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
NUM_COPIAS)
AS
SELECT
ALBARANES_PROVEEDOR.ID,
ALBARANES_PROVEEDOR.ID_EMPRESA,
ALBARANES_PROVEEDOR.ID_PROVEEDOR,
CONTACTOS.NOMBRE,
ALBARANES_PROVEEDOR.FECHA_ALBARAN,
ALBARANES_PROVEEDOR.REFERENCIA,
ALBARANES_PROVEEDOR.REFERENCIA_PROVEEDOR,
ALBARANES_PROVEEDOR.TIPO,
ALBARANES_PROVEEDOR.ID_ALMACEN,
ALMACENES.NOMBRE AS NOMBRE_ALMACEN,
ALBARANES_PROVEEDOR.ID_PEDIDO,
PEDIDOS_PROVEEDOR.REFERENCIA AS REF_PED_PROVEEDOR,
ALBARANES_PROVEEDOR.ID_FACTURA,
FACTURAS_PROVEEDOR.REFERENCIA AS REF_FACTURA,
ALBARANES_PROVEEDOR.REF_FACTURA_PROV,
ALBARANES_PROVEEDOR.CALLE,
ALBARANES_PROVEEDOR.CODIGO_POSTAL,
ALBARANES_PROVEEDOR.POBLACION,
ALBARANES_PROVEEDOR.PROVINCIA,
ALBARANES_PROVEEDOR.PERSONA_CONTACTO,
ALBARANES_PROVEEDOR.TELEFONO,
ALBARANES_PROVEEDOR.IMPORTE_NETO,
ALBARANES_PROVEEDOR.IMPORTE_PORTE,
ALBARANES_PROVEEDOR.DESCUENTO,
ALBARANES_PROVEEDOR.IMPORTE_DESCUENTO,
ALBARANES_PROVEEDOR.BASE_IMPONIBLE,
ALBARANES_PROVEEDOR.IVA,
ALBARANES_PROVEEDOR.IMPORTE_IVA,
ALBARANES_PROVEEDOR.IMPORTE_TOTAL,
ALBARANES_PROVEEDOR.OBSERVACIONES,
ALBARANES_PROVEEDOR.INCIDENCIAS,
ALBARANES_PROVEEDOR.INCIDENCIAS_ACTIVAS,
ALBARANES_PROVEEDOR.FECHA_ALTA,
ALBARANES_PROVEEDOR.FECHA_MODIFICACION,
ALBARANES_PROVEEDOR.USUARIO,
ALBARANES_PROVEEDOR.ID_FORMA_PAGO,
IMPRESIONES.NUM_COPIAS
FROM
ALBARANES_PROVEEDOR
INNER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_PROVEEDOR.ID_PROVEEDOR)
LEFT OUTER JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_PEDIDO)
LEFT OUTER JOIN FACTURAS_PROVEEDOR ON (FACTURAS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_FACTURA)
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_PROVEEDOR.ID_ALMACEN)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = ALBARANES_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'ALBARANESPROVEEDOR'));
;
/* Drop altered view: V_FACTURAS_CLIENTE */
DROP VIEW V_AGENTES_COMISIONES_DET_FAC;
DROP VIEW V_FACTURAS_CLIENTE;
/* Create altered view: V_FACTURAS_CLIENTE */
/* Create view: V_FACTURAS_CLIENTE (ViwData.CreateDependDef) */
CREATE VIEW V_FACTURAS_CLIENTE(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
ID_COMISION_LIQUIDADA,
FECHA_FACTURA,
SITUACION,
BASE_IMPONIBLE,
DESCUENTO,
IMPORTE_DESCUENTO,
IVA,
IMPORTE_IVA,
RE,
IMPORTE_RE,
IMPORTE_TOTAL,
OBSERVACIONES,
ID_CLIENTE,
NIF_CIF,
NOMBRE,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
RECARGO_EQUIVALENCIA,
ID_TIPO_IVA,
IMPORTE_NETO,
IMPORTE_PORTE,
ID_AGENTE,
REFERENCIA_COMISION,
NUM_COPIAS)
AS
SELECT FACTURAS_CLIENTE.ID,
FACTURAS_CLIENTE.ID_EMPRESA,
FACTURAS_CLIENTE.REFERENCIA,
CASE WHEN (FACTURAS_CLIENTE.IMPORTE_TOTAL < 0) THEN 'A' ELSE 'F' END AS TIPO,
FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA,
FACTURAS_CLIENTE.FECHA_FACTURA,
V_FAC_CLI_SITUACION.SITUACION,
FACTURAS_CLIENTE.BASE_IMPONIBLE,
FACTURAS_CLIENTE.DESCUENTO,
FACTURAS_CLIENTE.IMPORTE_DESCUENTO,
FACTURAS_CLIENTE.IVA,
FACTURAS_CLIENTE.IMPORTE_IVA,
FACTURAS_CLIENTE.RE,
FACTURAS_CLIENTE.IMPORTE_RE,
FACTURAS_CLIENTE.IMPORTE_TOTAL,
FACTURAS_CLIENTE.OBSERVACIONES,
FACTURAS_CLIENTE.ID_CLIENTE,
FACTURAS_CLIENTE.NIF_CIF,
FACTURAS_CLIENTE.NOMBRE,
FACTURAS_CLIENTE.CALLE,
FACTURAS_CLIENTE.POBLACION,
FACTURAS_CLIENTE.PROVINCIA,
FACTURAS_CLIENTE.CODIGO_POSTAL,
FACTURAS_CLIENTE.FECHA_ALTA,
FACTURAS_CLIENTE.FECHA_MODIFICACION,
FACTURAS_CLIENTE.USUARIO,
FACTURAS_CLIENTE.ID_FORMA_PAGO,
FACTURAS_CLIENTE.RECARGO_EQUIVALENCIA,
FACTURAS_CLIENTE.ID_TIPO_IVA,
FACTURAS_CLIENTE.IMPORTE_NETO,
FACTURAS_CLIENTE.IMPORTE_PORTE,
CLIENTES_DATOS.ID_AGENTE,
COMISIONES_LIQUIDADAS.REFERENCIA,
IMPRESIONES.NUM_COPIAS
FROM V_FAC_CLI_SITUACION
LEFT JOIN FACTURAS_CLIENTE
ON (FACTURAS_CLIENTE.ID = V_FAC_CLI_SITUACION.ID_FACTURA)
LEFT JOIN COMISIONES_LIQUIDADAS
ON (COMISIONES_LIQUIDADAS.ID = FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA)
LEFT JOIN CLIENTES_DATOS
ON (CLIENTES_DATOS.ID_CLIENTE = FACTURAS_CLIENTE.ID_CLIENTE)
LEFT JOIN IMPRESIONES
ON ((IMPRESIONES.ID_TABLA = FACTURAS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'FACTURASCLIENTE'));
;
/* Drop altered view: V_FACTURAS_PROVEEDOR */
DROP VIEW V_FACTURAS_PROVEEDOR;
/* Create altered view: V_FACTURAS_PROVEEDOR */
/* Create view: V_FACTURAS_PROVEEDOR (ViwData.CreateDependDef) */
CREATE VIEW V_FACTURAS_PROVEEDOR(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
REFERENCIA_PROVEEDOR,
FECHA_FACTURA,
SITUACION,
BASE_IMPONIBLE,
DESCUENTO,
IMPORTE_DESCUENTO,
IVA,
IMPORTE_IVA,
RE,
IMPORTE_RE,
IMPORTE_TOTAL,
OBSERVACIONES,
ID_PROVEEDOR,
NIF_CIF,
NOMBRE,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
RECARGO_EQUIVALENCIA,
ID_TIPO_IVA,
IMPORTE_NETO,
IMPORTE_PORTE,
NUM_COPIAS)
AS
SELECT FACTURAS_PROVEEDOR.ID,
FACTURAS_PROVEEDOR.ID_EMPRESA,
FACTURAS_PROVEEDOR.REFERENCIA,
CASE WHEN (FACTURAS_PROVEEDOR.IMPORTE_TOTAL < 0) THEN 'A' ELSE 'F' END AS TIPO,
FACTURAS_PROVEEDOR.REFERENCIA_PROVEEDOR,
FACTURAS_PROVEEDOR.FECHA_FACTURA,
V_FAC_PRO_SITUACION.SITUACION,
FACTURAS_PROVEEDOR.BASE_IMPONIBLE,
FACTURAS_PROVEEDOR.DESCUENTO,
FACTURAS_PROVEEDOR.IMPORTE_DESCUENTO,
FACTURAS_PROVEEDOR.IVA,
FACTURAS_PROVEEDOR.IMPORTE_IVA,
FACTURAS_PROVEEDOR.RE,
FACTURAS_PROVEEDOR.IMPORTE_RE,
FACTURAS_PROVEEDOR.IMPORTE_TOTAL,
FACTURAS_PROVEEDOR.OBSERVACIONES,
FACTURAS_PROVEEDOR.ID_PROVEEDOR,
FACTURAS_PROVEEDOR.NIF_CIF,
FACTURAS_PROVEEDOR.NOMBRE,
FACTURAS_PROVEEDOR.CALLE,
FACTURAS_PROVEEDOR.POBLACION,
FACTURAS_PROVEEDOR.PROVINCIA,
FACTURAS_PROVEEDOR.CODIGO_POSTAL,
FACTURAS_PROVEEDOR.FECHA_ALTA,
FACTURAS_PROVEEDOR.FECHA_MODIFICACION,
FACTURAS_PROVEEDOR.USUARIO,
FACTURAS_PROVEEDOR.ID_FORMA_PAGO,
FACTURAS_PROVEEDOR.RECARGO_EQUIVALENCIA,
FACTURAS_PROVEEDOR.ID_TIPO_IVA,
FACTURAS_PROVEEDOR.IMPORTE_NETO,
FACTURAS_PROVEEDOR.IMPORTE_PORTE,
IMPRESIONES.NUM_COPIAS
FROM V_FAC_PRO_SITUACION
LEFT JOIN FACTURAS_PROVEEDOR
ON (FACTURAS_PROVEEDOR.ID = V_FAC_PRO_SITUACION.ID_FACTURA)
LEFT JOIN PROVEEDORES_DATOS
ON (PROVEEDORES_DATOS.ID_PROVEEDOR = FACTURAS_PROVEEDOR.ID_PROVEEDOR)
LEFT JOIN IMPRESIONES
ON ((IMPRESIONES.ID_TABLA = FACTURAS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'FACTURASPROVEEDOR'));
;
/* Drop altered view: V_PEDIDOS_CLIENTE */
DROP VIEW V_PEDIDOS_CLIENTE;
/* Create altered view: V_PEDIDOS_CLIENTE */
/* Create view: V_PEDIDOS_CLIENTE (ViwData.CreateDependDef) */
CREATE VIEW V_PEDIDOS_CLIENTE(
ID,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE,
REFERENCIA,
REFERENCIA_CLIENTE,
SITUACION,
FECHA_PEDIDO,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
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,
REF_TIENDA_WEB,
FECHA_PREVISTA_ENVIO,
NUM_COPIAS)
AS
SELECT
PEDIDOS_CLIENTE.ID,
PEDIDOS_CLIENTE.ID_EMPRESA,
PEDIDOS_CLIENTE.ID_CLIENTE,
V_CLIENTES.NOMBRE,
PEDIDOS_CLIENTE.REFERENCIA,
PEDIDOS_CLIENTE.REFERENCIA_CLIENTE,
V_PED_CLI_SITUACION.SITUACION,
PEDIDOS_CLIENTE.FECHA_PEDIDO,
PEDIDOS_CLIENTE.CALLE,
PEDIDOS_CLIENTE.CODIGO_POSTAL,
PEDIDOS_CLIENTE.POBLACION,
PEDIDOS_CLIENTE.PROVINCIA,
PEDIDOS_CLIENTE.PERSONA_CONTACTO,
PEDIDOS_CLIENTE.TELEFONO,
PEDIDOS_CLIENTE.OBSERVACIONES,
PEDIDOS_CLIENTE.INCIDENCIAS,
PEDIDOS_CLIENTE.INCIDENCIAS_ACTIVAS,
PEDIDOS_CLIENTE.FECHA_ALTA,
PEDIDOS_CLIENTE.FECHA_MODIFICACION,
PEDIDOS_CLIENTE.USUARIO,
PEDIDOS_CLIENTE.IMPORTE_NETO,
PEDIDOS_CLIENTE.IMPORTE_PORTE,
PEDIDOS_CLIENTE.DESCUENTO,
PEDIDOS_CLIENTE.IMPORTE_DESCUENTO,
PEDIDOS_CLIENTE.BASE_IMPONIBLE,
PEDIDOS_CLIENTE.IVA,
PEDIDOS_CLIENTE.IMPORTE_IVA,
PEDIDOS_CLIENTE.IMPORTE_TOTAL,
PEDIDOS_CLIENTE.ID_FORMA_PAGO,
PEDIDOS_CLIENTE.REF_TIENDA_WEB,
PEDIDOS_CLIENTE.FECHA_PREVISTA_ENVIO,
IMPRESIONES.NUM_COPIAS
FROM
V_PED_CLI_SITUACION
INNER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = V_PED_CLI_SITUACION.ID_PEDIDO)
INNER JOIN V_CLIENTES ON (PEDIDOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID)
LEFT JOIN IMPRESIONES
ON ((IMPRESIONES.ID_TABLA = PEDIDOS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'PEDIDOSCLIENTE'));
;
/* Drop altered view: V_PEDIDOS_PROVEEDOR */
DROP VIEW V_PEDIDOS_PROVEEDOR;
/* Create altered view: V_PEDIDOS_PROVEEDOR */
/* Create view: V_PEDIDOS_PROVEEDOR (ViwData.CreateDependDef) */
CREATE VIEW V_PEDIDOS_PROVEEDOR(
ID,
ID_EMPRESA,
ID_PROVEEDOR,
NOMBRE,
REFERENCIA,
SITUACION,
FECHA_ENVIO,
FECHA_PEDIDO,
FECHA_CONFIRMACION,
FECHA_ENTREGA,
ID_ALMACEN,
NOMBRE_ALMACEN,
OBSERVACIONES,
IMPORTE_TOTAL,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
PERSONA_CONTACTO,
TELEFONO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_PEDIDO_CLIENTE,
REF_PED_CLIENTE,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
ID_FORMA_PAGO,
NUM_COPIAS)
AS
SELECT
PEDIDOS_PROVEEDOR.ID,
PEDIDOS_PROVEEDOR.ID_EMPRESA,
PEDIDOS_PROVEEDOR.ID_PROVEEDOR,
V_PROVEEDORES.NOMBRE,
PEDIDOS_PROVEEDOR.REFERENCIA,
V_PED_PROV_SITUACION.SITUACION,
PEDIDOS_PROVEEDOR.FECHA_ENVIO,
PEDIDOS_PROVEEDOR.FECHA_PEDIDO,
PEDIDOS_PROVEEDOR.FECHA_CONFIRMACION,
PEDIDOS_PROVEEDOR.FECHA_ENTREGA,
PEDIDOS_PROVEEDOR.ID_ALMACEN,
ALMACENES.NOMBRE AS NOMBRE_ALMACEN,
PEDIDOS_PROVEEDOR.OBSERVACIONES,
PEDIDOS_PROVEEDOR.IMPORTE_TOTAL,
PEDIDOS_PROVEEDOR.INCIDENCIAS,
PEDIDOS_PROVEEDOR.INCIDENCIAS_ACTIVAS,
PEDIDOS_PROVEEDOR.CALLE,
PEDIDOS_PROVEEDOR.POBLACION,
PEDIDOS_PROVEEDOR.PROVINCIA,
PEDIDOS_PROVEEDOR.CODIGO_POSTAL,
PEDIDOS_PROVEEDOR.PERSONA_CONTACTO,
PEDIDOS_PROVEEDOR.TELEFONO,
PEDIDOS_PROVEEDOR.FECHA_ALTA,
PEDIDOS_PROVEEDOR.FECHA_MODIFICACION,
PEDIDOS_PROVEEDOR.USUARIO,
PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE,
PEDIDOS_CLIENTE.REFERENCIA AS REF_PED_CLIENTE,
PEDIDOS_PROVEEDOR.IMPORTE_NETO,
PEDIDOS_PROVEEDOR.IMPORTE_PORTE,
PEDIDOS_PROVEEDOR.DESCUENTO,
PEDIDOS_PROVEEDOR.IMPORTE_DESCUENTO,
PEDIDOS_PROVEEDOR.BASE_IMPONIBLE,
PEDIDOS_PROVEEDOR.IVA,
PEDIDOS_PROVEEDOR.IMPORTE_IVA,
PEDIDOS_PROVEEDOR.ID_FORMA_PAGO,
IMPRESIONES.NUM_COPIAS
FROM
PEDIDOS_PROVEEDOR
INNER JOIN V_PROVEEDORES ON (PEDIDOS_PROVEEDOR.ID_PROVEEDOR = V_PROVEEDORES.ID)
INNER JOIN V_PED_PROV_SITUACION ON (V_PED_PROV_SITUACION.ID_PEDIDO = PEDIDOS_PROVEEDOR.ID)
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = PEDIDOS_PROVEEDOR.ID_ALMACEN)
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = PEDIDOS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'PEDIDOSPROVEEDOR'));
;
/* Drop altered view: V_RECIBOS_CLIENTE */
DROP VIEW V_RECIBOS_CLIENTE;
/* Create altered view: V_RECIBOS_CLIENTE */
/* Create view: V_RECIBOS_CLIENTE (ViwData.CreateDependDef) */
CREATE VIEW V_RECIBOS_CLIENTE(
ID,
ID_RECIBO_COMPENSADO,
REFERENCIA_REC_COMPENSADO,
REFERENCIA,
SITUACION,
ID_FACTURA,
ID_REMESA,
REFERENCIA_REMESA,
FECHA_EMISION,
FECHA_VENCIMIENTO,
DESCRIPCION,
OBSERVACIONES,
IMPORTE,
OTROS_GASTOS,
IMPORTE_TOTAL,
FECHA_FACTURA,
FORMA_PAGO_FACTURA,
IMPORTE_FACTURA,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE_CLIENTE,
NIF_CIF_CLIENTE,
ENTIDAD_CLIENTE,
SUCURSAL_CLIENTE,
DC_CLIENTE,
CUENTA_CLIENTE,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NUM_COPIAS)
AS
SELECT RECIBOS_CLIENTE.ID,
RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO,
RECIBO_COMPENSADO1.REFERENCIA,
RECIBOS_CLIENTE.REFERENCIA,
CASE
WHEN RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO IS NULL
THEN V_REC_CLI_SITUACION.SITUACION
ELSE RECIBO_COMPENSADO2.SITUACION
END,
RECIBOS_CLIENTE.ID_FACTURA,
RECIBOS_CLIENTE.ID_REMESA, REMESAS_CLIENTE.REFERENCIA as REFERENCIA_REMESA,
RECIBOS_CLIENTE.FECHA_EMISION, RECIBOS_CLIENTE.FECHA_VENCIMIENTO, RECIBOS_CLIENTE.DESCRIPCION,
RECIBOS_CLIENTE.OBSERVACIONES, RECIBOS_CLIENTE.IMPORTE, RECIBOS_CLIENTE.OTROS_GASTOS,
COALESCE(RECIBOS_CLIENTE.IMPORTE, 0) + COALESCE(RECIBOS_CLIENTE.OTROS_GASTOS, 0) + COALESCE(V_REC_CLI_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO, 0),
FACTURAS_CLIENTE.FECHA_FACTURA, FORMAS_PAGO.DESCRIPCION, FACTURAS_CLIENTE.IMPORTE_TOTAL,
FACTURAS_CLIENTE.ID_EMPRESA,
CONTACTOS.ID as ID_CLIENTE, CONTACTOS.NOMBRE, CONTACTOS.NIF_CIF, CONTACTOS_DATOS_BANCO.ENTIDAD,
CONTACTOS_DATOS_BANCO.SUCURSAL, CONTACTOS_DATOS_BANCO.DC, CONTACTOS_DATOS_BANCO.CUENTA,
RECIBOS_CLIENTE.FECHA_ALTA,
RECIBOS_CLIENTE.FECHA_MODIFICACION,
RECIBOS_CLIENTE.USUARIO,
IMPRESIONES.NUM_COPIAS
FROM RECIBOS_CLIENTE
LEFT JOIN V_REC_CLI_SITUACION
ON (V_REC_CLI_SITUACION.ID_RECIBO = RECIBOS_CLIENTE.ID)
LEFT JOIN FACTURAS_CLIENTE
ON (FACTURAS_CLIENTE.ID = RECIBOS_CLIENTE.ID_FACTURA)
LEFT JOIN FORMAS_PAGO
ON (FORMAS_PAGO.ID = FACTURAS_CLIENTE.ID_FORMA_PAGO)
LEFT JOIN CONTACTOS
ON (CONTACTOS.ID = FACTURAS_CLIENTE.ID_CLIENTE)
LEFT JOIN CONTACTOS_DATOS_BANCO
ON (CONTACTOS_DATOS_BANCO.ID_CONTACTO = CONTACTOS.ID)
LEFT JOIN REMESAS_CLIENTE
ON (REMESAS_CLIENTE.ID = RECIBOS_CLIENTE.ID_REMESA)
LEFT JOIN V_REC_CLI_COMPENSADOS
ON (V_REC_CLI_COMPENSADOS.ID_RECIBO = RECIBOS_CLIENTE.ID)
LEFT JOIN RECIBOS_CLIENTE RECIBO_COMPENSADO1
ON (RECIBO_COMPENSADO1.ID = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO)
LEFT JOIN V_REC_CLI_SITUACION RECIBO_COMPENSADO2
ON (RECIBO_COMPENSADO2.ID_RECIBO = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = RECIBOS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'RECIBOSCLIENTE'));
;
/* Drop altered view: V_REMESAS_CLIENTE */
DROP VIEW V_REMESAS_CLIENTE;
/* Create altered view: V_REMESAS_CLIENTE */
/* Create view: V_REMESAS_CLIENTE (ViwData.CreateDependDef) */
CREATE VIEW V_REMESAS_CLIENTE(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
FECHA_REMESA,
DESCRIPCION,
ID_DATOS_BANCO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NOMBRE,
ENTIDAD,
SUCURSAL,
DC,
CUENTA,
SUFIJO_N19,
SUFIJO_N58,
NUM_COPIAS,
IMPORTE_TOTAL)
AS
SELECT
REMESAS_CLIENTE.ID,
REMESAS_CLIENTE.ID_EMPRESA,
REMESAS_CLIENTE.REFERENCIA,
REMESAS_CLIENTE.TIPO,
REMESAS_CLIENTE.FECHA_REMESA,
REMESAS_CLIENTE.DESCRIPCION,
REMESAS_CLIENTE.ID_DATOS_BANCO,
REMESAS_CLIENTE.FECHA_ALTA,
REMESAS_CLIENTE.FECHA_MODIFICACION,
REMESAS_CLIENTE.USUARIO,
EMPRESAS_DATOS_BANCO.NOMBRE,
EMPRESAS_DATOS_BANCO.ENTIDAD,
EMPRESAS_DATOS_BANCO.SUCURSAL,
EMPRESAS_DATOS_BANCO.DC,
EMPRESAS_DATOS_BANCO.CUENTA,
EMPRESAS_DATOS_BANCO.SUFIJO_N19,
EMPRESAS_DATOS_BANCO.SUFIJO_N58,
IMPRESIONES.NUM_COPIAS,
SUM(COALESCE(RECIBOS_CLIENTE.IMPORTE,0) + COALESCE(RECIBOS_CLIENTE.OTROS_GASTOS,0) + COALESCE(V_REC_CLI_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL
FROM
REMESAS_CLIENTE
LEFT OUTER JOIN EMPRESAS_DATOS_BANCO ON (EMPRESAS_DATOS_BANCO.ID = REMESAS_CLIENTE.ID_DATOS_BANCO)
LEFT OUTER JOIN RECIBOS_CLIENTE ON (RECIBOS_CLIENTE.ID_REMESA = REMESAS_CLIENTE.ID)
LEFT OUTER JOIN V_REC_CLI_COMPENSADOS ON (V_REC_CLI_COMPENSADOS.ID_RECIBO = RECIBOS_CLIENTE.ID)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = REMESAS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'REMESASCLIENTE'))
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18;
;
/* Drop altered view: V_REMESAS_PROVEEDOR */
DROP VIEW V_REMESAS_PROVEEDOR;
/* Create altered view: V_REMESAS_PROVEEDOR */
/* Create view: V_REMESAS_PROVEEDOR (ViwData.CreateDependDef) */
CREATE VIEW V_REMESAS_PROVEEDOR(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
FECHA_REMESA,
DESCRIPCION,
ID_DATOS_BANCO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NOMBRE,
ENTIDAD,
SUCURSAL,
DC,
CUENTA,
SUFIJO_N19,
SUFIJO_N58,
NUM_COPIAS,
IMPORTE_TOTAL)
AS
SELECT
REMESAS_PROVEEDOR.ID,
REMESAS_PROVEEDOR.ID_EMPRESA,
REMESAS_PROVEEDOR.REFERENCIA,
REMESAS_PROVEEDOR.TIPO,
REMESAS_PROVEEDOR.FECHA_REMESA,
REMESAS_PROVEEDOR.DESCRIPCION,
REMESAS_PROVEEDOR.ID_DATOS_BANCO,
REMESAS_PROVEEDOR.FECHA_ALTA,
REMESAS_PROVEEDOR.FECHA_MODIFICACION,
REMESAS_PROVEEDOR.USUARIO,
EMPRESAS_DATOS_BANCO.NOMBRE,
EMPRESAS_DATOS_BANCO.ENTIDAD,
EMPRESAS_DATOS_BANCO.SUCURSAL,
EMPRESAS_DATOS_BANCO.DC,
EMPRESAS_DATOS_BANCO.CUENTA,
EMPRESAS_DATOS_BANCO.SUFIJO_N19,
EMPRESAS_DATOS_BANCO.SUFIJO_N58,
IMPRESIONES.NUM_COPIAS,
SUM(COALESCE(RECIBOS_PROVEEDOR.IMPORTE,0) + COALESCE(RECIBOS_PROVEEDOR.OTROS_GASTOS,0) + COALESCE(V_REC_PRO_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL
FROM
REMESAS_PROVEEDOR
LEFT OUTER JOIN EMPRESAS_DATOS_BANCO ON (EMPRESAS_DATOS_BANCO.ID = REMESAS_PROVEEDOR.ID_DATOS_BANCO)
LEFT OUTER JOIN RECIBOS_PROVEEDOR ON (RECIBOS_PROVEEDOR.ID_REMESA = REMESAS_PROVEEDOR.ID)
LEFT OUTER JOIN V_REC_PRO_COMPENSADOS ON (V_REC_PRO_COMPENSADOS.ID_RECIBO = RECIBOS_PROVEEDOR.ID)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = REMESAS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'REMESASPROVEEDOR'))
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18;
;
/* Create index... */
CREATE INDEX IMPRESIONES_IDX1 ON IMPRESIONES(ID_TABLA);
CREATE INDEX IMPRESIONES_IDX2 ON IMPRESIONES(TABLA);
/* Create Primary Key... */
ALTER TABLE IMPRESIONES ADD CONSTRAINT PK_IMPRESIONES PRIMARY KEY (ID);
CREATE VIEW V_AGENTES_COMISIONES_DET_FAC(
ID_FACTURA,
ID_EMPRESA,
FECHA,
REFERENCIA,
SITUACION,
ID_COMISION_LIQUIDADA,
ID_CLIENTE,
ID_AGENTE,
ID_ARTICULO,
ID_PROVEEDOR,
IMPORTE_TOTAL,
COMISION,
IMPORTE_COMISION)
AS
SELECT V_FACTURAS_CLIENTE.ID,
V_FACTURAS_CLIENTE.ID_EMPRESA,
V_FACTURAS_CLIENTE.FECHA_FACTURA,
V_FACTURAS_CLIENTE.REFERENCIA,
V_FACTURAS_CLIENTE.SITUACION,
V_FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA,
V_FACTURAS_CLIENTE.ID_CLIENTE,
V_FACTURAS_CLIENTE.ID_AGENTE,
FACTURAS_CLIENTE_DETALLES.ID_ARTICULO, ARTICULOS.ID_PROVEEDOR,
FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL, COALESCE(AGENTES_COMISIONES.COMISION, 0) as COMISION,
(CASE COALESCE(AGENTES_COMISIONES.COMISION, 0) WHEN 0 THEN 0
ELSE ((FACTURAS_CLIENTE_DETALLES.IMPORTE_TOTAL * AGENTES_COMISIONES.COMISION)/100) END) as IMPORTE_COMISION
FROM V_FACTURAS_CLIENTE
LEFT JOIN FACTURAS_CLIENTE_DETALLES ON (FACTURAS_CLIENTE_DETALLES.ID_FACTURA = V_FACTURAS_CLIENTE.ID)
LEFT JOIN ARTICULOS ON (ARTICULOS.ID = FACTURAS_CLIENTE_DETALLES.ID_ARTICULO)
LEFT JOIN AGENTES_COMISIONES ON ((AGENTES_COMISIONES.ID_AGENTE = V_FACTURAS_CLIENTE.ID_AGENTE)
AND (AGENTES_COMISIONES.ID_PROVEEDOR = ARTICULOS.ID_PROVEEDOR))
WHERE (FACTURAS_CLIENTE_DETALLES.TIPO_DETALLE = 'Concepto')
AND (ARTICULOS.ID is not null)
AND (ARTICULOS.COMISIONABLE = 1);
;

View File

@ -294,44 +294,46 @@ WHERE
V_CONTACTOS.ID_CATEGORIA = 2;
CREATE VIEW V_ALBARANES_PROVEEDOR(
ID,
ID_EMPRESA,
ID_PROVEEDOR,
NOMBRE,
FECHA_ALBARAN,
REFERENCIA,
REFERENCIA_PROVEEDOR,
TIPO,
ID_ALMACEN,
NOMBRE_ALMACEN,
ID_PEDIDO,
REF_PED_PROVEEDOR,
ID_FACTURA,
REF_FACTURA,
REF_FACTURA_PROV,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO)
AS
ID,
ID_EMPRESA,
ID_PROVEEDOR,
NOMBRE,
FECHA_ALBARAN,
REFERENCIA,
REFERENCIA_PROVEEDOR,
TIPO,
ID_ALMACEN,
NOMBRE_ALMACEN,
ID_PEDIDO,
REF_PED_PROVEEDOR,
ID_FACTURA,
REF_FACTURA,
REF_FACTURA_PROV,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
NUM_COPIAS)
AS
SELECT
ALBARANES_PROVEEDOR.ID,
ALBARANES_PROVEEDOR.ID_EMPRESA,
@ -368,13 +370,15 @@ SELECT
ALBARANES_PROVEEDOR.FECHA_ALTA,
ALBARANES_PROVEEDOR.FECHA_MODIFICACION,
ALBARANES_PROVEEDOR.USUARIO,
ALBARANES_PROVEEDOR.ID_FORMA_PAGO
ALBARANES_PROVEEDOR.ID_FORMA_PAGO,
IMPRESIONES.NUM_COPIAS
FROM
ALBARANES_PROVEEDOR
INNER JOIN CONTACTOS ON (CONTACTOS.ID = ALBARANES_PROVEEDOR.ID_PROVEEDOR)
LEFT OUTER JOIN PEDIDOS_PROVEEDOR ON (PEDIDOS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_PEDIDO)
LEFT OUTER JOIN FACTURAS_PROVEEDOR ON (FACTURAS_PROVEEDOR.ID = ALBARANES_PROVEEDOR.ID_FACTURA)
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_PROVEEDOR.ID_ALMACEN);
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_PROVEEDOR.ID_ALMACEN)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = ALBARANES_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'ALBARANESPROVEEDOR'));
CREATE VIEW V_AGENTES(
@ -579,36 +583,37 @@ group by ID_RECIBO_COMPENSADO;
CREATE VIEW V_RECIBOS_CLIENTE(
ID,
ID_RECIBO_COMPENSADO,
REFERENCIA_REC_COMPENSADO,
REFERENCIA,
SITUACION,
ID_FACTURA,
ID_REMESA,
REFERENCIA_REMESA,
FECHA_EMISION,
FECHA_VENCIMIENTO,
DESCRIPCION,
OBSERVACIONES,
IMPORTE,
OTROS_GASTOS,
IMPORTE_TOTAL,
FECHA_FACTURA,
FORMA_PAGO_FACTURA,
IMPORTE_FACTURA,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE_CLIENTE,
NIF_CIF_CLIENTE,
ENTIDAD_CLIENTE,
SUCURSAL_CLIENTE,
DC_CLIENTE,
CUENTA_CLIENTE,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO)
AS
ID,
ID_RECIBO_COMPENSADO,
REFERENCIA_REC_COMPENSADO,
REFERENCIA,
SITUACION,
ID_FACTURA,
ID_REMESA,
REFERENCIA_REMESA,
FECHA_EMISION,
FECHA_VENCIMIENTO,
DESCRIPCION,
OBSERVACIONES,
IMPORTE,
OTROS_GASTOS,
IMPORTE_TOTAL,
FECHA_FACTURA,
FORMA_PAGO_FACTURA,
IMPORTE_FACTURA,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE_CLIENTE,
NIF_CIF_CLIENTE,
ENTIDAD_CLIENTE,
SUCURSAL_CLIENTE,
DC_CLIENTE,
CUENTA_CLIENTE,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NUM_COPIAS)
AS
SELECT RECIBOS_CLIENTE.ID,
RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO,
RECIBO_COMPENSADO1.REFERENCIA,
@ -632,7 +637,8 @@ SELECT RECIBOS_CLIENTE.ID,
RECIBOS_CLIENTE.FECHA_ALTA,
RECIBOS_CLIENTE.FECHA_MODIFICACION,
RECIBOS_CLIENTE.USUARIO
RECIBOS_CLIENTE.USUARIO,
IMPRESIONES.NUM_COPIAS
FROM RECIBOS_CLIENTE
LEFT JOIN V_REC_CLI_SITUACION
@ -652,30 +658,32 @@ ON (V_REC_CLI_COMPENSADOS.ID_RECIBO = RECIBOS_CLIENTE.ID)
LEFT JOIN RECIBOS_CLIENTE RECIBO_COMPENSADO1
ON (RECIBO_COMPENSADO1.ID = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO)
LEFT JOIN V_REC_CLI_SITUACION RECIBO_COMPENSADO2
ON (RECIBO_COMPENSADO2.ID_RECIBO = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO);
ON (RECIBO_COMPENSADO2.ID_RECIBO = RECIBOS_CLIENTE.ID_RECIBO_COMPENSADO)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = RECIBOS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'RECIBOSCLIENTE'));
CREATE VIEW V_REMESAS_CLIENTE(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
FECHA_REMESA,
DESCRIPCION,
ID_DATOS_BANCO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NOMBRE,
ENTIDAD,
SUCURSAL,
DC,
CUENTA,
SUFIJO_N19,
SUFIJO_N58,
IMPORTE_TOTAL)
AS
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
FECHA_REMESA,
DESCRIPCION,
ID_DATOS_BANCO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NOMBRE,
ENTIDAD,
SUCURSAL,
DC,
CUENTA,
SUFIJO_N19,
SUFIJO_N58,
NUM_COPIAS,
IMPORTE_TOTAL)
AS
SELECT
REMESAS_CLIENTE.ID,
REMESAS_CLIENTE.ID_EMPRESA,
@ -694,6 +702,7 @@ SELECT
EMPRESAS_DATOS_BANCO.CUENTA,
EMPRESAS_DATOS_BANCO.SUFIJO_N19,
EMPRESAS_DATOS_BANCO.SUFIJO_N58,
IMPRESIONES.NUM_COPIAS,
SUM(COALESCE(RECIBOS_CLIENTE.IMPORTE,0) + COALESCE(RECIBOS_CLIENTE.OTROS_GASTOS,0) + COALESCE(V_REC_CLI_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL
FROM
@ -701,7 +710,8 @@ FROM
LEFT OUTER JOIN EMPRESAS_DATOS_BANCO ON (EMPRESAS_DATOS_BANCO.ID = REMESAS_CLIENTE.ID_DATOS_BANCO)
LEFT OUTER JOIN RECIBOS_CLIENTE ON (RECIBOS_CLIENTE.ID_REMESA = REMESAS_CLIENTE.ID)
LEFT OUTER JOIN V_REC_CLI_COMPENSADOS ON (V_REC_CLI_COMPENSADOS.ID_RECIBO = RECIBOS_CLIENTE.ID)
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17;
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = REMESAS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'REMESASCLIENTE'))
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18;
@ -773,38 +783,39 @@ GROUP BY ID_FACTURA;
CREATE VIEW V_FACTURAS_PROVEEDOR(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
REFERENCIA_PROVEEDOR,
FECHA_FACTURA,
SITUACION,
BASE_IMPONIBLE,
DESCUENTO,
IMPORTE_DESCUENTO,
IVA,
IMPORTE_IVA,
RE,
IMPORTE_RE,
IMPORTE_TOTAL,
OBSERVACIONES,
ID_PROVEEDOR,
NIF_CIF,
NOMBRE,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
RECARGO_EQUIVALENCIA,
ID_TIPO_IVA,
IMPORTE_NETO,
IMPORTE_PORTE)
AS
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
REFERENCIA_PROVEEDOR,
FECHA_FACTURA,
SITUACION,
BASE_IMPONIBLE,
DESCUENTO,
IMPORTE_DESCUENTO,
IVA,
IMPORTE_IVA,
RE,
IMPORTE_RE,
IMPORTE_TOTAL,
OBSERVACIONES,
ID_PROVEEDOR,
NIF_CIF,
NOMBRE,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
RECARGO_EQUIVALENCIA,
ID_TIPO_IVA,
IMPORTE_NETO,
IMPORTE_PORTE,
NUM_COPIAS)
AS
SELECT FACTURAS_PROVEEDOR.ID,
FACTURAS_PROVEEDOR.ID_EMPRESA,
FACTURAS_PROVEEDOR.REFERENCIA,
@ -835,49 +846,54 @@ SELECT FACTURAS_PROVEEDOR.ID,
FACTURAS_PROVEEDOR.RECARGO_EQUIVALENCIA,
FACTURAS_PROVEEDOR.ID_TIPO_IVA,
FACTURAS_PROVEEDOR.IMPORTE_NETO,
FACTURAS_PROVEEDOR.IMPORTE_PORTE
FACTURAS_PROVEEDOR.IMPORTE_PORTE,
IMPRESIONES.NUM_COPIAS
FROM V_FAC_PRO_SITUACION
LEFT JOIN FACTURAS_PROVEEDOR
ON (FACTURAS_PROVEEDOR.ID = V_FAC_PRO_SITUACION.ID_FACTURA)
LEFT JOIN PROVEEDORES_DATOS
ON (PROVEEDORES_DATOS.ID_PROVEEDOR = FACTURAS_PROVEEDOR.ID_PROVEEDOR);
ON (PROVEEDORES_DATOS.ID_PROVEEDOR = FACTURAS_PROVEEDOR.ID_PROVEEDOR)
LEFT JOIN IMPRESIONES
ON ((IMPRESIONES.ID_TABLA = FACTURAS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'FACTURASPROVEEDOR'));
CREATE VIEW V_FACTURAS_CLIENTE(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
ID_COMISION_LIQUIDADA,
FECHA_FACTURA,
SITUACION,
BASE_IMPONIBLE,
DESCUENTO,
IMPORTE_DESCUENTO,
IVA,
IMPORTE_IVA,
RE,
IMPORTE_RE,
IMPORTE_TOTAL,
OBSERVACIONES,
ID_CLIENTE,
NIF_CIF,
NOMBRE,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
RECARGO_EQUIVALENCIA,
ID_TIPO_IVA,
IMPORTE_NETO,
IMPORTE_PORTE,
ID_AGENTE,
REFERENCIA_COMISION)
AS
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
ID_COMISION_LIQUIDADA,
FECHA_FACTURA,
SITUACION,
BASE_IMPONIBLE,
DESCUENTO,
IMPORTE_DESCUENTO,
IVA,
IMPORTE_IVA,
RE,
IMPORTE_RE,
IMPORTE_TOTAL,
OBSERVACIONES,
ID_CLIENTE,
NIF_CIF,
NOMBRE,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
RECARGO_EQUIVALENCIA,
ID_TIPO_IVA,
IMPORTE_NETO,
IMPORTE_PORTE,
ID_AGENTE,
REFERENCIA_COMISION,
NUM_COPIAS)
AS
SELECT FACTURAS_CLIENTE.ID,
FACTURAS_CLIENTE.ID_EMPRESA,
FACTURAS_CLIENTE.REFERENCIA,
@ -910,14 +926,18 @@ SELECT FACTURAS_CLIENTE.ID,
FACTURAS_CLIENTE.IMPORTE_NETO,
FACTURAS_CLIENTE.IMPORTE_PORTE,
CLIENTES_DATOS.ID_AGENTE,
COMISIONES_LIQUIDADAS.REFERENCIA
COMISIONES_LIQUIDADAS.REFERENCIA,
IMPRESIONES.NUM_COPIAS
FROM V_FAC_CLI_SITUACION
LEFT JOIN FACTURAS_CLIENTE
ON (FACTURAS_CLIENTE.ID = V_FAC_CLI_SITUACION.ID_FACTURA)
LEFT JOIN COMISIONES_LIQUIDADAS
ON (COMISIONES_LIQUIDADAS.ID = FACTURAS_CLIENTE.ID_COMISION_LIQUIDADA)
LEFT JOIN CLIENTES_DATOS
ON (CLIENTES_DATOS.ID_CLIENTE = FACTURAS_CLIENTE.ID_CLIENTE);
ON (CLIENTES_DATOS.ID_CLIENTE = FACTURAS_CLIENTE.ID_CLIENTE)
LEFT JOIN IMPRESIONES
ON ((IMPRESIONES.ID_TABLA = FACTURAS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'FACTURASCLIENTE'));
CREATE VIEW V_AGENTES_COMISIONES_DET_FAC(
@ -974,49 +994,51 @@ SELECT ALBARANES_CLIENTE.ID,
end as SITUACION
FROM ALBARANES_CLIENTE;
CREATE VIEW V_ALBARANES_CLIENTE(
ID,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE,
FECHA_ALBARAN,
REFERENCIA,
REFERENCIA_CLIENTE,
TIPO,
SITUACION,
ID_ALMACEN,
NOMBRE_ALMACEN,
ID_PEDIDO,
REF_PEDIDO,
ID_FACTURA,
REF_FACTURA,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
FECHA_PREVISTA_ENVIO,
FECHA_ENVIO,
FECHA_RECEPCION,
ID_AGENTE,
AGENTE)
AS
ID,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE,
FECHA_ALBARAN,
REFERENCIA,
REFERENCIA_CLIENTE,
TIPO,
SITUACION,
ID_ALMACEN,
NOMBRE_ALMACEN,
ID_PEDIDO,
REF_PEDIDO,
ID_FACTURA,
REF_FACTURA,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
IMPORTE_TOTAL,
OBSERVACIONES,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_FORMA_PAGO,
FECHA_PREVISTA_ENVIO,
FECHA_ENVIO,
FECHA_RECEPCION,
ID_AGENTE,
AGENTE,
NUM_COPIAS)
AS
SELECT
ALBARANES_CLIENTE.ID,
ALBARANES_CLIENTE.ID_EMPRESA,
@ -1058,7 +1080,8 @@ SELECT
ALBARANES_CLIENTE.FECHA_ENVIO,
ALBARANES_CLIENTE.FECHA_RECEPCION,
CLIENTES_DATOS.ID_AGENTE,
AGENTES.NOMBRE
AGENTES.NOMBRE,
IMPRESIONES.NUM_COPIAS
FROM
ALBARANES_CLIENTE
@ -1068,7 +1091,9 @@ FROM
LEFT OUTER JOIN CONTACTOS AGENTES ON (AGENTES.ID = CLIENTES_DATOS.ID_AGENTE)
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = ALBARANES_CLIENTE.ID_PEDIDO)
LEFT OUTER JOIN FACTURAS_CLIENTE ON (FACTURAS_CLIENTE.ID = ALBARANES_CLIENTE.ID_FACTURA)
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_CLIENTE.ID_ALMACEN);
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = ALBARANES_CLIENTE.ID_ALMACEN)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = ALBARANES_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'ALBARANESCLIENTE'));
/*Agrupa los artículos de un mismo albarán (ya que en un albarán puede existir varias lineas con el mismo artículo).
@ -1638,38 +1663,39 @@ group by id_pedido
CREATE VIEW V_PEDIDOS_CLIENTE(
ID,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE,
REFERENCIA,
REFERENCIA_CLIENTE,
SITUACION,
FECHA_PEDIDO,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
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,
REF_TIENDA_WEB,
FECHA_PREVISTA_ENVIO)
AS
ID,
ID_EMPRESA,
ID_CLIENTE,
NOMBRE,
REFERENCIA,
REFERENCIA_CLIENTE,
SITUACION,
FECHA_PEDIDO,
CALLE,
CODIGO_POSTAL,
POBLACION,
PROVINCIA,
PERSONA_CONTACTO,
TELEFONO,
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,
REF_TIENDA_WEB,
FECHA_PREVISTA_ENVIO,
NUM_COPIAS)
AS
SELECT
PEDIDOS_CLIENTE.ID,
PEDIDOS_CLIENTE.ID_EMPRESA,
@ -1701,50 +1727,53 @@ SELECT
PEDIDOS_CLIENTE.IMPORTE_TOTAL,
PEDIDOS_CLIENTE.ID_FORMA_PAGO,
PEDIDOS_CLIENTE.REF_TIENDA_WEB,
PEDIDOS_CLIENTE.FECHA_PREVISTA_ENVIO
PEDIDOS_CLIENTE.FECHA_PREVISTA_ENVIO,
IMPRESIONES.NUM_COPIAS
FROM
V_PED_CLI_SITUACION
INNER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = V_PED_CLI_SITUACION.ID_PEDIDO)
INNER JOIN V_CLIENTES ON (PEDIDOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID);
INNER JOIN V_CLIENTES ON (PEDIDOS_CLIENTE.ID_CLIENTE = V_CLIENTES.ID)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = PEDIDOS_CLIENTE.ID) AND (IMPRESIONES.TABLA = 'PEDIDOSCLIENTE'));
CREATE VIEW V_PEDIDOS_PROVEEDOR(
ID,
ID_EMPRESA,
ID_PROVEEDOR,
NOMBRE,
REFERENCIA,
SITUACION,
FECHA_ENVIO,
FECHA_PEDIDO,
FECHA_CONFIRMACION,
FECHA_ENTREGA,
ID_ALMACEN,
NOMBRE_ALMACEN,
OBSERVACIONES,
IMPORTE_TOTAL,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
PERSONA_CONTACTO,
TELEFONO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_PEDIDO_CLIENTE,
REF_PED_CLIENTE,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
ID_FORMA_PAGO)
AS
ID,
ID_EMPRESA,
ID_PROVEEDOR,
NOMBRE,
REFERENCIA,
SITUACION,
FECHA_ENVIO,
FECHA_PEDIDO,
FECHA_CONFIRMACION,
FECHA_ENTREGA,
ID_ALMACEN,
NOMBRE_ALMACEN,
OBSERVACIONES,
IMPORTE_TOTAL,
INCIDENCIAS,
INCIDENCIAS_ACTIVAS,
CALLE,
POBLACION,
PROVINCIA,
CODIGO_POSTAL,
PERSONA_CONTACTO,
TELEFONO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
ID_PEDIDO_CLIENTE,
REF_PED_CLIENTE,
IMPORTE_NETO,
IMPORTE_PORTE,
DESCUENTO,
IMPORTE_DESCUENTO,
BASE_IMPONIBLE,
IVA,
IMPORTE_IVA,
ID_FORMA_PAGO,
NUM_COPIAS)
AS
SELECT
PEDIDOS_PROVEEDOR.ID,
PEDIDOS_PROVEEDOR.ID_EMPRESA,
@ -1780,30 +1809,15 @@ SELECT
PEDIDOS_PROVEEDOR.BASE_IMPONIBLE,
PEDIDOS_PROVEEDOR.IVA,
PEDIDOS_PROVEEDOR.IMPORTE_IVA,
PEDIDOS_PROVEEDOR.ID_FORMA_PAGO
PEDIDOS_PROVEEDOR.ID_FORMA_PAGO,
IMPRESIONES.NUM_COPIAS
FROM
PEDIDOS_PROVEEDOR
INNER JOIN V_PROVEEDORES ON (PEDIDOS_PROVEEDOR.ID_PROVEEDOR = V_PROVEEDORES.ID)
INNER JOIN V_PED_PROV_SITUACION ON (V_PED_PROV_SITUACION.ID_PEDIDO = PEDIDOS_PROVEEDOR.ID)
LEFT OUTER JOIN ALMACENES ON (ALMACENES.ID = PEDIDOS_PROVEEDOR.ID_ALMACEN)
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE);
LEFT OUTER JOIN PEDIDOS_CLIENTE ON (PEDIDOS_CLIENTE.ID = PEDIDOS_PROVEEDOR.ID_PEDIDO_CLIENTE)
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = PEDIDOS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'PEDIDOSPROVEEDOR'));
@ -2268,25 +2282,26 @@ AND (ARTICULOS.INVENTARIABLE = 1);
CREATE VIEW V_REMESAS_PROVEEDOR(
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
FECHA_REMESA,
DESCRIPCION,
ID_DATOS_BANCO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NOMBRE,
ENTIDAD,
SUCURSAL,
DC,
CUENTA,
SUFIJO_N19,
SUFIJO_N58,
IMPORTE_TOTAL)
AS
ID,
ID_EMPRESA,
REFERENCIA,
TIPO,
FECHA_REMESA,
DESCRIPCION,
ID_DATOS_BANCO,
FECHA_ALTA,
FECHA_MODIFICACION,
USUARIO,
NOMBRE,
ENTIDAD,
SUCURSAL,
DC,
CUENTA,
SUFIJO_N19,
SUFIJO_N58,
NUM_COPIAS,
IMPORTE_TOTAL)
AS
SELECT
REMESAS_PROVEEDOR.ID,
REMESAS_PROVEEDOR.ID_EMPRESA,
@ -2305,14 +2320,17 @@ SELECT
EMPRESAS_DATOS_BANCO.CUENTA,
EMPRESAS_DATOS_BANCO.SUFIJO_N19,
EMPRESAS_DATOS_BANCO.SUFIJO_N58,
SUM(COALESCE(RECIBOS_PROVEEDOR.IMPORTE,0) + COALESCE(RECIBOS_PROVEEDOR.OTROS_GASTOS,0) + COALESCE(V_REC_PRO_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL
IMPRESIONES.NUM_COPIAS,
SUM(COALESCE(RECIBOS_PROVEEDOR.IMPORTE,0) + COALESCE(RECIBOS_PROVEEDOR.OTROS_GASTOS,0) + COALESCE(V_REC_PRO_COMPENSADOS.IMPORTE_TOTAL_COMPENSADO,0)) as IMPORTE_TOTAL
FROM
REMESAS_PROVEEDOR
LEFT OUTER JOIN EMPRESAS_DATOS_BANCO ON (EMPRESAS_DATOS_BANCO.ID = REMESAS_PROVEEDOR.ID_DATOS_BANCO)
LEFT OUTER JOIN RECIBOS_PROVEEDOR ON (RECIBOS_PROVEEDOR.ID_REMESA = REMESAS_PROVEEDOR.ID)
LEFT OUTER JOIN V_REC_PRO_COMPENSADOS ON (V_REC_PRO_COMPENSADOS.ID_RECIBO = RECIBOS_PROVEEDOR.ID)
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17;
LEFT JOIN IMPRESIONES ON ((IMPRESIONES.ID_TABLA = REMESAS_PROVEEDOR.ID) AND (IMPRESIONES.TABLA = 'REMESASPROVEEDOR'))
GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18;
/*Vista para ver para quien estan reservados los articulos del inventario*/

View File

@ -60,6 +60,7 @@ VARCHAR(20);
/**** Generators ****/
/******************************************************************************/
CREATE GENERATOR GEN_IMPRESIONES_ID;
CREATE GENERATOR GEN_AGENTES_COMISIONES_ID;
CREATE GENERATOR GEN_ALBARANES_CLI_DETALLES_ID;
CREATE GENERATOR GEN_ALBARANES_CLI_ID;
@ -105,6 +106,12 @@ CREATE GENERATOR GEN_USUARIOS_ID;
/**** Tables ****/
/******************************************************************************/
CREATE TABLE IMPRESIONES(
ID TIPO_ID NOT NULL,
ID_TABLA TIPO_ID,
TABLA VARCHAR(50) COLLATE ES_ES,
NUM_COPIAS SMALLINT
);
CREATE TABLE AGENTES_COMISIONES (
@ -989,6 +996,7 @@ SET GENERATOR GEN_FORMAS_PAGO_PLAZOS_ID TO 80;
/**** Primary Keys ****/
/******************************************************************************/
ALTER TABLE IMPRESIONES ADD CONSTRAINT PK_IMPRESIONES PRIMARY KEY (ID);
ALTER TABLE AGENTES_COMISIONES ADD CONSTRAINT PK_AGENTES_COMISIONES PRIMARY KEY (ID);
ALTER TABLE ALBARANES_CLIENTE ADD CONSTRAINT PK_ALBARAN_CLIENTE PRIMARY KEY (ID);
ALTER TABLE ALBARANES_CLIENTE_DETALLES ADD CONSTRAINT PK_ALBARANES_CLIENTE_DETALLES PRIMARY KEY (ID);
@ -1077,6 +1085,8 @@ ALTER TABLE TIENDA_WEB ADD CONSTRAINT FK_EMPRESAS_TIENDA_WEB FOREIGN KEY (ID_EMP
/**** Indices ****/
/******************************************************************************/
CREATE INDEX IMPRESIONES_IDX1 ON IMPRESIONES(ID_TABLA);
CREATE INDEX IMPRESIONES_IDX2 ON IMPRESIONES(TABLA);
CREATE INDEX IDX_AGENTES_COMISIONES1 ON AGENTES_COMISIONES (ID_AGENTE);
CREATE INDEX IDX_AGENTES_COMISIONES2 ON AGENTES_COMISIONES (ID_PROVEEDOR);
CREATE INDEX ALBARANES_CLIENTE_IDX1 ON ALBARANES_CLIENTE (TIPO);
@ -1648,3 +1658,31 @@ end
SET TERM ; ^
CREATE PROCEDURE PRO_ANADIR_MARCA_IMPRESION (
tabla varchar(255),
id_tabla integer)
as
declare variable id integer;
begin
select ID
from IMPRESIONES
where ID_TABLA = :ID_TABLA
and TABLA = UPPER(:TABLA)
into :ID;
/*En el caso de que ya exista se modifica la cantidad en caso contrario se anade el elemetno*/
if (ID > 0) then
begin
update IMPRESIONES
set NUM_COPIAS = NUM_COPIAS + 1
where ID = :ID;
end
else
begin
insert into IMPRESIONES (ID, TABLA, ID_TABLA, NUM_COPIAS)
values (GEN_ID(GEN_IMPRESIONES_ID, 1), UPPER(:TABLA), :ID_TABLA, 1);
end
suspend;
end;

Binary file not shown.

View File

@ -19,7 +19,7 @@ type
property Report: TfrxReport read GetReport;
procedure LoadFromStream(AStream : TStream);
function ExportToFile : String;
procedure Print;
function Print: Boolean;
procedure Preview;
function GetTablaImpresion: String;
@ -106,6 +106,7 @@ type
procedure actPrimeraPaginaUpdate(Sender: TObject);
procedure actPaginaAnteriorUpdate(Sender: TObject);
private
FVariable: Boolean;
FPreview : TfrViewPreview;
procedure OnPageChanged(Sender: TfrxPreview; PageNo: Integer);
procedure UpdateZoom;
@ -126,7 +127,7 @@ type
constructor Create(AOwner: TComponent); override;
property Report: TfrxReport read GetReport;
procedure Print;
function Print: Boolean;
procedure Preview;
procedure LoadFromStream(AStream : TStream);
function ExportToFile : String;
@ -315,7 +316,9 @@ end;
procedure TfEditorPreview.OnPrint(Sender: Tobject);
begin
dmImpresiones.AnadirMarcaImpresion(TablaImpresion, IdTablaImpresion);
FVariable := True;
if (FTablaImpresion <> '-1') and (FIdTablaImpresion <> '-1') then
dmImpresiones.AnadirMarcaImpresion(TablaImpresion, IdTablaImpresion);
end;
constructor TfEditorPreview.Create(AOwner: TComponent);
@ -347,15 +350,18 @@ begin
Self.ShowModal;
end;
procedure TfEditorPreview.Print;
function TfEditorPreview.Print: Boolean;
begin
FPreview.Preview.Report.OnPrintReport := onprint;
FVariable := False;
FPreview.Preview.Report.OnPrintReport := OnPrint;
if not frxPrinters.HasPhysicalPrinters then
frxErrorMsg(frxResources.Get('clNoPrinters'))
else
FPreview.Preview.Print;
Enabled := True;
Result := FVariable;
end;
procedure TfEditorPreview.SetIdTablaImpresion(Value: String);

View File

@ -36,6 +36,8 @@ type
procedure SaveGridStatus;
procedure RestoreGridStatus;
procedure DesactivarGrid;
procedure ActivarGrid;
procedure GotoFirst;
procedure GotoLast;
@ -136,6 +138,8 @@ type
procedure SaveGridStatus;
procedure RestoreGridStatus;
procedure DesactivarGrid;
procedure ActivarGrid;
procedure GotoFirst;
procedure GotoLast;
@ -145,7 +149,7 @@ type
function Locate(const AItemIndex: Integer; const AValue: String;
const APartialCompare: Boolean = False) : Boolean;
property Filter: string read GetFilter write SetFilter;
property Filtered : Boolean read GetFiltered;
@ -177,6 +181,12 @@ end;
{ TfrViewGrid }
procedure TfrViewGridBase.ActivarGrid;
begin
if Assigned(_FocusedView) then
_FocusedView.EndUpdate;
end;
procedure TfrViewGridBase.AjustarAncho;
begin
if Assigned(_FocusedView) then
@ -431,6 +441,12 @@ begin
//
end;
procedure TfrViewGridBase.DesactivarGrid;
begin
if Assigned(_FocusedView) then
_FocusedView.BeginUpdate;
end;
destructor TfrViewGridBase.Destroy;
begin
FOnFilterChanged := Nil;

View File

@ -149,7 +149,7 @@
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">3</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">3</VersionInfo>
<VersionInfo Name="Release">5</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
@ -162,13 +162,13 @@
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName">Rodax Software S.L.</VersionInfoKeys>
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">3.0.3.0</VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">3.0.5.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName">FactuGES</VersionInfoKeys>
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">3.0.3.0</VersionInfoKeys>
<VersionInfoKeys Name="ProductVersion">3.0.5.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys> <Excluded_Packages>
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\EasyListviewD10.bpl">Muststang Peak EasyListview Runtime Package</Excluded_Packages>

View File

@ -1,7 +1,7 @@
MAINICON ICON "c:\Codigo Luis Leon\Source\Iconos\Factuges.ico"
1 VERSIONINFO
FILEVERSION 3,0,3,0
PRODUCTVERSION 3,0,3,0
FILEVERSION 3,0,5,0
PRODUCTVERSION 3,0,5,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
@ -13,9 +13,9 @@ BEGIN
BLOCK "0C0A04E4"
BEGIN
VALUE "CompanyName", "Rodax Software S.L.\0"
VALUE "FileVersion", "3.0.3.0\0"
VALUE "FileVersion", "3.0.5.0\0"
VALUE "InternalName", "FactuGES\0"
VALUE "ProductVersion", "3.0.3.0\0"
VALUE "ProductVersion", "3.0.5.0\0"
END
END
BLOCK "VarFileInfo"

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 290 B

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=519
Activate=1

View File

@ -6,7 +6,8 @@ interface
uses
SysUtils, uDADataTable, uEditorDBItem,
uControllerBase, uIDataModuleAlbaranesCliente, uClientesController,
uDetallesAlbaranClienteController, uBizAlbaranesCliente, uBizDireccionesContacto;
uDetallesAlbaranClienteController, uBizAlbaranesCliente, uBizDireccionesContacto,
uViewGridBase;
type
IAlbaranesClienteController = interface(IObservador)
@ -39,11 +40,11 @@ type
function Existe(const ID: Integer) : Boolean;
function Duplicar(AAlbaran: IBizAlbaranCliente): IBizAlbaranCliente;
function ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente) : IBizAlbaranCliente;
function ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente; Const ViewGrid: IViewGridBase = Nil) : IBizAlbaranCliente;
function ElegirAlbaranes(AAlbaran: IBizAlbaranCliente; AMensaje: String; AMultiSelect: Boolean): IBizAlbaranCliente;
procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false);
procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false);
function Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false): Boolean;
procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
@ -119,7 +120,7 @@ type
AAlbaran: IBizAlbaranCliente);
procedure QuitarDireccionEnvio(AAlbaran: IBizAlbaranCliente);
function ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente) : IBizAlbaranCliente;
function ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente; Const ViewGrid: IViewGridBase = Nil) : IBizAlbaranCliente;
function ElegirAlbaranes(AAlbaran: IBizAlbaranCliente; AMensaje: String; AMultiSelect: Boolean): IBizAlbaranCliente;
procedure RecuperarCliente(AAlbaran : IBizAlbaranCliente);
@ -137,7 +138,7 @@ type
DoPost: Boolean = True) : Boolean;
procedure Preview(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false);
procedure Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false);
function Print(AAlbaran : IBizAlbaranCliente; AllItems: Boolean = false): Boolean;
procedure EtiquetasPreview(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
procedure EtiquetasPrint(AAlbaran : IBizAlbaranCliente; Const withRefCliente: Boolean);
end;
@ -817,13 +818,26 @@ begin
end;
end;
function TAlbaranesClienteController.ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente): IBizAlbaranCliente;
function TAlbaranesClienteController.ExtraerSeleccionados(AAlbaran: IBizAlbaranCliente; Const ViewGrid: IViewGridBase = Nil): IBizAlbaranCliente;
var
ASeleccionados : IBizAlbaranCliente;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := (Self.Buscar(ID_NULO) as IBizAlbaranCliente);
CopyDataTable(AAlbaran.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
procedure TAlbaranesClienteController.FiltrarEmpresa(
@ -963,12 +977,13 @@ begin
end;
end;
procedure TAlbaranesClienteController.Print(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false);
function TAlbaranesClienteController.Print(AAlbaran: IBizAlbaranCliente; AllItems: Boolean = false): Boolean;
var
AReportController : IAlbaranesClienteReportController;
ID_Albaranes: TStringList;
begin
Result := False;
AReportController := TAlbaranesClienteReportController.Create;
try
ID_Albaranes := TStringList.Create;
@ -990,7 +1005,7 @@ begin
else
ID_Albaranes.Add(IntToStr(AAlbaran.ID));
AReportController.Print(ID_Albaranes.CommaText);
Result := AReportController.Print(ID_Albaranes.CommaText);
finally
AReportController := NIL;

View File

@ -11,7 +11,7 @@ type
IAlbaranesClienteReportController = interface
['{4BCC7A93-3322-494C-A3FA-118F4B62CB15}']
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
procedure EtiquetasPreview(const AID : integer; Const withRefCliente: Boolean);
procedure EtiquetasPrint(const AID : integer; Const withRefCliente: Boolean);
end;
@ -26,7 +26,7 @@ type
destructor Destroy; override;
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
procedure EtiquetasPreview(const AID : integer; const withRefCliente: Boolean);
procedure EtiquetasPrint(const AID : integer; const withRefCliente: Boolean);
end;
@ -36,7 +36,8 @@ implementation
uses
uROTypes, uEditorRegistryUtils, uIEditorAlbaranesClientePreview,
uEditorPreview, uDataModuleAlbaranesCliente, uEditorBase, cxControls;
uEditorPreview, uDataModuleAlbaranesCliente, uEditorBase, cxControls,
schAlbaranesClienteClient_Intf;
{ TAlbaranesClienteReportController }
@ -130,11 +131,12 @@ begin
AEditor.Preview;
end;
procedure TAlbaranesClienteReportController.Print(const AID : String);
function TAlbaranesClienteReportController.Print(const AID : String): Boolean;
var
AStream: Binary;
AEditor : IEditorAlbaranesClientePreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -151,7 +153,11 @@ begin
end;
if Assigned(AEditor) then
AEditor.Print
begin
AEditor.TablaImpresion := nme_AlbaranesCliente;
AEditor.IdTablaImpresion := AID;
Result := AEditor.Print;
end;
end;
end.

View File

@ -9,7 +9,7 @@ uses
type
IDetallesAlbaranClienteController = interface(IControllerDetallesArticulos)
['{6AD99D47-2856-47B1-9620-DD115726B0E1}']
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure DesglosarPorteDetalles(ImportePorte: Currency; ADetalles: IDAStronglyTypedDataTable);
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
@ -31,7 +31,7 @@ type
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
public
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
constructor Create; override;
destructor Destroy; override;
@ -60,7 +60,7 @@ begin
end;
end;
procedure TDetallesAlbaranClienteController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente);
procedure TDetallesAlbaranClienteController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1);
var
AArticulos: IBizArticulo;
begin
@ -68,8 +68,19 @@ begin
begin
try
AArticulos := (FArticulosController.BuscarTodos(ACliente) as IBizArticulo);
AArticulos := (FArticulosController as IArticulosAlbaranClienteController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este albarán de cliente', True);
Add(ADetalles, AArticulos);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosAlbaranClienteController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este albarán de cliente', True);
Add(ADetalles, AArticulos, ACantidad)
end
else
begin
AArticulos := (FArticulosController as IArticulosAlbaranClienteController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a este albarán de cliente', False);
RellenarDetalle(ADetalles, AArticulos, ACantidad);
end;
finally
AArticulos := Nil;
end;

View File

@ -614,6 +614,17 @@ object DataModuleAlbaranesCliente: TDataModuleAlbaranesCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
Params = <>
MasterMappingMode = mmDataRequest

View File

@ -9,11 +9,11 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_DarReferencia = '{082B0C4D-3177-4BB4-B3B3-768B55A2D4CD}';
RID_AlbaranesCliente = '{3BDADEA6-ACB7-4E6F-8877-8634A2F4B4FB}';
RID_AlbaranesCliente_Detalles = '{0ACEBB64-A4A0-410C-BA50-BE62510542C0}';
RID_AlbaranesCliente_Detalles_Refresh = '{0E3B100E-D70D-41C4-BC7C-D53C5C732E65}';
RID_AlbaranesCliente_Refresh = '{19951F6E-3BFD-4195-A2F3-0D66AAC9B375}';
RID_DarReferencia = '{DCC75E0A-1413-4F74-8EF2-D5261717689F}';
RID_AlbaranesCliente = '{BD15D29D-2048-44B3-BE79-0485BDB36C8E}';
RID_AlbaranesCliente_Detalles = '{4CA5BC9A-72EA-4187-BD2E-A9EF5BAAF24E}';
RID_AlbaranesCliente_Detalles_Refresh = '{9F94485D-D822-4622-A4C0-30D76050FD48}';
RID_AlbaranesCliente_Refresh = '{2CF53053-8A71-4901-80B3-3527508FD486}';
{ Data table names }
nme_DarReferencia = 'DarReferencia';
@ -70,6 +70,7 @@ const
fld_AlbaranesClienteFECHA_RECEPCION = 'FECHA_RECEPCION';
fld_AlbaranesClienteID_AGENTE = 'ID_AGENTE';
fld_AlbaranesClienteAGENTE = 'AGENTE';
fld_AlbaranesClienteNUM_COPIAS = 'NUM_COPIAS';
{ AlbaranesCliente field indexes }
idx_AlbaranesClienteID = 0;
@ -113,6 +114,7 @@ const
idx_AlbaranesClienteFECHA_RECEPCION = 38;
idx_AlbaranesClienteID_AGENTE = 39;
idx_AlbaranesClienteAGENTE = 40;
idx_AlbaranesClienteNUM_COPIAS = 41;
{ AlbaranesCliente_Detalles fields }
fld_AlbaranesCliente_DetallesID = 'ID';
@ -224,6 +226,7 @@ const
fld_AlbaranesCliente_RefreshFECHA_RECEPCION = 'FECHA_RECEPCION';
fld_AlbaranesCliente_RefreshID_AGENTE = 'ID_AGENTE';
fld_AlbaranesCliente_RefreshAGENTE = 'AGENTE';
fld_AlbaranesCliente_RefreshNUM_COPIAS = 'NUM_COPIAS';
{ AlbaranesCliente_Refresh field indexes }
idx_AlbaranesCliente_RefreshID = 0;
@ -267,11 +270,12 @@ const
idx_AlbaranesCliente_RefreshFECHA_RECEPCION = 38;
idx_AlbaranesCliente_RefreshID_AGENTE = 39;
idx_AlbaranesCliente_RefreshAGENTE = 40;
idx_AlbaranesCliente_RefreshNUM_COPIAS = 41;
type
{ IDarReferencia }
IDarReferencia = interface(IDAStronglyTypedDataTable)
['{7E399946-10F5-4182-AF9A-88118707303F}']
['{569D59FB-01EC-4F5E-B15D-B32F804F2345}']
{ Property getters and setters }
function GetVALORValue: String;
procedure SetVALORValue(const aValue: String);
@ -300,7 +304,7 @@ type
{ IAlbaranesCliente }
IAlbaranesCliente = interface(IDAStronglyTypedDataTable)
['{A9F7185C-D38D-4987-8371-EAAABA04D66F}']
['{121684CB-5C66-4812-9536-EAD43E7D4B71}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -384,6 +388,8 @@ type
procedure SetID_AGENTEValue(const aValue: Integer);
function GetAGENTEValue: String;
procedure SetAGENTEValue(const aValue: String);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -428,6 +434,7 @@ type
property FECHA_RECEPCION: DateTime read GetFECHA_RECEPCIONValue write SetFECHA_RECEPCIONValue;
property ID_AGENTE: Integer read GetID_AGENTEValue write SetID_AGENTEValue;
property AGENTE: String read GetAGENTEValue write SetAGENTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TAlbaranesClienteDataTableRules }
@ -517,6 +524,8 @@ type
procedure SetID_AGENTEValue(const aValue: Integer); virtual;
function GetAGENTEValue: String; virtual;
procedure SetAGENTEValue(const aValue: String); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -560,6 +569,7 @@ type
property FECHA_RECEPCION: DateTime read GetFECHA_RECEPCIONValue write SetFECHA_RECEPCIONValue;
property ID_AGENTE: Integer read GetID_AGENTEValue write SetID_AGENTEValue;
property AGENTE: String read GetAGENTEValue write SetAGENTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -569,7 +579,7 @@ type
{ IAlbaranesCliente_Detalles }
IAlbaranesCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{B10831B5-8141-4090-8D71-0F09742F86ED}']
['{0D42AFD8-9D02-42A7-A52E-4BD1087377C2}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -682,7 +692,7 @@ type
{ IAlbaranesCliente_Detalles_Refresh }
IAlbaranesCliente_Detalles_Refresh = interface(IDAStronglyTypedDataTable)
['{48F905D6-3C7F-4E0F-9E48-8B91954739ED}']
['{370021CC-EFF6-465B-9577-8DD5FFB6F162}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -795,7 +805,7 @@ type
{ IAlbaranesCliente_Refresh }
IAlbaranesCliente_Refresh = interface(IDAStronglyTypedDataTable)
['{D51B67F3-2EC6-46BC-82F7-B2BE93663E91}']
['{20F45447-E91C-4B75-9381-526433477CD7}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -879,6 +889,8 @@ type
procedure SetID_AGENTEValue(const aValue: Integer);
function GetAGENTEValue: String;
procedure SetAGENTEValue(const aValue: String);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -923,6 +935,7 @@ type
property FECHA_RECEPCION: DateTime read GetFECHA_RECEPCIONValue write SetFECHA_RECEPCIONValue;
property ID_AGENTE: Integer read GetID_AGENTEValue write SetID_AGENTEValue;
property AGENTE: String read GetAGENTEValue write SetAGENTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TAlbaranesCliente_RefreshDataTableRules }
@ -1012,6 +1025,8 @@ type
procedure SetID_AGENTEValue(const aValue: Integer); virtual;
function GetAGENTEValue: String; virtual;
procedure SetAGENTEValue(const aValue: String); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -1055,6 +1070,7 @@ type
property FECHA_RECEPCION: DateTime read GetFECHA_RECEPCIONValue write SetFECHA_RECEPCIONValue;
property ID_AGENTE: Integer read GetID_AGENTEValue write SetID_AGENTEValue;
property AGENTE: String read GetAGENTEValue write SetAGENTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -1511,6 +1527,16 @@ begin
DataTable.Fields[idx_AlbaranesClienteAGENTE].AsString := aValue;
end;
function TAlbaranesClienteDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_AlbaranesClienteNUM_COPIAS].AsInteger;
end;
procedure TAlbaranesClienteDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_AlbaranesClienteNUM_COPIAS].AsInteger := aValue;
end;
{ TAlbaranesCliente_DetallesDataTableRules }
constructor TAlbaranesCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable);
@ -2259,6 +2285,16 @@ begin
DataTable.Fields[idx_AlbaranesCliente_RefreshAGENTE].AsString := aValue;
end;
function TAlbaranesCliente_RefreshDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_AlbaranesCliente_RefreshNUM_COPIAS].AsInteger;
end;
procedure TAlbaranesCliente_RefreshDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_AlbaranesCliente_RefreshNUM_COPIAS].AsInteger := aValue;
end;
initialization
RegisterDataTableRules(RID_DarReferencia, TDarReferenciaDataTableRules);

View File

@ -9,16 +9,16 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_DarReferenciaDelta = '{3D8FD5D2-A886-493F-8792-FF470F196654}';
RID_AlbaranesClienteDelta = '{B423BC9B-11C5-4CD6-B4DE-15BD0746B77F}';
RID_AlbaranesCliente_DetallesDelta = '{07D56912-3A90-4AB6-A546-53E07A7F32FA}';
RID_AlbaranesCliente_Detalles_RefreshDelta = '{180849FA-AF37-4138-A0D9-B89C55E94A4D}';
RID_AlbaranesCliente_RefreshDelta = '{53C27CD8-3116-4171-97EE-4DDD39E6DFF3}';
RID_DarReferenciaDelta = '{BB048978-E82B-4CB5-9C1D-7107E5F17BB1}';
RID_AlbaranesClienteDelta = '{D5AF214C-6088-4F9D-B3AD-31F0331285DE}';
RID_AlbaranesCliente_DetallesDelta = '{2BB9CAA9-9328-4A65-BE4C-B06D2B48303A}';
RID_AlbaranesCliente_Detalles_RefreshDelta = '{E0DD7094-E6BE-4AB9-B6F6-DD1989A64904}';
RID_AlbaranesCliente_RefreshDelta = '{036CCB6F-FFF2-4369-8F75-FE0D068481B6}';
type
{ IDarReferenciaDelta }
IDarReferenciaDelta = interface(IDarReferencia)
['{3D8FD5D2-A886-493F-8792-FF470F196654}']
['{BB048978-E82B-4CB5-9C1D-7107E5F17BB1}']
{ Property getters and setters }
function GetOldVALORValue : String;
@ -47,7 +47,7 @@ type
{ IAlbaranesClienteDelta }
IAlbaranesClienteDelta = interface(IAlbaranesCliente)
['{B423BC9B-11C5-4CD6-B4DE-15BD0746B77F}']
['{D5AF214C-6088-4F9D-B3AD-31F0331285DE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -90,6 +90,7 @@ type
function GetOldFECHA_RECEPCIONValue : DateTime;
function GetOldID_AGENTEValue : Integer;
function GetOldAGENTEValue : String;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -133,6 +134,7 @@ type
property OldFECHA_RECEPCION : DateTime read GetOldFECHA_RECEPCIONValue;
property OldID_AGENTE : Integer read GetOldID_AGENTEValue;
property OldAGENTE : String read GetOldAGENTEValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TAlbaranesClienteBusinessProcessorRules }
@ -263,6 +265,9 @@ type
function GetAGENTEValue: String; virtual;
function GetOldAGENTEValue: String; virtual;
procedure SetAGENTEValue(const aValue: String); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -347,6 +352,8 @@ type
property OldID_AGENTE : Integer read GetOldID_AGENTEValue;
property AGENTE : String read GetAGENTEValue write SetAGENTEValue;
property OldAGENTE : String read GetOldAGENTEValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -356,7 +363,7 @@ type
{ IAlbaranesCliente_DetallesDelta }
IAlbaranesCliente_DetallesDelta = interface(IAlbaranesCliente_Detalles)
['{07D56912-3A90-4AB6-A546-53E07A7F32FA}']
['{2BB9CAA9-9328-4A65-BE4C-B06D2B48303A}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer;
@ -483,7 +490,7 @@ type
{ IAlbaranesCliente_Detalles_RefreshDelta }
IAlbaranesCliente_Detalles_RefreshDelta = interface(IAlbaranesCliente_Detalles_Refresh)
['{180849FA-AF37-4138-A0D9-B89C55E94A4D}']
['{E0DD7094-E6BE-4AB9-B6F6-DD1989A64904}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer;
@ -610,7 +617,7 @@ type
{ IAlbaranesCliente_RefreshDelta }
IAlbaranesCliente_RefreshDelta = interface(IAlbaranesCliente_Refresh)
['{53C27CD8-3116-4171-97EE-4DDD39E6DFF3}']
['{036CCB6F-FFF2-4369-8F75-FE0D068481B6}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -653,6 +660,7 @@ type
function GetOldFECHA_RECEPCIONValue : DateTime;
function GetOldID_AGENTEValue : Integer;
function GetOldAGENTEValue : String;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -696,6 +704,7 @@ type
property OldFECHA_RECEPCION : DateTime read GetOldFECHA_RECEPCIONValue;
property OldID_AGENTE : Integer read GetOldID_AGENTEValue;
property OldAGENTE : String read GetOldAGENTEValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TAlbaranesCliente_RefreshBusinessProcessorRules }
@ -826,6 +835,9 @@ type
function GetAGENTEValue: String; virtual;
function GetOldAGENTEValue: String; virtual;
procedure SetAGENTEValue(const aValue: String); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -910,6 +922,8 @@ type
property OldID_AGENTE : Integer read GetOldID_AGENTEValue;
property AGENTE : String read GetAGENTEValue write SetAGENTEValue;
property OldAGENTE : String read GetOldAGENTEValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -1579,6 +1593,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteAGENTE] := aValue;
end;
function TAlbaranesClienteBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteNUM_COPIAS];
end;
function TAlbaranesClienteBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesClienteNUM_COPIAS];
end;
procedure TAlbaranesClienteBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesClienteNUM_COPIAS] := aValue;
end;
{ TAlbaranesCliente_DetallesBusinessProcessorRules }
constructor TAlbaranesCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -2684,6 +2713,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesCliente_RefreshAGENTE] := aValue;
end;
function TAlbaranesCliente_RefreshBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesCliente_RefreshNUM_COPIAS];
end;
function TAlbaranesCliente_RefreshBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesCliente_RefreshNUM_COPIAS];
end;
procedure TAlbaranesCliente_RefreshBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesCliente_RefreshNUM_COPIAS] := aValue;
end;
initialization
RegisterBusinessProcessorRules(RID_DarReferenciaDelta, TDarReferenciaBusinessProcessorRules);

View File

@ -79,7 +79,7 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
'TOTAL, OBSERVACIONES, '#10' INCIDENCIAS, INCIDENCIAS_ACTIVAS, FEC' +
'HA_ALTA,'#10' FECHA_MODIFICACION, USUARIO, ID_FORMA_PAGO, FECHA_P' +
'REVISTA_ENVIO, FECHA_ENVIO,'#10' FECHA_RECEPCION, ID_AGENTE, AGEN' +
'TE'#10' FROM'#10' V_ALBARANES_CLIENTE'
'TE, NUM_COPIAS'#10' FROM'#10' V_ALBARANES_CLIENTE'
StatementType = stSQL
ColumnMappings = <
item
@ -106,6 +106,14 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DatasetField = 'ID_PEDIDO'
TableField = 'ID_PEDIDO'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
@ -114,14 +122,26 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'ID_FACTURA'
TableField = 'ID_FACTURA'
end
item
DatasetField = 'REF_PEDIDO'
TableField = 'REF_PEDIDO'
end
item
DatasetField = 'CALLE'
TableField = 'CALLE'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'CODIGO_POSTAL'
TableField = 'CODIGO_POSTAL'
@ -206,6 +226,10 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DatasetField = 'ID_FORMA_PAGO'
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'FECHA_PREVISTA_ENVIO'
TableField = 'FECHA_PREVISTA_ENVIO'
end
item
DatasetField = 'FECHA_ENVIO'
TableField = 'FECHA_ENVIO'
@ -215,28 +239,16 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
TableField = 'FECHA_RECEPCION'
end
item
DatasetField = 'REF_PEDIDO'
TableField = 'REF_PEDIDO'
DatasetField = 'ID_AGENTE'
TableField = 'ID_AGENTE'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
DatasetField = 'AGENTE'
TableField = 'AGENTE'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'FECHA_PREVISTA_ENVIO'
TableField = 'FECHA_PREVISTA_ENVIO'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'AlbaranesCliente'
@ -666,6 +678,17 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -1193,8 +1216,8 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
'TOTAL, OBSERVACIONES, '#10' INCIDENCIAS, INCIDENCIAS_ACTIVAS, FEC' +
'HA_ALTA,'#10' FECHA_MODIFICACION, USUARIO, ID_FORMA_PAGO, FECHA_P' +
'REVISTA_ENVIO, FECHA_ENVIO,'#10' FECHA_RECEPCION, ID_AGENTE, AGEN' +
'TE'#10' FROM'#10' V_ALBARANES_CLIENTE'#10' WHERE V_ALBARANES_CLIENTE.ID' +
' = :ID'
'TE, NUM_COPIAS'#10' FROM'#10' V_ALBARANES_CLIENTE'#10' WHERE V_ALBARANE' +
'S_CLIENTE.ID = :ID'
StatementType = stSQL
ColumnMappings = <
item
@ -1221,6 +1244,14 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DatasetField = 'ID_PEDIDO'
TableField = 'ID_PEDIDO'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
@ -1229,14 +1260,26 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'ID_FACTURA'
TableField = 'ID_FACTURA'
end
item
DatasetField = 'REF_PEDIDO'
TableField = 'REF_PEDIDO'
end
item
DatasetField = 'CALLE'
TableField = 'CALLE'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'CODIGO_POSTAL'
TableField = 'CODIGO_POSTAL'
@ -1321,6 +1364,10 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
DatasetField = 'ID_FORMA_PAGO'
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'FECHA_PREVISTA_ENVIO'
TableField = 'FECHA_PREVISTA_ENVIO'
end
item
DatasetField = 'FECHA_ENVIO'
TableField = 'FECHA_ENVIO'
@ -1330,28 +1377,16 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
TableField = 'FECHA_RECEPCION'
end
item
DatasetField = 'REF_PEDIDO'
TableField = 'REF_PEDIDO'
DatasetField = 'ID_AGENTE'
TableField = 'ID_AGENTE'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
DatasetField = 'AGENTE'
TableField = 'AGENTE'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'FECHA_PREVISTA_ENVIO'
TableField = 'FECHA_PREVISTA_ENVIO'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'AlbaranesCliente_Refresh'
@ -1784,6 +1819,17 @@ object srvAlbaranesCliente: TsrvAlbaranesCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript

View File

@ -200,6 +200,10 @@ inherited fEditorAlbaranCliente: TfEditorAlbaranCliente
object pagInicidencias: TTabSheet
Caption = 'Incidencias'
ImageIndex = 2
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewIncidenciasCli: TfrViewIncidencias
Left = 0
Top = 0

View File

@ -275,9 +275,6 @@ begin
if (FAlbaran.Detalles.RecordCount > 0) then
begin
FController.DetallesController.ActualizarDetalles(FAlbaran.Detalles, FAlbaran.Cliente);
//En caso de ser una orden de devolucion también debe cambiar el signo a los detalles
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
Controller.DetallesController.CambiarSignoDetalles(FAlbaran.Detalles);
end;
finally

View File

@ -2,6 +2,7 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
Caption = 'Lista de albaranes de cliente'
ClientWidth = 583
ExplicitWidth = 591
ExplicitHeight = 240
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader
@ -133,7 +134,7 @@ inherited fEditorAlbaranesCliente: TfEditorAlbaranesCliente
end
inherited TBXTMain2: TTBXToolbar
Visible = True
ExplicitWidth = 246
ExplicitWidth = 242
object TBXItem42: TTBXItem
Action = actEnviar
DisplayMode = nbdmImageAndText

View File

@ -301,7 +301,7 @@ begin
if (Application.MessageBox('¿Desea borrar los albaranes de cliente seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords);
AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes) as IBizAlbaranCliente;
AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes, ViewGrid) as IBizAlbaranCliente;
end
end
else begin
@ -387,13 +387,14 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords);
AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes) as IBizAlbaranCliente;
AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes, ViewGrid) as IBizAlbaranCliente;
end
else
AAlbaranes := Albaranes;
if Assigned(AAlbaranes) then
FController.Print(AAlbaranes, AllItems);
if FController.Print(AAlbaranes, AllItems) then
RefrescarInterno;
end;
end;
end;
@ -471,7 +472,7 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords);
AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes) as IBizAlbaranCliente;
AAlbaranes := (Controller as IAlbaranesClienteController).ExtraerSeleccionados(Albaranes, ViewGrid) as IBizAlbaranCliente;
end
else
AAlbaranes := Albaranes;

View File

@ -38,6 +38,15 @@ inherited frViewAlbaranesCliente: TfrViewAlbaranesCliente
end>
OptionsCustomize.ColumnHidingOnGrouping = False
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewNUM_COPIAS: TcxGridDBColumn
DataBinding.FieldName = 'NUM_COPIAS'
OnCustomDrawCell = cxGridViewNUM_COPIASCustomDrawCell
MinWidth = 30
Options.HorzSizing = False
VisibleForCustomization = False
Width = 30
IsCaptionAssigned = True
end
object cxGridViewINCIDENCIAS_ACTIVAS: TcxGridDBColumn
Caption = 'Incidencias'
DataBinding.FieldName = 'INCIDENCIAS_ACTIVAS'
@ -369,6 +378,20 @@ inherited frViewAlbaranesCliente: TfrViewAlbaranesCliente
CF0000000049454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000E54944415478DADD902172C3301045BF4F10C3320B9645B0ACEE0D7C
83F806F5110C0BD51B6C99A160E1C2C085850B0D372C655965DCA28C3D9DB27C
CD8E44FEDBFF55E19FAAEE104013B77EF53ED100B3595967637A1B7813B098C7
F8149E435DC3CE807C29F2943FD48C784ABC0520371FF64D83D377597FF201F8
28C899DE39D3B005D0AE8B0DB0FB3597143A2B98195EA3DA0248DBC67D79FF98
B100682278857540224EF131BCD64BFF62363FE215540594C675C098728BB3F5
2184031C72DDAE1EFFC89EC85EE493D63FB1A81F526BA65D7808BDA8EE1C0611
B969BE09F8ABEE007001C1D97F1131BF40440000000049454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end>
Left = 64
Top = 72

View File

@ -61,6 +61,7 @@ type
TBXItem4: TTBXItem;
actAgentes: TAction;
cxGridViewAGENTE: TcxGridDBColumn;
cxGridViewNUM_COPIAS: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel);
procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView;
@ -78,6 +79,9 @@ type
Y: Integer);
procedure actAgentesExecute(Sender: TObject);
procedure actAgentesUpdate(Sender: TObject);
procedure cxGridViewNUM_COPIASCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
//Filtros relativos a la vista
@ -271,6 +275,23 @@ begin
end;
end;
procedure TfrViewAlbaranesCliente.cxGridViewNUM_COPIASCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
R : TRect;
begin
inherited;
if (AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index] <> '') then
begin
R := AViewInfo.ContentBounds;
ACanvas.FillRect(R);
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 4);
ACanvas.DrawTexT(AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index], R, cxAlignCenter or cxAlignVCenter);
ADone := True;
end;
end;
procedure TfrViewAlbaranesCliente.cxGridViewStylesGetContentStyle(Sender:
TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem:
TcxCustomGridTableItem; out AStyle: TcxStyle);

View File

@ -30,6 +30,7 @@ type
procedure SetAlbaran(const Value: IBizAlbaranCliente);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
@ -45,18 +46,18 @@ uses uDetallesAlbaranClienteController, uViewDetallesBase;
function TfrViewDetallesAlbaranCliente.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin
Result := (Controller as IDetallesAlbaranClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia);
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranClienteController).CambiarSignoDetalles(Detalles);
Result := (Controller as IDetallesAlbaranClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Albaran.Cliente.ID, -1)
else
Result := (Controller as IDetallesAlbaranClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Albaran.Cliente.ID)
end;
procedure TfrViewDetallesAlbaranCliente.AnadirArticulosInterno;
begin
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente);
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranClienteController).CambiarSignoDetalles(Detalles);
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente, true, -1)
else
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente);
end;
function TfrViewDetallesAlbaranCliente.GetAlbaran: IBizAlbaranCliente;
@ -69,4 +70,12 @@ begin
FAlbaran := Value;
end;
procedure TfrViewDetallesAlbaranCliente.RellenarArticulosInterno;
begin
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente, False, -1)
else
(Controller as IDetallesAlbaranClienteController).AnadirArticulos(Detalles, Albaran.Cliente, False);
end;
end.

View File

@ -7,7 +7,7 @@ uses
SysUtils, uDADataTable, uEditorDBItem,
uControllerBase, uIDataModuleAlbaranesProveedor, uProveedoresController,
uDetallesAlbaranProveedorController, uBizAlbaranesProveedor,
uBizDireccionesContacto, uBizInventario;
uBizDireccionesContacto, uBizInventario, uViewGridBase;
type
IAlbaranesProveedorController = interface(IObservador)
@ -41,7 +41,7 @@ type
function Existe(const ID: Integer) : Boolean;
function Duplicar(AAlbaran: IBizAlbaranProveedor): IBizAlbaranProveedor;
function ExtraerSeleccionados(AAlbaran: IBizAlbaranProveedor) : IBizAlbaranProveedor;
function ExtraerSeleccionados(AAlbaran: IBizAlbaranProveedor; Const ViewGrid: IViewGridBase = Nil) : IBizAlbaranProveedor;
function ElegirAlbaranes(AAlbaran: IBizAlbaranProveedor; AMensaje: String; AMultiSelect: Boolean): IBizAlbaranProveedor;
procedure CopiarDireccionEnvio (const ADireccionEnvio: IBizDireccionesContacto; AAlbaran: IBizAlbaranProveedor);
@ -53,7 +53,7 @@ type
function EsEliminable(AAlbaran: IBizAlbaranProveedor): Boolean;
procedure Preview(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false);
procedure Print(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false);
function Print(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false): Boolean;
procedure Limpiardireccion(AAlbaran: IBizAlbaranProveedor);
end;
@ -112,7 +112,7 @@ type
AAlbaran: IBizAlbaranProveedor);
procedure QuitarDireccionEnvio(AAlbaran: IBizAlbaranProveedor);
function ExtraerSeleccionados(AAlbaran: IBizAlbaranProveedor) : IBizAlbaranProveedor;
function ExtraerSeleccionados(AAlbaran: IBizAlbaranProveedor; Const ViewGrid: IViewGridBase = Nil) : IBizAlbaranProveedor;
function ElegirAlbaranes(AAlbaran: IBizAlbaranProveedor; AMensaje: String; AMultiSelect: Boolean): IBizAlbaranProveedor;
procedure RecalcularImportes(AAlbaran: IBizAlbaranProveedor);
@ -120,7 +120,7 @@ type
function EsEliminable(AAlbaran: IBizAlbaranProveedor): Boolean;
procedure Preview(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false);
procedure Print(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false);
function Print(AAlbaran : IBizAlbaranProveedor; AllItems: Boolean = false): Boolean;
procedure Limpiardireccion(AAlbaran: IBizAlbaranProveedor);
end;
@ -906,13 +906,26 @@ begin
end;
end;
function TAlbaranesProveedorController.ExtraerSeleccionados(AAlbaran: IBizAlbaranProveedor): IBizAlbaranProveedor;
function TAlbaranesProveedorController.ExtraerSeleccionados(AAlbaran: IBizAlbaranProveedor; Const ViewGrid: IViewGridBase = Nil): IBizAlbaranProveedor;
var
ASeleccionados : IBizAlbaranProveedor;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := (Self.Buscar(ID_NULO) as IBizAlbaranProveedor);
CopyDataTable(AAlbaran.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
procedure TAlbaranesProveedorController.FiltrarEmpresa(
@ -1034,12 +1047,13 @@ begin
end;
end;
procedure TAlbaranesProveedorController.Print(AAlbaran: IBizAlbaranProveedor; AllItems: Boolean = false);
function TAlbaranesProveedorController.Print(AAlbaran: IBizAlbaranProveedor; AllItems: Boolean = false): Boolean;
var
AReportController : IAlbaranesProveedorReportController;
ID_Albaranes: TStringList;
begin
Result := False;
AReportController := TAlbaranesProveedorReportController.Create;
try
ID_Albaranes := TStringList.Create;
@ -1061,7 +1075,7 @@ begin
else
ID_Albaranes.Add(IntToStr(AAlbaran.ID));
AReportController.Print(ID_Albaranes.CommaText);
Result := AReportController.Print(ID_Albaranes.CommaText);
finally
AReportController := NIL;

View File

@ -11,7 +11,7 @@ type
IAlbaranesProveedorReportController = interface
['{AAE252CE-D407-4FF4-AF2A-350C5A421C89}']
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
TAlbaranesProveedorReportController = class(TInterfacedObject, IAlbaranesProveedorReportController)
@ -23,7 +23,7 @@ type
destructor Destroy; override;
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
@ -31,7 +31,8 @@ implementation
uses
uROTypes, uEditorRegistryUtils, uIEditorAlbaranesProveedorPreview,
uEditorPreview, uDataModuleAlbaranesProveedor, uEditorBase, cxControls;
uEditorPreview, uDataModuleAlbaranesProveedor, uEditorBase, cxControls,
schAlbaranesProveedorClient_Intf;
{ TAlbaranesProveedorReportController }
@ -77,11 +78,12 @@ begin
AEditor.Preview;
end;
procedure TAlbaranesProveedorReportController.Print(const AID : String);
function TAlbaranesProveedorReportController.Print(const AID : String): Boolean;
var
AStream: Binary;
AEditor : IEditorAlbaranesProveedorPreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -98,7 +100,11 @@ begin
end;
if Assigned(AEditor) then
AEditor.Print
begin
AEditor.TablaImpresion := nme_AlbaranesProveedor;
AEditor.IdTablaImpresion := AID;
Result := AEditor.Print;
end;
end;
end.

View File

@ -9,7 +9,7 @@ uses
type
IDetallesAlbaranProveedorController = interface(IControllerDetallesArticulos)
['{6E35D49A-C78D-481D-93E9-859CD27EB79F}']
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure DesglosarPorteDetalles(ImportePorte: Currency; ADetalles: IDAStronglyTypedDataTable);
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
@ -32,7 +32,7 @@ type
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
public
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
constructor Create; override;
destructor Destroy; override;
@ -62,7 +62,7 @@ begin
end;
end;
procedure TDetallesAlbaranProveedorController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor);
procedure TDetallesAlbaranProveedorController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1);
var
AArticulos: IBizArticulo;
begin
@ -70,8 +70,17 @@ begin
begin
try
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
AArticulos := (FArticulosController as IArticulosAlbaranProveedorController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este albarán de proveedor', True, AProveedor);
Add(ADetalles, AArticulos);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosAlbaranProveedorController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este albarán de proveedor', True, AProveedor);
Add(ADetalles, AArticulos, ACantidad)
end
else
begin
AArticulos := (FArticulosController as IArticulosAlbaranProveedorController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a este albarán de proveedor', False, AProveedor);
RellenarDetalle(ADetalles, AArticulos, ACantidad);
end;
finally
AArticulos := Nil;
end;

View File

@ -548,6 +548,17 @@ object DataModuleAlbaranesProveedor: TDataModuleAlbaranesProveedor
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
Params = <>
MasterMappingMode = mmDataRequest

View File

@ -9,11 +9,11 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_DarReferencia = '{A2ECE4F2-2EB0-4440-ABB5-C4FFB59A4AF3}';
RID_AlbaranesProveedor = '{1BF52D88-3541-47DD-8059-7E82D70C2657}';
RID_AlbaranesProveedor_Detalles = '{ED78D0F8-7B91-4C95-AB71-6716DFEFA4CA}';
RID_AlbaranesProveedor_Detalles_Refresh = '{4EDD3252-7B35-485A-89BE-A39DFE97FD43}';
RID_AlbaranesProveedor_Refresh = '{54A2F0B0-5BB2-49F3-B7E1-8FCBFE19A211}';
RID_DarReferencia = '{3F50C24C-9A27-46B2-BA07-3363BB4C42F0}';
RID_AlbaranesProveedor = '{4EE00E6F-CE2D-4A3F-8BB7-4CC56A04C494}';
RID_AlbaranesProveedor_Detalles = '{EAEB48A8-713D-4559-AF51-B102B0EE4CDC}';
RID_AlbaranesProveedor_Detalles_Refresh = '{C0B6846B-07A4-407C-9D66-AC584AF21C0D}';
RID_AlbaranesProveedor_Refresh = '{4A135BA2-5325-45B4-B75C-59B39DEF034F}';
{ Data table names }
nme_DarReferencia = 'DarReferencia';
@ -65,6 +65,7 @@ const
fld_AlbaranesProveedorFECHA_MODIFICACION = 'FECHA_MODIFICACION';
fld_AlbaranesProveedorUSUARIO = 'USUARIO';
fld_AlbaranesProveedorID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_AlbaranesProveedorNUM_COPIAS = 'NUM_COPIAS';
{ AlbaranesProveedor field indexes }
idx_AlbaranesProveedorID = 0;
@ -103,6 +104,7 @@ const
idx_AlbaranesProveedorFECHA_MODIFICACION = 33;
idx_AlbaranesProveedorUSUARIO = 34;
idx_AlbaranesProveedorID_FORMA_PAGO = 35;
idx_AlbaranesProveedorNUM_COPIAS = 36;
{ AlbaranesProveedor_Detalles fields }
fld_AlbaranesProveedor_DetallesID = 'ID';
@ -209,6 +211,7 @@ const
fld_AlbaranesProveedor_RefreshFECHA_MODIFICACION = 'FECHA_MODIFICACION';
fld_AlbaranesProveedor_RefreshUSUARIO = 'USUARIO';
fld_AlbaranesProveedor_RefreshID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_AlbaranesProveedor_RefreshNUM_COPIAS = 'NUM_COPIAS';
{ AlbaranesProveedor_Refresh field indexes }
idx_AlbaranesProveedor_RefreshID = 0;
@ -247,11 +250,12 @@ const
idx_AlbaranesProveedor_RefreshFECHA_MODIFICACION = 33;
idx_AlbaranesProveedor_RefreshUSUARIO = 34;
idx_AlbaranesProveedor_RefreshID_FORMA_PAGO = 35;
idx_AlbaranesProveedor_RefreshNUM_COPIAS = 36;
type
{ IDarReferencia }
IDarReferencia = interface(IDAStronglyTypedDataTable)
['{70216529-9EFF-49D4-BC5D-142057D881C7}']
['{61465610-D794-47C4-9ABC-8741E6E36F27}']
{ Property getters and setters }
function GetVALORValue: String;
procedure SetVALORValue(const aValue: String);
@ -280,7 +284,7 @@ type
{ IAlbaranesProveedor }
IAlbaranesProveedor = interface(IDAStronglyTypedDataTable)
['{75EF115B-2E16-4631-B284-EB29454AB90D}']
['{42B45AE6-5EB4-4C8D-82C8-1C4AD82E64A8}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -354,6 +358,8 @@ type
procedure SetUSUARIOValue(const aValue: String);
function GetID_FORMA_PAGOValue: Integer;
procedure SetID_FORMA_PAGOValue(const aValue: Integer);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -393,6 +399,7 @@ type
property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TAlbaranesProveedorDataTableRules }
@ -472,6 +479,8 @@ type
procedure SetUSUARIOValue(const aValue: String); virtual;
function GetID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -510,6 +519,7 @@ type
property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -519,7 +529,7 @@ type
{ IAlbaranesProveedor_Detalles }
IAlbaranesProveedor_Detalles = interface(IDAStronglyTypedDataTable)
['{71F6EB5E-95EA-4C44-BE14-F52ED4F7736E}']
['{7648F585-1867-4E43-A6D9-7FEE51485725}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -632,7 +642,7 @@ type
{ IAlbaranesProveedor_Detalles_Refresh }
IAlbaranesProveedor_Detalles_Refresh = interface(IDAStronglyTypedDataTable)
['{EF189D96-FC62-431D-9AB9-D1A88BC60632}']
['{B23F5262-0AAA-4C52-B3DA-A1589AB4F1C5}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -745,7 +755,7 @@ type
{ IAlbaranesProveedor_Refresh }
IAlbaranesProveedor_Refresh = interface(IDAStronglyTypedDataTable)
['{33F9FCD3-FD74-488D-8EBC-F3AFCCCF566B}']
['{256505AA-BA0B-4945-8A00-0F5543C724CC}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -819,6 +829,8 @@ type
procedure SetUSUARIOValue(const aValue: String);
function GetID_FORMA_PAGOValue: Integer;
procedure SetID_FORMA_PAGOValue(const aValue: Integer);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -858,6 +870,7 @@ type
property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TAlbaranesProveedor_RefreshDataTableRules }
@ -937,6 +950,8 @@ type
procedure SetUSUARIOValue(const aValue: String); virtual;
function GetID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -975,6 +990,7 @@ type
property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -1381,6 +1397,16 @@ begin
DataTable.Fields[idx_AlbaranesProveedorID_FORMA_PAGO].AsInteger := aValue;
end;
function TAlbaranesProveedorDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_AlbaranesProveedorNUM_COPIAS].AsInteger;
end;
procedure TAlbaranesProveedorDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_AlbaranesProveedorNUM_COPIAS].AsInteger := aValue;
end;
{ TAlbaranesProveedor_DetallesDataTableRules }
constructor TAlbaranesProveedor_DetallesDataTableRules.Create(aDataTable: TDADataTable);
@ -2079,6 +2105,16 @@ begin
DataTable.Fields[idx_AlbaranesProveedor_RefreshID_FORMA_PAGO].AsInteger := aValue;
end;
function TAlbaranesProveedor_RefreshDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_AlbaranesProveedor_RefreshNUM_COPIAS].AsInteger;
end;
procedure TAlbaranesProveedor_RefreshDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_AlbaranesProveedor_RefreshNUM_COPIAS].AsInteger := aValue;
end;
initialization
RegisterDataTableRules(RID_DarReferencia, TDarReferenciaDataTableRules);

View File

@ -9,16 +9,16 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_DarReferenciaDelta = '{A422DB5C-634E-474A-8CF6-74991DA1AE32}';
RID_AlbaranesProveedorDelta = '{C4E4FF3D-939D-4F34-9867-F77C33CC5CFC}';
RID_AlbaranesProveedor_DetallesDelta = '{DAF52FFB-AC66-412B-8E1C-7DAAB3B0C2C9}';
RID_AlbaranesProveedor_Detalles_RefreshDelta = '{324ADFD7-9348-41B3-BFAF-50FE30872A52}';
RID_AlbaranesProveedor_RefreshDelta = '{79C0564C-8AE9-4995-A30C-C904BEB88939}';
RID_DarReferenciaDelta = '{ED7AB12B-996F-49BF-B0BD-0FBF07091D2C}';
RID_AlbaranesProveedorDelta = '{4DE57AD5-32F1-4CDC-9D41-5557B7EC11A0}';
RID_AlbaranesProveedor_DetallesDelta = '{097F48A6-6CC7-43A8-A5C2-BCE54EE3B9B7}';
RID_AlbaranesProveedor_Detalles_RefreshDelta = '{D590E2D3-0875-4A95-9B35-CBD3DC43B6C0}';
RID_AlbaranesProveedor_RefreshDelta = '{23A6B8F2-95A9-4A11-8822-6D9FA3511F8C}';
type
{ IDarReferenciaDelta }
IDarReferenciaDelta = interface(IDarReferencia)
['{A422DB5C-634E-474A-8CF6-74991DA1AE32}']
['{ED7AB12B-996F-49BF-B0BD-0FBF07091D2C}']
{ Property getters and setters }
function GetOldVALORValue : String;
@ -47,7 +47,7 @@ type
{ IAlbaranesProveedorDelta }
IAlbaranesProveedorDelta = interface(IAlbaranesProveedor)
['{C4E4FF3D-939D-4F34-9867-F77C33CC5CFC}']
['{4DE57AD5-32F1-4CDC-9D41-5557B7EC11A0}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -85,6 +85,7 @@ type
function GetOldFECHA_MODIFICACIONValue : DateTime;
function GetOldUSUARIOValue : String;
function GetOldID_FORMA_PAGOValue : Integer;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -123,6 +124,7 @@ type
property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue;
property OldUSUARIO : String read GetOldUSUARIOValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TAlbaranesProveedorBusinessProcessorRules }
@ -238,6 +240,9 @@ type
function GetID_FORMA_PAGOValue: Integer; virtual;
function GetOldID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -312,6 +317,8 @@ type
property OldUSUARIO : String read GetOldUSUARIOValue;
property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -321,7 +328,7 @@ type
{ IAlbaranesProveedor_DetallesDelta }
IAlbaranesProveedor_DetallesDelta = interface(IAlbaranesProveedor_Detalles)
['{DAF52FFB-AC66-412B-8E1C-7DAAB3B0C2C9}']
['{097F48A6-6CC7-43A8-A5C2-BCE54EE3B9B7}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer;
@ -448,7 +455,7 @@ type
{ IAlbaranesProveedor_Detalles_RefreshDelta }
IAlbaranesProveedor_Detalles_RefreshDelta = interface(IAlbaranesProveedor_Detalles_Refresh)
['{324ADFD7-9348-41B3-BFAF-50FE30872A52}']
['{D590E2D3-0875-4A95-9B35-CBD3DC43B6C0}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_ALBARANValue : Integer;
@ -575,7 +582,7 @@ type
{ IAlbaranesProveedor_RefreshDelta }
IAlbaranesProveedor_RefreshDelta = interface(IAlbaranesProveedor_Refresh)
['{79C0564C-8AE9-4995-A30C-C904BEB88939}']
['{23A6B8F2-95A9-4A11-8822-6D9FA3511F8C}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -613,6 +620,7 @@ type
function GetOldFECHA_MODIFICACIONValue : DateTime;
function GetOldUSUARIOValue : String;
function GetOldID_FORMA_PAGOValue : Integer;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -651,6 +659,7 @@ type
property OldFECHA_MODIFICACION : DateTime read GetOldFECHA_MODIFICACIONValue;
property OldUSUARIO : String read GetOldUSUARIOValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TAlbaranesProveedor_RefreshBusinessProcessorRules }
@ -766,6 +775,9 @@ type
function GetID_FORMA_PAGOValue: Integer; virtual;
function GetOldID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -840,6 +852,8 @@ type
property OldUSUARIO : String read GetOldUSUARIOValue;
property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -1434,6 +1448,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorID_FORMA_PAGO] := aValue;
end;
function TAlbaranesProveedorBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNUM_COPIAS];
end;
function TAlbaranesProveedorBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedorNUM_COPIAS];
end;
procedure TAlbaranesProveedorBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedorNUM_COPIAS] := aValue;
end;
{ TAlbaranesProveedor_DetallesBusinessProcessorRules }
constructor TAlbaranesProveedor_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -2464,6 +2493,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedor_RefreshID_FORMA_PAGO] := aValue;
end;
function TAlbaranesProveedor_RefreshBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedor_RefreshNUM_COPIAS];
end;
function TAlbaranesProveedor_RefreshBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_AlbaranesProveedor_RefreshNUM_COPIAS];
end;
procedure TAlbaranesProveedor_RefreshBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_AlbaranesProveedor_RefreshNUM_COPIAS] := aValue;
end;
initialization
RegisterBusinessProcessorRules(RID_DarReferenciaDelta, TDarReferenciaBusinessProcessorRules);

View File

@ -78,7 +78,7 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
'ESCUENTO,'#10' IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, IMPORTE_IV' +
'A, IMPORTE_TOTAL,'#10' OBSERVACIONES, INCIDENCIAS, INCIDENCIAS_AC' +
'TIVAS, FECHA_ALTA, FECHA_MODIFICACION,'#10' USUARIO, ID_FORMA_PAG' +
'O'#10' FROM'#10' V_ALBARANES_PROVEEDOR'
'O, NUM_COPIAS'#10' FROM'#10' V_ALBARANES_PROVEEDOR'
StatementType = stSQL
ColumnMappings = <
item
@ -105,18 +105,42 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'ID_PEDIDO'
TableField = 'ID_PEDIDO'
end
item
DatasetField = 'REF_PED_PROVEEDOR'
TableField = 'REF_PED_PROVEEDOR'
end
item
DatasetField = 'ID_FACTURA'
TableField = 'ID_FACTURA'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'REF_FACTURA_PROV'
TableField = 'REF_FACTURA_PROV'
end
item
DatasetField = 'CALLE'
TableField = 'CALLE'
@ -202,28 +226,8 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'REF_PED_PROVEEDOR'
TableField = 'REF_PED_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'REF_FACTURA_PROV'
TableField = 'REF_FACTURA_PROV'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'AlbaranesProveedor'
@ -602,6 +606,17 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -1141,8 +1156,8 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
'SCUENTO,'#10' IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, IMPORTE_IVA' +
', IMPORTE_TOTAL,'#10' OBSERVACIONES, INCIDENCIAS, INCIDENCIAS_ACT' +
'IVAS, FECHA_ALTA, FECHA_MODIFICACION,'#10' USUARIO, ID_FORMA_PAGO' +
#10' FROM'#10' V_ALBARANES_PROVEEDOR'#10'WHERE V_ALBARANES_PROVEEDOR.ID' +
' = :ID'
', NUM_COPIAS'#10' FROM'#10' V_ALBARANES_PROVEEDOR'#10'WHERE V_ALBARANES_' +
'PROVEEDOR.ID = :ID'
StatementType = stSQL
ColumnMappings = <
item
@ -1169,18 +1184,42 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'ID_PEDIDO'
TableField = 'ID_PEDIDO'
end
item
DatasetField = 'REF_PED_PROVEEDOR'
TableField = 'REF_PED_PROVEEDOR'
end
item
DatasetField = 'ID_FACTURA'
TableField = 'ID_FACTURA'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'REF_FACTURA_PROV'
TableField = 'REF_FACTURA_PROV'
end
item
DatasetField = 'CALLE'
TableField = 'CALLE'
@ -1266,28 +1305,8 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'REF_PED_PROVEEDOR'
TableField = 'REF_PED_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'REF_FACTURA'
TableField = 'REF_FACTURA'
end
item
DatasetField = 'REF_FACTURA_PROV'
TableField = 'REF_FACTURA_PROV'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'AlbaranesProveedor_Refresh'
@ -1670,6 +1689,17 @@ object srvAlbaranesProveedor: TsrvAlbaranesProveedor
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=519
Activate=1

View File

@ -236,9 +236,6 @@ begin
if (FAlbaran.Detalles.RecordCount > 0) then
begin
FController.DetallesController.ActualizarDetalles(FAlbaran.Detalles, FAlbaran.Proveedor);
//En caso de ser una orden de devolucion también debe cambiar el signo a los detalles
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
Controller.DetallesController.CambiarSignoDetalles(FAlbaran.Detalles);
end;
end;
end;

View File

@ -2,6 +2,7 @@ inherited fEditorAlbaranesProveedor: TfEditorAlbaranesProveedor
Caption = 'Lista de albaranes de proveedor'
ClientWidth = 606
ExplicitWidth = 614
ExplicitHeight = 240
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader

View File

@ -138,7 +138,7 @@ begin
if (Application.MessageBox('¿Desea borrar los albaranes de proveedor seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords);
AAlbaranes := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes) as IBizAlbaranProveedor;
AAlbaranes := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes, ViewGrid) as IBizAlbaranProveedor;
end
end
else begin
@ -219,13 +219,14 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords);
AAlbaranes := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes) as IBizAlbaranProveedor;
AAlbaranes := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes, ViewGrid) as IBizAlbaranProveedor;
end
else
AAlbaranes := Albaranes;
if Assigned(AAlbaranes) then
FController.Print(AAlbaranes, AllItems);
if FController.Print(AAlbaranes, AllItems) then
RefrescarInterno;
end;
end;
end;
@ -307,7 +308,7 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Albaranes as ISeleccionable).SelectedRecords);
AAlbaranes := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes) as IBizAlbaranProveedor;
AAlbaranes := (Controller as IAlbaranesProveedorController).ExtraerSeleccionados(Albaranes, ViewGrid) as IBizAlbaranProveedor;
end
else
AAlbaranes := Albaranes;

View File

@ -36,6 +36,15 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
Column = cxGridViewIMPORTE_TOTAL
end>
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewNUM_COPIAS: TcxGridDBColumn
DataBinding.FieldName = 'NUM_COPIAS'
OnCustomDrawCell = cxGridViewNUM_COPIASCustomDrawCell
MinWidth = 30
Options.HorzSizing = False
VisibleForCustomization = False
Width = 30
IsCaptionAssigned = True
end
object cxGridViewINCIDENCIAS_ACTIVAS: TcxGridDBColumn
Caption = 'Incidencias'
DataBinding.FieldName = 'INCIDENCIAS_ACTIVAS'
@ -304,6 +313,20 @@ inherited frViewAlbaranesProveedor: TfrViewAlbaranesProveedor
CF0000000049454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000E54944415478DADD902172C3301045BF4F10C3320B9645B0ACEE0D7C
83F806F5110C0BD51B6C99A160E1C2C085850B0D372C655965DCA28C3D9DB27C
CD8E44FEDBFF55E19FAAEE104013B77EF53ED100B3595967637A1B7813B098C7
F8149E435DC3CE807C29F2943FD48C784ABC0520371FF64D83D377597FF201F8
28C899DE39D3B005D0AE8B0DB0FB3597143A2B98195EA3DA0248DBC67D79FF98
B100682278857540224EF131BCD64BFF62363FE215540594C675C098728BB3F5
2184031C72DDAE1EFFC89EC85EE493D63FB1A81F526BA65D7808BDA8EE1C0611
B969BE09F8ABEE007001C1D97F1131BF40440000000049454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end>
Left = 56
Top = 48

View File

@ -45,6 +45,7 @@ type
TBXSeparatorItem2: TTBXSeparatorItem;
cxGridViewREFERENCIA_PROVEEDOR: TcxGridDBColumn;
cxGridViewREF_FACTURA_PROV: TcxGridDBColumn;
cxGridViewNUM_COPIAS: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel);
procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView;
@ -59,6 +60,9 @@ type
procedure actAlmacenUpdate(Sender: TObject);
procedure cxGridViewMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure cxGridViewNUM_COPIASCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
//Filtros relativos a la vista
@ -203,6 +207,23 @@ begin
end;
end;
procedure TfrViewAlbaranesProveedor.cxGridViewNUM_COPIASCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
R : TRect;
begin
inherited;
if (AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index] <> '') then
begin
R := AViewInfo.ContentBounds;
ACanvas.FillRect(R);
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 4);
ACanvas.DrawTexT(AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index], R, cxAlignCenter or cxAlignVCenter);
ADone := True;
end;
end;
procedure TfrViewAlbaranesProveedor.cxGridViewStylesGetContentStyle(Sender:
TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem:
TcxCustomGridTableItem; out AStyle: TcxStyle);

View File

@ -28,6 +28,7 @@ type
procedure SetAlbaran(const Value: IBizAlbaranProveedor);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
@ -43,18 +44,18 @@ uses uDetallesAlbaranProveedorController, uViewDetallesBase;
function TfrViewDetallesAlbaranProveedor.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin
Result := (Controller as IDetallesAlbaranProveedorController).AnadirArticulo(Detalles, pReferencia, TipoReferencia);
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranProveedorController).CambiarSignoDetalles(Detalles);
Result := (Controller as IDetallesAlbaranProveedorController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, -1, -1)
else
Result := (Controller as IDetallesAlbaranProveedorController).AnadirArticulo(Detalles, pReferencia, TipoReferencia);
end;
procedure TfrViewDetallesAlbaranProveedor.AnadirArticulosInterno;
begin
(Controller as IDetallesAlbaranProveedorController).AnadirArticulos(Detalles, Albaran.Proveedor);
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranProveedorController).CambiarSignoDetalles(Detalles);
(Controller as IDetallesAlbaranProveedorController).AnadirArticulos(Detalles, Albaran.Proveedor, true, -1)
else
(Controller as IDetallesAlbaranProveedorController).AnadirArticulos(Detalles, Albaran.Proveedor);
end;
function TfrViewDetallesAlbaranProveedor.GetAlbaran: IBizAlbaranProveedor;
@ -62,6 +63,14 @@ begin
Result := FAlbaran;
end;
procedure TfrViewDetallesAlbaranProveedor.RellenarArticulosInterno;
begin
if (Albaran.TIPO = CTE_TIPO_ALBARAN_DEV) then
(Controller as IDetallesAlbaranProveedorController).AnadirArticulos(Detalles, Albaran.Proveedor, False, -1)
else
(Controller as IDetallesAlbaranProveedorController).AnadirArticulos(Detalles, Albaran.Proveedor, False);
end;
procedure TfrViewDetallesAlbaranProveedor.SetAlbaran(const Value: IBizAlbaranProveedor);
begin
FAlbaran := Value;

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=5111
Activate=0

View File

@ -15,9 +15,9 @@ type
IControllerDetallesArticulos = interface(IControllerDetallesBase)
['{6E156796-DB1F-4727-BBFB-FBAEF2E5C098}']
procedure AsignarID(ADetalles: IDAStronglyTypedDataTable; IDCabecera: Integer; AEsNuevo:Boolean);
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable);
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean; overload;
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean; overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; const ANuevaFila :Boolean = True);
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1; const ACantidad: Integer = 1): Boolean; overload;
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1; const ACantidad: Integer = 1): Boolean; overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
procedure CambiarSignoDetalles(ADetalles: IDAStronglyTypedDataTable);
procedure AnadirConceptoInicial(ADetalles: IDAStronglyTypedDataTable; AConcepto: String);
@ -32,16 +32,17 @@ type
procedure RellenarOtros(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo); virtual;
procedure RellenarImportes(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo); virtual;
procedure RellenarGenerales(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo); virtual;
procedure RellenarDetalle(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo); virtual;
procedure Add(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo); overload;
procedure RellenarCantidad(ADetalles: IDAStronglyTypedDataTable; const ACantidad: Integer); virtual;
procedure RellenarDetalle(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo; const ACantidad: Integer = 1); virtual;
procedure Add(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo; const ACantidad: Integer = 1); overload;
procedure AsignarController; virtual;
public
procedure AsignarID(ADetalles: IDAStronglyTypedDataTable; IDCabecera: Integer; AEsNuevo:Boolean);
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean; overload;
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean; overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable); virtual;
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1; const ACantidad: Integer = 1): Boolean; overload;
function AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1; const ACantidad: Integer = 1): Boolean; overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; const ANuevaFila :Boolean = True); virtual;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
procedure CambiarSignoDetalles(ADetalles: IDAStronglyTypedDataTable);
procedure AnadirConceptoInicial(ADetalles: IDAStronglyTypedDataTable; AConcepto: String);
@ -61,6 +62,9 @@ uses DB, Dialogs, cxControls, SysUtils, uDAInterfaces, uCalculosUtils, schArticu
{ TControllerDetallesArticulos }
procedure TControllerDetallesArticulos.ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
var
ACantidad: Integer;
begin
if (Assigned(ADetalles) and Assigned(AArticulos)) then
begin
@ -78,9 +82,10 @@ begin
AArticulos.DataTable.First;
try
if AArticulos.DataTable.Locate(CAMPO_ID, FieldByName(CAMPO_ID_ARTICULOS).AsVariant, []) then
RellenarDetalle(ADetalles, AArticulos)
else
RellenarDetalle(ADetalles, Nil);
begin
ACantidad := ADetalles.DataTable.FieldByName(CAMPO_CANTIDAD).AsInteger;
RellenarDetalle(ADetalles, AArticulos, ACantidad);
end
except
on E: Exception do
ShowMessage(E.Message);
@ -96,7 +101,7 @@ begin
end;
end;
procedure TControllerDetallesArticulos.Add(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
procedure TControllerDetallesArticulos.Add(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo; const ACantidad: Integer);
begin
if Assigned(ADetalles) and Assigned(AArticulos) then
begin
@ -116,7 +121,7 @@ begin
while not EOF do
begin
Self.Add(ADetalles, TIPO_DETALLE_CONCEPTO);
RellenarDetalle(ADetalles, AArticulos);
RellenarDetalle(ADetalles, AArticulos, ACantidad);
Next;
end;
end;
@ -127,7 +132,7 @@ begin
end;
end;
function TControllerDetallesArticulos.AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1): Boolean;
function TControllerDetallesArticulos.AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; IDArticulo: Integer; AClienteID: Integer = -1; const ACantidad: Integer = 1): Boolean;
var
AArticulo: IBizArticulo;
begin
@ -147,7 +152,7 @@ begin
AArticulo.DataTable.Active := True;
if (AArticulo.RecordCount > 0) then
begin
RellenarDetalle(ADetalles, AArticulo);
RellenarDetalle(ADetalles, AArticulo, ACantidad);
Result := True;
end;
end;
@ -157,7 +162,7 @@ begin
end;
end;
procedure TControllerDetallesArticulos.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable);
procedure TControllerDetallesArticulos.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; const ANuevaFila :Boolean = True);
var
AArticulos: IBizArticulo;
begin
@ -165,8 +170,17 @@ begin
begin
try
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
AArticulos := FArticulosController.ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir', True);
Add(ADetalles, AArticulos);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := FArticulosController.ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir', True);
Add(ADetalles, AArticulos)
end
else
begin
AArticulos := FArticulosController.ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir', False);
RellenarDetalle(ADetalles, AArticulos);
end;
finally
AArticulos := Nil;
end;
@ -323,7 +337,7 @@ begin
end;
end;
function TControllerDetallesArticulos.AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1): Boolean;
function TControllerDetallesArticulos.AnadirArticulo(ADetalles: IDAStronglyTypedDataTable; Referencia: String; TipoReferencia: TEnumReferencia; AClienteID: Integer = -1; const ACantidad: Integer = 1): Boolean;
var
AArticulo: IBizArticulo;
begin
@ -345,7 +359,7 @@ begin
AArticulo.DataTable.Active := True;
if (AArticulo.RecordCount > 0) then
begin
RellenarDetalle(ADetalles, AArticulo);
RellenarDetalle(ADetalles, AArticulo, ACantidad);
Result := True;
end;
end;
@ -355,23 +369,37 @@ begin
end;
end;
procedure TControllerDetallesArticulos.RellenarCantidad(ADetalles: IDAStronglyTypedDataTable; const ACantidad: Integer);
begin
if Assigned(ADetalles) then
begin
ADetalles.DataTable.FieldByName(CAMPO_CANTIDAD).AsInteger := ACantidad;
end;
end;
procedure TControllerDetallesArticulos.RellenarOtros(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
begin
// Procedimiento que en los hijos se sobreescribirá para rellenar otros campos según necesidades
end;
procedure TControllerDetallesArticulos.RellenarDetalle(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo);
procedure TControllerDetallesArticulos.RellenarDetalle(ADetalles: IDAStronglyTypedDataTable; AArticulos: IBizArticulo; const ACantidad: Integer = 1);
begin
if Assigned(ADetalles) then
begin
if not ADetalles.DataTable.Editing then
ADetalles.DataTable.Edit;
BeginUpdate(ADetalles);
try
if not ADetalles.DataTable.Editing then
ADetalles.DataTable.Edit;
RellenarGenerales(ADetalles, AArticulos);
RellenarImportes(ADetalles, AArticulos);
RellenarOtros(ADetalles, AArticulos);
RellenarGenerales(ADetalles, AArticulos);
RellenarCantidad(ADetalles, ACantidad);
RellenarImportes(ADetalles, AArticulos);
RellenarOtros(ADetalles, AArticulos);
ADetalles.DataTable.Post;
ADetalles.DataTable.Post;
finally
EndUpdate(ADetalles);
end;
end;
end;
@ -383,7 +411,6 @@ begin
ADetalles.DataTable.FieldByName(CAMPO_REFERENCIA).AsVariant := AArticulos.REFERENCIA;
ADetalles.DataTable.FieldByName(CAMPO_REFERENCIA_PROVEEDOR).AsVariant := AArticulos.REFERENCIA_PROV;
ADetalles.DataTable.FieldByName(CAMPO_CONCEPTO).AsVariant := AArticulos.DESCRIPCION;
ADetalles.DataTable.FieldByName(CAMPO_CANTIDAD).AsInteger := 1;
end;
end;

View File

@ -33,6 +33,7 @@ type
procedure CustomViewShow(Sender: TObject);
protected
procedure RellenarArticulosInterno; virtual;
procedure AnadirArticulosInterno; virtual;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; virtual;
end;
@ -131,4 +132,9 @@ begin
Result := (Controller as IControllerDetallesArticulos).AnadirArticulo(Detalles, pReferencia, TipoReferencia);
end;
procedure TfrViewDetallesArticulos.RellenarArticulosInterno;
begin
(Controller as IControllerDetallesArticulos).AnadirArticulos(Detalles, False);
end;
end.

View File

@ -5,7 +5,7 @@ interface
uses
Windows, Forms, Classes, Controls, Contnrs, SysUtils, uDADataTable,
uBizContactos, uBizContactosDatosBancarios, uIDataModuleContactos;
uBizContactos, uBizContactosDatosBancarios, uIDataModuleContactos, uViewGridBase;
type
IContactosController = interface
@ -25,9 +25,9 @@ type
function Localizar(AContactos: IBizContacto; const ID : Integer): Boolean;
function ElegirContacto(AContactos : IBizContacto; AMensaje: String; AMultiSelect: Boolean): IBizContacto;
function ExtraerSeleccionados(AContactos: IBizContacto) : IBizContacto;
function ExtraerSeleccionados(AContactos: IBizContacto; Const ViewGrid: IViewGridBase = Nil) : IBizContacto;
procedure Preview(AContactos : IBizContacto);
procedure Print(AContactos : IBizContacto);
function Print(AContactos : IBizContacto): Boolean;
end;
TContactosController = class(TInterfacedObject, IContactosController)
@ -50,7 +50,7 @@ type
function Existe(const ID: Integer) : Boolean; virtual;
procedure Anadir(AContacto : IBizContacto); virtual;
function Duplicar(AContacto: IBizContacto): IBizContacto; virtual;
function ExtraerSeleccionados(AContactos: IBizContacto) : IBizContacto; virtual;
function ExtraerSeleccionados(AContactos: IBizContacto; Const ViewGrid: IViewGridBase = Nil) : IBizContacto; virtual;
function Localizar(AContactos: IBizContacto; const ID : Integer): Boolean;
// Se implementa en los controladores hijos
@ -62,7 +62,7 @@ type
function ElegirContacto(AContactos : IBizContacto; AMensaje: String; AMultiSelect: Boolean): IBizContacto; virtual; abstract;
procedure Preview(AContactos : IBizContacto);
procedure Print(AContactos : IBizContacto);
function Print(AContactos : IBizContacto): Boolean;
end;
implementation
@ -230,14 +230,26 @@ begin
end;
end;
function TContactosController.ExtraerSeleccionados(
AContactos: IBizContacto): IBizContacto;
function TContactosController.ExtraerSeleccionados(AContactos: IBizContacto; Const ViewGrid: IViewGridBase = Nil): IBizContacto;
var
ASeleccionados : IBizContacto;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := Self.Buscar(ID_NULO);
CopyDataTable(AContactos.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
function TContactosController.Guardar(AContacto: IBizContacto): Boolean;
@ -312,12 +324,13 @@ begin
end;
end;
procedure TContactosController.Print(AContactos: IBizContacto);
function TContactosController.Print(AContactos: IBizContacto): Boolean;
var
AReportController : IEtiquetasContactosReportController;
ID_Contactos: TStringList;
begin
Result := False;
AReportController := TEtiquetasContactosReportController.Create;
try
ID_Contactos := TStringList.Create;
@ -332,7 +345,7 @@ begin
end;
end;
AReportController.Print(ID_Contactos.CommaText);
Result := AReportController.Print(ID_Contactos.CommaText);
finally
AReportController := NIL;

View File

@ -10,7 +10,7 @@ type
IEtiquetasContactosReportController = interface
['{B8EB378E-E40E-4AFE-8CC9-C34DFB13B9EA}']
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
TEtiquetasContactosReportController = class(TInterfacedObject, IEtiquetasContactosReportController)
@ -23,7 +23,7 @@ type
destructor Destroy; override;
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
@ -77,11 +77,12 @@ begin
AEditor.Preview;
end;
procedure TEtiquetasContactosReportController.Print(const AID : String);
function TEtiquetasContactosReportController.Print(const AID : String): Boolean;
var
AStream: Binary;
AEditor : IEditorEtiquetasContactosPreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -98,7 +99,7 @@ begin
end;
if Assigned(AEditor) then
AEditor.Print
Result := AEditor.Print;
end;
end.

View File

@ -83,7 +83,7 @@ begin
if (Application.MessageBox('¿Desea borrar los clientes seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Contactos as ISeleccionable).SelectedRecords);
AContactos := (Controller as IContactosController).ExtraerSeleccionados(Contactos) as IBizContacto;
AContactos := (Controller as IContactosController).ExtraerSeleccionados(Contactos, ViewGrid) as IBizContacto;
end
end
else begin
@ -139,10 +139,11 @@ begin
end;
100 : begin // Elemento Seleccionado
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Contactos as ISeleccionable).SelectedRecords);
AContactos := (Controller as IContactosController).ExtraerSeleccionados(Contactos) as IBizContacto;
AContactos := (Controller as IContactosController).ExtraerSeleccionados(Contactos, ViewGrid) as IBizContacto;
if Assigned(AContactos) then
FController.Print(AContactos);
if FController.Print(AContactos) then
RefrescarInterno;
end;
end;
end;
@ -178,7 +179,7 @@ begin
end;
100 : begin // Elemento Seleccionado
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Contactos as ISeleccionable).SelectedRecords);
AContactos := (Controller as IContactosController).ExtraerSeleccionados(Contactos) as IBizContacto;
AContactos := (Controller as IContactosController).ExtraerSeleccionados(Contactos, ViewGrid) as IBizContacto;
if Assigned(AContactos) then
FController.Preview(AContactos);

View File

@ -9,7 +9,7 @@ uses
type
IDetallesFacturaClienteController = interface(IControllerDetallesArticulos)
['{D3942A48-C55B-4A98-AC5B-B5E652ED393E}']
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente);
procedure AnadirDetalleFacturaAsociadaAbono(ADetalles: IBizDetallesFacturaCliente; AReferencia: String; AFecha: String);
procedure DesglosarPorteDetalles(ImportePorte: Currency; ADetalles: IDAStronglyTypedDataTable);
@ -32,7 +32,7 @@ type
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
public
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
//ABONOS
@ -65,16 +65,26 @@ begin
end;
end;
procedure TDetallesFacturaClienteController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente);
procedure TDetallesFacturaClienteController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1);
var
AArticulos: IBizArticulo;
begin
if Assigned(ADetalles) then
begin
AArticulos := (FArticulosController.BuscarTodos(ACliente) as IBizArticulo);
try
AArticulos := (FArticulosController as IArticulosFacturaClienteController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a esta factura de cliente', True);
Add(ADetalles, AArticulos);
AArticulos := (FArticulosController.BuscarTodos(ACliente) as IBizArticulo);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosFacturaClienteController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a esta factura de cliente', True);
Add(ADetalles, AArticulos, ACantidad)
end
else
begin
AArticulos := (FArticulosController as IArticulosFacturaClienteController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a esta factura de cliente', False);
RellenarDetalle(ADetalles, AArticulos, ACantidad);
end;
finally
AArticulos := Nil;
end;

View File

@ -6,7 +6,7 @@ interface
uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleFacturasCliente,
uClientesController, uDetallesFacturaClienteController, uBizAlbaranesCliente,
uBizFacturasCliente;
uBizFacturasCliente, uViewGridBase;
type
IFacturasClienteController = interface(IObservador)
@ -40,14 +40,14 @@ type
function GenerarAbono(AFactura: IBizFacturaCliente): IBizFacturaCliente;
procedure Preview(AFactura : IBizFacturaCliente; AllItems: Boolean = false);
procedure Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false);
function Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false): Boolean;
procedure RecalcularImportes(AFactura: IBizFacturaCliente);
function EsModificable(AFactura: IBizFacturaCliente): Boolean;
function EsEliminable(AFactura: IBizFacturaCliente): Boolean;
function ElegirFacturas(AFacturas : IBizFacturaCliente; AMensaje: String; AMultiSelect: Boolean): IBizFacturaCliente;
function ExtraerSeleccionados(ARecibosCliente: IBizFacturaCliente) : IBizFacturaCliente;
function ExtraerSeleccionados(ARecibosCliente: IBizFacturaCliente; const ViewGrid: IViewGridBase = Nil) : IBizFacturaCliente;
end;
TFacturasClienteController = class(TObservador, IFacturasClienteController)
@ -99,14 +99,14 @@ type
procedure RecuperarCliente(AFactura : IBizFacturaCliente);
procedure Preview(AFactura : IBizFacturaCliente; AllItems: Boolean = false);
procedure Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false);
function Print(AFactura : IBizFacturaCliente; AllItems: Boolean = false): Boolean;
procedure RecalcularImportes(AFactura: IBizFacturaCliente);
function EsModificable(AFactura: IBizFacturaCliente): Boolean;
function EsEliminable(AFactura: IBizFacturaCliente): Boolean;
function ElegirFacturas(AFacturas : IBizFacturaCliente; AMensaje: String; AMultiSelect: Boolean): IBizFacturaCliente;
function ExtraerSeleccionados(AFacturasCliente: IBizFacturaCliente) : IBizFacturaCliente;
function ExtraerSeleccionados(AFacturasCliente: IBizFacturaCliente; Const ViewGrid: IViewGridBase = Nil) : IBizFacturaCliente;
end;
implementation
@ -863,13 +863,26 @@ begin
end;
end;
function TFacturasClienteController.ExtraerSeleccionados(AFacturasCliente: IBizFacturaCliente): IBizFacturaCliente;
function TFacturasClienteController.ExtraerSeleccionados(AFacturasCliente: IBizFacturaCliente; Const ViewGrid: IViewGridBase = Nil): IBizFacturaCliente;
var
ASeleccionados : IBizFacturaCliente;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := (Self.Buscar(ID_NULO) as IBizFacturaCliente);
CopyDataTable(AFacturasCliente.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
procedure TFacturasClienteController.FiltrarEmpresa(AFactura: IBizFacturaCliente);
@ -980,12 +993,13 @@ begin
end;
end;
procedure TFacturasClienteController.Print(AFactura: IBizFacturaCliente; AllItems: Boolean = false);
function TFacturasClienteController.Print(AFactura: IBizFacturaCliente; AllItems: Boolean = false): Boolean;
var
AReportController : IFacturasClienteReportController;
ID_Facturas: TStringList;
begin
Result := False;
AReportController := TFacturasClienteReportController.Create;
try
ID_Facturas := TStringList.Create;
@ -1007,7 +1021,7 @@ begin
else
ID_Facturas.Add(IntToStr(AFactura.ID));
AReportController.Print(ID_Facturas.CommaText);
Result := AReportController.Print(ID_Facturas.CommaText);
finally
AReportController := NIL;

View File

@ -11,7 +11,7 @@ type
IFacturasClienteReportController = interface
['{A0F41767-4FF6-4BAE-9FC9-894DD721D756}']
procedure Preview(const AFacturaID : String);
procedure Print(const AFacturaID : String);
function Print(const AFacturaID : String): Boolean;
end;
TFacturasClienteReportController = class(TInterfacedObject, IFacturasClienteReportController)
@ -24,7 +24,7 @@ type
destructor Destroy; override;
procedure Preview(const AFacturaID : String);
procedure Print(const AFacturaID : String);
function Print(const AFacturaID : String): Boolean;
end;
@ -79,11 +79,12 @@ begin
AEditor.Preview;
end;
procedure TFacturasClienteReportController.Print(const AFacturaID : String);
function TFacturasClienteReportController.Print(const AFacturaID : String): Boolean;
var
AStream: Binary;
AEditor : IEditorFacturasClientePreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -103,7 +104,7 @@ begin
begin
AEditor.TablaImpresion := nme_FacturasCliente;
AEditor.IdTablaImpresion := AFacturaID;
AEditor.Print;
Result := AEditor.Print;
end;
end;

View File

@ -120,13 +120,6 @@ begin
frxReport.LoadFromFile(DarRutaInformes + rptFacturaCliente, True);
frxReport.PrepareReport(False);
{ with TsrvImpresiones.Create(NIL) do
try
AnadirMarcaImpresion(nme_FacturasCliente, ID);
finally
Free;
end;
}
finally
AStream.Free;
dsMaster := Nil;

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=519
Activate=1

View File

@ -294,19 +294,7 @@ begin
// Si la factura tiene detalles hay que mirar si los descuentos y otros campos
// para los artículos hay que cambiarlos.
if (FFactura.Detalles.RecordCount > 0) then
begin
FDetallesController := TDetallesFacturaClienteController.Create;
try
FDetallesController.ActualizarDetalles(FFactura.Detalles, FFactura.Cliente);
//En caso de ser un abono también debe cambiar el signo a los detalles
if (Factura.TIPO = CTE_TIPO_ABONO) then
Controller.DetallesController.CambiarSignoDetalles(FFactura.Detalles);
finally
FDetallesController := NIL;
end;
end;
FController.DetallesController.ActualizarDetalles(FFactura.Detalles, FFactura.Cliente);
end;
procedure TfEditorFacturaCliente.pgPaginasChanging(Sender: TObject;

View File

@ -64,7 +64,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
inherited StatusBar: TJvStatusBar
Top = 556
Width = 640
ExplicitTop = 647
ExplicitTop = 556
ExplicitWidth = 640
end
inline frViewFacturasCliente1: TfrViewFacturasCliente [3]
@ -83,12 +83,12 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
ReadOnly = False
ExplicitTop = 102
ExplicitWidth = 640
ExplicitHeight = 545
ExplicitHeight = 454
inherited cxGrid: TcxGrid
Width = 640
Height = 326
ExplicitWidth = 640
ExplicitHeight = 417
ExplicitHeight = 326
inherited cxGridView: TcxGridDBTableView
DataController.Summary.DefaultGroupSummaryItems = <
item
@ -123,6 +123,9 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Kind = skSum
Column = frViewFacturasCliente1.cxGridViewIMPORTE_TOTAL
end>
inherited cxGridViewNUM_COPIAS: TcxGridDBColumn
IsCaptionAssigned = True
end
inherited cxGridViewBASE_IMPONIBLE: TcxGridDBColumn
Visible = True
end
@ -137,16 +140,16 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
Width = 640
ExplicitWidth = 640
inherited txtFiltroTodo: TcxTextEdit
ExplicitWidth = 273
Width = 273
ExplicitWidth = 457
Width = 457
end
inherited edtFechaIniFiltro: TcxDateEdit
ExplicitWidth = 121
Width = 121
ExplicitWidth = 239
Width = 239
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 295
ExplicitLeft = 295
Left = 367
ExplicitLeft = 367
ExplicitWidth = 244
Width = 244
end
@ -163,7 +166,7 @@ inherited fEditorFacturasCliente: TfEditorFacturasCliente
end
inherited pnlAgrupaciones: TTBXDockablePanel
Top = 428
ExplicitTop = 519
ExplicitTop = 428
ExplicitWidth = 640
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 640

View File

@ -156,7 +156,7 @@ begin
if (Application.MessageBox('¿Desea borrar las facturas/abonos de cliente seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas) as IBizFacturaCliente;
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas, ViewGrid) as IBizFacturaCliente;
end
end
else begin
@ -246,13 +246,14 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas) as IBizFacturaCliente;
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas, ViewGrid) as IBizFacturaCliente;
end
else
AFacturas := Facturas;
if Assigned(AFacturas) then
FController.Print(AFacturas, AllItems);
if FController.Print(AFacturas, AllItems) then
RefrescarInterno;
end;
end;
end;
@ -346,7 +347,7 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas) as IBizFacturaCliente;
AFacturas := (Controller as IFacturasClienteController).ExtraerSeleccionados(Facturas, ViewGrid) as IBizFacturaCliente;
end
else
AFacturas := Facturas;

View File

@ -6,8 +6,4 @@ inherited frViewDetallesFacturaCliente: TfrViewDetallesFacturaCliente
end
end
end
inherited TBXDock1: TTBXDock
ExplicitTop = 46
ExplicitWidth = 451
end
end

View File

@ -28,6 +28,7 @@ type
procedure SetFactura(const Value: IBizFacturaCliente);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
@ -43,18 +44,18 @@ uses uDetallesFacturaClienteController;
function TfrViewDetallesFacturaCliente.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin
Result := (Controller as IDetallesFacturaClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Factura.Cliente.ID);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).CambiarSignoDetalles(Detalles);
Result := (Controller as IDetallesFacturaClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Factura.Cliente.ID, -1)
else
Result := (Controller as IDetallesFacturaClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Factura.Cliente.ID);
end;
procedure TfrViewDetallesFacturaCliente.AnadirArticulosInterno;
begin
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).CambiarSignoDetalles(Detalles);
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, true, -1)
else
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente);
end;
function TfrViewDetallesFacturaCliente.GetFactura: IBizFacturaCliente;
@ -62,6 +63,14 @@ begin
Result := FFactura;
end;
procedure TfrViewDetallesFacturaCliente.RellenarArticulosInterno;
begin
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, False, -1)
else
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, False);
end;
procedure TfrViewDetallesFacturaCliente.SetFactura(const Value: IBizFacturaCliente);
begin
FFactura := Value;

View File

@ -23,8 +23,11 @@ inherited frViewFacturasCliente: TfrViewFacturasCliente
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewNUM_COPIAS: TcxGridDBColumn
DataBinding.FieldName = 'NUM_COPIAS'
OnCustomDrawCell = cxGridViewNUM_COPIASCustomDrawCell
MinWidth = 30
Options.HorzSizing = False
VisibleForCustomization = False
Width = 25
Width = 30
IsCaptionAssigned = True
end
object cxGridViewTIPO: TcxGridDBColumn
@ -502,6 +505,20 @@ inherited frViewFacturasCliente: TfrViewFacturasCliente
064200A70120096201BA0100A6C62916A56F74520000000049454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000E54944415478DADD902172C3301045BF4F10C3320B9645B0ACEE0D7C
83F806F5110C0BD51B6C99A160E1C2C085850B0D372C655965DCA28C3D9DB27C
CD8E44FEDBFF55E19FAAEE104013B77EF53ED100B3595967637A1B7813B098C7
F8149E435DC3CE807C29F2943FD48C784ABC0520371FF64D83D377597FF201F8
28C899DE39D3B005D0AE8B0DB0FB3597143A2B98195EA3DA0248DBC67D79FF98
B100682278857540224EF131BCD64BFF62363FE215540594C675C098728BB3F5
2184031C72DDAE1EFFC89EC85EE493D63FB1A81F526BA65D7808BDA8EE1C0611
B969BE09F8ABEE007001C1D97F1131BF40440000000049454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end>
Left = 56
Top = 48

View File

@ -64,6 +64,9 @@ type
procedure actProvinciaExecute(Sender: TObject);
procedure actProvinciaUpdate(Sender: TObject);
procedure actClienteUpdate(Sender: TObject);
procedure cxGridViewNUM_COPIASCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
//Filtros relativos a la vista
@ -184,6 +187,23 @@ begin
RefrescarFiltro;
end;
procedure TfrViewFacturasCliente.cxGridViewNUM_COPIASCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
R : TRect;
begin
inherited;
if (AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index] <> '') then
begin
R := AViewInfo.ContentBounds;
ACanvas.FillRect(R);
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 4);
ACanvas.DrawTexT(AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index], R, cxAlignCenter or cxAlignVCenter);
ADone := True;
end;
end;
procedure TfrViewFacturasCliente.cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);

View File

@ -9,7 +9,7 @@ uses
type
IDetallesFacturaProveedorController = interface(IControllerDetallesArticulos)
['{49F6199E-E031-42F5-AEA5-E70C3E3479A1}']
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor);
procedure AnadirDetalleFacturaAsociadaAbono(ADetalles: IBizDetallesFacturaProveedor; AReferencia: String; AFecha: String);
procedure DesglosarPorteDetalles(ImportePorte: Currency; ADetalles: IDAStronglyTypedDataTable);
@ -32,7 +32,7 @@ type
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
public
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirDetalleFacturaAsociadaAbono(ADetalles: IBizDetallesFacturaProveedor; AReferencia: String; AFecha: String);
constructor Create; override;
@ -63,16 +63,25 @@ begin
end;
end;
procedure TDetallesFacturaProveedorController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor);
procedure TDetallesFacturaProveedorController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True; const ACantidad: Integer = 1);
var
AArticulos: IBizArticulo;
begin
if Assigned(ADetalles) then
begin
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
try
AArticulos := (FArticulosController as IArticulosFacturaProveedorController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a esta factura de Proveedor', True, AProveedor);
Add(ADetalles, AArticulos);
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosFacturaProveedorController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a esta factura de Proveedor', True, AProveedor);
Add(ADetalles, AArticulos, ACantidad)
end
else
begin
AArticulos := (FArticulosController as IArticulosFacturaProveedorController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a esta factura de Proveedor', False, AProveedor);
RellenarDetalle(ADetalles, AArticulos, ACantidad);
end;
finally
AArticulos := Nil;
end;

View File

@ -6,7 +6,7 @@ interface
uses
Classes, SysUtils, uDADataTable, uControllerBase, uIDataModuleFacturasProveedor,
uProveedoresController, uDetallesFacturaProveedorController, uBizFacturasProveedor,
uBizAlbaranesProveedor;
uBizAlbaranesProveedor, uViewGridBase;
type
IFacturasProveedorController = interface(IObservador)
@ -39,14 +39,14 @@ type
function GenerarAbono(AFactura: IBizFacturaProveedor): IBizFacturaProveedor;
procedure Preview(AFactura : IBizFacturaProveedor; AllItems: Boolean = false);
procedure Print(AFactura : IBizFacturaProveedor; AllItems: Boolean = false);
function Print(AFactura : IBizFacturaProveedor; AllItems: Boolean = false): Boolean;
procedure RecalcularImportes(FFactura: IBizFacturaProveedor);
function EsModificable(AFactura: IBizFacturaProveedor): Boolean;
function EsEliminable(AFactura: IBizFacturaProveedor): Boolean;
function ElegirFacturas(AFacturas : IBizFacturaProveedor; AMensaje: String; AMultiSelect: Boolean): IBizFacturaProveedor;
function ExtraerSeleccionados(ARecibosProveedor: IBizFacturaProveedor) : IBizFacturaProveedor;
function ExtraerSeleccionados(ARecibosProveedor: IBizFacturaProveedor; Const ViewGrid: IViewGridBase = Nil) : IBizFacturaProveedor;
end;
TFacturasProveedorController = class(TObservador, IFacturasProveedorController)
@ -98,14 +98,14 @@ type
procedure RecuperarProveedor(AFactura : IBizFacturaProveedor);
procedure Preview(AFactura : IBizFacturaProveedor; AllItems: Boolean = false);
procedure Print(AFactura : IBizFacturaProveedor; AllItems: Boolean = false);
function Print(AFactura : IBizFacturaProveedor; AllItems: Boolean = false): Boolean;
procedure RecalcularImportes(FFactura: IBizFacturaProveedor);
function EsModificable(AFactura: IBizFacturaProveedor): Boolean;
function EsEliminable(AFactura: IBizFacturaProveedor): Boolean;
function ElegirFacturas(AFacturas : IBizFacturaProveedor; AMensaje: String; AMultiSelect: Boolean): IBizFacturaProveedor;
function ExtraerSeleccionados(AFacturasProveedor: IBizFacturaProveedor) : IBizFacturaProveedor;
function ExtraerSeleccionados(AFacturasProveedor: IBizFacturaProveedor; Const ViewGrid: IViewGridBase = Nil) : IBizFacturaProveedor;
end;
implementation
@ -865,13 +865,26 @@ begin
end;
end;
function TFacturasProveedorController.ExtraerSeleccionados(AFacturasProveedor: IBizFacturaProveedor): IBizFacturaProveedor;
function TFacturasProveedorController.ExtraerSeleccionados(AFacturasProveedor: IBizFacturaProveedor; Const ViewGrid: IViewGridBase = Nil): IBizFacturaProveedor;
var
ASeleccionados : IBizFacturaProveedor;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := (Self.Buscar(ID_NULO) as IBizFacturaProveedor);
CopyDataTable(AFacturasProveedor.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
procedure TFacturasProveedorController.FiltrarEmpresa(AFactura: IBizFacturaProveedor);
@ -983,12 +996,13 @@ begin
end;
end;
procedure TFacturasProveedorController.Print(AFactura: IBizFacturaProveedor; AllItems: Boolean = false);
function TFacturasProveedorController.Print(AFactura: IBizFacturaProveedor; AllItems: Boolean = false): Boolean;
var
AReportController : IFacturasProveedorReportController;
ID_Facturas: TStringList;
begin
Result := False;
AReportController := TFacturasProveedorReportController.Create;
try
ID_Facturas := TStringList.Create;
@ -1010,7 +1024,7 @@ begin
else
ID_Facturas.Add(IntToStr(AFactura.ID));
AReportController.Print(ID_Facturas.CommaText);
Result := AReportController.Print(ID_Facturas.CommaText);
finally
AReportController := NIL;

View File

@ -10,7 +10,7 @@ type
IFacturasProveedorReportController = interface
['{551F82DC-B8DC-482E-A20D-15003E845078}']
procedure Preview(const AFacturaID : String);
procedure Print(const AFacturaID : String);
function Print(const AFacturaID : String): Boolean;
end;
TFacturasProveedorReportController = class(TInterfacedObject, IFacturasProveedorReportController)
@ -22,7 +22,7 @@ type
destructor Destroy; override;
procedure Preview(const AFacturaID : String);
procedure Print(const AFacturaID : String);
function Print(const AFacturaID : String): Boolean;
end;
@ -30,7 +30,8 @@ implementation
uses
uROTypes, uEditorRegistryUtils, uIEditorFacturasProveedorPreview,
uEditorPreview, uDataModuleFacturasProveedor, uEditorBase, cxControls;
uEditorPreview, uDataModuleFacturasProveedor, uEditorBase, cxControls,
schFacturasProveedorClient_Intf;
{ TFacturasProveedorReportController }
@ -76,11 +77,12 @@ begin
AEditor.Preview;
end;
procedure TFacturasProveedorReportController.Print(const AFacturaID : String);
function TFacturasProveedorReportController.Print(const AFacturaID : String): Boolean;
var
AStream: Binary;
AEditor : IEditorFacturasProveedorPreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -97,7 +99,11 @@ begin
end;
if Assigned(AEditor) then
AEditor.Print
begin
AEditor.TablaImpresion := nme_FacturasProveedor;
AEditor.IdTablaImpresion := AFacturaID;
Result := AEditor.Print;
end;
end;
end.

View File

@ -35,7 +35,7 @@ object DataModuleFacturasProveedor: TDataModuleFacturasProveedor
Name = 'User'
ParamType = fIn
DataType = rtString
Value = 'Administrador'
Value = 'Luis'
end
item
Name = 'Password'
@ -483,6 +483,17 @@ object DataModuleFacturasProveedor: TDataModuleFacturasProveedor
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'FECHA_VENCIMIENTO'
DataType = datDateTime

View File

@ -9,11 +9,11 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_darReferencia = '{5A31B310-B21D-468B-963E-0BB3D56FF098}';
RID_FacturasProveedor = '{7E2B16C4-976C-4809-9E04-2B6B5C91AF87}';
RID_FacturasProveedor_Detalles = '{8A0BE5E9-157E-4CCC-8EF1-A29CDBA4E28A}';
RID_FacturasProveedor_Detalles_Refresh = '{0DFFA036-18F8-4957-9991-669FC8EB4F42}';
RID_FacturasProveedor_Refresh = '{3FA04195-2172-40A8-915E-9B961949C107}';
RID_darReferencia = '{8A6AF6AE-FDD3-46DD-9EBB-D2E6C723607B}';
RID_FacturasProveedor = '{AE87472C-8D75-440E-A9DB-4CC1913226D6}';
RID_FacturasProveedor_Detalles = '{DD2FFE30-C1BF-4736-838E-5D1EA821A1EA}';
RID_FacturasProveedor_Detalles_Refresh = '{9876655E-E769-445A-A8D5-54AAD69416C7}';
RID_FacturasProveedor_Refresh = '{58E8EF55-3D5F-48AD-A700-53ED97F7623D}';
{ Data table names }
nme_darReferencia = 'darReferencia';
@ -60,6 +60,7 @@ const
fld_FacturasProveedorID_TIPO_IVA = 'ID_TIPO_IVA';
fld_FacturasProveedorIMPORTE_NETO = 'IMPORTE_NETO';
fld_FacturasProveedorIMPORTE_PORTE = 'IMPORTE_PORTE';
fld_FacturasProveedorNUM_COPIAS = 'NUM_COPIAS';
fld_FacturasProveedorFECHA_VENCIMIENTO = 'FECHA_VENCIMIENTO';
{ FacturasProveedor field indexes }
@ -94,7 +95,8 @@ const
idx_FacturasProveedorID_TIPO_IVA = 28;
idx_FacturasProveedorIMPORTE_NETO = 29;
idx_FacturasProveedorIMPORTE_PORTE = 30;
idx_FacturasProveedorFECHA_VENCIMIENTO = 31;
idx_FacturasProveedorNUM_COPIAS = 31;
idx_FacturasProveedorFECHA_VENCIMIENTO = 32;
{ FacturasProveedor_Detalles fields }
fld_FacturasProveedor_DetallesID = 'ID';
@ -192,6 +194,7 @@ const
fld_FacturasProveedor_RefreshID_TIPO_IVA = 'ID_TIPO_IVA';
fld_FacturasProveedor_RefreshIMPORTE_NETO = 'IMPORTE_NETO';
fld_FacturasProveedor_RefreshIMPORTE_PORTE = 'IMPORTE_PORTE';
fld_FacturasProveedor_RefreshNUM_COPIAS = 'NUM_COPIAS';
fld_FacturasProveedor_RefreshFECHA_VENCIMIENTO = 'FECHA_VENCIMIENTO';
{ FacturasProveedor_Refresh field indexes }
@ -226,12 +229,13 @@ const
idx_FacturasProveedor_RefreshID_TIPO_IVA = 28;
idx_FacturasProveedor_RefreshIMPORTE_NETO = 29;
idx_FacturasProveedor_RefreshIMPORTE_PORTE = 30;
idx_FacturasProveedor_RefreshFECHA_VENCIMIENTO = 31;
idx_FacturasProveedor_RefreshNUM_COPIAS = 31;
idx_FacturasProveedor_RefreshFECHA_VENCIMIENTO = 32;
type
{ IdarReferencia }
IdarReferencia = interface(IDAStronglyTypedDataTable)
['{65EFF80E-72D6-4702-8DE2-EAB9E67C2CED}']
['{E4CA7807-EBBA-41AD-B9B5-38D4318CA39F}']
{ Property getters and setters }
function GetVALORValue: String;
procedure SetVALORValue(const aValue: String);
@ -260,7 +264,7 @@ type
{ IFacturasProveedor }
IFacturasProveedor = interface(IDAStronglyTypedDataTable)
['{02E381CF-8B87-4CAC-BBB3-BE1303EFC6EA}']
['{F72C5456-F7D2-47E6-B6E4-45DD1622A9F6}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -324,6 +328,8 @@ type
procedure SetIMPORTE_NETOValue(const aValue: Currency);
function GetIMPORTE_PORTEValue: Currency;
procedure SetIMPORTE_PORTEValue(const aValue: Currency);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
function GetFECHA_VENCIMIENTOValue: DateTime;
procedure SetFECHA_VENCIMIENTOValue(const aValue: DateTime);
@ -360,6 +366,7 @@ type
property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue;
property IMPORTE_NETO: Currency read GetIMPORTE_NETOValue write SetIMPORTE_NETOValue;
property IMPORTE_PORTE: Currency read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property FECHA_VENCIMIENTO: DateTime read GetFECHA_VENCIMIENTOValue write SetFECHA_VENCIMIENTOValue;
end;
@ -430,6 +437,8 @@ type
procedure SetIMPORTE_NETOValue(const aValue: Currency); virtual;
function GetIMPORTE_PORTEValue: Currency; virtual;
procedure SetIMPORTE_PORTEValue(const aValue: Currency); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
function GetFECHA_VENCIMIENTOValue: DateTime; virtual;
procedure SetFECHA_VENCIMIENTOValue(const aValue: DateTime); virtual;
@ -465,6 +474,7 @@ type
property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue;
property IMPORTE_NETO: Currency read GetIMPORTE_NETOValue write SetIMPORTE_NETOValue;
property IMPORTE_PORTE: Currency read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property FECHA_VENCIMIENTO: DateTime read GetFECHA_VENCIMIENTOValue write SetFECHA_VENCIMIENTOValue;
public
@ -475,7 +485,7 @@ type
{ IFacturasProveedor_Detalles }
IFacturasProveedor_Detalles = interface(IDAStronglyTypedDataTable)
['{09638FB4-2429-47C7-BEE6-695CCA2B7429}']
['{398A387A-683C-48EF-AD52-89A3163736C2}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -582,7 +592,7 @@ type
{ IFacturasProveedor_Detalles_Refresh }
IFacturasProveedor_Detalles_Refresh = interface(IDAStronglyTypedDataTable)
['{34CAF884-E288-4691-BBB0-1FB65C392944}']
['{9080B14F-8AA6-4096-9790-42188A3AE8D8}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -689,7 +699,7 @@ type
{ IFacturasProveedor_Refresh }
IFacturasProveedor_Refresh = interface(IDAStronglyTypedDataTable)
['{9AC32D5C-9DDF-471B-95AA-FFC958A99C41}']
['{786F2A15-EDAF-4AA9-BD48-027B1EEEC55A}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -753,6 +763,8 @@ type
procedure SetIMPORTE_NETOValue(const aValue: Currency);
function GetIMPORTE_PORTEValue: Currency;
procedure SetIMPORTE_PORTEValue(const aValue: Currency);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
function GetFECHA_VENCIMIENTOValue: DateTime;
procedure SetFECHA_VENCIMIENTOValue(const aValue: DateTime);
@ -789,6 +801,7 @@ type
property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue;
property IMPORTE_NETO: Currency read GetIMPORTE_NETOValue write SetIMPORTE_NETOValue;
property IMPORTE_PORTE: Currency read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property FECHA_VENCIMIENTO: DateTime read GetFECHA_VENCIMIENTOValue write SetFECHA_VENCIMIENTOValue;
end;
@ -859,6 +872,8 @@ type
procedure SetIMPORTE_NETOValue(const aValue: Currency); virtual;
function GetIMPORTE_PORTEValue: Currency; virtual;
procedure SetIMPORTE_PORTEValue(const aValue: Currency); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
function GetFECHA_VENCIMIENTOValue: DateTime; virtual;
procedure SetFECHA_VENCIMIENTOValue(const aValue: DateTime); virtual;
@ -894,6 +909,7 @@ type
property ID_TIPO_IVA: Integer read GetID_TIPO_IVAValue write SetID_TIPO_IVAValue;
property IMPORTE_NETO: Currency read GetIMPORTE_NETOValue write SetIMPORTE_NETOValue;
property IMPORTE_PORTE: Currency read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property FECHA_VENCIMIENTO: DateTime read GetFECHA_VENCIMIENTOValue write SetFECHA_VENCIMIENTOValue;
public
@ -1250,6 +1266,16 @@ begin
DataTable.Fields[idx_FacturasProveedorIMPORTE_PORTE].AsCurrency := aValue;
end;
function TFacturasProveedorDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_FacturasProveedorNUM_COPIAS].AsInteger;
end;
procedure TFacturasProveedorDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_FacturasProveedorNUM_COPIAS].AsInteger := aValue;
end;
function TFacturasProveedorDataTableRules.GetFECHA_VENCIMIENTOValue: DateTime;
begin
result := DataTable.Fields[idx_FacturasProveedorFECHA_VENCIMIENTO].AsDateTime;
@ -1887,6 +1913,16 @@ begin
DataTable.Fields[idx_FacturasProveedor_RefreshIMPORTE_PORTE].AsCurrency := aValue;
end;
function TFacturasProveedor_RefreshDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_FacturasProveedor_RefreshNUM_COPIAS].AsInteger;
end;
procedure TFacturasProveedor_RefreshDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_FacturasProveedor_RefreshNUM_COPIAS].AsInteger := aValue;
end;
function TFacturasProveedor_RefreshDataTableRules.GetFECHA_VENCIMIENTOValue: DateTime;
begin
result := DataTable.Fields[idx_FacturasProveedor_RefreshFECHA_VENCIMIENTO].AsDateTime;

View File

@ -9,16 +9,16 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_darReferenciaDelta = '{9811D236-BBAF-41FA-BA7C-27CFA776F2BA}';
RID_FacturasProveedorDelta = '{D0D34618-4ADB-4D35-96BF-AB713867C946}';
RID_FacturasProveedor_DetallesDelta = '{EB4106FB-07FA-4683-9055-D44215CB3A30}';
RID_FacturasProveedor_Detalles_RefreshDelta = '{DF491E40-B1CA-4976-9167-E3B022F545D3}';
RID_FacturasProveedor_RefreshDelta = '{F4B987F7-529B-43A3-9264-157ACC3C6BAC}';
RID_darReferenciaDelta = '{11F40542-0486-4EEB-A23C-A54896CED721}';
RID_FacturasProveedorDelta = '{8A5AD103-5D7D-4736-AE18-AAF5F983D4E7}';
RID_FacturasProveedor_DetallesDelta = '{529B369E-EA3A-4860-91C7-E1B4825BE2BE}';
RID_FacturasProveedor_Detalles_RefreshDelta = '{D88F14D7-712F-4571-A0C9-EC6A3170D976}';
RID_FacturasProveedor_RefreshDelta = '{50CC524D-33DB-47FB-9154-7529F500B4DE}';
type
{ IdarReferenciaDelta }
IdarReferenciaDelta = interface(IdarReferencia)
['{9811D236-BBAF-41FA-BA7C-27CFA776F2BA}']
['{11F40542-0486-4EEB-A23C-A54896CED721}']
{ Property getters and setters }
function GetOldVALORValue : String;
@ -47,7 +47,7 @@ type
{ IFacturasProveedorDelta }
IFacturasProveedorDelta = interface(IFacturasProveedor)
['{D0D34618-4ADB-4D35-96BF-AB713867C946}']
['{8A5AD103-5D7D-4736-AE18-AAF5F983D4E7}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -80,6 +80,7 @@ type
function GetOldID_TIPO_IVAValue : Integer;
function GetOldIMPORTE_NETOValue : Currency;
function GetOldIMPORTE_PORTEValue : Currency;
function GetOldNUM_COPIASValue : Integer;
function GetOldFECHA_VENCIMIENTOValue : DateTime;
{ Properties }
@ -114,6 +115,7 @@ type
property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue;
property OldIMPORTE_NETO : Currency read GetOldIMPORTE_NETOValue;
property OldIMPORTE_PORTE : Currency read GetOldIMPORTE_PORTEValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
property OldFECHA_VENCIMIENTO : DateTime read GetOldFECHA_VENCIMIENTOValue;
end;
@ -215,6 +217,9 @@ type
function GetIMPORTE_PORTEValue: Currency; virtual;
function GetOldIMPORTE_PORTEValue: Currency; virtual;
procedure SetIMPORTE_PORTEValue(const aValue: Currency); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
function GetFECHA_VENCIMIENTOValue: DateTime; virtual;
function GetOldFECHA_VENCIMIENTOValue: DateTime; virtual;
procedure SetFECHA_VENCIMIENTOValue(const aValue: DateTime); virtual;
@ -282,6 +287,8 @@ type
property OldIMPORTE_NETO : Currency read GetOldIMPORTE_NETOValue;
property IMPORTE_PORTE : Currency read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue;
property OldIMPORTE_PORTE : Currency read GetOldIMPORTE_PORTEValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
property FECHA_VENCIMIENTO : DateTime read GetFECHA_VENCIMIENTOValue write SetFECHA_VENCIMIENTOValue;
property OldFECHA_VENCIMIENTO : DateTime read GetOldFECHA_VENCIMIENTOValue;
@ -293,7 +300,7 @@ type
{ IFacturasProveedor_DetallesDelta }
IFacturasProveedor_DetallesDelta = interface(IFacturasProveedor_Detalles)
['{EB4106FB-07FA-4683-9055-D44215CB3A30}']
['{529B369E-EA3A-4860-91C7-E1B4825BE2BE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_FACTURAValue : Integer;
@ -413,7 +420,7 @@ type
{ IFacturasProveedor_Detalles_RefreshDelta }
IFacturasProveedor_Detalles_RefreshDelta = interface(IFacturasProveedor_Detalles_Refresh)
['{DF491E40-B1CA-4976-9167-E3B022F545D3}']
['{D88F14D7-712F-4571-A0C9-EC6A3170D976}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_FACTURAValue : Integer;
@ -533,7 +540,7 @@ type
{ IFacturasProveedor_RefreshDelta }
IFacturasProveedor_RefreshDelta = interface(IFacturasProveedor_Refresh)
['{F4B987F7-529B-43A3-9264-157ACC3C6BAC}']
['{50CC524D-33DB-47FB-9154-7529F500B4DE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -566,6 +573,7 @@ type
function GetOldID_TIPO_IVAValue : Integer;
function GetOldIMPORTE_NETOValue : Currency;
function GetOldIMPORTE_PORTEValue : Currency;
function GetOldNUM_COPIASValue : Integer;
function GetOldFECHA_VENCIMIENTOValue : DateTime;
{ Properties }
@ -600,6 +608,7 @@ type
property OldID_TIPO_IVA : Integer read GetOldID_TIPO_IVAValue;
property OldIMPORTE_NETO : Currency read GetOldIMPORTE_NETOValue;
property OldIMPORTE_PORTE : Currency read GetOldIMPORTE_PORTEValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
property OldFECHA_VENCIMIENTO : DateTime read GetOldFECHA_VENCIMIENTOValue;
end;
@ -701,6 +710,9 @@ type
function GetIMPORTE_PORTEValue: Currency; virtual;
function GetOldIMPORTE_PORTEValue: Currency; virtual;
procedure SetIMPORTE_PORTEValue(const aValue: Currency); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
function GetFECHA_VENCIMIENTOValue: DateTime; virtual;
function GetOldFECHA_VENCIMIENTOValue: DateTime; virtual;
procedure SetFECHA_VENCIMIENTOValue(const aValue: DateTime); virtual;
@ -768,6 +780,8 @@ type
property OldIMPORTE_NETO : Currency read GetOldIMPORTE_NETOValue;
property IMPORTE_PORTE : Currency read GetIMPORTE_PORTEValue write SetIMPORTE_PORTEValue;
property OldIMPORTE_PORTE : Currency read GetOldIMPORTE_PORTEValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
property FECHA_VENCIMIENTO : DateTime read GetFECHA_VENCIMIENTOValue write SetFECHA_VENCIMIENTOValue;
property OldFECHA_VENCIMIENTO : DateTime read GetOldFECHA_VENCIMIENTOValue;
@ -1287,6 +1301,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorIMPORTE_PORTE] := aValue;
end;
function TFacturasProveedorBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorNUM_COPIAS];
end;
function TFacturasProveedorBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProveedorNUM_COPIAS];
end;
procedure TFacturasProveedorBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorNUM_COPIAS] := aValue;
end;
function TFacturasProveedorBusinessProcessorRules.GetFECHA_VENCIMIENTOValue: DateTime;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedorFECHA_VENCIMIENTO];
@ -2225,6 +2254,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedor_RefreshIMPORTE_PORTE] := aValue;
end;
function TFacturasProveedor_RefreshBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedor_RefreshNUM_COPIAS];
end;
function TFacturasProveedor_RefreshBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_FacturasProveedor_RefreshNUM_COPIAS];
end;
procedure TFacturasProveedor_RefreshBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedor_RefreshNUM_COPIAS] := aValue;
end;
function TFacturasProveedor_RefreshBusinessProcessorRules.GetFECHA_VENCIMIENTOValue: DateTime;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_FacturasProveedor_RefreshFECHA_VENCIMIENTO];

View File

@ -76,8 +76,8 @@ object srvFacturasProveedor: TsrvFacturasProveedor
'TAL, OBSERVACIONES, ID_PROVEEDOR, NIF_CIF, NOMBRE, CALLE,'#10' PO' +
'BLACION, PROVINCIA, CODIGO_POSTAL, FECHA_ALTA, FECHA_MODIFICACIO' +
'N,'#10' USUARIO, ID_FORMA_PAGO, RECARGO_EQUIVALENCIA, ID_TIPO_IVA' +
','#10' IMPORTE_NETO, IMPORTE_PORTE'#10' FROM'#10' V_FACTURAS_PROVEEDO' +
'R'
','#10' IMPORTE_NETO, IMPORTE_PORTE, NUM_COPIAS'#10' FROM'#10' V_FACTU' +
'RAS_PROVEEDOR'
StatementType = stSQL
ColumnMappings = <
item
@ -92,6 +92,14 @@ object srvFacturasProveedor: TsrvFacturasProveedor
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'FECHA_FACTURA'
TableField = 'FECHA_FACTURA'
@ -197,12 +205,8 @@ object srvFacturasProveedor: TsrvFacturasProveedor
TableField = 'IMPORTE_PORTE'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'FacturasProveedor'
@ -528,6 +532,17 @@ object srvFacturasProveedor: TsrvFacturasProveedor
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'FECHA_VENCIMIENTO'
DataType = datDateTime
@ -1038,8 +1053,8 @@ object srvFacturasProveedor: TsrvFacturasProveedor
'OTAL, OBSERVACIONES, ID_PROVEEDOR,'#10' NIF_CIF, NOMBRE, CALLE, P' +
'OBLACION, PROVINCIA, CODIGO_POSTAL, '#10' FECHA_ALTA, FECHA_MODIF' +
'ICACION, USUARIO, ID_FORMA_PAGO, '#10' RECARGO_EQUIVALENCIA, ID_T' +
'IPO_IVA, IMPORTE_NETO, IMPORTE_PORTE'#10' FROM'#10' V_FACTURAS_PROVE' +
'EDOR'#10' WHERE ID = :ID'
'IPO_IVA, IMPORTE_NETO, IMPORTE_PORTE, NUM_COPIAS'#10' FROM'#10' V_FA' +
'CTURAS_PROVEEDOR'#10' WHERE ID = :ID'
StatementType = stSQL
ColumnMappings = <
item
@ -1054,6 +1069,14 @@ object srvFacturasProveedor: TsrvFacturasProveedor
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'FECHA_FACTURA'
TableField = 'FECHA_FACTURA'
@ -1159,12 +1182,8 @@ object srvFacturasProveedor: TsrvFacturasProveedor
TableField = 'IMPORTE_PORTE'
end
item
DatasetField = 'REFERENCIA_PROVEEDOR'
TableField = 'REFERENCIA_PROVEEDOR'
end
item
DatasetField = 'TIPO'
TableField = 'TIPO'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'FacturasProveedor_Refresh'
@ -1491,6 +1510,17 @@ object srvFacturasProveedor: TsrvFacturasProveedor
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'FECHA_VENCIMIENTO'
DataType = datDateTime

View File

@ -172,6 +172,10 @@ inherited fEditorFacturaProveedor: TfEditorFacturaProveedor
object pagContenido: TTabSheet
Caption = 'Contenido'
ImageIndex = 1
ExplicitLeft = 0
ExplicitTop = 0
ExplicitWidth = 0
ExplicitHeight = 0
inline frViewDetallesFacturaProveedor1: TfrViewDetallesFacturaProveedor
Left = 0
Top = 0

View File

@ -287,19 +287,7 @@ begin
// Si la factura tiene detalles hay que mirar si los descuentos y otros campos
// para los artículos hay que cambiarlos.
if (FFactura.Detalles.RecordCount > 0) then
begin
FDetallesController := TDetallesFacturaProveedorController.Create;
try
FDetallesController.ActualizarDetalles(FFactura.Detalles, FFactura.Proveedor);
//En caso de ser un abono también debe cambiar el signo a los detalles
if (Factura.TIPO = CTE_TIPO_ABONO) then
Controller.DetallesController.CambiarSignoDetalles(FFactura.Detalles);
finally
FDetallesController := NIL;
end;
end;
FController.DetallesController.ActualizarDetalles(FFactura.Detalles, FFactura.Proveedor);
end;
procedure TfEditorFacturaProveedor.pgPaginasChanging(Sender: TObject;

View File

@ -163,7 +163,7 @@ begin
if (Application.MessageBox('¿Desea borrar las facturas/abonos de cliente seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas) as IBizFacturaProveedor;
AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas, ViewGrid) as IBizFacturaProveedor;
end
end
else begin
@ -253,13 +253,14 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas) as IBizFacturaProveedor;
AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas, ViewGrid) as IBizFacturaProveedor;
end
else
AFacturas := Facturas;
if Assigned(AFacturas) then
FController.Print(AFacturas, AllItems);
if FController.Print(AFacturas, AllItems) then
RefrescarInterno;
end;
end;
end;
@ -352,7 +353,7 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Facturas as ISeleccionable).SelectedRecords);
AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas) as IBizFacturaProveedor;
AFacturas := (Controller as IFacturasProveedorController).ExtraerSeleccionados(Facturas, ViewGrid) as IBizFacturaProveedor;
end
else
AFacturas := Facturas;

View File

@ -28,6 +28,7 @@ type
procedure SetFactura(const Value: IBizFacturaProveedor);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
@ -43,18 +44,18 @@ uses uDetallesFacturaProveedorController;
function TfrViewDetallesFacturaProveedor.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin
Result := (Controller as IDetallesFacturaProveedorController).AnadirArticulo(Detalles, pReferencia, tProveedor);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaProveedorController).CambiarSignoDetalles(Detalles);
Result := (Controller as IDetallesFacturaProveedorController).AnadirArticulo(Detalles, pReferencia, tProveedor, -1, -1)
else
Result := (Controller as IDetallesFacturaProveedorController).AnadirArticulo(Detalles, pReferencia, tProveedor, -1, -1);
end;
procedure TfrViewDetallesFacturaProveedor.AnadirArticulosInterno;
begin
(Controller as IDetallesFacturaProveedorController).AnadirArticulos(Detalles, Factura.Proveedor);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaProveedorController).CambiarSignoDetalles(Detalles);
(Controller as IDetallesFacturaProveedorController).AnadirArticulos(Detalles, Factura.Proveedor, true, -1)
else
(Controller as IDetallesFacturaProveedorController).AnadirArticulos(Detalles, Factura.Proveedor);
end;
function TfrViewDetallesFacturaProveedor.GetFactura: IBizFacturaProveedor;
@ -62,6 +63,14 @@ begin
Result := FFactura;
end;
procedure TfrViewDetallesFacturaProveedor.RellenarArticulosInterno;
begin
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaProveedorController).AnadirArticulos(Detalles, Factura.Proveedor, False, -1)
else
(Controller as IDetallesFacturaProveedorController).AnadirArticulos(Detalles, Factura.Proveedor, False);
end;
procedure TfrViewDetallesFacturaProveedor.SetFactura(const Value: IBizFacturaProveedor);
begin
FFactura := Value;

View File

@ -10,7 +10,7 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
OnActiveTabChanged = cxGridActiveTabChanged
ExplicitWidth = 531
ExplicitHeight = 304
inherited cxGridView: TcxGridDBTableView
inherited cxGridView: TcxGridDBTableView
DataController.KeyFieldNames = 'ID'
DataController.Options = [dcoAnsiSort, dcoAssignMasterDetailKeys, dcoSaveExpanding, dcoGroupsAlwaysExpanded]
DataController.Summary.DefaultGroupSummaryItems = <
@ -33,6 +33,15 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
end>
OptionsCustomize.ColumnHidingOnGrouping = False
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewNUM_COPIAS: TcxGridDBColumn
DataBinding.FieldName = 'NUM_COPIAS'
OnCustomDrawCell = cxGridViewNUM_COPIASCustomDrawCell
MinWidth = 30
Options.HorzSizing = False
VisibleForCustomization = False
Width = 30
IsCaptionAssigned = True
end
object cxGridViewTIPO: TcxGridDBColumn
DataBinding.FieldName = 'TIPO'
PropertiesClassName = 'TcxImageComboBoxProperties'
@ -164,15 +173,27 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
inherited dxLayoutControl1: TdxLayoutControl
Width = 531
ExplicitWidth = 531
inherited txtFiltroTodo: TcxTextEdit
ExplicitWidth = 273
Width = 273
end
inherited edtFechaIniFiltro: TcxDateEdit
ExplicitWidth = 121
Width = 121
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 248
ExplicitLeft = 248
ExplicitWidth = 244
Width = 244
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel
Width = 531
ExplicitWidth = 531
inherited tbxBotones: TTBXToolbar
Width = 521
ExplicitWidth = 521
end
end
end
@ -506,6 +527,20 @@ inherited frViewFacturasProveedor: TfrViewFacturasProveedor
064200A70120096201BA0100A6C62916A56F74520000000049454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000E54944415478DADD902172C3301045BF4F10C3320B9645B0ACEE0D7C
83F806F5110C0BD51B6C99A160E1C2C085850B0D372C655965DCA28C3D9DB27C
CD8E44FEDBFF55E19FAAEE104013B77EF53ED100B3595967637A1B7813B098C7
F8149E435DC3CE807C29F2943FD48C784ABC0520371FF64D83D377597FF201F8
28C899DE39D3B005D0AE8B0DB0FB3597143A2B98195EA3DA0248DBC67D79FF98
B100682278857540224EF131BCD64BFF62363FE215540594C675C098728BB3F5
2184031C72DDAE1EFFC89EC85EE493D63FB1A81F526BA65D7808BDA8EE1C0611
B969BE09F8ABEE007001C1D97F1131BF40440000000049454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end>
Left = 56
Top = 48

View File

@ -56,6 +56,7 @@ type
TBXItem3: TTBXItem;
TBXSeparatorItem2: TTBXSeparatorItem;
cxGridViewTIPO: TcxGridDBColumn;
cxGridViewNUM_COPIAS: TcxGridDBColumn;
procedure cxGridViewStylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle);
@ -64,6 +65,9 @@ type
procedure actProveedorUpdate(Sender: TObject);
procedure actProvinciaExecute(Sender: TObject);
procedure actProvinciaUpdate(Sender: TObject);
procedure cxGridViewNUM_COPIASCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
//Filtros relativos a la vista
@ -183,6 +187,23 @@ begin
RefrescarFiltro;
end;
procedure TfrViewFacturasProveedor.cxGridViewNUM_COPIASCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
R : TRect;
begin
inherited;
if (AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index] <> '') then
begin
R := AViewInfo.ContentBounds;
ACanvas.FillRect(R);
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 4);
ACanvas.DrawTexT(AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index], R, cxAlignCenter or cxAlignVCenter);
ADone := True;
end;
end;
procedure TfrViewFacturasProveedor.cxGridViewStylesGetContentStyle(
Sender: TcxCustomGridTableView; ARecord: TcxCustomGridRecord;
AItem: TcxCustomGridTableItem; out AStyle: TcxStyle);

View File

@ -102,46 +102,6 @@ begin
inherited;
end;
{function THistoricoMovimientosController.ExtraerSeleccionados(AArticulos: IBizHistoricoMovimientos): IBizHistoricoMovimientos;
var
ASeleccionados : IBizHistoricoMovimientos;
begin
ASeleccionados := (Self.Buscar(ID_NULO) as IBizHistoricoMovimientos);
CopyDataTable(AArticulos.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
end;}
{function THistoricoMovimientosController.Ver(AArticulos: IBizHistoricoMovimientos; AHistoricoMovimientos: IBizHistoricoMovimientos): Boolean;
var
AEditor : IEditorEntradaSalidaArticulos;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
try
CreateEditor('EditorEntradaSalidaArticulos', IEditorEntradaSalidaArticulos, AEditor);
with AEditor do
begin
Controller := Self; //OJO ORDEN MUY IMPORTANTE
Articulos := AArticulos;
HistoricoMovimientos := AHistoricoMovimientos;
end;
finally
HideHourglassCursor;
end;
if Assigned(AEditor) then
try
AEditor.ShowModal;
Result := AEditor.ResultadoModalOK;
AEditor.Release;
finally
AEditor := NIL;
end;
end;}
procedure THistoricoMovimientosController.VerTodos(AHistoricoMovimientos: IBizHistoricoMovimientos);
var
AEditor : IEditorHistoricoMovimientos;

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=519
Activate=1

View File

@ -9,7 +9,7 @@ uses
type
IDetallesPedidoProveedorController = interface(IControllerDetallesArticulos)
['{942428EC-BCB8-4C56-BFA6-EB9F05D5E0DB}']
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
function ArticulosPendientes(const ID : Integer): IBizDetallesPedidoProveedorPend;
procedure DesglosarPorteDetalles(ImportePorte: Currency; ADetalles: IDAStronglyTypedDataTable);
@ -33,7 +33,7 @@ type
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
public
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor); overload;
function ArticulosPendientes(const ID : Integer): IBizDetallesPedidoProveedorPend;
constructor Create; override;
@ -63,7 +63,7 @@ begin
end;
end;
procedure TDetallesPedidoProveedorController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor);
procedure TDetallesPedidoProveedorController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; AProveedor: IBizProveedor; const ANuevaFila :Boolean = True);
var
AArticulos: IBizArticulo;
begin
@ -71,8 +71,17 @@ begin
begin
try
AArticulos := (FArticulosController.BuscarTodos as IBizArticulo);
AArticulos := (FArticulosController as IArticulosPedidoProveedorController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este pedido a proveedor', True, AProveedor);
Add(ADetalles, AArticulos);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosPedidoProveedorController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este pedido a proveedor', True, AProveedor);
Add(ADetalles, AArticulos)
end
else
begin
AArticulos := (FArticulosController as IArticulosPedidoProveedorController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a este pedido a proveedor', False, AProveedor);
RellenarDetalle(ADetalles, AArticulos);
end;
finally
AArticulos := Nil;
end;

View File

@ -6,7 +6,7 @@ interface
uses
SysUtils, uDADataTable, uEditorDBItem,
uControllerBase, uIDataModulePedidosProveedor, uProveedoresController,
uDetallesPedidoProveedorController, uBizPedidosProveedor;
uDetallesPedidoProveedorController, uBizPedidosProveedor, uViewGridBase;
type
IPedidosProveedorController = interface(IObservador)
@ -35,7 +35,7 @@ type
function Duplicar(APedido: IBizPedidoProveedor): IBizPedidoProveedor;
procedure Preview(APedido : IBizPedidoProveedor; AllItems: Boolean = false);
procedure Print(APedido : IBizPedidoProveedor; AllItems: Boolean = false);
function Print(APedido : IBizPedidoProveedor; AllItems: Boolean = false): Boolean;
procedure RecalcularImportes(APedido: IBizPedidoProveedor);
function EsModificable(APedido : IBizPedidoProveedor): Boolean;
@ -44,7 +44,7 @@ type
function CambiarSituacion(APedido: IBizPedidoProveedor; ASituacion : String; AFechaPagado: TDateTime = 0; DoPost : Boolean = True): Boolean; overload;
function CambiarSituacion(APedido: IBizPedidoProveedor): Boolean; overload;
function ExtraerSeleccionados(APedido: IBizPedidoProveedor) : IBizPedidoProveedor;
function ExtraerSeleccionados(APedido: IBizPedidoProveedor; Const ViewGrid: IViewGridBase = Nil) : IBizPedidoProveedor;
function ElegirPedidos(APedido: IBizPedidoProveedor; AMensaje: String; AMultiSelect: Boolean): IBizPedidoProveedor;
procedure RecuperarProveedor(APedido: IBizPedidoProveedor);
@ -101,7 +101,7 @@ type
function Duplicar(APedido: IBizPedidoProveedor): IBizPedidoProveedor;
procedure Preview(APedido : IBizPedidoProveedor; AllItems: Boolean = false);
procedure Print(APedido : IBizPedidoProveedor; AllItems: Boolean = false);
function Print(APedido : IBizPedidoProveedor; AllItems: Boolean = false): Boolean;
procedure RecalcularImportes(APedido: IBizPedidoProveedor);
function EsModificable(APedido : IBizPedidoProveedor): Boolean;
@ -110,7 +110,7 @@ type
function CambiarSituacion(APedido: IBizPedidoProveedor; ASituacion : String; AFechaRecepcion: TDateTime = 0; DoPost : Boolean = True): Boolean; overload;
function CambiarSituacion(APedido: IBizPedidoProveedor): Boolean; overload;
function ExtraerSeleccionados(APedido: IBizPedidoProveedor) : IBizPedidoProveedor;
function ExtraerSeleccionados(APedido: IBizPedidoProveedor; Const ViewGrid: IViewGridBase = Nil) : IBizPedidoProveedor;
function ElegirPedidos(APedido: IBizPedidoProveedor; AMensaje: String; AMultiSelect: Boolean): IBizPedidoProveedor;
procedure Limpiardireccion(APedido: IBizPedidoProveedor);
@ -651,13 +651,26 @@ begin
end;
end;
function TPedidosProveedorController.ExtraerSeleccionados(APedido: IBizPedidoProveedor): IBizPedidoProveedor;
function TPedidosProveedorController.ExtraerSeleccionados(APedido: IBizPedidoProveedor; Const ViewGrid: IViewGridBase = Nil): IBizPedidoProveedor;
var
ASeleccionados : IBizPedidoProveedor;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := (Self.Buscar(ID_NULO) as IBizPedidoProveedor);
CopyDataTable(APedido.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
procedure TPedidosProveedorController.FiltrarEmpresa(
@ -780,12 +793,13 @@ begin
end;
end;
procedure TPedidosProveedorController.Print(APedido: IBizPedidoProveedor; AllItems: Boolean = false);
function TPedidosProveedorController.Print(APedido: IBizPedidoProveedor; AllItems: Boolean = false): Boolean;
var
AReportController : IPedidosProveedorReportController;
ID_Pedidos: TStringList;
begin
Result := False;
AReportController := TPedidosProveedorReportController.Create;
try
ID_Pedidos := TStringList.Create;
@ -807,7 +821,7 @@ begin
else
ID_Pedidos.Add(IntToStr(APedido.ID));
AReportController.Print(ID_Pedidos.CommaText);
Result := AReportController.Print(ID_Pedidos.CommaText);
finally
AReportController := NIL;

View File

@ -11,7 +11,7 @@ type
IPedidosProveedorReportController = interface
['{D0686358-251C-43C4-9927-6112F2F4D3B8}']
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
TPedidosProveedorReportController = class(TInterfacedObject, IPedidosProveedorReportController)
@ -23,7 +23,7 @@ type
destructor Destroy; override;
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
@ -31,7 +31,8 @@ implementation
uses
uROTypes, uEditorRegistryUtils, uIEditorPedidosProveedorPreview,
uEditorPreview, uDataModulePedidosProveedor, uEditorBase, cxControls;
uEditorPreview, uDataModulePedidosProveedor, uEditorBase, cxControls,
schPedidosProveedorClient_Intf;
{ TPedidosProveedorReportController }
@ -77,11 +78,12 @@ begin
AEditor.Preview;
end;
procedure TPedidosProveedorReportController.Print(const AID : String);
function TPedidosProveedorReportController.Print(const AID : String): boolean;
var
AStream: Binary;
AEditor : IEditorPedidosProveedorPreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -98,7 +100,11 @@ begin
end;
if Assigned(AEditor) then
AEditor.Print
begin
AEditor.TablaImpresion := nme_PedidosProveedor;
AEditor.IdTablaImpresion := AID;
Result := AEditor.Print;
end;
end;
end.

View File

@ -498,6 +498,17 @@ object DataModulePedidosProveedor: TDataModulePedidosProveedor
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
Params = <>
MasterMappingMode = mmDataRequest
@ -875,7 +886,7 @@ object DataModulePedidosProveedor: TDataModulePedidosProveedor
Name = 'User'
ParamType = fIn
DataType = rtString
Value = 'Administrador'
Value = 'Luis'
end
item
Name = 'Password'

View File

@ -9,12 +9,12 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_DarReferencia = '{9D9C3B70-4476-4732-B123-47F58F4C108E}';
RID_PedidosProveedor = '{416EEEE9-486B-48BB-A166-C897B8AD547B}';
RID_PedidosProveedor_Detalles = '{78C3C840-8365-4799-AE68-CF6A6C91A435}';
RID_PedidosProveedor_Detalles_Refresh = '{B4C479AA-6A22-4709-98F6-411D9E0D1EA6}';
RID_PedidosProveedor_Refresh = '{50C3DBAC-DFDA-4139-BB81-C61BEE0C0169}';
RID_PedidosProveedor_Articulos_Pendientes = '{1CBEF2D9-1134-4F0C-8EAB-BBF5A7B1EFFD}';
RID_DarReferencia = '{352EF067-18AC-4EC5-938F-7527FA27AB41}';
RID_PedidosProveedor = '{7F558FB2-C09A-403E-8CDD-C2FA5061EBF9}';
RID_PedidosProveedor_Detalles = '{54D873B1-522E-4520-913C-93A64257BE8D}';
RID_PedidosProveedor_Detalles_Refresh = '{8E3D8B4C-F8AA-48A5-8301-1EC9701605CC}';
RID_PedidosProveedor_Refresh = '{A8C63D3C-CA6E-4AA8-B66A-4BBCEADDF26C}';
RID_PedidosProveedor_Articulos_Pendientes = '{33A1AFBC-0DAC-48AB-9835-5985A5F59428}';
{ Data table names }
nme_DarReferencia = 'DarReferencia';
@ -66,6 +66,7 @@ const
fld_PedidosProveedorIVA = 'IVA';
fld_PedidosProveedorIMPORTE_IVA = 'IMPORTE_IVA';
fld_PedidosProveedorID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_PedidosProveedorNUM_COPIAS = 'NUM_COPIAS';
{ PedidosProveedor field indexes }
idx_PedidosProveedorID = 0;
@ -103,6 +104,7 @@ const
idx_PedidosProveedorIVA = 32;
idx_PedidosProveedorIMPORTE_IVA = 33;
idx_PedidosProveedorID_FORMA_PAGO = 34;
idx_PedidosProveedorNUM_COPIAS = 35;
{ PedidosProveedor_Detalles fields }
fld_PedidosProveedor_DetallesID = 'ID';
@ -204,6 +206,7 @@ const
fld_PedidosProveedor_RefreshIVA = 'IVA';
fld_PedidosProveedor_RefreshIMPORTE_IVA = 'IMPORTE_IVA';
fld_PedidosProveedor_RefreshID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_PedidosProveedor_RefreshNUM_COPIAS = 'NUM_COPIAS';
{ PedidosProveedor_Refresh field indexes }
idx_PedidosProveedor_RefreshID = 0;
@ -241,6 +244,7 @@ const
idx_PedidosProveedor_RefreshIVA = 32;
idx_PedidosProveedor_RefreshIMPORTE_IVA = 33;
idx_PedidosProveedor_RefreshID_FORMA_PAGO = 34;
idx_PedidosProveedor_RefreshNUM_COPIAS = 35;
{ PedidosProveedor_Articulos_Pendientes fields }
fld_PedidosProveedor_Articulos_PendientesID_PEDIDO = 'ID_PEDIDO';
@ -261,7 +265,7 @@ const
type
{ IDarReferencia }
IDarReferencia = interface(IDAStronglyTypedDataTable)
['{9854A0CD-0C0C-4D9A-958B-81ED1FC86AC3}']
['{7ACFFC47-33BA-425C-9DFA-FA72D8BC6D30}']
{ Property getters and setters }
function GetVALORValue: String;
procedure SetVALORValue(const aValue: String);
@ -290,7 +294,7 @@ type
{ IPedidosProveedor }
IPedidosProveedor = interface(IDAStronglyTypedDataTable)
['{AFABA977-8E05-489D-A958-87E26AF68CB3}']
['{1F5A82AC-6202-4772-939F-5FD2E6AAE0BA}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -362,6 +366,8 @@ type
procedure SetIMPORTE_IVAValue(const aValue: Currency);
function GetID_FORMA_PAGOValue: Integer;
procedure SetID_FORMA_PAGOValue(const aValue: Integer);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -400,6 +406,7 @@ type
property IVA: Float read GetIVAValue write SetIVAValue;
property IMPORTE_IVA: Currency read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TPedidosProveedorDataTableRules }
@ -477,6 +484,8 @@ type
procedure SetIMPORTE_IVAValue(const aValue: Currency); virtual;
function GetID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -514,6 +523,7 @@ type
property IVA: Float read GetIVAValue write SetIVAValue;
property IMPORTE_IVA: Currency read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -523,7 +533,7 @@ type
{ IPedidosProveedor_Detalles }
IPedidosProveedor_Detalles = interface(IDAStronglyTypedDataTable)
['{DF7DB57B-BCA8-42B8-91A3-8850DE614323}']
['{18D7051D-B8C3-4A0A-896A-0CB00934D5B5}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -630,7 +640,7 @@ type
{ IPedidosProveedor_Detalles_Refresh }
IPedidosProveedor_Detalles_Refresh = interface(IDAStronglyTypedDataTable)
['{7E802AB3-A1DE-4C21-94ED-AE02E2AF26E2}']
['{C2A9B50C-251F-498A-ABD2-673D17077B34}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -737,7 +747,7 @@ type
{ IPedidosProveedor_Refresh }
IPedidosProveedor_Refresh = interface(IDAStronglyTypedDataTable)
['{76FCFAB7-76E6-4AF5-900F-CA7FA8CBFCB8}']
['{346F0E68-4313-4072-ACB1-BA32595D7D42}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -809,6 +819,8 @@ type
procedure SetIMPORTE_IVAValue(const aValue: Currency);
function GetID_FORMA_PAGOValue: Integer;
procedure SetID_FORMA_PAGOValue(const aValue: Integer);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -847,6 +859,7 @@ type
property IVA: Float read GetIVAValue write SetIVAValue;
property IMPORTE_IVA: Currency read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TPedidosProveedor_RefreshDataTableRules }
@ -924,6 +937,8 @@ type
procedure SetIMPORTE_IVAValue(const aValue: Currency); virtual;
function GetID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -961,6 +976,7 @@ type
property IVA: Float read GetIVAValue write SetIVAValue;
property IMPORTE_IVA: Currency read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -970,7 +986,7 @@ type
{ IPedidosProveedor_Articulos_Pendientes }
IPedidosProveedor_Articulos_Pendientes = interface(IDAStronglyTypedDataTable)
['{E563C62D-7EFC-4215-AB53-8BAECD65B2A1}']
['{672805D4-7AC5-4FF8-941D-B60690C7BB94}']
{ Property getters and setters }
function GetID_PEDIDOValue: Integer;
procedure SetID_PEDIDOValue(const aValue: Integer);
@ -1416,6 +1432,16 @@ begin
DataTable.Fields[idx_PedidosProveedorID_FORMA_PAGO].AsInteger := aValue;
end;
function TPedidosProveedorDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_PedidosProveedorNUM_COPIAS].AsInteger;
end;
procedure TPedidosProveedorDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_PedidosProveedorNUM_COPIAS].AsInteger := aValue;
end;
{ TPedidosProveedor_DetallesDataTableRules }
constructor TPedidosProveedor_DetallesDataTableRules.Create(aDataTable: TDADataTable);
@ -2084,6 +2110,16 @@ begin
DataTable.Fields[idx_PedidosProveedor_RefreshID_FORMA_PAGO].AsInteger := aValue;
end;
function TPedidosProveedor_RefreshDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_PedidosProveedor_RefreshNUM_COPIAS].AsInteger;
end;
procedure TPedidosProveedor_RefreshDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_PedidosProveedor_RefreshNUM_COPIAS].AsInteger := aValue;
end;
{ TPedidosProveedor_Articulos_PendientesDataTableRules }
constructor TPedidosProveedor_Articulos_PendientesDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,17 +9,17 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_DarReferenciaDelta = '{1076075E-7674-4459-B181-08AB1CF2BC9A}';
RID_PedidosProveedorDelta = '{88605485-11EC-471D-ACCA-7949918142A2}';
RID_PedidosProveedor_DetallesDelta = '{FF1E4E43-4750-4E28-9D45-AD0908AC0D8D}';
RID_PedidosProveedor_Detalles_RefreshDelta = '{FF54D9C9-FAFE-4ADE-BD9D-7A380E8CA8B0}';
RID_PedidosProveedor_RefreshDelta = '{8B4575ED-6808-4DCA-9DE5-4C9EB469284F}';
RID_PedidosProveedor_Articulos_PendientesDelta = '{A88E8B3E-1623-4650-BE75-89AA21D80839}';
RID_DarReferenciaDelta = '{431FAF99-6789-4FA4-9A91-32E5EF0A12C4}';
RID_PedidosProveedorDelta = '{2F368F7D-0930-4904-8052-9E28770C63F9}';
RID_PedidosProveedor_DetallesDelta = '{DAC76FCD-4F4F-4A7B-96F4-59BB7BF62613}';
RID_PedidosProveedor_Detalles_RefreshDelta = '{482666CD-B5B1-4EEE-906A-FD791C4FD32F}';
RID_PedidosProveedor_RefreshDelta = '{4526DFCD-81B4-47F9-A4D6-324BCD50DD86}';
RID_PedidosProveedor_Articulos_PendientesDelta = '{F18E66C5-86C6-4207-9B9D-5B95011FF534}';
type
{ IDarReferenciaDelta }
IDarReferenciaDelta = interface(IDarReferencia)
['{1076075E-7674-4459-B181-08AB1CF2BC9A}']
['{431FAF99-6789-4FA4-9A91-32E5EF0A12C4}']
{ Property getters and setters }
function GetOldVALORValue : String;
@ -48,7 +48,7 @@ type
{ IPedidosProveedorDelta }
IPedidosProveedorDelta = interface(IPedidosProveedor)
['{88605485-11EC-471D-ACCA-7949918142A2}']
['{2F368F7D-0930-4904-8052-9E28770C63F9}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -85,6 +85,7 @@ type
function GetOldIVAValue : Float;
function GetOldIMPORTE_IVAValue : Currency;
function GetOldID_FORMA_PAGOValue : Integer;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -122,6 +123,7 @@ type
property OldIVA : Float read GetOldIVAValue;
property OldIMPORTE_IVA : Currency read GetOldIMPORTE_IVAValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TPedidosProveedorBusinessProcessorRules }
@ -234,6 +236,9 @@ type
function GetID_FORMA_PAGOValue: Integer; virtual;
function GetOldID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -306,6 +311,8 @@ type
property OldIMPORTE_IVA : Currency read GetOldIMPORTE_IVAValue;
property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -315,7 +322,7 @@ type
{ IPedidosProveedor_DetallesDelta }
IPedidosProveedor_DetallesDelta = interface(IPedidosProveedor_Detalles)
['{FF1E4E43-4750-4E28-9D45-AD0908AC0D8D}']
['{DAC76FCD-4F4F-4A7B-96F4-59BB7BF62613}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_PEDIDOValue : Integer;
@ -435,7 +442,7 @@ type
{ IPedidosProveedor_Detalles_RefreshDelta }
IPedidosProveedor_Detalles_RefreshDelta = interface(IPedidosProveedor_Detalles_Refresh)
['{FF54D9C9-FAFE-4ADE-BD9D-7A380E8CA8B0}']
['{482666CD-B5B1-4EEE-906A-FD791C4FD32F}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_PEDIDOValue : Integer;
@ -555,7 +562,7 @@ type
{ IPedidosProveedor_RefreshDelta }
IPedidosProveedor_RefreshDelta = interface(IPedidosProveedor_Refresh)
['{8B4575ED-6808-4DCA-9DE5-4C9EB469284F}']
['{4526DFCD-81B4-47F9-A4D6-324BCD50DD86}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -592,6 +599,7 @@ type
function GetOldIVAValue : Float;
function GetOldIMPORTE_IVAValue : Currency;
function GetOldID_FORMA_PAGOValue : Integer;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -629,6 +637,7 @@ type
property OldIVA : Float read GetOldIVAValue;
property OldIMPORTE_IVA : Currency read GetOldIMPORTE_IVAValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TPedidosProveedor_RefreshBusinessProcessorRules }
@ -741,6 +750,9 @@ type
function GetID_FORMA_PAGOValue: Integer; virtual;
function GetOldID_FORMA_PAGOValue: Integer; virtual;
procedure SetID_FORMA_PAGOValue(const aValue: Integer); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -813,6 +825,8 @@ type
property OldIMPORTE_IVA : Currency read GetOldIMPORTE_IVAValue;
property ID_FORMA_PAGO : Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -822,7 +836,7 @@ type
{ IPedidosProveedor_Articulos_PendientesDelta }
IPedidosProveedor_Articulos_PendientesDelta = interface(IPedidosProveedor_Articulos_Pendientes)
['{A88E8B3E-1623-4650-BE75-89AA21D80839}']
['{F18E66C5-86C6-4207-9B9D-5B95011FF534}']
{ Property getters and setters }
function GetOldID_PEDIDOValue : Integer;
function GetOldREFERENCIAValue : String;
@ -1456,6 +1470,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosProveedorID_FORMA_PAGO] := aValue;
end;
function TPedidosProveedorBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosProveedorNUM_COPIAS];
end;
function TPedidosProveedorBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_PedidosProveedorNUM_COPIAS];
end;
procedure TPedidosProveedorBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosProveedorNUM_COPIAS] := aValue;
end;
{ TPedidosProveedor_DetallesBusinessProcessorRules }
constructor TPedidosProveedor_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -2441,6 +2470,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosProveedor_RefreshID_FORMA_PAGO] := aValue;
end;
function TPedidosProveedor_RefreshBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosProveedor_RefreshNUM_COPIAS];
end;
function TPedidosProveedor_RefreshBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_PedidosProveedor_RefreshNUM_COPIAS];
end;
procedure TPedidosProveedor_RefreshBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosProveedor_RefreshNUM_COPIAS] := aValue;
end;
{ TPedidosProveedor_Articulos_PendientesBusinessProcessorRules }
constructor TPedidosProveedor_Articulos_PendientesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -78,16 +78,20 @@ object srvPedidosProveedor: TsrvPedidosProveedor
' FECHA_ALTA, FECHA_MODIFICACION, USUARIO, ID_PEDIDO_CLIENTE, ' +
#10' REF_PED_CLIENTE, IMPORTE_NETO, IMPORTE_PORTE, DESCUENTO, '#10' ' +
' IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, IMPORTE_IVA, '#10' ID_' +
'FORMA_PAGO'#10' FROM'#10' V_PEDIDOS_PROVEEDOR'
'FORMA_PAGO, NUM_COPIAS'#10' FROM'#10' V_PEDIDOS_PROVEEDOR'
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'USUARIO'
TableField = 'USUARIO'
DatasetField = 'ID'
TableField = 'ID'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'ID_PROVEEDOR'
TableField = 'ID_PROVEEDOR'
end
item
DatasetField = 'NOMBRE'
@ -97,29 +101,13 @@ object srvPedidosProveedor: TsrvPedidosProveedor
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'ID'
TableField = 'ID'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
end
item
DatasetField = 'FECHA_ALTA'
TableField = 'FECHA_ALTA'
end
item
DatasetField = 'FECHA_MODIFICACION'
TableField = 'FECHA_MODIFICACION'
end
item
DatasetField = 'ID_PROVEEDOR'
TableField = 'ID_PROVEEDOR'
DatasetField = 'FECHA_ENVIO'
TableField = 'FECHA_ENVIO'
end
item
DatasetField = 'FECHA_PEDIDO'
@ -134,20 +122,28 @@ object srvPedidosProveedor: TsrvPedidosProveedor
TableField = 'FECHA_ENTREGA'
end
item
DatasetField = 'INCIDENCIAS'
TableField = 'INCIDENCIAS'
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
end
item
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
DatasetField = 'INCIDENCIAS'
TableField = 'INCIDENCIAS'
end
item
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
end
item
DatasetField = 'CALLE'
@ -173,10 +169,26 @@ object srvPedidosProveedor: TsrvPedidosProveedor
DatasetField = 'TELEFONO'
TableField = 'TELEFONO'
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 = 'ID_PEDIDO_CLIENTE'
TableField = 'ID_PEDIDO_CLIENTE'
end
item
DatasetField = 'REF_PED_CLIENTE'
TableField = 'REF_PED_CLIENTE'
end
item
DatasetField = 'IMPORTE_NETO'
TableField = 'IMPORTE_NETO'
@ -210,16 +222,8 @@ object srvPedidosProveedor: TsrvPedidosProveedor
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'FECHA_ENVIO'
TableField = 'FECHA_ENVIO'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'REF_PED_CLIENTE'
TableField = 'REF_PED_CLIENTE'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'PedidosProveedor'
@ -587,6 +591,17 @@ object srvPedidosProveedor: TsrvPedidosProveedor
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -1115,17 +1130,21 @@ object srvPedidosProveedor: TsrvPedidosProveedor
' FECHA_ALTA, FECHA_MODIFICACION, USUARIO, ID_PEDIDO_CLIENTE, ' +
#10' REF_PED_CLIENTE, IMPORTE_NETO, IMPORTE_PORTE, DESCUENTO, '#10' ' +
' IMPORTE_DESCUENTO, BASE_IMPONIBLE, IVA, IMPORTE_IVA, '#10' ID_' +
'FORMA_PAGO'#10' FROM'#10' V_PEDIDOS_PROVEEDOR'#10'WHERE V_PEDIDOS_PROVEE' +
'DOR.ID = :ID'
'FORMA_PAGO, NUM_COPIAS'#10' FROM'#10' V_PEDIDOS_PROVEEDOR'#10'WHERE V_PE' +
'DIDOS_PROVEEDOR.ID = :ID'
StatementType = stSQL
ColumnMappings = <
item
DatasetField = 'USUARIO'
TableField = 'USUARIO'
DatasetField = 'ID'
TableField = 'ID'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'ID_PROVEEDOR'
TableField = 'ID_PROVEEDOR'
end
item
DatasetField = 'NOMBRE'
@ -1135,29 +1154,13 @@ object srvPedidosProveedor: TsrvPedidosProveedor
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'ID'
TableField = 'ID'
end
item
DatasetField = 'ID_EMPRESA'
TableField = 'ID_EMPRESA'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
end
item
DatasetField = 'FECHA_ALTA'
TableField = 'FECHA_ALTA'
end
item
DatasetField = 'FECHA_MODIFICACION'
TableField = 'FECHA_MODIFICACION'
end
item
DatasetField = 'ID_PROVEEDOR'
TableField = 'ID_PROVEEDOR'
DatasetField = 'FECHA_ENVIO'
TableField = 'FECHA_ENVIO'
end
item
DatasetField = 'FECHA_PEDIDO'
@ -1172,20 +1175,28 @@ object srvPedidosProveedor: TsrvPedidosProveedor
TableField = 'FECHA_ENTREGA'
end
item
DatasetField = 'INCIDENCIAS'
TableField = 'INCIDENCIAS'
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
end
item
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
DatasetField = 'INCIDENCIAS'
TableField = 'INCIDENCIAS'
end
item
DatasetField = 'ID_ALMACEN'
TableField = 'ID_ALMACEN'
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
end
item
DatasetField = 'CALLE'
@ -1211,10 +1222,26 @@ object srvPedidosProveedor: TsrvPedidosProveedor
DatasetField = 'TELEFONO'
TableField = 'TELEFONO'
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 = 'ID_PEDIDO_CLIENTE'
TableField = 'ID_PEDIDO_CLIENTE'
end
item
DatasetField = 'REF_PED_CLIENTE'
TableField = 'REF_PED_CLIENTE'
end
item
DatasetField = 'IMPORTE_NETO'
TableField = 'IMPORTE_NETO'
@ -1248,16 +1275,8 @@ object srvPedidosProveedor: TsrvPedidosProveedor
TableField = 'ID_FORMA_PAGO'
end
item
DatasetField = 'FECHA_ENVIO'
TableField = 'FECHA_ENVIO'
end
item
DatasetField = 'NOMBRE_ALMACEN'
TableField = 'NOMBRE_ALMACEN'
end
item
DatasetField = 'REF_PED_CLIENTE'
TableField = 'REF_PED_CLIENTE'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'PedidosProveedor_Refresh'
@ -1625,6 +1644,17 @@ object srvPedidosProveedor: TsrvPedidosProveedor
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript

View File

@ -103,6 +103,9 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
Kind = skSum
Column = frViewPedidosProveedor1.cxGridViewIMPORTE_TOTAL
end>
inherited cxGridViewNUM_COPIAS: TcxGridDBColumn
IsCaptionAssigned = True
end
inherited cxGridViewCODIGO: TcxGridDBColumn
IsCaptionAssigned = True
end
@ -117,18 +120,18 @@ inherited fEditorPedidosProveedor: TfEditorPedidosProveedor
Width = 700
ExplicitWidth = 700
inherited txtFiltroTodo: TcxTextEdit
ExplicitWidth = 273
Width = 273
ExplicitWidth = 457
Width = 457
end
inherited edtFechaIniFiltro: TcxDateEdit
ExplicitWidth = 121
Width = 121
ExplicitWidth = 239
Width = 239
end
inherited edtFechaFinFiltro: TcxDateEdit
Left = 292
ExplicitLeft = 292
ExplicitWidth = 294
Width = 294
Left = 386
ExplicitLeft = 386
ExplicitWidth = 266
Width = 266
end
end
inherited TBXAlignmentPanel1: TTBXAlignmentPanel

View File

@ -139,7 +139,7 @@ begin
if (Application.MessageBox('¿Desea borrar los pedidos de proveedor seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Pedidos as ISeleccionable).SelectedRecords);
APedidos := (Controller as IPedidosProveedorController).ExtraerSeleccionados(Pedidos) as IBizPedidoProveedor;
APedidos := (Controller as IPedidosProveedorController).ExtraerSeleccionados(Pedidos, ViewGrid) as IBizPedidoProveedor;
end
end
else begin
@ -224,13 +224,14 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Pedidos as ISeleccionable).SelectedRecords);
APedidos := (Controller as IPedidosProveedorController).ExtraerSeleccionados(Pedidos) as IBizPedidoProveedor;
APedidos := (Controller as IPedidosProveedorController).ExtraerSeleccionados(Pedidos, ViewGrid) as IBizPedidoProveedor;
end
else
APedidos := Pedidos;
if Assigned(APedidos) then
FController.Print(APedidos, AllItems);
if FController.Print(APedidos, AllItems) then
RefrescarInterno;
end;
end;
end;
@ -304,7 +305,7 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Pedidos as ISeleccionable).SelectedRecords);
APedidos := (Controller as IPedidosProveedorController).ExtraerSeleccionados(Pedidos) as IBizPedidoProveedor;
APedidos := (Controller as IPedidosProveedorController).ExtraerSeleccionados(Pedidos, ViewGrid) as IBizPedidoProveedor;
end
else
APedidos := Pedidos;

View File

@ -29,6 +29,7 @@ type
procedure SetPedido(const Value: IBizPedidoProveedor);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
@ -65,6 +66,14 @@ begin
Result := FPedido;
end;
procedure TfrViewDetallesPedidoProveedor.RellenarArticulosInterno;
begin
//No porque está en este módulo hecho así, supongo que por seguridad.
if Assigned(Pedido) and Assigned(Pedido.Proveedor)
then (Controller as IDetallesPedidoProveedorController).AnadirArticulos(Detalles, Pedido.Proveedor, False)
else (Controller as IDetallesPedidoProveedorController).AnadirArticulos(Detalles, False);
end;
procedure TfrViewDetallesPedidoProveedor.SetPedido(const Value: IBizPedidoProveedor);
begin
FPedido := Value;

View File

@ -33,9 +33,19 @@ inherited frViewPedidosProveedor: TfrViewPedidosProveedor
Column = cxGridViewIMPORTE_TOTAL
end>
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewNUM_COPIAS: TcxGridDBColumn
DataBinding.FieldName = 'NUM_COPIAS'
OnCustomDrawCell = cxGridViewNUM_COPIASCustomDrawCell
MinWidth = 30
Options.HorzSizing = False
VisibleForCustomization = False
Width = 30
IsCaptionAssigned = True
end
object cxGridViewCODIGO: TcxGridDBColumn
DataBinding.FieldName = 'ID'
Visible = False
OnCustomDrawCell = cxGridViewCODIGOCustomDrawCell
IsCaptionAssigned = True
end
object cxGridViewINCIDENCIASACTIVAS: TcxGridDBColumn
@ -334,6 +344,20 @@ inherited frViewPedidosProveedor: TfrViewPedidosProveedor
CF0000000049454E44AE426082}
Name = 'PngImage3'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000E54944415478DADD902172C3301045BF4F10C3320B9645B0ACEE0D7C
83F806F5110C0BD51B6C99A160E1C2C085850B0D372C655965DCA28C3D9DB27C
CD8E44FEDBFF55E19FAAEE104013B77EF53ED100B3595967637A1B7813B098C7
F8149E435DC3CE807C29F2943FD48C784ABC0520371FF64D83D377597FF201F8
28C899DE39D3B005D0AE8B0DB0FB3597143A2B98195EA3DA0248DBC67D79FF98
B100682278857540224EF131BCD64BFF62363FE215540594C675C098728BB3F5
2184031C72DDAE1EFFC89EC85EE493D63FB1A81F526BA65D7808BDA8EE1C0611
B969BE09F8ABEE007001C1D97F1131BF40440000000049454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end>
Left = 56
Top = 48

View File

@ -55,6 +55,7 @@ type
TBXSeparatorItem1: TTBXSeparatorItem;
TBXItem3: TTBXItem;
TBXSeparatorItem2: TTBXSeparatorItem;
cxGridViewNUM_COPIAS: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel);
procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView;
@ -69,6 +70,9 @@ type
procedure actAlmacenUpdate(Sender: TObject);
procedure cxGridViewMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure cxGridViewNUM_COPIASCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
//Filtros relativos a la vista
@ -227,6 +231,23 @@ begin
end;
end;
procedure TfrViewPedidosProveedor.cxGridViewNUM_COPIASCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
R : TRect;
begin
inherited;
if (AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index] <> '') then
begin
R := AViewInfo.ContentBounds;
ACanvas.FillRect(R);
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 4);
ACanvas.DrawTexT(AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index], R, cxAlignCenter or cxAlignVCenter);
ADone := True;
end;
end;
procedure TfrViewPedidosProveedor.cxGridViewStylesGetContentStyle(Sender:
TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem:
TcxCustomGridTableItem; out AStyle: TcxStyle);

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=5111
Activate=1

View File

@ -9,7 +9,7 @@ uses
type
IDetallesPedidoClienteController = interface(IControllerDetallesArticulos)
['{8D1D3559-E695-4962-9999-404B26B50D6C}']
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True); overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
procedure DesglosarPorteDetalles(ImportePorte: Currency; ADetalles: IDAStronglyTypedDataTable);
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
@ -31,7 +31,7 @@ type
function DarTotalPorteTotal(ADetalles: IDAStronglyTypedDataTable): Double;
public
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); reintroduce; overload;
procedure AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True); reintroduce; overload;
procedure ActualizarDetalles(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente); overload;
constructor Create; override;
destructor Destroy; override;
@ -60,7 +60,7 @@ begin
end;
end;
procedure TDetallesPedidoClienteController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente);
procedure TDetallesPedidoClienteController.AnadirArticulos(ADetalles: IDAStronglyTypedDataTable; ACliente: IBizCliente; const ANuevaFila :Boolean = True);
var
AArticulos: IBizArticulo;
begin
@ -68,8 +68,17 @@ begin
begin
try
AArticulos := (FArticulosController.BuscarTodos(ACliente) as IBizArticulo);
AArticulos := (FArticulosController as IArticulosPedidoClienteController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este pedido de cliente', True);
Add(ADetalles, AArticulos);
//Si nueva fila es false, quiere decir que se sustituye un determinado artículo, por ello la lista a seleccionar no debe ser multiselect
if ANuevaFila then
begin
AArticulos := (FArticulosController as IArticulosPedidoClienteController).ElegirArticulos(AArticulos, 'Elija los artículos que desea añadir a este presupuesto de cliente', True);
Add(ADetalles, AArticulos)
end
else
begin
AArticulos := (FArticulosController as IArticulosPedidoClienteController).ElegirArticulos(AArticulos, 'Elija el artículo que desea añadir a este presupuesto de cliente', False);
RellenarDetalle(ADetalles, AArticulos);
end;
finally
AArticulos := Nil;
end;

View File

@ -7,7 +7,7 @@ uses
SysUtils, uDADataTable, uEditorDBItem,
uControllerBase, uIDataModulePedidosCliente, uClientesController,
uDetallesPedidoClienteController, uBizPedidosCliente, uBizDireccionesContacto,
uBizDetallesPedidoCliente;
uBizDetallesPedidoCliente, uViewGridBase;
type
IPedidosClienteController = interface(IObservador)
@ -38,7 +38,7 @@ type
function Duplicar(APedido: IBizPedidoCliente): IBizPedidoCliente;
function Localizar(APedidos: IBizPedidoCliente; const ID : Integer): Boolean;
function ExtraerSeleccionados(APedido: IBizPedidoCliente) : IBizPedidoCliente;
function ExtraerSeleccionados(APedido: IBizPedidoCliente; Const ViewGrid: IViewGridBase = Nil) : IBizPedidoCliente;
function ElegirPedidos(APedido: IBizPedidoCliente; AMensaje: String; AMultiSelect: Boolean): IBizPedidoCliente;
procedure CopiarDireccionEnvio (const ADireccionEnvio: IBizDireccionesContacto;
@ -50,7 +50,7 @@ type
function EsEliminable(APedido : IBizPedidoCliente): Boolean;
procedure Preview(APedido : IBizPedidoCliente; AllItems: Boolean = false);
procedure Print(APedido : IBizPedidoCliente; AllItems: Boolean = false);
function Print(APedido : IBizPedidoCliente; AllItems: Boolean = false): Boolean;
function ArticulosPendientes(const ID : Integer): IBizPedidoClienteArticulosPend;
end;
@ -106,7 +106,7 @@ type
APedido: IBizPedidoCliente);
procedure QuitarDireccionEnvio(APedido: IBizPedidoCliente);
function ExtraerSeleccionados(APedido: IBizPedidoCliente) : IBizPedidoCliente;
function ExtraerSeleccionados(APedido: IBizPedidoCliente; Const ViewGrid: IViewGridBase = Nil) : IBizPedidoCliente;
function ElegirPedidos(APedido: IBizPedidoCliente; AMensaje: String; AMultiSelect: Boolean): IBizPedidoCliente;
procedure RecalcularImportes(APedido : IBizPedidoCliente);
@ -114,7 +114,7 @@ type
function EsEliminable(APedido : IBizPedidoCliente): Boolean;
procedure Preview(APedido : IBizPedidoCliente; AllItems: Boolean = false);
procedure Print(APedido : IBizPedidoCliente; AllItems: Boolean = false);
function Print(APedido : IBizPedidoCliente; AllItems: Boolean = false): Boolean;
function ArticulosPendientes(const ID : Integer): IBizPedidoClienteArticulosPend;
end;
@ -635,13 +635,26 @@ begin
end;
end;
function TPedidosClienteController.ExtraerSeleccionados(APedido: IBizPedidoCliente): IBizPedidoCliente;
function TPedidosClienteController.ExtraerSeleccionados(APedido: IBizPedidoCliente; Const ViewGrid: IViewGridBase = Nil): IBizPedidoCliente;
var
ASeleccionados : IBizPedidoCliente;
begin
if Assigned(ViewGrid) then
begin
//Guardamos la situación porque el CopyDataTable nos cambia la posicion
ViewGrid.SaveGridStatus;
ViewGrid.DesactivarGrid;
end;
ASeleccionados := (Self.Buscar(ID_NULO) as IBizPedidoCliente);
CopyDataTable(APedido.DataTable, ASeleccionados.DataTable, True);
Result := ASeleccionados;
if Assigned(ViewGrid) then
begin
ViewGrid.ActivarGrid;
ViewGrid.RestoreGridStatus;
end;
end;
procedure TPedidosClienteController.FiltrarEmpresa(
@ -801,12 +814,13 @@ begin
end;
end;
procedure TPedidosClienteController.Print(APedido: IBizPedidoCliente; AllItems: Boolean = false);
function TPedidosClienteController.Print(APedido: IBizPedidoCliente; AllItems: Boolean = false): Boolean;
var
AReportController : IPedidosClienteReportController;
ID_Pedidos: TStringList;
begin
Result := False;
AReportController := TPedidosClienteReportController.Create;
try
ID_Pedidos := TStringList.Create;
@ -828,7 +842,7 @@ begin
else
ID_Pedidos.Add(IntToStr(APedido.ID));
AReportController.Print(ID_Pedidos.CommaText);
Result := AReportController.Print(ID_Pedidos.CommaText);
finally
AReportController := NIL;

View File

@ -11,7 +11,7 @@ type
IPedidosClienteReportController = interface
['{D0686358-251C-43C4-9927-6112F2F4D3B8}']
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
TPedidosClienteReportController = class(TInterfacedObject, IPedidosClienteReportController)
@ -23,7 +23,7 @@ type
destructor Destroy; override;
procedure Preview(const AID : String);
procedure Print(const AID : String);
function Print(const AID : String): Boolean;
end;
@ -31,7 +31,8 @@ implementation
uses
uROTypes, uEditorRegistryUtils, uIEditorPedidosClientePreview,
uEditorPreview, uDataModulePedidosCliente, uEditorBase, cxControls;
uEditorPreview, uDataModulePedidosCliente, uEditorBase, cxControls,
schPedidosClienteClient_Intf;
{ TPedidosClienteReportController }
@ -77,11 +78,12 @@ begin
AEditor.Preview;
end;
procedure TPedidosClienteReportController.Print(const AID : String);
function TPedidosClienteReportController.Print(const AID : String): Boolean;
var
AStream: Binary;
AEditor : IEditorPedidosClientePreview;
begin
Result := False;
AEditor := NIL;
ShowHourglassCursor;
@ -98,7 +100,11 @@ begin
end;
if Assigned(AEditor) then
AEditor.Print
begin
AEditor.TablaImpresion := nme_PedidosCliente;
AEditor.IdTablaImpresion := AID;
Result := AEditor.Print;
end;
end;
end.

View File

@ -49,7 +49,7 @@ object DataModulePedidosCliente: TDataModulePedidosCliente
Name = 'User'
ParamType = fIn
DataType = rtString
Value = 'Administrador'
Value = 'Luis'
end
item
Name = 'Password'
@ -481,6 +481,17 @@ object DataModulePedidosCliente: TDataModulePedidosCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
Params = <>
MasterMappingMode = mmDataRequest

View File

@ -9,13 +9,13 @@ const
{ Data table rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_PedidoCliente_ArticulosPendientesPedirAProv = '{C1999334-468B-4FBC-BBF4-C42B5EDD082A}';
RID_DarReferencia = '{49BABE0B-7F00-4B69-BDF2-1EEB55541733}';
RID_PedidosCliente = '{AA507B71-8CC4-44D0-A83A-598C0F731BB0}';
RID_PedidosCliente_Detalles = '{245CC401-9C4E-471E-B814-187C95EF45F1}';
RID_PedidosCliente_Refresh = '{16964D63-320B-460C-93B5-1ACD6A05C101}';
RID_PedidosCliente_Detalles_Refresh = '{DD5D0403-B1AB-45D9-8B59-D1F8F035B22F}';
RID_PedidoCliente_Articulos_Pendientes = '{445F176E-9207-4925-8CE6-CBB4A66C4861}';
RID_PedidoCliente_ArticulosPendientesPedirAProv = '{8DE748FF-6C86-47C4-830D-9D98F720D9A2}';
RID_DarReferencia = '{11CE47BF-D7D1-4880-8E21-8B646392B2FF}';
RID_PedidosCliente = '{7D754DBC-3690-4000-BB2B-F7680D856532}';
RID_PedidosCliente_Detalles = '{11F70932-738B-4C61-B80B-822863835CB9}';
RID_PedidosCliente_Refresh = '{3F0FCA37-E56F-495C-8B99-5B427BA0B27C}';
RID_PedidosCliente_Detalles_Refresh = '{0D7003CE-A998-403E-8BF7-A6EE94111EBA}';
RID_PedidoCliente_Articulos_Pendientes = '{DD6873C4-96B5-4410-93FA-86775F816CA5}';
{ Data table names }
nme_PedidoCliente_ArticulosPendientesPedirAProv = 'PedidoCliente_ArticulosPendientesPedirAProv';
@ -80,6 +80,7 @@ const
fld_PedidosClienteID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_PedidosClienteREF_TIENDA_WEB = 'REF_TIENDA_WEB';
fld_PedidosClienteFECHA_PREVISTA_ENVIO = 'FECHA_PREVISTA_ENVIO';
fld_PedidosClienteNUM_COPIAS = 'NUM_COPIAS';
{ PedidosCliente field indexes }
idx_PedidosClienteID = 0;
@ -113,6 +114,7 @@ const
idx_PedidosClienteID_FORMA_PAGO = 28;
idx_PedidosClienteREF_TIENDA_WEB = 29;
idx_PedidosClienteFECHA_PREVISTA_ENVIO = 30;
idx_PedidosClienteNUM_COPIAS = 31;
{ PedidosCliente_Detalles fields }
fld_PedidosCliente_DetallesID = 'ID';
@ -178,6 +180,7 @@ const
fld_PedidosCliente_RefreshID_FORMA_PAGO = 'ID_FORMA_PAGO';
fld_PedidosCliente_RefreshREF_TIENDA_WEB = 'REF_TIENDA_WEB';
fld_PedidosCliente_RefreshFECHA_PREVISTA_ENVIO = 'FECHA_PREVISTA_ENVIO';
fld_PedidosCliente_RefreshNUM_COPIAS = 'NUM_COPIAS';
{ PedidosCliente_Refresh field indexes }
idx_PedidosCliente_RefreshID = 0;
@ -211,6 +214,7 @@ const
idx_PedidosCliente_RefreshID_FORMA_PAGO = 28;
idx_PedidosCliente_RefreshREF_TIENDA_WEB = 29;
idx_PedidosCliente_RefreshFECHA_PREVISTA_ENVIO = 30;
idx_PedidosCliente_RefreshNUM_COPIAS = 31;
{ PedidosCliente_Detalles_Refresh fields }
fld_PedidosCliente_Detalles_RefreshID = 'ID';
@ -259,7 +263,7 @@ const
type
{ IPedidoCliente_ArticulosPendientesPedirAProv }
IPedidoCliente_ArticulosPendientesPedirAProv = interface(IDAStronglyTypedDataTable)
['{972D4859-B3C6-4A05-90D5-B81E5B0221BF}']
['{EDDEC887-DCC3-4491-AFBB-125B5FD6ACE0}']
{ Property getters and setters }
function GetID_PEDIDOValue: Integer;
procedure SetID_PEDIDOValue(const aValue: Integer);
@ -318,7 +322,7 @@ type
{ IDarReferencia }
IDarReferencia = interface(IDAStronglyTypedDataTable)
['{653123F4-C264-46AF-BEFE-CD2CF048FBEA}']
['{3EADC907-F5EE-4E69-B8BD-C821B9293A95}']
{ Property getters and setters }
function GetVALORValue: String;
procedure SetVALORValue(const aValue: String);
@ -347,7 +351,7 @@ type
{ IPedidosCliente }
IPedidosCliente = interface(IDAStronglyTypedDataTable)
['{05AC916D-59B2-4E42-AD09-1A0B413BFA1B}']
['{ADDEFA2C-3FE4-48F2-8670-33A5041DC887}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -411,6 +415,8 @@ type
procedure SetREF_TIENDA_WEBValue(const aValue: Integer);
function GetFECHA_PREVISTA_ENVIOValue: DateTime;
procedure SetFECHA_PREVISTA_ENVIOValue(const aValue: DateTime);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -445,6 +451,7 @@ type
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property REF_TIENDA_WEB: Integer read GetREF_TIENDA_WEBValue write SetREF_TIENDA_WEBValue;
property FECHA_PREVISTA_ENVIO: DateTime read GetFECHA_PREVISTA_ENVIOValue write SetFECHA_PREVISTA_ENVIOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TPedidosClienteDataTableRules }
@ -514,6 +521,8 @@ type
procedure SetREF_TIENDA_WEBValue(const aValue: Integer); virtual;
function GetFECHA_PREVISTA_ENVIOValue: DateTime; virtual;
procedure SetFECHA_PREVISTA_ENVIOValue(const aValue: DateTime); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -547,6 +556,7 @@ type
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property REF_TIENDA_WEB: Integer read GetREF_TIENDA_WEBValue write SetREF_TIENDA_WEBValue;
property FECHA_PREVISTA_ENVIO: DateTime read GetFECHA_PREVISTA_ENVIOValue write SetFECHA_PREVISTA_ENVIOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -556,7 +566,7 @@ type
{ IPedidosCliente_Detalles }
IPedidosCliente_Detalles = interface(IDAStronglyTypedDataTable)
['{B9BEFE7C-50C5-41A4-9C1E-69F82E33B239}']
['{87978E69-39E2-401D-9D6A-0439CD0538B7}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -663,7 +673,7 @@ type
{ IPedidosCliente_Refresh }
IPedidosCliente_Refresh = interface(IDAStronglyTypedDataTable)
['{B791EB7F-8133-4E13-8E65-9D728AEF936C}']
['{3AA0B5AC-FE59-4BE4-AB86-E99A713BB84E}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -727,6 +737,8 @@ type
procedure SetREF_TIENDA_WEBValue(const aValue: Integer);
function GetFECHA_PREVISTA_ENVIOValue: DateTime;
procedure SetFECHA_PREVISTA_ENVIOValue(const aValue: DateTime);
function GetNUM_COPIASValue: Integer;
procedure SetNUM_COPIASValue(const aValue: Integer);
{ Properties }
@ -761,6 +773,7 @@ type
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property REF_TIENDA_WEB: Integer read GetREF_TIENDA_WEBValue write SetREF_TIENDA_WEBValue;
property FECHA_PREVISTA_ENVIO: DateTime read GetFECHA_PREVISTA_ENVIOValue write SetFECHA_PREVISTA_ENVIOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
end;
{ TPedidosCliente_RefreshDataTableRules }
@ -830,6 +843,8 @@ type
procedure SetREF_TIENDA_WEBValue(const aValue: Integer); virtual;
function GetFECHA_PREVISTA_ENVIOValue: DateTime; virtual;
procedure SetFECHA_PREVISTA_ENVIOValue(const aValue: DateTime); virtual;
function GetNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID: Integer read GetIDValue write SetIDValue;
@ -863,6 +878,7 @@ type
property ID_FORMA_PAGO: Integer read GetID_FORMA_PAGOValue write SetID_FORMA_PAGOValue;
property REF_TIENDA_WEB: Integer read GetREF_TIENDA_WEBValue write SetREF_TIENDA_WEBValue;
property FECHA_PREVISTA_ENVIO: DateTime read GetFECHA_PREVISTA_ENVIOValue write SetFECHA_PREVISTA_ENVIOValue;
property NUM_COPIAS: Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
public
constructor Create(aDataTable: TDADataTable); override;
@ -872,7 +888,7 @@ type
{ IPedidosCliente_Detalles_Refresh }
IPedidosCliente_Detalles_Refresh = interface(IDAStronglyTypedDataTable)
['{3FA4269B-0776-41DE-9F4A-78033659716B}']
['{FAEEFA10-4879-47FB-8408-AB1AD9736FD8}']
{ Property getters and setters }
function GetIDValue: Integer;
procedure SetIDValue(const aValue: Integer);
@ -979,7 +995,7 @@ type
{ IPedidoCliente_Articulos_Pendientes }
IPedidoCliente_Articulos_Pendientes = interface(IDAStronglyTypedDataTable)
['{64E773A4-B774-4521-801B-50E465070510}']
['{3D7E5529-F41E-4E90-89C8-E9C7133FF5E0}']
{ Property getters and setters }
function GetID_ARTICULOValue: Integer;
procedure SetID_ARTICULOValue(const aValue: Integer);
@ -1445,6 +1461,16 @@ begin
DataTable.Fields[idx_PedidosClienteFECHA_PREVISTA_ENVIO].AsDateTime := aValue;
end;
function TPedidosClienteDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_PedidosClienteNUM_COPIAS].AsInteger;
end;
procedure TPedidosClienteDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_PedidosClienteNUM_COPIAS].AsInteger := aValue;
end;
{ TPedidosCliente_DetallesDataTableRules }
constructor TPedidosCliente_DetallesDataTableRules.Create(aDataTable: TDADataTable);
@ -1921,6 +1947,16 @@ begin
DataTable.Fields[idx_PedidosCliente_RefreshFECHA_PREVISTA_ENVIO].AsDateTime := aValue;
end;
function TPedidosCliente_RefreshDataTableRules.GetNUM_COPIASValue: Integer;
begin
result := DataTable.Fields[idx_PedidosCliente_RefreshNUM_COPIAS].AsInteger;
end;
procedure TPedidosCliente_RefreshDataTableRules.SetNUM_COPIASValue(const aValue: Integer);
begin
DataTable.Fields[idx_PedidosCliente_RefreshNUM_COPIAS].AsInteger := aValue;
end;
{ TPedidosCliente_Detalles_RefreshDataTableRules }
constructor TPedidosCliente_Detalles_RefreshDataTableRules.Create(aDataTable: TDADataTable);

View File

@ -9,18 +9,18 @@ const
{ Delta rules ids
Feel free to change them to something more human readable
but make sure they are unique in the context of your application }
RID_PedidoCliente_ArticulosPendientesPedirAProvDelta = '{EE8CBDDC-104A-4492-8D5C-08135D131450}';
RID_DarReferenciaDelta = '{7E08AFA3-C994-4B1E-B289-148BCA112E05}';
RID_PedidosClienteDelta = '{20C24610-4E5A-4CFE-8564-8D56B08C897A}';
RID_PedidosCliente_DetallesDelta = '{2CDB083D-9BB7-4FEA-90E8-D79AA05F09F7}';
RID_PedidosCliente_RefreshDelta = '{FBBE0466-22C9-4989-90F2-E91D7BDA1D07}';
RID_PedidosCliente_Detalles_RefreshDelta = '{33C8CC54-33ED-45F4-BD3F-60676CD997BF}';
RID_PedidoCliente_Articulos_PendientesDelta = '{E0181E92-9467-4BCF-8C06-53C4F301B7E6}';
RID_PedidoCliente_ArticulosPendientesPedirAProvDelta = '{A1B46905-CCE8-468E-B6AB-2DF026DDB175}';
RID_DarReferenciaDelta = '{35DC9BFB-0F55-496D-917D-0D43EE74D71B}';
RID_PedidosClienteDelta = '{6659E549-E57E-4745-8F1A-A63E0E576493}';
RID_PedidosCliente_DetallesDelta = '{3B53180C-342C-47C4-AF74-DE6888E76B61}';
RID_PedidosCliente_RefreshDelta = '{B9655FA7-5F92-4AFE-B87F-FE5DF5E547DE}';
RID_PedidosCliente_Detalles_RefreshDelta = '{E23472AA-B366-48A0-9CEF-E80C503329A2}';
RID_PedidoCliente_Articulos_PendientesDelta = '{3990FBD0-6B6B-4DC5-B806-C7ECE4FF3F15}';
type
{ IPedidoCliente_ArticulosPendientesPedirAProvDelta }
IPedidoCliente_ArticulosPendientesPedirAProvDelta = interface(IPedidoCliente_ArticulosPendientesPedirAProv)
['{EE8CBDDC-104A-4492-8D5C-08135D131450}']
['{A1B46905-CCE8-468E-B6AB-2DF026DDB175}']
{ Property getters and setters }
function GetOldID_PEDIDOValue : Integer;
function GetOldID_ARTICULOValue : Integer;
@ -84,7 +84,7 @@ type
{ IDarReferenciaDelta }
IDarReferenciaDelta = interface(IDarReferencia)
['{7E08AFA3-C994-4B1E-B289-148BCA112E05}']
['{35DC9BFB-0F55-496D-917D-0D43EE74D71B}']
{ Property getters and setters }
function GetOldVALORValue : String;
@ -113,7 +113,7 @@ type
{ IPedidosClienteDelta }
IPedidosClienteDelta = interface(IPedidosCliente)
['{20C24610-4E5A-4CFE-8564-8D56B08C897A}']
['{6659E549-E57E-4745-8F1A-A63E0E576493}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -146,6 +146,7 @@ type
function GetOldID_FORMA_PAGOValue : Integer;
function GetOldREF_TIENDA_WEBValue : Integer;
function GetOldFECHA_PREVISTA_ENVIOValue : DateTime;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -179,6 +180,7 @@ type
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldREF_TIENDA_WEB : Integer read GetOldREF_TIENDA_WEBValue;
property OldFECHA_PREVISTA_ENVIO : DateTime read GetOldFECHA_PREVISTA_ENVIOValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TPedidosClienteBusinessProcessorRules }
@ -279,6 +281,9 @@ type
function GetFECHA_PREVISTA_ENVIOValue: DateTime; virtual;
function GetOldFECHA_PREVISTA_ENVIOValue: DateTime; virtual;
procedure SetFECHA_PREVISTA_ENVIOValue(const aValue: DateTime); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -343,6 +348,8 @@ type
property OldREF_TIENDA_WEB : Integer read GetOldREF_TIENDA_WEBValue;
property FECHA_PREVISTA_ENVIO : DateTime read GetFECHA_PREVISTA_ENVIOValue write SetFECHA_PREVISTA_ENVIOValue;
property OldFECHA_PREVISTA_ENVIO : DateTime read GetOldFECHA_PREVISTA_ENVIOValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -352,7 +359,7 @@ type
{ IPedidosCliente_DetallesDelta }
IPedidosCliente_DetallesDelta = interface(IPedidosCliente_Detalles)
['{2CDB083D-9BB7-4FEA-90E8-D79AA05F09F7}']
['{3B53180C-342C-47C4-AF74-DE6888E76B61}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_PEDIDOValue : Integer;
@ -472,7 +479,7 @@ type
{ IPedidosCliente_RefreshDelta }
IPedidosCliente_RefreshDelta = interface(IPedidosCliente_Refresh)
['{FBBE0466-22C9-4989-90F2-E91D7BDA1D07}']
['{B9655FA7-5F92-4AFE-B87F-FE5DF5E547DE}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_EMPRESAValue : Integer;
@ -505,6 +512,7 @@ type
function GetOldID_FORMA_PAGOValue : Integer;
function GetOldREF_TIENDA_WEBValue : Integer;
function GetOldFECHA_PREVISTA_ENVIOValue : DateTime;
function GetOldNUM_COPIASValue : Integer;
{ Properties }
property OldID : Integer read GetOldIDValue;
@ -538,6 +546,7 @@ type
property OldID_FORMA_PAGO : Integer read GetOldID_FORMA_PAGOValue;
property OldREF_TIENDA_WEB : Integer read GetOldREF_TIENDA_WEBValue;
property OldFECHA_PREVISTA_ENVIO : DateTime read GetOldFECHA_PREVISTA_ENVIOValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
end;
{ TPedidosCliente_RefreshBusinessProcessorRules }
@ -638,6 +647,9 @@ type
function GetFECHA_PREVISTA_ENVIOValue: DateTime; virtual;
function GetOldFECHA_PREVISTA_ENVIOValue: DateTime; virtual;
procedure SetFECHA_PREVISTA_ENVIOValue(const aValue: DateTime); virtual;
function GetNUM_COPIASValue: Integer; virtual;
function GetOldNUM_COPIASValue: Integer; virtual;
procedure SetNUM_COPIASValue(const aValue: Integer); virtual;
{ Properties }
property ID : Integer read GetIDValue write SetIDValue;
@ -702,6 +714,8 @@ type
property OldREF_TIENDA_WEB : Integer read GetOldREF_TIENDA_WEBValue;
property FECHA_PREVISTA_ENVIO : DateTime read GetFECHA_PREVISTA_ENVIOValue write SetFECHA_PREVISTA_ENVIOValue;
property OldFECHA_PREVISTA_ENVIO : DateTime read GetOldFECHA_PREVISTA_ENVIOValue;
property NUM_COPIAS : Integer read GetNUM_COPIASValue write SetNUM_COPIASValue;
property OldNUM_COPIAS : Integer read GetOldNUM_COPIASValue;
public
constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
@ -711,7 +725,7 @@ type
{ IPedidosCliente_Detalles_RefreshDelta }
IPedidosCliente_Detalles_RefreshDelta = interface(IPedidosCliente_Detalles_Refresh)
['{33C8CC54-33ED-45F4-BD3F-60676CD997BF}']
['{E23472AA-B366-48A0-9CEF-E80C503329A2}']
{ Property getters and setters }
function GetOldIDValue : Integer;
function GetOldID_PEDIDOValue : Integer;
@ -831,7 +845,7 @@ type
{ IPedidoCliente_Articulos_PendientesDelta }
IPedidoCliente_Articulos_PendientesDelta = interface(IPedidoCliente_Articulos_Pendientes)
['{E0181E92-9467-4BCF-8C06-53C4F301B7E6}']
['{3990FBD0-6B6B-4DC5-B806-C7ECE4FF3F15}']
{ Property getters and setters }
function GetOldID_ARTICULOValue : Integer;
function GetOldCANTIDAD_PEDValue : Integer;
@ -1493,6 +1507,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosClienteFECHA_PREVISTA_ENVIO] := aValue;
end;
function TPedidosClienteBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosClienteNUM_COPIAS];
end;
function TPedidosClienteBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_PedidosClienteNUM_COPIAS];
end;
procedure TPedidosClienteBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosClienteNUM_COPIAS] := aValue;
end;
{ TPedidosCliente_DetallesBusinessProcessorRules }
constructor TPedidosCliente_DetallesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
@ -2196,6 +2225,21 @@ begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosCliente_RefreshFECHA_PREVISTA_ENVIO] := aValue;
end;
function TPedidosCliente_RefreshBusinessProcessorRules.GetNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosCliente_RefreshNUM_COPIAS];
end;
function TPedidosCliente_RefreshBusinessProcessorRules.GetOldNUM_COPIASValue: Integer;
begin
result := BusinessProcessor.CurrentChange.OldValueByName[fld_PedidosCliente_RefreshNUM_COPIAS];
end;
procedure TPedidosCliente_RefreshBusinessProcessorRules.SetNUM_COPIASValue(const aValue: Integer);
begin
BusinessProcessor.CurrentChange.NewValueByName[fld_PedidosCliente_RefreshNUM_COPIAS] := aValue;
end;
{ TPedidosCliente_Detalles_RefreshBusinessProcessorRules }
constructor TPedidosCliente_Detalles_RefreshBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);

View File

@ -186,8 +186,8 @@ object srvPedidosCliente: TsrvPedidosCliente
' USUARIO,'#10' IMPORTE_NETO,'#10' IMPORTE_PORTE,'#10' DES' +
'CUENTO,'#10' IMPORTE_DESCUENTO,'#10' BASE_IMPONIBLE,'#10' ' +
'IVA,'#10' IMPORTE_IVA,'#10' IMPORTE_TOTAL,'#10' ID_FORMA_P' +
'AGO,'#10' REF_TIENDA_WEB,'#10' FECHA_PREVISTA_ENVIO'#10'FROM V_P' +
'EDIDOS_CLIENTE'
'AGO,'#10' REF_TIENDA_WEB,'#10' FECHA_PREVISTA_ENVIO,'#10' ' +
'NUM_COPIAS'#10'FROM V_PEDIDOS_CLIENTE'
StatementType = stSQL
ColumnMappings = <
item
@ -203,8 +203,20 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'ID_CLIENTE'
end
item
DatasetField = 'USUARIO'
TableField = 'USUARIO'
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
end
item
DatasetField = 'FECHA_PEDIDO'
@ -235,12 +247,8 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'TELEFONO'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'INCIDENCIAS'
@ -250,14 +258,6 @@ object srvPedidosCliente: TsrvPedidosCliente
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'FECHA_ALTA'
TableField = 'FECHA_ALTA'
@ -267,8 +267,8 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'FECHA_MODIFICACION'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
DatasetField = 'USUARIO'
TableField = 'USUARIO'
end
item
DatasetField = 'IMPORTE_NETO'
@ -298,6 +298,10 @@ object srvPedidosCliente: TsrvPedidosCliente
DatasetField = 'IMPORTE_IVA'
TableField = 'IMPORTE_IVA'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
end
item
DatasetField = 'ID_FORMA_PAGO'
TableField = 'ID_FORMA_PAGO'
@ -311,8 +315,8 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'FECHA_PREVISTA_ENVIO'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'PedidosCliente'
@ -637,6 +641,17 @@ object srvPedidosCliente: TsrvPedidosCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript
@ -899,8 +914,8 @@ object srvPedidosCliente: TsrvPedidosCliente
' USUARIO,'#10' IMPORTE_NETO,'#10' IMPORTE_PORTE,'#10' DES' +
'CUENTO,'#10' IMPORTE_DESCUENTO,'#10' BASE_IMPONIBLE,'#10' ' +
'IVA,'#10' IMPORTE_IVA,'#10' IMPORTE_TOTAL,'#10' ID_FORMA_P' +
'AGO,'#10' REF_TIENDA_WEB,'#10' FECHA_PREVISTA_ENVIO'#10'FROM V_P' +
'EDIDOS_CLIENTE'#10'WHERE'#10' ID = :ID'
'AGO,'#10' REF_TIENDA_WEB,'#10' FECHA_PREVISTA_ENVIO,'#10' ' +
'NUM_COPIAS'#10'FROM V_PEDIDOS_CLIENTE'#10'WHERE'#10' ID = :ID'
StatementType = stSQL
ColumnMappings = <
item
@ -916,8 +931,20 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'ID_CLIENTE'
end
item
DatasetField = 'USUARIO'
TableField = 'USUARIO'
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
end
item
DatasetField = 'FECHA_PEDIDO'
@ -948,12 +975,8 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'TELEFONO'
end
item
DatasetField = 'REFERENCIA'
TableField = 'REFERENCIA'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'INCIDENCIAS'
@ -963,14 +986,6 @@ object srvPedidosCliente: TsrvPedidosCliente
DatasetField = 'INCIDENCIAS_ACTIVAS'
TableField = 'INCIDENCIAS_ACTIVAS'
end
item
DatasetField = 'OBSERVACIONES'
TableField = 'OBSERVACIONES'
end
item
DatasetField = 'NOMBRE'
TableField = 'NOMBRE'
end
item
DatasetField = 'FECHA_ALTA'
TableField = 'FECHA_ALTA'
@ -980,8 +995,8 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'FECHA_MODIFICACION'
end
item
DatasetField = 'SITUACION'
TableField = 'SITUACION'
DatasetField = 'USUARIO'
TableField = 'USUARIO'
end
item
DatasetField = 'IMPORTE_NETO'
@ -1011,6 +1026,10 @@ object srvPedidosCliente: TsrvPedidosCliente
DatasetField = 'IMPORTE_IVA'
TableField = 'IMPORTE_IVA'
end
item
DatasetField = 'IMPORTE_TOTAL'
TableField = 'IMPORTE_TOTAL'
end
item
DatasetField = 'ID_FORMA_PAGO'
TableField = 'ID_FORMA_PAGO'
@ -1024,8 +1043,8 @@ object srvPedidosCliente: TsrvPedidosCliente
TableField = 'FECHA_PREVISTA_ENVIO'
end
item
DatasetField = 'REFERENCIA_CLIENTE'
TableField = 'REFERENCIA_CLIENTE'
DatasetField = 'NUM_COPIAS'
TableField = 'NUM_COPIAS'
end>
end>
Name = 'PedidosCliente_Refresh'
@ -1357,6 +1376,17 @@ object srvPedidosCliente: TsrvPedidosCliente
Calculated = False
Lookup = False
LookupCache = False
end
item
Name = 'NUM_COPIAS'
DataType = datInteger
BlobType = dabtUnknown
DisplayWidth = 0
Alignment = taLeftJustify
InPrimaryKey = False
Calculated = False
Lookup = False
LookupCache = False
end>
BusinessRulesClient.ScriptLanguage = rslPascalScript
BusinessRulesServer.ScriptLanguage = rslPascalScript

View File

@ -2,6 +2,7 @@ inherited fEditorPedidosCliente: TfEditorPedidosCliente
Caption = 'Lista de pedidos de cliente'
ClientWidth = 674
ExplicitWidth = 682
ExplicitHeight = 240
PixelsPerInch = 96
TextHeight = 13
inherited JvNavPanelHeader: TJvNavPanelHeader

View File

@ -208,7 +208,7 @@ begin
if (Application.MessageBox('¿Desea borrar los pedidos de proveedor seleccionados?', 'Atención', MB_YESNO) = IDYES) then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Pedidos as ISeleccionable).SelectedRecords);
APedidos := (Controller as IPedidosClienteController).ExtraerSeleccionados(Pedidos) as IBizPedidoCliente;
APedidos := (Controller as IPedidosClienteController).ExtraerSeleccionados(Pedidos, ViewGrid) as IBizPedidoCliente;
end
end
else begin
@ -293,13 +293,14 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Pedidos as ISeleccionable).SelectedRecords);
APedidos := (Controller as IPedidosClienteController).ExtraerSeleccionados(Pedidos) as IBizPedidoCliente;
APedidos := (Controller as IPedidosClienteController).ExtraerSeleccionados(Pedidos, ViewGrid) as IBizPedidoCliente;
end
else
APedidos := Pedidos;
if Assigned(APedidos) then
FController.Print(APedidos, AllItems);
if FController.Print(APedidos, AllItems) then
RefrescarInterno;
end;
end;
end;
@ -355,7 +356,7 @@ begin
if AllItems then
begin
SeleccionarFilasDesdeGrid(ViewGrid._FocusedView, (Pedidos as ISeleccionable).SelectedRecords);
APedidos := (Controller as IPedidosClienteController).ExtraerSeleccionados(Pedidos) as IBizPedidoCliente;
APedidos := (Controller as IPedidosClienteController).ExtraerSeleccionados(Pedidos, ViewGrid) as IBizPedidoCliente;
end
else
APedidos := Pedidos;

View File

@ -28,6 +28,7 @@ type
procedure SetPedido(const Value: IBizPedidoCliente);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
@ -56,6 +57,11 @@ begin
Result := FPedido;
end;
procedure TfrViewDetallesPedidoCliente.RellenarArticulosInterno;
begin
(Controller as IDetallesPedidoClienteController).AnadirArticulos(Detalles, Pedido.Cliente, False);
end;
procedure TfrViewDetallesPedidoCliente.SetPedido(const Value: IBizPedidoCliente);
begin
FPedido := Value;

View File

@ -34,6 +34,15 @@ inherited frViewPedidosCliente: TfrViewPedidosCliente
end>
OptionsCustomize.ColumnHidingOnGrouping = False
OptionsView.GroupFooters = gfAlwaysVisible
object cxGridViewNUM_COPIAS: TcxGridDBColumn
DataBinding.FieldName = 'NUM_COPIAS'
OnCustomDrawCell = cxGridViewNUM_COPIASCustomDrawCell
MinWidth = 30
Options.HorzSizing = False
VisibleForCustomization = False
Width = 30
IsCaptionAssigned = True
end
object cxGridViewID: TcxGridDBColumn
DataBinding.FieldName = 'ID'
Visible = False
@ -351,6 +360,20 @@ inherited frViewPedidosCliente: TfrViewPedidosCliente
97FDD7DBF8AFCF7740E00D20BA266C3A0000000049454E44AE426082}
Name = 'PngImage4'
Background = clWindow
end
item
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
61000000E54944415478DADD902172C3301045BF4F10C3320B9645B0ACEE0D7C
83F806F5110C0BD51B6C99A160E1C2C085850B0D372C655965DCA28C3D9DB27C
CD8E44FEDBFF55E19FAAEE104013B77EF53ED100B3595967637A1B7813B098C7
F8149E435DC3CE807C29F2943FD48C784ABC0520371FF64D83D377597FF201F8
28C899DE39D3B005D0AE8B0DB0FB3597143A2B98195EA3DA0248DBC67D79FF98
B100682278857540224EF131BCD64BFF62363FE215540594C675C098728BB3F5
2184031C72DDAE1EFFC89EC85EE493D63FB1A81F526BA65D7808BDA8EE1C0611
B969BE09F8ABEE007001C1D97F1131BF40440000000049454E44AE426082}
Name = 'PngImage5'
Background = clWindow
end>
Left = 56
Top = 48

View File

@ -52,6 +52,7 @@ type
TBXItem3: TTBXItem;
cxGridViewTIENDAWEB: TcxGridDBColumn;
cxGridViewFECHA_ENTREGA: TcxGridDBColumn;
cxGridViewNUM_COPIAS: TcxGridDBColumn;
procedure cxGridActiveTabChanged(Sender: TcxCustomGrid; ALevel:
TcxGridLevel);
procedure cxGridViewCODIGOCustomDrawCell(Sender: TcxCustomGridTableView;
@ -69,6 +70,9 @@ type
var ADone: Boolean);
procedure cxGridViewMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure cxGridViewNUM_COPIASCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
private
//Filtros relativos a la vista
@ -228,6 +232,23 @@ begin
end;
end;
procedure TfrViewPedidosCliente.cxGridViewNUM_COPIASCustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
R : TRect;
begin
inherited;
if (AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index] <> '') then
begin
R := AViewInfo.ContentBounds;
ACanvas.FillRect(R);
ACanvas.DrawImage(PngImageList, R.Left, R.Top, 5);
ACanvas.DrawTexT(AViewInfo.GridRecord.DisplayTexts[cxGridViewNUM_COPIAS.Index], R, cxAlignCenter or cxAlignVCenter);
ADone := True;
end;
end;
procedure TfrViewPedidosCliente.cxGridViewStylesGetContentStyle(Sender:
TcxCustomGridTableView; ARecord: TcxCustomGridRecord; AItem:
TcxCustomGridTableItem; out AStyle: TcxStyle);

View File

@ -172,7 +172,7 @@
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
</VersionInfoKeys>
</Delphi.Personality>
<!-- EurekaLog First Line
<!-- EurekaLog First Line
[Exception Log]
EurekaLog Version=519
Activate=0

Some files were not shown because too many files have changed in this diff Show More