Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 37185ea098 |
635
Build/Build.fbp5
635
Build/Build.fbp5
File diff suppressed because it is too large
Load Diff
0
Build/Build.fbw
Normal file
0
Build/Build.fbw
Normal file
@ -523,7 +523,6 @@ CREATE TABLE [RDX_DEVOLUCION_AJUSTES] (
|
|||||||
[COLOR] varchar(10) NOT NULL,
|
[COLOR] varchar(10) NOT NULL,
|
||||||
[APROBADO] char(1) NULL,
|
[APROBADO] char(1) NULL,
|
||||||
[FECHACAMBIO] datetime NULL,
|
[FECHACAMBIO] datetime NULL,
|
||||||
[CANT36] numeric(15, 0) NULL,
|
|
||||||
[CANT38] numeric(15, 0) NULL,
|
[CANT38] numeric(15, 0) NULL,
|
||||||
[CANT40] numeric(15, 0) NULL,
|
[CANT40] numeric(15, 0) NULL,
|
||||||
[CANT42] numeric(15, 0) NULL,
|
[CANT42] numeric(15, 0) NULL,
|
||||||
@ -568,7 +567,6 @@ CREATE TABLE [RDX_RECEPCION_AJUSTES] (
|
|||||||
[COLOR] varchar(10) NOT NULL,
|
[COLOR] varchar(10) NOT NULL,
|
||||||
[APROBADO] char(1) NULL,
|
[APROBADO] char(1) NULL,
|
||||||
[FECHACAMBIO] datetime NULL,
|
[FECHACAMBIO] datetime NULL,
|
||||||
[CANT36] numeric(15, 0) NULL,
|
|
||||||
[CANT38] numeric(15, 0) NULL,
|
[CANT38] numeric(15, 0) NULL,
|
||||||
[CANT40] numeric(15, 0) NULL,
|
[CANT40] numeric(15, 0) NULL,
|
||||||
[CANT42] numeric(15, 0) NULL,
|
[CANT42] numeric(15, 0) NULL,
|
||||||
@ -617,7 +615,6 @@ CREATE TABLE [RDX_TRASPASOS_AJUSTES] (
|
|||||||
[OBSERVACIONES] varchar(255) NULL,
|
[OBSERVACIONES] varchar(255) NULL,
|
||||||
[CONTABILIZAR] char(1) NULL,
|
[CONTABILIZAR] char(1) NULL,
|
||||||
[FECHACAMBIO] datetime NULL,
|
[FECHACAMBIO] datetime NULL,
|
||||||
[CANT36] numeric(15, 0) NULL,
|
|
||||||
[CANT38] numeric(15, 0) NULL,
|
[CANT38] numeric(15, 0) NULL,
|
||||||
[CANT40] numeric(15, 0) NULL,
|
[CANT40] numeric(15, 0) NULL,
|
||||||
[CANT42] numeric(15, 0) NULL,
|
[CANT42] numeric(15, 0) NULL,
|
||||||
@ -876,102 +873,6 @@ ON [RDX_VENTASEDI]
|
|||||||
TO [public]
|
TO [public]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
|
||||||
/*--------------- SQL ---------------*/
|
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_USUARIOS]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
|
||||||
DROP TABLE [RDX_USUARIOS]
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE TABLE [RDX_USUARIOS](
|
|
||||||
[ID] int NOT NULL,
|
|
||||||
[USERNAME] varchar(30) NULL,
|
|
||||||
[LOGIN] varchar(30) NULL,
|
|
||||||
[PASS] varchar(255) NULL,
|
|
||||||
[PASSEXPIRED] datetime NULL,
|
|
||||||
[BLOQUEADO] smallint NULL,
|
|
||||||
[EMAIL] varchar(150) NULL,
|
|
||||||
[USERDAYSSUN] int NULL,
|
|
||||||
[PRIVILEGED] int NULL,
|
|
||||||
[TIPO] char(1) NULL,
|
|
||||||
[ID_PERFIL] int NULL,
|
|
||||||
[CHECKSUM] varchar(250) NULL
|
|
||||||
) ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
ALTER TABLE [RDX_USUARIOS]
|
|
||||||
ADD CONSTRAINT [RDX_USUARIOS_PK]
|
|
||||||
PRIMARY KEY CLUSTERED ([ID])
|
|
||||||
ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_USUARIOS_EVENTOS]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
|
||||||
DROP TABLE [RDX_USUARIOS_EVENTOS]
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE TABLE [RDX_USUARIOS_EVENTOS](
|
|
||||||
[APLICACION] VARCHAR(250),
|
|
||||||
[ID_USUARIO] INT,
|
|
||||||
[FECHA] CHAR(10),
|
|
||||||
[HORA] CHAR(8),
|
|
||||||
[FORM] VARCHAR(250),
|
|
||||||
[TITULO_FORM] VARCHAR(100),
|
|
||||||
[EVENTO] VARCHAR(50),
|
|
||||||
[NOTAS] TEXT,
|
|
||||||
[TNAME] VARCHAR(20)
|
|
||||||
) ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_USUARIOS_LOGON]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
|
||||||
DROP TABLE [RDX_USUARIOS_LOGON]
|
|
||||||
GO
|
|
||||||
|
|
||||||
CREATE TABLE [RDX_USUARIOS_LOGON] (
|
|
||||||
[LOGONID] CHAR(38) NOT NULL,
|
|
||||||
[ID_USUARIO] INT,
|
|
||||||
[APLICACION] VARCHAR(50),
|
|
||||||
[EQUIPO] VARCHAR(50),
|
|
||||||
[DATA] VARCHAR(14)
|
|
||||||
)
|
|
||||||
GO
|
|
||||||
|
|
||||||
ALTER TABLE [RDX_USUARIOS_LOGON]
|
|
||||||
ADD CONSTRAINT [RDX_USUARIOS_LOGON_PK]
|
|
||||||
PRIMARY KEY CLUSTERED ([LOGONID])
|
|
||||||
ON [PRIMARY]
|
|
||||||
GO
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_PERMISOS]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
|
||||||
DROP TABLE [RDX_PERMISOS]
|
|
||||||
GO
|
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE [RDX_PERMISOS] (
|
|
||||||
[ID_USUARIO] INT,
|
|
||||||
[MODULO] VARCHAR(50),
|
|
||||||
[NOMBRECOMP] VARCHAR(50),
|
|
||||||
[CHECKSUM] VARCHAR(250)
|
|
||||||
)
|
|
||||||
GO
|
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_PERMISOSEX]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
|
||||||
DROP TABLE [RDX_PERMISOSEX]
|
|
||||||
GO
|
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE [RDX_PERMISOSEX] (
|
|
||||||
[ID_USUARIO] INT,
|
|
||||||
[MODULO] VARCHAR(50),
|
|
||||||
[NOMBRECOMP] VARCHAR(50),
|
|
||||||
[NOMBREFORM] VARCHAR(50),
|
|
||||||
[CHECKSUM] VARCHAR(250)
|
|
||||||
)
|
|
||||||
GO
|
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,104 +1,79 @@
|
|||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_TRASPASOS_AJUSTES_DESGLOSADO]'))
|
|
||||||
DROP VIEW [RDX_V_TRASPASOS_AJUSTES_DESGLOSADO]
|
DROP VIEW [RDX_V_TRASPASOS_AJUSTES_DESGLOSADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_HOJAS_TRASPASOS]'))
|
|
||||||
DROP VIEW [RDX_V_HOJAS_TRASPASOS]
|
DROP VIEW [RDX_V_HOJAS_TRASPASOS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO]'))
|
|
||||||
DROP VIEW [RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO]
|
DROP VIEW [RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_RECEPCION_DESGLOSADO]'))
|
|
||||||
DROP VIEW [RDX_V_CONTROL_RECEPCION_DESGLOSADO]
|
DROP VIEW [RDX_V_CONTROL_RECEPCION_DESGLOSADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_RECEPCION_AJUSTES_DESGLOSADO]'))
|
|
||||||
DROP VIEW [RDX_V_RECEPCION_AJUSTES_DESGLOSADO]
|
DROP VIEW [RDX_V_RECEPCION_AJUSTES_DESGLOSADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_DEVOLUCIONES]'))
|
|
||||||
DROP VIEW [RDX_V_CONTROL_DEVOLUCIONES]
|
DROP VIEW [RDX_V_CONTROL_DEVOLUCIONES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_DEVOLUCIONES]'))
|
|
||||||
DROP VIEW [RDX_V_DEVOLUCIONES]
|
DROP VIEW [RDX_V_DEVOLUCIONES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_HOJAS_DEVOLUCIONES]'))
|
|
||||||
DROP VIEW [RDX_V_HOJAS_DEVOLUCIONES]
|
DROP VIEW [RDX_V_HOJAS_DEVOLUCIONES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_RECEPCION_ALBARANES]'))
|
|
||||||
DROP VIEW [RDX_V_CONTROL_RECEPCION_ALBARANES]
|
DROP VIEW [RDX_V_CONTROL_RECEPCION_ALBARANES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_ALBARANES_PENDIENTES]'))
|
|
||||||
DROP VIEW [RDX_V_ALBARANES_PENDIENTES]
|
DROP VIEW [RDX_V_ALBARANES_PENDIENTES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_RECEPCION]'))
|
|
||||||
DROP VIEW [RDX_V_CONTROL_RECEPCION]
|
DROP VIEW [RDX_V_CONTROL_RECEPCION]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_RECEPCION]'))
|
|
||||||
DROP VIEW [RDX_V_RECEPCION]
|
DROP VIEW [RDX_V_RECEPCION]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_ALBARANES]'))
|
|
||||||
DROP VIEW [RDX_V_ALBARANES]
|
DROP VIEW [RDX_V_ALBARANES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_TRASPASOS]'))
|
|
||||||
DROP VIEW [RDX_V_CONTROL_TRASPASOS]
|
DROP VIEW [RDX_V_CONTROL_TRASPASOS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_TRASPASOS]'))
|
|
||||||
DROP VIEW [RDX_V_TRASPASOS]
|
DROP VIEW [RDX_V_TRASPASOS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_TRASPASO_SALIDA]'))
|
|
||||||
DROP VIEW [RDX_V_TRASPASO_SALIDA]
|
DROP VIEW [RDX_V_TRASPASO_SALIDA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_TRASPASO_ENTRADA]'))
|
|
||||||
DROP VIEW [RDX_V_TRASPASO_ENTRADA]
|
DROP VIEW [RDX_V_TRASPASO_ENTRADA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI_TRASPASO_SALIDA]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI_TRASPASO_SALIDA]
|
DROP VIEW [RDX_V_INVENTARIOEDI_TRASPASO_SALIDA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA]
|
DROP VIEW [RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI_TRASPASO]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI_TRASPASO]
|
DROP VIEW [RDX_V_INVENTARIOEDI_TRASPASO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA]
|
DROP VIEW [RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI_RECEPCION]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI_RECEPCION]
|
DROP VIEW [RDX_V_INVENTARIOEDI_RECEPCION]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIO_MAXFECHAS]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIO_MAXFECHAS]
|
DROP VIEW [RDX_V_INVENTARIO_MAXFECHAS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_ULTIMO_INVENTARIO]'))
|
|
||||||
DROP VIEW [RDX_V_ULTIMO_INVENTARIO]
|
DROP VIEW [RDX_V_ULTIMO_INVENTARIO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI_PESADA]'))
|
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[RDX_V_INVENTARIOEDI_PESADA]'))
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI_PESADA]
|
DROP VIEW [RDX_V_INVENTARIOEDI_PESADA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIOEDI]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIOEDI]
|
DROP VIEW [RDX_V_INVENTARIOEDI]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
@ -367,9 +342,6 @@ SELECT
|
|||||||
FECHA = RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.FECHA,
|
FECHA = RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.FECHA,
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
||||||
T36 = SUM(CASE WHEN RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.TALLA = 36 THEN
|
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.CANTIDAD, 0)
|
|
||||||
END),
|
|
||||||
T38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.TALLA = 38) OR (UPPER(RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.TALLA) = 'S')) THEN
|
T38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.TALLA = 38) OR (UPPER(RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.TALLA) = 'S')) THEN
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.CANTIDAD, 0)
|
ISNULL(RDX_V_INVENTARIOEDI_TRASPASO_ENTRADA.CANTIDAD, 0)
|
||||||
END),
|
END),
|
||||||
@ -420,9 +392,6 @@ SELECT
|
|||||||
FECHA = RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.FECHA,
|
FECHA = RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.FECHA,
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
||||||
T36 = SUM(CASE WHEN RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.TALLA = 36 THEN
|
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.CANTIDAD, 0)
|
|
||||||
END),
|
|
||||||
T38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.TALLA = 38) OR (UPPER(RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.TALLA) = 'S')) THEN
|
T38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.TALLA = 38) OR (UPPER(RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.TALLA) = 'S')) THEN
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.CANTIDAD, 0)
|
ISNULL(RDX_V_INVENTARIOEDI_TRASPASO_SALIDA.CANTIDAD, 0)
|
||||||
END),
|
END),
|
||||||
@ -469,7 +438,6 @@ SELECT
|
|||||||
PRODUCTO,
|
PRODUCTO,
|
||||||
COLOR,
|
COLOR,
|
||||||
FECHA,
|
FECHA,
|
||||||
T36,
|
|
||||||
T38,
|
T38,
|
||||||
T40,
|
T40,
|
||||||
T42,
|
T42,
|
||||||
@ -489,7 +457,6 @@ SELECT
|
|||||||
PRODUCTO,
|
PRODUCTO,
|
||||||
COLOR,
|
COLOR,
|
||||||
FECHA,
|
FECHA,
|
||||||
T36,
|
|
||||||
T38,
|
T38,
|
||||||
T40,
|
T40,
|
||||||
T42,
|
T42,
|
||||||
@ -518,7 +485,6 @@ SELECT
|
|||||||
RDX_V_TRASPASOS.CODIGO,
|
RDX_V_TRASPASOS.CODIGO,
|
||||||
RDX_V_TRASPASOS.PRODUCTO,
|
RDX_V_TRASPASOS.PRODUCTO,
|
||||||
RDX_V_TRASPASOS.COLOR,
|
RDX_V_TRASPASOS.COLOR,
|
||||||
RDX_V_TRASPASOS.T36,
|
|
||||||
RDX_V_TRASPASOS.T38,
|
RDX_V_TRASPASOS.T38,
|
||||||
RDX_V_TRASPASOS.T40,
|
RDX_V_TRASPASOS.T40,
|
||||||
RDX_V_TRASPASOS.T42,
|
RDX_V_TRASPASOS.T42,
|
||||||
@ -526,7 +492,6 @@ SELECT
|
|||||||
RDX_V_TRASPASOS.T46,
|
RDX_V_TRASPASOS.T46,
|
||||||
RDX_V_TRASPASOS.T48,
|
RDX_V_TRASPASOS.T48,
|
||||||
RDX_V_TRASPASOS.TOTAL,
|
RDX_V_TRASPASOS.TOTAL,
|
||||||
TR36 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT36, RDX_V_TRASPASOS.T36),
|
|
||||||
TR38 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT38, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_S, RDX_V_TRASPASOS.T38)),
|
TR38 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT38, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_S, RDX_V_TRASPASOS.T38)),
|
||||||
TR40 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT40, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_M, RDX_V_TRASPASOS.T40)),
|
TR40 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT40, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_M, RDX_V_TRASPASOS.T40)),
|
||||||
TR42 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT42, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_L, RDX_V_TRASPASOS.T42)),
|
TR42 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT42, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_L, RDX_V_TRASPASOS.T42)),
|
||||||
@ -534,7 +499,6 @@ SELECT
|
|||||||
TR46 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT46, RDX_V_TRASPASOS.T46),
|
TR46 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT46, RDX_V_TRASPASOS.T46),
|
||||||
TR48 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT48, RDX_V_TRASPASOS.T48),
|
TR48 = ISNULL(RDX_TRASPASOS_AJUSTES.CANT48, RDX_V_TRASPASOS.T48),
|
||||||
TOTAL_RECT =
|
TOTAL_RECT =
|
||||||
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT36, RDX_V_TRASPASOS.T36), 0) +
|
|
||||||
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT38, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_S, RDX_V_TRASPASOS.T38)), 0) +
|
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT38, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_S, RDX_V_TRASPASOS.T38)), 0) +
|
||||||
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT40, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_M, RDX_V_TRASPASOS.T40)), 0) +
|
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT40, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_M, RDX_V_TRASPASOS.T40)), 0) +
|
||||||
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT42, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_L, RDX_V_TRASPASOS.T42)), 0) +
|
ISNULL(ISNULL(RDX_TRASPASOS_AJUSTES.CANT42, ISNULL(RDX_TRASPASOS_AJUSTES.CANT_L, RDX_V_TRASPASOS.T42)), 0) +
|
||||||
@ -561,40 +525,21 @@ SELECT
|
|||||||
FATURAMENTO.NOME_CLIFOR AS FILIAL,
|
FATURAMENTO.NOME_CLIFOR AS FILIAL,
|
||||||
PRODUTOS_BARRA.CODIGO_BARRA,
|
PRODUTOS_BARRA.CODIGO_BARRA,
|
||||||
FATURAMENTO_PROD.PRODUTO AS CODIGO,
|
FATURAMENTO_PROD.PRODUTO AS CODIGO,
|
||||||
FATURAMENTO_PROD.F1,
|
|
||||||
FATURAMENTO_PROD.F2,
|
|
||||||
FATURAMENTO_PROD.F3,
|
|
||||||
FATURAMENTO_PROD.F4,
|
|
||||||
FATURAMENTO_PROD.F5,
|
|
||||||
FATURAMENTO_PROD.F6,
|
|
||||||
PRODUCTO = PRODUTOS.DESC_PRODUTO,
|
PRODUCTO = PRODUTOS.DESC_PRODUTO,
|
||||||
PRODUTOS_BARRA.COR_PRODUTO AS COLOR,
|
PRODUTOS_BARRA.COR_PRODUTO AS COLOR,
|
||||||
PRODUTOS_BARRA.GRADE AS TALLA,
|
PRODUTOS_BARRA.GRADE AS TALLA,
|
||||||
CASE
|
CANTIDAD = CASE UPPER(PRODUTOS_BARRA.GRADE)
|
||||||
WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN
|
WHEN '38' THEN F1
|
||||||
CASE UPPER(PRODUTOS_BARRA.GRADE)
|
WHEN 'S' THEN F1
|
||||||
WHEN '36' THEN F1
|
WHEN '40' THEN F2
|
||||||
WHEN '38' THEN F2
|
WHEN 'M' THEN F2
|
||||||
WHEN '40' THEN F3
|
WHEN '42' THEN F3
|
||||||
WHEN '42' THEN F4
|
WHEN 'L' THEN F3
|
||||||
WHEN '44' THEN F5
|
WHEN '44' THEN F4
|
||||||
WHEN '46' THEN F6
|
WHEN 'XL' THEN F4
|
||||||
WHEN '48' THEN F7
|
WHEN '46' THEN F5
|
||||||
END
|
WHEN '48' THEN F6
|
||||||
ELSE
|
END,
|
||||||
CASE UPPER(PRODUTOS_BARRA.GRADE)
|
|
||||||
WHEN '38' THEN F1
|
|
||||||
WHEN 'S' THEN F1
|
|
||||||
WHEN '40' THEN F2
|
|
||||||
WHEN 'M' THEN F2
|
|
||||||
WHEN '42' THEN F3
|
|
||||||
WHEN 'L' THEN F3
|
|
||||||
WHEN '44' THEN F4
|
|
||||||
WHEN 'XL' THEN F4
|
|
||||||
WHEN '46' THEN F5
|
|
||||||
WHEN '48' THEN F6
|
|
||||||
END
|
|
||||||
END AS CANTIDAD,
|
|
||||||
RDX_AJUSTES_ALBARAN.ESTADO,
|
RDX_AJUSTES_ALBARAN.ESTADO,
|
||||||
RDX_AJUSTES_ALBARAN.OBSERVACIONES,
|
RDX_AJUSTES_ALBARAN.OBSERVACIONES,
|
||||||
CONTABILIZAR = ISNULL(RDX_AJUSTES_ALBARAN.CONTABILIZAR, 'S')
|
CONTABILIZAR = ISNULL(RDX_AJUSTES_ALBARAN.CONTABILIZAR, 'S')
|
||||||
@ -604,28 +549,27 @@ INNER JOIN FATURAMENTO ON
|
|||||||
(FATURAMENTO.SERIE_NF = FATURAMENTO_PROD.SERIE_NF))
|
(FATURAMENTO.SERIE_NF = FATURAMENTO_PROD.SERIE_NF))
|
||||||
INNER JOIN FATURAMENTO_TIPO ON
|
INNER JOIN FATURAMENTO_TIPO ON
|
||||||
(LTRIM(RTRIM(FATURAMENTO.TIPO_FATURAMENTO)) = FATURAMENTO_TIPO.TIPO_FATURAMENTO)
|
(LTRIM(RTRIM(FATURAMENTO.TIPO_FATURAMENTO)) = FATURAMENTO_TIPO.TIPO_FATURAMENTO)
|
||||||
INNER JOIN PRODUTOS ON
|
|
||||||
(PRODUTOS.PRODUTO = FATURAMENTO_PROD.PRODUTO)
|
|
||||||
LEFT OUTER JOIN PRODUTOS_BARRA ON
|
|
||||||
(((PRODUTOS_BARRA.PRODUTO = FATURAMENTO_PROD.PRODUTO) AND
|
|
||||||
(PRODUTOS_BARRA.COR_PRODUTO = FATURAMENTO_PROD.COR_PRODUTO)) AND
|
|
||||||
((PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F1 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '36' ELSE '38' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F1 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '36' ELSE 'S' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F2 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '38' ELSE '40' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F2 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '38' ELSE 'M' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F3 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '40' ELSE '42' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F3 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '40' ELSE 'L' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F4 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '42' ELSE '44' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F4 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '42' ELSE 'XL' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F5 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '44' ELSE '46' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F6 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '46' ELSE '48' END END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F7 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '48' ELSE NULL END END)))
|
|
||||||
LEFT OUTER JOIN RDX_AJUSTES_ALBARAN ON
|
|
||||||
(RDX_AJUSTES_ALBARAN.ALBARAN = FATURAMENTO.NF_SAIDA)
|
|
||||||
LEFT OUTER JOIN FILIAIS ON
|
LEFT OUTER JOIN FILIAIS ON
|
||||||
(FILIAIS.FILIAL = FATURAMENTO.NOME_CLIFOR)
|
(FILIAIS.FILIAL = FATURAMENTO.NOME_CLIFOR)
|
||||||
LEFT OUTER JOIN RDX_FILIALES ON
|
LEFT OUTER JOIN RDX_FILIALES ON
|
||||||
(RDX_FILIALES.CODFILIAL = FILIAIS.COD_FILIAL)
|
(RDX_FILIALES.CODFILIAL = FILIAIS.COD_FILIAL)
|
||||||
|
LEFT OUTER JOIN PRODUTOS_BARRA ON
|
||||||
|
(((PRODUTOS_BARRA.PRODUTO = FATURAMENTO_PROD.PRODUTO) AND
|
||||||
|
(PRODUTOS_BARRA.COR_PRODUTO = FATURAMENTO_PROD.COR_PRODUTO)) AND
|
||||||
|
((PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F1 <> 0) THEN '38' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F1 <> 0) THEN 'S' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F2 <> 0) THEN '40' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F2 <> 0) THEN 'M' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F3 <> 0) THEN '42' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F3 <> 0) THEN 'L' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F4 <> 0) THEN '44' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F4 <> 0) THEN 'XL' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F5 <> 0) THEN '46' END) OR
|
||||||
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (FATURAMENTO_PROD.F6 <> 0) THEN '48' END)))
|
||||||
|
LEFT OUTER JOIN PRODUTOS ON
|
||||||
|
(PRODUTOS.PRODUTO = PRODUTOS_BARRA.PRODUTO)
|
||||||
|
LEFT OUTER JOIN RDX_AJUSTES_ALBARAN ON
|
||||||
|
(RDX_AJUSTES_ALBARAN.ALBARAN = FATURAMENTO.NF_SAIDA)
|
||||||
WHERE FATURAMENTO_TIPO.INDICADOR_TIPO = 'VTPT' /* ALBARANES DE PRODUCTOS TERMINADOS */
|
WHERE FATURAMENTO_TIPO.INDICADOR_TIPO = 'VTPT' /* ALBARANES DE PRODUCTOS TERMINADOS */
|
||||||
AND FATURAMENTO.NOME_CLIFOR LIKE '%INGLES%' /* ALBARANES PARA CENTROS DEL CORTE INGLES */
|
AND FATURAMENTO.NOME_CLIFOR LIKE '%INGLES%' /* ALBARANES PARA CENTROS DEL CORTE INGLES */
|
||||||
AND FATURAMENTO.EMISSAO >= convert(datetime, '20060601', 112) /* PARA NO COGER AÑOS ANTERIORES */
|
AND FATURAMENTO.EMISSAO >= convert(datetime, '20060601', 112) /* PARA NO COGER AÑOS ANTERIORES */
|
||||||
@ -649,9 +593,6 @@ SELECT
|
|||||||
CONTABILIZAR_ALBARAN = ISNULL(RDX_V_ALBARANES.CONTABILIZAR, 'S'),
|
CONTABILIZAR_ALBARAN = ISNULL(RDX_V_ALBARANES.CONTABILIZAR, 'S'),
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS DESDE VARELA */
|
/* CANTIDADES ENVIADAS DESDE VARELA */
|
||||||
E36 = SUM(CASE WHEN RDX_V_ALBARANES.TALLA = 36 THEN
|
|
||||||
ISNULL(RDX_V_ALBARANES.CANTIDAD, 0)
|
|
||||||
END),
|
|
||||||
E38 = SUM(CASE WHEN ((RDX_V_ALBARANES.TALLA = 38) OR (UPPER(RDX_V_ALBARANES.TALLA) = 'S')) THEN
|
E38 = SUM(CASE WHEN ((RDX_V_ALBARANES.TALLA = 38) OR (UPPER(RDX_V_ALBARANES.TALLA) = 'S')) THEN
|
||||||
ISNULL(RDX_V_ALBARANES.CANTIDAD, 0)
|
ISNULL(RDX_V_ALBARANES.CANTIDAD, 0)
|
||||||
END),
|
END),
|
||||||
@ -678,9 +619,6 @@ SELECT
|
|||||||
),
|
),
|
||||||
|
|
||||||
/* CANTIDADES RECIBIDAS EN EL CENTRO*/
|
/* CANTIDADES RECIBIDAS EN EL CENTRO*/
|
||||||
R36 = SUM(CASE WHEN RDX_V_INVENTARIOEDI_RECEPCION.TALLA = 36 THEN
|
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_RECEPCION.CANTIDAD, 0)
|
|
||||||
END),
|
|
||||||
R38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_RECEPCION.TALLA = 38) OR (UPPER(RDX_V_INVENTARIOEDI_RECEPCION.TALLA) = 'S')) THEN
|
R38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_RECEPCION.TALLA = 38) OR (UPPER(RDX_V_INVENTARIOEDI_RECEPCION.TALLA) = 'S')) THEN
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_RECEPCION.CANTIDAD, 0)
|
ISNULL(RDX_V_INVENTARIOEDI_RECEPCION.CANTIDAD, 0)
|
||||||
END),
|
END),
|
||||||
@ -748,13 +686,12 @@ SELECT
|
|||||||
RDX_V_RECEPCION.CONTABILIZAR_ALBARAN,
|
RDX_V_RECEPCION.CONTABILIZAR_ALBARAN,
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS DESDE VARELA */
|
/* CANTIDADES ENVIADAS DESDE VARELA */
|
||||||
E36, E38, E40, E42, E44, E46, E48, RDX_V_RECEPCION.ENVIADO,
|
E38, E40, E42, E44, E46, E48, RDX_V_RECEPCION.ENVIADO,
|
||||||
|
|
||||||
/* CANTIDADES RECIBIDAS EN EL CENTRO*/
|
/* CANTIDADES RECIBIDAS EN EL CENTRO*/
|
||||||
R36, R38, R40, R42, R44, R46, R48, RDX_V_RECEPCION.RECIBIDO,
|
R38, R40, R42, R44, R46, R48, RDX_V_RECEPCION.RECIBIDO,
|
||||||
|
|
||||||
/* CANTIDADES RECIBIDAS RECTIFICADAS */
|
/* CANTIDADES RECIBIDAS RECTIFICADAS */
|
||||||
RR36 = ISNULL(RDX_RECEPCION_AJUSTES.CANT36, R36),
|
|
||||||
RR38 = ISNULL(RDX_RECEPCION_AJUSTES.CANT38, ISNULL(RDX_RECEPCION_AJUSTES.CANT_S, R38)),
|
RR38 = ISNULL(RDX_RECEPCION_AJUSTES.CANT38, ISNULL(RDX_RECEPCION_AJUSTES.CANT_S, R38)),
|
||||||
RR40 = ISNULL(RDX_RECEPCION_AJUSTES.CANT40, ISNULL(RDX_RECEPCION_AJUSTES.CANT_M, R40)),
|
RR40 = ISNULL(RDX_RECEPCION_AJUSTES.CANT40, ISNULL(RDX_RECEPCION_AJUSTES.CANT_M, R40)),
|
||||||
RR42 = ISNULL(RDX_RECEPCION_AJUSTES.CANT42, ISNULL(RDX_RECEPCION_AJUSTES.CANT_L, R42)),
|
RR42 = ISNULL(RDX_RECEPCION_AJUSTES.CANT42, ISNULL(RDX_RECEPCION_AJUSTES.CANT_L, R42)),
|
||||||
@ -763,7 +700,6 @@ SELECT
|
|||||||
RR48 = ISNULL(RDX_RECEPCION_AJUSTES.CANT48, R48),
|
RR48 = ISNULL(RDX_RECEPCION_AJUSTES.CANT48, R48),
|
||||||
|
|
||||||
RECIBIDO_RECT =
|
RECIBIDO_RECT =
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT36, ISNULL(R36, 0)) +
|
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT38, ISNULL(RDX_RECEPCION_AJUSTES.CANT_S, ISNULL(R38, 0))) +
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT38, ISNULL(RDX_RECEPCION_AJUSTES.CANT_S, ISNULL(R38, 0))) +
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT40, ISNULL(RDX_RECEPCION_AJUSTES.CANT_M, ISNULL(R40, 0))) +
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT40, ISNULL(RDX_RECEPCION_AJUSTES.CANT_M, ISNULL(R40, 0))) +
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT42, ISNULL(RDX_RECEPCION_AJUSTES.CANT_L, ISNULL(R42, 0))) +
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT42, ISNULL(RDX_RECEPCION_AJUSTES.CANT_L, ISNULL(R42, 0))) +
|
||||||
@ -772,7 +708,7 @@ SELECT
|
|||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT48, ISNULL(R48, 0)),
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT48, ISNULL(R48, 0)),
|
||||||
|
|
||||||
DIFERENCIA =
|
DIFERENCIA =
|
||||||
( ISNULL(RDX_RECEPCION_AJUSTES.CANT46, ISNULL(R36, 0)) +
|
(
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT38, ISNULL(RDX_RECEPCION_AJUSTES.CANT_S, ISNULL(R38, 0))) +
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT38, ISNULL(RDX_RECEPCION_AJUSTES.CANT_S, ISNULL(R38, 0))) +
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT40, ISNULL(RDX_RECEPCION_AJUSTES.CANT_M, ISNULL(R40, 0))) +
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT40, ISNULL(RDX_RECEPCION_AJUSTES.CANT_M, ISNULL(R40, 0))) +
|
||||||
ISNULL(RDX_RECEPCION_AJUSTES.CANT42, ISNULL(RDX_RECEPCION_AJUSTES.CANT_L, ISNULL(R42, 0))) +
|
ISNULL(RDX_RECEPCION_AJUSTES.CANT42, ISNULL(RDX_RECEPCION_AJUSTES.CANT_L, ISNULL(R42, 0))) +
|
||||||
@ -810,7 +746,7 @@ select RDX_V_CONTROL_RECEPCION.ALBARAN
|
|||||||
WHEN 'N' THEN 'PENDIENTE'
|
WHEN 'N' THEN 'PENDIENTE'
|
||||||
WHEN 'S' THEN 'APROBADO'
|
WHEN 'S' THEN 'APROBADO'
|
||||||
END
|
END
|
||||||
, CENTRO, FILIAL, FECHA, CODIGO, PRODUCTO, COLOR, E36, E38, E40, E42, E44, E46, E48
|
, CENTRO, FILIAL, FECHA, CODIGO, PRODUCTO, COLOR, E38, E40, E42, E44, E46, E48
|
||||||
from RDX_V_CONTROL_RECEPCION
|
from RDX_V_CONTROL_RECEPCION
|
||||||
left join RDX_V_ALBARANES_PENDIENTES
|
left join RDX_V_ALBARANES_PENDIENTES
|
||||||
on (RDX_V_CONTROL_RECEPCION.ALBARAN = RDX_V_ALBARANES_PENDIENTES.ALBARAN)
|
on (RDX_V_CONTROL_RECEPCION.ALBARAN = RDX_V_ALBARANES_PENDIENTES.ALBARAN)
|
||||||
@ -832,51 +768,37 @@ SELECT
|
|||||||
PRODUCTO = ISNULL(PRODUTOS.DESC_PRODUTO, '*** ERROR REFERENCIA ****'),
|
PRODUCTO = ISNULL(PRODUTOS.DESC_PRODUTO, '*** ERROR REFERENCIA ****'),
|
||||||
PRODUTOS_BARRA.COR_PRODUTO AS COLOR,
|
PRODUTOS_BARRA.COR_PRODUTO AS COLOR,
|
||||||
PRODUTOS_BARRA.GRADE AS TALLA,
|
PRODUTOS_BARRA.GRADE AS TALLA,
|
||||||
CASE
|
CANTIDAD = CASE UPPER(PRODUTOS_BARRA.GRADE)
|
||||||
WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN
|
WHEN '38' THEN EN1
|
||||||
CASE UPPER(PRODUTOS_BARRA.GRADE)
|
WHEN 'S' THEN EN1
|
||||||
WHEN '36' THEN EN1
|
WHEN '40' THEN EN2
|
||||||
WHEN '38' THEN EN2
|
WHEN 'M' THEN EN2
|
||||||
WHEN '40' THEN EN3
|
WHEN '42' THEN EN3
|
||||||
WHEN '42' THEN EN4
|
WHEN 'L' THEN EN3
|
||||||
WHEN '44' THEN EN5
|
WHEN '44' THEN EN4
|
||||||
WHEN '46' THEN EN6
|
WHEN 'XL' THEN EN4
|
||||||
WHEN '48' THEN EN7
|
WHEN '46' THEN EN5
|
||||||
END
|
WHEN '48' THEN EN6
|
||||||
ELSE
|
END,
|
||||||
CASE UPPER(PRODUTOS_BARRA.GRADE)
|
|
||||||
WHEN '38' THEN EN1
|
|
||||||
WHEN 'S' THEN EN1
|
|
||||||
WHEN '40' THEN EN2
|
|
||||||
WHEN 'M' THEN EN2
|
|
||||||
WHEN '42' THEN EN3
|
|
||||||
WHEN 'L' THEN EN3
|
|
||||||
WHEN '44' THEN EN4
|
|
||||||
WHEN 'XL' THEN EN4
|
|
||||||
WHEN '46' THEN EN5
|
|
||||||
WHEN '48' THEN EN6
|
|
||||||
END
|
|
||||||
END AS CANTIDAD,
|
|
||||||
RDX_AJUSTES_HOJA_DEVOLUCIONES.ESTADO,
|
RDX_AJUSTES_HOJA_DEVOLUCIONES.ESTADO,
|
||||||
RDX_AJUSTES_HOJA_DEVOLUCIONES.OBSERVACIONES,
|
RDX_AJUSTES_HOJA_DEVOLUCIONES.OBSERVACIONES,
|
||||||
CONTABILIZAR = ISNULL(RDX_AJUSTES_HOJA_DEVOLUCIONES.CONTABILIZAR, 'S')
|
CONTABILIZAR = ISNULL(RDX_AJUSTES_HOJA_DEVOLUCIONES.CONTABILIZAR, 'S')
|
||||||
FROM LOJA_SAIDAS_PRODUTO
|
FROM LOJA_SAIDAS_PRODUTO
|
||||||
INNER JOIN LOJA_SAIDAS ON (LOJA_SAIDAS.ROMANEIO_PRODUTO = LOJA_SAIDAS_PRODUTO.ROMANEIO_PRODUTO)
|
INNER JOIN LOJA_SAIDAS ON (LOJA_SAIDAS.ROMANEIO_PRODUTO = LOJA_SAIDAS_PRODUTO.ROMANEIO_PRODUTO)
|
||||||
INNER JOIN PRODUTOS on (PRODUTOS.PRODUTO = LOJA_SAIDAS_PRODUTO.PRODUTO)
|
|
||||||
INNER JOIN PRODUTOS_BARRA on
|
INNER JOIN PRODUTOS_BARRA on
|
||||||
(((PRODUTOS_BARRA.PRODUTO = LOJA_SAIDAS_PRODUTO.PRODUTO) AND
|
(((PRODUTOS_BARRA.PRODUTO = LOJA_SAIDAS_PRODUTO.PRODUTO) AND
|
||||||
(PRODUTOS_BARRA.COR_PRODUTO = LOJA_SAIDAS_PRODUTO.COR_PRODUTO)) AND
|
(PRODUTOS_BARRA.COR_PRODUTO = LOJA_SAIDAS_PRODUTO.COR_PRODUTO)) AND
|
||||||
((PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '36' ELSE '38' END END) OR
|
((PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN '38' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '36' ELSE 'S' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN 'S' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '38' ELSE '40' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN '40' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '38' ELSE 'M' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN 'M' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN3 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '40' ELSE '42' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN3 <> 0) THEN '42' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN3 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '40' ELSE 'L' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN3 <> 0) THEN 'L' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN4 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '42' ELSE '44' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN4 <> 0) THEN '44' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN4 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '42' ELSE 'XL' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN4 <> 0) THEN 'XL' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN5 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '44' ELSE '46' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN5 <> 0) THEN '46' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN6 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '46' ELSE '48' END END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN6 <> 0) THEN '48' END)))
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN7 <> 0) THEN CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN '48' ELSE NULL END END)))
|
INNER JOIN PRODUTOS on (PRODUTOS.PRODUTO = PRODUTOS_BARRA.PRODUTO)
|
||||||
INNER JOIN FILIAIS AS FILIAIS_ORI ON (FILIAIS_ORI.FILIAL = LOJA_SAIDAS.FILIAL)
|
INNER JOIN FILIAIS AS FILIAIS_ORI ON (FILIAIS_ORI.FILIAL = LOJA_SAIDAS.FILIAL)
|
||||||
INNER JOIN RDX_FILIALES AS RDX_FILIALES_ORI ON (RDX_FILIALES_ORI.CODFILIAL = FILIAIS_ORI.COD_FILIAL)
|
INNER JOIN RDX_FILIALES AS RDX_FILIALES_ORI ON (RDX_FILIALES_ORI.CODFILIAL = FILIAIS_ORI.COD_FILIAL)
|
||||||
INNER JOIN FILIAIS AS FILIAIS_DES ON (FILIAIS_DES.FILIAL = LOJA_SAIDAS.FILIAL_DESTINO)
|
INNER JOIN FILIAIS AS FILIAIS_DES ON (FILIAIS_DES.FILIAL = LOJA_SAIDAS.FILIAL_DESTINO)
|
||||||
@ -906,9 +828,6 @@ SELECT
|
|||||||
CONTABILIZAR_HOJA = ISNULL(RDX_V_HOJAS_DEVOLUCIONES.CONTABILIZAR, 'S'),
|
CONTABILIZAR_HOJA = ISNULL(RDX_V_HOJAS_DEVOLUCIONES.CONTABILIZAR, 'S'),
|
||||||
|
|
||||||
/* CANTIDADES SOLICITADAS DESDE VARELA */
|
/* CANTIDADES SOLICITADAS DESDE VARELA */
|
||||||
S36 = SUM(CASE WHEN RDX_V_HOJAS_DEVOLUCIONES.TALLA = 36 THEN
|
|
||||||
ISNULL(RDX_V_HOJAS_DEVOLUCIONES.CANTIDAD, 0)
|
|
||||||
END),
|
|
||||||
S38 = SUM(CASE WHEN ((RDX_V_HOJAS_DEVOLUCIONES.TALLA = 38) OR (RDX_V_HOJAS_DEVOLUCIONES.TALLA = 'S')) THEN
|
S38 = SUM(CASE WHEN ((RDX_V_HOJAS_DEVOLUCIONES.TALLA = 38) OR (RDX_V_HOJAS_DEVOLUCIONES.TALLA = 'S')) THEN
|
||||||
ISNULL(RDX_V_HOJAS_DEVOLUCIONES.CANTIDAD, 0)
|
ISNULL(RDX_V_HOJAS_DEVOLUCIONES.CANTIDAD, 0)
|
||||||
END),
|
END),
|
||||||
@ -935,9 +854,6 @@ SELECT
|
|||||||
),
|
),
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
||||||
E36 = SUM(CASE WHEN RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.TALLA = 36 THEN
|
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.CANTIDAD, 0)
|
|
||||||
END),
|
|
||||||
E38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.TALLA = 38) OR (RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.TALLA = 'S')) THEN
|
E38 = SUM(CASE WHEN ((RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.TALLA = 38) OR (RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.TALLA = 'S')) THEN
|
||||||
ISNULL(RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.CANTIDAD, 0)
|
ISNULL(RDX_V_INVENTARIOEDI_DEVOLUCION_Y_TARA.CANTIDAD, 0)
|
||||||
END),
|
END),
|
||||||
@ -1005,13 +921,12 @@ SELECT
|
|||||||
RDX_V_DEVOLUCIONES.CONTABILIZAR_HOJA,
|
RDX_V_DEVOLUCIONES.CONTABILIZAR_HOJA,
|
||||||
|
|
||||||
/* CANTIDADES SOLICITADAS DESDE VARELA */
|
/* CANTIDADES SOLICITADAS DESDE VARELA */
|
||||||
S36, S38, S40, S42, S44, S46, S48, RDX_V_DEVOLUCIONES.SOLICITADO,
|
S38, S40, S42, S44, S46, S48, RDX_V_DEVOLUCIONES.SOLICITADO,
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
/* CANTIDADES ENVIADAS DESDE EL CENTRO*/
|
||||||
E36, E38, E40, E42, E44, E46, E48, RDX_V_DEVOLUCIONES.ENVIADO,
|
E38, E40, E42, E44, E46, E48, RDX_V_DEVOLUCIONES.ENVIADO,
|
||||||
|
|
||||||
/* CANTIDADES ENVIADAS RECTIFICADAS */
|
/* CANTIDADES ENVIADAS RECTIFICADAS */
|
||||||
ER36 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT36, E36),
|
|
||||||
ER38 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT38, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_S, E38)),
|
ER38 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT38, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_S, E38)),
|
||||||
ER40 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT40, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_M, E40)),
|
ER40 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT40, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_M, E40)),
|
||||||
ER42 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT42, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_L, E42)),
|
ER42 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT42, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_L, E42)),
|
||||||
@ -1020,7 +935,6 @@ SELECT
|
|||||||
ER48 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT48, E48),
|
ER48 = ISNULL(RDX_DEVOLUCION_AJUSTES.CANT48, E48),
|
||||||
|
|
||||||
ENVIADO_RECT =
|
ENVIADO_RECT =
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT36, ISNULL(E36, 0)) +
|
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT38, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_S, ISNULL(E38, 0))) +
|
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT38, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_S, ISNULL(E38, 0))) +
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT40, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_M, ISNULL(E40, 0))) +
|
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT40, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_M, ISNULL(E40, 0))) +
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT42, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_L, ISNULL(E42, 0))) +
|
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT42, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_L, ISNULL(E42, 0))) +
|
||||||
@ -1030,7 +944,6 @@ SELECT
|
|||||||
|
|
||||||
DIFERENCIA =
|
DIFERENCIA =
|
||||||
(
|
(
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT46, ISNULL(E36, 0)) +
|
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT38, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_S, ISNULL(E38, 0))) +
|
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT38, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_S, ISNULL(E38, 0))) +
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT40, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_M, ISNULL(E40, 0))) +
|
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT40, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_M, ISNULL(E40, 0))) +
|
||||||
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT42, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_L, ISNULL(E42, 0))) +
|
ISNULL(RDX_DEVOLUCION_AJUSTES.CANT42, ISNULL(RDX_DEVOLUCION_AJUSTES.CANT_L, ISNULL(E42, 0))) +
|
||||||
@ -1060,7 +973,6 @@ SELECT
|
|||||||
RDX_RECEPCION_AJUSTES.COLOR,
|
RDX_RECEPCION_AJUSTES.COLOR,
|
||||||
RDX_TALLAS.TALLA,
|
RDX_TALLAS.TALLA,
|
||||||
CANTIDAD = CASE UPPER(RDX_TALLAS.TALLA)
|
CANTIDAD = CASE UPPER(RDX_TALLAS.TALLA)
|
||||||
WHEN '36' THEN RDX_RECEPCION_AJUSTES.CANT36
|
|
||||||
WHEN '38' THEN RDX_RECEPCION_AJUSTES.CANT38
|
WHEN '38' THEN RDX_RECEPCION_AJUSTES.CANT38
|
||||||
WHEN '40' THEN RDX_RECEPCION_AJUSTES.CANT40
|
WHEN '40' THEN RDX_RECEPCION_AJUSTES.CANT40
|
||||||
WHEN '42' THEN RDX_RECEPCION_AJUSTES.CANT42
|
WHEN '42' THEN RDX_RECEPCION_AJUSTES.CANT42
|
||||||
@ -1077,7 +989,6 @@ LEFT OUTER JOIN RDX_FILIALES ON (RDX_FILIALES.CODBARRA = RDX_RECEPCION_AJUSTES.C
|
|||||||
LEFT OUTER JOIN FILIAIS ON (FILIAIS.COD_FILIAL = RDX_FILIALES.CODFILIAL)
|
LEFT OUTER JOIN FILIAIS ON (FILIAIS.COD_FILIAL = RDX_FILIALES.CODFILIAL)
|
||||||
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = RDX_RECEPCION_AJUSTES.CODIGO)
|
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = RDX_RECEPCION_AJUSTES.CODIGO)
|
||||||
WHERE CASE RDX_TALLAS.TALLA
|
WHERE CASE RDX_TALLAS.TALLA
|
||||||
WHEN '36' THEN RDX_RECEPCION_AJUSTES.CANT36
|
|
||||||
WHEN '38' THEN RDX_RECEPCION_AJUSTES.CANT38
|
WHEN '38' THEN RDX_RECEPCION_AJUSTES.CANT38
|
||||||
WHEN '40' THEN RDX_RECEPCION_AJUSTES.CANT40
|
WHEN '40' THEN RDX_RECEPCION_AJUSTES.CANT40
|
||||||
WHEN '42' THEN RDX_RECEPCION_AJUSTES.CANT42
|
WHEN '42' THEN RDX_RECEPCION_AJUSTES.CANT42
|
||||||
@ -1135,7 +1046,6 @@ SELECT
|
|||||||
RDX_DEVOLUCION_AJUSTES.COLOR,
|
RDX_DEVOLUCION_AJUSTES.COLOR,
|
||||||
RDX_TALLAS.TALLA,
|
RDX_TALLAS.TALLA,
|
||||||
CANTIDAD = CASE RDX_TALLAS.TALLA
|
CANTIDAD = CASE RDX_TALLAS.TALLA
|
||||||
WHEN '36' THEN RDX_DEVOLUCION_AJUSTES.CANT36
|
|
||||||
WHEN '38' THEN RDX_DEVOLUCION_AJUSTES.CANT38
|
WHEN '38' THEN RDX_DEVOLUCION_AJUSTES.CANT38
|
||||||
WHEN '40' THEN RDX_DEVOLUCION_AJUSTES.CANT40
|
WHEN '40' THEN RDX_DEVOLUCION_AJUSTES.CANT40
|
||||||
WHEN '42' THEN RDX_DEVOLUCION_AJUSTES.CANT42
|
WHEN '42' THEN RDX_DEVOLUCION_AJUSTES.CANT42
|
||||||
@ -1152,7 +1062,6 @@ LEFT OUTER JOIN RDX_FILIALES ON (RDX_FILIALES.CODBARRA = RDX_DEVOLUCION_AJUSTES.
|
|||||||
LEFT OUTER JOIN FILIAIS ON (FILIAIS.COD_FILIAL = RDX_FILIALES.CODFILIAL)
|
LEFT OUTER JOIN FILIAIS ON (FILIAIS.COD_FILIAL = RDX_FILIALES.CODFILIAL)
|
||||||
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = RDX_DEVOLUCION_AJUSTES.CODIGO)
|
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = RDX_DEVOLUCION_AJUSTES.CODIGO)
|
||||||
WHERE CASE RDX_TALLAS.TALLA
|
WHERE CASE RDX_TALLAS.TALLA
|
||||||
WHEN '36' THEN RDX_DEVOLUCION_AJUSTES.CANT36
|
|
||||||
WHEN '38' THEN RDX_DEVOLUCION_AJUSTES.CANT38
|
WHEN '38' THEN RDX_DEVOLUCION_AJUSTES.CANT38
|
||||||
WHEN '40' THEN RDX_DEVOLUCION_AJUSTES.CANT40
|
WHEN '40' THEN RDX_DEVOLUCION_AJUSTES.CANT40
|
||||||
WHEN '42' THEN RDX_DEVOLUCION_AJUSTES.CANT42
|
WHEN '42' THEN RDX_DEVOLUCION_AJUSTES.CANT42
|
||||||
@ -1182,8 +1091,7 @@ SELECT
|
|||||||
PRODUTOS_BARRA.COR_PRODUTO AS COLOR,
|
PRODUTOS_BARRA.COR_PRODUTO AS COLOR,
|
||||||
PRODUTOS_BARRA.GRADE AS TALLA,
|
PRODUTOS_BARRA.GRADE AS TALLA,
|
||||||
CANTIDAD = CASE UPPER(PRODUTOS_BARRA.GRADE)
|
CANTIDAD = CASE UPPER(PRODUTOS_BARRA.GRADE)
|
||||||
WHEN '36' THEN EN7
|
WHEN '38' THEN EN1
|
||||||
WHEN '38' THEN EN1
|
|
||||||
WHEN 'S' THEN EN1
|
WHEN 'S' THEN EN1
|
||||||
WHEN '40' THEN EN2
|
WHEN '40' THEN EN2
|
||||||
WHEN 'M' THEN EN2
|
WHEN 'M' THEN EN2
|
||||||
@ -1199,8 +1107,7 @@ INNER JOIN LOJA_SAIDAS ON (LOJA_SAIDAS.ROMANEIO_PRODUTO = LOJA_SAIDAS_PRODUTO.RO
|
|||||||
INNER JOIN PRODUTOS_BARRA on
|
INNER JOIN PRODUTOS_BARRA on
|
||||||
(((PRODUTOS_BARRA.PRODUTO = LOJA_SAIDAS_PRODUTO.PRODUTO) AND
|
(((PRODUTOS_BARRA.PRODUTO = LOJA_SAIDAS_PRODUTO.PRODUTO) AND
|
||||||
(PRODUTOS_BARRA.COR_PRODUTO = LOJA_SAIDAS_PRODUTO.COR_PRODUTO)) AND
|
(PRODUTOS_BARRA.COR_PRODUTO = LOJA_SAIDAS_PRODUTO.COR_PRODUTO)) AND
|
||||||
((PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN7 <> 0) THEN '36' END) OR
|
((PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN '38' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN '38' END) OR
|
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN 'S' END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN1 <> 0) THEN 'S' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN '40' END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN '40' END) OR
|
||||||
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN 'M' END) OR
|
(PRODUTOS_BARRA.GRADE = CASE WHEN (LOJA_SAIDAS_PRODUTO.EN2 <> 0) THEN 'M' END) OR
|
||||||
@ -1234,7 +1141,6 @@ SELECT
|
|||||||
RDX_TRASPASOS_AJUSTES.COLOR,
|
RDX_TRASPASOS_AJUSTES.COLOR,
|
||||||
RDX_TALLAS.TALLA,
|
RDX_TALLAS.TALLA,
|
||||||
CANTIDAD = CASE UPPER(RDX_TALLAS.TALLA)
|
CANTIDAD = CASE UPPER(RDX_TALLAS.TALLA)
|
||||||
WHEN '36' THEN RDX_TRASPASOS_AJUSTES.CANT36
|
|
||||||
WHEN '38' THEN RDX_TRASPASOS_AJUSTES.CANT38
|
WHEN '38' THEN RDX_TRASPASOS_AJUSTES.CANT38
|
||||||
WHEN '40' THEN RDX_TRASPASOS_AJUSTES.CANT40
|
WHEN '40' THEN RDX_TRASPASOS_AJUSTES.CANT40
|
||||||
WHEN '42' THEN RDX_TRASPASOS_AJUSTES.CANT42
|
WHEN '42' THEN RDX_TRASPASOS_AJUSTES.CANT42
|
||||||
@ -1253,7 +1159,6 @@ LEFT OUTER JOIN RDX_FILIALES AS RDX_FILIALES2 ON (RDX_FILIALES2.CODBARRA = RDX_T
|
|||||||
LEFT OUTER JOIN FILIAIS AS FILIAIS2 ON (FILIAIS2.COD_FILIAL = RDX_FILIALES2.CODFILIAL)
|
LEFT OUTER JOIN FILIAIS AS FILIAIS2 ON (FILIAIS2.COD_FILIAL = RDX_FILIALES2.CODFILIAL)
|
||||||
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = RDX_TRASPASOS_AJUSTES.CODIGO)
|
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = RDX_TRASPASOS_AJUSTES.CODIGO)
|
||||||
WHERE CASE RDX_TALLAS.TALLA
|
WHERE CASE RDX_TALLAS.TALLA
|
||||||
WHEN '36' THEN RDX_TRASPASOS_AJUSTES.CANT36
|
|
||||||
WHEN '38' THEN RDX_TRASPASOS_AJUSTES.CANT38
|
WHEN '38' THEN RDX_TRASPASOS_AJUSTES.CANT38
|
||||||
WHEN '40' THEN RDX_TRASPASOS_AJUSTES.CANT40
|
WHEN '40' THEN RDX_TRASPASOS_AJUSTES.CANT40
|
||||||
WHEN '42' THEN RDX_TRASPASOS_AJUSTES.CANT42
|
WHEN '42' THEN RDX_TRASPASOS_AJUSTES.CANT42
|
||||||
|
|||||||
@ -1,36 +1,28 @@
|
|||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASTERMINADAS]'))
|
|
||||||
DROP VIEW [RDX_V_VENTASTERMINADAS]
|
DROP VIEW [RDX_V_VENTASTERMINADAS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASPROCESOPENDIENTES]'))
|
|
||||||
DROP VIEW [RDX_V_VENTASPROCESOPENDIENTES]
|
DROP VIEW [RDX_V_VENTASPROCESOPENDIENTES]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASPROCESO]'))
|
|
||||||
DROP VIEW [RDX_V_VENTASPROCESO]
|
DROP VIEW [RDX_V_VENTASPROCESO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_REFERENCIA_GENERICA]'))
|
|
||||||
DROP VIEW [RDX_V_REFERENCIA_GENERICA]
|
DROP VIEW [RDX_V_REFERENCIA_GENERICA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASEDI_ERRONEAS]'))
|
|
||||||
DROP VIEW [RDX_V_VENTASEDI_ERRONEAS]
|
DROP VIEW [RDX_V_VENTASEDI_ERRONEAS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASEDI_RESUELTAS]'))
|
|
||||||
DROP VIEW [RDX_V_VENTASEDI_RESUELTAS]
|
DROP VIEW [RDX_V_VENTASEDI_RESUELTAS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_REFERENCIAS_RESUELTAS]'))
|
|
||||||
DROP VIEW [RDX_V_REFERENCIAS_RESUELTAS]
|
DROP VIEW [RDX_V_REFERENCIAS_RESUELTAS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASEDI_PESADA]'))
|
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[RDX_V_VENTASEDI_PESADA]'))
|
||||||
DROP VIEW [RDX_V_VENTASEDI_PESADA]
|
DROP VIEW [RDX_V_VENTASEDI_PESADA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_VENTASEDI]'))
|
|
||||||
DROP VIEW [RDX_V_VENTASEDI]
|
DROP VIEW [RDX_V_VENTASEDI]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
@ -148,14 +140,12 @@ SELECT
|
|||||||
TIPO_PRODUTO = ISNULL(PRODUTOS.TIPO_PRODUTO, RDX_V_VENTASEDI.TIPO_PRODUTO),
|
TIPO_PRODUTO = ISNULL(PRODUTOS.TIPO_PRODUTO, RDX_V_VENTASEDI.TIPO_PRODUTO),
|
||||||
GRUPO_PRODUTO = ISNULL(PRODUTOS.GRUPO_PRODUTO, RDX_V_VENTASEDI.GRUPO_PRODUTO),
|
GRUPO_PRODUTO = ISNULL(PRODUTOS.GRUPO_PRODUTO, RDX_V_VENTASEDI.GRUPO_PRODUTO),
|
||||||
PRODUTOS.COLECAO,
|
PRODUTOS.COLECAO,
|
||||||
DESC_COLECAO = ISNULL(COLECOES.DESC_COLECAO, RDX_V_VENTASEDI.DESC_COLECAO),
|
DESC_COLECAO = ISNULL(COLECOES.DESC_COLECAO, RDX_V_VENTASEDI.DESC_COLECAO),
|
||||||
VALVEN = ISNULL(RDX_V_REFERENCIAS_RESUELTAS.VALVEN, RDX_V_VENTASEDI.VALVEN),
|
RDX_V_VENTASEDI.VALVEN,
|
||||||
CANVEN = ISNULL(RDX_V_REFERENCIAS_RESUELTAS.CANVEN, RDX_V_VENTASEDI.CANVEN),
|
RDX_V_VENTASEDI.CANVEN,
|
||||||
RDX_V_VENTASEDI.CANDEV,
|
RDX_V_VENTASEDI.CANDEV,
|
||||||
CANVENNET = ISNULL(RDX_V_REFERENCIAS_RESUELTAS.CANVENNET, RDX_V_VENTASEDI.CANVENNET),
|
RDX_V_VENTASEDI.CANVENNET,
|
||||||
|
RDX_V_VENTASEDI.CANESP
|
||||||
CANESP = ISNULL(RDX_V_REFERENCIAS_RESUELTAS.CANESP, RDX_V_VENTASEDI.CANESP)
|
|
||||||
|
|
||||||
FROM RDX_V_VENTASEDI
|
FROM RDX_V_VENTASEDI
|
||||||
LEFT JOIN RDX_V_REFERENCIAS_RESUELTAS ON (
|
LEFT JOIN RDX_V_REFERENCIAS_RESUELTAS ON (
|
||||||
(RDX_V_REFERENCIAS_RESUELTAS.NUMINF = RDX_V_VENTASEDI.NUMINF) AND
|
(RDX_V_REFERENCIAS_RESUELTAS.NUMINF = RDX_V_VENTASEDI.NUMINF) AND
|
||||||
@ -290,7 +280,6 @@ SELECT
|
|||||||
COLECAO AS COLECCION,
|
COLECAO AS COLECCION,
|
||||||
COR_PRODUTO AS COLOR,
|
COR_PRODUTO AS COLOR,
|
||||||
GRADE AS TALLA,
|
GRADE AS TALLA,
|
||||||
TALLA36 = CASE WHEN (GRADE = 36) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
|
||||||
TALLA38 = CASE WHEN ((GRADE = 38) OR (UPPER(GRADE) = 'S')) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
TALLA38 = CASE WHEN ((GRADE = 38) OR (UPPER(GRADE) = 'S')) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
TALLA40 = CASE WHEN ((GRADE = 40) OR (UPPER(GRADE) = 'M')) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
TALLA40 = CASE WHEN ((GRADE = 40) OR (UPPER(GRADE) = 'M')) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
TALLA42 = CASE WHEN ((GRADE = 42) OR (UPPER(GRADE) = 'L')) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
TALLA42 = CASE WHEN ((GRADE = 42) OR (UPPER(GRADE) = 'L')) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
|||||||
@ -1,32 +1,17 @@
|
|||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_CONTROL_INVENTARIO]'))
|
|
||||||
DROP VIEW [RDX_V_CONTROL_INVENTARIO]
|
DROP VIEW [RDX_V_CONTROL_INVENTARIO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_INVENTARIO_STOCK_DESGLOSADO]'))
|
|
||||||
DROP VIEW [RDX_V_INVENTARIO_STOCK_DESGLOSADO]
|
DROP VIEW [RDX_V_INVENTARIO_STOCK_DESGLOSADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_CALCULADO_DESGLOSADO]'))
|
|
||||||
DROP VIEW [RDX_V_STOCK_CALCULADO_DESGLOSADO]
|
DROP VIEW [RDX_V_STOCK_CALCULADO_DESGLOSADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_CALCULADO]'))
|
|
||||||
DROP VIEW [RDX_V_STOCK_CALCULADO]
|
DROP VIEW [RDX_V_STOCK_CALCULADO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK]'))
|
|
||||||
DROP VIEW [RDX_V_STOCK]
|
DROP VIEW [RDX_V_STOCK]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_VENTAS]'))
|
|
||||||
DROP VIEW [RDX_V_STOCK_VENTAS]
|
DROP VIEW [RDX_V_STOCK_VENTAS]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_INVENTARIO]'))
|
|
||||||
DROP VIEW [RDX_V_STOCK_INVENTARIO]
|
DROP VIEW [RDX_V_STOCK_INVENTARIO]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[RDX_V_STOCK_VARELA]'))
|
|
||||||
DROP VIEW [RDX_V_STOCK_VARELA]
|
DROP VIEW [RDX_V_STOCK_VARELA]
|
||||||
GO
|
GO
|
||||||
|
|
||||||
@ -41,14 +26,14 @@ SELECT ESTOQUE_PRODUTOS.FILIAL,
|
|||||||
PRODUTOS.TIPO_PRODUTO,
|
PRODUTOS.TIPO_PRODUTO,
|
||||||
PRODUTOS.GRUPO_PRODUTO,
|
PRODUTOS.GRUPO_PRODUTO,
|
||||||
COLECCION = PRODUTOS.COLECAO,
|
COLECCION = PRODUTOS.COLECAO,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES1 ELSE 0 END AS K36,
|
ESTOQUE_PRODUTOS.ES1 as K38,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES2 ELSE ESTOQUE_PRODUTOS.ES1 END AS K38,
|
ESTOQUE_PRODUTOS.ES2 as K40,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES3 ELSE ESTOQUE_PRODUTOS.ES2 END AS K40,
|
ESTOQUE_PRODUTOS.ES3 as K42,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES4 ELSE ESTOQUE_PRODUTOS.ES3 END AS K42,
|
ESTOQUE_PRODUTOS.ES4 as K44,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES5 ELSE ESTOQUE_PRODUTOS.ES4 END AS K44,
|
ESTOQUE_PRODUTOS.ES5 as K46,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES6 ELSE ESTOQUE_PRODUTOS.ES5 END AS K46,
|
ESTOQUE_PRODUTOS.ES6 as K48,
|
||||||
CASE WHEN (PRODUTOS.GRADE IN ('JEANS')) THEN ESTOQUE_PRODUTOS.ES7 ELSE ESTOQUE_PRODUTOS.ES6 END AS K48,
|
|
||||||
ESTOQUE_PRODUTOS.ESTOQUE as KT
|
ESTOQUE_PRODUTOS.ESTOQUE as KT
|
||||||
|
|
||||||
FROM ESTOQUE_PRODUTOS
|
FROM ESTOQUE_PRODUTOS
|
||||||
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = ESTOQUE_PRODUTOS.PRODUTO)
|
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = ESTOQUE_PRODUTOS.PRODUTO)
|
||||||
WHERE FILIAL LIKE '%VARELA IMAGEN Y DISEÑO%'
|
WHERE FILIAL LIKE '%VARELA IMAGEN Y DISEÑO%'
|
||||||
@ -94,7 +79,8 @@ FULL OUTER JOIN RDX_V_TRASPASOS_AJUSTES_DESGLOSADO ON
|
|||||||
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND
|
||||||
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND
|
||||||
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND
|
||||||
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA)
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TIPO = RDX_V_INVENTARIOEDI.TIPOCANT)
|
||||||
FULL OUTER JOIN RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO ON
|
FULL OUTER JOIN RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO ON
|
||||||
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND
|
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND
|
||||||
(RDX_V_INVENTARIOEDI.CENTRO = RDX_V_INVENTARIOEDI.CENTRO2) AND
|
(RDX_V_INVENTARIOEDI.CENTRO = RDX_V_INVENTARIOEDI.CENTRO2) AND
|
||||||
@ -149,24 +135,6 @@ SELECT
|
|||||||
GRUPO_PRODUCTO = PRODUTOS.GRUPO_PRODUTO,
|
GRUPO_PRODUCTO = PRODUTOS.GRUPO_PRODUTO,
|
||||||
COLECCION = PRODUTOS.COLECAO,
|
COLECCION = PRODUTOS.COLECAO,
|
||||||
COLOR = ISNULL(RDX_V_STOCK_INVENTARIO.COLOR, RDX_V_STOCK_VENTAS.COLOR),
|
COLOR = ISNULL(RDX_V_STOCK_INVENTARIO.COLOR, RDX_V_STOCK_VENTAS.COLOR),
|
||||||
E36 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
|
||||||
WHEN '36' THEN
|
|
||||||
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
|
||||||
WHEN 'RM' THEN 0
|
|
||||||
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
|
||||||
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
|
||||||
ELSE
|
|
||||||
0
|
|
||||||
END
|
|
||||||
+
|
|
||||||
CASE
|
|
||||||
WHEN (RDX_V_STOCK_VENTAS.CANTIDAD < 0) THEN
|
|
||||||
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
|
||||||
ELSE
|
|
||||||
0
|
|
||||||
END
|
|
||||||
END),
|
|
||||||
|
|
||||||
E38 = SUM(CASE
|
E38 = SUM(CASE
|
||||||
WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '38') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'S')) THEN
|
WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '38') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'S')) THEN
|
||||||
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
@ -275,24 +243,6 @@ SELECT
|
|||||||
END
|
END
|
||||||
END),
|
END),
|
||||||
|
|
||||||
S36 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
|
||||||
WHEN '36' THEN
|
|
||||||
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
|
||||||
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
|
||||||
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
|
||||||
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
|
||||||
ELSE
|
|
||||||
0
|
|
||||||
END
|
|
||||||
+
|
|
||||||
CASE
|
|
||||||
WHEN (RDX_V_STOCK_VENTAS.CANTIDAD > 0) THEN
|
|
||||||
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
|
||||||
ELSE
|
|
||||||
0
|
|
||||||
END
|
|
||||||
END),
|
|
||||||
|
|
||||||
S38 = SUM(CASE
|
S38 = SUM(CASE
|
||||||
WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '38') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'S')) THEN
|
WHEN ((ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA) = '38') OR (UPPER(ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)) = 'S')) THEN
|
||||||
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
@ -435,30 +385,27 @@ SELECT
|
|||||||
GRUPO_PRODUCTO,
|
GRUPO_PRODUCTO,
|
||||||
COLECCION,
|
COLECCION,
|
||||||
COLOR,
|
COLOR,
|
||||||
E36,
|
|
||||||
E38,
|
E38,
|
||||||
E40,
|
E40,
|
||||||
E42,
|
E42,
|
||||||
E44,
|
E44,
|
||||||
E46,
|
E46,
|
||||||
E48,
|
E48,
|
||||||
TE = ISNULL(E36, 0) + ISNULL(E38, 0) + ISNULL(E40, 0) + ISNULL(E42, 0) + ISNULL(E44, 0) + ISNULL(E46, 0) + ISNULL(E48, 0),
|
TE = ISNULL(E38, 0) + ISNULL(E40, 0) + ISNULL(E42, 0) + ISNULL(E44, 0) + ISNULL(E46, 0) + ISNULL(E48, 0),
|
||||||
S36,
|
|
||||||
S38,
|
S38,
|
||||||
S40,
|
S40,
|
||||||
S42,
|
S42,
|
||||||
S44,
|
S44,
|
||||||
S46,
|
S46,
|
||||||
S48,
|
S48,
|
||||||
TS = ISNULL(S36, 0) + ISNULL(S38, 0) + ISNULL(S40, 0) + ISNULL(S42, 0) + ISNULL(S44, 0) + ISNULL(S46, 0) + ISNULL(S48, 0),
|
TS = ISNULL(S38, 0) + ISNULL(S40, 0) + ISNULL(S42, 0) + ISNULL(S44, 0) + ISNULL(S46, 0) + ISNULL(S48, 0),
|
||||||
K36 = ISNULL(E36, 0) + ISNULL(S36, 0),
|
|
||||||
K38 = ISNULL(E38, 0) + ISNULL(S38, 0),
|
K38 = ISNULL(E38, 0) + ISNULL(S38, 0),
|
||||||
K40 = ISNULL(E40, 0) + ISNULL(S40, 0),
|
K40 = ISNULL(E40, 0) + ISNULL(S40, 0),
|
||||||
K42 = ISNULL(E42, 0) + ISNULL(S42, 0),
|
K42 = ISNULL(E42, 0) + ISNULL(S42, 0),
|
||||||
K44 = ISNULL(E44, 0) + ISNULL(S44, 0),
|
K44 = ISNULL(E44, 0) + ISNULL(S44, 0),
|
||||||
K46 = ISNULL(E46, 0) + ISNULL(S46, 0),
|
K46 = ISNULL(E46, 0) + ISNULL(S46, 0),
|
||||||
K48 = ISNULL(E48, 0) + ISNULL(S48, 0),
|
K48 = ISNULL(E48, 0) + ISNULL(S48, 0),
|
||||||
KT = ISNULL(E36, 0) + ISNULL(E38, 0) + ISNULL(S38, 0) + ISNULL(E40, 0) + ISNULL(S40, 0) +
|
KT = ISNULL(E38, 0) + ISNULL(S38, 0) + ISNULL(E40, 0) + ISNULL(S40, 0) +
|
||||||
ISNULL(E42, 0) + ISNULL(S42, 0) + ISNULL(E44, 0) + ISNULL(S44, 0) +
|
ISNULL(E42, 0) + ISNULL(S42, 0) + ISNULL(E44, 0) + ISNULL(S44, 0) +
|
||||||
ISNULL(E46, 0) + ISNULL(S46, 0) + ISNULL(E48, 0) + ISNULL(S48, 0)
|
ISNULL(E46, 0) + ISNULL(S46, 0) + ISNULL(E48, 0) + ISNULL(S48, 0)
|
||||||
|
|
||||||
@ -481,7 +428,6 @@ SELECT FECHA,
|
|||||||
COLOR,
|
COLOR,
|
||||||
RDX_TALLAS.TALLA,
|
RDX_TALLAS.TALLA,
|
||||||
CANTIDAD = CASE RDX_TALLAS.TALLA
|
CANTIDAD = CASE RDX_TALLAS.TALLA
|
||||||
WHEN '36' THEN RDX_V_STOCK_CALCULADO.K36
|
|
||||||
WHEN '38' THEN RDX_V_STOCK_CALCULADO.K38
|
WHEN '38' THEN RDX_V_STOCK_CALCULADO.K38
|
||||||
WHEN '40' THEN RDX_V_STOCK_CALCULADO.K40
|
WHEN '40' THEN RDX_V_STOCK_CALCULADO.K40
|
||||||
WHEN '42' THEN RDX_V_STOCK_CALCULADO.K42
|
WHEN '42' THEN RDX_V_STOCK_CALCULADO.K42
|
||||||
@ -537,13 +483,7 @@ select
|
|||||||
TIPO_PRODUCTO,
|
TIPO_PRODUCTO,
|
||||||
GRUPO_PRODUCTO,
|
GRUPO_PRODUCTO,
|
||||||
COLECCION,
|
COLECCION,
|
||||||
I36 = SUM(CASE TALLA
|
I38 = SUM(CASE TALLA
|
||||||
WHEN '36' THEN
|
|
||||||
CANTIDAD_INVENTARIO
|
|
||||||
ELSE 0
|
|
||||||
END)
|
|
||||||
|
|
||||||
,I38 = SUM(CASE TALLA
|
|
||||||
WHEN '38' THEN
|
WHEN '38' THEN
|
||||||
CANTIDAD_INVENTARIO
|
CANTIDAD_INVENTARIO
|
||||||
ELSE 0
|
ELSE 0
|
||||||
@ -579,13 +519,7 @@ select
|
|||||||
ELSE 0
|
ELSE 0
|
||||||
END)
|
END)
|
||||||
|
|
||||||
,K36 = SUM(CASE TALLA
|
,K38 = SUM(CASE TALLA
|
||||||
WHEN '36' THEN
|
|
||||||
CANTIDAD_STOCK
|
|
||||||
ELSE 0
|
|
||||||
END)
|
|
||||||
|
|
||||||
,K38 = SUM(CASE TALLA
|
|
||||||
WHEN '38' THEN
|
WHEN '38' THEN
|
||||||
CANTIDAD_STOCK
|
CANTIDAD_STOCK
|
||||||
ELSE 0
|
ELSE 0
|
||||||
|
|||||||
@ -113,7 +113,7 @@ BEGIN
|
|||||||
VENDEDOR = ISNULL(LTRIM(RTRIM(LOJA_VENDEDORES.NOME_VENDEDOR)) + ' ' + LTRIM(RTRIM(LOJA_VENDEDORES.VENDEDOR_APELIDO)), RDX_ARTVEN.EANVEN),
|
VENDEDOR = ISNULL(LTRIM(RTRIM(LOJA_VENDEDORES.NOME_VENDEDOR)) + ' ' + LTRIM(RTRIM(LOJA_VENDEDORES.VENDEDOR_APELIDO)), RDX_ARTVEN.EANVEN),
|
||||||
RDX_ARTVEN.EANART,
|
RDX_ARTVEN.EANART,
|
||||||
RDX_ARTVEN.CODCOM,
|
RDX_ARTVEN.CODCOM,
|
||||||
ISNULL(produtos.PRODUTO, '107CH.EN.01') AS PRODUTO,
|
produtos.PRODUTO,
|
||||||
ISNULL(produtos.DESC_PRODUTO, '*** ERROR REFERENCIA **** LLAMAR AL CI') AS DESC_PRODUTO,
|
ISNULL(produtos.DESC_PRODUTO, '*** ERROR REFERENCIA **** LLAMAR AL CI') AS DESC_PRODUTO,
|
||||||
PRODUTOS_BARRA.COR_PRODUTO,
|
PRODUTOS_BARRA.COR_PRODUTO,
|
||||||
PRODUTOS_BARRA.GRADE,
|
PRODUTOS_BARRA.GRADE,
|
||||||
@ -126,6 +126,7 @@ BEGIN
|
|||||||
RDX_ARTVEN.CANVENNET,
|
RDX_ARTVEN.CANVENNET,
|
||||||
RDX_ARTVEN.CANESP,
|
RDX_ARTVEN.CANESP,
|
||||||
RDX_CABVEN.IGNORAR
|
RDX_CABVEN.IGNORAR
|
||||||
|
|
||||||
FROM
|
FROM
|
||||||
RDX_ARTVEN
|
RDX_ARTVEN
|
||||||
INNER JOIN RDX_LUGVEN ON (RDX_ARTVEN.CLAVE1 = RDX_LUGVEN.CLAVE1 AND RDX_ARTVEN.CLAVE2 = RDX_LUGVEN.CLAVE2)
|
INNER JOIN RDX_LUGVEN ON (RDX_ARTVEN.CLAVE1 = RDX_LUGVEN.CLAVE1 AND RDX_ARTVEN.CLAVE2 = RDX_LUGVEN.CLAVE2)
|
||||||
@ -138,10 +139,11 @@ BEGIN
|
|||||||
LEFT OUTER JOIN COLECOES on (COLECOES.COLECAO = PRODUTOS.COLECAO)
|
LEFT OUTER JOIN COLECOES on (COLECOES.COLECAO = PRODUTOS.COLECAO)
|
||||||
WHERE RDX_CABVEN.CARGADO IS NULL
|
WHERE RDX_CABVEN.CARGADO IS NULL
|
||||||
|
|
||||||
IF @@error = 0
|
|
||||||
UPDATE RDX_CABVEN SET
|
IF @@ERROR = 0
|
||||||
CARGADO = 1
|
UPDATE RDX_CABVEN SET
|
||||||
WHERE CARGADO IS NULL
|
CARGADO = 1
|
||||||
|
WHERE CARGADO IS NULL
|
||||||
END
|
END
|
||||||
GO
|
GO
|
||||||
|
|
||||||
|
|||||||
@ -1,44 +0,0 @@
|
|||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'38', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'40', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'42', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'44', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'46', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'48', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'S', 2)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'M', 2)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'L', 2)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'XL', 2)
|
|
||||||
GO
|
|
||||||
|
|
||||||
INSERT INTO [RDX_TALLAS] ([TALLA], [TIPO_TALLAJE])
|
|
||||||
VALUES (N'36', 1)
|
|
||||||
GO
|
|
||||||
|
|
||||||
178
Database/ANTERIOR/Script Datos.sql
Normal file
178
Database/ANTERIOR/Script Datos.sql
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE USER [usuario_gft]
|
||||||
|
FOR LOGIN [usuario_gft]
|
||||||
|
WITH DEFAULT_SCHEMA = [dbo]
|
||||||
|
GO
|
||||||
|
|
||||||
|
COMMIT
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010082','8422416200065')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010083','8422416200058')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010086','8422416200041')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010089','8422416200102')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010090','8422416200126')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010091','8422416200133')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010092','8422416200188')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010244','8422416101256')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010094','8422416200959')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010096','8422416209068')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010088','8422416200089')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010103','8422416200140')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('010087','8422416200072')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_FILIALES] ([CODFILIAL], [CODBARRA])
|
||||||
|
VALUES
|
||||||
|
('000001','8435159800003')
|
||||||
|
GO
|
||||||
|
|
||||||
|
COMMIT
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_TALLAS] (
|
||||||
|
[TALLA] char(2) NOT NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_TALLAS]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_TALLAS] ([TALLA])
|
||||||
|
VALUES
|
||||||
|
('38')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_TALLAS] ([TALLA])
|
||||||
|
VALUES
|
||||||
|
('40')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_TALLAS] ([TALLA])
|
||||||
|
VALUES
|
||||||
|
('42')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_TALLAS] ([TALLA])
|
||||||
|
VALUES
|
||||||
|
('44')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_TALLAS] ([TALLA])
|
||||||
|
VALUES
|
||||||
|
('46')
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [RDX_TALLAS] ([TALLA])
|
||||||
|
VALUES
|
||||||
|
('48')
|
||||||
|
GO
|
||||||
|
|
||||||
|
COMMIT
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Códigos de barra de ECI que son referencias nulas */
|
||||||
|
|
||||||
|
INSERT INTO [PRODUTOS_BARRA] ([CODIGO_BARRA], [PRODUTO], [COR_PRODUTO], [TAMANHO], [GRADE], [DATA_PARA_TRANSFERENCIA], [CODIGO_BARRA_PADRAO], [NOME_CLIFOR])
|
||||||
|
VALUES
|
||||||
|
('61800000000','107CH.EN.01','300',1,'38',CURRENT_TIMESTAMP,0,NULL)
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [PRODUTOS_BARRA] ([CODIGO_BARRA], [PRODUTO], [COR_PRODUTO], [TAMANHO], [GRADE], [DATA_PARA_TRANSFERENCIA], [CODIGO_BARRA_PADRAO], [NOME_CLIFOR])
|
||||||
|
VALUES
|
||||||
|
('61810001406','107CH.EN.01','300',1,'38',CURRENT_TIMESTAMP,0,NULL)
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [PRODUTOS_BARRA] ([CODIGO_BARRA], [PRODUTO], [COR_PRODUTO], [TAMANHO], [GRADE], [DATA_PARA_TRANSFERENCIA], [CODIGO_BARRA_PADRAO], [NOME_CLIFOR])
|
||||||
|
VALUES
|
||||||
|
('61810001547','107CH.EN.01','300',1,'38',CURRENT_TIMESTAMP,0,NULL)
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [PRODUTOS_BARRA] ([CODIGO_BARRA], [PRODUTO], [COR_PRODUTO], [TAMANHO], [GRADE], [DATA_PARA_TRANSFERENCIA], [CODIGO_BARRA_PADRAO], [NOME_CLIFOR])
|
||||||
|
VALUES
|
||||||
|
('61810001042','107CH.EN.01','300',1,'38',CURRENT_TIMESTAMP,0,NULL)
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [PRODUTOS_BARRA] ([CODIGO_BARRA], [PRODUTO], [COR_PRODUTO], [TAMANHO], [GRADE], [DATA_PARA_TRANSFERENCIA], [CODIGO_BARRA_PADRAO], [NOME_CLIFOR])
|
||||||
|
VALUES
|
||||||
|
('61810001141','107CH.EN.01','300',1,'38',CURRENT_TIMESTAMP,0,NULL)
|
||||||
|
GO
|
||||||
|
|
||||||
|
INSERT INTO [PRODUTOS_BARRA] ([CODIGO_BARRA], [PRODUTO], [COR_PRODUTO], [TAMANHO], [GRADE], [DATA_PARA_TRANSFERENCIA], [CODIGO_BARRA_PADRAO], [NOME_CLIFOR])
|
||||||
|
VALUES
|
||||||
|
('8300733557232','107CH.EN.01','300',1,'38',CURRENT_TIMESTAMP,0,NULL)
|
||||||
|
GO
|
||||||
|
|
||||||
|
COMMIT
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
519
Database/ANTERIOR/Script Tablas.sql
Normal file
519
Database/ANTERIOR/Script Tablas.sql
Normal file
@ -0,0 +1,519 @@
|
|||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_CABINV] (
|
||||||
|
[NUMDOC] varchar(25) NOT NULL,
|
||||||
|
[TIPODOC] varchar(3) NULL,
|
||||||
|
[TIPOLIQ] varchar(3) NULL,
|
||||||
|
[FECHA] datetime NULL,
|
||||||
|
[FECHALIQ] datetime NULL,
|
||||||
|
[EMISOR] varchar(17) NULL,
|
||||||
|
[RECEPTOR] varchar(17) NULL,
|
||||||
|
[DPTO] varchar(3) NULL,
|
||||||
|
[CENTRO] varchar(17) NULL,
|
||||||
|
[FECHA_CARGA] datetime NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_CABINV]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_CABINV]
|
||||||
|
ADD PRIMARY KEY CLUSTERED ([NUMDOC])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CABINV_idx] ON [RDX_CABINV]
|
||||||
|
([FECHALIQ])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CABINV_idx2] ON [RDX_CABINV]
|
||||||
|
([CENTRO])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_LININV] (
|
||||||
|
[NUMDOC] varchar(25) NOT NULL,
|
||||||
|
[NUMLIN] numeric(6, 0) NOT NULL,
|
||||||
|
[CODART] varchar(17) NULL,
|
||||||
|
[FAMILIA] varchar(17) NULL,
|
||||||
|
[BARRA] varchar(17) NULL,
|
||||||
|
[TALLA] varchar(17) NULL,
|
||||||
|
[MARCA] varchar(25) NULL,
|
||||||
|
[TAMANO] varchar(25) NULL,
|
||||||
|
[SERIE] varchar(25) NULL,
|
||||||
|
[COLOR] varchar(25) NULL,
|
||||||
|
[MODELO] varchar(25) NULL,
|
||||||
|
[DIBUJO] varchar(25) NULL,
|
||||||
|
[DESCRIP] varchar(70) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_LININV]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_LININV]
|
||||||
|
ADD PRIMARY KEY CLUSTERED ([NUMDOC], [NUMLIN])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_LININV_idx] ON [RDX_LININV]
|
||||||
|
([CODART])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_CANTINV] (
|
||||||
|
[NUMDOC] varchar(25) NOT NULL,
|
||||||
|
[NUMLIN] numeric(6, 0) NOT NULL,
|
||||||
|
[NUMCANT] numeric(6, 0) NOT NULL,
|
||||||
|
[TIPOCANT] varchar(3) NULL,
|
||||||
|
[CANTIDAD] numeric(15, 0) NULL,
|
||||||
|
[CENTRO] varchar(17) NULL,
|
||||||
|
[TMOV] varchar(3) NULL,
|
||||||
|
[FACT] varchar(12) NULL,
|
||||||
|
[DEPTO] varchar(3) NULL,
|
||||||
|
[IDVEN] varchar(10) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_CANTINV]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_CANTINV]
|
||||||
|
ADD PRIMARY KEY CLUSTERED ([NUMDOC], [NUMLIN], [NUMCANT])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CANTINV_idx] ON [RDX_CANTINV]
|
||||||
|
([TIPOCANT])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CANTINV_idx2] ON [RDX_CANTINV]
|
||||||
|
([IDVEN])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_CABVEN] (
|
||||||
|
[CLAVE1] numeric(10, 0) NOT NULL,
|
||||||
|
[NUMINF] varchar(35) NULL,
|
||||||
|
[FUNCION] varchar(10) NULL,
|
||||||
|
[FECINI] datetime NULL,
|
||||||
|
[FECFIN] datetime NULL,
|
||||||
|
[FECINF] datetime NULL,
|
||||||
|
[PERVENINI] datetime NULL,
|
||||||
|
[PERVENFIN] datetime NULL,
|
||||||
|
[EANOFI] varchar(17) NULL,
|
||||||
|
[EANEMI] varchar(17) NULL,
|
||||||
|
[EANREC] varchar(17) NULL,
|
||||||
|
[EANVEN] varchar(17) NULL,
|
||||||
|
[EANALM] varchar(17) NULL,
|
||||||
|
[EANREP] varchar(17) NULL,
|
||||||
|
[EANPRO] varchar(17) NULL,
|
||||||
|
[EANADMSA] varchar(17) NULL,
|
||||||
|
[EANREPSR] varchar(17) NULL,
|
||||||
|
[ADMVENSA] varchar(35) NULL,
|
||||||
|
[REPDEPSR] varchar(35) NULL,
|
||||||
|
[EMAILSA] varchar(35) NULL,
|
||||||
|
[NUMFAXSA] varchar(35) NULL,
|
||||||
|
[NUMTELSA] varchar(35) NULL,
|
||||||
|
[NUMTLXSA] varchar(35) NULL,
|
||||||
|
[X400SA] varchar(35) NULL,
|
||||||
|
[EMAILSR] varchar(35) NULL,
|
||||||
|
[NUMFAXSR] varchar(35) NULL,
|
||||||
|
[NUMTELSR] varchar(35) NULL,
|
||||||
|
[NUMTLXSR] varchar(35) NULL,
|
||||||
|
[X400SR] varchar(35) NULL,
|
||||||
|
[NUMPRE] varchar(35) NULL,
|
||||||
|
[NUMINFSC] varchar(35) NULL,
|
||||||
|
[NUMCON] varchar(35) NULL,
|
||||||
|
[FECPRE] datetime NULL,
|
||||||
|
[FECINFSC] datetime NULL,
|
||||||
|
[FECCON] datetime NULL,
|
||||||
|
[DIVPED] varchar(3) NULL,
|
||||||
|
[DIVPRE] varchar(3) NULL,
|
||||||
|
[DIVPAG] varchar(3) NULL,
|
||||||
|
[DIVPEDF] varchar(3) NULL,
|
||||||
|
[DIVPREF] varchar(3) NULL,
|
||||||
|
[DIVPAGF] varchar(3) NULL,
|
||||||
|
[TASCAM] numeric(15, 3) NULL,
|
||||||
|
[FECTAS] datetime NULL,
|
||||||
|
[FECHA_CARGA] datetime NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_CABVEN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_CABVEN]
|
||||||
|
ADD PRIMARY KEY CLUSTERED ([CLAVE1])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_LUGVEN] (
|
||||||
|
[CLAVE1] numeric(10, 0) NOT NULL,
|
||||||
|
[CLAVE2] numeric(5, 0) NOT NULL,
|
||||||
|
[EANLUG] varchar(17) NULL,
|
||||||
|
[LUGVEN] varchar(70) NULL,
|
||||||
|
[FECINI] datetime NULL,
|
||||||
|
[FECFIN] datetime NULL,
|
||||||
|
[PERVENINI] datetime NULL,
|
||||||
|
[PERVENFIN] datetime NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_LUGVEN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_LUGVEN]
|
||||||
|
ADD PRIMARY KEY CLUSTERED ([CLAVE1], [CLAVE2])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_LUGVEN_PERVENINI_IDX] ON [RDX_LUGVEN]
|
||||||
|
([PERVENINI])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_LUGVEN]
|
||||||
|
ADD CONSTRAINT [FK__RDX_LUGVE__CLAVE__4A59F0B5] FOREIGN KEY ([CLAVE1])
|
||||||
|
REFERENCES [RDX_CABVEN] ([CLAVE1])
|
||||||
|
ON UPDATE CASCADE
|
||||||
|
ON DELETE CASCADE
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_LUGVEN]
|
||||||
|
NOCHECK CONSTRAINT [FK__RDX_LUGVE__CLAVE__4A59F0B5]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_ARTVEN] (
|
||||||
|
[CLAVE1] numeric(10, 0) NOT NULL,
|
||||||
|
[CLAVE2] numeric(5, 0) NOT NULL,
|
||||||
|
[CLAVE3] numeric(5, 0) NOT NULL,
|
||||||
|
[EANART] varchar(17) NULL,
|
||||||
|
[CODCOM] varchar(35) NULL,
|
||||||
|
[NUMVAR] varchar(35) NULL,
|
||||||
|
[CODPRO] varchar(35) NULL,
|
||||||
|
[DESARTCO] varchar(35) NULL,
|
||||||
|
[DESART] varchar(70) NULL,
|
||||||
|
[NUMCON] varchar(35) NULL,
|
||||||
|
[NUMLIS] varchar(35) NULL,
|
||||||
|
[CONESP1] varchar(3) NULL,
|
||||||
|
[CONESP2] varchar(3) NULL,
|
||||||
|
[CONESP3] varchar(3) NULL,
|
||||||
|
[VALVEN] numeric(15, 3) NULL,
|
||||||
|
[PRENETCT] numeric(15, 3) NULL,
|
||||||
|
[PREBRUCT] numeric(15, 3) NULL,
|
||||||
|
[PREINFET] numeric(15, 3) NULL,
|
||||||
|
[PREINFFT] numeric(15, 3) NULL,
|
||||||
|
[PRECALCT] numeric(15, 3) NULL,
|
||||||
|
[PRENETCA] numeric(15, 3) NULL,
|
||||||
|
[PREBRUCA] numeric(15, 3) NULL,
|
||||||
|
[PREINFEA] numeric(15, 3) NULL,
|
||||||
|
[PREINFFA] numeric(15, 3) NULL,
|
||||||
|
[PRECALCA] numeric(15, 3) NULL,
|
||||||
|
[BAPRUN1] numeric(9, 0) NULL,
|
||||||
|
[UNIMED1] varchar(3) NULL,
|
||||||
|
[BAPRUN2] numeric(9, 0) NULL,
|
||||||
|
[UNIMED2] varchar(3) NULL,
|
||||||
|
[BAPRUN3] numeric(9, 0) NULL,
|
||||||
|
[UNIMED3] varchar(3) NULL,
|
||||||
|
[BAPRUN4] numeric(9, 0) NULL,
|
||||||
|
[UNIMED4] varchar(3) NULL,
|
||||||
|
[BAPRUN5] numeric(9, 0) NULL,
|
||||||
|
[UNIMED5] varchar(3) NULL,
|
||||||
|
[CANVEN] numeric(15, 3) NULL,
|
||||||
|
[EXIPRO] numeric(15, 3) NULL,
|
||||||
|
[DESEXI] numeric(15, 3) NULL,
|
||||||
|
[ESPMEDCV] varchar(3) NULL,
|
||||||
|
[ESPMEDEP] varchar(3) NULL,
|
||||||
|
[ESPMEDDE] varchar(3) NULL,
|
||||||
|
[CANDEV] numeric(15, 3) NULL,
|
||||||
|
[EANVEN] varchar(17) NULL,
|
||||||
|
[NOMVEN] varchar(70) NULL,
|
||||||
|
[NUMTALON] varchar(35) NULL,
|
||||||
|
[CANVENNET] numeric(15, 3) NULL,
|
||||||
|
[UMEDVENNET] varchar(3) NULL,
|
||||||
|
[CANESP] numeric(15, 3) NULL,
|
||||||
|
[UMEDESP] varchar(3) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_ARTVEN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_ARTVEN]
|
||||||
|
ADD PRIMARY KEY CLUSTERED ([CLAVE1], [CLAVE2], [CLAVE3])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_ARTVEN]
|
||||||
|
ADD CONSTRAINT [FK__RDX_ARTVEN__56BFC79A] FOREIGN KEY ([CLAVE1], [CLAVE2])
|
||||||
|
REFERENCES [RDX_LUGVEN] ([CLAVE1], [CLAVE2])
|
||||||
|
ON UPDATE CASCADE
|
||||||
|
ON DELETE CASCADE
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_ARTVEN]
|
||||||
|
NOCHECK CONSTRAINT [FK__RDX_ARTVEN__56BFC79A]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_INFORMES] (
|
||||||
|
[ID] smallint IDENTITY(1, 1) NOT NULL,
|
||||||
|
[CATEGORIA] varchar(15) NULL,
|
||||||
|
[ICONO] smallint NULL,
|
||||||
|
[NOMBRE] varchar(50) NULL,
|
||||||
|
[DESCRIPCION] varchar(255) NULL,
|
||||||
|
[ORDEN] smallint NULL,
|
||||||
|
[VISTA] text NULL,
|
||||||
|
[MODIFICABLE] char(1) CONSTRAINT [DF__RDX_INFOR__MODIF__5C78A0F0] DEFAULT 'S' NOT NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
TEXTIMAGE_ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_INFORMES]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_INFORMES]
|
||||||
|
ADD CONSTRAINT [RDX_INFORMES_pk]
|
||||||
|
PRIMARY KEY CLUSTERED ([ID])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_ARTVEN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_CABINV]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_CABVEN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_CANTINV]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_LININV]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_LUGVEN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_LOG_CARGA] (
|
||||||
|
[ID] int IDENTITY(1, 1) NOT NULL,
|
||||||
|
[REPORT] varchar(10) NOT NULL,
|
||||||
|
[FECHA] datetime NOT NULL,
|
||||||
|
[OK] bit NOT NULL,
|
||||||
|
[ERROR_MSG] varchar(255) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_LOG_CARGA]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_LOG_CARGA]
|
||||||
|
ADD UNIQUE NONCLUSTERED ([ID])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_REFERENCIA_GENERICA] (
|
||||||
|
[NUMINF] varchar(35) NOT NULL,
|
||||||
|
[CLAVE1] numeric(10, 0) NOT NULL,
|
||||||
|
[CLAVE2] numeric(5, 0) NOT NULL,
|
||||||
|
[CLAVE3] numeric(5, 0) NOT NULL,
|
||||||
|
[FECHACAMBIO] datetime NOT NULL,
|
||||||
|
[ESTADO] char(1) NOT NULL,
|
||||||
|
[CODIGO_BARRA] varchar(25) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_REFERENCIA_GENERICA]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_REFERENCIA_GENERICA]
|
||||||
|
ADD CONSTRAINT [PK__RDX_REFERENCIA_G__68DE77D5]
|
||||||
|
PRIMARY KEY CLUSTERED ([NUMINF], [CLAVE1], [CLAVE2], [CLAVE3])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_AJUSTES_ALBARAN] (
|
||||||
|
[ALBARAN] char(7) NOT NULL,
|
||||||
|
[ESTADO] varchar(15) NULL,
|
||||||
|
[OBSERVACIONES] varchar(255) NULL,
|
||||||
|
[CONTABILIZAR] char(1) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_AJUSTES_ALBARAN]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_AJUSTES_ALBARAN]
|
||||||
|
ADD CONSTRAINT [PK__RDX_AJUSTES_ALBA__1B69F7A2]
|
||||||
|
PRIMARY KEY CLUSTERED ([ALBARAN])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_AJUSTES_HOJA_DEVOLUCIONES] (
|
||||||
|
[NUMHOJA] char(8) NOT NULL,
|
||||||
|
[ESTADO] varchar(20) NULL,
|
||||||
|
[OBSERVACIONES] varchar(255) NULL,
|
||||||
|
[CONTABILIZAR] char(1) CONSTRAINT [DF__RDX_AJUST__CONTA__7BF14C49] DEFAULT 'S' NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_AJUSTES_HOJA_DEVOLUCIONES]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_AJUSTES_HOJA_DEVOLUCIONES]
|
||||||
|
ADD CONSTRAINT [PK__RDX_AJUSTES_HOJA__483C9E19]
|
||||||
|
PRIMARY KEY CLUSTERED ([NUMHOJA])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_DEVOLUCION_AJUSTES] (
|
||||||
|
[FECHA] datetime NOT NULL,
|
||||||
|
[CENTRO] varchar(17) NOT NULL,
|
||||||
|
[CODIGO] varchar(12) NOT NULL,
|
||||||
|
[COLOR] varchar(10) NOT NULL,
|
||||||
|
[APROBADO] char(1) NULL,
|
||||||
|
[FECHACAMBIO] datetime NULL,
|
||||||
|
[CANT38] numeric(15, 0) NULL,
|
||||||
|
[CANT40] numeric(15, 0) NULL,
|
||||||
|
[CANT42] numeric(15, 0) NULL,
|
||||||
|
[CANT44] numeric(15, 0) NULL,
|
||||||
|
[CANT46] numeric(15, 0) NULL,
|
||||||
|
[CANT48] numeric(15, 0) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_DEVOLUCION_AJUSTES]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_DEVOLUCION_AJUSTES]
|
||||||
|
ADD CONSTRAINT [PK_RDX_DEVOLUCION_AJUSTES_2F70F04A]
|
||||||
|
PRIMARY KEY CLUSTERED ([FECHA], [CENTRO], [CODIGO], [COLOR])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_RECEPCION_AJUSTES] (
|
||||||
|
[FECHA] datetime NOT NULL,
|
||||||
|
[CENTRO] varchar(17) NOT NULL,
|
||||||
|
[CODIGO] varchar(12) NOT NULL,
|
||||||
|
[COLOR] varchar(10) NOT NULL,
|
||||||
|
[APROBADO] char(1) NULL,
|
||||||
|
[FECHACAMBIO] datetime NULL,
|
||||||
|
[CANT38] numeric(15, 0) NULL,
|
||||||
|
[CANT40] numeric(15, 0) NULL,
|
||||||
|
[CANT42] numeric(15, 0) NULL,
|
||||||
|
[CANT44] numeric(15, 0) NULL,
|
||||||
|
[CANT46] numeric(15, 0) NULL,
|
||||||
|
[CANT48] numeric(15, 0) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_RECEPCION_AJUSTES]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_RECEPCION_AJUSTES]
|
||||||
|
ADD CONSTRAINT [PK_RDX_RECEPCION_AJUSTES_2F70F04F]
|
||||||
|
PRIMARY KEY CLUSTERED ([FECHA], [CENTRO], [CODIGO], [COLOR])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
CREATE TABLE [RDX_TRASPASOS_AJUSTES] (
|
||||||
|
[FECHA] datetime NOT NULL,
|
||||||
|
[CENTRO] varchar(17) NOT NULL,
|
||||||
|
[CENTRO2] varchar(17) NOT NULL,
|
||||||
|
[CODIGO] varchar(12) NOT NULL,
|
||||||
|
[COLOR] varchar(10) NOT NULL,
|
||||||
|
[APROBADO] char(1) NULL,
|
||||||
|
[ESTADO] varchar(20) NULL,
|
||||||
|
[OBSERVACIONES] varchar(255) NULL,
|
||||||
|
[CONTABILIZAR] char(1) NULL,
|
||||||
|
[FECHACAMBIO] datetime NULL,
|
||||||
|
[CANT38] numeric(15, 0) NULL,
|
||||||
|
[CANT40] numeric(15, 0) NULL,
|
||||||
|
[CANT42] numeric(15, 0) NULL,
|
||||||
|
[CANT44] numeric(15, 0) NULL,
|
||||||
|
[CANT46] numeric(15, 0) NULL,
|
||||||
|
[CANT48] numeric(15, 0) NULL,
|
||||||
|
[TIPOCANT] varchar(3) NOT NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_TRASPASOS_AJUSTES]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_TRASPASOS_AJUSTES]
|
||||||
|
ADD CONSTRAINT [PK_RDX_TRASPASOS_AJUSTES_2F70F04A]
|
||||||
|
PRIMARY KEY CLUSTERED ([FECHA], [CENTRO], [CENTRO2], [CODIGO], [COLOR], [TIPOCANT])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
1156
Database/ANTERIOR/Script Vistas INVRPT.sql
Normal file
1156
Database/ANTERIOR/Script Vistas INVRPT.sql
Normal file
File diff suppressed because it is too large
Load Diff
431
Database/ANTERIOR/Script Vistas STOCK.sql
Normal file
431
Database/ANTERIOR/Script Vistas STOCK.sql
Normal file
@ -0,0 +1,431 @@
|
|||||||
|
--
|
||||||
|
-- Definition for view RDX_V_STOCK_VARELA :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_STOCK_VARELA AS
|
||||||
|
SELECT ESTOQUE_PRODUTOS.FILIAL,
|
||||||
|
ESTOQUE_PRODUTOS.PRODUTO AS CODIGO,
|
||||||
|
ESTOQUE_PRODUTOS.COR_PRODUTO AS COLOR,
|
||||||
|
PRODUCTO = PRODUTOS.DESC_PRODUTO,
|
||||||
|
PRODUTOS.TIPO_PRODUTO,
|
||||||
|
PRODUTOS.GRUPO_PRODUTO,
|
||||||
|
COLECCION=COLECOES.DESC_COLECAO,
|
||||||
|
|
||||||
|
ESTOQUE_PRODUTOS.ES1 as K38,
|
||||||
|
ESTOQUE_PRODUTOS.ES2 as K40,
|
||||||
|
ESTOQUE_PRODUTOS.ES3 as K42,
|
||||||
|
ESTOQUE_PRODUTOS.ES4 as K44,
|
||||||
|
ESTOQUE_PRODUTOS.ES5 as K46,
|
||||||
|
ESTOQUE_PRODUTOS.ES6 as K48,
|
||||||
|
ESTOQUE_PRODUTOS.ESTOQUE as KT
|
||||||
|
|
||||||
|
FROM ESTOQUE_PRODUTOS
|
||||||
|
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = ESTOQUE_PRODUTOS.PRODUTO)
|
||||||
|
LEFT OUTER JOIN COLECOES ON (PRODUTOS.COLECAO = COLECOES.COLECAO)
|
||||||
|
|
||||||
|
WHERE FILIAL LIKE '%VARELA IMAGEN Y DISEÑO%'
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_STOCK_VENTAS :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_STOCK_VENTAS AS
|
||||||
|
SELECT
|
||||||
|
PERVENINI AS FECHA,
|
||||||
|
DAY(PERVENINI) AS DIA,
|
||||||
|
DATENAME(DW, PERVENINI) DIASEMANA,
|
||||||
|
DATENAME(MONTH, PERVENINI) AS MES,
|
||||||
|
YEAR(PERVENINI) AS ANO,
|
||||||
|
FILIAL AS CENTRO,
|
||||||
|
CODIGO = ISNULL(PRODUTO, '107CH.EN.01'),
|
||||||
|
DESC_PRODUTO AS PRODUCTO,
|
||||||
|
GRUPO_PRODUTO AS GRUPOPRODUCTO,
|
||||||
|
TIPO_PRODUTO AS TIPOPRODUCTO,
|
||||||
|
DESC_COLECAO AS COLECCION,
|
||||||
|
COLOR = ISNULL(COR_PRODUTO, '300'),
|
||||||
|
GRADE AS TALLA,
|
||||||
|
CANTIDAD = ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0)
|
||||||
|
FROM
|
||||||
|
RDX_V_VENTASEDI_RESUELTAS
|
||||||
|
WHERE NOT ((DESC_PRODUTO LIKE '%ERROR REFERENCIA%') AND ((VALVEN < 1) AND (VALVEN > 0))) /* QUITAR COMPOSTURAS */
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_STOCK_VENTAS]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_STOCK_INVENTARIO :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_STOCK_INVENTARIO AS
|
||||||
|
SELECT
|
||||||
|
FECHA = ISNULL(RDX_V_INVENTARIOEDI.FECHA, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FECHA, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FECHA))),
|
||||||
|
CENTRO = ISNULL(RDX_V_INVENTARIOEDI.FILIAL, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FILIAL, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FILIAL, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FILIAL))),
|
||||||
|
CODIGO = ISNULL(RDX_V_INVENTARIOEDI.CODIGO, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CODIGO, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CODIGO, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CODIGO))),
|
||||||
|
PRODUCTO = ISNULL(RDX_V_INVENTARIOEDI.PRODUCTO, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.PRODUCTO, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.PRODUCTO, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.PRODUCTO))),
|
||||||
|
COLOR = ISNULL(RDX_V_INVENTARIOEDI.COLOR, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.COLOR, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.COLOR, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.COLOR))),
|
||||||
|
TALLA = ISNULL(RDX_V_INVENTARIOEDI.TALLA, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.TALLA, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TALLA, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.TALLA))),
|
||||||
|
CANTIDAD = ISNULL(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CANTIDAD, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CANTIDAD, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CANTIDAD, RDX_V_INVENTARIOEDI.CANTIDAD))),
|
||||||
|
/*RDX_V_INVENTARIOEDI.CANTIDAD,
|
||||||
|
RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CANTIDAD,
|
||||||
|
RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CANTIDAD,
|
||||||
|
RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CANTIDAD,*/
|
||||||
|
OPERACION = CASE RDX_V_INVENTARIOEDI.TIPOCANT
|
||||||
|
WHEN '194' THEN 'R'
|
||||||
|
WHEN '46' THEN 'E'
|
||||||
|
WHEN '145' THEN 'RM'
|
||||||
|
WHEN '48' THEN 'S'
|
||||||
|
WHEN '61' THEN 'D'
|
||||||
|
WHEN '65' THEN 'T'
|
||||||
|
ELSE
|
||||||
|
CASE
|
||||||
|
WHEN RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CANTIDAD IS NOT NULL THEN 'R'
|
||||||
|
WHEN RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CANTIDAD IS NOT NULL THEN 'D'
|
||||||
|
ELSE RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TIPO
|
||||||
|
END
|
||||||
|
END
|
||||||
|
FROM RDX_V_INVENTARIOEDI
|
||||||
|
FULL OUTER JOIN RDX_V_INVENTARIO_MAXFECHAS ON
|
||||||
|
(RDX_V_INVENTARIO_MAXFECHAS.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND
|
||||||
|
(RDX_V_INVENTARIO_MAXFECHAS.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND
|
||||||
|
(RDX_V_INVENTARIO_MAXFECHAS.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND
|
||||||
|
(RDX_V_INVENTARIO_MAXFECHAS.TALLA = RDX_V_INVENTARIOEDI.TALLA)
|
||||||
|
FULL OUTER JOIN RDX_V_RECEPCION_AJUSTES_DESGLOSADO ON
|
||||||
|
(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND
|
||||||
|
(RDX_V_INVENTARIOEDI.CENTRO = RDX_V_INVENTARIOEDI.CENTRO2) AND
|
||||||
|
(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND
|
||||||
|
(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND
|
||||||
|
(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND
|
||||||
|
(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA)
|
||||||
|
FULL OUTER JOIN RDX_V_TRASPASOS_AJUSTES_DESGLOSADO ON
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CENTRO2 = RDX_V_INVENTARIOEDI.CENTRO2) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA) AND
|
||||||
|
(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.TIPO = RDX_V_INVENTARIOEDI.TIPOCANT)
|
||||||
|
FULL OUTER JOIN RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO ON
|
||||||
|
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CENTRO = RDX_V_INVENTARIOEDI.CENTRO) AND
|
||||||
|
(RDX_V_INVENTARIOEDI.CENTRO = RDX_V_INVENTARIOEDI.CENTRO2) AND
|
||||||
|
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.CODIGO = RDX_V_INVENTARIOEDI.CODIGO) AND
|
||||||
|
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.COLOR = RDX_V_INVENTARIOEDI.COLOR) AND
|
||||||
|
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.TALLA = RDX_V_INVENTARIOEDI.TALLA) AND
|
||||||
|
(RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FECHA = RDX_V_INVENTARIOEDI.FECHA)
|
||||||
|
WHERE
|
||||||
|
((RDX_V_INVENTARIO_MAXFECHAS.FECHA IS NULL) /* Puede haber prendas que no se hayan inventariado nunca */
|
||||||
|
OR
|
||||||
|
(ISNULL(RDX_V_INVENTARIOEDI.FECHA, ISNULL(RDX_V_RECEPCION_AJUSTES_DESGLOSADO.FECHA, ISNULL(RDX_V_TRASPASOS_AJUSTES_DESGLOSADO.FECHA, RDX_V_DEVOLUCION_AJUSTES_DESGLOSADO.FECHA))) >= RDX_V_INVENTARIO_MAXFECHAS.FECHA))
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_STOCK_INVENTARIO]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_STOCK :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_STOCK AS
|
||||||
|
SELECT
|
||||||
|
CENTRO = ISNULL(RDX_V_STOCK_INVENTARIO.CENTRO, RDX_V_STOCK_VENTAS.CENTRO),
|
||||||
|
CODIGO = ISNULL(RDX_V_STOCK_INVENTARIO.CODIGO, RDX_V_STOCK_VENTAS.CODIGO),
|
||||||
|
PRODUCTO = ISNULL(RDX_V_STOCK_INVENTARIO.PRODUCTO, RDX_V_STOCK_VENTAS.PRODUCTO),
|
||||||
|
TIPO_PRODUCTO = PRODUTOS.TIPO_PRODUTO,
|
||||||
|
GRUPO_PRODUCTO = PRODUTOS.GRUPO_PRODUTO,
|
||||||
|
COLECCION = COLECOES.DESC_COLECAO,
|
||||||
|
COLOR = ISNULL(RDX_V_STOCK_INVENTARIO.COLOR, RDX_V_STOCK_VENTAS.COLOR),
|
||||||
|
E38 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '38' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'RM' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) > 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
E40 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '40' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'RM' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) > 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
E42 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '42' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'RM' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) > 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
E44 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '44' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'RM' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) > 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
E46 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '46' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'RM' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) > 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
E48 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '48' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'RM' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'R' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
WHEN 'E' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) > 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
S38 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '38' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) < 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
S40 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '40' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) < 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
S42 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '42' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) < 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
S44 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '44' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) < 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
S46 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '46' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) < 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END),
|
||||||
|
|
||||||
|
S48 = SUM(CASE ISNULL(RDX_V_STOCK_INVENTARIO.TALLA, RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
WHEN '48' THEN
|
||||||
|
CASE RDX_V_STOCK_INVENTARIO.OPERACION
|
||||||
|
WHEN 'D' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'S' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
WHEN 'T' THEN RDX_V_STOCK_INVENTARIO.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
+
|
||||||
|
CASE
|
||||||
|
WHEN ((RDX_V_STOCK_VENTAS.CANTIDAD * (-1)) < 0) THEN
|
||||||
|
RDX_V_STOCK_VENTAS.CANTIDAD * (-1)
|
||||||
|
ELSE
|
||||||
|
0
|
||||||
|
END
|
||||||
|
END)
|
||||||
|
FROM
|
||||||
|
RDX_V_STOCK_INVENTARIO
|
||||||
|
FULL OUTER JOIN RDX_V_STOCK_VENTAS ON
|
||||||
|
(RDX_V_STOCK_INVENTARIO.CENTRO = RDX_V_STOCK_VENTAS.CENTRO)
|
||||||
|
AND (RDX_V_STOCK_INVENTARIO.CODIGO = RDX_V_STOCK_VENTAS.CODIGO)
|
||||||
|
AND (RDX_V_STOCK_INVENTARIO.COLOR = RDX_V_STOCK_VENTAS.COLOR)
|
||||||
|
AND (RDX_V_STOCK_INVENTARIO.TALLA = RDX_V_STOCK_VENTAS.TALLA)
|
||||||
|
AND (RDX_V_STOCK_INVENTARIO.FECHA = RDX_V_STOCK_VENTAS.FECHA)
|
||||||
|
LEFT OUTER JOIN PRODUTOS ON
|
||||||
|
(PRODUTOS.PRODUTO = ISNULL(RDX_V_STOCK_INVENTARIO.CODIGO, RDX_V_STOCK_VENTAS.CODIGO))
|
||||||
|
LEFT OUTER JOIN COLECOES ON
|
||||||
|
(COLECOES.COLECAO = PRODUTOS.COLECAO)
|
||||||
|
|
||||||
|
GROUP BY
|
||||||
|
ISNULL(RDX_V_STOCK_INVENTARIO.CENTRO, RDX_V_STOCK_VENTAS.CENTRO),
|
||||||
|
ISNULL(RDX_V_STOCK_INVENTARIO.CODIGO, RDX_V_STOCK_VENTAS.CODIGO),
|
||||||
|
ISNULL(RDX_V_STOCK_INVENTARIO.PRODUCTO, RDX_V_STOCK_VENTAS.PRODUCTO),
|
||||||
|
PRODUTOS.TIPO_PRODUTO,
|
||||||
|
PRODUTOS.GRUPO_PRODUTO,
|
||||||
|
COLECOES.DESC_COLECAO,
|
||||||
|
ISNULL(RDX_V_STOCK_INVENTARIO.COLOR, RDX_V_STOCK_VENTAS.COLOR)
|
||||||
|
GO
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_STOCK_CALCULADO :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_STOCK_CALCULADO AS
|
||||||
|
SELECT
|
||||||
|
CENTRO,
|
||||||
|
CODIGO,
|
||||||
|
PRODUCTO,
|
||||||
|
TIPO_PRODUCTO,
|
||||||
|
GRUPO_PRODUCTO,
|
||||||
|
COLECCION,
|
||||||
|
COLOR,
|
||||||
|
E38,
|
||||||
|
E40,
|
||||||
|
E42,
|
||||||
|
E44,
|
||||||
|
E46,
|
||||||
|
E48,
|
||||||
|
TE = ISNULL(E38, 0) + ISNULL(E40, 0) + ISNULL(E42, 0) + ISNULL(E44, 0) + ISNULL(E46, 0) + ISNULL(E48, 0),
|
||||||
|
S38,
|
||||||
|
S40,
|
||||||
|
S42,
|
||||||
|
S44,
|
||||||
|
S46,
|
||||||
|
S48,
|
||||||
|
TS = ISNULL(S38, 0) + ISNULL(S40, 0) + ISNULL(S42, 0) + ISNULL(S44, 0) + ISNULL(S46, 0) + ISNULL(S48, 0),
|
||||||
|
K38 = ISNULL(E38, 0) + ISNULL(S38, 0),
|
||||||
|
K40 = ISNULL(E40, 0) + ISNULL(S40, 0),
|
||||||
|
K42 = ISNULL(E42, 0) + ISNULL(S42, 0),
|
||||||
|
K44 = ISNULL(E44, 0) + ISNULL(S44, 0),
|
||||||
|
K46 = ISNULL(E46, 0) + ISNULL(S46, 0),
|
||||||
|
K48 = ISNULL(E48, 0) + ISNULL(S48, 0),
|
||||||
|
KT = ISNULL(E38, 0) + ISNULL(S38, 0) + ISNULL(E40, 0) + ISNULL(S40, 0) +
|
||||||
|
ISNULL(E42, 0) + ISNULL(S42, 0) + ISNULL(E44, 0) + ISNULL(S44, 0) +
|
||||||
|
ISNULL(E46, 0) + ISNULL(S46, 0) + ISNULL(E48, 0) + ISNULL(S48, 0)
|
||||||
|
|
||||||
|
FROM RDX_V_STOCK
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
302
Database/ANTERIOR/Script Vistas.sql
Normal file
302
Database/ANTERIOR/Script Vistas.sql
Normal file
@ -0,0 +1,302 @@
|
|||||||
|
--
|
||||||
|
-- Definition for view RDX_V_VENTASEDI :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_VENTASEDI
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
RDX_CABVEN.NUMINF,
|
||||||
|
RDX_ARTVEN.CLAVE1,
|
||||||
|
RDX_ARTVEN.CLAVE2,
|
||||||
|
RDX_ARTVEN.CLAVE3,
|
||||||
|
RDX_LUGVEN.PERVENINI,
|
||||||
|
RDX_ARTVEN.NUMTALON,
|
||||||
|
RDX_LUGVEN.EANLUG,
|
||||||
|
FILIAL = ISNULL(FILIAIS.FILIAL, RDX_LUGVEN.EANLUG),
|
||||||
|
RDX_ARTVEN.EANVEN,
|
||||||
|
LOJA_VENDEDORES.VENDEDOR AS CODVEN,
|
||||||
|
VENDEDOR = ISNULL(LTRIM(RTRIM(LOJA_VENDEDORES.NOME_VENDEDOR)) + ' ' + LTRIM(RTRIM(LOJA_VENDEDORES.VENDEDOR_APELIDO)), RDX_ARTVEN.EANVEN),
|
||||||
|
RDX_ARTVEN.EANART,
|
||||||
|
RDX_ARTVEN.CODCOM,
|
||||||
|
produtos.PRODUTO,
|
||||||
|
ISNULL(produtos.DESC_PRODUTO, '*** ERROR REFERENCIA **** LLAMAR AL CI') AS DESC_PRODUTO,
|
||||||
|
PRODUTOS_BARRA.COR_PRODUTO,
|
||||||
|
PRODUTOS_BARRA.GRADE,
|
||||||
|
produtos.TIPO_PRODUTO,
|
||||||
|
produtos.GRUPO_PRODUTO,
|
||||||
|
COLECOES.DESC_COLECAO,
|
||||||
|
RDX_ARTVEN.VALVEN,
|
||||||
|
RDX_ARTVEN.CANVEN,
|
||||||
|
RDX_ARTVEN.CANDEV,
|
||||||
|
RDX_ARTVEN.CANVENNET,
|
||||||
|
RDX_ARTVEN.CANESP
|
||||||
|
FROM
|
||||||
|
RDX_ARTVEN
|
||||||
|
INNER JOIN RDX_LUGVEN ON (RDX_ARTVEN.CLAVE1 = RDX_LUGVEN.CLAVE1 AND RDX_ARTVEN.CLAVE2 = RDX_LUGVEN.CLAVE2)
|
||||||
|
INNER JOIN RDX_CABVEN ON (RDX_LUGVEN.CLAVE1 = RDX_CABVEN.CLAVE1)
|
||||||
|
left outer join RDX_FILIALES on (RDX_FILIALES.CODBARRA = RDX_LUGVEN.EANLUG)
|
||||||
|
left outer join FILIAIS on (FILIAIS.COD_FILIAL = RDX_FILIALES.CODFILIAL)
|
||||||
|
LEFT OUTER JOIN LOJA_VENDEDORES ON (LOJA_VENDEDORES.RG LIKE '%' + RDX_ARTVEN.EANVEN + '%')
|
||||||
|
LEFT OUTER JOIN PRODUTOS_BARRA ON ((PRODUTOS_BARRA.CODIGO_BARRA = RDX_ARTVEN.EANART) or (PRODUTOS_BARRA.CODIGO_BARRA = RDX_ARTVEN.CODCOM))
|
||||||
|
LEFT OUTER JOIN PRODUTOS on (produtos.PRODUTO = PRODUTOS_BARRA.PRODUTO)
|
||||||
|
LEFT OUTER JOIN COLECOES on (COLECOES.COLECAO = PRODUTOS.COLECAO)
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_VENTASEDI]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_REFERENCIAS_RESUELTAS :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_REFERENCIAS_RESUELTAS
|
||||||
|
AS
|
||||||
|
SELECT *
|
||||||
|
FROM RDX_REFERENCIA_GENERICA
|
||||||
|
WHERE ESTADO = 'R'
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_REFERENCIAS_RESUELTAS]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_VENTASEDI_RESUELTAS :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_VENTASEDI_RESUELTAS
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
RDX_V_VENTASEDI.NUMINF,
|
||||||
|
RDX_V_VENTASEDI.CLAVE1,
|
||||||
|
RDX_V_VENTASEDI.CLAVE2,
|
||||||
|
RDX_V_VENTASEDI.CLAVE3,
|
||||||
|
RDX_V_VENTASEDI.PERVENINI,
|
||||||
|
RDX_V_VENTASEDI.NUMTALON,
|
||||||
|
RDX_V_VENTASEDI.EANLUG,
|
||||||
|
RDX_V_VENTASEDI.FILIAL,
|
||||||
|
RDX_V_VENTASEDI.EANVEN,
|
||||||
|
RDX_V_VENTASEDI.CODVEN,
|
||||||
|
RDX_V_VENTASEDI.VENDEDOR,
|
||||||
|
EANART = ISNULL(RDX_V_REFERENCIAS_RESUELTAS.CODIGO_BARRA, RDX_V_VENTASEDI.EANART),
|
||||||
|
RDX_V_VENTASEDI.CODCOM,
|
||||||
|
PRODUTO = ISNULL(PRODUTOS_BARRA.PRODUTO, RDX_V_VENTASEDI.PRODUTO),
|
||||||
|
DESC_PRODUTO = ISNULL(PRODUTOS.DESC_PRODUTO, RDX_V_VENTASEDI.DESC_PRODUTO),
|
||||||
|
COR_PRODUTO = ISNULL(PRODUTOS_BARRA.COR_PRODUTO, RDX_V_VENTASEDI.COR_PRODUTO),
|
||||||
|
GRADE = ISNULL(PRODUTOS_BARRA.GRADE, RDX_V_VENTASEDI.GRADE),
|
||||||
|
TIPO_PRODUTO = ISNULL(PRODUTOS.TIPO_PRODUTO, RDX_V_VENTASEDI.TIPO_PRODUTO),
|
||||||
|
GRUPO_PRODUTO = ISNULL(PRODUTOS.GRUPO_PRODUTO, RDX_V_VENTASEDI.GRUPO_PRODUTO),
|
||||||
|
DESC_COLECAO = ISNULL(COLECOES.DESC_COLECAO, RDX_V_VENTASEDI.DESC_COLECAO),
|
||||||
|
RDX_V_VENTASEDI.VALVEN,
|
||||||
|
RDX_V_VENTASEDI.CANVEN,
|
||||||
|
RDX_V_VENTASEDI.CANDEV,
|
||||||
|
RDX_V_VENTASEDI.CANVENNET,
|
||||||
|
RDX_V_VENTASEDI.CANESP
|
||||||
|
FROM RDX_V_VENTASEDI
|
||||||
|
LEFT JOIN RDX_V_REFERENCIAS_RESUELTAS ON (
|
||||||
|
(RDX_V_REFERENCIAS_RESUELTAS.NUMINF = RDX_V_VENTASEDI.NUMINF) AND
|
||||||
|
(RDX_V_REFERENCIAS_RESUELTAS.CLAVE1 = RDX_V_VENTASEDI.CLAVE1) AND
|
||||||
|
(RDX_V_REFERENCIAS_RESUELTAS.CLAVE2 = RDX_V_VENTASEDI.CLAVE2) AND
|
||||||
|
(RDX_V_REFERENCIAS_RESUELTAS.CLAVE3 = RDX_V_VENTASEDI.CLAVE3))
|
||||||
|
LEFT JOIN PRODUTOS_BARRA ON (
|
||||||
|
(PRODUTOS_BARRA.CODIGO_BARRA = ISNULL(RDX_V_REFERENCIAS_RESUELTAS.CODIGO_BARRA, RDX_V_VENTASEDI.EANART)))
|
||||||
|
LEFT JOIN PRODUTOS ON (
|
||||||
|
(PRODUTOS.PRODUTO = PRODUTOS_BARRA.PRODUTO))
|
||||||
|
LEFT JOIN COLECOES ON (
|
||||||
|
(COLECOES.COLECAO = PRODUTOS.COLECAO))
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_VENTASEDI_RESUELTAS]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_VENTASEDI_ERRONEAS :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_VENTASEDI_ERRONEAS
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
RDX_V_VENTASEDI
|
||||||
|
WHERE PRODUTO = '107CH.EN.01'
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_VENTASEDI_ERRONEAS]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_VENTASTERMINADAS :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_VENTASTERMINADAS
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
NUMINF,
|
||||||
|
CLAVE1,
|
||||||
|
CLAVE2,
|
||||||
|
CLAVE3,
|
||||||
|
PERVENINI AS FECHA,
|
||||||
|
DAY(PERVENINI) AS DIA,
|
||||||
|
DATENAME(DW, PERVENINI) DIASEMANA,
|
||||||
|
DATENAME(MONTH, PERVENINI) AS MES,
|
||||||
|
YEAR(PERVENINI) AS ANO,
|
||||||
|
FILIAL AS CENTRO,
|
||||||
|
VENDEDOR,
|
||||||
|
NUMTALON,
|
||||||
|
PRODUTO AS CODIGO,
|
||||||
|
DESC_PRODUTO AS PRODUCTO,
|
||||||
|
GRUPO_PRODUTO AS GRUPOPRODUCTO,
|
||||||
|
TIPO_PRODUTO AS TIPOPRODUCTO,
|
||||||
|
DESC_COLECAO AS COLECCION,
|
||||||
|
COR_PRODUTO AS COLOR,
|
||||||
|
GRADE AS TALLA,
|
||||||
|
TALLA38 = CASE WHEN (GRADE = 38) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
TALLA40 = CASE WHEN (GRADE = 40) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
TALLA42 = CASE WHEN (GRADE = 42) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
TALLA44 = CASE WHEN (GRADE = 44) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
TALLA46 = CASE WHEN (GRADE = 46) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
TALLA48 = CASE WHEN (GRADE = 48) THEN ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0) ELSE NULL END,
|
||||||
|
VENTAS = CASE WHEN (CANVEN > 0) THEN CANVEN ELSE 0 END +
|
||||||
|
CASE WHEN (CANVENNET > 0) THEN CANVENNET ELSE 0 END,
|
||||||
|
|
||||||
|
DEVOLUCIONES = CASE WHEN (CANVEN < 0) THEN CANVEN ELSE 0 END +
|
||||||
|
CASE WHEN (CANVENNET < 0) THEN CANVENNET ELSE 0 END,
|
||||||
|
|
||||||
|
TOTAL = ISNULL(CANVEN, 0) + ISNULL(CANVENNET, 0),
|
||||||
|
VALVEN = CASE WHEN (VALVEN > 0) THEN VALVEN ELSE 0 END,
|
||||||
|
VALDEV = CASE WHEN (VALVEN < 0) THEN VALVEN ELSE 0 END,
|
||||||
|
VALTOT = VALVEN
|
||||||
|
FROM
|
||||||
|
RDX_V_VENTASEDI_RESUELTAS
|
||||||
|
WHERE NOT ((DESC_PRODUTO LIKE '%ERROR REFERENCIA%') AND ((VALVEN < 1) AND (VALVEN > 0))) /* QUITAR COMPOSTURAS */
|
||||||
|
AND (CANESP IS NULL OR CANESP = 0) /* QUITAR INICIO V.PROCESO */
|
||||||
|
AND (VALVEN IS NOT NULL) /* QUITAR CAMBIO DE TALLA */
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_VENTASTERMINADAS]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_VENTASPROCESO :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_VENTASPROCESO AS
|
||||||
|
SELECT
|
||||||
|
NUMINF,
|
||||||
|
CLAVE1,
|
||||||
|
CLAVE2,
|
||||||
|
CLAVE3,
|
||||||
|
PERVENINI AS FECHA,
|
||||||
|
DAY(PERVENINI) AS DIA,
|
||||||
|
DATENAME(DW, PERVENINI) DIASEMANA,
|
||||||
|
DATENAME(MONTH, PERVENINI) AS MES,
|
||||||
|
YEAR(PERVENINI) AS ANO,
|
||||||
|
FILIAL AS CENTRO,
|
||||||
|
VENDEDOR,
|
||||||
|
NUMTALON,
|
||||||
|
PRODUTO AS CODIGO,
|
||||||
|
DESC_PRODUTO AS PRODUCTO,
|
||||||
|
GRUPO_PRODUTO AS GRUPOPRODUCTO,
|
||||||
|
TIPO_PRODUTO AS TIPOPRODUCTO,
|
||||||
|
DESC_COLECAO AS COLECCION,
|
||||||
|
COR_PRODUTO AS COLOR,
|
||||||
|
GRADE AS TALLA,
|
||||||
|
CANESP AS INICIO,
|
||||||
|
CANVENNET AS FINAL,
|
||||||
|
VALVEN AS IMPORTE
|
||||||
|
FROM
|
||||||
|
RDX_V_VENTASEDI_RESUELTAS
|
||||||
|
WHERE ((CANESP IS NOT NULL) OR (CANVENNET IS NOT NULL))
|
||||||
|
AND NOT ((DESC_PRODUTO LIKE '%ERROR REFERENCIA%') AND ((VALVEN < 1) AND (VALVEN > 0))) /* QUITAR COMPOSTURAS */
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_VENTASPROCESO]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_VENTASPROCESOPENDIENTES :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_VENTASPROCESOPENDIENTES AS
|
||||||
|
SELECT NUMTALON,
|
||||||
|
CODIGO,
|
||||||
|
COLOR,
|
||||||
|
TALLA,
|
||||||
|
SUM(ISNULL(INICIO, 0)) AS INICIO,
|
||||||
|
SUM(ABS(ISNULL(FINAL, 0))) AS FINAL
|
||||||
|
FROM RDX_V_VENTASPROCESO
|
||||||
|
GROUP BY NUMTALON, CODIGO, COLOR, TALLA
|
||||||
|
HAVING ((SUM(ISNULL(INICIO, 0)) <> 0) AND
|
||||||
|
(SUM(ISNULL(INICIO, 0)) > SUM(ABS(ISNULL(FINAL, 0)))))
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_VENTASPROCESOPENDIENTES]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--------------- SQL ---------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Definition for view RDX_V_REFERENCIA_GENERICA :
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_REFERENCIA_GENERICA
|
||||||
|
AS
|
||||||
|
SELECT DISTINCT
|
||||||
|
VENTAS.NUMINF,
|
||||||
|
VENTAS.CLAVE1,
|
||||||
|
VENTAS.CLAVE2,
|
||||||
|
VENTAS.CLAVE3,
|
||||||
|
VENTAS.PERVENINI AS FECHA,
|
||||||
|
VENTAS.EANLUG AS CODCENTRO,
|
||||||
|
VENTAS.FILIAL AS CENTRO,
|
||||||
|
VENTAS.EANVEN AS CODVENDEDOR,
|
||||||
|
VENTAS.VENDEDOR,
|
||||||
|
VENTAS.NUMTALON,
|
||||||
|
CODIGO_BARRA = ISNULL(PRODUTOS_BARRA.CODIGO_BARRA, VENTAS.EANART),
|
||||||
|
CODIGO = ISNULL(PRODUTOS_BARRA.PRODUTO, VENTAS.PRODUTO),
|
||||||
|
PRODUCTO = ISNULL(PRODUTOS.DESC_PRODUTO, VENTAS.DESC_PRODUTO),
|
||||||
|
COLOR = ISNULL(PRODUTOS_BARRA.COR_PRODUTO, VENTAS.COR_PRODUTO),
|
||||||
|
TALLA = ISNULL(PRODUTOS_BARRA.GRADE, VENTAS.GRADE),
|
||||||
|
VENTAS.CANESP AS VTAPROCESO,
|
||||||
|
VENTAS.CANVENNET AS VTAFINAL,
|
||||||
|
VTATERM = VENTAS.CANVEN,
|
||||||
|
VALTOT = VENTAS.VALVEN,
|
||||||
|
REF.ESTADO,
|
||||||
|
REF.FECHACAMBIO
|
||||||
|
FROM RDX_V_VENTASEDI_ERRONEAS VENTAS
|
||||||
|
LEFT OUTER JOIN RDX_REFERENCIA_GENERICA REF ON
|
||||||
|
(REF.NUMINF = VENTAS.NUMINF AND REF.CLAVE1 = VENTAS.CLAVE1 AND
|
||||||
|
REF.CLAVE2 = VENTAS.CLAVE2 AND REF.CLAVE3 = VENTAS.CLAVE3)
|
||||||
|
LEFT OUTER JOIN PRODUTOS_BARRA on
|
||||||
|
(PRODUTOS_BARRA.CODIGO_BARRA = REF.CODIGO_BARRA)
|
||||||
|
LEFT OUTER JOIN PRODUTOS ON
|
||||||
|
(PRODUTOS.PRODUTO = PRODUTOS_BARRA.PRODUTO)
|
||||||
|
WHERE NOT ((VENTAS.VALVEN < 1) AND (VENTAS.VALVEN > 0)) /* QUITAR COMPOSTURAS */
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_V_REFERENCIA_GENERICA]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
263
Database/SCRIPT MEJORAS TABLAS.SQL
Normal file
263
Database/SCRIPT MEJORAS TABLAS.SQL
Normal file
@ -0,0 +1,263 @@
|
|||||||
|
ALTER TABLE [dbo].[RDX_TALLAS]
|
||||||
|
ADD [TIPO_TALLAJE] smallint NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
update rdx_tallas
|
||||||
|
set TIPO_TALLAJE = 1
|
||||||
|
GO
|
||||||
|
|
||||||
|
insert into rdx_tallas (TALLA, TIPO_TALLAJE)
|
||||||
|
Values('S', 2)
|
||||||
|
GO
|
||||||
|
|
||||||
|
insert into rdx_tallas (TALLA, TIPO_TALLAJE)
|
||||||
|
Values('M', 2)
|
||||||
|
GO
|
||||||
|
|
||||||
|
insert into rdx_tallas (TALLA, TIPO_TALLAJE)
|
||||||
|
Values('L', 2)
|
||||||
|
GO
|
||||||
|
|
||||||
|
insert into rdx_tallas (TALLA, TIPO_TALLAJE)
|
||||||
|
Values('XL', 2)
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
ADD [CANT_S] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
ADD [CANT_M] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
ADD [CANT_L] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
ADD [CANT_XL] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_RECEPCION_AJUSTES]
|
||||||
|
ADD [CANT_S] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_RECEPCION_AJUSTES]
|
||||||
|
ADD [CANT_M] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_RECEPCION_AJUSTES]
|
||||||
|
ADD [CANT_L] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_RECEPCION_AJUSTES]
|
||||||
|
ADD [CANT_XL] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_DEVOLUCION_AJUSTES]
|
||||||
|
ADD [CANT_S] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_DEVOLUCION_AJUSTES]
|
||||||
|
ADD [CANT_M] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_DEVOLUCION_AJUSTES]
|
||||||
|
ADD [CANT_L] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [dbo].[RDX_DEVOLUCION_AJUSTES]
|
||||||
|
ADD [CANT_XL] numeric(15, 0) NULL
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE PROCEDURE dbo.RDX_P_TIPO_TALLAJE
|
||||||
|
@PRODUCTO VARCHAR(12), @TIPO_TALLAJE smallint OUT
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
set @TIPO_TALLAJE = (SELECT DISTINCT RDX_TALLAS.TIPO_TALLAJE
|
||||||
|
FROM PRODUTOS_BARRA
|
||||||
|
LEFT JOIN RDX_TALLAS ON (PRODUTOS_BARRA.GRADE = RDX_TALLAS.TALLA)
|
||||||
|
WHERE PRODUTOS_BARRA.PRODUTO = @PRODUCTO)
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
/*--------------- SQL ---------------*/
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM sysobjects WHERE id = OBJECT_ID(N'[RDX_INVENTARIOEDI]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_INVENTARIOEDI]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_INVENTARIOEDI] (
|
||||||
|
[NUMDOC] varchar(25) NOT NULL,
|
||||||
|
[NUMLIN] numeric(6, 0) NOT NULL,
|
||||||
|
[NUMCANT] numeric(6, 0) NOT NULL,
|
||||||
|
[TIPOCANT] varchar(3) NULL,
|
||||||
|
[FECHA] datetime NULL,
|
||||||
|
[CENTRO] varchar(17) NULL,
|
||||||
|
[FILIAL] varchar(25) NULL,
|
||||||
|
[CODVEN] varchar(10) NULL,
|
||||||
|
[VENDEDOR] varchar(66) NULL,
|
||||||
|
[CODIGO_BARRA] varchar(17) NULL,
|
||||||
|
[CODIGO] varchar(12) NULL,
|
||||||
|
[PRODUCTO] varchar(40) NULL,
|
||||||
|
[COLOR] varchar(10) NULL,
|
||||||
|
[TALLA] varchar(8) NULL,
|
||||||
|
[CANTIDAD] numeric(15, 0) NULL,
|
||||||
|
[CENTRO2] varchar(17) NULL,
|
||||||
|
[FILIAL2] varchar(25) NULL,
|
||||||
|
[ULTIMO_INVENTARIO] char(1) NULL,
|
||||||
|
[IGNORAR] char(1) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_INVENTARIOEDI]
|
||||||
|
ADD CONSTRAINT [RDX_INVENTARIOEDI_pk]
|
||||||
|
PRIMARY KEY CLUSTERED ([NUMDOC], [NUMLIN], [NUMCANT])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx] ON [RDX_INVENTARIOEDI]
|
||||||
|
([TIPOCANT])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx2] ON [RDX_INVENTARIOEDI]
|
||||||
|
([FECHA])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx3] ON [RDX_INVENTARIOEDI]
|
||||||
|
([CENTRO])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx4] ON [RDX_INVENTARIOEDI]
|
||||||
|
([CODVEN])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx5] ON [RDX_INVENTARIOEDI]
|
||||||
|
([CODIGO_BARRA])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx6] ON [RDX_INVENTARIOEDI]
|
||||||
|
([CODIGO])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx7] ON [RDX_INVENTARIOEDI]
|
||||||
|
([CENTRO2])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx8] ON [RDX_INVENTARIOEDI]
|
||||||
|
([ULTIMO_INVENTARIO])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INVENTARIOEDI_idx9] ON [RDX_INVENTARIOEDI]
|
||||||
|
([CENTRO], [CODIGO], [COLOR], [TALLA])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_INVENTARIOEDI]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
/*--------------- SQL ---------------*/
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[RDX_VENTASEDI]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
|
||||||
|
DROP TABLE [RDX_VENTASEDI]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE TABLE [RDX_VENTASEDI] (
|
||||||
|
[NUMINF] varchar(35) NOT NULL,
|
||||||
|
[CLAVE1] numeric(10, 0) NOT NULL,
|
||||||
|
[CLAVE2] numeric(5, 0) NOT NULL,
|
||||||
|
[CLAVE3] numeric(5, 0) NOT NULL,
|
||||||
|
[PERVENINI] datetime NULL,
|
||||||
|
[NUMTALON] varchar(35) NULL,
|
||||||
|
[EANLUG] varchar(17) NULL,
|
||||||
|
[FILIAL] varchar(25) NULL,
|
||||||
|
[EANVEN] varchar(17) NULL,
|
||||||
|
[CODVEN] varchar(4) NULL,
|
||||||
|
[VENDEDOR] varchar(66) NULL,
|
||||||
|
[EANART] varchar(17) NULL,
|
||||||
|
[CODCOM] varchar(35) NULL,
|
||||||
|
[PRODUTO] varchar(12) NULL,
|
||||||
|
[DESC_PRODUTO] varchar(40) NULL,
|
||||||
|
[COR_PRODUTO] varchar(10) NULL,
|
||||||
|
[GRADE] varchar(8) NULL,
|
||||||
|
[TIPO_PRODUTO] varchar(25) NULL,
|
||||||
|
[GRUPO_PRODUTO] varchar(25) NULL,
|
||||||
|
[DESC_COLECAO] varchar(40) NULL,
|
||||||
|
[VALVEN] numeric(15, 3) NULL,
|
||||||
|
[CANVEN] numeric(15, 3) NULL,
|
||||||
|
[CANDEV] numeric(15, 3) NULL,
|
||||||
|
[CANVENNET] numeric(15, 3) NULL,
|
||||||
|
[CANESP] numeric(15, 3) NULL,
|
||||||
|
[IGNORAR] char(1) NULL
|
||||||
|
)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER TABLE [RDX_VENTASEDI]
|
||||||
|
ADD CONSTRAINT [RDX_VENTASEDI_pk]
|
||||||
|
PRIMARY KEY CLUSTERED ([NUMINF], [CLAVE1], [CLAVE2], [CLAVE3])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx] ON [RDX_VENTASEDI]
|
||||||
|
([PERVENINI])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx2] ON [RDX_VENTASEDI]
|
||||||
|
([NUMTALON])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx3] ON [RDX_VENTASEDI]
|
||||||
|
([EANVEN])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx4] ON [RDX_VENTASEDI]
|
||||||
|
([CODVEN])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx5] ON [RDX_VENTASEDI]
|
||||||
|
([EANART])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx6] ON [RDX_VENTASEDI]
|
||||||
|
([CODCOM])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_VENTASEDI_idx7] ON [RDX_VENTASEDI]
|
||||||
|
([PRODUTO])
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
GRANT SELECT, INSERT, DELETE, REFERENCES, UPDATE
|
||||||
|
ON [RDX_VENTASEDI]
|
||||||
|
TO [public]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
UPDATE RDX_CABINV
|
||||||
|
SET CARGADO = NULL;
|
||||||
|
|
||||||
|
UPDATE RDX_CABVEN
|
||||||
|
SET CARGADO = NULL;
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
>>>>>>>>>>><LANZAR PROCEDIMIENTOS DE CARGA
|
||||||
434
Database/__Script mejoras.sql
Normal file
434
Database/__Script mejoras.sql
Normal file
@ -0,0 +1,434 @@
|
|||||||
|
CREATE NONCLUSTERED INDEX [RDX_REFERENCIA_GENERICA_idx3] ON [dbo].[RDX_REFERENCIA_GENERICA]
|
||||||
|
([ESTADO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_FILIALES_idx] ON [dbo].[RDX_FILIALES]
|
||||||
|
([CODBARRA])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_FILIALES_idx2] ON [dbo].[RDX_FILIALES]
|
||||||
|
([CODFILIAL])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [FILIAIS_idx] ON [dbo].[FILIAIS]
|
||||||
|
([COD_FILIAL])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [LOJA_VENDEDORES_idx] ON [dbo].[LOJA_VENDEDORES]
|
||||||
|
([RG])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CANTINV_idx3] ON [dbo].[RDX_CANTINV]
|
||||||
|
([TIPOCANT])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_AJUSTES_ALBARAN_idx] ON [dbo].[RDX_AJUSTES_ALBARAN]
|
||||||
|
([ESTADO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_AJUSTES_ALBARAN_idx2] ON [dbo].[RDX_AJUSTES_ALBARAN]
|
||||||
|
([CONTABILIZAR])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [FATURAMENTO_TIPO_idx] ON [dbo].[FATURAMENTO_TIPO]
|
||||||
|
([INDICADOR_TIPO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_TALLAS_idx] ON [dbo].[RDX_TALLAS]
|
||||||
|
([TALLA])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_TRASPASOS_AJUSTES_idx] ON [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
([APROBADO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_TRASPASOS_AJUSTES_idx2] ON [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
([ESTADO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_DEVOLUCION_AJUSTES_idx] ON [dbo].[RDX_DEVOLUCION_AJUSTES]
|
||||||
|
([APROBADO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_DEVOLUCION_AJUSTES_idx2] ON [dbo].[RDX_DEVOLUCION_AJUSTES]
|
||||||
|
([FECHACAMBIO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [PRODUTOS_idx] ON [dbo].[PRODUTOS]
|
||||||
|
([DESC_PRODUTO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_ARTVEN_idx] ON [dbo].[RDX_ARTVEN]
|
||||||
|
([EANART])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_ARTVEN_idx2] ON [dbo].[RDX_ARTVEN]
|
||||||
|
([CODCOM])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_ARTVEN_idx4] ON [dbo].[RDX_ARTVEN]
|
||||||
|
([NUMTALON])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_ARTVEN_idx5] ON [dbo].[RDX_ARTVEN]
|
||||||
|
([EANVEN])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CABVEN_idx] ON [dbo].[RDX_CABVEN]
|
||||||
|
([NUMINF])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_CABVEN_idx2] ON [dbo].[RDX_CABVEN]
|
||||||
|
([IGNORAR])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_INFORMES_idx] ON [dbo].[RDX_INFORMES]
|
||||||
|
([CATEGORIA])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_LUGVEN_idx] ON [dbo].[RDX_LUGVEN]
|
||||||
|
([EANLUG])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_RECEPCION_AJUSTES_idx] ON [dbo].[RDX_RECEPCION_AJUSTES]
|
||||||
|
([FECHACAMBIO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_RECEPCION_AJUSTES_idx2] ON [dbo].[RDX_RECEPCION_AJUSTES]
|
||||||
|
([APROBADO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_REFERENCIA_GENERICA_idx] ON [dbo].[RDX_REFERENCIA_GENERICA]
|
||||||
|
([FECHACAMBIO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_REFERENCIA_GENERICA_idx2] ON [dbo].[RDX_REFERENCIA_GENERICA]
|
||||||
|
([CODIGO_BARRA])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE NONCLUSTERED INDEX [RDX_TRASPASOS_AJUSTES_idx3] ON [dbo].[RDX_TRASPASOS_AJUSTES]
|
||||||
|
([FECHACAMBIO])
|
||||||
|
WITH (
|
||||||
|
PAD_INDEX = OFF,
|
||||||
|
DROP_EXISTING = OFF,
|
||||||
|
STATISTICS_NORECOMPUTE = OFF,
|
||||||
|
SORT_IN_TEMPDB = OFF,
|
||||||
|
ONLINE = OFF,
|
||||||
|
ALLOW_ROW_LOCKS = ON,
|
||||||
|
ALLOW_PAGE_LOCKS = ON)
|
||||||
|
ON [PRIMARY]
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CREATE VIEW RDX_V_INVENTARIOEDI AS
|
||||||
|
SELECT
|
||||||
|
RDX_CANTINV.NUMDOC,
|
||||||
|
RDX_CANTINV.NUMLIN,
|
||||||
|
RDX_CANTINV.NUMCANT,
|
||||||
|
RDX_CANTINV.TIPOCANT,
|
||||||
|
RDX_CABINV.FECHALIQ AS FECHA,
|
||||||
|
RDX_CABINV.CENTRO,
|
||||||
|
FILIAL = ISNULL(FILIAIS.FILIAL, RDX_CABINV.CENTRO),
|
||||||
|
RDX_CANTINV.IDVEN AS CODVEN,
|
||||||
|
VENDEDOR = ISNULL(LTRIM(RTRIM(LOJA_VENDEDORES.NOME_VENDEDOR)) + ' ' + LTRIM(RTRIM(LOJA_VENDEDORES.VENDEDOR_APELIDO)), RDX_CANTINV.IDVEN),
|
||||||
|
RDX_LININV.CODART AS CODIGO_BARRA,
|
||||||
|
CODIGO = ISNULL(PRODUTOS.PRODUTO, '107CH.EN.01'),
|
||||||
|
PRODUCTO = ISNULL(PRODUTOS.DESC_PRODUTO, '*** ERROR REFERENCIA **** LLAMAR AL CI'),
|
||||||
|
COLOR = ISNULL(PRODUTOS_BARRA.COR_PRODUTO, 300),
|
||||||
|
TALLA = PRODUTOS_BARRA.GRADE,
|
||||||
|
RDX_CANTINV.CANTIDAD,
|
||||||
|
CENTRO2 = RDX_CANTINV.CENTRO,
|
||||||
|
FILIAL2 = ISNULL(FILIAIS2.FILIAL, RDX_CANTINV.CENTRO)
|
||||||
|
FROM RDX_CANTINV
|
||||||
|
INNER JOIN RDX_LININV ON
|
||||||
|
((RDX_LININV.NUMDOC = RDX_CANTINV.NUMDOC) AND
|
||||||
|
(RDX_LININV.NUMLIN = RDX_CANTINV.NUMLIN))
|
||||||
|
INNER JOIN RDX_CABINV ON
|
||||||
|
(RDX_CABINV.NUMDOC = RDX_LININV.NUMDOC)
|
||||||
|
LEFT OUTER JOIN RDX_FILIALES ON (RDX_FILIALES.CODBARRA = RDX_CABINV.CENTRO)
|
||||||
|
LEFT OUTER JOIN FILIAIS ON (FILIAIS.COD_FILIAL = RDX_FILIALES.CODFILIAL)
|
||||||
|
LEFT OUTER JOIN RDX_FILIALES RDX_FILIALES2 ON (RDX_FILIALES2.CODBARRA = RDX_CANTINV.CENTRO)
|
||||||
|
LEFT OUTER JOIN FILIAIS FILIAIS2 ON (FILIAIS2.COD_FILIAL = RDX_FILIALES2.CODFILIAL)
|
||||||
|
LEFT OUTER JOIN LOJA_VENDEDORES ON (LOJA_VENDEDORES.RG = RDX_CANTINV.IDVEN)
|
||||||
|
LEFT OUTER JOIN PRODUTOS_BARRA ON ((PRODUTOS_BARRA.CODIGO_BARRA = RDX_LININV.CODART))
|
||||||
|
LEFT OUTER JOIN PRODUTOS ON (PRODUTOS.PRODUTO = PRODUTOS_BARRA.PRODUTO)
|
||||||
|
WHERE RDX_CABINV.FECHALIQ >= convert(datetime, '20060601', 112) /* PARA NO COGER AÑOS ANTERIORES */
|
||||||
|
AND (RDX_CABINV.IGNORAR IS NULL) OR (RDX_CABINV.IGNORAR <> 'S')
|
||||||
|
GO
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
create table RDX_INVENTARIOEDI (
|
||||||
|
[NUMDOC]numeric(10, 0) NOT NULL,
|
||||||
|
[NUMLIN]numeric(5, 0) NOT NULL,
|
||||||
|
[NUMCANT]varchar(17) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
||||||
|
[TIPOCANT]varchar(70) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
|
||||||
|
[FECHA]datetime NULL,
|
||||||
|
[CENTRO]datetime NULL,
|
||||||
|
[FILIAL]datetime NULL,
|
||||||
|
[CODVEN]datetime NULL,
|
||||||
|
[VENDEDOR]datetime NULL,
|
||||||
|
[CODIGO_BARRA]
|
||||||
|
[CODIGO]
|
||||||
|
[PRODUCTO]
|
||||||
|
[COLOR]
|
||||||
|
[TALLA]
|
||||||
|
[CANTIDAD]
|
||||||
|
[CENTRO2]
|
||||||
|
[FILIAL2]
|
||||||
|
PRIMARY KEY CLUSTERED ([CLAVE1], [CLAVE2]),
|
||||||
|
CONSTRAINT [FK__RDX_LUGVE__CLAVE__4A59F0B5] FOREIGN KEY ([CLAVE1])
|
||||||
|
REFERENCES [dbo].[RDX_CABVEN] ([CLAVE1])
|
||||||
|
ON UPDATE CASCADE
|
||||||
|
ON DELETE CASCADE
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
6
Source/AdminPVGroup.bdsgroup.local
Normal file
6
Source/AdminPVGroup.bdsgroup.local
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<BorlandProject>
|
||||||
|
<Default.Personality>
|
||||||
|
<Projects ActiveProject="ControlesBaseD10.bpl"/>
|
||||||
|
</Default.Personality>
|
||||||
|
</BorlandProject>
|
||||||
@ -4,11 +4,11 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup />
|
<ItemGroup />
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Projects Include="ApplicationBase\ApplicationBase.dproj" />
|
<Projects Include="Base\BaseD10.dproj" />
|
||||||
<Projects Include="Base\Base.dproj" />
|
|
||||||
<Projects Include="CargaEDI\CargaEDI.dproj" />
|
<Projects Include="CargaEDI\CargaEDI.dproj" />
|
||||||
<Projects Include="Cliente\AdminPV.dproj" />
|
<Projects Include="Cliente\AdminPV.dproj" />
|
||||||
<Projects Include="ControlesBase\ControlesBase.dproj" />
|
<Projects Include="Configuracion\Configuracion.dproj" />
|
||||||
|
<Projects Include="ControlesBase\ControlesBaseD10.dproj" />
|
||||||
<Projects Include="Modulos\Devoluciones\Cliente\Devoluciones.dproj" />
|
<Projects Include="Modulos\Devoluciones\Cliente\Devoluciones.dproj" />
|
||||||
<Projects Include="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" />
|
<Projects Include="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" />
|
||||||
<Projects Include="Modulos\Parametros\Cliente\Parametros.dproj" />
|
<Projects Include="Modulos\Parametros\Cliente\Parametros.dproj" />
|
||||||
@ -19,6 +19,7 @@
|
|||||||
<Projects Include="Modulos\VentasProceso\Cliente\VentasProceso.dproj" />
|
<Projects Include="Modulos\VentasProceso\Cliente\VentasProceso.dproj" />
|
||||||
<Projects Include="Modulos\VentasTerminadas\Cliente\VentasTerminadas.dproj" />
|
<Projects Include="Modulos\VentasTerminadas\Cliente\VentasTerminadas.dproj" />
|
||||||
<Projects Include="Servidor\AdminPV_Server.dproj" />
|
<Projects Include="Servidor\AdminPV_Server.dproj" />
|
||||||
|
<Projects Include="Usuarios\Usuarios.dproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ProjectExtensions>
|
<ProjectExtensions>
|
||||||
<Borland.Personality>Default.Personality</Borland.Personality>
|
<Borland.Personality>Default.Personality</Borland.Personality>
|
||||||
@ -26,23 +27,32 @@
|
|||||||
<BorlandProject>
|
<BorlandProject>
|
||||||
<BorlandProject xmlns=""><Default.Personality></Default.Personality></BorlandProject></BorlandProject>
|
<BorlandProject xmlns=""><Default.Personality></Default.Personality></BorlandProject></BorlandProject>
|
||||||
</ProjectExtensions>
|
</ProjectExtensions>
|
||||||
<Target Name="Base">
|
<Target Name="AdminPV_Server">
|
||||||
<MSBuild Projects="Base\Base.dproj" Targets="" />
|
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Base:Clean">
|
<Target Name="AdminPV_Server:Clean">
|
||||||
<MSBuild Projects="Base\Base.dproj" Targets="Clean" />
|
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Clean" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Base:Make">
|
<Target Name="AdminPV_Server:Make">
|
||||||
<MSBuild Projects="Base\Base.dproj" Targets="Make" />
|
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="ControlesBase">
|
<Target Name="BaseD10">
|
||||||
<MSBuild Projects="ControlesBase\ControlesBase.dproj" Targets="" />
|
<MSBuild Projects="Base\BaseD10.dproj" Targets="" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="ControlesBase:Clean">
|
<Target Name="BaseD10:Clean">
|
||||||
<MSBuild Projects="ControlesBase\ControlesBase.dproj" Targets="Clean" />
|
<MSBuild Projects="Base\BaseD10.dproj" Targets="Clean" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="ControlesBase:Make">
|
<Target Name="BaseD10:Make">
|
||||||
<MSBuild Projects="ControlesBase\ControlesBase.dproj" Targets="Make" />
|
<MSBuild Projects="Base\BaseD10.dproj" Targets="Make" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="ControlesBaseD10">
|
||||||
|
<MSBuild Projects="ControlesBase\ControlesBaseD10.dproj" Targets="" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="ControlesBaseD10:Clean">
|
||||||
|
<MSBuild Projects="ControlesBase\ControlesBaseD10.dproj" Targets="Clean" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="ControlesBaseD10:Make">
|
||||||
|
<MSBuild Projects="ControlesBase\ControlesBaseD10.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Parametros">
|
<Target Name="Parametros">
|
||||||
<MSBuild Projects="Modulos\Parametros\Cliente\Parametros.dproj" Targets="" />
|
<MSBuild Projects="Modulos\Parametros\Cliente\Parametros.dproj" Targets="" />
|
||||||
@ -53,14 +63,23 @@
|
|||||||
<Target Name="Parametros:Make">
|
<Target Name="Parametros:Make">
|
||||||
<MSBuild Projects="Modulos\Parametros\Cliente\Parametros.dproj" Targets="Make" />
|
<MSBuild Projects="Modulos\Parametros\Cliente\Parametros.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="ApplicationBase">
|
<Target Name="Usuarios">
|
||||||
<MSBuild Projects="ApplicationBase\ApplicationBase.dproj" Targets="" />
|
<MSBuild Projects="Usuarios\Usuarios.dproj" Targets="" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="ApplicationBase:Clean">
|
<Target Name="Usuarios:Clean">
|
||||||
<MSBuild Projects="ApplicationBase\ApplicationBase.dproj" Targets="Clean" />
|
<MSBuild Projects="Usuarios\Usuarios.dproj" Targets="Clean" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="ApplicationBase:Make">
|
<Target Name="Usuarios:Make">
|
||||||
<MSBuild Projects="ApplicationBase\ApplicationBase.dproj" Targets="Make" />
|
<MSBuild Projects="Usuarios\Usuarios.dproj" Targets="Make" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="Configuracion">
|
||||||
|
<MSBuild Projects="Configuracion\Configuracion.dproj" Targets="" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="Configuracion:Clean">
|
||||||
|
<MSBuild Projects="Configuracion\Configuracion.dproj" Targets="Clean" />
|
||||||
|
</Target>
|
||||||
|
<Target Name="Configuracion:Make">
|
||||||
|
<MSBuild Projects="Configuracion\Configuracion.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="FicherosEDI">
|
<Target Name="FicherosEDI">
|
||||||
<MSBuild Projects="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" Targets="" />
|
<MSBuild Projects="Modulos\FicherosEDI\Cliente\FicherosEDI.dproj" Targets="" />
|
||||||
@ -152,23 +171,14 @@
|
|||||||
<Target Name="AdminPV:Make">
|
<Target Name="AdminPV:Make">
|
||||||
<MSBuild Projects="Cliente\AdminPV.dproj" Targets="Make" />
|
<MSBuild Projects="Cliente\AdminPV.dproj" Targets="Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="AdminPV_Server">
|
|
||||||
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="AdminPV_Server:Clean">
|
|
||||||
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Clean" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="AdminPV_Server:Make">
|
|
||||||
<MSBuild Projects="Servidor\AdminPV_Server.dproj" Targets="Make" />
|
|
||||||
</Target>
|
|
||||||
<Target Name="Build">
|
<Target Name="Build">
|
||||||
<CallTarget Targets="Base;ControlesBase;Parametros;ApplicationBase;FicherosEDI;VentasTerminadas;VentasProceso;ReferenciaGenerica;Recepciones;Devoluciones;Traspasos;Stock;CargaEDI;AdminPV;AdminPV_Server" />
|
<CallTarget Targets="AdminPV_Server;BaseD10;ControlesBaseD10;Parametros;Usuarios;Configuracion;FicherosEDI;VentasTerminadas;VentasProceso;ReferenciaGenerica;Recepciones;Devoluciones;Traspasos;Stock;CargaEDI;AdminPV" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Clean">
|
<Target Name="Clean">
|
||||||
<CallTarget Targets="Base:Clean;ControlesBase:Clean;Parametros:Clean;ApplicationBase:Clean;FicherosEDI:Clean;VentasTerminadas:Clean;VentasProceso:Clean;ReferenciaGenerica:Clean;Recepciones:Clean;Devoluciones:Clean;Traspasos:Clean;Stock:Clean;CargaEDI:Clean;AdminPV:Clean;AdminPV_Server:Clean" />
|
<CallTarget Targets="AdminPV_Server:Clean;BaseD10:Clean;ControlesBaseD10:Clean;Parametros:Clean;Usuarios:Clean;Configuracion:Clean;FicherosEDI:Clean;VentasTerminadas:Clean;VentasProceso:Clean;ReferenciaGenerica:Clean;Recepciones:Clean;Devoluciones:Clean;Traspasos:Clean;Stock:Clean;CargaEDI:Clean;AdminPV:Clean" />
|
||||||
</Target>
|
</Target>
|
||||||
<Target Name="Make">
|
<Target Name="Make">
|
||||||
<CallTarget Targets="Base:Make;ControlesBase:Make;Parametros:Make;ApplicationBase:Make;FicherosEDI:Make;VentasTerminadas:Make;VentasProceso:Make;ReferenciaGenerica:Make;Recepciones:Make;Devoluciones:Make;Traspasos:Make;Stock:Make;CargaEDI:Make;AdminPV:Make;AdminPV_Server:Make" />
|
<CallTarget Targets="AdminPV_Server:Make;BaseD10:Make;ControlesBaseD10:Make;Parametros:Make;Usuarios:Make;Configuracion:Make;FicherosEDI:Make;VentasTerminadas:Make;VentasProceso:Make;ReferenciaGenerica:Make;Recepciones:Make;Devoluciones:Make;Traspasos:Make;Stock:Make;CargaEDI:Make;AdminPV:Make" />
|
||||||
</Target>
|
</Target>
|
||||||
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
|
<Import Condition="Exists('$(MSBuildBinPath)\Borland.Group.Targets')" Project="$(MSBuildBinPath)\Borland.Group.Targets" />
|
||||||
</Project>
|
</Project>
|
||||||
@ -1,40 +0,0 @@
|
|||||||
-$A8
|
|
||||||
-$B-
|
|
||||||
-$C+
|
|
||||||
-$D+
|
|
||||||
-$E-
|
|
||||||
-$F-
|
|
||||||
-$G+
|
|
||||||
-$H+
|
|
||||||
-$I+
|
|
||||||
-$J-
|
|
||||||
-$K-
|
|
||||||
-$L+
|
|
||||||
-$M-
|
|
||||||
-$N+
|
|
||||||
-$O+
|
|
||||||
-$P+
|
|
||||||
-$Q-
|
|
||||||
-$R-
|
|
||||||
-$S-
|
|
||||||
-$T-
|
|
||||||
-$U-
|
|
||||||
-$V+
|
|
||||||
-$W-
|
|
||||||
-$X+
|
|
||||||
-$YD
|
|
||||||
-$Z1
|
|
||||||
-cg
|
|
||||||
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
|
|
||||||
-H+
|
|
||||||
-W+
|
|
||||||
-M
|
|
||||||
-$M16384,1048576
|
|
||||||
-K$00400000
|
|
||||||
-N0".\"
|
|
||||||
-LE"..\..\..\..\Output\Debug\Cliente"
|
|
||||||
-LN"..\Lib"
|
|
||||||
-U"..\Lib"
|
|
||||||
-O"..\Lib"
|
|
||||||
-I"..\Lib"
|
|
||||||
-R"..\Lib"
|
|
||||||
@ -1,64 +0,0 @@
|
|||||||
package ApplicationBase;
|
|
||||||
|
|
||||||
{$R *.res}
|
|
||||||
{$ALIGN 8}
|
|
||||||
{$ASSERTIONS ON}
|
|
||||||
{$BOOLEVAL OFF}
|
|
||||||
{$DEBUGINFO ON}
|
|
||||||
{$EXTENDEDSYNTAX ON}
|
|
||||||
{$IMPORTEDDATA ON}
|
|
||||||
{$IOCHECKS ON}
|
|
||||||
{$LOCALSYMBOLS ON}
|
|
||||||
{$LONGSTRINGS ON}
|
|
||||||
{$OPENSTRINGS ON}
|
|
||||||
{$OPTIMIZATION OFF}
|
|
||||||
{$OVERFLOWCHECKS OFF}
|
|
||||||
{$RANGECHECKS OFF}
|
|
||||||
{$REFERENCEINFO ON}
|
|
||||||
{$SAFEDIVIDE OFF}
|
|
||||||
{$STACKFRAMES ON}
|
|
||||||
{$TYPEDADDRESS OFF}
|
|
||||||
{$VARSTRINGCHECKS ON}
|
|
||||||
{$WRITEABLECONST OFF}
|
|
||||||
{$MINENUMSIZE 1}
|
|
||||||
{$IMAGEBASE $400000}
|
|
||||||
{$IMPLICITBUILD ON}
|
|
||||||
{$DEFINE DEBUG}
|
|
||||||
|
|
||||||
requires
|
|
||||||
rtl,
|
|
||||||
vcl,
|
|
||||||
dbrtl,
|
|
||||||
PluginSDK_D11R,
|
|
||||||
Base,
|
|
||||||
pckMD5,
|
|
||||||
pckUserControl_RT;
|
|
||||||
|
|
||||||
contains
|
|
||||||
uAdminPV_App in 'uAdminPV_App.pas',
|
|
||||||
uIDataModuleUsuarios in 'Usuarios\Model\Data\uIDataModuleUsuarios.pas',
|
|
||||||
uDataModuleUsuarios in 'Usuarios\Data\uDataModuleUsuarios.pas' {DataModuleUsuarios},
|
|
||||||
uUCROConn in 'Usuarios\Data\uUCROConn.pas',
|
|
||||||
uUsuariosController in 'Usuarios\Controller\uUsuariosController.pas',
|
|
||||||
uBizUsuarios in 'Usuarios\Model\uBizUsuarios.pas',
|
|
||||||
uIEditorLogin in 'Usuarios\Controller\View\uIEditorLogin.pas',
|
|
||||||
uEditorLogin in 'Usuarios\Views\uEditorLogin.pas' {fEditorLogin},
|
|
||||||
uUsuariosViewRegister in 'Usuarios\Views\uUsuariosViewRegister.pas',
|
|
||||||
uViewPerfilesUsuario in 'Usuarios\Views\uViewPerfilesUsuario.pas' {frViewPerfilesUsuario: TFrame},
|
|
||||||
uEditorPerfilesUsuario in 'Usuarios\Views\uEditorPerfilesUsuario.pas' {fEditorPerfilesUsuario},
|
|
||||||
uIEditorUsuarios in 'Usuarios\Controller\View\uIEditorUsuarios.pas',
|
|
||||||
uEditorPerfilUsuario in 'Usuarios\Views\uEditorPerfilUsuario.pas' {fEditorPerfilUsuario},
|
|
||||||
uIEditorUsuario in 'Usuarios\Controller\View\uIEditorUsuario.pas',
|
|
||||||
uViewPerfilUsuario in 'Usuarios\Views\uViewPerfilUsuario.pas' {frViewPerfilUsuario: TFrame},
|
|
||||||
uIEditorPerfilesUsuario in 'Usuarios\Controller\View\uIEditorPerfilesUsuario.pas',
|
|
||||||
uIEditorPerfilUsuario in 'Usuarios\Controller\View\uIEditorPerfilUsuario.pas',
|
|
||||||
uEditorUsuarios in 'Usuarios\Views\uEditorUsuarios.pas' {fEditorUsuarios},
|
|
||||||
uViewUsuarios in 'Usuarios\Views\uViewUsuarios.pas' {frViewUsuarios: TFrame},
|
|
||||||
uEditorUsuario in 'Usuarios\Views\uEditorUsuario.pas' {fEditorUsuario: TFrame},
|
|
||||||
uViewUsuario in 'Usuarios\Views\uViewUsuario.pas' {frViewUsuario: TFrame},
|
|
||||||
uEditorCambiarPassword in 'Usuarios\Views\uEditorCambiarPassword.pas' {fEditorCambiarPassword},
|
|
||||||
schUsuariosClient_Intf in 'Usuarios\Model\schUsuariosClient_Intf.pas',
|
|
||||||
schUsuariosServer_Intf in 'Usuarios\Model\schUsuariosServer_Intf.pas',
|
|
||||||
uEditorPermisosUsuario in 'Usuarios\Views\uEditorPermisosUsuario.pas' {fEditorPermisosUsuario};
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
1 VERSIONINFO
|
|
||||||
FILEVERSION 1,0,0,0
|
|
||||||
PRODUCTVERSION 1,0,0,0
|
|
||||||
FILEFLAGSMASK 0x3FL
|
|
||||||
FILEFLAGS 0x00L
|
|
||||||
FILEOS 0x40004L
|
|
||||||
FILETYPE 0x1L
|
|
||||||
FILESUBTYPE 0x0L
|
|
||||||
BEGIN
|
|
||||||
BLOCK "StringFileInfo"
|
|
||||||
BEGIN
|
|
||||||
BLOCK "0C0A04E4"
|
|
||||||
BEGIN
|
|
||||||
VALUE "FileVersion", "1.0.0.0\0"
|
|
||||||
VALUE "ProductVersion", "1.0.0.0\0"
|
|
||||||
END
|
|
||||||
END
|
|
||||||
BLOCK "VarFileInfo"
|
|
||||||
BEGIN
|
|
||||||
VALUE "Translation", 0x0C0A, 1252
|
|
||||||
END
|
|
||||||
END
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
unit uIEditorLogin;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uEditorBase, uUsuariosController;
|
|
||||||
|
|
||||||
type
|
|
||||||
IEditorLogin = interface
|
|
||||||
['{96513A0B-679D-4DD6-8821-C99003DAD2A3}']
|
|
||||||
function ShowModal : Integer;
|
|
||||||
procedure Release;
|
|
||||||
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const AValue : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
unit uIEditorPerfilUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uEditorDBBase, uBizUsuarios, uUsuariosController;
|
|
||||||
|
|
||||||
type
|
|
||||||
IEditorPerfilUsuario = interface(IEditorDBBase)
|
|
||||||
['{1DE19CC0-E4FA-4FD7-AE70-6430781CAFE4}']
|
|
||||||
function GetPerfilUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
|
||||||
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
unit uIEditorPerfilesUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uEditorDBBase, uBizUsuarios, uUsuariosController;
|
|
||||||
|
|
||||||
type
|
|
||||||
IEditorPerfilesUsuario = interface(IEditorDBBase)
|
|
||||||
['{A4EDC876-8290-4AFF-B307-E935CD750842}']
|
|
||||||
function GetPerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
|
||||||
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
unit uIEditorUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uEditorDBItem, uUsuariosController, uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
IEditorUsuario = interface(IEditorDBItem)
|
|
||||||
['{D016C4C2-F204-47AA-9327-00379CFFFB14}']
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
|
|
||||||
function GetUsuario: IBizUsuario;
|
|
||||||
procedure SetUsuario(const Value: IBizUsuario);
|
|
||||||
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
unit uIEditorUsuarios;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uEditorGridBase, uUsuariosController, uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
IEditorUsuarios = interface(IEditorGridBase)
|
|
||||||
['{236534A8-F225-4EA0-8917-4228E530C604}']
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
|
|
||||||
function GetUsuarios: IBizUsuario;
|
|
||||||
procedure SetUsuarios(const Value: IBizUsuario);
|
|
||||||
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,287 +0,0 @@
|
|||||||
unit uPerfilesUsuarioController;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, SysUtils, uDADataTable, uControllerBase, uEditorDBItem,
|
|
||||||
uIDataModuleUsuarios, uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
IPerfilesUsuarioController = interface(IObservador)
|
|
||||||
['{3D60BC4E-B244-4C08-9A1A-00A7C3B74558}']
|
|
||||||
function BuscarTodos: IBizPerfilUsuario;
|
|
||||||
procedure VerTodos;
|
|
||||||
procedure Ver(const AIDPerfil : Integer);
|
|
||||||
procedure Anadir(APerfilUsuario : IBizPerfilUsuario);
|
|
||||||
function Eliminar(APerfilUsuario : IBizPerfilUsuario): Boolean; overload;
|
|
||||||
function Eliminar(const AIDPerfil : Integer): Boolean; overload;
|
|
||||||
function Guardar(APerfilUsuario : IBizPerfilUsuario): Boolean;
|
|
||||||
procedure DescartarCambios(APerfilUsuario : IBizPerfilUsuario);
|
|
||||||
function Localizar(APerfilesUsuario: IBizPerfilUsuario; ADescripcion:String): Boolean;
|
|
||||||
function DarListaPerfilesUsuario: TStringList;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TPerfilesUsuarioController = class(TObservador, IPerfilesUsuarioController)
|
|
||||||
protected
|
|
||||||
FDataModule : IDataModuleUsuarios;
|
|
||||||
|
|
||||||
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); override;
|
|
||||||
function CreateEditor(const AName : String; const IID: TGUID; out Intf): Boolean;
|
|
||||||
|
|
||||||
//Estos son los tres métodos a sobre escribir si se desea heredar toda la logica de
|
|
||||||
//este controller
|
|
||||||
procedure AsignarDataModule; virtual;
|
|
||||||
procedure ValidarObjetos; virtual;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create; override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
|
|
||||||
function Eliminar(APerfilUsuario : IBizPerfilUsuario): Boolean; overload;
|
|
||||||
function Eliminar(const AIDPerfil : Integer): Boolean; overload;
|
|
||||||
function Guardar(APerfilUsuario : IBizPerfilUsuario): Boolean;
|
|
||||||
procedure DescartarCambios(APerfilUsuario : IBizPerfilUsuario); virtual;
|
|
||||||
procedure Anadir(APerfilUsuario : IBizPerfilUsuario);
|
|
||||||
function BuscarTodos: IBizPerfilUsuario;
|
|
||||||
procedure VerTodos;
|
|
||||||
procedure Ver(const AIDPerfil : Integer);
|
|
||||||
function Localizar(APerfilesUsuario: IBizPerfilUsuario; ADescripcion:String): Boolean;
|
|
||||||
function DarListaPerfilesUsuario: TStringList;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
cxControls, DB, uEditorRegistryUtils,
|
|
||||||
uDAInterfaces, uDataTableUtils,
|
|
||||||
uDateUtils, uROTypes, DateUtils, Controls, Windows, schUsuariosClient_Intf,
|
|
||||||
uDataModuleUsuarios, uIEditorPerfilesUsuario, uIEditorPerfilUsuario;
|
|
||||||
|
|
||||||
{ TPerfilesUsuarioController }
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.Anadir(APerfilUsuario: IBizPerfilUsuario);
|
|
||||||
begin
|
|
||||||
APerfilUsuario.Insert;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.AsignarDataModule;
|
|
||||||
begin
|
|
||||||
FDataModule := TDataModuleUsuarios.Create(Nil);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.BuscarTodos: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := FDataModule.GetPerfiles;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TPerfilesUsuarioController.Create;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
AsignarDataModule;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
|
||||||
begin
|
|
||||||
Result := Supports(EditorRegistry.CreateEditor(AName), IID, Intf);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.DarListaPerfilesUsuario: TStringList;
|
|
||||||
var
|
|
||||||
APerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
APerfilesUsuario := BuscarTodos;
|
|
||||||
APerfilesUsuario.DataTable.Active := True;
|
|
||||||
Result := TStringList.Create;
|
|
||||||
try
|
|
||||||
with Result do
|
|
||||||
begin
|
|
||||||
APerfilesUsuario.DataTable.First;
|
|
||||||
while not APerfilesUsuario.DataTable.EOF do
|
|
||||||
begin
|
|
||||||
Add(APerfilesUsuario.USERNAME);
|
|
||||||
APerfilesUsuario.DataTable.Next;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
APerfilesUsuario := NIL;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.DescartarCambios(APerfilUsuario: IBizPerfilUsuario);
|
|
||||||
begin
|
|
||||||
if not Assigned(APerfilUsuario) then
|
|
||||||
raise Exception.Create ('Perfil no asignado');
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
if (APerfilUsuario.State in dsEditModes) then
|
|
||||||
APerfilUsuario.Cancel;
|
|
||||||
|
|
||||||
APerfilUsuario.DataTable.CancelUpdates;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TPerfilesUsuarioController.Destroy;
|
|
||||||
begin
|
|
||||||
FDataModule := Nil;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.Eliminar(const AIDPerfil: Integer): Boolean;
|
|
||||||
begin
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.ValidarObjetos;
|
|
||||||
var
|
|
||||||
AEditor : IEditorPerfilesUsuario;
|
|
||||||
APerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
APerfilesUsuario := FDataModule.GetPerfiles;
|
|
||||||
if Assigned(APerfilesUsuario) then
|
|
||||||
begin
|
|
||||||
APerfilesUsuario.Active := True;
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
CreateEditor('EditorPerfilesUsuario', IEditorPerfilesUsuario, AEditor);
|
|
||||||
if Assigned(AEditor) then
|
|
||||||
with (AEditor as IEditorPerfilesUsuario) do
|
|
||||||
begin
|
|
||||||
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
|
||||||
PerfilesUsuario := APerfilesUsuario;
|
|
||||||
ShowEmbedded;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
AEditor := NIL;
|
|
||||||
APerfilesUsuario := NIL;
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.Ver(const AIDPerfil: Integer);
|
|
||||||
var
|
|
||||||
AEditor : IEditorPerfilUsuario;
|
|
||||||
FPerfil : IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
FPerfil := FDataModule.GetPerfil(AIDPerfil);
|
|
||||||
if Assigned(FPerfil) then
|
|
||||||
begin
|
|
||||||
FPerfil.Active := True;
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
CreateEditor('EditorPerfilUsuario', IEditorPerfilUsuario, AEditor);
|
|
||||||
if Assigned(AEditor) then
|
|
||||||
with (AEditor as IEditorPerfilUsuario) do
|
|
||||||
begin
|
|
||||||
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
|
||||||
PerfilUsuario := FPerfil;
|
|
||||||
ShowModal;
|
|
||||||
Release;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
AEditor := NIL;
|
|
||||||
FPerfil := NIL;
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.VerTodos;
|
|
||||||
var
|
|
||||||
AEditor : IEditorPerfilesUsuario;
|
|
||||||
APerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
APerfilesUsuario := FDataModule.GetPerfiles;
|
|
||||||
if Assigned(APerfilesUsuario) then
|
|
||||||
begin
|
|
||||||
APerfilesUsuario.Active := True;
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
CreateEditor('EditorPerfilesUsuario', IEditorPerfilesUsuario, AEditor);
|
|
||||||
if Assigned(AEditor) then
|
|
||||||
with (AEditor as IEditorPerfilesUsuario) do
|
|
||||||
begin
|
|
||||||
Controller := Self; //OJO ORDEN MUY IMPORTANTE
|
|
||||||
PerfilesUsuario := APerfilesUsuario;
|
|
||||||
ShowEmbedded;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
AEditor := NIL;
|
|
||||||
APerfilesUsuario := NIL;
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.Eliminar(APerfilUsuario: IBizPerfilUsuario): Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
|
|
||||||
if not Assigned(APerfilUsuario) then
|
|
||||||
raise Exception.Create ('Perfil no asignado');
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
if (APerfilUsuario.State in dsEditModes) then
|
|
||||||
APerfilUsuario.Cancel;
|
|
||||||
|
|
||||||
APerfilUsuario.Delete;
|
|
||||||
APerfilUsuario.DataTable.ApplyUpdates;
|
|
||||||
HideHourglassCursor;
|
|
||||||
Result := True;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPerfilesUsuarioController.RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
//
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.Guardar(APerfilUsuario: IBizPerfilUsuario): Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
|
|
||||||
if not Assigned(APerfilUsuario) then
|
|
||||||
raise Exception.Create ('Perfil no asignado');
|
|
||||||
|
|
||||||
ValidarObjetos;
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
if (APerfilUsuario.DataTable.State in dsEditModes) then
|
|
||||||
APerfilUsuario.DataTable.Post;
|
|
||||||
|
|
||||||
APerfilUsuario.DataTable.ApplyUpdates;
|
|
||||||
|
|
||||||
Result := True;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TPerfilesUsuarioController.Localizar(APerfilesUsuario: IBizPerfilUsuario; ADescripcion: String): Boolean;
|
|
||||||
begin
|
|
||||||
Result := True;
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
with APerfilesUsuario.DataTable do
|
|
||||||
begin
|
|
||||||
DisableControls;
|
|
||||||
First;
|
|
||||||
if not Locate(fld_PERFILESUSERNAME, ADescripcion, []) then
|
|
||||||
Result := False;
|
|
||||||
EnableControls;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,426 +0,0 @@
|
|||||||
inherited DataModuleUsuarios: TDataModuleUsuarios
|
|
||||||
OnCreate = DataModuleCreate
|
|
||||||
Height = 215
|
|
||||||
Width = 331
|
|
||||||
object srvUsuarios: TRORemoteService
|
|
||||||
Message = dmBase.ROMessage
|
|
||||||
Channel = dmBase.ROChannel
|
|
||||||
ServiceName = 'srvUsuarios'
|
|
||||||
Left = 40
|
|
||||||
Top = 80
|
|
||||||
end
|
|
||||||
object UCSettingsSpanish: TUCSettings
|
|
||||||
AppMessages.MsgsForm_BtNew = '&Nuevo Mensaje'
|
|
||||||
AppMessages.MsgsForm_BtReplay = '&Responder'
|
|
||||||
AppMessages.MsgsForm_BtForward = '&Reenviar'
|
|
||||||
AppMessages.MsgsForm_BtDelete = '&Borrar'
|
|
||||||
AppMessages.MsgsForm_BtClose = '&Cerrar'
|
|
||||||
AppMessages.MsgsForm_WindowCaption = 'Mensajes de Sistema'
|
|
||||||
AppMessages.MsgsForm_ColFrom = 'Remitente'
|
|
||||||
AppMessages.MsgsForm_ColSubject = 'Asunto'
|
|
||||||
AppMessages.MsgsForm_ColDate = 'Fecha'
|
|
||||||
AppMessages.MsgsForm_PromptDelete = #191'Est'#225' seguro de eliminar los mensajes seleccionados?'
|
|
||||||
AppMessages.MsgsForm_PromptDelete_WindowCaption = 'Eliminar mensajes'
|
|
||||||
AppMessages.MsgsForm_NoMessagesSelected = '!Ning'#250'n mensaje seleccionado'#161
|
|
||||||
AppMessages.MsgsForm_NoMessagesSelected_WindowCaption = 'Informaci'#243'n'
|
|
||||||
AppMessages.MsgRec_BtClose = '&Cerrar'
|
|
||||||
AppMessages.MsgRec_WindowCaption = 'Mensaje'
|
|
||||||
AppMessages.MsgRec_Title = 'Mensaje Recibido'
|
|
||||||
AppMessages.MsgRec_LabelFrom = 'De:'
|
|
||||||
AppMessages.MsgRec_LabelDate = 'Fecha'
|
|
||||||
AppMessages.MsgRec_LabelSubject = 'Asunto'
|
|
||||||
AppMessages.MsgRec_LabelMessage = 'Mensaje'
|
|
||||||
AppMessages.MsgSend_BtSend = '&Enviar'
|
|
||||||
AppMessages.MsgSend_BtCancel = '&Cancelar'
|
|
||||||
AppMessages.MsgSend_WindowCaption = 'Mensaje'
|
|
||||||
AppMessages.MsgSend_Title = 'Enviar Nuevo Mensaje'
|
|
||||||
AppMessages.MsgSend_GroupTo = 'Para:'
|
|
||||||
AppMessages.MsgSend_RadioUser = 'Usuario:'
|
|
||||||
AppMessages.MsgSend_RadioAll = 'Todos'
|
|
||||||
AppMessages.MsgSend_GroupMessage = 'Mensaje'
|
|
||||||
AppMessages.MsgSend_LabelSubject = 'Asunto'
|
|
||||||
AppMessages.MsgSend_LabelMessageText = 'Texto del mensaje'
|
|
||||||
CommonMessages.AutoLogonError =
|
|
||||||
'Error de Ingreso Autom'#225'tico!'#13#10'Especifique un Usuario y Contrase'#241 +
|
|
||||||
'a V'#225'lidos.'
|
|
||||||
CommonMessages.ChangePasswordError.InvalidCurrentPassword = #161'Contrase'#241'a Actual Incorrecta!'
|
|
||||||
CommonMessages.ChangePasswordError.NewPasswordError =
|
|
||||||
'Los campos Contrase'#241'a Nueva y Confirme Contrase'#241'a deben ser igua' +
|
|
||||||
'les'
|
|
||||||
CommonMessages.ChangePasswordError.NewEqualCurrent = 'Nueva Contrase'#241'a y Contrase'#241'a Actual deben ser diferentes'
|
|
||||||
CommonMessages.ChangePasswordError.PasswordRequired = #161'La Contrase'#241'a es obligatoria!'
|
|
||||||
CommonMessages.ChangePasswordError.MinPasswordLength = 'La Contrase'#241'a debe tener un m'#237'nimo de %d caracteres'
|
|
||||||
CommonMessages.ChangePasswordError.InvalidNewPassword = #161'Prohibido utilizar contrase'#241'as NO Seguras!'
|
|
||||||
CommonMessages.InvalidLogin = 'Usuario y/o Contrase'#241'a Incorrectos!'
|
|
||||||
CommonMessages.InitialMessage.Strings = (
|
|
||||||
'ATENCION! Conecci'#243'n Inicial:'
|
|
||||||
''
|
|
||||||
'Usuario : :user'
|
|
||||||
'Contrase'#241'a : :password'
|
|
||||||
''
|
|
||||||
'Defina permisos para este usuario')
|
|
||||||
CommonMessages.MaxLoginAttemptsError = '%d Intentos de conecci'#243'n inv'#225'lidos !'
|
|
||||||
CommonMessages.PasswordChanged = #161'Se ha cambiado la Contrase'#241'a con '#233'xito!'
|
|
||||||
CommonMessages.BlankPassword = 'Contrase'#241'a vac'#237'a para el Usuario %s'
|
|
||||||
CommonMessages.UsuarioExiste = 'O Usu'#225'rio "%s" j'#225' est'#225' cadastrado no sistema !!'
|
|
||||||
CommonMessages.PasswordExpired = 'Aten'#231#227'o, sua senha expirou, favor troca-la'
|
|
||||||
CommonMessages.ForcaTrocaSenha = 'Mudan'#231'a de senha obrigat'#243'ria'
|
|
||||||
Login.WindowCaption = 'Conecci'#243'n'
|
|
||||||
Login.LabelUser = 'Usuario: '
|
|
||||||
Login.LabelPassword = 'Contrase'#241'a:'
|
|
||||||
Login.BtOk = 'Aceptar'
|
|
||||||
Login.BtCancel = '&Cancelar'
|
|
||||||
Login.LeftImage.Data = {
|
|
||||||
07544269746D617016090000424D160900000000000036040000280000003200
|
|
||||||
0000180000000100080000000000E00400000000000000000000000100000000
|
|
||||||
000000000000000080000080000000808000800000008000800080800000C0C0
|
|
||||||
C000C0DCC000F0CAA6000020400000206000002080000020A0000020C0000020
|
|
||||||
E00000400000004020000040400000406000004080000040A0000040C0000040
|
|
||||||
E00000600000006020000060400000606000006080000060A0000060C0000060
|
|
||||||
E00000800000008020000080400000806000008080000080A0000080C0000080
|
|
||||||
E00000A0000000A0200000A0400000A0600000A0800000A0A00000A0C00000A0
|
|
||||||
E00000C0000000C0200000C0400000C0600000C0800000C0A00000C0C00000C0
|
|
||||||
E00000E0000000E0200000E0400000E0600000E0800000E0A00000E0C00000E0
|
|
||||||
E00040000000400020004000400040006000400080004000A0004000C0004000
|
|
||||||
E00040200000402020004020400040206000402080004020A0004020C0004020
|
|
||||||
E00040400000404020004040400040406000404080004040A0004040C0004040
|
|
||||||
E00040600000406020004060400040606000406080004060A0004060C0004060
|
|
||||||
E00040800000408020004080400040806000408080004080A0004080C0004080
|
|
||||||
E00040A0000040A0200040A0400040A0600040A0800040A0A00040A0C00040A0
|
|
||||||
E00040C0000040C0200040C0400040C0600040C0800040C0A00040C0C00040C0
|
|
||||||
E00040E0000040E0200040E0400040E0600040E0800040E0A00040E0C00040E0
|
|
||||||
E00080000000800020008000400080006000800080008000A0008000C0008000
|
|
||||||
E00080200000802020008020400080206000802080008020A0008020C0008020
|
|
||||||
E00080400000804020008040400080406000804080008040A0008040C0008040
|
|
||||||
E00080600000806020008060400080606000806080008060A0008060C0008060
|
|
||||||
E00080800000808020008080400080806000808080008080A0008080C0008080
|
|
||||||
E00080A0000080A0200080A0400080A0600080A0800080A0A00080A0C00080A0
|
|
||||||
E00080C0000080C0200080C0400080C0600080C0800080C0A00080C0C00080C0
|
|
||||||
E00080E0000080E0200080E0400080E0600080E0800080E0A00080E0C00080E0
|
|
||||||
E000C0000000C0002000C0004000C0006000C0008000C000A000C000C000C000
|
|
||||||
E000C0200000C0202000C0204000C0206000C0208000C020A000C020C000C020
|
|
||||||
E000C0400000C0402000C0404000C0406000C0408000C040A000C040C000C040
|
|
||||||
E000C0600000C0602000C0604000C0606000C0608000C060A000C060C000C060
|
|
||||||
E000C0800000C0802000C0804000C0806000C0808000C080A000C080C000C080
|
|
||||||
E000C0A00000C0A02000C0A04000C0A06000C0A08000C0A0A000C0A0C000C0A0
|
|
||||||
E000C0C00000C0C02000C0C04000C0C06000C0C08000C0C0A000F0FBFF00A4A0
|
|
||||||
A000808080000000FF0000FF000000FFFF00FF000000FF00FF00FFFF0000FFFF
|
|
||||||
FF00FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD525252525252525252525252
|
|
||||||
5252FDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDAFB75E5E5E66666767676F6F6F6FB752FDFDFDFDFD0000FDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBF
|
|
||||||
BFBFBFBFBFBFBFBFBFB752FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFB76F676F6FB7B7B7B7B7776F5EB752FD
|
|
||||||
FDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDAFBF6FBFBFBFBFBFBFBFBFBFBFBFB752FDFDFDFDFD0000FDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFB76F676F6F6FB7B7
|
|
||||||
B7B7776F5EB752FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBFBFBFBFBFBFBFBFBFBFBF52FDFDFDFDFD
|
|
||||||
0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAF
|
|
||||||
B76767676F6F6FB7B7B7776F5EB752FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBFBFBFBFBFBFBFBFBF
|
|
||||||
BFBF52FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDAFB76767676F6F6F6FB7B7776F5EB752FDFDFDFDFD0000FDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBF6FBFBF
|
|
||||||
BFBFBFBFBFBFBFBFBFBF52FDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDAFBFB7AFAFB7B7B7B7BFBFBFBFB7B752FD
|
|
||||||
FDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDAFB76F675E5E5E5E5E5E676FB7A5FDFDFDFDFDFD0000FDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F79BFDFDFDFD
|
|
||||||
FDFDA4F7A3FDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDF7F79BFDFDFDFDFDFDA407A3FDFDFDFDFDFDFD
|
|
||||||
0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDF7F79BFDFDFDFDFDFDA407A3FDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F7A4FDFDFDFDFDFDF707
|
|
||||||
A3FDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDF707A49AFDFDFDFDA30707A3FDFDFDFDFDFDFD0000FDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F6A4
|
|
||||||
A49B9A9AA3A407079AFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7F6F7F7A4A4F70707A3FDFDFDFD
|
|
||||||
FDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDF7F6F6F6F6F607A3FDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDF7A3A3A3
|
|
||||||
A3A3FDFDFDFDFDFDFDFDFDFD0000FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD
|
|
||||||
0000}
|
|
||||||
Login.LabelTentativa = 'Tentativa : '
|
|
||||||
Login.LabelTentativas = 'M'#225'ximo de Tentativas : '
|
|
||||||
Log.WindowCaption = 'Seguridad'
|
|
||||||
Log.LabelDescription = 'Visor de Eventos'
|
|
||||||
Log.LabelUser = 'Usuario:'
|
|
||||||
Log.LabelDate = 'Fecha:'
|
|
||||||
Log.LabelLevel = 'Nivel M'#237'nimo: '
|
|
||||||
Log.ColAppID = 'AppID'
|
|
||||||
Log.ColLevel = 'Nivel'
|
|
||||||
Log.ColMessage = 'Mensaje'
|
|
||||||
Log.ColUser = 'Usuario'
|
|
||||||
Log.ColDate = 'Fecha'
|
|
||||||
Log.BtFilter = '&Aplicar Filtro'
|
|
||||||
Log.BtDelete = '&Borrar Bit'#225'cora'
|
|
||||||
Log.BtClose = '&Cerrar'
|
|
||||||
Log.PromptDelete =
|
|
||||||
#191'Est'#225' seguro de Eliminar todos todos los registros de Bit'#225'cora s' +
|
|
||||||
'eleccionados?'
|
|
||||||
Log.PromptDelete_WindowCaption = 'Confirmaci'#243'n'
|
|
||||||
Log.OptionUserAll = 'Todos'
|
|
||||||
Log.OptionLevelLow = 'Bajo'
|
|
||||||
Log.OptionLevelNormal = 'Normal'
|
|
||||||
Log.OptionLevelHigh = 'Alto'
|
|
||||||
Log.OptionLevelCritic = 'Cr'#237'tico'
|
|
||||||
Log.DeletePerformed =
|
|
||||||
'Borrado de registros de bit'#225'cora realizado: Usuario = "%s" | Fec' +
|
|
||||||
'ha = %s a %s | Nivel <= %s'
|
|
||||||
UsersForm.WindowCaption = 'Seguridad'
|
|
||||||
UsersForm.LabelDescription = 'Administraci'#243'n de Usuarios'
|
|
||||||
UsersForm.ColName = 'Nombre'
|
|
||||||
UsersForm.ColLogin = 'Usuario'
|
|
||||||
UsersForm.ColEmail = 'Correo'
|
|
||||||
UsersForm.BtAdd = '&Nuevo'
|
|
||||||
UsersForm.BtChange = '&Editar'
|
|
||||||
UsersForm.BtDelete = 'E&liminar'
|
|
||||||
UsersForm.PromptDelete = #191'Est'#225' seguro de Eliminar al Usuario "%s"?'
|
|
||||||
UsersForm.PromptDelete_WindowCaption = 'Eliminar usuario'
|
|
||||||
UsersForm.BtRights = '&Accesos'
|
|
||||||
UsersForm.BtPassword = 'C&ontrase'#241'a'
|
|
||||||
UsersForm.BtClose = '&Cerrar'
|
|
||||||
AddChangeUser.WindowCaption = 'Administraci'#243'n de Usuarios'
|
|
||||||
AddChangeUser.LabelAdd = 'Nuevo Usuario'
|
|
||||||
AddChangeUser.LabelChange = 'Editar Usuario'
|
|
||||||
AddChangeUser.LabelName = 'Nombre:'
|
|
||||||
AddChangeUser.LabelLogin = 'Usuario: '
|
|
||||||
AddChangeUser.LabelEmail = 'Correo: '
|
|
||||||
AddChangeUser.LabelPerfil = 'Perfil: '
|
|
||||||
AddChangeUser.CheckPrivileged = 'Usuario Privilegiado'
|
|
||||||
AddChangeUser.BtSave = '&Guardar'
|
|
||||||
AddChangeUser.BtCancel = 'Cancelar'
|
|
||||||
AddChangeUser.CheckExpira = 'Senha do usu'#225'rio n'#227'o expira'
|
|
||||||
AddChangeUser.Day = 'Dias'
|
|
||||||
AddChangeUser.ExpiredIn = 'Expira em'
|
|
||||||
AddChangeProfile.WindowCaption = 'Perfiles de Usuarios'
|
|
||||||
AddChangeProfile.LabelAdd = 'Nuevo Perfil'
|
|
||||||
AddChangeProfile.LabelChange = 'Editar Perfil'
|
|
||||||
AddChangeProfile.LabelName = 'Descripci'#243'n: '
|
|
||||||
AddChangeProfile.BtSave = '&Guardar'
|
|
||||||
AddChangeProfile.BtCancel = 'Cancelar'
|
|
||||||
UsersProfile.WindowCaption = 'Seguridad'
|
|
||||||
UsersProfile.LabelDescription = 'Perfil de Usuario'
|
|
||||||
UsersProfile.ColProfile = 'Perfil'
|
|
||||||
UsersProfile.BtAdd = '&Nuevo'
|
|
||||||
UsersProfile.BtChange = '&Editar'
|
|
||||||
UsersProfile.BtDelete = 'E&liminar'
|
|
||||||
UsersProfile.BtRights = '&Accesos'
|
|
||||||
UsersProfile.PromptDelete =
|
|
||||||
'Existe(n) usuario(s) con el Perfil "%s". '#191'Est'#225' seguro de elimina' +
|
|
||||||
'r el perfil?'
|
|
||||||
UsersProfile.PromptDelete_WindowCaption = 'Eliminar perfil'
|
|
||||||
UsersProfile.BtClose = '&Cerrar'
|
|
||||||
Rights.WindowCaption = 'Seguridad'
|
|
||||||
Rights.LabelUser = 'Permisos de Usuario : '
|
|
||||||
Rights.LabelProfile = 'Permisos del Perfil : '
|
|
||||||
Rights.PageMenu = 'Elementos del Men'#250
|
|
||||||
Rights.PageActions = 'Acciones'
|
|
||||||
Rights.PageControls = 'Controles'
|
|
||||||
Rights.BtUnlock = '&Permitir'
|
|
||||||
Rights.BtLock = '&Bloquear'
|
|
||||||
Rights.BtSave = '&Guardar'
|
|
||||||
Rights.BtCancel = '&Cancelar'
|
|
||||||
ChangePassword.WindowCaption = 'Seguridad'
|
|
||||||
ChangePassword.LabelDescription = 'Cambiar Contrase'#241'a'
|
|
||||||
ChangePassword.LabelCurrentPassword = 'Contrase'#241'a Actual:'
|
|
||||||
ChangePassword.LabelNewPassword = 'Nueva Contrase'#241'a:'
|
|
||||||
ChangePassword.LabelConfirm = 'Confirme Contrase'#241'a:'
|
|
||||||
ChangePassword.BtSave = '&Guardar'
|
|
||||||
ChangePassword.BtCancel = 'Cancelar'
|
|
||||||
ResetPassword.WindowCaption = 'Ingrese Contrase'#241'a de Usuario: "%s"'
|
|
||||||
ResetPassword.LabelPassword = 'Contrase'#241'a: '
|
|
||||||
History.Evento_Insert = 'Nuevo'
|
|
||||||
History.Evento_Delete = 'Eliminar'
|
|
||||||
History.Evento_Edit = 'Editar'
|
|
||||||
History.Evento_NewRecord = 'Nuevo registro'
|
|
||||||
History.Hist_All = 'Todos'
|
|
||||||
History.Msg_LimpHistorico = 'Excluir el contenido entero del hist'#243'rico ?'
|
|
||||||
History.Msg_MensConfirma = 'Confirme'
|
|
||||||
History.Msg_LogEmptyHistory = 'El usuario %s borra la historia de mesa en %s '
|
|
||||||
History.LabelDescricao = 'Hist'#243'rico de tabelas'
|
|
||||||
History.LabelUser = 'Usuario'
|
|
||||||
History.LabelForm = 'Formul'#225'rio'
|
|
||||||
History.LabelEvento = 'Evento'
|
|
||||||
History.LabelTabela = 'Tabela'
|
|
||||||
History.LabelDataEvento = 'Data'
|
|
||||||
History.LabelHoraEvento = 'Hora'
|
|
||||||
History.Msg_NewRecord = '%s Inserte el nuevo registro'
|
|
||||||
History.Hist_MsgExceptPropr = 'Por favor informe la propiedad %s'
|
|
||||||
History.Hist_BtnFiltro = '&Aplicar Filtro'
|
|
||||||
History.Hist_BtnExcluir = '&Borrar Hist'#243'rico'
|
|
||||||
History.Hist_BtnFechar = '&Cerrar'
|
|
||||||
TypeFieldsDB.Type_VarChar = 'VarChar'
|
|
||||||
TypeFieldsDB.Type_Char = 'Char'
|
|
||||||
TypeFieldsDB.Type_Int = 'Int'
|
|
||||||
TypeFieldsDB.Type_MemoField = 'BLOB SUB_TYPE 1 SEGMENT SIZE 1024'
|
|
||||||
Language = ucSpanish
|
|
||||||
Left = 40
|
|
||||||
Top = 16
|
|
||||||
end
|
|
||||||
object rda_Usuarios: TDARemoteDataAdapter
|
|
||||||
GetSchemaCall.RemoteService = srvUsuarios
|
|
||||||
GetDataCall.RemoteService = srvUsuarios
|
|
||||||
UpdateDataCall.RemoteService = srvUsuarios
|
|
||||||
GetScriptsCall.RemoteService = srvUsuarios
|
|
||||||
RemoteService = srvUsuarios
|
|
||||||
DataStreamer = Bin2DataStreamer
|
|
||||||
Left = 176
|
|
||||||
Top = 16
|
|
||||||
end
|
|
||||||
object Bin2DataStreamer: TDABin2DataStreamer
|
|
||||||
Left = 40
|
|
||||||
Top = 144
|
|
||||||
end
|
|
||||||
object tbl_USUARIOS: TDAMemDataTable
|
|
||||||
RemoteUpdatesOptions = []
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'ID'
|
|
||||||
DataType = datAutoInc
|
|
||||||
GeneratorName = 'GEN_USUARIOS_ID'
|
|
||||||
Required = True
|
|
||||||
DictionaryEntry = 'USUARIOS_ID'
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USERNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Nombre'
|
|
||||||
DictionaryEntry = 'USUARIOS_USERNAME'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'LOGIN'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Login'
|
|
||||||
DictionaryEntry = 'USUARIOS_LOGIN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PASS'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
DisplayLabel = 'Password'
|
|
||||||
DictionaryEntry = 'USUARIOS_PASS'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PASSEXPIRED'
|
|
||||||
DataType = datDateTime
|
|
||||||
DisplayLabel = 'Expiraci'#243'n de password'
|
|
||||||
DictionaryEntry = 'USUARIOS_PASSEXPIRED'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'BLOQUEADO'
|
|
||||||
DataType = datSmallInt
|
|
||||||
DisplayLabel = 'Bloqueado'
|
|
||||||
DictionaryEntry = 'USUARIOS_BLOQUEADO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'EMAIL'
|
|
||||||
DataType = datString
|
|
||||||
Size = 150
|
|
||||||
DisplayLabel = 'Correo electr'#243'nico'
|
|
||||||
DictionaryEntry = 'USUARIOS_EMAIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USERDAYSSUN'
|
|
||||||
DataType = datInteger
|
|
||||||
DisplayLabel = 'USUARIOS_USERDAYSSUN'
|
|
||||||
DictionaryEntry = 'USUARIOS_USERDAYSSUN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PRIVILEGED'
|
|
||||||
DataType = datInteger
|
|
||||||
DisplayLabel = 'Privilegiado'
|
|
||||||
DictionaryEntry = 'USUARIOS_PRIVILEGED'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'TIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 1
|
|
||||||
DisplayLabel = 'Tipo'
|
|
||||||
DictionaryEntry = 'USUARIOS_TIPO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'ID_PERFIL'
|
|
||||||
DataType = datInteger
|
|
||||||
DictionaryEntry = 'USUARIOS_ID_PERFIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'CHECKSUM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
DisplayLabel = 'Checksum'
|
|
||||||
DictionaryEntry = 'USUARIOS_CHECKSUM'
|
|
||||||
end>
|
|
||||||
Params = <>
|
|
||||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
|
||||||
RemoteDataAdapter = rda_Usuarios
|
|
||||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
|
||||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
|
||||||
LogicalName = 'USUARIOS'
|
|
||||||
IndexDefs = <>
|
|
||||||
Left = 176
|
|
||||||
Top = 80
|
|
||||||
end
|
|
||||||
object ds_USUARIOS: TDADataSource
|
|
||||||
DataSet = tbl_USUARIOS.Dataset
|
|
||||||
DataTable = tbl_USUARIOS
|
|
||||||
Left = 176
|
|
||||||
Top = 136
|
|
||||||
end
|
|
||||||
object tbl_PERFILES: TDAMemDataTable
|
|
||||||
RemoteUpdatesOptions = []
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'ID'
|
|
||||||
DataType = datAutoInc
|
|
||||||
GeneratorName = 'GEN_USUARIOS_ID'
|
|
||||||
Required = True
|
|
||||||
DictionaryEntry = 'PERFILES_ID'
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USERNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Nombre'
|
|
||||||
DictionaryEntry = 'PERFILES_USERNAME'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'LOGIN'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Login'
|
|
||||||
DictionaryEntry = 'PERFILES_LOGIN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'TIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 1
|
|
||||||
DisplayLabel = 'Tipo'
|
|
||||||
DictionaryEntry = 'PERFILES_TIPO'
|
|
||||||
end>
|
|
||||||
Params = <>
|
|
||||||
StreamingOptions = [soDisableEventsWhileStreaming]
|
|
||||||
RemoteDataAdapter = rda_Usuarios
|
|
||||||
DetailOptions = [dtCascadeOpenClose, dtCascadeApplyUpdates, dtAutoFetch, dtCascadeDelete, dtCascadeUpdate, dtDisableLogOfCascadeDeletes, dtDisableLogOfCascadeUpdates, dtIncludeInAllInOneFetch]
|
|
||||||
MasterOptions = [moCascadeOpenClose, moCascadeApplyUpdates, moCascadeDelete, moCascadeUpdate, moDisableLogOfCascadeDeletes, moDisableLogOfCascadeUpdates]
|
|
||||||
LogicalName = 'PERFILES'
|
|
||||||
IndexDefs = <>
|
|
||||||
Left = 272
|
|
||||||
Top = 80
|
|
||||||
end
|
|
||||||
object ds_PERFILES: TDADataSource
|
|
||||||
DataSet = tbl_PERFILES.Dataset
|
|
||||||
DataTable = tbl_PERFILES
|
|
||||||
Left = 272
|
|
||||||
Top = 136
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,465 +0,0 @@
|
|||||||
unit uDataModuleUsuarios;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
SysUtils, Classes, DB, DBClient, uDADataTable,
|
|
||||||
VARELA_Intf,
|
|
||||||
UCBase, UCDataConnector, uUCROConn, uDARemoteDataAdapter,
|
|
||||||
uDARemoteCommand, uROClient, uRORemoteService, uDADataStreamer,
|
|
||||||
uDABin2DataStreamer, uDAScriptingProvider, uIDataModuleUsuarios, UCSettings,
|
|
||||||
uDataModuleBase, uDAInterfaces, uDAMemDataTable, uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
TDataModuleUsuarios = class(TDataModuleBase, IDataModuleUsuarios)
|
|
||||||
srvUsuarios: TRORemoteService;
|
|
||||||
UCSettingsSpanish: TUCSettings;
|
|
||||||
rda_Usuarios: TDARemoteDataAdapter;
|
|
||||||
Bin2DataStreamer: TDABin2DataStreamer;
|
|
||||||
tbl_USUARIOS: TDAMemDataTable;
|
|
||||||
ds_USUARIOS: TDADataSource;
|
|
||||||
tbl_PERFILES: TDAMemDataTable;
|
|
||||||
ds_PERFILES: TDADataSource;
|
|
||||||
procedure DataModuleCreate(Sender: TObject);
|
|
||||||
private
|
|
||||||
procedure InicializarCamposUserControl(AUserControl: TUserControl);
|
|
||||||
procedure InicializarSettingsUserControl(AUserControl: TUserControl);
|
|
||||||
function CreateConnectorInstance : TUCDataConnector;
|
|
||||||
public
|
|
||||||
function GetUsuario(const ID : Integer) : IBizUsuario;
|
|
||||||
function NuevoUsuario : IBizUsuario;
|
|
||||||
function GetUsuarios : IBizUsuario;
|
|
||||||
|
|
||||||
function NuevoPerfil : IBizPerfilUsuario;
|
|
||||||
function GetPerfiles : IBizPerfilUsuario;
|
|
||||||
function GetPerfil (const ID : Integer) : IBizPerfilUsuario;
|
|
||||||
|
|
||||||
procedure InicializarUserControl (AUserControl : TUserControl);
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.DFM}
|
|
||||||
|
|
||||||
uses
|
|
||||||
Forms, Controls, uDataTableUtils, uDMBase,
|
|
||||||
Dialogs, Windows, cxControls,
|
|
||||||
schUsuariosClient_Intf;
|
|
||||||
|
|
||||||
const
|
|
||||||
ID_NULO = -9000;
|
|
||||||
|
|
||||||
|
|
||||||
{ TDataModuleUsuarios }
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.CreateConnectorInstance: TUCDataConnector;
|
|
||||||
begin
|
|
||||||
// El propietario (Owner) es Application para que se encarge de la
|
|
||||||
// liberación del conector que estamos creando.
|
|
||||||
Result := TUCROConn.Create(Application);
|
|
||||||
with TUCROConn(Result) do
|
|
||||||
begin
|
|
||||||
ROServiceName := srvUsuarios.ServiceName;
|
|
||||||
ROChannel := dmBase.ROChannel;
|
|
||||||
ROMessage := dmBase.ROMessage;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.NuevoPerfil: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := GetPerfil(ID_NULO)
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.NuevoUsuario: IBizUsuario;
|
|
||||||
begin
|
|
||||||
Result := GetUsuario(ID_NULO)
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDataModuleUsuarios.DataModuleCreate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
srvUsuarios.Channel := dmBase.Channel;
|
|
||||||
srvUsuarios.Message := dmBase.Message;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.GetPerfil(const ID: Integer): IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
Result := Self.GetPerfiles;
|
|
||||||
|
|
||||||
with Result.DataTable.DynamicWhere do
|
|
||||||
begin
|
|
||||||
Clear;
|
|
||||||
// (ID = :ID)
|
|
||||||
Expression := NewBinaryExpression(NewField('', fld_PERFILESID), NewConstant(ID, datInteger), dboEqual);
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.GetPerfiles: IBizPerfilUsuario;
|
|
||||||
var
|
|
||||||
AUsuarios : TDAMemDataTable;
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
AUsuarios := CloneDataTable(tbl_PERFILES);
|
|
||||||
AUsuarios.BusinessRulesID := BIZ_CLIENT_PERFIL_USUARIO;
|
|
||||||
|
|
||||||
Result := (AUsuarios as IBizPerfilUsuario);
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.GetUsuario(const ID: Integer): IBizUsuario;
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
Result := Self.GetUsuarios;
|
|
||||||
|
|
||||||
with Result.DataTable.DynamicWhere do
|
|
||||||
begin
|
|
||||||
Clear;
|
|
||||||
// (ID = :ID)
|
|
||||||
Expression := NewBinaryExpression(NewField('', fld_USUARIOSID), NewConstant(ID, datInteger), dboEqual);
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TDataModuleUsuarios.GetUsuarios: IBizUsuario;
|
|
||||||
var
|
|
||||||
AUsuarios : TDAMemDataTable;
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
AUsuarios := CloneDataTable(tbl_Usuarios);
|
|
||||||
AUsuarios.BusinessRulesID := BIZ_CLIENT_USUARIO;
|
|
||||||
|
|
||||||
Result := (AUsuarios as IBizUsuario);
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDataModuleUsuarios.InicializarCamposUserControl(
|
|
||||||
AUserControl: TUserControl);
|
|
||||||
begin
|
|
||||||
if not Assigned(AUserControl) then
|
|
||||||
raise Exception.Create('UserControl no asignado (InicializarUserControl)');
|
|
||||||
|
|
||||||
with AUserControl do
|
|
||||||
begin
|
|
||||||
DataConnector := CreateConnectorInstance;
|
|
||||||
|
|
||||||
with TableUsers do
|
|
||||||
begin
|
|
||||||
TableName := 'RDX_USUARIOS'; //nme_USUARIOS;
|
|
||||||
FieldUserID := fld_USUARIOSID;
|
|
||||||
FieldUserName := fld_USUARIOSUSERNAME;
|
|
||||||
FieldLogin := fld_USUARIOSLOGIN;
|
|
||||||
FieldPassword := fld_USUARIOSPASS;
|
|
||||||
FieldEmail := fld_USUARIOSEMAIL;
|
|
||||||
FieldPrivileged := fld_USUARIOSPRIVILEGED;
|
|
||||||
FieldTypeRec := fld_USUARIOSTIPO;
|
|
||||||
FieldProfile := fld_USUARIOSID_PERFIL;
|
|
||||||
FieldUserExpired := fld_USUARIOSBLOQUEADO;
|
|
||||||
FieldDateExpired := fld_USUARIOSPASSEXPIRED;
|
|
||||||
FieldUserDaysSun := fld_USUARIOSUSERDAYSSUN;
|
|
||||||
FieldKey := fld_USUARIOSCHECKSUM;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with TableRights do
|
|
||||||
begin
|
|
||||||
TableName := 'RDX_PERMISOS'; //nme_PERMISOS;
|
|
||||||
FieldUserID := fld_PERMISOSID_USUARIO;
|
|
||||||
FieldModule := fld_PERMISOSMODULO;
|
|
||||||
FieldComponentName := fld_PERMISOSNOMBRECOMP;
|
|
||||||
FieldFormName := fld_PERMISOSEXNOMBREFORM;
|
|
||||||
FieldKey := fld_PERMISOSCHECKSUM;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with TableUsersLogged do
|
|
||||||
begin
|
|
||||||
TableName := 'RDX_USUARIOS_LOGON'; //nme_USUARIOS_LOGON;
|
|
||||||
FieldLogonID := fld_USUARIOS_LOGONLOGONID;
|
|
||||||
FieldUserID := fld_USUARIOS_LOGONID_USUARIO;
|
|
||||||
FieldApplicationID := fld_USUARIOS_LOGONAPLICACION;
|
|
||||||
FieldMachineName := fld_USUARIOS_LOGONEQUIPO;
|
|
||||||
FieldData := fld_USUARIOS_LOGONDATA;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with TableHistory do
|
|
||||||
begin
|
|
||||||
TableName := 'RDX_USUARIOS_EVENTOS'; //nme_USUARIOS_EVENTOS;
|
|
||||||
FieldApplicationID := fld_USUARIOS_EVENTOSAPLICACION;
|
|
||||||
FieldUserID := fld_USUARIOS_EVENTOSID_USUARIO;
|
|
||||||
FieldEventDate := fld_USUARIOS_EVENTOSFECHA;
|
|
||||||
FieldEventTime := fld_USUARIOS_EVENTOSHORA;
|
|
||||||
FieldForm := fld_USUARIOS_EVENTOSFORM;
|
|
||||||
FieldCaptionForm := fld_USUARIOS_EVENTOSTITULO_FORM;
|
|
||||||
FieldEvent := fld_USUARIOS_EVENTOSEVENTO;
|
|
||||||
FieldObs := fld_USUARIOS_EVENTOSNOTAS;
|
|
||||||
FieldTableName := fld_USUARIOS_EVENTOSTNAME;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDataModuleUsuarios.InicializarSettingsUserControl(
|
|
||||||
AUserControl: TUserControl);
|
|
||||||
var
|
|
||||||
SourceSettings : TUCSettings;
|
|
||||||
begin
|
|
||||||
SourceSettings := UCSettingsSpanish;
|
|
||||||
|
|
||||||
with AUserControl do
|
|
||||||
begin
|
|
||||||
with UserSettings.CommonMessages do
|
|
||||||
begin
|
|
||||||
BlankPassword := SourceSettings.CommonMessages.BlankPassword;
|
|
||||||
PasswordChanged := SourceSettings.CommonMessages.PasswordChanged;
|
|
||||||
InitialMessage.Text := SourceSettings.CommonMessages.InitialMessage.Text;
|
|
||||||
MaxLoginAttemptsError := SourceSettings.CommonMessages.MaxLoginAttemptsError;
|
|
||||||
InvalidLogin := SourceSettings.CommonMessages.InvalidLogin;
|
|
||||||
AutoLogonError := SourceSettings.CommonMessages.AutoLogonError;
|
|
||||||
UsuarioExiste := SourceSettings.CommonMessages.UsuarioExiste; // Luiz Benevenuto 20/04/06
|
|
||||||
PasswordExpired := SourceSettings.CommonMessages.PasswordExpired; // vicente barros leonel
|
|
||||||
ForcaTrocaSenha := SourceSettings.CommonMessages.ForcaTrocaSenha;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.Login do
|
|
||||||
begin
|
|
||||||
BtCancel := SourceSettings.Login.BtCancel;
|
|
||||||
BtOK := SourceSettings.Login.BtOK;
|
|
||||||
LabelPassword := SourceSettings.Login.LabelPassword;
|
|
||||||
LabelUser := SourceSettings.Login.LabelUser;
|
|
||||||
WindowCaption := SourceSettings.Login.WindowCaption;
|
|
||||||
LabelTentativa := SourceSettings.Login.LabelTentativa;
|
|
||||||
LabelTentativas := SourceSettings.Login.LabelTentativas;
|
|
||||||
|
|
||||||
if Assigned(SourceSettings.Login.LeftImage.Bitmap) then
|
|
||||||
LeftImage.Bitmap := SourceSettings.Login.LeftImage.Bitmap
|
|
||||||
else
|
|
||||||
LeftImage.Bitmap := nil;
|
|
||||||
|
|
||||||
if Assigned(SourceSettings.Login.TopImage.Bitmap) then
|
|
||||||
TopImage.Bitmap := SourceSettings.Login.TopImage.Bitmap
|
|
||||||
else
|
|
||||||
TopImage.Bitmap := nil;
|
|
||||||
|
|
||||||
if Assigned(SourceSettings.Login.BottomImage.Bitmap) then
|
|
||||||
BottomImage.Bitmap := SourceSettings.Login.BottomImage.Bitmap
|
|
||||||
else
|
|
||||||
BottomImage.Bitmap := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.UsersForm do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.UsersForm.WindowCaption;
|
|
||||||
LabelDescription := SourceSettings.UsersForm.LabelDescription;
|
|
||||||
ColName := SourceSettings.UsersForm.ColName;
|
|
||||||
ColLogin := SourceSettings.UsersForm.ColLogin;
|
|
||||||
ColEmail := SourceSettings.UsersForm.ColEmail;
|
|
||||||
BtAdd := SourceSettings.UsersForm.BtAdd;
|
|
||||||
BtChange := SourceSettings.UsersForm.BtChange;
|
|
||||||
BtDelete := SourceSettings.UsersForm.BtDelete;
|
|
||||||
BtRights := SourceSettings.UsersForm.BtRights;
|
|
||||||
BtPassword := SourceSettings.UsersForm.BtPassword;
|
|
||||||
BtClose := SourceSettings.UsersForm.BtClose;
|
|
||||||
PromptDelete := SourceSettings.UsersForm.PromptDelete;
|
|
||||||
PromptDelete_WindowCaption := SourceSettings.UsersForm.PromptDelete_WindowCaption; //added by fduenas
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.UsersProfile do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.UsersProfile.WindowCaption;
|
|
||||||
LabelDescription := SourceSettings.UsersProfile.LabelDescription;
|
|
||||||
ColProfile := SourceSettings.UsersProfile.ColProfile;
|
|
||||||
BtAdd := SourceSettings.UsersProfile.BtAdd;
|
|
||||||
BtChange := SourceSettings.UsersProfile.BtChange;
|
|
||||||
BtDelete := SourceSettings.UsersProfile.BtDelete;
|
|
||||||
BtRights := SourceSettings.UsersProfile.BtRights; //added by fduenas
|
|
||||||
BtClose := SourceSettings.UsersProfile.BtClose;
|
|
||||||
PromptDelete := SourceSettings.UsersProfile.PromptDelete;
|
|
||||||
PromptDelete_WindowCaption := SourceSettings.UsersProfile.PromptDelete_WindowCaption; //added by fduenas
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.AddChangeUser do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.AddChangeUser.WindowCaption;
|
|
||||||
LabelAdd := SourceSettings.AddChangeUser.LabelAdd;
|
|
||||||
LabelChange := SourceSettings.AddChangeUser.LabelChange;
|
|
||||||
LabelName := SourceSettings.AddChangeUser.LabelName;
|
|
||||||
LabelLogin := SourceSettings.AddChangeUser.LabelLogin;
|
|
||||||
LabelEmail := SourceSettings.AddChangeUser.LabelEmail;
|
|
||||||
CheckPrivileged := SourceSettings.AddChangeUser.CheckPrivileged;
|
|
||||||
BtSave := SourceSettings.AddChangeUser.BtSave;
|
|
||||||
BtCancel := SourceSettings.AddChangeUser.BtCancel;
|
|
||||||
CheckExpira := SourceSettings.AddChangeUser.CheckExpira;
|
|
||||||
Day := SourceSettings.AddChangeUser.Day;
|
|
||||||
ExpiredIn := SourceSettings.AddChangeUser.ExpiredIn;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.AddChangeProfile do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.AddChangeProfile.WindowCaption;
|
|
||||||
LabelAdd := SourceSettings.AddChangeProfile.LabelAdd;
|
|
||||||
LabelChange := SourceSettings.AddChangeProfile.LabelChange;
|
|
||||||
LabelName := SourceSettings.AddChangeProfile.LabelName;
|
|
||||||
BtSave := SourceSettings.AddChangeProfile.BtSave;
|
|
||||||
BtCancel := SourceSettings.AddChangeProfile.BtCancel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.Rights do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.Rights.WindowCaption;
|
|
||||||
LabelUser := SourceSettings.Rights.LabelUser;
|
|
||||||
LabelProfile := SourceSettings.Rights.LabelProfile;
|
|
||||||
PageMenu := SourceSettings.Rights.PageMenu;
|
|
||||||
PageActions := SourceSettings.Rights.PageActions;
|
|
||||||
PageControls := SourceSettings.Rights.PageControls;
|
|
||||||
BtUnlock := SourceSettings.Rights.BtUnlock;
|
|
||||||
BtLock := SourceSettings.Rights.BtLock;
|
|
||||||
BtSave := SourceSettings.Rights.BtSave;
|
|
||||||
BtCancel := SourceSettings.Rights.BtCancel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.ChangePassword do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.ChangePassword.WindowCaption;
|
|
||||||
LabelDescription := SourceSettings.ChangePassword.LabelDescription;
|
|
||||||
LabelCurrentPassword := SourceSettings.ChangePassword.LabelCurrentPassword;
|
|
||||||
LabelNewPassword := SourceSettings.ChangePassword.LabelNewPassword;
|
|
||||||
LabelConfirm := SourceSettings.ChangePassword.LabelConfirm;
|
|
||||||
BtSave := SourceSettings.ChangePassword.BtSave;
|
|
||||||
BtCancel := SourceSettings.ChangePassword.BtCancel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.CommonMessages.ChangePasswordError do
|
|
||||||
begin
|
|
||||||
InvalidCurrentPassword := SourceSettings.CommonMessages.ChangePasswordError.InvalidCurrentPassword;
|
|
||||||
NewPasswordError := SourceSettings.CommonMessages.ChangePasswordError.NewPasswordError;
|
|
||||||
NewEqualCurrent := SourceSettings.CommonMessages.ChangePasswordError.NewEqualCurrent;
|
|
||||||
PasswordRequired := SourceSettings.CommonMessages.ChangePasswordError.PasswordRequired;
|
|
||||||
MinPasswordLength := SourceSettings.CommonMessages.ChangePasswordError.MinPasswordLength;
|
|
||||||
InvalidNewPassword := SourceSettings.CommonMessages.ChangePasswordError.InvalidNewPassword;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.ResetPassword do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.ResetPassword.WindowCaption;
|
|
||||||
LabelPassword := SourceSettings.ResetPassword.LabelPassword;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.Log do
|
|
||||||
begin
|
|
||||||
WindowCaption := SourceSettings.Log.WindowCaption;
|
|
||||||
LabelDescription := SourceSettings.Log.LabelDescription;
|
|
||||||
LabelUser := SourceSettings.Log.LabelUser;
|
|
||||||
LabelDate := SourceSettings.Log.LabelDate;
|
|
||||||
LabelLevel := SourceSettings.Log.LabelLevel;
|
|
||||||
ColLevel := SourceSettings.Log.ColLevel;
|
|
||||||
ColMessage := SourceSettings.Log.ColMessage;
|
|
||||||
ColUser := SourceSettings.Log.ColUser;
|
|
||||||
ColDate := SourceSettings.Log.ColDate;
|
|
||||||
BtFilter := SourceSettings.Log.BtFilter;
|
|
||||||
BtDelete := SourceSettings.Log.BtDelete;
|
|
||||||
BtClose := SourceSettings.Log.BtClose;
|
|
||||||
PromptDelete := SourceSettings.Log.PromptDelete;
|
|
||||||
PromptDelete_WindowCaption := SourceSettings.Log.PromptDelete_WindowCaption; //added by fduenas
|
|
||||||
OptionUserAll := SourceSettings.Log.OptionUserAll; //added by fduenas
|
|
||||||
OptionLevelLow := SourceSettings.Log.OptionLevelLow; //added by fduenas
|
|
||||||
OptionLevelNormal := SourceSettings.Log.OptionLevelNormal; //added by fduenas
|
|
||||||
OptionLevelHigh := SourceSettings.Log.OptionLevelHigh; //added by fduenas
|
|
||||||
OptionLevelCritic := SourceSettings.Log.OptionLevelCritic; //added by fduenas
|
|
||||||
DeletePerformed := SourceSettings.Log.DeletePerformed; //added by fduenas
|
|
||||||
end;
|
|
||||||
|
|
||||||
with UserSettings.AppMessages do
|
|
||||||
begin
|
|
||||||
MsgsForm_BtNew := SourceSettings.AppMessages.MsgsForm_BtNew;
|
|
||||||
MsgsForm_BtReplay := SourceSettings.AppMessages.MsgsForm_BtReplay;
|
|
||||||
MsgsForm_BtForward := SourceSettings.AppMessages.MsgsForm_BtForward;
|
|
||||||
MsgsForm_BtDelete := SourceSettings.AppMessages.MsgsForm_BtDelete;
|
|
||||||
MsgsForm_BtClose := SourceSettings.AppMessages.MsgsForm_BtClose; //added by fduenas
|
|
||||||
MsgsForm_WindowCaption := SourceSettings.AppMessages.MsgsForm_WindowCaption;
|
|
||||||
MsgsForm_ColFrom := SourceSettings.AppMessages.MsgsForm_ColFrom;
|
|
||||||
MsgsForm_ColSubject := SourceSettings.AppMessages.MsgsForm_ColSubject;
|
|
||||||
MsgsForm_ColDate := SourceSettings.AppMessages.MsgsForm_ColDate;
|
|
||||||
MsgsForm_PromptDelete := SourceSettings.AppMessages.MsgsForm_PromptDelete;
|
|
||||||
MsgsForm_PromptDelete_WindowCaption := SourceSettings.AppMessages.MsgsForm_PromptDelete_WindowCaption; //added by fduenas
|
|
||||||
MsgsForm_NoMessagesSelected := SourceSettings.AppMessages.MsgsForm_NoMessagesSelected; //added by fduenas
|
|
||||||
MsgsForm_NoMessagesSelected_WindowCaption := SourceSettings.AppMessages.MsgsForm_NoMessagesSelected_WindowCaption; //added by fduenas
|
|
||||||
|
|
||||||
MsgRec_BtClose := SourceSettings.AppMessages.MsgRec_BtClose;
|
|
||||||
MsgRec_WindowCaption := SourceSettings.AppMessages.MsgRec_WindowCaption;
|
|
||||||
MsgRec_Title := SourceSettings.AppMessages.MsgRec_Title;
|
|
||||||
MsgRec_LabelFrom := SourceSettings.AppMessages.MsgRec_LabelFrom;
|
|
||||||
MsgRec_LabelDate := SourceSettings.AppMessages.MsgRec_LabelDate;
|
|
||||||
MsgRec_LabelSubject := SourceSettings.AppMessages.MsgRec_LabelSubject;
|
|
||||||
MsgRec_LabelMessage := SourceSettings.AppMessages.MsgRec_LabelMessage;
|
|
||||||
MsgSend_BtSend := SourceSettings.AppMessages.MsgSend_BtSend;
|
|
||||||
MsgSend_BtCancel := SourceSettings.AppMessages.MsgSend_BtCancel;
|
|
||||||
MsgSend_WindowCaption := SourceSettings.AppMessages.MsgSend_WindowCaption;
|
|
||||||
MsgSend_Title := SourceSettings.AppMessages.MsgSend_Title;
|
|
||||||
MsgSend_GroupTo := SourceSettings.AppMessages.MsgSend_GroupTo;
|
|
||||||
MsgSend_RadioUser := SourceSettings.AppMessages.MsgSend_RadioUser;
|
|
||||||
MsgSend_RadioAll := SourceSettings.AppMessages.MsgSend_RadioAll;
|
|
||||||
MsgSend_GroupMessage := SourceSettings.AppMessages.MsgSend_GroupMessage;
|
|
||||||
MsgSend_LabelSubject := SourceSettings.AppMessages.MsgSend_LabelSubject; //added by fduenas
|
|
||||||
MsgSend_LabelMessageText := SourceSettings.AppMessages.MsgSend_LabelMessageText; //added by fduenas
|
|
||||||
end;
|
|
||||||
|
|
||||||
With UserSettings.History do
|
|
||||||
Begin
|
|
||||||
Evento_edit := SourceSettings.History.Evento_edit;
|
|
||||||
Evento_NewRecord := SourceSettings.History.Evento_NewRecord;
|
|
||||||
Evento_Insert := SourceSettings.History.Evento_Insert;
|
|
||||||
Evento_delete := SourceSettings.History.Evento_Delete;
|
|
||||||
LabelTabela := SourceSettings.History.LabelTabela;
|
|
||||||
Msg_LogEmptyHistory := SourceSettings.History.Msg_LogEmptyHistory;
|
|
||||||
Msg_MensConfirma := SourceSettings.History.Msg_MensConfirma;
|
|
||||||
LabelDescricao := SourceSettings.History.LabelDescricao;
|
|
||||||
Hist_BtnExcluir := SourceSettings.History.Hist_BtnExcluir;
|
|
||||||
Hist_BtnFiltro := SourceSettings.History.Hist_BtnFiltro;
|
|
||||||
LabelForm := SourceSettings.History.LabelForm;
|
|
||||||
Hist_BtnFechar := SourceSettings.History.Hist_BtnFechar;
|
|
||||||
LabelDataEvento := SourceSettings.History.LabelDataEvento;
|
|
||||||
LabelEvento := SourceSettings.History.LabelEvento;
|
|
||||||
Msg_NewRecord := SourceSettings.History.Msg_NewRecord;
|
|
||||||
Hist_All := SourceSettings.History.Hist_All;
|
|
||||||
Msg_LimpHistorico := SourceSettings.History.Msg_LimpHistorico;
|
|
||||||
LabelHoraEvento := SourceSettings.History.LabelHoraEvento;
|
|
||||||
LabelUser := SourceSettings.History.LabelUser;
|
|
||||||
Hist_MsgExceptPropr := SourceSettings.History.Hist_MsgExceptPropr;
|
|
||||||
End;
|
|
||||||
|
|
||||||
with UserSettings.TypeFieldsDB do
|
|
||||||
Begin
|
|
||||||
Type_VarChar := SourceSettings.TypeFieldsDB.Type_VarChar;
|
|
||||||
Type_Char := SourceSettings.TypeFieldsDB.Type_Char;
|
|
||||||
Type_Int := SourceSettings.TypeFieldsDB.Type_Int;
|
|
||||||
Type_MemoField := SourceSettings.TypeFieldsDB.Type_MemoField;
|
|
||||||
end;
|
|
||||||
|
|
||||||
UserSettings.WindowsPosition := SourceSettings.WindowsPosition;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDataModuleUsuarios.InicializarUserControl(AUserControl: TUserControl);
|
|
||||||
begin
|
|
||||||
if Assigned(AUserControl) then
|
|
||||||
begin
|
|
||||||
InicializarCamposUserControl(AUserControl);
|
|
||||||
InicializarSettingsUserControl(AUserControl);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,224 +0,0 @@
|
|||||||
{-----------------------------------------------------------------------------
|
|
||||||
Unit Name: UCMidasConn
|
|
||||||
Author : Luiz Benevenuto
|
|
||||||
Date : 31/07/2005
|
|
||||||
Purpose : Midas Suporte ( DataSnap )
|
|
||||||
E-mail : luiz@siffra.com
|
|
||||||
URL : www.siffra.com
|
|
||||||
UC : www.usercontrol.com.br
|
|
||||||
Forum : http://www.usercontrol.com.br/modules.php?name=Forums
|
|
||||||
|
|
||||||
registered in UCMidasConnReg.pas
|
|
||||||
-----------------------------------------------------------------------------}
|
|
||||||
|
|
||||||
unit uUCROConn;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
//{$I 'UserControl.inc'}
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes,
|
|
||||||
DB,
|
|
||||||
DBClient,
|
|
||||||
SysUtils,
|
|
||||||
uRORemoteService, uDADataStreamer, uROBinMessage, uROWinInetHttpChannel,
|
|
||||||
uDABin2DataStreamer, uDARemoteDataAdapter, UCDataConnector, uROClient;
|
|
||||||
|
|
||||||
type
|
|
||||||
TUCROConn = class(TUCDataConnector)
|
|
||||||
private
|
|
||||||
FMessage: TROBinMessage;
|
|
||||||
FChannel: TROWinInetHTTPChannel;
|
|
||||||
FRemoteService: TRORemoteService;
|
|
||||||
FDataAdapter : TDARemoteDataAdapter;
|
|
||||||
FDataStreamer : TDABin2DataStreamer;
|
|
||||||
procedure SetServiceName(const Value: String);
|
|
||||||
function GetServiceName: String;
|
|
||||||
procedure SetChannel(const Value: TROWinInetHTTPChannel);
|
|
||||||
procedure SetMessage(const Value: TROBinMessage);
|
|
||||||
protected
|
|
||||||
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
|
|
||||||
procedure RefreshROConnection;
|
|
||||||
public
|
|
||||||
function GetDBObjectName: String; override;
|
|
||||||
function GetTransObjectName: String; override;
|
|
||||||
function UCFindDataConnection: Boolean; override;
|
|
||||||
function UCFindTable(const Tablename: String): Boolean; override;
|
|
||||||
function UCGetSQLDataset(FSQL: String): TDataset; override;
|
|
||||||
procedure UCExecSQL(FSQL: String); override;
|
|
||||||
constructor Create(AOwner: TComponent); override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
published
|
|
||||||
property ROServiceName : String read GetServiceName write SetServiceName;
|
|
||||||
property ROMessage : TROBinMessage read FMessage write SetMessage;
|
|
||||||
property ROChannel : TROWinInetHTTPChannel read FChannel write SetChannel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
Forms, Dialogs, VARELA_Intf, uROTypes, uDAClasses, uDADataTable,
|
|
||||||
uDACDSDataTable, uROEncryption;
|
|
||||||
|
|
||||||
{ TUCROConn }
|
|
||||||
|
|
||||||
constructor TUCROConn.Create(AOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FRemoteService := TRORemoteService.Create(nil);
|
|
||||||
FDataStreamer := TDABin2DataStreamer.Create(nil);
|
|
||||||
FDataAdapter := TDARemoteDataAdapter.Create(nil);
|
|
||||||
FDataAdapter.DataStreamer := FDataStreamer;
|
|
||||||
FDataAdapter.SetupDefaultRequest;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TUCROConn.Destroy;
|
|
||||||
begin
|
|
||||||
FreeAndNil(FRemoteService);
|
|
||||||
FreeAndNil(FDataAdapter);
|
|
||||||
FreeAndNil(FDataStreamer);
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TUCROConn.GetDBObjectName: String;
|
|
||||||
begin
|
|
||||||
if Assigned(FRemoteService) then
|
|
||||||
begin
|
|
||||||
if Owner = FRemoteService.Owner then
|
|
||||||
Result := FRemoteService.Name
|
|
||||||
else
|
|
||||||
Result := FRemoteService.Owner.Name + '.' + FRemoteService.Name;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
Result := '';
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TUCROConn.GetServiceName: String;
|
|
||||||
begin
|
|
||||||
Result := FRemoteService.ServiceName;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TUCROConn.GetTransObjectName: String;
|
|
||||||
begin
|
|
||||||
Result := '';
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TUCROConn.Notification(AComponent: TComponent; Operation: TOperation);
|
|
||||||
begin
|
|
||||||
if (Operation = opRemove) and (AComponent = FRemoteService) then
|
|
||||||
begin
|
|
||||||
FreeAndNil(FDataAdapter);
|
|
||||||
FRemoteService := nil;
|
|
||||||
end;
|
|
||||||
inherited Notification(AComponent, Operation);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TUCROConn.RefreshROConnection;
|
|
||||||
begin
|
|
||||||
with FRemoteService do
|
|
||||||
begin
|
|
||||||
FRemoteService.Message := FMessage;
|
|
||||||
FRemoteService.Channel := FChannel;
|
|
||||||
|
|
||||||
with FDataAdapter do
|
|
||||||
begin
|
|
||||||
RemoteService := FRemoteService;
|
|
||||||
GetSchemaCall.RemoteService := FRemoteService;
|
|
||||||
GetDataCall.RemoteService := FRemoteService;
|
|
||||||
UpdateDataCall.RemoteService := FRemoteService;
|
|
||||||
GetScriptsCall.RemoteService := FRemoteService;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TUCROConn.SetChannel(const Value: TROWinInetHTTPChannel);
|
|
||||||
begin
|
|
||||||
FChannel := Value;
|
|
||||||
RefreshROConnection;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TUCROConn.SetMessage(const Value: TROBinMessage);
|
|
||||||
begin
|
|
||||||
FMessage := Value;
|
|
||||||
RefreshROConnection;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TUCROConn.SetServiceName(const Value: String);
|
|
||||||
begin
|
|
||||||
FRemoteService.ServiceName := Value;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TUCROConn.UCExecSQL(FSQL: String);
|
|
||||||
var
|
|
||||||
ASQL : String;
|
|
||||||
begin
|
|
||||||
ASQL := AnsiToUtf8(FSQL);
|
|
||||||
(FRemoteService as IsrvUsuarios).SQLExecuteCommand(ASQL);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TUCROConn.UCFindDataConnection: Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
if Assigned(FRemoteService) then
|
|
||||||
begin
|
|
||||||
FRemoteService.CheckCanConnect;
|
|
||||||
Result := True;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TUCROConn.UCFindTable(const Tablename: String): Boolean;
|
|
||||||
var
|
|
||||||
ASchema : TDASchema;
|
|
||||||
begin
|
|
||||||
ASchema := FDataAdapter.ReadSchema;
|
|
||||||
try
|
|
||||||
Result := Assigned(ASchema.FindDataset(TableName));
|
|
||||||
finally
|
|
||||||
FreeAndNil(ASchema);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
function TUCROConn.UCGetSQLDataset(FSQL: String): TDataset;
|
|
||||||
var
|
|
||||||
AStream: TMemoryStream;
|
|
||||||
ADataStreamer: TDABin2DataStreamer;
|
|
||||||
ADataTable: TDACDSDataTable;
|
|
||||||
begin
|
|
||||||
Result := NIL;
|
|
||||||
ADataStreamer := TDABin2DataStreamer.Create(NIL);
|
|
||||||
AStream := (FRemoteService as IsrvUsuarios).SQLGetData(FSQL, True, -1);
|
|
||||||
|
|
||||||
if AStream <> nil then
|
|
||||||
try
|
|
||||||
ADataTable := TDACDSDataTable.Create(Application);
|
|
||||||
|
|
||||||
// Generar un nombre aleatorio
|
|
||||||
Randomize;
|
|
||||||
ADataTable.Name := 'SQLResult' + '_' + IntToStr(Random(MAXINT));
|
|
||||||
|
|
||||||
ADataTable.LocalDataStreamer := ADataStreamer;
|
|
||||||
ADataTable.RemoteFetchEnabled := False;
|
|
||||||
try
|
|
||||||
ADataStreamer.ReadDataset(AStream, ADataTable, True);
|
|
||||||
ADataTable.Open;
|
|
||||||
|
|
||||||
{ ¡¡OJO!! Trapicheo!!!!!
|
|
||||||
Forzamos a recuperar en Dataset todas las tuplas
|
|
||||||
recorriendonos toda la tabla.}
|
|
||||||
ADataTable.Last;
|
|
||||||
ADataTable.First;
|
|
||||||
|
|
||||||
Result := ADataTable.Dataset;
|
|
||||||
finally
|
|
||||||
//FreeAndNIL(ADataTable); <-- No liberar, lo hace Application
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
FreeAndNIL(AStream);
|
|
||||||
FreeAndNIL(ADataStreamer);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
unit uIDataModuleUsuarios;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
UCBase, UCSettings, uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
IDataModuleUsuarios = interface
|
|
||||||
['{C0A8481F-4920-414D-A906-EE1EB18DE946}']
|
|
||||||
procedure InicializarUserControl (AUserControl : TUserControl);
|
|
||||||
|
|
||||||
function GetUsuario(const ID : Integer) : IBizUsuario;
|
|
||||||
function NuevoUsuario : IBizUsuario;
|
|
||||||
function GetUsuarios : IBizUsuario;
|
|
||||||
|
|
||||||
function NuevoPerfil : IBizPerfilUsuario;
|
|
||||||
function GetPerfiles : IBizPerfilUsuario;
|
|
||||||
function GetPerfil(const ID : Integer) : IBizPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,90 +0,0 @@
|
|||||||
unit uBizUsuarios;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
UCBase, uDAInterfaces, uDADataTable, schUsuariosClient_Intf;
|
|
||||||
|
|
||||||
const
|
|
||||||
BIZ_CLIENT_USUARIO = 'Client.Usuario';
|
|
||||||
BIZ_CLIENT_PERFIL_USUARIO = 'Client.PerfilUsuario';
|
|
||||||
|
|
||||||
type
|
|
||||||
TUsuario = TUCCurrentUser;
|
|
||||||
|
|
||||||
IBizUsuario = interface (IUSUARIOS)
|
|
||||||
['{1DB69F36-969C-4078-B862-6D697670BCFD}']
|
|
||||||
function EsNuevo : Boolean;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IBizPerfilUsuario = interface (IPERFILES)
|
|
||||||
['{D14DF996-A8CD-400A-BF74-C8B660199C74}']
|
|
||||||
function EsNuevo : Boolean;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
TBizUsuario = class(TUsuariosDataTableRules, IBizUsuario)
|
|
||||||
protected
|
|
||||||
procedure OnNewRecord(Sender: TDADataTable); override;
|
|
||||||
public
|
|
||||||
function EsNuevo : Boolean;
|
|
||||||
procedure IniciarValoresUsuarioNuevo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TBizPerfilUsuario = class(TPerfilesDataTableRules, IBizPerfilUsuario)
|
|
||||||
protected
|
|
||||||
procedure OnNewRecord(Sender: TDADataTable); override;
|
|
||||||
public
|
|
||||||
function EsNuevo : Boolean;
|
|
||||||
procedure IniciarValoresPerfilNuevo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{ TBizUsuario }
|
|
||||||
|
|
||||||
function TBizUsuario.EsNuevo: Boolean;
|
|
||||||
begin
|
|
||||||
Result := (ID < 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBizUsuario.IniciarValoresUsuarioNuevo;
|
|
||||||
begin
|
|
||||||
TIPO := 'U'; // Usuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBizUsuario.OnNewRecord(Sender: TDADataTable);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
IniciarValoresUsuarioNuevo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TBizPerfilUsuario }
|
|
||||||
|
|
||||||
function TBizPerfilUsuario.EsNuevo: Boolean;
|
|
||||||
begin
|
|
||||||
Result := (ID < 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBizPerfilUsuario.IniciarValoresPerfilNuevo;
|
|
||||||
begin
|
|
||||||
TIPO := 'P'; // Perfil
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TBizPerfilUsuario.OnNewRecord(Sender: TDADataTable);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
IniciarValoresPerfilNuevo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
RegisterDataTableRules(BIZ_CLIENT_USUARIO, TBizUsuario);
|
|
||||||
RegisterDataTableRules(BIZ_CLIENT_PERFIL_USUARIO, TBizPerfilUsuario);
|
|
||||||
|
|
||||||
finalization
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
|
|
||||||
@ -1,600 +0,0 @@
|
|||||||
object srvUsuarios: TsrvUsuarios
|
|
||||||
OldCreateOrder = True
|
|
||||||
OnCreate = DataAbstractServiceCreate
|
|
||||||
SessionManager = dmServer.SessionManager
|
|
||||||
ServiceSchema = schUsuarios
|
|
||||||
ServiceDataStreamer = Bin2DataStreamer
|
|
||||||
AllowExecuteSQL = True
|
|
||||||
AllowWhereSQL = True
|
|
||||||
ExportedDataTables = <>
|
|
||||||
BeforeAcquireConnection = DataAbstractServiceBeforeAcquireConnection
|
|
||||||
Height = 163
|
|
||||||
Width = 300
|
|
||||||
object Diagrams: TDADiagrams
|
|
||||||
Left = 150
|
|
||||||
Top = 88
|
|
||||||
DiagramData = '<Diagrams>'#13#10'</Diagrams>'#13#10
|
|
||||||
end
|
|
||||||
object DataDictionary: TDADataDictionary
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_ID'
|
|
||||||
DataType = datAutoInc
|
|
||||||
GeneratorName = 'GEN_USUARIOS_ID'
|
|
||||||
Required = True
|
|
||||||
DisplayLabel = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_USERNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Nombre'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_LOGIN'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Login'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_PASS'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
DisplayLabel = 'Password'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_PASSEXPIRED'
|
|
||||||
DataType = datDateTime
|
|
||||||
DisplayLabel = 'Expiraci'#243'n de password'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_BLOQUEADO'
|
|
||||||
DataType = datSmallInt
|
|
||||||
DisplayLabel = 'Bloqueado'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_EMAIL'
|
|
||||||
DataType = datString
|
|
||||||
Size = 150
|
|
||||||
DisplayLabel = 'Correo electr'#243'nico'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_USERDAYSSUN'
|
|
||||||
DataType = datInteger
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_PRIVILEGED'
|
|
||||||
DataType = datInteger
|
|
||||||
DisplayLabel = 'Privilegiado'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_TIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 1
|
|
||||||
DisplayLabel = 'Tipo'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_ID_PERFIL'
|
|
||||||
DataType = datInteger
|
|
||||||
DisplayLabel = 'ID_PERFIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USUARIOS_CHECKSUM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
DisplayLabel = 'Checksum'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PERFILES_ID'
|
|
||||||
DataType = datAutoInc
|
|
||||||
GeneratorName = 'GEN_USUARIOS_ID'
|
|
||||||
Required = True
|
|
||||||
DisplayLabel = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PERFILES_USERNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Nombre'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PERFILES_LOGIN'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DisplayLabel = 'Login'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PERFILES_TIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 1
|
|
||||||
DisplayLabel = 'Tipo'
|
|
||||||
end>
|
|
||||||
Left = 150
|
|
||||||
Top = 24
|
|
||||||
end
|
|
||||||
object schUsuarios: TDASchema
|
|
||||||
ConnectionManager = dmServer.ConnectionManager
|
|
||||||
DataDictionary = DataDictionary
|
|
||||||
Diagrams = Diagrams
|
|
||||||
Datasets = <
|
|
||||||
item
|
|
||||||
Params = <>
|
|
||||||
Statements = <
|
|
||||||
item
|
|
||||||
Connection = 'GFT_VARELA'
|
|
||||||
Default = True
|
|
||||||
TargetTable = 'RDX_USUARIOS'
|
|
||||||
SQL =
|
|
||||||
'SELECT'#10' ID, USERNAME, LOGIN, PASS, PASSEXPIRED, BLOQUEADO,'#10' ' +
|
|
||||||
' EMAIL, USERDAYSSUN, PRIVILEGED, TIPO, ID_PERFIL, CHECKSUM'#10' FR' +
|
|
||||||
'OM'#10' RDX_USUARIOS'#10' WHERE TIPO = '#39'U'#39' AND {Where}'#10' ORDER BY US' +
|
|
||||||
'ERNAME'#10
|
|
||||||
StatementType = stSQL
|
|
||||||
ColumnMappings = <
|
|
||||||
item
|
|
||||||
DatasetField = 'ID'
|
|
||||||
TableField = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'USERNAME'
|
|
||||||
TableField = 'USERNAME'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'LOGIN'
|
|
||||||
TableField = 'LOGIN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'PASS'
|
|
||||||
TableField = 'PASS'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'PASSEXPIRED'
|
|
||||||
TableField = 'PASSEXPIRED'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'BLOQUEADO'
|
|
||||||
TableField = 'BLOQUEADO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'EMAIL'
|
|
||||||
TableField = 'EMAIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'USERDAYSSUN'
|
|
||||||
TableField = 'USERDAYSSUN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'PRIVILEGED'
|
|
||||||
TableField = 'PRIVILEGED'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'TIPO'
|
|
||||||
TableField = 'TIPO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'ID_PERFIL'
|
|
||||||
TableField = 'ID_PERFIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'CHECKSUM'
|
|
||||||
TableField = 'CHECKSUM'
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
Name = 'USUARIOS'
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'ID'
|
|
||||||
DataType = datAutoInc
|
|
||||||
GeneratorName = 'GEN_USUARIOS_ID'
|
|
||||||
DictionaryEntry = 'USUARIOS_ID'
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USERNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DictionaryEntry = 'USUARIOS_USERNAME'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'LOGIN'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DictionaryEntry = 'USUARIOS_LOGIN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PASS'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
DictionaryEntry = 'USUARIOS_PASS'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PASSEXPIRED'
|
|
||||||
DataType = datDateTime
|
|
||||||
DictionaryEntry = 'USUARIOS_PASSEXPIRED'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'BLOQUEADO'
|
|
||||||
DataType = datSmallInt
|
|
||||||
DictionaryEntry = 'USUARIOS_BLOQUEADO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'EMAIL'
|
|
||||||
DataType = datString
|
|
||||||
Size = 150
|
|
||||||
DictionaryEntry = 'USUARIOS_EMAIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USERDAYSSUN'
|
|
||||||
DataType = datInteger
|
|
||||||
DictionaryEntry = 'USUARIOS_USERDAYSSUN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'PRIVILEGED'
|
|
||||||
DataType = datInteger
|
|
||||||
DictionaryEntry = 'USUARIOS_PRIVILEGED'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'TIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 1
|
|
||||||
DictionaryEntry = 'USUARIOS_TIPO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'ID_PERFIL'
|
|
||||||
DataType = datInteger
|
|
||||||
DictionaryEntry = 'USUARIOS_ID_PERFIL'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'CHECKSUM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
DictionaryEntry = 'USUARIOS_CHECKSUM'
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Params = <>
|
|
||||||
Statements = <
|
|
||||||
item
|
|
||||||
Connection = 'GFT_VARELA'
|
|
||||||
Default = True
|
|
||||||
TargetTable = 'RDX_USUARIOS_EVENTOS'
|
|
||||||
StatementType = stAutoSQL
|
|
||||||
ColumnMappings = <
|
|
||||||
item
|
|
||||||
DatasetField = 'APLICACION'
|
|
||||||
TableField = 'APLICACION'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'ID_USUARIO'
|
|
||||||
TableField = 'ID_USUARIO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'FECHA'
|
|
||||||
TableField = 'FECHA'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'HORA'
|
|
||||||
TableField = 'HORA'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'FORM'
|
|
||||||
TableField = 'FORM'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'TITULO_FORM'
|
|
||||||
TableField = 'TITULO_FORM'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'EVENTO'
|
|
||||||
TableField = 'EVENTO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'NOTAS'
|
|
||||||
TableField = 'NOTAS'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'TNAME'
|
|
||||||
TableField = 'TNAME'
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
Name = 'USUARIOS_EVENTOS'
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'APLICACION'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'ID_USUARIO'
|
|
||||||
DataType = datInteger
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'FECHA'
|
|
||||||
DataType = datString
|
|
||||||
Size = 10
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'HORA'
|
|
||||||
DataType = datString
|
|
||||||
Size = 8
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'FORM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'TITULO_FORM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 100
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'EVENTO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'NOTAS'
|
|
||||||
DataType = datMemo
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'TNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 20
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Params = <>
|
|
||||||
Statements = <
|
|
||||||
item
|
|
||||||
Connection = 'GFT_VARELA'
|
|
||||||
TargetTable = 'RDX_USUARIOS_LOGON'
|
|
||||||
StatementType = stAutoSQL
|
|
||||||
ColumnMappings = <
|
|
||||||
item
|
|
||||||
DatasetField = 'LOGONID'
|
|
||||||
TableField = 'LOGONID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'ID_USUARIO'
|
|
||||||
TableField = 'ID_USUARIO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'APLICACION'
|
|
||||||
TableField = 'APLICACION'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'EQUIPO'
|
|
||||||
TableField = 'EQUIPO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'DATA'
|
|
||||||
TableField = 'DATA'
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
Name = 'USUARIOS_LOGON'
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'LOGONID'
|
|
||||||
DataType = datString
|
|
||||||
Size = 38
|
|
||||||
Required = True
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'ID_USUARIO'
|
|
||||||
DataType = datInteger
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'APLICACION'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'EQUIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'DATA'
|
|
||||||
DataType = datString
|
|
||||||
Size = 14
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Params = <>
|
|
||||||
Statements = <
|
|
||||||
item
|
|
||||||
Connection = 'GFT_VARELA'
|
|
||||||
TargetTable = 'RDX_USUARIOS'
|
|
||||||
SQL =
|
|
||||||
'SELECT '#10' ID, USERNAME, LOGIN, TIPO'#10' FROM'#10' RDX_USUARIOS'#10' ' +
|
|
||||||
'WHERE TIPO = '#39'P'#39' AND {Where}'#10' ORDER BY USERNAME'#10
|
|
||||||
StatementType = stSQL
|
|
||||||
ColumnMappings = <
|
|
||||||
item
|
|
||||||
DatasetField = 'ID'
|
|
||||||
TableField = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'USERNAME'
|
|
||||||
TableField = 'USERNAME'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'LOGIN'
|
|
||||||
TableField = 'LOGIN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'TIPO'
|
|
||||||
TableField = 'TIPO'
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
Name = 'PERFILES'
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'ID'
|
|
||||||
DataType = datAutoInc
|
|
||||||
GeneratorName = 'GEN_USUARIOS_ID'
|
|
||||||
DictionaryEntry = 'PERFILES_ID'
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'USERNAME'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DictionaryEntry = 'PERFILES_USERNAME'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'LOGIN'
|
|
||||||
DataType = datString
|
|
||||||
Size = 30
|
|
||||||
DictionaryEntry = 'PERFILES_LOGIN'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'TIPO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 1
|
|
||||||
DictionaryEntry = 'PERFILES_TIPO'
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Params = <>
|
|
||||||
Statements = <
|
|
||||||
item
|
|
||||||
Connection = 'GFT_VARELA'
|
|
||||||
ConnectionType = 'MSSQL'
|
|
||||||
Default = True
|
|
||||||
TargetTable = 'RDX_PERMISOS'
|
|
||||||
StatementType = stAutoSQL
|
|
||||||
ColumnMappings = <
|
|
||||||
item
|
|
||||||
DatasetField = 'ID'
|
|
||||||
TableField = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'ID_USUARIO'
|
|
||||||
TableField = 'ID_USUARIO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'MODULO'
|
|
||||||
TableField = 'MODULO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'NOMBRECOMP'
|
|
||||||
TableField = 'NOMBRECOMP'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'CHECKSUM'
|
|
||||||
TableField = 'CHECKSUM'
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
Name = 'PERMISOS'
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'ID'
|
|
||||||
DataType = datInteger
|
|
||||||
Required = True
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'ID_USUARIO'
|
|
||||||
DataType = datInteger
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'MODULO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'NOMBRECOMP'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'CHECKSUM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Params = <>
|
|
||||||
Statements = <
|
|
||||||
item
|
|
||||||
Connection = 'GFT_VARELA'
|
|
||||||
ConnectionType = 'MSSQL'
|
|
||||||
Default = True
|
|
||||||
TargetTable = 'RDX_PERMISOSEX'
|
|
||||||
StatementType = stAutoSQL
|
|
||||||
ColumnMappings = <
|
|
||||||
item
|
|
||||||
DatasetField = 'ID'
|
|
||||||
TableField = 'ID'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'ID_USUARIO'
|
|
||||||
TableField = 'ID_USUARIO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'MODULO'
|
|
||||||
TableField = 'MODULO'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'NOMBRECOMP'
|
|
||||||
TableField = 'NOMBRECOMP'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'NOMBREFORM'
|
|
||||||
TableField = 'NOMBREFORM'
|
|
||||||
end
|
|
||||||
item
|
|
||||||
DatasetField = 'CHECKSUM'
|
|
||||||
TableField = 'CHECKSUM'
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
Name = 'PERMISOSEX'
|
|
||||||
Fields = <
|
|
||||||
item
|
|
||||||
Name = 'ID'
|
|
||||||
DataType = datInteger
|
|
||||||
Required = True
|
|
||||||
InPrimaryKey = True
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'ID_USUARIO'
|
|
||||||
DataType = datInteger
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'MODULO'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'NOMBRECOMP'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'NOMBREFORM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 50
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Name = 'CHECKSUM'
|
|
||||||
DataType = datString
|
|
||||||
Size = 250
|
|
||||||
end>
|
|
||||||
end>
|
|
||||||
JoinDataTables = <>
|
|
||||||
UnionDataTables = <>
|
|
||||||
Commands = <>
|
|
||||||
RelationShips = <>
|
|
||||||
UpdateRules = <>
|
|
||||||
Version = 0
|
|
||||||
Left = 48
|
|
||||||
Top = 24
|
|
||||||
end
|
|
||||||
object Bin2DataStreamer: TDABin2DataStreamer
|
|
||||||
Left = 48
|
|
||||||
Top = 88
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
unit srvUsuarios_Impl;
|
|
||||||
|
|
||||||
{----------------------------------------------------------------------------}
|
|
||||||
{ This unit was automatically generated by the RemObjects SDK after reading }
|
|
||||||
{ the RODL file associated with this project . }
|
|
||||||
{ }
|
|
||||||
{ This is where you are supposed to code the implementation of your objects. }
|
|
||||||
{----------------------------------------------------------------------------}
|
|
||||||
|
|
||||||
{$I Remobjects.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
{vcl:} Classes, SysUtils,
|
|
||||||
{RemObjects:} uROXMLIntf, uROClientIntf, uROTypes, uROServer, uROServerIntf, uROSessions,
|
|
||||||
{Required:} uRORemoteDataModule,
|
|
||||||
{Ancestor Implementation:} DataAbstractService_Impl,
|
|
||||||
{Used RODLs:} DataAbstract4_Intf,
|
|
||||||
{Generated:} VARELA_Intf, uDADataStreamer, uDABin2DataStreamer, uDAClasses;
|
|
||||||
|
|
||||||
type
|
|
||||||
{ TsrvUsuarios }
|
|
||||||
TsrvUsuarios = class(TDataAbstractService, IsrvUsuarios)
|
|
||||||
Diagrams: TDADiagrams;
|
|
||||||
Bin2DataStreamer: TDABin2DataStreamer;
|
|
||||||
schUsuarios: TDASchema;
|
|
||||||
DataDictionary: TDADataDictionary;
|
|
||||||
procedure DataAbstractServiceBeforeAcquireConnection(aSender: TObject;
|
|
||||||
var aConnectionName: string);
|
|
||||||
procedure DataAbstractServiceCreate(Sender: TObject);
|
|
||||||
private
|
|
||||||
protected
|
|
||||||
{ IsrvUsuarios methods }
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
uses
|
|
||||||
{Generated:} VARELA_Invk, uDataModuleServer;
|
|
||||||
|
|
||||||
procedure Create_srvUsuarios(out anInstance : IUnknown);
|
|
||||||
begin
|
|
||||||
anInstance := TsrvUsuarios.Create(nil);
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ srvUsuarios }
|
|
||||||
procedure TsrvUsuarios.DataAbstractServiceBeforeAcquireConnection(
|
|
||||||
aSender: TObject; var aConnectionName: string);
|
|
||||||
begin
|
|
||||||
ConnectionName := dmServer.ConnectionName;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TsrvUsuarios.DataAbstractServiceCreate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
SessionManager := dmServer.SessionManager;
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
TROClassFactory.Create('srvUsuarios', Create_srvUsuarios, TsrvUsuarios_Invoker);
|
|
||||||
|
|
||||||
finalization
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,67 +0,0 @@
|
|||||||
package Usuarios;
|
|
||||||
|
|
||||||
{$R *.res}
|
|
||||||
{$ALIGN 8}
|
|
||||||
{$ASSERTIONS ON}
|
|
||||||
{$BOOLEVAL OFF}
|
|
||||||
{$DEBUGINFO ON}
|
|
||||||
{$EXTENDEDSYNTAX ON}
|
|
||||||
{$IMPORTEDDATA ON}
|
|
||||||
{$IOCHECKS ON}
|
|
||||||
{$LOCALSYMBOLS ON}
|
|
||||||
{$LONGSTRINGS ON}
|
|
||||||
{$OPENSTRINGS ON}
|
|
||||||
{$OPTIMIZATION ON}
|
|
||||||
{$OVERFLOWCHECKS OFF}
|
|
||||||
{$RANGECHECKS OFF}
|
|
||||||
{$REFERENCEINFO ON}
|
|
||||||
{$SAFEDIVIDE OFF}
|
|
||||||
{$STACKFRAMES ON}
|
|
||||||
{$TYPEDADDRESS OFF}
|
|
||||||
{$VARSTRINGCHECKS ON}
|
|
||||||
{$WRITEABLECONST OFF}
|
|
||||||
{$MINENUMSIZE 1}
|
|
||||||
{$IMAGEBASE $400000}
|
|
||||||
{$DESCRIPTION 'Pedidos a proveedor'}
|
|
||||||
{$IMPLICITBUILD ON}
|
|
||||||
{$DEFINE DEBUG}
|
|
||||||
|
|
||||||
requires
|
|
||||||
vcl,
|
|
||||||
vcldb,
|
|
||||||
PngComponentsD10,
|
|
||||||
PNG_D10,
|
|
||||||
vclactnband,
|
|
||||||
vclx,
|
|
||||||
vcljpg,
|
|
||||||
BaseD10;
|
|
||||||
|
|
||||||
contains
|
|
||||||
uUsuariosController in 'Controller\uUsuariosController.pas',
|
|
||||||
uPerfilesUsuarioController in 'Controller\uPerfilesUsuarioController.pas',
|
|
||||||
uUCROConn in 'Data\uUCROConn.pas',
|
|
||||||
uDataModuleUsuarios in 'Data\uDataModuleUsuarios.pas',
|
|
||||||
uBizUsuarios in 'Model\uBizUsuarios.pas',
|
|
||||||
uIEditorUsuarios in 'Controller\View\uIEditorUsuarios.pas',
|
|
||||||
uIEditorLogin in 'Controller\View\uIEditorLogin.pas',
|
|
||||||
uIEditorPerfilesUsuario in 'Controller\View\uIEditorPerfilesUsuario.pas',
|
|
||||||
uIEditorPerfilUsuario in 'Controller\View\uIEditorPerfilUsuario.pas',
|
|
||||||
uIEditorUsuario in 'Controller\View\uIEditorUsuario.pas',
|
|
||||||
uIDataModuleUsuarios in 'Model\Data\uIDataModuleUsuarios.pas',
|
|
||||||
uViewUsuarios in 'Views\uViewUsuarios.pas',
|
|
||||||
uEditorCambiarPassword in 'Views\uEditorCambiarPassword.pas',
|
|
||||||
uEditorLogin in 'Views\uEditorLogin.pas',
|
|
||||||
uEditorPerfilesUsuario in 'Views\uEditorPerfilesUsuario.pas',
|
|
||||||
uEditorPerfilUsuario in 'Views\uEditorPerfilUsuario.pas',
|
|
||||||
uEditorUsuario in 'Views\uEditorUsuario.pas',
|
|
||||||
uEditorUsuarios in 'Views\uEditorUsuarios.pas',
|
|
||||||
uUsuario in 'Views\uUsuario.pas',
|
|
||||||
uUsuarios in 'Views\uUsuarios.pas',
|
|
||||||
uUsuariosViewRegister in 'Views\uUsuariosViewRegister.pas',
|
|
||||||
uViewPerfilesUsuario in 'Views\uViewPerfilesUsuario.pas',
|
|
||||||
uViewPerfilUsuario in 'Views\uViewPerfilUsuario.pas',
|
|
||||||
uViewUsuario in 'Views\uViewUsuario.pas',
|
|
||||||
schUsuariosClient_Intf in 'Model\schUsuariosClient_Intf.pas',
|
|
||||||
schUsuariosServer_Intf in 'Model\schUsuariosServer_Intf.pas';
|
|
||||||
|
|
||||||
end.
|
|
||||||
Binary file not shown.
@ -1,123 +0,0 @@
|
|||||||
object fEditorCambiarPassword: TfEditorCambiarPassword
|
|
||||||
Left = 398
|
|
||||||
Top = 263
|
|
||||||
BorderStyle = bsDialog
|
|
||||||
Caption = 'Cambiar la contrase'#241'a'
|
|
||||||
ClientHeight = 217
|
|
||||||
ClientWidth = 406
|
|
||||||
Color = clBtnFace
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -11
|
|
||||||
Font.Name = 'MS Sans Serif'
|
|
||||||
Font.Style = []
|
|
||||||
OldCreateOrder = False
|
|
||||||
Position = poScreenCenter
|
|
||||||
OnClose = FormClose
|
|
||||||
OnCloseQuery = FormCloseQuery
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
object Bevel4: TBevel
|
|
||||||
Left = 8
|
|
||||||
Top = 154
|
|
||||||
Width = 388
|
|
||||||
Height = 10
|
|
||||||
Shape = bsBottomLine
|
|
||||||
end
|
|
||||||
object lbConfirma: TLabel
|
|
||||||
Left = 35
|
|
||||||
Top = 88
|
|
||||||
Width = 103
|
|
||||||
Height = 13
|
|
||||||
Alignment = taRightJustify
|
|
||||||
Caption = 'Confirmar contrase'#241'a:'
|
|
||||||
end
|
|
||||||
object lbNovaSenha: TLabel
|
|
||||||
Left = 47
|
|
||||||
Top = 57
|
|
||||||
Width = 91
|
|
||||||
Height = 13
|
|
||||||
Alignment = taRightJustify
|
|
||||||
Caption = 'Nueva contrase'#241'a:'
|
|
||||||
end
|
|
||||||
object lbSenhaAtu: TLabel
|
|
||||||
Left = 49
|
|
||||||
Top = 27
|
|
||||||
Width = 89
|
|
||||||
Height = 13
|
|
||||||
Alignment = taRightJustify
|
|
||||||
Caption = 'Contrase'#241'a actual:'
|
|
||||||
end
|
|
||||||
object Label1: TLabel
|
|
||||||
Left = 19
|
|
||||||
Top = 132
|
|
||||||
Width = 360
|
|
||||||
Height = 13
|
|
||||||
Caption =
|
|
||||||
'Si hace clic en Cancelar, no se realizar'#225' ning'#250'n cambio sobre la' +
|
|
||||||
' contrase'#241'a.'
|
|
||||||
end
|
|
||||||
object bAceptar: TButton
|
|
||||||
Left = 234
|
|
||||||
Top = 178
|
|
||||||
Width = 75
|
|
||||||
Height = 23
|
|
||||||
Action = actAceptar
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object bCancelar: TButton
|
|
||||||
Left = 319
|
|
||||||
Top = 178
|
|
||||||
Width = 75
|
|
||||||
Height = 23
|
|
||||||
Action = actCancelar
|
|
||||||
Cancel = True
|
|
||||||
ModalResult = 2
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object EditAtu: TEdit
|
|
||||||
Left = 143
|
|
||||||
Top = 24
|
|
||||||
Width = 202
|
|
||||||
Height = 21
|
|
||||||
Ctl3D = True
|
|
||||||
MaxLength = 10
|
|
||||||
ParentCtl3D = False
|
|
||||||
PasswordChar = '*'
|
|
||||||
TabOrder = 2
|
|
||||||
end
|
|
||||||
object EditConfirma: TEdit
|
|
||||||
Left = 143
|
|
||||||
Top = 85
|
|
||||||
Width = 202
|
|
||||||
Height = 21
|
|
||||||
Ctl3D = True
|
|
||||||
MaxLength = 10
|
|
||||||
ParentCtl3D = False
|
|
||||||
PasswordChar = '*'
|
|
||||||
TabOrder = 4
|
|
||||||
end
|
|
||||||
object EditNova: TEdit
|
|
||||||
Left = 143
|
|
||||||
Top = 54
|
|
||||||
Width = 202
|
|
||||||
Height = 21
|
|
||||||
Ctl3D = True
|
|
||||||
MaxLength = 10
|
|
||||||
ParentCtl3D = False
|
|
||||||
PasswordChar = '*'
|
|
||||||
TabOrder = 3
|
|
||||||
end
|
|
||||||
object ActionList1: TActionList
|
|
||||||
Left = 136
|
|
||||||
Top = 169
|
|
||||||
object actAceptar: TAction
|
|
||||||
Caption = 'C&ambiar'
|
|
||||||
OnExecute = actAceptarExecute
|
|
||||||
end
|
|
||||||
object actCancelar: TAction
|
|
||||||
Caption = '&Cancelar'
|
|
||||||
OnExecute = actCancelarExecute
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,101 +0,0 @@
|
|||||||
unit uEditorCambiarPassword;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Forms, UCBase, ExtCtrls, Classes, ActnList, StdCtrls, Controls, Buttons,
|
|
||||||
uBizUsuarios, uUsuariosController;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorCambiarPassword = class(TForm)
|
|
||||||
lbSenhaAtu: TLabel;
|
|
||||||
lbNovaSenha: TLabel;
|
|
||||||
lbConfirma: TLabel;
|
|
||||||
EditAtu: TEdit;
|
|
||||||
EditNova: TEdit;
|
|
||||||
EditConfirma: TEdit;
|
|
||||||
ActionList1: TActionList;
|
|
||||||
actAceptar: TAction;
|
|
||||||
actCancelar: TAction;
|
|
||||||
Bevel4: TBevel;
|
|
||||||
bAceptar: TButton;
|
|
||||||
bCancelar: TButton;
|
|
||||||
Label1: TLabel;
|
|
||||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
||||||
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
|
||||||
procedure actCancelarExecute(Sender: TObject);
|
|
||||||
procedure actAceptarExecute(Sender: TObject);
|
|
||||||
public
|
|
||||||
Usuario : IBizUsuario;
|
|
||||||
Controller : IUsuariosController;
|
|
||||||
CambioObligatorio : Boolean;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uDialogUtils;
|
|
||||||
|
|
||||||
procedure TfEditorCambiarPassword.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
||||||
begin
|
|
||||||
Action := caHide;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorCambiarPassword.actAceptarExecute(Sender: TObject);
|
|
||||||
var
|
|
||||||
AuxPass : String;
|
|
||||||
AMensaje : String;
|
|
||||||
begin
|
|
||||||
case Controller.Criptografia of
|
|
||||||
ucStandard: AuxPass := EditAtu.Text;
|
|
||||||
ucMD5: AuxPass := MD5Sum(EditAtu.Text);
|
|
||||||
end;
|
|
||||||
|
|
||||||
if Usuario.PASS <> AuxPass then
|
|
||||||
begin
|
|
||||||
ShowWarningMessage('Cambiar la contraseña', 'La contraseña actual no es correcta.' + #10#13 +
|
|
||||||
'Asegúrese de que la contraseña actual está bien introduccida.');
|
|
||||||
EditAtu.SetFocus;
|
|
||||||
Exit;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if (EditNova.Text <> EditConfirma.Text) then
|
|
||||||
begin
|
|
||||||
ShowWarningMessage('Cambiar la contraseña', 'La contraseña no se confirmó correctamente' + #10#13 +
|
|
||||||
'Asegúrese de que la contraseña y su confirmación sean iguales.');
|
|
||||||
EditNova.SetFocus;
|
|
||||||
Exit;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
if not Controller.ValidarPassword(EditNova.Text, Usuario.LOGIN, Usuario.USERNAME, AMensaje) then
|
|
||||||
begin
|
|
||||||
ShowWarningMessage('Cambiar la contraseña', AMensaje);
|
|
||||||
EditNova.SetFocus;
|
|
||||||
Exit;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
if CambioObligatorio = True then
|
|
||||||
CambioObligatorio := False;
|
|
||||||
ModalResult := mrOK;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorCambiarPassword.actCancelarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Close;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorCambiarPassword.FormCloseQuery(Sender: TObject;
|
|
||||||
var CanClose: Boolean);
|
|
||||||
begin
|
|
||||||
if CambioObligatorio then
|
|
||||||
begin
|
|
||||||
CanClose := False;
|
|
||||||
ShowWarningMessage('Cambiar la contraseña', 'El cambio de la contraseña es obligatorio');
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,140 +0,0 @@
|
|||||||
unit uEditorLogin;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, StdCtrls, ExtCtrls, ComCtrls, cxGraphics, cxControls,
|
|
||||||
cxContainer, cxEdit, cxTextEdit, cxMaskEdit, cxDropDownEdit,
|
|
||||||
cxImageComboBox, ImgList, PngImageList, pngimage, ToolWin, JvExControls,
|
|
||||||
JvComponent, JvGradient, JvGIF, JvComponentBase, JvFormPlacement,
|
|
||||||
JvAppStorage, JvAppRegistryStorage, uIEditorLogin, uUsuariosController;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorLogin = class(TForm, IEditorLogin)
|
|
||||||
Panel1: TPanel;
|
|
||||||
Label3: TLabel;
|
|
||||||
Label4: TLabel;
|
|
||||||
edtPassword: TEdit;
|
|
||||||
bAceptar: TButton;
|
|
||||||
bCancelar: TButton;
|
|
||||||
Label1: TLabel;
|
|
||||||
edtUser: TEdit;
|
|
||||||
JvGradient1: TJvGradient;
|
|
||||||
Button1: TButton;
|
|
||||||
Timer1: TTimer;
|
|
||||||
JvAppRegistryStorage1: TJvAppRegistryStorage;
|
|
||||||
JvFormStorage1: TJvFormStorage;
|
|
||||||
Image1: TImage;
|
|
||||||
procedure bAceptarClick(Sender: TObject);
|
|
||||||
procedure ToolButton4Click(Sender: TObject);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
procedure Timer1Timer(Sender: TObject);
|
|
||||||
procedure FormCreate(Sender: TObject);
|
|
||||||
procedure FormDestroy(Sender: TObject);
|
|
||||||
procedure edtUserKeyPress(Sender: TObject; var Key: Char);
|
|
||||||
private
|
|
||||||
FController : IUsuariosController;
|
|
||||||
FIntentos : Integer;
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const AValue : IUsuariosController);
|
|
||||||
published
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
uAdminPV_App, uDMBase;
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
{
|
|
||||||
********************************* TfEditorLogin **********************************
|
|
||||||
}
|
|
||||||
procedure TfEditorLogin.bAceptarClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
bOk : Boolean;
|
|
||||||
begin
|
|
||||||
Timer1.Enabled := False;
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
bOK := FController.ComprobarUsuario(edtUser.Text, edtPassword.Text);
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if bOk then
|
|
||||||
ModalResult := mrOK
|
|
||||||
else begin
|
|
||||||
Application.MessageBox('Usuario no válido. Compruebe si ha escrito correctamente'
|
|
||||||
+ #13 + #10 + 'el usuario y la contraseña.', 'Atención', MB_OK);
|
|
||||||
Inc(FIntentos);
|
|
||||||
if (Controller.MaxIntentosLogin > 0) and (FIntentos = Controller.MaxIntentosLogin) then
|
|
||||||
ModalResult := mrCancel;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.ToolButton4Click(Sender: TObject);
|
|
||||||
var
|
|
||||||
ATimer : Boolean;
|
|
||||||
begin
|
|
||||||
ATimer := False;
|
|
||||||
if Timer1.Enabled then
|
|
||||||
begin
|
|
||||||
ATimer := True;
|
|
||||||
Timer1.Enabled := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
dmBase.ConfigurarConexion;
|
|
||||||
|
|
||||||
if ATimer then
|
|
||||||
Timer1.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.edtUserKeyPress(Sender: TObject; var Key: Char);
|
|
||||||
begin
|
|
||||||
// Desactivar el timer cuando el usuario empieza a escribir
|
|
||||||
Timer1.Enabled := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.FormCreate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
FIntentos := 0;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.FormDestroy(Sender: TObject);
|
|
||||||
begin
|
|
||||||
FController := NIL;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Self.Caption := AppAdminPV.AppFullName;
|
|
||||||
JvFormStorage1.RestoreFormPlacement;
|
|
||||||
|
|
||||||
// Hacer login automática si hay usuario/password y no hay más de una base
|
|
||||||
// de datos como opción para conectarse.
|
|
||||||
if ((Length(edtUser.Text) > 0) and (Length(edtPassword.Text) > 0)) then
|
|
||||||
Timer1.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorLogin.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.SetController(const AValue: IUsuariosController);
|
|
||||||
begin
|
|
||||||
FController := AValue;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorLogin.Timer1Timer(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Timer1.Enabled := False;
|
|
||||||
bAceptar.Click;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
inherited fEditorPerfilUsuario: TfEditorPerfilUsuario
|
|
||||||
Caption = 'fEditorPerfilUsuario'
|
|
||||||
ExplicitWidth = 320
|
|
||||||
ExplicitHeight = 492
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
inherited TBXDock: TTBXDock
|
|
||||||
inherited tbxMain: TTBXToolbar
|
|
||||||
ExplicitWidth = 273
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited StatusBar: TStatusBar
|
|
||||||
Panels = <
|
|
||||||
item
|
|
||||||
Width = 200
|
|
||||||
end>
|
|
||||||
Visible = True
|
|
||||||
end
|
|
||||||
inherited EditorActionList: TActionList
|
|
||||||
inherited actNuevo: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actModificar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actPrevisualizar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actImprimir: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited dsDataTable: TDADataSource
|
|
||||||
OnDataChange = dsDataTableDataChange
|
|
||||||
end
|
|
||||||
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
|
|
||||||
Left = 248
|
|
||||||
Top = 168
|
|
||||||
object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel
|
|
||||||
GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
|
|
||||||
GroupOptions.CaptionOptions.Font.Color = clWindowText
|
|
||||||
GroupOptions.CaptionOptions.Font.Height = -11
|
|
||||||
GroupOptions.CaptionOptions.Font.Name = 'Tahoma'
|
|
||||||
GroupOptions.CaptionOptions.Font.Style = [fsBold]
|
|
||||||
GroupOptions.CaptionOptions.TextColor = clHighlight
|
|
||||||
GroupOptions.CaptionOptions.UseDefaultFont = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,234 +0,0 @@
|
|||||||
unit uEditorPerfilUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Menus, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uEditorDBItem, JvAppStorage, JvAppRegistryStorage, DB, uDAInterfaces,
|
|
||||||
uDADataTable, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
|
|
||||||
StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX, TB2Item,
|
|
||||||
TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvNavigationPane,
|
|
||||||
uIEditorPerfilUsuario, uUsuariosController, uCustomView, uViewBase,
|
|
||||||
uViewPerfilUsuario, uBizUsuarios, dxLayoutLookAndFeels;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorPerfilUsuario = class(TfEditorDBItem, IEditorPerfilUsuario)
|
|
||||||
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
|
||||||
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
|
|
||||||
procedure actGuardarExecute(Sender: TObject);
|
|
||||||
procedure actGuardarCerrarExecute(Sender: TObject);
|
|
||||||
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
private
|
|
||||||
FController : IUsuariosController;
|
|
||||||
FPerfilUsuario : IBizPerfilUsuario;
|
|
||||||
FViewPerfilUsuario : IViewPerfilUsuario;
|
|
||||||
protected
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
|
|
||||||
function GetPerfilUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
|
|
||||||
procedure GuardarInterno;
|
|
||||||
procedure EliminarInterno;
|
|
||||||
procedure ActualizarEstadoEditor;
|
|
||||||
|
|
||||||
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
|
||||||
//sobreescribir este metodo
|
|
||||||
procedure AsignarVista; virtual;
|
|
||||||
procedure PonerTitulos(const ATitulo: string = '');
|
|
||||||
|
|
||||||
function GetViewPerfilUsuario: IViewPerfilUsuario;
|
|
||||||
procedure SetViewPerfilUsuario(const Value: IViewPerfilUsuario);
|
|
||||||
property ViewPerfilUsuario: IViewPerfilUsuario read GetViewPerfilUsuario write SetViewPerfilUsuario;
|
|
||||||
public
|
|
||||||
constructor Create(AOwner: TComponent); override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
{ TfEditorUsuario }
|
|
||||||
|
|
||||||
uses
|
|
||||||
cxControls, uDialogUtils;
|
|
||||||
|
|
||||||
var
|
|
||||||
FIDNuevoGuardado : Integer = -1;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.actGuardarCerrarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
if actGuardar.Execute then
|
|
||||||
actCerrar.Execute;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.actGuardarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actGuardar.Enabled then
|
|
||||||
begin
|
|
||||||
GuardarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.ActualizarEstadoEditor;
|
|
||||||
begin
|
|
||||||
PonerTitulos;
|
|
||||||
if HayDatos then
|
|
||||||
begin
|
|
||||||
if (Self.Modified) and (dsDataTable.DataTable.State <> dsInsert) then
|
|
||||||
StatusBar.Panels[0].Text := ' Se han producido cambios'
|
|
||||||
else
|
|
||||||
StatusBar.Panels[0].Text := '';
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.AsignarVista;
|
|
||||||
var
|
|
||||||
AViewPerfilUsuario: TfrViewPerfilUsuario;
|
|
||||||
begin
|
|
||||||
AViewPerfilUsuario := TfrViewPerfilUsuario.Create(Self);
|
|
||||||
with AViewPerfilUsuario do
|
|
||||||
begin
|
|
||||||
Parent := Self;
|
|
||||||
Align := alClient;
|
|
||||||
dxLayoutControlArticulo.LookAndFeel := dxLayoutOfficeLookAndFeel1;
|
|
||||||
end;
|
|
||||||
ViewPerfilUsuario := AViewPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TfEditorPerfilUsuario.Create(AOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
AsignarVista;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TfEditorPerfilUsuario.Destroy;
|
|
||||||
begin
|
|
||||||
// Utilizar mejor OnClose;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.dsDataTableDataChange(Sender: TObject;
|
|
||||||
Field: TField);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.EliminarInterno;
|
|
||||||
begin
|
|
||||||
if (ShowConfirmMessage('Eliminar el perfil', '¿Desea eliminar este perfil?') = IDYES) then
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if not FController.EliminarPerfil(FPerfilUsuario) then
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
if Assigned(Parent) then
|
|
||||||
begin
|
|
||||||
StatusBar.Visible := False;
|
|
||||||
actCerrar.ShortCut := 0
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
StatusBar.Visible := True;
|
|
||||||
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorPerfilUsuario.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorPerfilUsuario.GetPerfilUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := FPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorPerfilUsuario.GetViewPerfilUsuario: IViewPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := FViewPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.GuardarInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if FController.GuardarPerfil(FPerfilUsuario) then
|
|
||||||
begin
|
|
||||||
FIDNuevoGuardado := FPerfilUsuario.ID;
|
|
||||||
FPerfilUsuario.DataTable.CancelUpdates;
|
|
||||||
Modified := False;
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.PonerTitulos(const ATitulo: string);
|
|
||||||
var
|
|
||||||
FTitulo : String;
|
|
||||||
begin
|
|
||||||
if Assigned(FPerfilUsuario) then
|
|
||||||
begin
|
|
||||||
if FPerfilUsuario.EsNuevo then
|
|
||||||
FTitulo := 'Nuevo perfil'
|
|
||||||
else
|
|
||||||
FTitulo := 'Perfil';
|
|
||||||
|
|
||||||
if Length(FPerfilUsuario.USERNAME) > 0 then
|
|
||||||
FTitulo := FTitulo + ' - ' + FPerfilUsuario.USERNAME;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if ReadOnly then
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo;
|
|
||||||
Caption := FTitulo;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.SetController(const Value: IUsuariosController);
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
if Assigned(FViewPerfilUsuario) and Assigned(FController) then
|
|
||||||
FViewPerfilUsuario.Controller := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.SetPerfilUsuario(
|
|
||||||
const Value: IBizPerfilUsuario);
|
|
||||||
begin
|
|
||||||
FPerfilUsuario := Value;
|
|
||||||
dsDataTable.DataTable := FPerfilUsuario.DataTable;
|
|
||||||
|
|
||||||
if Assigned(FViewPerfilUsuario) and Assigned(FPerfilUsuario) then
|
|
||||||
FViewPerfilUsuario.PerfilUsuario := FPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilUsuario.SetViewPerfilUsuario(const Value: IViewPerfilUsuario);
|
|
||||||
begin
|
|
||||||
FViewPerfilUsuario := Value;
|
|
||||||
|
|
||||||
if Assigned(FViewPerfilUsuario) and Assigned(FPerfilUsuario) then
|
|
||||||
FViewPerfilUsuario.PerfilUsuario := FPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
inherited fEditorPerfilesUsuario: TfEditorPerfilesUsuario
|
|
||||||
Caption = 'fEditorPerfilesUsuario'
|
|
||||||
ClientHeight = 493
|
|
||||||
ClientWidth = 840
|
|
||||||
ExplicitWidth = 848
|
|
||||||
ExplicitHeight = 520
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
|
||||||
Width = 840
|
|
||||||
ExplicitWidth = 840
|
|
||||||
inherited Image1: TImage
|
|
||||||
Left = 813
|
|
||||||
ExplicitLeft = 813
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited TBXDock: TTBXDock
|
|
||||||
Width = 840
|
|
||||||
ExplicitWidth = 840
|
|
||||||
inherited tbxMain: TTBXToolbar
|
|
||||||
ExplicitWidth = 213
|
|
||||||
end
|
|
||||||
inherited tbxMenu: TTBXToolbar
|
|
||||||
ExplicitWidth = 840
|
|
||||||
end
|
|
||||||
inherited tbxFiltro: TTBXToolbar
|
|
||||||
Left = 213
|
|
||||||
DockPos = 208
|
|
||||||
Visible = False
|
|
||||||
ExplicitLeft = 213
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited StatusBar: TStatusBar
|
|
||||||
Top = 474
|
|
||||||
Width = 840
|
|
||||||
ExplicitTop = 474
|
|
||||||
ExplicitWidth = 840
|
|
||||||
end
|
|
||||||
inherited EditorActionList: TActionList
|
|
||||||
inherited actNuevo: TAction
|
|
||||||
OnExecute = actNuevoExecute
|
|
||||||
end
|
|
||||||
inherited actModificar: TAction
|
|
||||||
OnExecute = actModificarExecute
|
|
||||||
end
|
|
||||||
inherited actPrevisualizar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actImprimir: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actDuplicar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited dsDataTable: TDADataSource
|
|
||||||
OnDataChange = dsDataTableDataChange
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,199 +0,0 @@
|
|||||||
unit uEditorPerfilesUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uEditorGridBase, Menus, JvAppStorage, JvAppRegistryStorage, DB,
|
|
||||||
uDAInterfaces, uDADataTable, JvComponentBase, JvFormPlacement, ImgList,
|
|
||||||
PngImageList, StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX,
|
|
||||||
TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
|
|
||||||
JvExControls, JvNavigationPane, uIEditorPerfilesUsuario,
|
|
||||||
uUsuariosController, uBizUsuarios, uViewPerfilesUsuario;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorPerfilesUsuario = class(TfEditorGridBase, IEditorPerfilesUsuario)
|
|
||||||
procedure actNuevoExecute(Sender: TObject);
|
|
||||||
procedure actModificarExecute(Sender: TObject);
|
|
||||||
procedure actEliminarExecute(Sender: TObject);
|
|
||||||
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
private
|
|
||||||
FPerfiles : IBizPerfilUsuario;
|
|
||||||
FController : IUsuariosController;
|
|
||||||
protected
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
|
|
||||||
function GetPerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
|
|
||||||
procedure NuevoInterno;
|
|
||||||
procedure EliminarInterno;
|
|
||||||
procedure ModificarInterno;
|
|
||||||
procedure ActualizarEstadoEditor;
|
|
||||||
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
|
||||||
//sobreescribir este metodo
|
|
||||||
procedure AsignarVista; virtual;
|
|
||||||
public
|
|
||||||
procedure PonerTitulos(const ATitulo: string = '');
|
|
||||||
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
constructor Create(AOwner: TComponent); override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uDialogUtils;
|
|
||||||
|
|
||||||
{ TfEditorUsuarios }
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.actEliminarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actEliminar.Enabled then
|
|
||||||
begin
|
|
||||||
EliminarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.actModificarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actModificar.Enabled then
|
|
||||||
begin
|
|
||||||
ModificarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.actNuevoExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actNuevo.Enabled then
|
|
||||||
begin
|
|
||||||
NuevoInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.ActualizarEstadoEditor;
|
|
||||||
begin
|
|
||||||
PonerTitulos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.AsignarVista;
|
|
||||||
begin
|
|
||||||
ViewGrid := CreateView(TfrViewPerfilesUsuario) as IViewPerfilesUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TfEditorPerfilesUsuario.Create(AOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
AsignarVista;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TfEditorPerfilesUsuario.Destroy;
|
|
||||||
begin
|
|
||||||
FPerfiles := NIL;
|
|
||||||
FController := NIl;
|
|
||||||
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.dsDataTableDataChange(Sender: TObject;
|
|
||||||
Field: TField);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.EliminarInterno;
|
|
||||||
begin
|
|
||||||
if (ShowConfirmMessage('Eliminar un perfil', Format('¿Desea eliminar el perfil %s?', [FPerfiles.USERNAME])) = IDYES) then
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
//Para que en el caso de no poderse realizar la operación se refresquen
|
|
||||||
//los datos y no nos permita eliminar un registro a la segunda
|
|
||||||
FController.EliminarPerfil(FPerfiles);
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
if Assigned(Parent) then
|
|
||||||
begin
|
|
||||||
StatusBar.Visible := False;
|
|
||||||
actCerrar.ShortCut := 0
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
StatusBar.Visible := True;
|
|
||||||
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorPerfilesUsuario.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorPerfilesUsuario.GetPerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := FPerfiles;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.ModificarInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FController.VerPerfil(FPerfiles.ID);
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.NuevoInterno;
|
|
||||||
var
|
|
||||||
ANuevoPerfil : IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ANuevoPerfil := FController.NuevoPerfil;
|
|
||||||
FController.VerPerfil(ANuevoPerfil);
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.PonerTitulos(const ATitulo: string);
|
|
||||||
var
|
|
||||||
FTitulo : String;
|
|
||||||
begin
|
|
||||||
FTitulo := 'Lista de perfiles de usuario';
|
|
||||||
|
|
||||||
if ReadOnly then
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo;
|
|
||||||
Caption := FTitulo;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.SetController(const Value: IUsuariosController);
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPerfilesUsuario.SetPerfilesUsuario(
|
|
||||||
const Value: IBizPerfilUsuario);
|
|
||||||
begin
|
|
||||||
FPerfiles := Value;
|
|
||||||
dsDataTable.DataTable := FPerfiles.DataTable;
|
|
||||||
if Assigned(ViewGrid) then
|
|
||||||
(ViewGrid as IViewPerfilesUsuario).PerfilesUsuario := FPerfiles;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,425 +0,0 @@
|
|||||||
object fEditorPermisosUsuario: TfEditorPermisosUsuario
|
|
||||||
Left = 255
|
|
||||||
Top = 154
|
|
||||||
BorderStyle = bsDialog
|
|
||||||
Caption = 'Administraci'#243'n de permisos'
|
|
||||||
ClientHeight = 519
|
|
||||||
ClientWidth = 448
|
|
||||||
Color = clBtnFace
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -11
|
|
||||||
Font.Name = 'MS Sans Serif'
|
|
||||||
Font.Style = []
|
|
||||||
OldCreateOrder = False
|
|
||||||
Position = poMainFormCenter
|
|
||||||
OnDestroy = FormDestroy
|
|
||||||
OnShow = FormShow
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
object Panel3: TPanel
|
|
||||||
Left = 351
|
|
||||||
Top = 0
|
|
||||||
Width = 97
|
|
||||||
Height = 484
|
|
||||||
Align = alRight
|
|
||||||
BevelOuter = bvNone
|
|
||||||
TabOrder = 0
|
|
||||||
ExplicitLeft = 445
|
|
||||||
ExplicitTop = 35
|
|
||||||
end
|
|
||||||
object PC: TPageControl
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 351
|
|
||||||
Height = 484
|
|
||||||
ActivePage = PageControls
|
|
||||||
Align = alClient
|
|
||||||
Style = tsFlatButtons
|
|
||||||
TabOrder = 1
|
|
||||||
Visible = False
|
|
||||||
ExplicitTop = 35
|
|
||||||
ExplicitWidth = 445
|
|
||||||
object PageMenu: TTabSheet
|
|
||||||
Caption = 'Itens do Menu'
|
|
||||||
ExplicitWidth = 437
|
|
||||||
object TreeMenu: TTreeView
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 343
|
|
||||||
Height = 453
|
|
||||||
Align = alClient
|
|
||||||
Ctl3D = True
|
|
||||||
Images = ImageList1
|
|
||||||
Indent = 19
|
|
||||||
ParentCtl3D = False
|
|
||||||
ReadOnly = True
|
|
||||||
RightClickSelect = True
|
|
||||||
TabOrder = 0
|
|
||||||
OnClick = TreeMenuClick
|
|
||||||
OnCollapsing = TreeMenuCollapsing
|
|
||||||
OnExpanding = TreeMenuCollapsing
|
|
||||||
OnKeyPress = TreeMenuKeyPress
|
|
||||||
OnMouseUp = TreeMenuMouseUp
|
|
||||||
ExplicitWidth = 437
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object PageAction: TTabSheet
|
|
||||||
Caption = 'A'#231#245'es'
|
|
||||||
ImageIndex = 1
|
|
||||||
ExplicitWidth = 437
|
|
||||||
object TreeAction: TTreeView
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 343
|
|
||||||
Height = 453
|
|
||||||
Align = alClient
|
|
||||||
Ctl3D = True
|
|
||||||
Images = ImageList1
|
|
||||||
Indent = 19
|
|
||||||
ParentCtl3D = False
|
|
||||||
ReadOnly = True
|
|
||||||
RightClickSelect = True
|
|
||||||
TabOrder = 0
|
|
||||||
OnClick = TreeActionClick
|
|
||||||
OnCollapsing = TreeMenuCollapsing
|
|
||||||
OnExpanding = TreeMenuCollapsing
|
|
||||||
OnKeyPress = TreeMenuKeyPress
|
|
||||||
ExplicitWidth = 437
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object PageControls: TTabSheet
|
|
||||||
Caption = 'Controles'
|
|
||||||
ImageIndex = 2
|
|
||||||
ExplicitWidth = 437
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object Panel2: TPanel
|
|
||||||
Left = 0
|
|
||||||
Top = 484
|
|
||||||
Width = 448
|
|
||||||
Height = 35
|
|
||||||
Align = alBottom
|
|
||||||
BevelOuter = bvNone
|
|
||||||
TabOrder = 2
|
|
||||||
ExplicitWidth = 510
|
|
||||||
DesignSize = (
|
|
||||||
448
|
|
||||||
35)
|
|
||||||
object bAceptar: TButton
|
|
||||||
Left = 272
|
|
||||||
Top = 0
|
|
||||||
Width = 75
|
|
||||||
Height = 25
|
|
||||||
Anchors = [akRight, akBottom]
|
|
||||||
Caption = '&Aceptar'
|
|
||||||
Default = True
|
|
||||||
ModalResult = 1
|
|
||||||
TabOrder = 0
|
|
||||||
OnClick = bAceptarClick
|
|
||||||
end
|
|
||||||
object bCancelar: TButton
|
|
||||||
Left = 363
|
|
||||||
Top = 0
|
|
||||||
Width = 75
|
|
||||||
Height = 25
|
|
||||||
Anchors = [akRight, akBottom]
|
|
||||||
Cancel = True
|
|
||||||
Caption = '&Cancelar'
|
|
||||||
Default = True
|
|
||||||
ModalResult = 2
|
|
||||||
TabOrder = 1
|
|
||||||
OnClick = bCancelarClick
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object GroupBox1: TGroupBox
|
|
||||||
Left = 8
|
|
||||||
Top = 8
|
|
||||||
Width = 431
|
|
||||||
Height = 458
|
|
||||||
Caption = 'Lista de m'#243'dulos'
|
|
||||||
TabOrder = 3
|
|
||||||
object BtLibera: TBitBtn
|
|
||||||
Left = 14
|
|
||||||
Top = 374
|
|
||||||
Width = 112
|
|
||||||
Height = 25
|
|
||||||
Caption = '&Permitir todo'
|
|
||||||
TabOrder = 0
|
|
||||||
OnClick = BtLiberaClick
|
|
||||||
Glyph.Data = {
|
|
||||||
36060000424D3606000000000000360000002800000020000000100000000100
|
|
||||||
18000000000000060000120B0000120B00000000000000000000C8D0D4C8D0D4
|
|
||||||
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
|
|
||||||
D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D49FBFD0
|
|
||||||
0060900060900060900060900060900060900060900060900060900060900060
|
|
||||||
909FBFD0C8D0D4C8D0D4C8D0D4C2C8CB8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D
|
|
||||||
8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8DC2C8CBC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
98D8F80090C80090C80090C80090C80090C80090C80090C80090C80090C80090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5E7E7E7B6B6B6B5B5B5B5B5B5B5B5B5B5
|
|
||||||
B5B5B5B5B5B6B6B6B5B5B5B5B5B5B5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD7ACEF774CCF66EC9F55494A840404045879B4EBBF146B7EF42B5EF0090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E1E1E1E0E0E0DDDDDDB1B1B166
|
|
||||||
6666A7A7A7D5D5D5D3D3D3D2D2D2B5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD83D2F87DD0F777CDF671CAF540404063C5F45AC1F352BDF14AB9F00090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E3E3E3E2E2E2E0E0E0DFDFDF66
|
|
||||||
6666DBDBDBD8D8D8D7D7D7D4D4D4B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD89D5F983D2F87DD0F740404040404040404063C5F45AC1F352BDF10090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F6F6F6E5E5E5E3E3E3E2E2E267676766
|
|
||||||
6666666666DCDCDCD9D9D9D6D6D6B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD8FD8FA89D5F983D2F862AABE40404062AABE6BC8F563C5F45AC1F30090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F6F6F6E7E7E7E5E5E5E3E3E3C2C2C266
|
|
||||||
6666C2C2C2DDDDDDDCDCDCD9D9D9B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD95DBFB8FD8FA89D5F983D2F87DD0F777CDF671CAF56BC8F563C5F40090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B6B6B6F5F5F5E9E9E9E7E7E7E5E5E5E3E3E3E2
|
|
||||||
E2E2E0E0E0DFDFDFDDDDDDDCDCDCB5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
98D8F8D7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFD98D8
|
|
||||||
F8006090C8D0D4C8D0D4C8D0D4B5B5B5E7E7E7F6F6F6F6F6F6F6F6F6F6F6F6F6
|
|
||||||
F6F6F6F6F6F6F6F6F6F6F6F5F5F5E7E7E78D8D8DC8D0D4C8D0D4C8D0D49FBFD0
|
|
||||||
028DC70090C80090C80090C80090C80090C80090C80090C80090C80090C80090
|
|
||||||
C89FBFD0C8D0D4C8D0D4C8D0D4C2C8CBB4B4B4B6B6B6B6B6B6B6B6B6B5B5B5B5
|
|
||||||
B5B5B5B5B5B6B6B6B6B6B6B5B5B5B5B5B5C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D40090C860C8F8006090C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
|
|
||||||
D0D4C8D0D4B6B6B6DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D40090C8006090006090C8D0D4C8D0D4C8D0D40090C860C8F8006090C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B6B6B68D8D8D8D8D8DC8D0D4C8
|
|
||||||
D0D4C8D0D4B6B6B6DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D40090C8D7EFFD0060909FBFD0C8D0D49FBFD00090C860C8F8006090C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B5B5B5F6F6F68D8D8DC2C8CBC8
|
|
||||||
D0D4C2C8CBB5B5B5DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D47FB1CDD7EFFD98D8F800609000609000609098D8F860C8F8367EA3C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4BDC2C4F5F5F5E7E7E78D8D8D8E
|
|
||||||
8E8E8D8D8DE7E7E7DDDDDD9EA0A1C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D49FBFD07FB1CDD7EFFDD7EFFDD7EFFDD7EFFD4DB9EC367EA39FBFD0C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4F6F6F6F6F6F6F6
|
|
||||||
F6F6F6F6F6D3D3D39EA0A1C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D4C8D0D49FBFD07FB1CD0090C80090C80090C87FB1CD9FBFD0C8D0D4C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4B5B5B5B5
|
|
||||||
B5B5B5B5B5BDC2C4C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4}
|
|
||||||
NumGlyphs = 2
|
|
||||||
end
|
|
||||||
object BtBloqueia: TBitBtn
|
|
||||||
Left = 14
|
|
||||||
Top = 413
|
|
||||||
Width = 112
|
|
||||||
Height = 25
|
|
||||||
Caption = '&Bloquear todo'
|
|
||||||
TabOrder = 1
|
|
||||||
OnClick = BtBloqueiaClick
|
|
||||||
Glyph.Data = {
|
|
||||||
36060000424D3606000000000000360000002800000020000000100000000100
|
|
||||||
18000000000000060000120B0000120B00000000000000000000C8D0D4C8D0D4
|
|
||||||
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
|
|
||||||
D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D49FBFD0
|
|
||||||
0060900060900060900060900060900060900060900060900060900060900060
|
|
||||||
909FBFD0C8D0D4C8D0D4C8D0D4C2C8CB8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D
|
|
||||||
8D8D8D8D8D8E8E8E8D8D8D8D8D8D8D8D8DC2C8CBC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
98D8F80090C80090C80090C80090C80090C80090C80090C80090C80090C80090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B6B6B6E7E7E7B5B5B5B6B6B6B5B5B5B5B5B5B5
|
|
||||||
B5B5B6B6B6B5B5B5B5B5B5B6B6B6B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD7ACEF774CCF66EC9F55494A840404045879B4EBBF146B7EF42B5EF0090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E1E1E1E0E0E0DDDDDDB1B1B166
|
|
||||||
6666A7A7A7D5D5D5D3D3D3D2D2D2B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD83D2F87DD0F777CDF671CAF540404063C5F45AC1F352BDF14AB9F00090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B6B6B6F6F6F6E3E3E3E2E2E2E0E0E0DFDFDF66
|
|
||||||
6666DCDCDCD9D9D9D7D7D7D4D4D4B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD89D5F983D2F87DD0F740404040404040404063C5F45AC1F352BDF10090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F5F5F5E5E5E5E3E3E3E2E2E266666666
|
|
||||||
6666666666DCDCDCD8D8D8D6D6D6B5B5B58D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD8FD8FA89D5F983D2F862AABE40404062AABE6BC8F563C5F45AC1F30090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B6B6B6F6F6F6E7E7E7E6E6E6E3E3E3C2C2C267
|
|
||||||
6767C2C2C2DDDDDDDBDBDBD9D9D9B6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
D7EFFD95DBFB8FD8FA89D5F983D2F87DD0F777CDF671CAF56BC8F563C5F40090
|
|
||||||
C8006090C8D0D4C8D0D4C8D0D4B5B5B5F6F6F6E9E9E9E7E7E7E6E6E6E3E3E3E2
|
|
||||||
E2E2E0E0E0DFDFDFDDDDDDDBDBDBB6B6B68D8D8DC8D0D4C8D0D4C8D0D40090C8
|
|
||||||
98D8F8D7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFDD7EFFD98D8
|
|
||||||
F8006090C8D0D4C8D0D4C8D0D4B5B5B5E7E7E7F6F6F6F6F6F6F6F6F6F6F6F6F6
|
|
||||||
F6F6F6F6F6F6F6F6F6F6F6F6F6F6E7E7E78D8D8DC8D0D4C8D0D4C8D0D49FBFD0
|
|
||||||
0090C80090C80090C80090C80090C80090C80090C80090C80090C80090C80090
|
|
||||||
C89FBFD0C8D0D4C8D0D4C8D0D4C2C8CBB5B5B5B6B6B6B6B6B6B5B5B5B6B6B6B5
|
|
||||||
B5B5B6B6B6B6B6B6B5B5B5B5B5B5B6B6B6C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D40090C8D7EFFD006090C8D0D4C8D0D4C8D0D40090C860C8F8006090C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B5B5B5F5F5F58D8D8DC8D0D4C8
|
|
||||||
D0D4C8D0D4B5B5B5DDDDDD8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D40090C8D7EFFD0060909FBFD0C8D0D49FBFD00090C860C8F8006090C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4B5B5B5F6F6F68D8D8DC2C8CBC8
|
|
||||||
D0D4C2C8CBB5B5B5DEDEDE8D8D8DC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D47FB1CDD7EFFD98D8F800609000609000609060C8F860C8F8367EA3C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4BDC2C4F6F6F6E7E7E78D8D8D8D
|
|
||||||
8D8D8D8D8DDEDEDEDDDDDD9EA0A1C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D49FBFD07FB1CDD7EFFDD7EFFDD7EFFDD7EFFD60C8F8367EA39FBFD0C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4F6F6F6F6F6F6F6
|
|
||||||
F6F6F6F6F6DDDDDD9EA0A1C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D4C8D0D49FBFD07FB1CD0090C80090C80090C87FB1CD9FBFD0C8D0D4C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C2C8CBBDC2C4B5B5B5B5
|
|
||||||
B5B5B6B6B6BDC2C4C2C8CBC8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4
|
|
||||||
C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0
|
|
||||||
D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8
|
|
||||||
D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4C8D0D4}
|
|
||||||
NumGlyphs = 2
|
|
||||||
end
|
|
||||||
object TreeControls: TTreeView
|
|
||||||
Left = 14
|
|
||||||
Top = 19
|
|
||||||
Width = 403
|
|
||||||
Height = 342
|
|
||||||
Ctl3D = True
|
|
||||||
Images = ImageList1
|
|
||||||
Indent = 19
|
|
||||||
ParentCtl3D = False
|
|
||||||
ReadOnly = True
|
|
||||||
RightClickSelect = True
|
|
||||||
TabOrder = 2
|
|
||||||
OnClick = TreeControlsClick
|
|
||||||
OnCollapsing = TreeMenuCollapsing
|
|
||||||
OnExpanding = TreeMenuCollapsing
|
|
||||||
OnKeyPress = TreeMenuKeyPress
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object ImageList1: TImageList
|
|
||||||
Left = 360
|
|
||||||
Top = 8
|
|
||||||
Bitmap = {
|
|
||||||
494C010103000500040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
|
|
||||||
0000000000003600000028000000400000001000000001002000000000000010
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400C6DEC600C6DE
|
|
||||||
C600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DE
|
|
||||||
C600C6DEC6000000000000000000000000000000000084848400C6DEC600C6DE
|
|
||||||
C600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DE
|
|
||||||
C600C6DEC6000000000000000000000000000000000084848400C6DEC600C6DE
|
|
||||||
C600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DEC600C6DE
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C600C6C6C600C6C6C60084848400C6C6C600C6C6C600C6C6C600C6C6C600C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C600C6C6C600848484008484840084848400C6C6C600C6C6C600C6C6C600C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C6008484840084848400848484008484840084848400C6C6C600C6C6C600C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C6008484840084848400C6C6C600848484008484840084848400C6C6C600C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C60084848400C6C6C600C6C6C600C6C6C600848484008484840084848400C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C6008484840084848400C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C60084848400C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC6000000000000000000000000000000000084848400848484000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000C6DEC600000000000000000000000000000000008484840084848400C6C6
|
|
||||||
C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6C600C6C6
|
|
||||||
C600C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484008484
|
|
||||||
8400848484008484840084848400848484008484840084848400848484008484
|
|
||||||
8400C6DEC6000000000000000000000000000000000084848400848484008484
|
|
||||||
8400848484008484840084848400848484008484840084848400848484008484
|
|
||||||
8400C6DEC6000000000000000000000000000000000084848400848484008484
|
|
||||||
8400848484008484840084848400848484008484840084848400848484008484
|
|
||||||
8400C6DEC6000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000084848400848484008484
|
|
||||||
8400848484008484840084848400848484008484840084848400848484008484
|
|
||||||
8400848484000000000000000000000000000000000084848400848484008484
|
|
||||||
8400848484008484840084848400848484008484840084848400848484008484
|
|
||||||
8400848484000000000000000000000000000000000084848400848484008484
|
|
||||||
8400848484008484840084848400848484008484840084848400848484008484
|
|
||||||
8400848484000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
000000000000000000000000000000000000424D3E000000000000003E000000
|
|
||||||
2800000040000000100000000100010000000000800000000000000000000000
|
|
||||||
000000000000000000000000FFFFFF00FFFFFFFFFFFF0000FFFFFFFFFFFF0000
|
|
||||||
FFFFFFFFFFFF000080078007800700009FF79FF7800700009FF79DF780070000
|
|
||||||
9FF798F7800700009FF79077800700009FF79237800700009FF7971780070000
|
|
||||||
9FF79F97800700009FF79FD7800700009FF79FF7800700008007800780070000
|
|
||||||
8007800780070000FFFFFFFFFFFF000000000000000000000000000000000000
|
|
||||||
000000000000}
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,700 +0,0 @@
|
|||||||
unit uEditorPermisosUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
UCBase, ActnMan, ActnMenus, Variants, Buttons, Classes, ComCtrls, Controls,
|
|
||||||
DB, ExtCtrls, Forms, Graphics, ImgList, Menus, StdCtrls, uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
PTreeMenu = ^TTreeMenu;
|
|
||||||
|
|
||||||
TTreeMenu = record
|
|
||||||
Selecionado: Integer;
|
|
||||||
MenuName: String;
|
|
||||||
end;
|
|
||||||
|
|
||||||
PTreeAction = ^TTreeAction;
|
|
||||||
|
|
||||||
TTreeAction = record
|
|
||||||
Grupo: Boolean;
|
|
||||||
Selecionado: Integer;
|
|
||||||
MenuName: String;
|
|
||||||
end;
|
|
||||||
|
|
||||||
PTreeControl = ^TTreeControl;
|
|
||||||
|
|
||||||
TTreeControl = record
|
|
||||||
Grupo: Boolean;
|
|
||||||
Selecionado: Integer;
|
|
||||||
CompName: String;
|
|
||||||
FormName: String;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TfEditorPermisosUsuario = class(TForm)
|
|
||||||
Panel3: TPanel;
|
|
||||||
BtLibera: TBitBtn;
|
|
||||||
BtBloqueia: TBitBtn;
|
|
||||||
ImageList1: TImageList;
|
|
||||||
PC: TPageControl;
|
|
||||||
PageMenu: TTabSheet;
|
|
||||||
PageAction: TTabSheet;
|
|
||||||
TreeMenu: TTreeView;
|
|
||||||
TreeAction: TTreeView;
|
|
||||||
PageControls: TTabSheet;
|
|
||||||
TreeControls: TTreeView;
|
|
||||||
Panel2: TPanel;
|
|
||||||
bAceptar: TButton;
|
|
||||||
bCancelar: TButton;
|
|
||||||
GroupBox1: TGroupBox;
|
|
||||||
procedure BtGravaClick(Sender: TObject);
|
|
||||||
procedure TreeMenuClick(Sender: TObject);
|
|
||||||
procedure BtLiberaClick(Sender: TObject);
|
|
||||||
procedure BtBloqueiaClick(Sender: TObject);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
procedure TreeActionClick(Sender: TObject);
|
|
||||||
procedure TreeControlsClick(Sender: TObject);
|
|
||||||
procedure TreeMenuCollapsing(Sender: TObject; Node: TTreeNode; var AllowCollapse: Boolean);
|
|
||||||
procedure TreeMenuKeyPress(Sender: TObject; var Key: char);
|
|
||||||
procedure TreeMenuMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
|
|
||||||
procedure FormDestroy(Sender: TObject);
|
|
||||||
procedure bCancelarClick(Sender: TObject);
|
|
||||||
procedure bAceptarClick(Sender: TObject);
|
|
||||||
private
|
|
||||||
FMenu: TMenu;
|
|
||||||
FActions: TObject;
|
|
||||||
FChangingTree: Boolean;
|
|
||||||
FTempMPointer: PTreeMenu;
|
|
||||||
FTempAPointer: PTreeAction;
|
|
||||||
FTempCPointer: PTreeControl;
|
|
||||||
FExtraRights: TUCExtraRights;
|
|
||||||
FTempLista: TStringList;
|
|
||||||
FListaAction: array of PTreeAction;
|
|
||||||
FListaMenu: array of PTreeMenu;
|
|
||||||
FListaControl: array of PTreeControl;
|
|
||||||
{$IFDEF UCACTMANAGER}
|
|
||||||
FActionMainMenuBar: TActionMainMenuBar;
|
|
||||||
procedure TrataItem(IT: TActionClientItem; node: TTreeNode); overload;
|
|
||||||
{$ENDIF}
|
|
||||||
procedure TrataItem(IT: TMenuItem; node: TTreeNode); overload;
|
|
||||||
procedure TreeMenuItem(marca: Boolean);
|
|
||||||
procedure Atualiza(Selec: Boolean);
|
|
||||||
procedure TreeActionItem(marca: Boolean);
|
|
||||||
procedure UnCheckChild(node: TTreeNode);
|
|
||||||
procedure TreeControlItem(marca: Boolean);
|
|
||||||
procedure CarregaTreeviews;
|
|
||||||
public
|
|
||||||
FUser : IBizUsuario;
|
|
||||||
FUserControl: TUserControl;
|
|
||||||
DSPermiss: TDataset;
|
|
||||||
DSPermissEX: TDataset;
|
|
||||||
DSPerfil: TDataset;
|
|
||||||
DSPerfilEX: TDataset;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
ActnList, Messages, SysUtils, Windows;
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.BtGravaClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
Contador: Integer;
|
|
||||||
begin
|
|
||||||
with FUserControl.TableRights do
|
|
||||||
begin
|
|
||||||
FUserControl.DataConnector.UCExecSQL('Delete from ' + TableName + ' Where ' + FieldUserID + ' = ' + IntToStr(FUser.ID) + ' and ' + FieldModule + ' = ' + QuotedStr(FUserControl.ApplicationID));
|
|
||||||
FUserControl.DataConnector.UCExecSQL('Delete from ' + TableName + 'EX Where ' + FieldUserID + ' = ' + IntToStr(FUser.ID) + ' and ' + FieldModule + ' = ' + QuotedStr(FUserControl.ApplicationID));
|
|
||||||
end;
|
|
||||||
|
|
||||||
for Contador := 0 to TreeMenu.Items.Count - 1 do
|
|
||||||
if PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado = 1 then
|
|
||||||
FUserControl.AddRight(FUser.ID, PTreeMenu(TreeMenu.Items[Contador].Data).MenuName);
|
|
||||||
|
|
||||||
for Contador := 0 to TreeAction.Items.Count - 1 do
|
|
||||||
if PTreeAction(TreeAction.Items[Contador].Data).Selecionado = 1 then
|
|
||||||
FUserControl.AddRight(FUser.ID, PTreeAction(TreeAction.Items[Contador].Data).MenuName);
|
|
||||||
|
|
||||||
//Extra Rights
|
|
||||||
for Contador := 0 to Pred(TreeControls.Items.Count) do
|
|
||||||
if PTreeControl(TreeControls.Items[Contador].Data).Selecionado = 1 then
|
|
||||||
FUserControl.AddRightEX(FUser.ID, FUserControl.ApplicationID, PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName);
|
|
||||||
|
|
||||||
Close;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TrataItem(IT: TMenuItem; node: TTreeNode);
|
|
||||||
var
|
|
||||||
contador: Integer;
|
|
||||||
TempNode: TTreeNode;
|
|
||||||
begin
|
|
||||||
for contador := 0 to IT.Count - 1 do
|
|
||||||
if IT.Items[Contador].Caption <> '-' then
|
|
||||||
if IT.Items[Contador].Count > 0 then
|
|
||||||
begin
|
|
||||||
New(FTempMPointer);
|
|
||||||
SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempMPointer.Selecionado := 0;
|
|
||||||
FTempMPointer.MenuName := IT.Items[Contador].Name;
|
|
||||||
TempNode := TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
|
|
||||||
TrataItem(IT.Items[Contador], TempNode);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
New(FTempMPointer);
|
|
||||||
SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempMPointer.Selecionado := 0;
|
|
||||||
FTempMPointer.MenuName := IT.Items[Contador].Name;
|
|
||||||
TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{$IFDEF UCACTMANAGER}
|
|
||||||
procedure TUserPermis.TrataItem(IT: TActionClientItem; node: TTreeNode);
|
|
||||||
var
|
|
||||||
contador: Integer;
|
|
||||||
TempNode: TTreeNode;
|
|
||||||
begin
|
|
||||||
for contador := 0 to IT.Items.Count - 1 do
|
|
||||||
if IT.Items[Contador].Caption <> '-' then
|
|
||||||
if IT.Items[Contador].Items.Count > 0 then
|
|
||||||
begin
|
|
||||||
New(FTempMPointer);
|
|
||||||
SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempMPointer.Selecionado := 0;
|
|
||||||
FTempMPointer.MenuName := #1 + 'G' + IT.Items[Contador].Caption;
|
|
||||||
TempNode := TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
|
|
||||||
TrataItem(IT.Items[Contador], TempNode);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
New(FTempMPointer);
|
|
||||||
SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempMPointer.Selecionado := 0;
|
|
||||||
FTempMPointer.MenuName := IT.Items[Contador].Action.Name;
|
|
||||||
TreeMenu.Items.AddChildObject(node, StringReplace(IT.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.CarregaTreeviews;
|
|
||||||
var
|
|
||||||
Contador: Integer;
|
|
||||||
TempNode: TTreeNode;
|
|
||||||
Temp: String;
|
|
||||||
Temp2: String;
|
|
||||||
Desc: String;
|
|
||||||
begin
|
|
||||||
FChangingTree := False;
|
|
||||||
PC.ActivePage := PageControls;
|
|
||||||
|
|
||||||
// Self.FMenu := FUserControl.ControlRight.MainMenu;
|
|
||||||
//Self.FActionMainMenuBar := FUserControl.ControlRight.ActionMainMenuBar;
|
|
||||||
{ if Assigned(FUserControl.ControlRight.ActionList) then
|
|
||||||
Self.FActions := FUserControl.ControlRight.ActionList
|
|
||||||
else
|
|
||||||
Self.FActions := FUserControl.ControlRight.ActionManager;}
|
|
||||||
|
|
||||||
Self.FExtraRights := FUserControl.ExtraRights;
|
|
||||||
|
|
||||||
{ if Assigned(FMenu) then
|
|
||||||
begin
|
|
||||||
TreeMenu.Items.Clear;
|
|
||||||
for Contador := 0 to FMenu.Items.Count - 1 do
|
|
||||||
if FMenu.Items[Contador].Count > 0 then
|
|
||||||
begin
|
|
||||||
New(FTempMPointer);
|
|
||||||
SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempMPointer.Selecionado := 0;
|
|
||||||
FTempMPointer.MenuName := FMenu.Items[Contador].Name;
|
|
||||||
TempNode := TreeMenu.Items.AddObject(nil, StringReplace(FMenu.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
|
|
||||||
TrataItem(FMenu.Items[Contador], TempNode);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
if FMenu.Items[Contador].Caption <> '-' then
|
|
||||||
begin
|
|
||||||
New(FTempMPointer);
|
|
||||||
SetLength(FListaMenu, Length(FListaMenu) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaMenu[High(FListaMenu)] := FTempMPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempMPointer.Selecionado := 0;
|
|
||||||
FTempMPointer.MenuName := FMenu.Items[Contador].Name;
|
|
||||||
TreeMenu.Items.AddObject(nil, StringReplace(FMenu.Items[Contador].Caption, '&', '', [rfReplaceAll]), FTempMPointer);
|
|
||||||
end;
|
|
||||||
TreeMenu.FullExpand;
|
|
||||||
TreeMenu.Perform(WM_VSCROLL, SB_TOP, 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
TempNode := nil;
|
|
||||||
if Assigned(FActions) then
|
|
||||||
begin
|
|
||||||
TreeAction.Items.Clear;
|
|
||||||
if Assigned(FTempLista) then
|
|
||||||
FreeAndNil(FTempLista);
|
|
||||||
FTempLista := TStringList.Create;
|
|
||||||
for Contador := 0 to TActionList(FActions).ActionCount - 1 do
|
|
||||||
FTempLista.Append(TActionList(FActions).Actions[contador].Category + #1 + TActionList(FActions).Actions[contador].Name + #2 + TAction(TActionList(FActions).Actions[contador]).Caption);
|
|
||||||
FTempLista.Sort;
|
|
||||||
Temp := #1;
|
|
||||||
for Contador := 0 to FTempLista.Count - 1 do
|
|
||||||
begin
|
|
||||||
if Temp <> Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1) then
|
|
||||||
begin
|
|
||||||
New(FTempAPointer);
|
|
||||||
SetLength(FListaAction, Length(FListaAction) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaAction[High(FListaAction)] := FTempAPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempAPointer.Grupo := True;
|
|
||||||
FTempAPointer.Selecionado := 0;
|
|
||||||
FTempAPointer.MenuName := 'Grupo';
|
|
||||||
TempNode := TreeAction.Items.AddObject(nil, StringReplace(Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1), '&', '', [rfReplaceAll]), FTempAPointer);
|
|
||||||
TempNode.ImageIndex := 2;
|
|
||||||
TempNode.SelectedIndex := 2;
|
|
||||||
Temp := Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1);
|
|
||||||
end;
|
|
||||||
Temp2 := FTempLista[Contador];
|
|
||||||
Delete(Temp2, 1, pos(#1, Temp2));
|
|
||||||
New(FTempAPointer);
|
|
||||||
SetLength(FListaAction, Length(FListaAction) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaAction[High(FListaAction)] := FTempAPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempAPointer.Grupo := False;
|
|
||||||
FTempAPointer.Selecionado := 0;
|
|
||||||
FTempAPointer.MenuName := Copy(Temp2, 1, Pos(#2, Temp2) - 1);
|
|
||||||
Delete(Temp2, 1, pos(#2, Temp2));
|
|
||||||
TreeAction.Items.AddChildObject(TempNode, StringReplace(Temp2, '&', '', [rfReplaceAll]), FTempAPointer);
|
|
||||||
end;
|
|
||||||
TreeAction.FullExpand;
|
|
||||||
TreeAction.Perform(WM_VSCROLL, SB_TOP, 0);
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
//ExtraRights
|
|
||||||
TempNode := nil;
|
|
||||||
if Self.FExtraRights.Count > 0 then
|
|
||||||
begin
|
|
||||||
TreeControls.Items.Clear;
|
|
||||||
if Assigned(FTempLista) then
|
|
||||||
FreeAndNil(FTempLista);
|
|
||||||
FTempLista := TStringList.Create;
|
|
||||||
for Contador := 0 to Pred(FExtraRights.Count) do
|
|
||||||
//FTempLista.Append(FExtraRights[Contador].GroupName + #1 + FExtraRights[Contador].Caption + #2 + FExtraRights[Contador].FormName + #3 + FExtraRights[Contador].CompName);
|
|
||||||
FTempLista.Append(FExtraRights[Contador].GroupName + #1 + FExtraRights[Contador].Caption + #2 + FExtraRights[Contador].Caption + #3 + FExtraRights[Contador].Caption);
|
|
||||||
FTempLista.Sort;
|
|
||||||
Temp := #1;
|
|
||||||
for Contador := 0 to Pred(FTempLista.Count) do
|
|
||||||
begin
|
|
||||||
if Temp <> Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1) then
|
|
||||||
begin
|
|
||||||
New(FTempCPointer);
|
|
||||||
SetLength(FListaControl, Length(FListaControl) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaControl[High(FListaControl)] := FTempCPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempCPointer.Grupo := True;
|
|
||||||
FTempCPointer.Selecionado := 0;
|
|
||||||
FTempCPointer.FormName := 'Grupo';
|
|
||||||
FTempCPointer.CompName := 'Grupo';
|
|
||||||
TempNode := TreeControls.Items.AddObject(nil, Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1), FTempCPointer);
|
|
||||||
TempNode.ImageIndex := 2;
|
|
||||||
TempNode.SelectedIndex := 2;
|
|
||||||
Temp := Copy(FTempLista[Contador], 1, Pos(#1, FTempLista[Contador]) - 1);
|
|
||||||
end;
|
|
||||||
Temp2 := FTempLista[Contador];
|
|
||||||
Delete(Temp2, 1, pos(#1, Temp2));
|
|
||||||
New(FTempCPointer);
|
|
||||||
SetLength(FListaControl, Length(FListaControl) + 1); //Adicionado por Luiz 18/01/06
|
|
||||||
FListaControl[High(FListaControl)] := FTempCPointer; //Adicionado por Luiz 18/01/06
|
|
||||||
FTempCPointer.Grupo := False;
|
|
||||||
FTempCPointer.Selecionado := 0;
|
|
||||||
Desc := Copy(Temp2, 1, Pos(#2, Temp2) - 1); // descricao do objeto
|
|
||||||
Delete(Temp2, 1, pos(#2, Temp2));
|
|
||||||
|
|
||||||
FTempCPointer.FormName := Copy(Temp2, 1, Pos(#3, Temp2) - 1);
|
|
||||||
Delete(Temp2, 1, pos(#3, Temp2));
|
|
||||||
FTempCPointer.CompName := Temp2;
|
|
||||||
TreeControls.Items.AddChildObject(TempNode, Desc, FTempCPointer);
|
|
||||||
FTempCPointer := nil;
|
|
||||||
end;
|
|
||||||
TreeControls.FullExpand;
|
|
||||||
TreeControls.Perform(WM_VSCROLL, SB_TOP, 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ PageMenu.TabVisible := Assigned(FMenu);
|
|
||||||
|
|
||||||
PageAction.TabVisible := Assigned(FActions);}
|
|
||||||
|
|
||||||
PageControls.TabVisible := (Assigned(FExtraRights) and (FExtraRights.Count > 0));
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.UnCheckChild(node: TTreeNode);
|
|
||||||
var
|
|
||||||
child: TTreeNode;
|
|
||||||
begin
|
|
||||||
PTreemenu(node.Data).Selecionado := 0;
|
|
||||||
node.ImageIndex := 0;
|
|
||||||
node.SelectedIndex := 0;
|
|
||||||
child := node.GetFirstChild;
|
|
||||||
repeat
|
|
||||||
if child.HasChildren then
|
|
||||||
UnCheckChild(child)
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
PTreemenu(child.Data).Selecionado := 0;
|
|
||||||
child.ImageIndex := 0;
|
|
||||||
child.SelectedIndex := 0;
|
|
||||||
end;
|
|
||||||
child := node.GetNextChild(child);
|
|
||||||
until child = nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeMenuItem(Marca: Boolean);
|
|
||||||
var
|
|
||||||
AbsIdx: Integer;
|
|
||||||
begin
|
|
||||||
if Marca then
|
|
||||||
if PTreemenu(TreeMenu.Selected.Data).Selecionado < 2 then
|
|
||||||
begin
|
|
||||||
if PTreemenu(TreeMenu.Selected.Data).Selecionado = 0 then //marcar
|
|
||||||
begin
|
|
||||||
AbsIdx := TreeMenu.Selected.AbsoluteIndex;
|
|
||||||
while AbsIdx > -1 do
|
|
||||||
begin
|
|
||||||
PTreemenu(TreeMenu.Items.Item[AbsIdx].Data).Selecionado := 1;
|
|
||||||
TreeMenu.Items.Item[AbsIdx].ImageIndex := 1;
|
|
||||||
TreeMenu.Items.Item[AbsIdx].SelectedIndex := 1;
|
|
||||||
if TreeMenu.Items.Item[AbsIdx].Parent <> nil then
|
|
||||||
begin
|
|
||||||
AbsIdx := TreeMenu.Items.Item[AbsIdx].Parent.AbsoluteIndex;
|
|
||||||
if PTreemenu(TreeMenu.Items.Item[AbsIdx].Data).Selecionado = 2 then
|
|
||||||
AbsIdx := -1;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
AbsIdx := -1;
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
if TreeMenu.Selected.HasChildren then
|
|
||||||
UnCheckChild(TreeMenu.Selected)
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
PTreemenu(TreeMenu.Selected.Data).Selecionado := 0;
|
|
||||||
TreeMenu.Selected.ImageIndex := 0;
|
|
||||||
TreeMenu.Selected.SelectedIndex := 0;
|
|
||||||
end; //desmarcar
|
|
||||||
TreeMenu.Repaint;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeActionItem(marca: Boolean);
|
|
||||||
begin
|
|
||||||
if not Assigned(FActions) then
|
|
||||||
Exit;
|
|
||||||
if PTreeAction(TreeAction.Selected.Data).Grupo then
|
|
||||||
Exit;
|
|
||||||
if Marca then
|
|
||||||
begin
|
|
||||||
if PTreeAction(TreeAction.Selected.Data).Selecionado < 2 then
|
|
||||||
if PTreeAction(TreeAction.Selected.Data).Selecionado = 0 then
|
|
||||||
PTreeAction(TreeAction.Selected.Data).Selecionado := 1
|
|
||||||
else
|
|
||||||
PTreeAction(TreeAction.Selected.Data).Selecionado := 0;
|
|
||||||
TreeAction.Selected.ImageIndex := PTreeAction(TreeAction.Selected.Data).Selecionado;
|
|
||||||
TreeAction.Selected.SelectedIndex := PTreeAction(TreeAction.Selected.Data).Selecionado;
|
|
||||||
end;
|
|
||||||
TreeAction.Repaint;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeControlItem(marca: Boolean);
|
|
||||||
begin
|
|
||||||
if PTreeControl(TreeControls.Selected.Data).Grupo then
|
|
||||||
Exit;
|
|
||||||
if Marca then
|
|
||||||
begin
|
|
||||||
if PTreeControl(TreeControls.Selected.Data).Selecionado < 2 then
|
|
||||||
if PTreeControl(TreeControls.Selected.Data).Selecionado = 0 then
|
|
||||||
PTreeControl(TreeControls.Selected.Data).Selecionado := 1
|
|
||||||
else
|
|
||||||
PTreeControl(TreeControls.Selected.Data).Selecionado := 0;
|
|
||||||
TreeControls.Selected.ImageIndex := PTreeControl(TreeControls.Selected.Data).Selecionado;
|
|
||||||
TreeControls.Selected.SelectedIndex := PTreeAction(TreeControls.Selected.Data).Selecionado;
|
|
||||||
end;
|
|
||||||
TreeControls.Repaint;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeMenuClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if not FChangingTree then
|
|
||||||
TreeMenuItem(True);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.BtLiberaClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Atualiza(True);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.bCancelarClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Close;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.Atualiza(Selec: Boolean);
|
|
||||||
var
|
|
||||||
Contador: Integer;
|
|
||||||
Temp: Integer;
|
|
||||||
begin
|
|
||||||
if Selec then
|
|
||||||
Temp := 1
|
|
||||||
else
|
|
||||||
Temp := 0;
|
|
||||||
|
|
||||||
if PC.ActivePage = PageMenu then
|
|
||||||
begin
|
|
||||||
for Contador := 0 to TreeMenu.Items.Count - 1 do
|
|
||||||
if PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado < 2 then
|
|
||||||
begin
|
|
||||||
PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado := Temp;
|
|
||||||
TreeMenu.Items[Contador].ImageIndex := Temp;
|
|
||||||
TreeMenu.Items[Contador].SelectedIndex := Temp;
|
|
||||||
end;
|
|
||||||
TreeMenu.Repaint;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
if PC.ActivePage = PageAction then
|
|
||||||
begin
|
|
||||||
for Contador := 0 to TreeAction.Items.Count - 1 do
|
|
||||||
if not PTreeAction(TreeAction.Items[Contador].Data).Grupo then
|
|
||||||
if PTreeAction(TreeAction.Items[Contador].Data).Selecionado < 2 then
|
|
||||||
begin
|
|
||||||
PTreeAction(TreeAction.Items[Contador].Data).Selecionado := Temp;
|
|
||||||
TreeAction.Items[Contador].ImageIndex := Temp;
|
|
||||||
TreeAction.Items[Contador].SelectedIndex := Temp;
|
|
||||||
end;
|
|
||||||
TreeAction.Repaint;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin // tabContols
|
|
||||||
for Contador := 0 to TreeControls.Items.Count - 1 do
|
|
||||||
if not PTreeControl(TreeControls.Items[Contador].Data).Grupo then
|
|
||||||
if PTreeControl(TreeControls.Items[Contador].Data).Selecionado < 2 then
|
|
||||||
begin
|
|
||||||
PTreeControl(TreeControls.Items[Contador].Data).Selecionado := Temp;
|
|
||||||
TreeControls.Items[Contador].ImageIndex := Temp;
|
|
||||||
TreeControls.Items[Contador].SelectedIndex := Temp;
|
|
||||||
end;
|
|
||||||
TreeControls.Repaint;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.bAceptarClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
Contador: Integer;
|
|
||||||
begin
|
|
||||||
with FUserControl.TableRights do
|
|
||||||
begin
|
|
||||||
FUserControl.DataConnector.UCExecSQL('Delete from ' + TableName + ' Where ' + FieldUserID + ' = ' + IntToStr(FUser.ID) + ' and ' + FieldModule + ' = ' + QuotedStr(FUserControl.ApplicationID));
|
|
||||||
FUserControl.DataConnector.UCExecSQL('Delete from ' + TableName + 'EX Where ' + FieldUserID + ' = ' + IntToStr(FUser.ID) + ' and ' + FieldModule + ' = ' + QuotedStr(FUserControl.ApplicationID));
|
|
||||||
end;
|
|
||||||
|
|
||||||
for Contador := 0 to TreeMenu.Items.Count - 1 do
|
|
||||||
if PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado = 1 then
|
|
||||||
FUserControl.AddRight(FUser.ID, PTreeMenu(TreeMenu.Items[Contador].Data).MenuName);
|
|
||||||
|
|
||||||
for Contador := 0 to TreeAction.Items.Count - 1 do
|
|
||||||
if PTreeAction(TreeAction.Items[Contador].Data).Selecionado = 1 then
|
|
||||||
FUserControl.AddRight(FUser.ID, PTreeAction(TreeAction.Items[Contador].Data).MenuName);
|
|
||||||
|
|
||||||
//Extra Rights
|
|
||||||
for Contador := 0 to Pred(TreeControls.Items.Count) do
|
|
||||||
if PTreeControl(TreeControls.Items[Contador].Data).Selecionado = 1 then
|
|
||||||
FUserControl.AddRightEX(FUser.ID, FUserControl.ApplicationID, PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName);
|
|
||||||
|
|
||||||
Close;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.BtBloqueiaClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Atualiza(False);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.FormShow(Sender: TObject);
|
|
||||||
var
|
|
||||||
Contador: Integer;
|
|
||||||
Selec: Integer;
|
|
||||||
begin
|
|
||||||
Caption := 'Permisos para ' + FUser.USERNAME;
|
|
||||||
|
|
||||||
// Adcionado por Luiz
|
|
||||||
SetLength(FListaAction, 0);
|
|
||||||
SetLength(FListaMenu, 0);
|
|
||||||
SetLength(FListaControl, 0);
|
|
||||||
|
|
||||||
//carrega itens do menu, actions e controles
|
|
||||||
CarregaTreeviews;
|
|
||||||
|
|
||||||
// Exibe Permissoes do Usuario
|
|
||||||
for Contador := 0 to TreeAction.Items.Count - 1 do
|
|
||||||
begin
|
|
||||||
DSPermiss.First;
|
|
||||||
if DSPermiss.Locate('ObjName', PTreeAction(TreeAction.Items[Contador].Data).MenuName, []) then
|
|
||||||
Selec := 1
|
|
||||||
else
|
|
||||||
Selec := 0;
|
|
||||||
|
|
||||||
PTreeAction(TreeAction.Items[Contador].Data).Selecionado := Selec;
|
|
||||||
if not PTreeAction(TreeAction.Items[Contador].Data).Grupo then
|
|
||||||
begin
|
|
||||||
TreeAction.Items[Contador].ImageIndex := Selec;
|
|
||||||
TreeAction.Items[Contador].SelectedIndex := Selec;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
for Contador := 0 to TreeMenu.Items.Count - 1 do
|
|
||||||
begin
|
|
||||||
DSPermiss.First;
|
|
||||||
if DSPermiss.Locate('ObjName', PTreeMenu(TreeMenu.Items[Contador].Data).MenuName, []) then
|
|
||||||
Selec := 1
|
|
||||||
else
|
|
||||||
Selec := 0;
|
|
||||||
|
|
||||||
PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado := Selec;
|
|
||||||
TreeMenu.Items[Contador].ImageIndex := Selec;
|
|
||||||
TreeMenu.Items[Contador].SelectedIndex := Selec;
|
|
||||||
end;
|
|
||||||
|
|
||||||
//Extra Rights
|
|
||||||
for Contador := 0 to Pred(TreeControls.Items.Count) do
|
|
||||||
begin
|
|
||||||
DSPermissEX.First;
|
|
||||||
if DSPermissEX.Locate('FormName;ObjName', VarArrayOf([PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName]), []) then
|
|
||||||
Selec := 1
|
|
||||||
else
|
|
||||||
Selec := 0;
|
|
||||||
|
|
||||||
PTreeControl(TreeControls.Items[Contador].Data).Selecionado := Selec;
|
|
||||||
if not PTreeControl(TreeControls.Items[Contador].Data).Grupo then
|
|
||||||
begin
|
|
||||||
TreeControls.Items[Contador].ImageIndex := Selec;
|
|
||||||
TreeControls.Items[Contador].SelectedIndex := Selec;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// Exibe Permissoes do Perfil
|
|
||||||
if DSPerfil.Active then
|
|
||||||
begin
|
|
||||||
for Contador := 0 to TreeAction.Items.Count - 1 do
|
|
||||||
begin
|
|
||||||
DSPerfil.First;
|
|
||||||
if DSPerfil.Locate('ObjName', PTreeAction(TreeAction.Items[Contador].Data).MenuName, []) then
|
|
||||||
begin
|
|
||||||
Selec := 2;
|
|
||||||
PTreeAction(TreeAction.Items[Contador].Data).Selecionado := Selec;
|
|
||||||
if not PTreeAction(TreeAction.Items[Contador].Data).Grupo then
|
|
||||||
begin
|
|
||||||
TreeAction.Items[Contador].ImageIndex := Selec;
|
|
||||||
TreeAction.Items[Contador].SelectedIndex := Selec;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
for Contador := 0 to TreeMenu.Items.Count - 1 do
|
|
||||||
begin
|
|
||||||
DSPerfil.First;
|
|
||||||
if DSPerfil.Locate('ObjName', PTreeMenu(TreeMenu.Items[Contador].Data).MenuName, []) then
|
|
||||||
begin
|
|
||||||
Selec := 2;
|
|
||||||
PTreeMenu(TreeMenu.Items[Contador].Data).Selecionado := Selec;
|
|
||||||
TreeMenu.Items[Contador].ImageIndex := Selec;
|
|
||||||
TreeMenu.Items[Contador].SelectedIndex := Selec;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
//Extra Rights
|
|
||||||
for Contador := 0 to Pred(TreeControls.Items.Count) do
|
|
||||||
begin
|
|
||||||
DSPerfilEX.First;
|
|
||||||
if DSPerfilEX.Locate('FormName;ObjName', VarArrayOf([PTreeControl(TreeControls.Items[Contador].Data).FormName, PTreeControl(TreeControls.Items[Contador].Data).CompName]), []) then
|
|
||||||
begin
|
|
||||||
Selec := 2;
|
|
||||||
PTreeControl(TreeControls.Items[Contador].Data).Selecionado := Selec;
|
|
||||||
if not PTreeControl(TreeControls.Items[Contador].Data).Grupo then
|
|
||||||
begin
|
|
||||||
TreeControls.Items[Contador].ImageIndex := Selec;
|
|
||||||
TreeControls.Items[Contador].SelectedIndex := Selec;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TreeAction.Repaint;
|
|
||||||
TreeMenu.Repaint;
|
|
||||||
FChangingTree := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeActionClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if not FChangingTree then
|
|
||||||
TreeActionItem(True);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeControlsClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if not FChangingTree then
|
|
||||||
TreeControlItem(True);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeMenuCollapsing(Sender: TObject; Node: TTreeNode; var AllowCollapse: Boolean);
|
|
||||||
begin
|
|
||||||
if (Self.Showing) and (TTreeView(Sender).Focused) then
|
|
||||||
FChangingTree := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeMenuKeyPress(Sender: TObject; var Key: char);
|
|
||||||
begin
|
|
||||||
if Key = ' ' then
|
|
||||||
begin
|
|
||||||
TTreeView(Sender).OnClick(Sender);
|
|
||||||
Key := #0;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.TreeMenuMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
|
|
||||||
begin
|
|
||||||
FChangingTree := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorPermisosUsuario.FormDestroy(Sender: TObject);
|
|
||||||
var
|
|
||||||
Contador: Integer;
|
|
||||||
begin
|
|
||||||
// Adicionado por Luiz 18/01/06
|
|
||||||
if Assigned(DSPermiss) then
|
|
||||||
FreeAndNil(DSPermiss);
|
|
||||||
|
|
||||||
if Assigned(DSPermissEX) then
|
|
||||||
FreeAndNil(DSPermissEX);
|
|
||||||
|
|
||||||
if Assigned(DSPerfil) then
|
|
||||||
FreeAndNil(DSPerfil);
|
|
||||||
|
|
||||||
if Assigned(DSPerfilEX) then
|
|
||||||
FreeAndNil(DSPerfilEX);
|
|
||||||
|
|
||||||
if Assigned(FTempLista) then
|
|
||||||
FreeAndNil(FTempLista);
|
|
||||||
|
|
||||||
for Contador := 0 to High(FListaMenu) do
|
|
||||||
Dispose(FListaMenu[Contador]);
|
|
||||||
|
|
||||||
for Contador := 0 to High(FListaAction) do
|
|
||||||
Dispose(FListaAction[Contador]);
|
|
||||||
|
|
||||||
for Contador := 0 to High(FListaControl) do
|
|
||||||
Dispose(FListaControl[Contador]);
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
@ -1,139 +0,0 @@
|
|||||||
inherited fEditorUsuario: TfEditorUsuario
|
|
||||||
Caption = 'fEditorUsuario'
|
|
||||||
ExplicitWidth = 320
|
|
||||||
ExplicitHeight = 492
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
inherited TBXDock: TTBXDock
|
|
||||||
inherited tbxMain: TTBXToolbar
|
|
||||||
ExplicitWidth = 408
|
|
||||||
object TBXItem33: TTBXItem [7]
|
|
||||||
Action = actCambiarPassword
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited tbxMenu: TTBXToolbar
|
|
||||||
object TBXSubmenuItem2: TTBXSubmenuItem [4]
|
|
||||||
Caption = '&Herramientas'
|
|
||||||
object TBXItem7: TTBXItem
|
|
||||||
Action = actCambiarPassword
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited StatusBar: TStatusBar
|
|
||||||
Panels = <
|
|
||||||
item
|
|
||||||
Width = 200
|
|
||||||
end>
|
|
||||||
Visible = True
|
|
||||||
end
|
|
||||||
inline frViewUsuario1: TfrViewUsuario [3]
|
|
||||||
Left = 0
|
|
||||||
Top = 76
|
|
||||||
Width = 656
|
|
||||||
Height = 370
|
|
||||||
Align = alClient
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -11
|
|
||||||
Font.Name = 'Tahoma'
|
|
||||||
Font.Style = []
|
|
||||||
ParentFont = False
|
|
||||||
TabOrder = 3
|
|
||||||
ReadOnly = False
|
|
||||||
ExplicitLeft = 8
|
|
||||||
ExplicitTop = 8
|
|
||||||
ExplicitWidth = 656
|
|
||||||
ExplicitHeight = 370
|
|
||||||
inherited dxLayoutControlArticulo: TdxLayoutControl
|
|
||||||
Width = 656
|
|
||||||
LookAndFeel = dxLayoutOfficeLookAndFeel1
|
|
||||||
ExplicitWidth = 656
|
|
||||||
inherited PngSpeedButton3: TPngSpeedButton
|
|
||||||
Top = 84
|
|
||||||
ExplicitTop = 84
|
|
||||||
end
|
|
||||||
inherited eNombre: TcxDBTextEdit
|
|
||||||
Top = 30
|
|
||||||
ExplicitTop = 30
|
|
||||||
ExplicitWidth = 164
|
|
||||||
Width = 164
|
|
||||||
end
|
|
||||||
inherited eUsuario: TcxDBTextEdit
|
|
||||||
Top = 57
|
|
||||||
ExplicitTop = 57
|
|
||||||
ExplicitWidth = 108
|
|
||||||
Width = 108
|
|
||||||
end
|
|
||||||
inherited eMail: TcxDBHyperLinkEdit
|
|
||||||
Top = 84
|
|
||||||
Properties.Prefix = 'mailto:'
|
|
||||||
ExplicitTop = 84
|
|
||||||
end
|
|
||||||
inherited ePassword: TcxTextEdit
|
|
||||||
Top = 163
|
|
||||||
ExplicitTop = 163
|
|
||||||
ExplicitWidth = 121
|
|
||||||
Width = 121
|
|
||||||
end
|
|
||||||
inherited eConfirmarPassword: TcxTextEdit
|
|
||||||
Top = 190
|
|
||||||
ExplicitTop = 190
|
|
||||||
ExplicitWidth = 372
|
|
||||||
Width = 372
|
|
||||||
end
|
|
||||||
inherited cbPerfil: TcxComboBox
|
|
||||||
Top = 112
|
|
||||||
ExplicitTop = 112
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited EditorActionList: TActionList [4]
|
|
||||||
inherited actNuevo: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actModificar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actConfPagina: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actPrevisualizar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actImprimir: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object actCambiarPassword: TAction
|
|
||||||
Category = 'Herramientas'
|
|
||||||
Caption = 'Cambiar la contrase'#241'a...'
|
|
||||||
OnExecute = actCambiarPasswordExecute
|
|
||||||
OnUpdate = actCambiarPasswordUpdate
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited SmallImages: TPngImageList [5]
|
|
||||||
end
|
|
||||||
inherited LargeImages: TPngImageList [6]
|
|
||||||
end
|
|
||||||
inherited JvFormStorage: TJvFormStorage [7]
|
|
||||||
end
|
|
||||||
inherited JvAppRegistryStorage: TJvAppRegistryStorage [8]
|
|
||||||
end
|
|
||||||
inherited dsDataTable: TDADataSource
|
|
||||||
OnDataChange = dsDataTableDataChange
|
|
||||||
Top = 80
|
|
||||||
end
|
|
||||||
object dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList
|
|
||||||
Left = 336
|
|
||||||
Top = 160
|
|
||||||
object dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel
|
|
||||||
GroupOptions.CaptionOptions.Font.Charset = DEFAULT_CHARSET
|
|
||||||
GroupOptions.CaptionOptions.Font.Color = clWindowText
|
|
||||||
GroupOptions.CaptionOptions.Font.Height = -11
|
|
||||||
GroupOptions.CaptionOptions.Font.Name = 'Tahoma'
|
|
||||||
GroupOptions.CaptionOptions.Font.Style = [fsBold]
|
|
||||||
GroupOptions.CaptionOptions.TextColor = clHighlight
|
|
||||||
GroupOptions.CaptionOptions.UseDefaultFont = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,301 +0,0 @@
|
|||||||
unit uEditorUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Menus, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uEditorDBItem, JvAppStorage, JvAppRegistryStorage, DB, uDAInterfaces,
|
|
||||||
uDADataTable, JvComponentBase, JvFormPlacement, ImgList, PngImageList,
|
|
||||||
StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX, TB2Item,
|
|
||||||
TB2Dock, TB2Toolbar, pngimage, ExtCtrls, JvExControls, JvNavigationPane,
|
|
||||||
uIEditorUsuario, uUsuariosController, uCustomView, uViewBase, uViewUsuario,
|
|
||||||
uBizUsuarios, dxLayoutLookAndFeels;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorUsuario = class(TfEditorDBItem, IEditorUsuario)
|
|
||||||
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
|
|
||||||
dxLayoutOfficeLookAndFeel1: TdxLayoutOfficeLookAndFeel;
|
|
||||||
actCambiarPassword: TAction;
|
|
||||||
TBXSubmenuItem2: TTBXSubmenuItem;
|
|
||||||
TBXItem7: TTBXItem;
|
|
||||||
TBXItem33: TTBXItem;
|
|
||||||
frViewUsuario1: TfrViewUsuario;
|
|
||||||
procedure actEliminarUpdate(Sender: TObject);
|
|
||||||
procedure actCambiarPasswordExecute(Sender: TObject);
|
|
||||||
procedure actCambiarPasswordUpdate(Sender: TObject);
|
|
||||||
procedure actGuardarCerrarExecute(Sender: TObject);
|
|
||||||
procedure actGuardarExecute(Sender: TObject);
|
|
||||||
procedure dsDataTableDataChange(Sender: TObject; Field: TField);
|
|
||||||
procedure actRefrescarExecute(Sender: TObject);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
private
|
|
||||||
FController : IUsuariosController;
|
|
||||||
FUsuario : IBizUsuario;
|
|
||||||
FViewUsuario : IViewUsuario;
|
|
||||||
protected
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
|
|
||||||
function GetUsuario: IBizUsuario;
|
|
||||||
procedure SetUsuario(const Value: IBizUsuario);
|
|
||||||
|
|
||||||
procedure GuardarInterno;
|
|
||||||
procedure EliminarInterno;
|
|
||||||
procedure RefrescarInterno;
|
|
||||||
|
|
||||||
procedure ActualizarEstadoEditor;
|
|
||||||
procedure PonerTitulos(const ATitulo: string = '');
|
|
||||||
function GetViewUsuario: IViewUsuario;
|
|
||||||
procedure SetViewUsuario(const Value: IViewUsuario);
|
|
||||||
property ViewUsuario: IViewUsuario read GetViewUsuario write SetViewUsuario;
|
|
||||||
public
|
|
||||||
constructor Create(AOwner: TComponent); override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uDialogUtils, cxControls;
|
|
||||||
|
|
||||||
{ TfEditorUsuario }
|
|
||||||
|
|
||||||
var
|
|
||||||
FIDNuevoGuardado : Integer = -1;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.actCambiarPasswordExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FController.CambiarPassword(FUsuario.ID);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.actCambiarPasswordUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
(Sender as TAction).Enabled := not FUsuario.EsNuevo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.actEliminarUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if (Sender as TAction).Enabled then
|
|
||||||
(Sender as TAction).Enabled := (FUsuario.PRIVILEGED = 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.actGuardarCerrarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
if actGuardar.Execute then
|
|
||||||
actCerrar.Execute;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.actGuardarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actModificar.Enabled then
|
|
||||||
begin
|
|
||||||
GuardarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.actRefrescarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actRefrescar.Enabled then
|
|
||||||
begin
|
|
||||||
RefrescarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.ActualizarEstadoEditor;
|
|
||||||
begin
|
|
||||||
PonerTitulos;
|
|
||||||
if HayDatos then
|
|
||||||
begin
|
|
||||||
if (Self.Modified) and (dsDataTable.DataTable.State <> dsInsert) then
|
|
||||||
StatusBar.Panels[0].Text := ' Se han producido cambios'
|
|
||||||
else
|
|
||||||
StatusBar.Panels[0].Text := '';
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TfEditorUsuario.Create(AOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
//pgPaginas.ActivePageIndex := 0;
|
|
||||||
FViewUsuario := frViewUsuario1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TfEditorUsuario.Destroy;
|
|
||||||
begin
|
|
||||||
// Utilizar mejor OnClose;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.dsDataTableDataChange(Sender: TObject; Field: TField);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.EliminarInterno;
|
|
||||||
begin
|
|
||||||
if (Application.MessageBox('¿Desea borrar este usuario?', 'Atención', MB_YESNO) = IDYES) then
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if not FController.EliminarUsuario(FUsuario.ID) then
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
if Assigned(Parent) then
|
|
||||||
begin
|
|
||||||
StatusBar.Visible := False;
|
|
||||||
actCerrar.ShortCut := 0
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
StatusBar.Visible := True;
|
|
||||||
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorUsuario.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorUsuario.GetUsuario: IBizUsuario;
|
|
||||||
begin
|
|
||||||
Result := FUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorUsuario.GetViewUsuario: IViewUsuario;
|
|
||||||
begin
|
|
||||||
Result := FViewUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.GuardarInterno;
|
|
||||||
var
|
|
||||||
AMensaje : String;
|
|
||||||
AContinuar : Boolean;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if FUsuario.EsNuevo then
|
|
||||||
begin
|
|
||||||
if (frViewUsuario1.ePassword.Text <> frViewUsuario1.eConfirmarPassword.Text) then
|
|
||||||
raise Exception.Create('La contraseña no se confirmó correctamente' + #10#13 +
|
|
||||||
'Asegúrese de que la contraseña y su confirmación sean iguales.')
|
|
||||||
else
|
|
||||||
if not FController.ValidarPassword(frViewUsuario1.ePassword.Text,
|
|
||||||
frViewUsuario1.eUsuario.Text, frViewUsuario1.eNombre.Text, AMensaje) then
|
|
||||||
raise Exception.Create(AMensaje)
|
|
||||||
else begin
|
|
||||||
FUsuario.Edit;
|
|
||||||
FUsuario.PASS := frViewUsuario1.ePassword.Text;
|
|
||||||
FUsuario.Edit;
|
|
||||||
AContinuar := True;
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
AContinuar := True;
|
|
||||||
|
|
||||||
if AContinuar then
|
|
||||||
begin
|
|
||||||
if FController.GuardarUsuario(FUsuario) then
|
|
||||||
begin
|
|
||||||
FIDNuevoGuardado := FUsuario.ID;
|
|
||||||
FUsuario.DataTable.CancelUpdates;
|
|
||||||
Modified := False;
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.PonerTitulos(const ATitulo: string);
|
|
||||||
var
|
|
||||||
FTitulo : String;
|
|
||||||
begin
|
|
||||||
if Assigned(Usuario) then
|
|
||||||
begin
|
|
||||||
if Usuario.EsNuevo then
|
|
||||||
FTitulo := 'Nuevo usuario'
|
|
||||||
else
|
|
||||||
FTitulo := 'Usuario';
|
|
||||||
|
|
||||||
if Length(Usuario.USERNAME) > 0 then
|
|
||||||
FTitulo := FTitulo + ' - ' + Usuario.USERNAME;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if ReadOnly then
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo;
|
|
||||||
Caption := FTitulo;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.RefrescarInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (FIDNuevoGuardado > 0) and (FUsuario.ID <> FIDNuevoGuardado) then
|
|
||||||
begin
|
|
||||||
if (dsDataTable.DataTable.IsEmpty) or (not ModifiedQuery) then
|
|
||||||
Exit; // No continuar con el refresco
|
|
||||||
|
|
||||||
dsDataTable.DataTable.DisableControls; //<- No descomentar
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
dsDataTable.DataTable.First;
|
|
||||||
if dsDataTable.DataTable.Locate('ID', FIDNuevoGuardado, []) then
|
|
||||||
FIDNuevoGuardado := -1;
|
|
||||||
finally
|
|
||||||
dsDataTable.DataTable.EnableControls; //<- No descomentar
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.SetController(const Value: IUsuariosController);
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
if Assigned(FViewUsuario) and Assigned(FController) then
|
|
||||||
FViewUsuario.Controller := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.SetUsuario(const Value: IBizUsuario);
|
|
||||||
begin
|
|
||||||
FUsuario := Value;
|
|
||||||
dsDataTable.DataTable := FUsuario.DataTable;
|
|
||||||
|
|
||||||
if Assigned(FViewUsuario) and Assigned(Usuario) then
|
|
||||||
FViewUsuario.Usuario := Usuario;
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuario.SetViewUsuario(const Value: IViewUsuario);
|
|
||||||
begin
|
|
||||||
FViewUsuario := Value;
|
|
||||||
|
|
||||||
if Assigned(FViewUsuario) and Assigned(Usuario) then
|
|
||||||
FViewUsuario.Usuario := Usuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,92 +0,0 @@
|
|||||||
inherited fEditorUsuarios: TfEditorUsuarios
|
|
||||||
Caption = 'fEditorUsuarios'
|
|
||||||
ClientHeight = 493
|
|
||||||
ClientWidth = 840
|
|
||||||
ExplicitWidth = 848
|
|
||||||
ExplicitHeight = 520
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
|
||||||
Width = 840
|
|
||||||
ExplicitWidth = 840
|
|
||||||
inherited Image1: TImage
|
|
||||||
Left = 813
|
|
||||||
ExplicitLeft = 813
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited TBXDock: TTBXDock
|
|
||||||
Width = 840
|
|
||||||
ExplicitWidth = 840
|
|
||||||
inherited tbxMain: TTBXToolbar
|
|
||||||
ExplicitWidth = 494
|
|
||||||
object TBXItem39: TTBXItem [8]
|
|
||||||
Action = actCambiarPassword
|
|
||||||
end
|
|
||||||
object TBXItem35: TTBXItem [9]
|
|
||||||
Action = actControlAcceso
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited tbxMenu: TTBXToolbar
|
|
||||||
ExplicitWidth = 840
|
|
||||||
object TBXSubmenuItem2: TTBXSubmenuItem [4]
|
|
||||||
Caption = '&Herramientas'
|
|
||||||
object TBXItem38: TTBXItem
|
|
||||||
Action = actCambiarPassword
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited tbxFiltro: TTBXToolbar
|
|
||||||
Left = 494
|
|
||||||
DockPos = 346
|
|
||||||
Visible = False
|
|
||||||
ExplicitLeft = 494
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited StatusBar: TStatusBar
|
|
||||||
Top = 474
|
|
||||||
Width = 840
|
|
||||||
ExplicitTop = 474
|
|
||||||
ExplicitWidth = 840
|
|
||||||
end
|
|
||||||
inherited EditorActionList: TActionList
|
|
||||||
inherited actNuevo: TAction
|
|
||||||
Caption = 'Nuevo usuario'
|
|
||||||
OnExecute = actNuevoExecute
|
|
||||||
end
|
|
||||||
inherited actModificar: TAction
|
|
||||||
OnExecute = actModificarExecute
|
|
||||||
end
|
|
||||||
inherited actPrevisualizar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actImprimir: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
inherited actDuplicar: TAction
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object actCambiarPassword: TAction
|
|
||||||
Category = 'Herramientas'
|
|
||||||
Caption = 'Cambiar la contrase'#241'a...'
|
|
||||||
OnExecute = actCambiarPasswordExecute
|
|
||||||
OnUpdate = actCambiarPasswordUpdate
|
|
||||||
end
|
|
||||||
object actControlAcceso: TAction
|
|
||||||
Category = 'Herramientas'
|
|
||||||
Caption = 'Control de acceso...'
|
|
||||||
OnExecute = actControlAccesoExecute
|
|
||||||
OnUpdate = actControlAccesoUpdate
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited GridPopupMenu: TPopupMenu
|
|
||||||
object Cambiarlacontrasea1: TMenuItem [0]
|
|
||||||
Action = actCambiarPassword
|
|
||||||
end
|
|
||||||
object Controldeacceso1: TMenuItem [1]
|
|
||||||
Action = actControlAcceso
|
|
||||||
end
|
|
||||||
object N3: TMenuItem [2]
|
|
||||||
Caption = '-'
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,259 +0,0 @@
|
|||||||
unit uEditorUsuarios;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uEditorGridBase, Menus, JvAppStorage, JvAppRegistryStorage, DB,
|
|
||||||
uDAInterfaces, uDADataTable, JvComponentBase, JvFormPlacement, ImgList,
|
|
||||||
PngImageList, StdActns, ActnList, ComCtrls, JvExComCtrls, JvStatusBar, TBX,
|
|
||||||
TB2ExtItems, TBXExtItems, TB2Item, TB2Dock, TB2Toolbar, pngimage, ExtCtrls,
|
|
||||||
JvExControls, JvNavigationPane, uCustomView, uViewBase, uViewGridBase,
|
|
||||||
uViewGrid, uViewUsuarios, uIEditorUsuarios, uUsuariosController,
|
|
||||||
uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
TfEditorUsuarios = class(TfEditorGridBase, IEditorUsuarios)
|
|
||||||
actCambiarPassword: TAction;
|
|
||||||
TBXSubmenuItem2: TTBXSubmenuItem;
|
|
||||||
TBXItem38: TTBXItem;
|
|
||||||
TBXItem39: TTBXItem;
|
|
||||||
Cambiarlacontrasea1: TMenuItem;
|
|
||||||
actControlAcceso: TAction;
|
|
||||||
Controldeacceso1: TMenuItem;
|
|
||||||
N3: TMenuItem;
|
|
||||||
TBXItem35: TTBXItem;
|
|
||||||
procedure actEliminarUpdate(Sender: TObject);
|
|
||||||
procedure actCambiarPasswordUpdate(Sender: TObject);
|
|
||||||
procedure actCambiarPasswordExecute(Sender: TObject);
|
|
||||||
procedure actNuevoExecute(Sender: TObject);
|
|
||||||
procedure actEliminarExecute(Sender: TObject);
|
|
||||||
procedure actModificarExecute(Sender: TObject);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
procedure actControlAccesoExecute(Sender: TObject);
|
|
||||||
procedure actControlAccesoUpdate(Sender: TObject);
|
|
||||||
private
|
|
||||||
FUsuarios : IBizUsuario;
|
|
||||||
FController : IUsuariosController;
|
|
||||||
protected
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
|
|
||||||
function GetUsuarios: IBizUsuario;
|
|
||||||
procedure SetUsuarios(const Value: IBizUsuario);
|
|
||||||
|
|
||||||
procedure ActualizarEstadoEditor;
|
|
||||||
procedure NuevoInterno;
|
|
||||||
procedure EliminarInterno;
|
|
||||||
procedure ModificarInterno;
|
|
||||||
procedure ImprimirInterno;
|
|
||||||
procedure PrevisualizarInterno;
|
|
||||||
procedure DuplicarInterno;
|
|
||||||
|
|
||||||
//Si queremos crear otra vista para el editor heredado solo tendriamos que
|
|
||||||
//sobreescribir este metodo
|
|
||||||
procedure AsignarVista; virtual;
|
|
||||||
public
|
|
||||||
procedure PonerTitulos(const ATitulo: string = '');
|
|
||||||
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
constructor Create(AOwner: TComponent); override;
|
|
||||||
destructor Destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uDialogUtils;
|
|
||||||
|
|
||||||
{ TfEditorUsuarios }
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actCambiarPasswordExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FController.CambiarPassword(FUsuarios.ID);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actCambiarPasswordUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if (Sender as TAction).Enabled then
|
|
||||||
(Sender as TAction).Enabled := HayDatos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actControlAccesoExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FController.AdministrarAccesos(FUsuarios);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actControlAccesoUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if (Sender as TAction).Enabled then
|
|
||||||
(Sender as TAction).Enabled := HayDatos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actEliminarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actEliminar.Enabled then
|
|
||||||
begin
|
|
||||||
EliminarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actEliminarUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if (Sender as TAction).Enabled then
|
|
||||||
(Sender as TAction).Enabled := (FUsuarios.PRIVILEGED = 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actModificarExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actModificar.Enabled then
|
|
||||||
begin
|
|
||||||
ModificarInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.actNuevoExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if actNuevo.Enabled then
|
|
||||||
begin
|
|
||||||
NuevoInterno;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.ActualizarEstadoEditor;
|
|
||||||
begin
|
|
||||||
PonerTitulos;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.AsignarVista;
|
|
||||||
begin
|
|
||||||
ViewGrid := CreateView(TfrViewUsuarios) as IViewUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TfEditorUsuarios.Create(AOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
AsignarVista;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TfEditorUsuarios.Destroy;
|
|
||||||
begin
|
|
||||||
FUsuarios := NIL;
|
|
||||||
FController := NIl;
|
|
||||||
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.DuplicarInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.EliminarInterno;
|
|
||||||
begin
|
|
||||||
if (ShowConfirmMessage('Eliminar un usuario', Format('¿Desea borrar el usuario %s?', [FUsuarios.USERNAME])) = IDYES) then
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
//Para que en el caso de no poderse realizar la operación se refresquen
|
|
||||||
//los datos y no nos permita eliminar un registro a la segunda
|
|
||||||
FController.EliminarUsuario(FUsuarios.ID);
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ActualizarEstadoEditor;
|
|
||||||
if Assigned(Parent) then
|
|
||||||
begin
|
|
||||||
StatusBar.Visible := False;
|
|
||||||
actCerrar.ShortCut := 0
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
StatusBar.Visible := True;
|
|
||||||
actCerrar.ShortCut := ShortCut(VK_ESCAPE, []);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorUsuarios.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfEditorUsuarios.GetUsuarios: IBizUsuario;
|
|
||||||
begin
|
|
||||||
Result := FUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.ImprimirInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.ModificarInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FController.VerUsuario(FUsuarios.ID);
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.NuevoInterno;
|
|
||||||
var
|
|
||||||
ANuevoUsuario : IBizUsuario;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
ANuevoUsuario := FController.NuevoUsuario;
|
|
||||||
FController.VerUsuario(ANuevoUsuario);
|
|
||||||
actRefrescar.Execute;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.PonerTitulos(const ATitulo: string);
|
|
||||||
var
|
|
||||||
FTitulo : String;
|
|
||||||
begin
|
|
||||||
FTitulo := 'Lista de usuarios';
|
|
||||||
|
|
||||||
if ReadOnly then
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
Caption := FTitulo + ' (NO MODIFICABLE)';
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
JvNavPanelHeader.Caption := FTitulo;
|
|
||||||
Caption := FTitulo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.PrevisualizarInterno;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
//
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.SetController(const Value: IUsuariosController);
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorUsuarios.SetUsuarios(const Value: IBizUsuario);
|
|
||||||
begin
|
|
||||||
FUsuarios := Value;
|
|
||||||
dsDataTable.DataTable := FUsuarios.DataTable;
|
|
||||||
if Assigned(ViewGrid) then
|
|
||||||
(ViewGrid as IViewUsuarios).Usuarios := FUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
unit uUsuariosViewRegister;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
procedure RegisterViews;
|
|
||||||
procedure UnregisterViews;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
uEditorRegistryUtils, uEditorLogin, Dialogs, uEditorUsuario, uEditorUsuarios,
|
|
||||||
uEditorPerfilesUsuario, uEditorPerfilUsuario, uEditorPermisosUsuario;
|
|
||||||
|
|
||||||
procedure RegisterViews;
|
|
||||||
begin
|
|
||||||
EditorRegistry.RegisterClass(TfEditorLogin, 'EditorLogin');
|
|
||||||
EditorRegistry.RegisterClass(TfEditorUsuarios, 'EditorUsuarios');
|
|
||||||
EditorRegistry.RegisterClass(TfEditorUsuario, 'EditorUsuario');
|
|
||||||
EditorRegistry.RegisterClass(TfEditorPerfilesUsuario, 'EditorPerfilesUsuario');
|
|
||||||
EditorRegistry.RegisterClass(TfEditorPerfilUsuario, 'EditorPerfilUsuario');
|
|
||||||
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure UnregisterViews;
|
|
||||||
begin
|
|
||||||
EditorRegistry.UnRegisterClass(TfEditorLogin);
|
|
||||||
EditorRegistry.UnRegisterClass(TfEditorUsuarios);
|
|
||||||
EditorRegistry.UnRegisterClass(TfEditorUsuario);
|
|
||||||
EditorRegistry.UnRegisterClass(TfEditorPerfilesUsuario);
|
|
||||||
EditorRegistry.UnRegisterClass(TfEditorPerfilUsuario);
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
inherited frViewPerfilUsuario: TfrViewPerfilUsuario
|
|
||||||
Width = 509
|
|
||||||
Height = 122
|
|
||||||
ExplicitWidth = 509
|
|
||||||
ExplicitHeight = 122
|
|
||||||
object dxLayoutControlArticulo: TdxLayoutControl
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 509
|
|
||||||
Height = 113
|
|
||||||
Align = alTop
|
|
||||||
ParentBackground = True
|
|
||||||
TabOrder = 0
|
|
||||||
AutoContentSizes = [acsWidth]
|
|
||||||
DesignSize = (
|
|
||||||
509
|
|
||||||
113)
|
|
||||||
object eNombre: TcxDBTextEdit
|
|
||||||
Left = 68
|
|
||||||
Top = 28
|
|
||||||
Anchors = [akLeft, akTop, akRight]
|
|
||||||
DataBinding.DataField = 'USERNAME'
|
|
||||||
DataBinding.DataSource = dsUsuario
|
|
||||||
Style.BorderColor = clWindowFrame
|
|
||||||
Style.BorderStyle = ebs3D
|
|
||||||
Style.Color = 14745599
|
|
||||||
Style.HotTrack = False
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 0
|
|
||||||
Width = 164
|
|
||||||
end
|
|
||||||
object dxLayoutGroup1: TdxLayoutGroup
|
|
||||||
ShowCaption = False
|
|
||||||
Hidden = True
|
|
||||||
ShowBorder = False
|
|
||||||
object dxLayoutGroup2: TdxLayoutGroup
|
|
||||||
AutoAligns = []
|
|
||||||
AlignHorz = ahClient
|
|
||||||
AlignVert = avClient
|
|
||||||
Caption = 'Datos del perfil'
|
|
||||||
object dxLayoutControlArticuloItem3: TdxLayoutItem
|
|
||||||
AutoAligns = [aaVertical]
|
|
||||||
AlignHorz = ahClient
|
|
||||||
Caption = 'Nombre:'
|
|
||||||
Control = eNombre
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloGroup3: TdxLayoutGroup
|
|
||||||
Caption = 'New Group'
|
|
||||||
ShowCaption = False
|
|
||||||
LayoutDirection = ldHorizontal
|
|
||||||
ShowBorder = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object dsUsuario: TDADataSource
|
|
||||||
Left = 152
|
|
||||||
Top = 24
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,82 +0,0 @@
|
|||||||
unit uViewPerfilUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uViewBase, uUsuariosController, cxGraphics, ImgList, PngImageList,
|
|
||||||
dxLayoutControl, cxCurrencyEdit, uCustomView, cxControls, DB, uDAInterfaces,
|
|
||||||
uDADataTable, ActnList, cxCheckBox, cxDBEdit, cxMaskEdit, cxSpinEdit,
|
|
||||||
cxHyperLinkEdit, cxContainer, cxEdit, cxTextEdit, Buttons, PngSpeedButton,
|
|
||||||
uBizUsuarios, cxDropDownEdit;
|
|
||||||
|
|
||||||
type
|
|
||||||
IViewPerfilUsuario = interface(IViewBase)
|
|
||||||
['{555B4B64-BE32-4036-B741-DCC7AD80D7B9}']
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
|
|
||||||
function GetPerfilUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TfrViewPerfilUsuario = class(TfrViewBase, IViewPerfilUsuario)
|
|
||||||
dsUsuario: TDADataSource;
|
|
||||||
dxLayoutControlArticulo: TdxLayoutControl;
|
|
||||||
eNombre: TcxDBTextEdit;
|
|
||||||
dxLayoutGroup1: TdxLayoutGroup;
|
|
||||||
dxLayoutGroup2: TdxLayoutGroup;
|
|
||||||
dxLayoutControlArticuloItem3: TdxLayoutItem;
|
|
||||||
dxLayoutControlArticuloGroup3: TdxLayoutGroup;
|
|
||||||
protected
|
|
||||||
FController: IUsuariosController;
|
|
||||||
FPerfilUsuario : IBizPerfilUsuario;
|
|
||||||
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
|
|
||||||
function GetPerfilUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
public
|
|
||||||
property PerfilUsuario: IBizPerfilUsuario read GetPerfilUsuario write SetPerfilUsuario;
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
|
|
||||||
{ TfrViewUsuario }
|
|
||||||
|
|
||||||
function TfrViewPerfilUsuario.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfrViewPerfilUsuario.GetPerfilUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := FPerfilUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewPerfilUsuario.SetController(const Value: IUsuariosController);
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewPerfilUsuario.SetPerfilUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
begin
|
|
||||||
FPerfilUsuario := Value;
|
|
||||||
|
|
||||||
if Assigned(FPerfilUsuario) then
|
|
||||||
dsUsuario.DataTable := FPerfilUsuario.DataTable
|
|
||||||
else begin
|
|
||||||
dsUsuario.DataTable := NIL;
|
|
||||||
FPerfilUsuario := NIL;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
inherited frViewPerfilesUsuario: TfrViewPerfilesUsuario
|
|
||||||
Width = 426
|
|
||||||
Height = 247
|
|
||||||
ExplicitWidth = 426
|
|
||||||
ExplicitHeight = 247
|
|
||||||
inherited cxGrid: TcxGrid
|
|
||||||
Width = 426
|
|
||||||
Height = 247
|
|
||||||
inherited cxGridView: TcxGridDBTableView
|
|
||||||
object cxGridViewID: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'ID'
|
|
||||||
Visible = False
|
|
||||||
BestFitMaxWidth = 20
|
|
||||||
Width = 20
|
|
||||||
end
|
|
||||||
object cxGridViewUSERNAME: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'USERNAME'
|
|
||||||
Width = 150
|
|
||||||
end
|
|
||||||
object cxGridViewTIPO: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'TIPO'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited dxComponentPrinter: TdxComponentPrinter
|
|
||||||
Left = 40
|
|
||||||
Top = 16
|
|
||||||
end
|
|
||||||
inherited dxPSEngineController1: TdxPSEngineController
|
|
||||||
Left = 304
|
|
||||||
Top = 168
|
|
||||||
end
|
|
||||||
inherited cxStyleRepository1: TcxStyleRepository
|
|
||||||
Left = 280
|
|
||||||
Top = 160
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,56 +0,0 @@
|
|||||||
unit uViewPerfilesUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
|
||||||
cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg,
|
|
||||||
dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
|
||||||
dxPSEdgePatterns, dxPgsDlg, dxPSCore, ImgList, PngImageList, ActnList,
|
|
||||||
cxGridCustomPopupMenu, cxGridPopupMenu,
|
|
||||||
uDAInterfaces, uDADataTable, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock,
|
|
||||||
cxGridLevel, cxClasses, cxControls, cxGridCustomView,
|
|
||||||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
|
|
||||||
uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
IViewPerfilesUsuario = interface(IViewGrid)
|
|
||||||
['{C6125F2F-5EDC-4019-BD5F-9AC9741F0F77}']
|
|
||||||
function GetPerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TfrViewPerfilesUsuario = class(TfrViewGrid, IViewPerfilesUsuario)
|
|
||||||
cxGridViewID: TcxGridDBColumn;
|
|
||||||
cxGridViewUSERNAME: TcxGridDBColumn;
|
|
||||||
cxGridViewTIPO: TcxGridDBColumn;
|
|
||||||
protected
|
|
||||||
FPerfiles : IBizPerfilUsuario;
|
|
||||||
function GetPerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
procedure SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
public
|
|
||||||
property PerfilesUsuario: IBizPerfilUsuario read GetPerfilesUsuario write SetPerfilesUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
{ TfrViewPerfilesUsuario }
|
|
||||||
|
|
||||||
function TfrViewPerfilesUsuario.GetPerfilesUsuario: IBizPerfilUsuario;
|
|
||||||
begin
|
|
||||||
Result := FPerfiles;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewPerfilesUsuario.SetPerfilesUsuario(const Value: IBizPerfilUsuario);
|
|
||||||
begin
|
|
||||||
FPerfiles := Value;
|
|
||||||
if Assigned(FPerfiles) then
|
|
||||||
dsDataSource.DataTable := FPerfiles.DataTable;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,300 +0,0 @@
|
|||||||
inherited frViewUsuario: TfrViewUsuario
|
|
||||||
Width = 509
|
|
||||||
Height = 275
|
|
||||||
OnCreate = CustomViewCreate
|
|
||||||
OnDestroy = CustomViewDestroy
|
|
||||||
ExplicitWidth = 509
|
|
||||||
ExplicitHeight = 275
|
|
||||||
object dxLayoutControlArticulo: TdxLayoutControl
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 509
|
|
||||||
Height = 249
|
|
||||||
Align = alTop
|
|
||||||
ParentBackground = True
|
|
||||||
TabOrder = 0
|
|
||||||
AutoContentSizes = [acsWidth]
|
|
||||||
DesignSize = (
|
|
||||||
509
|
|
||||||
249)
|
|
||||||
object PngSpeedButton3: TPngSpeedButton
|
|
||||||
Left = 335
|
|
||||||
Top = 82
|
|
||||||
Width = 23
|
|
||||||
Height = 22
|
|
||||||
PngImage.Data = {
|
|
||||||
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
|
||||||
610000000970485973000017120000171201679FD252000001964944415478DA
|
|
||||||
63FCFFFF3F03232323033A58BCE9F87F647EAC9F258622B05E6C068034873B8A
|
|
||||||
80D92019C62F8F194C1356339CDF399D91A0014B361FFB1FE6208AA299E1F323
|
|
||||||
306D52F90CC5100C03566E3DFC3FD04E02A2F9F727064690462066006A66FC02
|
|
||||||
64FFFAC8603451096E088A01CB361FFDFF8F819981183077D11A86FDAB7B18E1
|
|
||||||
062CDD7CE27F14573FC3B2EF450CD13E86181ABE7DFFCDF0F5DB6F866FDFFE30
|
|
||||||
1CB97897218AB38FC1B85B98E1DC8E698C600396000D8861696058FAB7116CC0
|
|
||||||
94C5FBB0DAEC6CAECF70EED6238668E67AB057500CF8F0E10383A0A0208A0B90
|
|
||||||
6D06B1BF01D9379E3C67387AFE09C389A37BD15CE06B01B47907434EAC13C3EF
|
|
||||||
3F7F19662E3F8862BB898606C3EFDFFF1896EF3DCFA0A5C0CD306FE9265403FC
|
|
||||||
9D20362F5CB71F4CE7C47AA01890D5BC164C7716F980D56018606BAC0656B079
|
|
||||||
EF2986F82047AC6150DEB785A13CD911AC06C300234D05867DC72F30B8D818E1
|
|
||||||
8DC2494B0E63F702281075D455884A07576EDEC134404A5480E1DAED07441900
|
|
||||||
021806F44D5D44B46618801B400900007F4518F05E90AAF20000000049454E44
|
|
||||||
AE426082}
|
|
||||||
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
|
|
||||||
end
|
|
||||||
object eNombre: TcxDBTextEdit
|
|
||||||
Left = 135
|
|
||||||
Top = 28
|
|
||||||
Anchors = [akLeft, akTop, akRight]
|
|
||||||
DataBinding.DataField = 'USERNAME'
|
|
||||||
DataBinding.DataSource = dsUsuario
|
|
||||||
Style.BorderColor = clWindowFrame
|
|
||||||
Style.BorderStyle = ebs3D
|
|
||||||
Style.Color = 14745599
|
|
||||||
Style.HotTrack = False
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 0
|
|
||||||
Width = 164
|
|
||||||
end
|
|
||||||
object eUsuario: TcxDBTextEdit
|
|
||||||
Left = 135
|
|
||||||
Top = 55
|
|
||||||
DataBinding.DataField = 'LOGIN'
|
|
||||||
DataBinding.DataSource = dsUsuario
|
|
||||||
Style.BorderColor = clWindowFrame
|
|
||||||
Style.BorderStyle = ebs3D
|
|
||||||
Style.Color = 14745599
|
|
||||||
Style.HotTrack = False
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 1
|
|
||||||
Width = 108
|
|
||||||
end
|
|
||||||
object eMail: TcxDBHyperLinkEdit
|
|
||||||
Left = 135
|
|
||||||
Top = 82
|
|
||||||
DataBinding.DataField = 'EMAIL'
|
|
||||||
DataBinding.DataSource = dsUsuario
|
|
||||||
Properties.ValidateOnEnter = True
|
|
||||||
Properties.OnEditValueChanged = eMailPropertiesEditValueChanged
|
|
||||||
Properties.OnValidate = eMailPropertiesValidate
|
|
||||||
Properties.Prefix = 'mailto:'
|
|
||||||
Style.BorderColor = clWindowFrame
|
|
||||||
Style.BorderStyle = ebs3D
|
|
||||||
Style.HotTrack = False
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 2
|
|
||||||
Width = 194
|
|
||||||
end
|
|
||||||
object ePassword: TcxTextEdit
|
|
||||||
Left = 135
|
|
||||||
Top = 167
|
|
||||||
Properties.EchoMode = eemPassword
|
|
||||||
Properties.PasswordChar = '*'
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 4
|
|
||||||
Width = 121
|
|
||||||
end
|
|
||||||
object eConfirmarPassword: TcxTextEdit
|
|
||||||
Left = 135
|
|
||||||
Top = 194
|
|
||||||
Properties.EchoMode = eemPassword
|
|
||||||
Properties.PasswordChar = '*'
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 5
|
|
||||||
Width = 372
|
|
||||||
end
|
|
||||||
object cbPerfil: TcxComboBox
|
|
||||||
Left = 135
|
|
||||||
Top = 110
|
|
||||||
Properties.DropDownListStyle = lsEditFixedList
|
|
||||||
Properties.ImmediatePost = True
|
|
||||||
Properties.ImmediateUpdateText = True
|
|
||||||
Properties.PostPopupValueOnTab = True
|
|
||||||
Properties.OnValidate = cbPerfilPropertiesValidate
|
|
||||||
Style.LookAndFeel.Kind = lfStandard
|
|
||||||
Style.LookAndFeel.NativeStyle = True
|
|
||||||
StyleDisabled.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleDisabled.LookAndFeel.NativeStyle = True
|
|
||||||
StyleFocused.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleFocused.LookAndFeel.NativeStyle = True
|
|
||||||
StyleHot.LookAndFeel.Kind = lfStandard
|
|
||||||
StyleHot.LookAndFeel.NativeStyle = True
|
|
||||||
TabOrder = 3
|
|
||||||
Width = 194
|
|
||||||
end
|
|
||||||
object dxLayoutGroup1: TdxLayoutGroup
|
|
||||||
ShowCaption = False
|
|
||||||
Hidden = True
|
|
||||||
ShowBorder = False
|
|
||||||
object dxLayoutGroup2: TdxLayoutGroup
|
|
||||||
AutoAligns = []
|
|
||||||
AlignHorz = ahClient
|
|
||||||
AlignVert = avClient
|
|
||||||
Caption = 'Datos del usuario'
|
|
||||||
object dxLayoutControlArticuloItem3: TdxLayoutItem
|
|
||||||
AutoAligns = [aaVertical]
|
|
||||||
AlignHorz = ahClient
|
|
||||||
Caption = 'Nombre completo:'
|
|
||||||
Control = eNombre
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloItem8: TdxLayoutItem
|
|
||||||
AutoAligns = [aaVertical]
|
|
||||||
AlignHorz = ahClient
|
|
||||||
Caption = 'Usuario:'
|
|
||||||
Control = eUsuario
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloGroup2: TdxLayoutGroup
|
|
||||||
ShowCaption = False
|
|
||||||
Hidden = True
|
|
||||||
LayoutDirection = ldHorizontal
|
|
||||||
ShowBorder = False
|
|
||||||
object dxLayoutControlArticuloItem4: TdxLayoutItem
|
|
||||||
AutoAligns = [aaVertical]
|
|
||||||
Caption = 'Correo electr'#243'nico'
|
|
||||||
Control = eMail
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloItem5: TdxLayoutItem
|
|
||||||
ShowCaption = False
|
|
||||||
Control = PngSpeedButton3
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloItem1: TdxLayoutItem
|
|
||||||
AutoAligns = [aaVertical]
|
|
||||||
Caption = 'Perfil de usuario:'
|
|
||||||
Control = cbPerfil
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloGroup5: TdxLayoutGroup
|
|
||||||
Caption = 'Seguridad'
|
|
||||||
object dxLayoutControlArticuloItem11: TdxLayoutItem
|
|
||||||
Caption = 'Contrase'#241'a:'
|
|
||||||
Control = ePassword
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloItem12: TdxLayoutItem
|
|
||||||
Caption = 'Confirmar contrase'#241'a:'
|
|
||||||
Control = eConfirmarPassword
|
|
||||||
ControlOptions.ShowBorder = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object dxLayoutControlArticuloGroup3: TdxLayoutGroup
|
|
||||||
Caption = 'New Group'
|
|
||||||
ShowCaption = False
|
|
||||||
LayoutDirection = ldHorizontal
|
|
||||||
ShowBorder = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object ActionList1: TActionList
|
|
||||||
Images = SmallImages
|
|
||||||
Left = 72
|
|
||||||
Top = 48
|
|
||||||
object actMandarCorreo: TAction
|
|
||||||
Caption = 'Mandar un correo'
|
|
||||||
ImageIndex = 0
|
|
||||||
OnExecute = actMandarCorreoExecute
|
|
||||||
OnUpdate = actMandarCorreoUpdate
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object dsUsuario: TDADataSource
|
|
||||||
Left = 104
|
|
||||||
Top = 48
|
|
||||||
end
|
|
||||||
object SmallImages: TPngImageList
|
|
||||||
PngImages = <
|
|
||||||
item
|
|
||||||
PngImage.Data = {
|
|
||||||
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
|
||||||
610000000970485973000017120000171201679FD252000001EB4944415478DA
|
|
||||||
A5D34B68135114C6F1FF746692462D24D5A8F5B52B81B448501475E142D4EAA2
|
|
||||||
3420E8C68A0A45345BC19DE24A74D50AE2424A11041105DD28A8881411174A70
|
|
||||||
E58BA4149A1A0D8D1D9B669E997B9D14B1A44491E6C2D9DDF3BB1F877B94DB8F
|
|
||||||
5E4B5A384A1D3831B06759CDDB0E9D5B04865FD9CD6F49C95A374B4ADC20AAE4
|
|
||||||
9936B6F244CF70299DFA3F40F5AB1C74CEB225FE1C654E4796DA7963A6D977F2
|
|
||||||
FABF81E061EAC3D1EC0247C531A27A017E846026CC844890CC3CFE3B506F1641
|
|
||||||
D9025CCFA4DF384FD27F419BA1231C9D67917ED267AE3507A414E4BF8DD3B1AA
|
|
||||||
07A97562F92A31EB037B8D313658137CD292DC5D719A7B83C9E640AEF892F1DC
|
|
||||||
454A5FABEC4E5D21BEBE0FD397411217E15599911D547C8DEC60A411B8FC34C7
|
|
||||||
C3F7C71710BD73927CB686E785D87FE01D22483267FDC45156620A0DAB069F4F
|
|
||||||
B53702A9ABBB08AF2E20DB7C1CB386517698FE52A56BE31136272EF0F16D1F44
|
|
||||||
7610EF7D802554A68696003B6F6D42517DAC6A0D3B006CCB67B6686356248944
|
|
||||||
0F8635C9F7A90A91F800E1EE51CA99D81260B40B27C8F607307DECF91AF38687
|
|
||||||
A6AB74A7A2940A26E5A28B164FE38CDC67FBE1CC22D03BB226007E2708202700
|
|
||||||
5CAB5E62E14344D785084734664B0EBE8CE18D951A81967661F8E69DE56FA394
|
|
||||||
2D6D33BF00C89C2C72EBA3BC190000000049454E44AE426082}
|
|
||||||
Name = 'PngImage0'
|
|
||||||
Background = clWindow
|
|
||||||
end
|
|
||||||
item
|
|
||||||
PngImage.Data = {
|
|
||||||
89504E470D0A1A0A0000000D49484452000000100000001008060000001FF3FF
|
|
||||||
61000000097048597300000AEB00000AEB01828B0D5A000002854944415478DA
|
|
||||||
A5935D48536118C7FFAFDB8CCD557E7F34B33167F9119617A91596495D781304
|
|
||||||
451021A651362821B1ABA49B6EA4460961D88542055D84DD6545415992174994
|
|
||||||
9625CC8F9C329D9B5F3BE9CED9D9797BCEA1C932A3A0079EC3CBE13CBFE7FF7F
|
|
||||||
9FF330CE39FE2798FAB80BA4E61559EB2551E67B07279AE8D51FA98F2CC99546
|
|
||||||
031A3D6E5FF329993F631D80B52227A6D7929F9BAEA459D1D73BE8DC3330D6B8
|
|
||||||
1AD206641414DA5A6224E1E8ECA47779660955D532EF642F1371BD74331A14FA
|
|
||||||
9C27A4439F5D88777DAE1B65FD230D11485786B9363D65FD35C1EB4B9817427E
|
|
||||||
9F80C335C05BD53E23B2A934132FB23662B71406C2B14698F38AF0E9EB9473E8
|
|
||||||
E3C8655BD686D6F858A5DA3F27B04511E37E0195B5C0A00AD6003FE5259758F0
|
|
||||||
3AD1843C15125218CCB6AD707FF34EAC93973217041154ECF608D8770E188BD8
|
|
||||||
5A01A8A1DEC5F60CF4980CB0A890E8A47AFFF477EC3F037C8EBE975F006ADC37
|
|
||||||
60A7351E3D061DE222C522A5270047AD82DBAB27B21AC09EDA373525E9A52BCB
|
|
||||||
7E5F4CB4822509BE80848AB3C0C09A806380EE7CA1BDC55EB4CDE17AF2984932
|
|
||||||
75A60CCA088739742A84CE1E49C1010730F41BA03B27CD595C517CB1FFF92B04
|
|
||||||
E6035AF142101DCB12DA743AB413243FA468331D0F01E51780D1154057AAF148
|
|
||||||
D92E7BE794778E8DB92634C901116FA6451CAA27214EC06802AE5227AA839ED2
|
|
||||||
45A0729AC6A406182DD9329C10A7B7F57D18D63A93DF99D92076905F4FB4DF56
|
|
||||||
A08C20ED9476027CD1209C7BD9FBDC947BC1C0E2C9596A4B003E27E2F8E9301E
|
|
||||||
AEB507B700334968A6631D019C759C5F627780822413BA194312CDFB41958C13
|
|
||||||
7FDB4052739000430ECEDD913F313B568F9B8B326AC8F7CCBFAEB27A073F0058
|
|
||||||
5538F0EAB25B380000000049454E44AE426082}
|
|
||||||
Name = 'PngImage1'
|
|
||||||
Background = clWindow
|
|
||||||
end>
|
|
||||||
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
|
|
||||||
Left = 43
|
|
||||||
Top = 48
|
|
||||||
Bitmap = {}
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,210 +0,0 @@
|
|||||||
unit uViewUsuario;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uViewBase, uUsuariosController, cxGraphics, ImgList, PngImageList,
|
|
||||||
dxLayoutControl, cxCurrencyEdit, uCustomView, cxControls, DB, uDAInterfaces,
|
|
||||||
uDADataTable, ActnList, cxCheckBox, cxDBEdit, cxMaskEdit, cxSpinEdit,
|
|
||||||
cxHyperLinkEdit, cxContainer, cxEdit, cxTextEdit, Buttons, PngSpeedButton,
|
|
||||||
uBizUsuarios, cxDropDownEdit, ExtCtrls;
|
|
||||||
|
|
||||||
type
|
|
||||||
IViewUsuario = interface(IViewBase)
|
|
||||||
['{E47D5136-A50C-4757-9352-4745518A899D}']
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
|
|
||||||
function GetUsuario: IBizUsuario;
|
|
||||||
procedure SetUsuario(const Value: IBizUsuario);
|
|
||||||
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TfrViewUsuario = class(TfrViewBase, IViewUsuario)
|
|
||||||
ActionList1: TActionList;
|
|
||||||
dsUsuario: TDADataSource;
|
|
||||||
dxLayoutControlArticulo: TdxLayoutControl;
|
|
||||||
eNombre: TcxDBTextEdit;
|
|
||||||
eUsuario: TcxDBTextEdit;
|
|
||||||
dxLayoutGroup1: TdxLayoutGroup;
|
|
||||||
dxLayoutGroup2: TdxLayoutGroup;
|
|
||||||
dxLayoutControlArticuloItem3: TdxLayoutItem;
|
|
||||||
dxLayoutControlArticuloItem8: TdxLayoutItem;
|
|
||||||
dxLayoutControlArticuloGroup3: TdxLayoutGroup;
|
|
||||||
SmallImages: TPngImageList;
|
|
||||||
dxLayoutControlArticuloItem4: TdxLayoutItem;
|
|
||||||
eMail: TcxDBHyperLinkEdit;
|
|
||||||
dxLayoutControlArticuloItem5: TdxLayoutItem;
|
|
||||||
PngSpeedButton3: TPngSpeedButton;
|
|
||||||
actMandarCorreo: TAction;
|
|
||||||
dxLayoutControlArticuloGroup2: TdxLayoutGroup;
|
|
||||||
ePassword: TcxTextEdit;
|
|
||||||
dxLayoutControlArticuloItem11: TdxLayoutItem;
|
|
||||||
dxLayoutControlArticuloItem12: TdxLayoutItem;
|
|
||||||
eConfirmarPassword: TcxTextEdit;
|
|
||||||
dxLayoutControlArticuloGroup5: TdxLayoutGroup;
|
|
||||||
cbPerfil: TcxComboBox;
|
|
||||||
dxLayoutControlArticuloItem1: TdxLayoutItem;
|
|
||||||
procedure actMandarCorreoExecute(Sender: TObject);
|
|
||||||
procedure actMandarCorreoUpdate(Sender: TObject);
|
|
||||||
procedure cbPerfilPropertiesValidate(Sender: TObject;
|
|
||||||
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
procedure CustomViewCreate(Sender: TObject);
|
|
||||||
procedure CustomViewDestroy(Sender: TObject);
|
|
||||||
procedure eMailPropertiesEditValueChanged(Sender: TObject);
|
|
||||||
procedure eMailPropertiesValidate(Sender: TObject;
|
|
||||||
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
protected
|
|
||||||
FController: IUsuariosController;
|
|
||||||
FUsuario : IBizUsuario;
|
|
||||||
FListaPerfiles : TStringList;
|
|
||||||
|
|
||||||
function GetController : IUsuariosController;
|
|
||||||
procedure SetController (const Value : IUsuariosController);
|
|
||||||
|
|
||||||
function GetUsuario: IBizUsuario;
|
|
||||||
procedure SetUsuario(const Value: IBizUsuario);
|
|
||||||
public
|
|
||||||
property Usuario: IBizUsuario read GetUsuario write SetUsuario;
|
|
||||||
property Controller : IUsuariosController read GetController write SetController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
type
|
|
||||||
THackcxDBHyperLinkEdit = class(TcxDBHyperLinkEdit);
|
|
||||||
|
|
||||||
{ TfrViewUsuario }
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.actMandarCorreoExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
THackcxDBHyperLinkEdit(eMail).DoStart;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.actMandarCorreoUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
(Sender as TAction).Enabled := (Length(eMail.Text) > 0)
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.cbPerfilPropertiesValidate(Sender: TObject;
|
|
||||||
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
var
|
|
||||||
AIndex : integer;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if Assigned(FUsuario) and FUsuario.Active then
|
|
||||||
begin
|
|
||||||
if DisplayValue = cbPerfil.Properties.Items[0] then
|
|
||||||
AIndex := 0
|
|
||||||
else
|
|
||||||
AIndex := StrToInt(FListaPerfiles.Values[DisplayValue]);
|
|
||||||
|
|
||||||
FUsuario.Edit;
|
|
||||||
FUsuario.ID_PERFIL := AIndex;
|
|
||||||
FUsuario.Post;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.CustomViewCreate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FListaPerfiles := NIL;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.CustomViewDestroy(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FreeAndNIL(FListaPerfiles);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.eMailPropertiesEditValueChanged(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if not VarIsNull((Sender as TcxDBHyperLinkEdit).EditValue) then
|
|
||||||
(Sender as TcxDBHyperLinkEdit).EditValue := StringReplace((Sender as TcxDBHyperLinkEdit).EditValue, (Sender as TcxDBHyperLinkEdit).Properties.Prefix, '', []);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.eMailPropertiesValidate(Sender: TObject;
|
|
||||||
var DisplayValue: Variant; var ErrorText: TCaption; var Error: Boolean);
|
|
||||||
begin
|
|
||||||
if not VarIsNull(DisplayValue) then
|
|
||||||
DisplayValue := StringReplace(DisplayValue, (Sender as TcxDBHyperLinkEdit).Properties.Prefix, '', []);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfrViewUsuario.GetController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
Result := FController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TfrViewUsuario.GetUsuario: IBizUsuario;
|
|
||||||
begin
|
|
||||||
Result := FUsuario;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.SetController(const Value: IUsuariosController);
|
|
||||||
var
|
|
||||||
i : integer;
|
|
||||||
begin
|
|
||||||
FController := Value;
|
|
||||||
|
|
||||||
if Assigned(FController) then
|
|
||||||
begin
|
|
||||||
FListaPerfiles := FController.DarListaPerfilesUsuario;
|
|
||||||
|
|
||||||
with cbPerfil.Properties.Items do
|
|
||||||
begin
|
|
||||||
BeginUpdate;
|
|
||||||
try
|
|
||||||
Clear;
|
|
||||||
Add('<Ninguno>');
|
|
||||||
for i := 0 to FListaPerfiles.Count - 1 do
|
|
||||||
Add(FListaPerfiles.Names[i]);
|
|
||||||
finally
|
|
||||||
EndUpdate;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuario.SetUsuario(const Value: IBizUsuario);
|
|
||||||
var
|
|
||||||
i : integer;
|
|
||||||
begin
|
|
||||||
FUsuario := Value;
|
|
||||||
|
|
||||||
if Assigned(FUsuario) then
|
|
||||||
begin
|
|
||||||
dsUsuario.DataTable := FUsuario.DataTable;
|
|
||||||
if FUsuario.EsNuevo then
|
|
||||||
begin
|
|
||||||
dxLayoutControlArticuloGroup5.Visible := True;
|
|
||||||
cbPerfil.Text := cbPerfil.Properties.Items[0];
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
dxLayoutControlArticuloGroup5.Visible := False;
|
|
||||||
|
|
||||||
cbPerfil.Text := cbPerfil.Properties.Items[0];
|
|
||||||
for i := 0 to FListaPerfiles.Count-1 do
|
|
||||||
begin
|
|
||||||
if FListaPerfiles.ValueFromIndex[i] = IntToStr(FUsuario.ID_PERFIL) then
|
|
||||||
begin
|
|
||||||
cbPerfil.Text := FListaPerfiles.Names[i];
|
|
||||||
break;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
dsUsuario.DataTable := NIL;
|
|
||||||
FUsuario := NIL;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,70 +0,0 @@
|
|||||||
inherited frViewUsuarios: TfrViewUsuarios
|
|
||||||
inherited cxGrid: TcxGrid
|
|
||||||
inherited cxGridView: TcxGridDBTableView
|
|
||||||
object cxGridViewID: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'ID'
|
|
||||||
Visible = False
|
|
||||||
BestFitMaxWidth = 20
|
|
||||||
Width = 20
|
|
||||||
end
|
|
||||||
object cxGridViewUSERNAME: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'USERNAME'
|
|
||||||
Width = 150
|
|
||||||
end
|
|
||||||
object cxGridViewLOGIN: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'LOGIN'
|
|
||||||
BestFitMaxWidth = 75
|
|
||||||
Width = 75
|
|
||||||
end
|
|
||||||
object cxGridViewPASS: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'PASS'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object cxGridViewPASSEXPIRED: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'PASSEXPIRED'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object cxGridViewBLOQUEADO: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'BLOQUEADO'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object cxGridViewEMAIL: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'EMAIL'
|
|
||||||
BestFitMaxWidth = 120
|
|
||||||
Width = 120
|
|
||||||
end
|
|
||||||
object cxGridViewUSERDAYSSUN: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'USERDAYSSUN'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object cxGridViewPRIVILEGED: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'PRIVILEGED'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object cxGridViewTIPO: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'TIPO'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
object cxGridViewID_PERFIL: TcxGridDBColumn
|
|
||||||
DataBinding.FieldName = 'ID_PERFIL'
|
|
||||||
Visible = False
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited dsDataSource: TDADataSource
|
|
||||||
Left = 360
|
|
||||||
Top = 136
|
|
||||||
end
|
|
||||||
inherited dxComponentPrinter: TdxComponentPrinter
|
|
||||||
Left = 328
|
|
||||||
Top = 136
|
|
||||||
end
|
|
||||||
inherited dxPSEngineController1: TdxPSEngineController
|
|
||||||
Left = 296
|
|
||||||
Top = 136
|
|
||||||
end
|
|
||||||
inherited cxStyleRepository1: TcxStyleRepository
|
|
||||||
Left = 264
|
|
||||||
Top = 136
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,64 +0,0 @@
|
|||||||
unit uViewUsuarios;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
||||||
Dialogs, uViewGrid, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
|
||||||
cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl, dxPSEngn, dxPrnPg,
|
|
||||||
dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider, dxPSFillPatterns,
|
|
||||||
dxPSEdgePatterns, dxPgsDlg, dxPSCore, ImgList, PngImageList, ActnList,
|
|
||||||
cxGridCustomPopupMenu, cxGridPopupMenu, dxPScxCommon,
|
|
||||||
uDAInterfaces, uDADataTable, TB2Item, TBX, TB2Toolbar, TBXDkPanels, TB2Dock,
|
|
||||||
cxGridLevel, cxClasses, cxControls, cxGridCustomView,
|
|
||||||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
|
|
||||||
uBizUsuarios;
|
|
||||||
|
|
||||||
type
|
|
||||||
IViewUsuarios = interface(IViewGrid)
|
|
||||||
['{2F46A4FC-6501-47B2-AAB3-28B552DDA455}']
|
|
||||||
function GetUsuarios: IBizUsuario;
|
|
||||||
procedure SetUsuarios(const Value: IBizUsuario);
|
|
||||||
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TfrViewUsuarios = class(TfrViewGrid, IViewUsuarios)
|
|
||||||
cxGridViewID: TcxGridDBColumn;
|
|
||||||
cxGridViewUSERNAME: TcxGridDBColumn;
|
|
||||||
cxGridViewLOGIN: TcxGridDBColumn;
|
|
||||||
cxGridViewPASS: TcxGridDBColumn;
|
|
||||||
cxGridViewPASSEXPIRED: TcxGridDBColumn;
|
|
||||||
cxGridViewBLOQUEADO: TcxGridDBColumn;
|
|
||||||
cxGridViewEMAIL: TcxGridDBColumn;
|
|
||||||
cxGridViewUSERDAYSSUN: TcxGridDBColumn;
|
|
||||||
cxGridViewPRIVILEGED: TcxGridDBColumn;
|
|
||||||
cxGridViewTIPO: TcxGridDBColumn;
|
|
||||||
cxGridViewID_PERFIL: TcxGridDBColumn;
|
|
||||||
protected
|
|
||||||
FUsuarios : IBizUsuario;
|
|
||||||
function GetUsuarios: IBizUsuario;
|
|
||||||
procedure SetUsuarios(const Value: IBizUsuario);
|
|
||||||
public
|
|
||||||
property Usuarios: IBizUsuario read GetUsuarios write SetUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
{ TfrViewUsuarios }
|
|
||||||
|
|
||||||
function TfrViewUsuarios.GetUsuarios: IBizUsuario;
|
|
||||||
begin
|
|
||||||
Result := FUsuarios;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfrViewUsuarios.SetUsuarios(const Value: IBizUsuario);
|
|
||||||
begin
|
|
||||||
FUsuarios := Value;
|
|
||||||
if Assigned(FUsuarios) then
|
|
||||||
dsDataSource.DataTable := FUsuarios.DataTable;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,335 +0,0 @@
|
|||||||
unit uAdminPV_App;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
SysUtils, Classes, Forms, uBizUsuarios, uControllerBase,
|
|
||||||
uUsuariosController, uHostManager;
|
|
||||||
|
|
||||||
type
|
|
||||||
TDoLoadModulesEvent = procedure;
|
|
||||||
TDoMainFormEvent = procedure;
|
|
||||||
|
|
||||||
IAppSplashForm = interface
|
|
||||||
['{9905DF57-4476-42E6-A7CD-B1479A84E220}']
|
|
||||||
procedure Show;
|
|
||||||
procedure Hide;
|
|
||||||
procedure Update;
|
|
||||||
function GetMensaje: String;
|
|
||||||
procedure SetMensaje(const AMensaje : String);
|
|
||||||
property Mensaje : String read GetMensaje write SetMensaje;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IAppAdminPV = interface
|
|
||||||
['{FB6A0F3C-C1D1-462D-AFD4-2A368F85E920}']
|
|
||||||
function GetMainForm: TCustomForm;
|
|
||||||
function GetUsuariosController: IUsuariosController;
|
|
||||||
function GetAppEXEName: String;
|
|
||||||
function GetAppName: String;
|
|
||||||
function GetAppVersion: String;
|
|
||||||
function GetAppFullName: String;
|
|
||||||
function GetUsuarioActivo: IBizUsuario;
|
|
||||||
function GetModuleManager : THostManager;
|
|
||||||
function GetTerminated: Boolean;
|
|
||||||
|
|
||||||
function GetLoadModulesEvent : TDoLoadModulesEvent;
|
|
||||||
procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent);
|
|
||||||
|
|
||||||
function GetDoMainFormEvent : TDoMainFormEvent;
|
|
||||||
procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent);
|
|
||||||
|
|
||||||
function GetAppSplashForm : IAppSplashForm;
|
|
||||||
procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm);
|
|
||||||
|
|
||||||
procedure ShowSplashForm;
|
|
||||||
procedure HideSplashForm;
|
|
||||||
|
|
||||||
procedure Run;
|
|
||||||
procedure Terminate;
|
|
||||||
|
|
||||||
property AppVersion : String read GetAppVersion;
|
|
||||||
property AppEXEName : String read GetAppEXEName;
|
|
||||||
property AppName : String read GetAppName;
|
|
||||||
property AppFullName : String read GetAppFullName;
|
|
||||||
property MainForm : TCustomForm read GetMainForm;
|
|
||||||
property UsuarioActivo : IBizUsuario read GetUsuarioActivo;
|
|
||||||
property UsuariosController : IUsuariosController read GetUsuariosController;
|
|
||||||
property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm;
|
|
||||||
property ModuleManager : THostManager read GetModuleManager;
|
|
||||||
property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent;
|
|
||||||
property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent;
|
|
||||||
property Terminated : Boolean read GetTerminated;
|
|
||||||
|
|
||||||
procedure ShowCapado;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
TAppAdminPV = class(TInterfacedObject, IAppAdminPV)
|
|
||||||
private
|
|
||||||
FUsuariosController: IUsuariosController;
|
|
||||||
FAppSplashForm : IAppSplashForm;
|
|
||||||
FHostManager : THostManager;
|
|
||||||
FTerminated : Boolean;
|
|
||||||
|
|
||||||
FDoMainFormEvent: TDoMainFormEvent;
|
|
||||||
FDoLoadModulesEvent: TDoMainFormEvent;
|
|
||||||
|
|
||||||
function GetMainForm: TCustomForm;
|
|
||||||
function GetUsuariosController: IUsuariosController;
|
|
||||||
function GetAppName: String;
|
|
||||||
function GetAppEXEName: String;
|
|
||||||
function GetAppVersion: String;
|
|
||||||
function GetAppFullName: String;
|
|
||||||
function GetUsuarioActivo: IBizUsuario;
|
|
||||||
function GetModuleManager : THostManager;
|
|
||||||
function GetTerminated: Boolean;
|
|
||||||
|
|
||||||
function GetLoadModulesEvent : TDoLoadModulesEvent;
|
|
||||||
procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent);
|
|
||||||
|
|
||||||
function GetDoMainFormEvent : TDoMainFormEvent;
|
|
||||||
procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent);
|
|
||||||
|
|
||||||
function GetAppSplashForm : IAppSplashForm;
|
|
||||||
procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm);
|
|
||||||
|
|
||||||
procedure AfterLoadModule(Sender: TObject; AModuleInfo: TModuleInfo);
|
|
||||||
procedure RegisterModule(AModuleInfo : TModuleInfo);
|
|
||||||
protected
|
|
||||||
procedure DoMainForm;
|
|
||||||
|
|
||||||
procedure CargarModulos;
|
|
||||||
procedure ShowSplashForm;
|
|
||||||
procedure HideSplashForm;
|
|
||||||
procedure UpdateSplashForm;
|
|
||||||
public
|
|
||||||
constructor Create; virtual;
|
|
||||||
destructor Destroy; override;
|
|
||||||
|
|
||||||
procedure Run;
|
|
||||||
procedure Terminate;
|
|
||||||
|
|
||||||
property AppVersion : String read GetAppVersion;
|
|
||||||
property AppEXEName : String read GetAppEXEName;
|
|
||||||
property AppName : String read GetAppName;
|
|
||||||
property AppFullName : String read GetAppFullName;
|
|
||||||
property MainForm : TCustomForm read GetMainForm;
|
|
||||||
property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm;
|
|
||||||
property UsuarioActivo : IBizUsuario read GetUsuarioActivo;
|
|
||||||
property UsuariosController : IUsuariosController read GetUsuariosController;
|
|
||||||
property ModuleManager : THostManager read GetModuleManager;
|
|
||||||
property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent;
|
|
||||||
property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent;
|
|
||||||
property Terminated : Boolean read GetTerminated;
|
|
||||||
|
|
||||||
procedure ShowCapado;
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
|
||||||
AppAdminPV : IAppAdminPV = nil;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
Dialogs, uDialogUtils, cxControls, uUsuariosViewRegister,
|
|
||||||
uAppInfoUtils;
|
|
||||||
|
|
||||||
|
|
||||||
procedure TAppAdminPV.CargarModulos;
|
|
||||||
begin
|
|
||||||
if not Assigned(FDoLoadModulesEvent) then
|
|
||||||
raise Exception.Create('Evento para la carga de los módulos de la aplicación no asignado (CargarModulos)');
|
|
||||||
|
|
||||||
FDoLoadModulesEvent();
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TAppAdminPV.Create;
|
|
||||||
begin
|
|
||||||
FTerminated := False;
|
|
||||||
FDoMainFormEvent := NIL;
|
|
||||||
FDoLoadModulesEvent := NIL;
|
|
||||||
FAppSplashForm := NIL;
|
|
||||||
FUsuariosController := NIL; // Se crea la primera vez que se usa
|
|
||||||
|
|
||||||
|
|
||||||
FHostManager := THostManager.Create(NIL);
|
|
||||||
with FHostManager do
|
|
||||||
begin
|
|
||||||
OnAfterLoad := AfterLoadModule;
|
|
||||||
// Ruta por defecto de los módulos
|
|
||||||
BPLPath := ExtractFilePath(Application.ExeName) + PathDelim;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TAppAdminPV.Destroy;
|
|
||||||
begin
|
|
||||||
FAppSplashForm := NIL;
|
|
||||||
|
|
||||||
FHostManager.UnloadModules;
|
|
||||||
FreeAndNIL(FHostManager);
|
|
||||||
|
|
||||||
FUsuariosController := NIL;
|
|
||||||
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.DoMainForm;
|
|
||||||
begin
|
|
||||||
if not Assigned(FDoMainFormEvent) then
|
|
||||||
raise Exception.Create('Evento para la creación del formulario principal no asignado (DoMainForm)');
|
|
||||||
|
|
||||||
FDoMainFormEvent();
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetMainForm: TCustomForm;
|
|
||||||
begin
|
|
||||||
Result := Application.MainForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetDoMainFormEvent: TDoMainFormEvent;
|
|
||||||
begin
|
|
||||||
Result := FDoMainFormEvent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetAppEXEName: String;
|
|
||||||
begin
|
|
||||||
Result := ExtractFileName(Application.ExeName);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetAppFullName: String;
|
|
||||||
begin
|
|
||||||
Result := uAppInfoUtils.GetAppFullName;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetAppName: String;
|
|
||||||
begin
|
|
||||||
Result := uAppInfoUtils.GetAppName;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetAppSplashForm: IAppSplashForm;
|
|
||||||
begin
|
|
||||||
Result := FAppSplashForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetAppVersion: String;
|
|
||||||
begin
|
|
||||||
Result := uAppInfoUtils.GetAppVersion;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetLoadModulesEvent: TDoLoadModulesEvent;
|
|
||||||
begin
|
|
||||||
Result := FDoLoadModulesEvent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetModuleManager: THostManager;
|
|
||||||
begin
|
|
||||||
Result := FHostManager;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetTerminated: Boolean;
|
|
||||||
begin
|
|
||||||
Result := FTerminated;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetUsuarioActivo: IBizUsuario;
|
|
||||||
begin
|
|
||||||
Result := UsuariosController.CurrentUser;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TAppAdminPV.GetUsuariosController: IUsuariosController;
|
|
||||||
begin
|
|
||||||
if not Assigned(FUsuariosController) then
|
|
||||||
FUsuariosController := TUsuariosController.Create;
|
|
||||||
|
|
||||||
Result := FUsuariosController;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.HideSplashForm;
|
|
||||||
begin
|
|
||||||
if not Assigned(FAppSplashForm) then
|
|
||||||
raise Exception.Create('AppSplashForm no asignado (HideSplashForm)');
|
|
||||||
|
|
||||||
FAppSplashForm.Hide;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.AfterLoadModule(Sender: TObject;
|
|
||||||
AModuleInfo: TModuleInfo);
|
|
||||||
begin
|
|
||||||
RegisterModule(AModuleInfo);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.RegisterModule(AModuleInfo: TModuleInfo);
|
|
||||||
begin
|
|
||||||
AppSplashForm.Mensaje := 'Cargando ''' + AModuleInfo.Module.ModuleName + '''...';
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.Run;
|
|
||||||
begin
|
|
||||||
if UsuariosController.StartLogin then
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
CargarModulos;
|
|
||||||
DoMainForm;
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
HideSplashForm;
|
|
||||||
end;
|
|
||||||
Application.Run;
|
|
||||||
end;
|
|
||||||
Terminate;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.SetDoMainFormEvent(
|
|
||||||
AMainFormEvent: TDoMainFormEvent);
|
|
||||||
begin
|
|
||||||
FDoMainFormEvent := AMainFormEvent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.SetAppSplashForm(AAppSplashForm: IAppSplashForm);
|
|
||||||
begin
|
|
||||||
FAppSplashForm := AAppSplashForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.SetLoadModulesEvent(
|
|
||||||
ALoadModulesEvent: TDoLoadModulesEvent);
|
|
||||||
begin
|
|
||||||
FDoLoadModulesEvent := ALoadModulesEvent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.ShowCapado;
|
|
||||||
begin
|
|
||||||
ShowInfoMessage('Sin Acceso', 'Funcionalidad en desarrollo, disculpen las molestias');
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.ShowSplashForm;
|
|
||||||
begin
|
|
||||||
if not Assigned(FAppSplashForm) then
|
|
||||||
raise Exception.Create('AppSplashForm no asignado (ShowSplashForm)');
|
|
||||||
|
|
||||||
FAppSplashForm.Show;
|
|
||||||
FAppSplashForm.Update;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.Terminate;
|
|
||||||
begin
|
|
||||||
ModuleManager.UnloadModules;
|
|
||||||
FTerminated := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TAppAdminPV.UpdateSplashForm;
|
|
||||||
begin
|
|
||||||
FAppSplashForm.Update;
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
// Pongo esto aquí por ahora
|
|
||||||
uUsuariosViewRegister.RegisterViews;
|
|
||||||
|
|
||||||
finalization
|
|
||||||
// Pongo esto aquí por ahora
|
|
||||||
AppAdminPV := NIL;
|
|
||||||
|
|
||||||
uUsuariosViewRegister.UnregisterViews;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,226 +1,201 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<BorlandProject>
|
<BorlandProject>
|
||||||
<PersonalityInfo>
|
<PersonalityInfo>
|
||||||
<Option>
|
<Option>
|
||||||
<Option Name="Personality">Delphi.Personality</Option>
|
<Option Name="Personality">Delphi.Personality</Option>
|
||||||
<Option Name="ProjectType"></Option>
|
<Option Name="ProjectType">VCLApplication</Option>
|
||||||
<Option Name="Version">1.0</Option>
|
<Option Name="Version">1.0</Option>
|
||||||
<Option Name="GUID">{14A25028-EC1A-430C-ADE3-13C264E9BAC2}</Option>
|
<Option Name="GUID">{51B1CBD5-E922-4E6D-B778-6DE1BCA9118C}</Option>
|
||||||
</Option>
|
</Option>
|
||||||
</PersonalityInfo>
|
</PersonalityInfo>
|
||||||
<Delphi.Personality>
|
<Delphi.Personality>
|
||||||
<Source>
|
<Source>
|
||||||
<Source Name="MainSource">ApplicationBase.dpk</Source>
|
<Source Name="MainSource">BaseD10.dpk</Source>
|
||||||
</Source>
|
</Source>
|
||||||
<FileVersion>
|
<FileVersion>
|
||||||
<FileVersion Name="Version">7.0</FileVersion>
|
<FileVersion Name="Version">7.0</FileVersion>
|
||||||
</FileVersion>
|
</FileVersion>
|
||||||
<Compiler>
|
<Compiler>
|
||||||
<Compiler Name="A">8</Compiler>
|
<Compiler Name="A">8</Compiler>
|
||||||
<Compiler Name="B">0</Compiler>
|
<Compiler Name="B">0</Compiler>
|
||||||
<Compiler Name="C">1</Compiler>
|
<Compiler Name="C">1</Compiler>
|
||||||
<Compiler Name="D">1</Compiler>
|
<Compiler Name="D">1</Compiler>
|
||||||
<Compiler Name="E">0</Compiler>
|
<Compiler Name="E">0</Compiler>
|
||||||
<Compiler Name="F">0</Compiler>
|
<Compiler Name="F">0</Compiler>
|
||||||
<Compiler Name="G">1</Compiler>
|
<Compiler Name="G">1</Compiler>
|
||||||
<Compiler Name="H">1</Compiler>
|
<Compiler Name="H">1</Compiler>
|
||||||
<Compiler Name="I">1</Compiler>
|
<Compiler Name="I">1</Compiler>
|
||||||
<Compiler Name="J">0</Compiler>
|
<Compiler Name="J">0</Compiler>
|
||||||
<Compiler Name="K">0</Compiler>
|
<Compiler Name="K">0</Compiler>
|
||||||
<Compiler Name="L">1</Compiler>
|
<Compiler Name="L">1</Compiler>
|
||||||
<Compiler Name="M">0</Compiler>
|
<Compiler Name="M">0</Compiler>
|
||||||
<Compiler Name="N">1</Compiler>
|
<Compiler Name="N">1</Compiler>
|
||||||
<Compiler Name="O">1</Compiler>
|
<Compiler Name="O">0</Compiler>
|
||||||
<Compiler Name="P">1</Compiler>
|
<Compiler Name="P">1</Compiler>
|
||||||
<Compiler Name="Q">0</Compiler>
|
<Compiler Name="Q">0</Compiler>
|
||||||
<Compiler Name="R">0</Compiler>
|
<Compiler Name="R">0</Compiler>
|
||||||
<Compiler Name="S">0</Compiler>
|
<Compiler Name="S">0</Compiler>
|
||||||
<Compiler Name="T">0</Compiler>
|
<Compiler Name="T">0</Compiler>
|
||||||
<Compiler Name="U">0</Compiler>
|
<Compiler Name="U">0</Compiler>
|
||||||
<Compiler Name="V">1</Compiler>
|
<Compiler Name="V">1</Compiler>
|
||||||
<Compiler Name="W">0</Compiler>
|
<Compiler Name="W">1</Compiler>
|
||||||
<Compiler Name="X">1</Compiler>
|
<Compiler Name="X">1</Compiler>
|
||||||
<Compiler Name="Y">1</Compiler>
|
<Compiler Name="Y">1</Compiler>
|
||||||
<Compiler Name="Z">1</Compiler>
|
<Compiler Name="Z">1</Compiler>
|
||||||
<Compiler Name="ShowHints">True</Compiler>
|
<Compiler Name="ShowHints">True</Compiler>
|
||||||
<Compiler Name="ShowWarnings">True</Compiler>
|
<Compiler Name="ShowWarnings">True</Compiler>
|
||||||
<Compiler Name="UnitAliases">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
|
<Compiler Name="UnitAliases">WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;</Compiler>
|
||||||
<Compiler Name="NamespacePrefix"></Compiler>
|
<Compiler Name="NamespacePrefix"></Compiler>
|
||||||
<Compiler Name="GenerateDocumentation">False</Compiler>
|
<Compiler Name="GenerateDocumentation">False</Compiler>
|
||||||
<Compiler Name="DefaultNamespace"></Compiler>
|
<Compiler Name="DefaultNamespace"></Compiler>
|
||||||
<Compiler Name="SymbolDeprecated">True</Compiler>
|
<Compiler Name="SymbolDeprecated">True</Compiler>
|
||||||
<Compiler Name="SymbolLibrary">True</Compiler>
|
<Compiler Name="SymbolLibrary">True</Compiler>
|
||||||
<Compiler Name="SymbolPlatform">True</Compiler>
|
<Compiler Name="SymbolPlatform">True</Compiler>
|
||||||
<Compiler Name="SymbolExperimental">True</Compiler>
|
<Compiler Name="SymbolExperimental">True</Compiler>
|
||||||
<Compiler Name="UnitLibrary">True</Compiler>
|
<Compiler Name="UnitLibrary">True</Compiler>
|
||||||
<Compiler Name="UnitPlatform">True</Compiler>
|
<Compiler Name="UnitPlatform">True</Compiler>
|
||||||
<Compiler Name="UnitDeprecated">True</Compiler>
|
<Compiler Name="UnitDeprecated">True</Compiler>
|
||||||
<Compiler Name="UnitExperimental">True</Compiler>
|
<Compiler Name="UnitExperimental">True</Compiler>
|
||||||
<Compiler Name="HResultCompat">True</Compiler>
|
<Compiler Name="HResultCompat">True</Compiler>
|
||||||
<Compiler Name="HidingMember">True</Compiler>
|
<Compiler Name="HidingMember">True</Compiler>
|
||||||
<Compiler Name="HiddenVirtual">True</Compiler>
|
<Compiler Name="HiddenVirtual">True</Compiler>
|
||||||
<Compiler Name="Garbage">True</Compiler>
|
<Compiler Name="Garbage">True</Compiler>
|
||||||
<Compiler Name="BoundsError">True</Compiler>
|
<Compiler Name="BoundsError">True</Compiler>
|
||||||
<Compiler Name="ZeroNilCompat">True</Compiler>
|
<Compiler Name="ZeroNilCompat">True</Compiler>
|
||||||
<Compiler Name="StringConstTruncated">True</Compiler>
|
<Compiler Name="StringConstTruncated">True</Compiler>
|
||||||
<Compiler Name="ForLoopVarVarPar">True</Compiler>
|
<Compiler Name="ForLoopVarVarPar">True</Compiler>
|
||||||
<Compiler Name="TypedConstVarPar">True</Compiler>
|
<Compiler Name="TypedConstVarPar">True</Compiler>
|
||||||
<Compiler Name="AsgToTypedConst">True</Compiler>
|
<Compiler Name="AsgToTypedConst">True</Compiler>
|
||||||
<Compiler Name="CaseLabelRange">True</Compiler>
|
<Compiler Name="CaseLabelRange">True</Compiler>
|
||||||
<Compiler Name="ForVariable">True</Compiler>
|
<Compiler Name="ForVariable">True</Compiler>
|
||||||
<Compiler Name="ConstructingAbstract">True</Compiler>
|
<Compiler Name="ConstructingAbstract">True</Compiler>
|
||||||
<Compiler Name="ComparisonFalse">True</Compiler>
|
<Compiler Name="ComparisonFalse">True</Compiler>
|
||||||
<Compiler Name="ComparisonTrue">True</Compiler>
|
<Compiler Name="ComparisonTrue">True</Compiler>
|
||||||
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
|
<Compiler Name="ComparingSignedUnsigned">True</Compiler>
|
||||||
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
|
<Compiler Name="CombiningSignedUnsigned">True</Compiler>
|
||||||
<Compiler Name="UnsupportedConstruct">True</Compiler>
|
<Compiler Name="UnsupportedConstruct">True</Compiler>
|
||||||
<Compiler Name="FileOpen">True</Compiler>
|
<Compiler Name="FileOpen">True</Compiler>
|
||||||
<Compiler Name="FileOpenUnitSrc">True</Compiler>
|
<Compiler Name="FileOpenUnitSrc">True</Compiler>
|
||||||
<Compiler Name="BadGlobalSymbol">True</Compiler>
|
<Compiler Name="BadGlobalSymbol">True</Compiler>
|
||||||
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
|
<Compiler Name="DuplicateConstructorDestructor">True</Compiler>
|
||||||
<Compiler Name="InvalidDirective">True</Compiler>
|
<Compiler Name="InvalidDirective">True</Compiler>
|
||||||
<Compiler Name="PackageNoLink">True</Compiler>
|
<Compiler Name="PackageNoLink">True</Compiler>
|
||||||
<Compiler Name="PackageThreadVar">True</Compiler>
|
<Compiler Name="PackageThreadVar">True</Compiler>
|
||||||
<Compiler Name="ImplicitImport">True</Compiler>
|
<Compiler Name="ImplicitImport">True</Compiler>
|
||||||
<Compiler Name="HPPEMITIgnored">True</Compiler>
|
<Compiler Name="HPPEMITIgnored">True</Compiler>
|
||||||
<Compiler Name="NoRetVal">True</Compiler>
|
<Compiler Name="NoRetVal">True</Compiler>
|
||||||
<Compiler Name="UseBeforeDef">True</Compiler>
|
<Compiler Name="UseBeforeDef">True</Compiler>
|
||||||
<Compiler Name="ForLoopVarUndef">True</Compiler>
|
<Compiler Name="ForLoopVarUndef">True</Compiler>
|
||||||
<Compiler Name="UnitNameMismatch">True</Compiler>
|
<Compiler Name="UnitNameMismatch">True</Compiler>
|
||||||
<Compiler Name="NoCFGFileFound">True</Compiler>
|
<Compiler Name="NoCFGFileFound">True</Compiler>
|
||||||
<Compiler Name="ImplicitVariants">True</Compiler>
|
<Compiler Name="ImplicitVariants">True</Compiler>
|
||||||
<Compiler Name="UnicodeToLocale">True</Compiler>
|
<Compiler Name="UnicodeToLocale">True</Compiler>
|
||||||
<Compiler Name="LocaleToUnicode">True</Compiler>
|
<Compiler Name="LocaleToUnicode">True</Compiler>
|
||||||
<Compiler Name="ImagebaseMultiple">True</Compiler>
|
<Compiler Name="ImagebaseMultiple">True</Compiler>
|
||||||
<Compiler Name="SuspiciousTypecast">True</Compiler>
|
<Compiler Name="SuspiciousTypecast">True</Compiler>
|
||||||
<Compiler Name="PrivatePropAccessor">True</Compiler>
|
<Compiler Name="PrivatePropAccessor">True</Compiler>
|
||||||
<Compiler Name="UnsafeType">False</Compiler>
|
<Compiler Name="UnsafeType">False</Compiler>
|
||||||
<Compiler Name="UnsafeCode">False</Compiler>
|
<Compiler Name="UnsafeCode">False</Compiler>
|
||||||
<Compiler Name="UnsafeCast">False</Compiler>
|
<Compiler Name="UnsafeCast">False</Compiler>
|
||||||
<Compiler Name="OptionTruncated">True</Compiler>
|
<Compiler Name="OptionTruncated">True</Compiler>
|
||||||
<Compiler Name="WideCharReduced">True</Compiler>
|
<Compiler Name="WideCharReduced">True</Compiler>
|
||||||
<Compiler Name="DuplicatesIgnored">True</Compiler>
|
<Compiler Name="DuplicatesIgnored">True</Compiler>
|
||||||
<Compiler Name="UnitInitSeq">True</Compiler>
|
<Compiler Name="UnitInitSeq">True</Compiler>
|
||||||
<Compiler Name="LocalPInvoke">True</Compiler>
|
<Compiler Name="LocalPInvoke">True</Compiler>
|
||||||
<Compiler Name="MessageDirective">True</Compiler>
|
<Compiler Name="MessageDirective">True</Compiler>
|
||||||
<Compiler Name="TypeInfoImplicitlyAdded">True</Compiler>
|
<Compiler Name="CodePage"></Compiler>
|
||||||
<Compiler Name="XMLWhitespaceNotAllowed">True</Compiler>
|
</Compiler>
|
||||||
<Compiler Name="XMLUnknownEntity">True</Compiler>
|
<Linker>
|
||||||
<Compiler Name="XMLInvalidNameStart">True</Compiler>
|
<Linker Name="MapFile">3</Linker>
|
||||||
<Compiler Name="XMLInvalidName">True</Compiler>
|
<Linker Name="OutputObjs">0</Linker>
|
||||||
<Compiler Name="XMLExpectedCharacter">True</Compiler>
|
<Linker Name="GenerateHpps">False</Linker>
|
||||||
<Compiler Name="XMLCRefNoResolve">True</Compiler>
|
<Linker Name="ConsoleApp">1</Linker>
|
||||||
<Compiler Name="XMLNoParm">True</Compiler>
|
<Linker Name="DebugInfo">False</Linker>
|
||||||
<Compiler Name="XMLNoMatchingParm">True</Compiler>
|
<Linker Name="RemoteSymbols">False</Linker>
|
||||||
<Compiler Name="CodePage"></Compiler>
|
<Linker Name="GenerateDRC">False</Linker>
|
||||||
</Compiler>
|
<Linker Name="MinStackSize">16384</Linker>
|
||||||
<Linker>
|
<Linker Name="MaxStackSize">1048576</Linker>
|
||||||
<Linker Name="MapFile">0</Linker>
|
<Linker Name="ImageBase">4194304</Linker>
|
||||||
<Linker Name="OutputObjs">0</Linker>
|
<Linker Name="ExeDescription"></Linker>
|
||||||
<Linker Name="GenerateHpps">False</Linker>
|
</Linker>
|
||||||
<Linker Name="ConsoleApp">1</Linker>
|
<Directories>
|
||||||
<Linker Name="DebugInfo">False</Linker>
|
<Directories Name="OutputDir"></Directories>
|
||||||
<Linker Name="RemoteSymbols">False</Linker>
|
<Directories Name="UnitOutputDir">.\</Directories>
|
||||||
<Linker Name="GenerateDRC">False</Linker>
|
<Directories Name="PackageDLLOutputDir">..\..\Output\Debug\Cliente</Directories>
|
||||||
<Linker Name="MinStackSize">16384</Linker>
|
<Directories Name="PackageDCPOutputDir">..\Lib</Directories>
|
||||||
<Linker Name="MaxStackSize">1048576</Linker>
|
<Directories Name="SearchPath"></Directories>
|
||||||
<Linker Name="ImageBase">4194304</Linker>
|
<Directories Name="Packages"></Directories>
|
||||||
<Linker Name="ExeDescription"></Linker>
|
<Directories Name="Conditionals"></Directories>
|
||||||
</Linker>
|
<Directories Name="DebugSourceDirs"></Directories>
|
||||||
<Directories>
|
<Directories Name="UsePackages">False</Directories>
|
||||||
<Directories Name="OutputDir"></Directories>
|
</Directories>
|
||||||
<Directories Name="UnitOutputDir">.\</Directories>
|
<Parameters>
|
||||||
<Directories Name="PackageDLLOutputDir">..\..\..\..\Output\Debug\Cliente</Directories>
|
<Parameters Name="RunParams"></Parameters>
|
||||||
<Directories Name="PackageDCPOutputDir">..\Lib</Directories>
|
<Parameters Name="HostApplication"></Parameters>
|
||||||
<Directories Name="SearchPath">..\Lib</Directories>
|
<Parameters Name="Launcher"></Parameters>
|
||||||
<Directories Name="Packages"></Directories>
|
<Parameters Name="UseLauncher">False</Parameters>
|
||||||
<Directories Name="Conditionals"></Directories>
|
<Parameters Name="DebugCWD"></Parameters>
|
||||||
<Directories Name="DebugSourceDirs"></Directories>
|
<Parameters Name="Debug Symbols Search Path"></Parameters>
|
||||||
<Directories Name="UsePackages">False</Directories>
|
<Parameters Name="LoadAllSymbols">True</Parameters>
|
||||||
</Directories>
|
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
|
||||||
<Parameters>
|
</Parameters>
|
||||||
<Parameters Name="RunParams"></Parameters>
|
<Language>
|
||||||
<Parameters Name="HostApplication"></Parameters>
|
<Language Name="ActiveLang"></Language>
|
||||||
<Parameters Name="Launcher"></Parameters>
|
<Language Name="ProjectLang">$00000000</Language>
|
||||||
<Parameters Name="UseLauncher">False</Parameters>
|
<Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language>
|
||||||
<Parameters Name="DebugCWD"></Parameters>
|
</Language>
|
||||||
<Parameters Name="Debug Symbols Search Path"></Parameters>
|
<VersionInfo>
|
||||||
<Parameters Name="LoadAllSymbols">True</Parameters>
|
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
|
||||||
<Parameters Name="LoadUnspecifiedSymbols">False</Parameters>
|
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
|
||||||
</Parameters>
|
<VersionInfo Name="MajorVer">2</VersionInfo>
|
||||||
<Signing>
|
<VersionInfo Name="MinorVer">0</VersionInfo>
|
||||||
<Signing Name="SignAssembly">False</Signing>
|
<VersionInfo Name="Release">0</VersionInfo>
|
||||||
</Signing>
|
<VersionInfo Name="Build">0</VersionInfo>
|
||||||
<VersionInfo>
|
<VersionInfo Name="Debug">False</VersionInfo>
|
||||||
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
|
<VersionInfo Name="PreRelease">False</VersionInfo>
|
||||||
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
|
<VersionInfo Name="Special">False</VersionInfo>
|
||||||
<VersionInfo Name="MajorVer">1</VersionInfo>
|
<VersionInfo Name="Private">False</VersionInfo>
|
||||||
<VersionInfo Name="MinorVer">0</VersionInfo>
|
<VersionInfo Name="DLL">False</VersionInfo>
|
||||||
<VersionInfo Name="Release">0</VersionInfo>
|
<VersionInfo Name="Locale">3082</VersionInfo>
|
||||||
<VersionInfo Name="Build">0</VersionInfo>
|
<VersionInfo Name="CodePage">1252</VersionInfo>
|
||||||
<VersionInfo Name="Debug">False</VersionInfo>
|
</VersionInfo>
|
||||||
<VersionInfo Name="PreRelease">False</VersionInfo>
|
<VersionInfoKeys>
|
||||||
<VersionInfo Name="Special">False</VersionInfo>
|
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
|
||||||
<VersionInfo Name="Private">False</VersionInfo>
|
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
|
||||||
<VersionInfo Name="DLL">False</VersionInfo>
|
<VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys>
|
||||||
<VersionInfo Name="Locale">3082</VersionInfo>
|
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
|
||||||
<VersionInfo Name="CodePage">1252</VersionInfo>
|
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
|
||||||
</VersionInfo>
|
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
|
||||||
<VersionInfoKeys>
|
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
|
||||||
<VersionInfoKeys Name="CompanyName"></VersionInfoKeys>
|
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
|
||||||
<VersionInfoKeys Name="FileDescription"></VersionInfoKeys>
|
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
|
||||||
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
|
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
|
||||||
<VersionInfoKeys Name="InternalName"></VersionInfoKeys>
|
</VersionInfoKeys> <Excluded_Packages>
|
||||||
<VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\fsTee10.bpl">(untitled)</Excluded_Packages>
|
||||||
<VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\fs10.bpl">(untitled)</Excluded_Packages>
|
||||||
<VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frx10.bpl">(untitled)</Excluded_Packages>
|
||||||
<VersionInfoKeys Name="ProductName"></VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxADO10.bpl">(untitled)</Excluded_Packages>
|
||||||
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxBDE10.bpl">(untitled)</Excluded_Packages>
|
||||||
<VersionInfoKeys Name="Comments"></VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxDB10.bpl">(untitled)</Excluded_Packages>
|
||||||
</VersionInfoKeys>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxDBX10.bpl">(untitled)</Excluded_Packages>
|
||||||
<Excluded_Packages>
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxe10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxIBX10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\frxTee10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\fsADO10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\fsBDE10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\fsDB10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
<Excluded_Packages Name="C:\Documents and Settings\Usuario\Mis documentos\Borland Studio Projects\Bpl\fsIBX10.bpl">(untitled)</Excluded_Packages>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
|
||||||
</Excluded_Packages>
|
</Excluded_Packages>
|
||||||
<buildevents/>
|
|
||||||
</Delphi.Personality>
|
</Delphi.Personality>
|
||||||
</BorlandProject>
|
|
||||||
|
|
||||||
<!-- EurekaLog First Line
|
<!-- EurekaLog First Line
|
||||||
[Exception Log]
|
[Exception Log]
|
||||||
EurekaLog Version=6006
|
EurekaLog Version=6006
|
||||||
Activate=0
|
Activate=1
|
||||||
Activate Handle=1
|
Activate Handle=1
|
||||||
Save Log File=1
|
Save Log File=1
|
||||||
Foreground Tab=0
|
Foreground Tab=0
|
||||||
Freeze Activate=0
|
Freeze Activate=0
|
||||||
Freeze Timeout=0
|
Freeze Timeout=1
|
||||||
SMTP From=eurekalog@email.com
|
SMTP From=eurekalog@email.com
|
||||||
SMTP Host=
|
SMTP Host=
|
||||||
SMTP Port=25
|
SMTP Port=25
|
||||||
@ -367,7 +342,7 @@ boSaveCompressedCopyInCaseOfError=0
|
|||||||
boHandleSafeCallExceptions=1
|
boHandleSafeCallExceptions=1
|
||||||
boCallRTLExceptionEvent=0
|
boCallRTLExceptionEvent=0
|
||||||
boCatchHandledExceptions=0
|
boCatchHandledExceptions=0
|
||||||
loCatchLeaks=0
|
loCatchLeaks=1
|
||||||
loGroupsSonLeaks=1
|
loGroupsSonLeaks=1
|
||||||
loHideBorlandLeaks=1
|
loHideBorlandLeaks=1
|
||||||
loFreeAllLeaks=1
|
loFreeAllLeaks=1
|
||||||
@ -693,5 +668,6 @@ Count mtException_AntiFreeze=1
|
|||||||
mtException_AntiFreeze0="The application seems to be frozen."
|
mtException_AntiFreeze0="The application seems to be frozen."
|
||||||
Count mtInvalidEmailMsg=1
|
Count mtInvalidEmailMsg=1
|
||||||
mtInvalidEmailMsg0="Invalid email."
|
mtInvalidEmailMsg0="Invalid email."
|
||||||
TextsCollection=English
|
TextsCollection=
|
||||||
EurekaLog Last Line -->
|
EurekaLog Last Line -->
|
||||||
|
</BorlandProject>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
package Base;
|
package BaseD10;
|
||||||
|
|
||||||
{$R *.res}
|
{$R *.res}
|
||||||
{$ALIGN 8}
|
{$ALIGN 8}
|
||||||
@ -30,15 +30,15 @@ requires
|
|||||||
rtl,
|
rtl,
|
||||||
vcl,
|
vcl,
|
||||||
vcldb,
|
vcldb,
|
||||||
GUISDK_D11,
|
GUISDK_D10,
|
||||||
vcljpg,
|
vcljpg,
|
||||||
dbrtl,
|
dbrtl,
|
||||||
dsnap,
|
dsnap,
|
||||||
PNG_D10,
|
PNG_D10,
|
||||||
PngComponentsD10,
|
PngComponentsD10,
|
||||||
JvCoreD11R,
|
JvCoreD10R,
|
||||||
JvStdCtrlsD11R,
|
JvStdCtrlsD10R,
|
||||||
JvPageCompsD11R,
|
JvPageCompsD10R,
|
||||||
cxLibraryD10,
|
cxLibraryD10,
|
||||||
dxThemeD10,
|
dxThemeD10,
|
||||||
cxEditorsD10,
|
cxEditorsD10,
|
||||||
@ -53,7 +53,7 @@ requires
|
|||||||
designide,
|
designide,
|
||||||
cxExportD10,
|
cxExportD10,
|
||||||
adortl,
|
adortl,
|
||||||
JvSystemD11R,
|
JvSystemD10R,
|
||||||
dxPSCoreD10,
|
dxPSCoreD10,
|
||||||
dxPScxCommonD10,
|
dxPScxCommonD10,
|
||||||
dxPScxGridLnkD10,
|
dxPScxGridLnkD10,
|
||||||
@ -62,8 +62,9 @@ requires
|
|||||||
dxBarExtItemsD10,
|
dxBarExtItemsD10,
|
||||||
cxIntl5D10,
|
cxIntl5D10,
|
||||||
dxPsPrVwAdvD10,
|
dxPsPrVwAdvD10,
|
||||||
JvMMD11R,
|
ccpack10,
|
||||||
JvCtrlsD11R,
|
JvMMD10R,
|
||||||
|
JvCtrlsD10R,
|
||||||
tee,
|
tee,
|
||||||
frx10,
|
frx10,
|
||||||
fs10,
|
fs10,
|
||||||
@ -72,19 +73,20 @@ requires
|
|||||||
dxComnD10,
|
dxComnD10,
|
||||||
Jcl,
|
Jcl,
|
||||||
JclVcl,
|
JclVcl,
|
||||||
JvAppFrmD11R,
|
JvAppFrmD10R,
|
||||||
dxPSLnksD10,
|
dxPSLnksD10,
|
||||||
vclshlctrls,
|
vclshlctrls,
|
||||||
dclcxLibraryD10,
|
dclcxLibraryD10,
|
||||||
RemObjects_Core_D11,
|
RemObjects_Core_D10,
|
||||||
DataAbstract_Core_D11,
|
DataAbstract_Core_D10;
|
||||||
JSDialog100;
|
|
||||||
|
|
||||||
contains
|
contains
|
||||||
uDMBase in 'uDMBase.pas' {dmBase: TDAClientDataModule},
|
uDataModuleBase in 'uDataModuleBase.pas' {dmBase: TDAClientDataModule},
|
||||||
uEditorBase in 'uEditorBase.pas' {fEditorBase},
|
uEditorBase in 'uEditorBase.pas' {fEditorBase},
|
||||||
uEditorGridBase in 'uEditorGridBase.pas' {fEditorGridBase},
|
uEditorGridBase in 'uEditorGridBase.pas' {fEditorGridBase},
|
||||||
uEditorItem in 'uEditorItem.pas' {fEditorItem},
|
uEditorItem in 'uEditorItem.pas' {fEditorItem},
|
||||||
|
uDataTableUtils in 'uDataTableUtils.pas',
|
||||||
|
uEditorUtils in 'uEditorUtils.pas',
|
||||||
uEditorPreview in 'uEditorPreview.pas' {fEditorPreview},
|
uEditorPreview in 'uEditorPreview.pas' {fEditorPreview},
|
||||||
uViewPreview in 'uViewPreview.pas' {frViewPreview: TFrame},
|
uViewPreview in 'uViewPreview.pas' {frViewPreview: TFrame},
|
||||||
uViewBase in 'uViewBase.pas' {frViewBase: TCustomView},
|
uViewBase in 'uViewBase.pas' {frViewBase: TCustomView},
|
||||||
@ -93,24 +95,15 @@ contains
|
|||||||
uEditorDBItem in 'uEditorDBItem.pas' {fEditorDBItem: TCustomEditor},
|
uEditorDBItem in 'uEditorDBItem.pas' {fEditorDBItem: TCustomEditor},
|
||||||
uExceptions in 'uExceptions.pas',
|
uExceptions in 'uExceptions.pas',
|
||||||
uViewBarraSeleccion in 'uViewBarraSeleccion.pas' {frViewBarraSeleccion: TFrame},
|
uViewBarraSeleccion in 'uViewBarraSeleccion.pas' {frViewBarraSeleccion: TFrame},
|
||||||
|
uDBSelectionList in 'uDBSelectionList.pas',
|
||||||
uConfigurarConexion in 'uConfigurarConexion.pas' {fConfigurarConexion},
|
uConfigurarConexion in 'uConfigurarConexion.pas' {fConfigurarConexion},
|
||||||
uBizInformesBase in 'uBizInformesBase.pas',
|
uBizInformesBase in 'uBizInformesBase.pas',
|
||||||
|
uSysFunc in 'uSysFunc.pas',
|
||||||
|
VARELA_Intf in '..\Servidor\VARELA_Intf.pas',
|
||||||
uViewGrid in 'uViewGrid.pas' {frViewGrid: TCustomView},
|
uViewGrid in 'uViewGrid.pas' {frViewGrid: TCustomView},
|
||||||
VARELA_Intf in '..\Servicios\VARELA_Intf.pas',
|
uIntegerList in 'uIntegerList.pas',
|
||||||
uControllerBase in 'Controladores\uControllerBase.pas',
|
schStockClient_Intf in '..\Modulos\Stock\Reglas\schStockClient_Intf.pas',
|
||||||
uDataModuleBase in 'uDataModuleBase.pas' {fDataModuleBase: TDataModuleBase},
|
schStockServer_Intf in '..\Modulos\Stock\Reglas\schStockServer_Intf.pas',
|
||||||
uSysFunc in 'Utiles\uSysFunc.pas',
|
uGridUtils in 'uGridUtils.pas';
|
||||||
uDataTableUtils in 'Utiles\uDataTableUtils.pas',
|
|
||||||
uDBSelectionList in 'Utiles\uDBSelectionList.pas',
|
|
||||||
uDialogUtils in 'Utiles\uDialogUtils.pas',
|
|
||||||
uEditorUtils in 'Utiles\uEditorUtils.pas',
|
|
||||||
uGridUtils in 'Utiles\uGridUtils.pas',
|
|
||||||
uIntegerList in 'Utiles\uIntegerList.pas',
|
|
||||||
uViewRegistryUtils in 'ClassRegistry\uViewRegistryUtils.pas',
|
|
||||||
uClassRegistryUtils in 'ClassRegistry\uClassRegistryUtils.pas',
|
|
||||||
uEditorRegistryUtils in 'ClassRegistry\uEditorRegistryUtils.pas',
|
|
||||||
uInformeRegistryUtils in 'ClassRegistry\uInformeRegistryUtils.pas',
|
|
||||||
uAppInfoUtils in 'Utiles\uAppInfoUtils.pas',
|
|
||||||
uDateUtils in 'Utiles\uDateUtils.pas';
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
@ -2,11 +2,11 @@
|
|||||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ProjectGuid>{51b1cbd5-e922-4e6d-b778-6de1bca9118c}</ProjectGuid>
|
<ProjectGuid>{51b1cbd5-e922-4e6d-b778-6de1bca9118c}</ProjectGuid>
|
||||||
<MainSource>Base.dpk</MainSource>
|
<MainSource>BaseD10.dpk</MainSource>
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
|
||||||
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\Base.bpl</DCC_DependencyCheckOutputName>
|
<DCC_DependencyCheckOutputName>..\..\Output\Debug\Cliente\BaseD10.bpl</DCC_DependencyCheckOutputName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
<Version>7.0</Version>
|
<Version>7.0</Version>
|
||||||
@ -40,27 +40,24 @@
|
|||||||
<Borland.ProjectType>Package</Borland.ProjectType>
|
<Borland.ProjectType>Package</Borland.ProjectType>
|
||||||
<BorlandProject>
|
<BorlandProject>
|
||||||
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">True</Package_Options></Package_Options><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">True</Package_Options></Package_Options><Language><Language Name="RootDir">C:\Archivos de programa\Borland\Delphi7\Bin\</Language></Language><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">2</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">2.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="Comments"></VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dclofficexp100.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\dcloffice2k100.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\bcboffice2k100.bpl">CodeGear C++Builder Office 2000 Servers Package</Excluded_Packages>
|
||||||
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
<Excluded_Packages Name="$(BDS)\bin\bcbofficexp100.bpl">CodeGear C++Builder Office XP Servers Package</Excluded_Packages>
|
||||||
</Excluded_Packages><Source><Source Name="MainSource">Base.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
|
</Excluded_Packages><Source><Source Name="MainSource">BaseD10.dpk</Source></Source></Delphi.Personality></BorlandProject></BorlandProject>
|
||||||
</ProjectExtensions>
|
</ProjectExtensions>
|
||||||
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
|
<Import Project="$(MSBuildBinPath)\Borland.Delphi.Targets" />
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<DelphiCompile Include="Base.dpk">
|
<DelphiCompile Include="BaseD10.dpk">
|
||||||
<MainSource>MainSource</MainSource>
|
<MainSource>MainSource</MainSource>
|
||||||
</DelphiCompile>
|
</DelphiCompile>
|
||||||
<DCCReference Include="..\Servicios\VARELA_Intf.pas" />
|
<DCCReference Include="..\Modulos\Stock\Reglas\schStockClient_Intf.pas" />
|
||||||
|
<DCCReference Include="..\Modulos\Stock\Reglas\schStockServer_Intf.pas" />
|
||||||
|
<DCCReference Include="..\Servidor\VARELA_Intf.pas" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\adortl.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\ccpack10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxDataD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxEditorsD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxEditorsD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxExportD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxExportD10.dcp" />
|
||||||
@ -70,7 +67,7 @@
|
|||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxIntlPrintSys3D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxIntlPrintSys3D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxLibraryD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\cxPageControlD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D11.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\DataAbstract_Core_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\dbrtl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\dclcxLibraryD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\dclcxLibraryD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\designide.dcp" />
|
||||||
@ -87,58 +84,50 @@
|
|||||||
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\dxThemeD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\frx10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\frx10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\frxe10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\frxe10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\frxTee10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\fs10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\fs10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D11.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\fsTee10.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\GUISDK_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\Jcl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JclVcl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JSDialog100.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvAppFrmD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvAppFrmD11R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvCoreD11R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvCtrlsD11R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvMMD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvMMD11R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvPageCompsD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvPageCompsD11R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvStdCtrlsD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvStdCtrlsD11R.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD10R.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\JvSystemD11R.dcp" />
|
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\PngComponentsD10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\PNG_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D11.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\RemObjects_Core_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\rtl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\tb2k_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\tb2k_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\tbx_D10.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\tbx_D10.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\tee.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\tee.dcp" />
|
||||||
|
<DCCReference Include="C:\Documents and Settings\Usuario\teeui.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcl.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vclactnband.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcldb.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vcljpg.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vclshlctrls.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vclshlctrls.dcp" />
|
||||||
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
|
<DCCReference Include="C:\Documents and Settings\Usuario\vclx.dcp" />
|
||||||
<DCCReference Include="ClassRegistry\uClassRegistryUtils.pas" />
|
|
||||||
<DCCReference Include="ClassRegistry\uEditorRegistryUtils.pas" />
|
|
||||||
<DCCReference Include="ClassRegistry\uInformeRegistryUtils.pas" />
|
|
||||||
<DCCReference Include="ClassRegistry\uViewRegistryUtils.pas" />
|
|
||||||
<DCCReference Include="Controladores\uControllerBase.pas" />
|
|
||||||
<DCCReference Include="uBizInformesBase.pas" />
|
<DCCReference Include="uBizInformesBase.pas" />
|
||||||
<DCCReference Include="uConfigurarConexion.pas">
|
<DCCReference Include="uConfigurarConexion.pas">
|
||||||
<Form>fConfigurarConexion</Form>
|
<Form>fConfigurarConexion</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uDataModuleBase.pas">
|
<DCCReference Include="uDataModuleBase.pas">
|
||||||
<Form>fDataModuleBase</Form>
|
|
||||||
<DesignClass>TDataModuleBase</DesignClass>
|
|
||||||
</DCCReference>
|
|
||||||
<DCCReference Include="uDMBase.pas">
|
|
||||||
<Form>dmBase</Form>
|
<Form>dmBase</Form>
|
||||||
<DesignClass>TDAClientDataModule</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
|
<DCCReference Include="uDataTableUtils.pas" />
|
||||||
|
<DCCReference Include="uDBSelectionList.pas" />
|
||||||
<DCCReference Include="uEditorBase.pas">
|
<DCCReference Include="uEditorBase.pas">
|
||||||
<Form>fEditorBase</Form>
|
<Form>fEditorBase</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorDBBase.pas">
|
<DCCReference Include="uEditorDBBase.pas">
|
||||||
<Form>fEditorDBBase</Form>
|
<Form>fEditorDBBase</Form>
|
||||||
<DesignClass>TCustomEditor</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorDBItem.pas">
|
<DCCReference Include="uEditorDBItem.pas">
|
||||||
<Form>fEditorDBItem</Form>
|
<Form>fEditorDBItem</Form>
|
||||||
<DesignClass>TCustomEditor</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uEditorGridBase.pas">
|
<DCCReference Include="uEditorGridBase.pas">
|
||||||
<Form>fEditorGridBase</Form>
|
<Form>fEditorGridBase</Form>
|
||||||
@ -149,35 +138,25 @@
|
|||||||
<DCCReference Include="uEditorPreview.pas">
|
<DCCReference Include="uEditorPreview.pas">
|
||||||
<Form>fEditorPreview</Form>
|
<Form>fEditorPreview</Form>
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
|
<DCCReference Include="uEditorUtils.pas" />
|
||||||
<DCCReference Include="uExceptions.pas" />
|
<DCCReference Include="uExceptions.pas" />
|
||||||
<DCCReference Include="Utiles\uAppInfoUtils.pas" />
|
<DCCReference Include="uGridUtils.pas" />
|
||||||
<DCCReference Include="Utiles\uDataTableUtils.pas" />
|
<DCCReference Include="uIntegerList.pas" />
|
||||||
<DCCReference Include="Utiles\uDateUtils.pas" />
|
<DCCReference Include="uSysFunc.pas" />
|
||||||
<DCCReference Include="Utiles\uDBSelectionList.pas" />
|
|
||||||
<DCCReference Include="Utiles\uDialogUtils.pas" />
|
|
||||||
<DCCReference Include="Utiles\uEditorUtils.pas" />
|
|
||||||
<DCCReference Include="Utiles\uGridUtils.pas" />
|
|
||||||
<DCCReference Include="Utiles\uIntegerList.pas" />
|
|
||||||
<DCCReference Include="Utiles\uSysFunc.pas" />
|
|
||||||
<DCCReference Include="uViewBarraSeleccion.pas">
|
<DCCReference Include="uViewBarraSeleccion.pas">
|
||||||
<Form>frViewBarraSeleccion</Form>
|
<Form>frViewBarraSeleccion</Form>
|
||||||
<DesignClass>TFrame</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewBase.pas">
|
<DCCReference Include="uViewBase.pas">
|
||||||
<Form>frViewBase</Form>
|
<Form>frViewBase</Form>
|
||||||
<DesignClass>TCustomView</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewGrid.pas">
|
<DCCReference Include="uViewGrid.pas">
|
||||||
<Form>frViewGrid</Form>
|
<Form>frViewGrid</Form>
|
||||||
<DesignClass>TCustomView</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewGridBase.pas">
|
<DCCReference Include="uViewGridBase.pas">
|
||||||
<Form>frViewGridBase</Form>
|
<Form>frViewGridBase</Form>
|
||||||
<DesignClass>TCustomView</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
<DCCReference Include="uViewPreview.pas">
|
<DCCReference Include="uViewPreview.pas">
|
||||||
<Form>frViewPreview</Form>
|
<Form>frViewPreview</Form>
|
||||||
<DesignClass>TFrame</DesignClass>
|
|
||||||
</DCCReference>
|
</DCCReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@ -8,17 +8,14 @@
|
|||||||
resources were bound to the produced executable.
|
resources were bound to the produced executable.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define uClassRegistryUtils_eClassnotFound 65520
|
|
||||||
STRINGTABLE
|
STRINGTABLE
|
||||||
BEGIN
|
BEGIN
|
||||||
uClassRegistryUtils_eClassnotFound, "Class \"%s\" was not found in the registry."
|
|
||||||
END
|
END
|
||||||
|
|
||||||
/* C:\Varela_D2007\Source\Base\uConfigurarConexion.dfm */
|
/* C:\Varela_D2007\Source\Base\uConfigurarConexion.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uDMBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uDataModuleBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uViewBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uEditorBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uDataModuleBase.dfm */
|
|
||||||
/* C:\Varela_D2007\Source\Base\uViewGridBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewGridBase.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uEditorItem.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorItem.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uEditorDBBase.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorDBBase.dfm */
|
||||||
@ -28,5 +25,5 @@ END
|
|||||||
/* C:\Varela_D2007\Source\Base\uEditorDBItem.dfm */
|
/* C:\Varela_D2007\Source\Base\uEditorDBItem.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uViewBarraSeleccion.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewBarraSeleccion.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\uViewGrid.dfm */
|
/* C:\Varela_D2007\Source\Base\uViewGrid.dfm */
|
||||||
/* C:\Varela_D2007\Source\Base\Base.res */
|
/* C:\Varela_D2007\Source\Base\BaseD10.res */
|
||||||
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf2C.tmp */
|
/* C:\DOCUME~1\Usuario\CONFIG~1\Temp\dtf9.tmp */
|
||||||
BIN
Source/Base/BaseD10.identcache
Normal file
BIN
Source/Base/BaseD10.identcache
Normal file
Binary file not shown.
@ -1,336 +0,0 @@
|
|||||||
unit uClassRegistryUtils;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, SysUtils, Forms, uGUIBase;
|
|
||||||
|
|
||||||
type
|
|
||||||
IClassRegistry = Interface
|
|
||||||
['{FD23C946-4103-4C67-9C3F-644B52826833}']
|
|
||||||
procedure RegisterClass( aClass: TClass; const aDisplayname: String = '');
|
|
||||||
procedure RegisterClasses( const aClasses: array of TClass;
|
|
||||||
const aDisplaynames: array of String );
|
|
||||||
procedure UnRegisterClass( aClass: TClass );
|
|
||||||
function FindClass( const aClassOrDisplayname: String ): Tclass;
|
|
||||||
function IsClassRegistered( aClass: TClass ): Boolean; overload;
|
|
||||||
function IsClassRegistered( const aDisplayname: String ): Boolean; overload;
|
|
||||||
procedure GetRegisteredClasses( aList: TStrings; aMinClass: TClass = nil);
|
|
||||||
function CreateObject( const aClassOrDisplayname: String ): TObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IComponentRegistry = Interface( IClassRegistry )
|
|
||||||
['{04BAA01F-9AF4-4E60-9922-641E127A35C2}']
|
|
||||||
function CreateComponent( const aClassOrDisplayname: String;
|
|
||||||
aOwner:TComponent = nil ): TComponent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IFormRegistry = Interface( IComponentRegistry )
|
|
||||||
['{28E3BF72-1378-4136-B1FB-027FBB8FE99B}']
|
|
||||||
function CreateForm( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IDataModuleRegistry = Interface( IComponentRegistry )
|
|
||||||
['{9D8D1D23-6A5C-4351-9393-093CD8B76788}']
|
|
||||||
function CreateDatamodule( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TDatamodule;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IReportRegistry = Interface( IComponentRegistry )
|
|
||||||
['{49D3C8D5-8FEE-4F15-A6D2-51CB1DB29F8D}']
|
|
||||||
function CreateReport( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TClassRegistry = class( TInterfacedObject, IClassRegistry )
|
|
||||||
private
|
|
||||||
FList: TStringlist;
|
|
||||||
FMinAcceptableClass: TClass;
|
|
||||||
|
|
||||||
function FindClassByClassname( const aClassname: String ): Tclass;
|
|
||||||
function FindClassByDisplayname( const aDisplayname: String ): TClass;
|
|
||||||
function IsClassAcceptable( aClass: TClass ): Boolean;
|
|
||||||
function GetClasses(index: integer): TClass;
|
|
||||||
function GetCount: Integer;
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); virtual;
|
|
||||||
procedure RegisterClass( aClass: TClass; const aDisplayname: String = '');
|
|
||||||
procedure RegisterClasses( const aClasses: array of TClass;
|
|
||||||
const aDisplaynames: array of String );
|
|
||||||
procedure UnRegisterClass( aClass: TClass );
|
|
||||||
function FindClass( const aClassOrDisplayname: String ): Tclass;
|
|
||||||
function IsClassRegistered( aClass: TClass ): Boolean; overload;
|
|
||||||
function IsClassRegistered( const aDisplayname: String ): Boolean; overload;
|
|
||||||
procedure GetRegisteredClasses( aList: TStrings; aMinClass: TClass = nil);
|
|
||||||
function CreateObject( const aClassOrDisplayname: String ): TObject;
|
|
||||||
property MinAcceptableClass: TClass read FMinAcceptableClass;
|
|
||||||
property List: TStringlist read FList;
|
|
||||||
property Count: Integer read GetCount;
|
|
||||||
property Classes[ index: integer ]: TClass read GetClasses;
|
|
||||||
public
|
|
||||||
constructor Create( minAcceptableClass: TClass = nil ); virtual;
|
|
||||||
destructor Destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TComponentRegistry = class( TClassRegistry, IComponentRegistry )
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); override;
|
|
||||||
function CreateComponent( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TComponent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TFormRegistry = class( TComponentRegistry, IFormRegistry )
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); override;
|
|
||||||
function CreateForm( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TDataModuleRegistry = class( TComponentRegistry, IDataModuleRegistry )
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass); override;
|
|
||||||
function CreateDatamodule( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TDatamodule;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TReportRegistry = class( TComponentRegistry, IReportRegistry )
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass ); override;
|
|
||||||
function CreateReport( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
EClassRegistryError = class( Exception );
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{ TClassRegistry }
|
|
||||||
|
|
||||||
ResourceString
|
|
||||||
eClassnotFound = 'Class "%s" was not found in the registry.';
|
|
||||||
|
|
||||||
constructor TClassRegistry.Create(minAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited Create;
|
|
||||||
FList := Tstringlist.Create;
|
|
||||||
ValidateMinAcceptableClass( minAcceptableClass );
|
|
||||||
FMinAcceptableClass := minAcceptableClass;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.CreateObject(
|
|
||||||
const aClassOrDisplayname: String): TObject;
|
|
||||||
begin
|
|
||||||
Result := FindClass( aClassOrDisplayname ).Create;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TClassRegistry.Destroy;
|
|
||||||
begin
|
|
||||||
Flist.Free;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.FindClass(
|
|
||||||
const aClassOrDisplayname: String): Tclass;
|
|
||||||
begin
|
|
||||||
Result := FindClassByDisplayname( aClassOrDisplayname );
|
|
||||||
If not Assigned( Result ) Then
|
|
||||||
Result := FindClassByClassname( aClassOrDisplayname );
|
|
||||||
If not Assigned( Result ) Then
|
|
||||||
raise EClassRegistryError.CreateFmt
|
|
||||||
( eClassnotFound, [ aClassOrDisplayname ] );
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.FindClassByClassname(
|
|
||||||
const aClassname: String): Tclass;
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
for i:= 0 to count-1 do begin
|
|
||||||
Result := classes[i];
|
|
||||||
If Result.ClassNameIs( aClassname ) Then
|
|
||||||
Exit;
|
|
||||||
end;
|
|
||||||
Result := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.FindClassByDisplayname(
|
|
||||||
const aDisplayname: String): TClass;
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
i:= List.IndexOf( aDisplayname );
|
|
||||||
If i >= 0 Then
|
|
||||||
Result := Classes[i]
|
|
||||||
Else
|
|
||||||
Result := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.GetClasses(index: integer): TClass;
|
|
||||||
begin
|
|
||||||
Result := TClass( List.Objects[index] );
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.GetCount: Integer;
|
|
||||||
begin
|
|
||||||
Result := List.Count;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TClassRegistry.GetRegisteredClasses(aList: TStrings;
|
|
||||||
aMinClass: TClass);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
aClass: TClass;
|
|
||||||
begin
|
|
||||||
Assert( Assigned( aList ));
|
|
||||||
aList.BeginUpdate;
|
|
||||||
try
|
|
||||||
aList.Clear;
|
|
||||||
If not Assigned( aMinClass ) Then
|
|
||||||
aList.Assign( List )
|
|
||||||
else begin
|
|
||||||
For i:= 0 To Count-1 Do Begin
|
|
||||||
aClass := Classes[i];
|
|
||||||
If aClass.InheritsFrom( aMinClass ) Then
|
|
||||||
aList.AddObject( List[i], TObject( aClass ));
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
aList.EndUpdate
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.IsClassAcceptable(aClass: TClass): Boolean;
|
|
||||||
begin
|
|
||||||
Result := Assigned( aClass ) and
|
|
||||||
aClass.InheritsFrom( MinAcceptableClass );
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.IsClassRegistered(const aDisplayname: String): Boolean;
|
|
||||||
begin
|
|
||||||
Result := List.IndexOf(aDisplayname) >= 0;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TClassRegistry.IsClassRegistered(aClass: TClass): Boolean;
|
|
||||||
begin
|
|
||||||
Result := List.IndexOfObject( TObject( aClass )) >= 0;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TClassRegistry.RegisterClass(aClass: TClass;
|
|
||||||
const aDisplayname: String);
|
|
||||||
begin
|
|
||||||
Assert( Assigned( aClass ), 'Cannot register Nil class' );
|
|
||||||
If aDisplayname = '' Then
|
|
||||||
RegisterClass( aClass, aClass.Classname )
|
|
||||||
else begin
|
|
||||||
Assert( IsClassAcceptable( aClass ),
|
|
||||||
format('Cannot register %s since it does not inherit from %s',
|
|
||||||
[aclass.classname, MinAcceptableClass.classname] ));
|
|
||||||
Assert( not IsClassRegistered( aClass ),
|
|
||||||
Format('Class %s is already registered.', [aClass.Classname]));
|
|
||||||
List.AddObject( aDisplayname, TObject( aClass ));
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TClassRegistry.RegisterClasses(const aClasses: array of TClass;
|
|
||||||
const aDisplaynames: array of String);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
Assert( High( aClasses ) = High( aDisplaynames ),
|
|
||||||
'Size of both parameter arrays has to be the same.' );
|
|
||||||
for i:= Low( aClasses ) to High( aClasses ) do
|
|
||||||
RegisterClass( aClasses[i], aDisplaynames[i] );
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TClassRegistry.UnRegisterClass(aClass: TClass);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
i:= List.IndexOfObject( TObject( aClass ));
|
|
||||||
If i >= 0 Then
|
|
||||||
List.Delete( i );
|
|
||||||
// does not consider attempt to unregister a class that is not
|
|
||||||
// registered as an error.
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TClassRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
If not Assigned( aMinAcceptableClass ) Then
|
|
||||||
aMinAcceptableClass := TObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TComponentRegistry }
|
|
||||||
|
|
||||||
function TComponentRegistry.CreateComponent(
|
|
||||||
const aClassOrDisplayname: String; aOwner: TComponent): TComponent;
|
|
||||||
var
|
|
||||||
aClass: TComponentClass;
|
|
||||||
begin
|
|
||||||
aClass := TComponentClass( FindClass( aClassOrDisplayname ));
|
|
||||||
Result := aClass.Create( aOwner );
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TComponentRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
If not aMinAcceptableClass.InheritsFrom( TComponent )
|
|
||||||
Then
|
|
||||||
aMinAcceptableClass := TComponent;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TFormRegistry }
|
|
||||||
|
|
||||||
function TFormRegistry.CreateForm(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent): TForm;
|
|
||||||
begin
|
|
||||||
Result := CreateComponent( aClassOrDisplayname, aOwner ) As TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TFormRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
If not aMinAcceptableClass.InheritsFrom( TForm )
|
|
||||||
Then
|
|
||||||
aMinAcceptableClass := TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TDataModuleRegistry }
|
|
||||||
|
|
||||||
function TDataModuleRegistry.CreateDatamodule(
|
|
||||||
const aClassOrDisplayname: String; aOwner: TComponent): TDatamodule;
|
|
||||||
begin
|
|
||||||
Result := CreateComponent( aClassOrDisplayname, aOwner ) As TDatamodule;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TDataModuleRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
If not aMinAcceptableClass.InheritsFrom( TDatamodule )
|
|
||||||
Then
|
|
||||||
aMinAcceptableClass := TDatamodule;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TReportRegistry }
|
|
||||||
|
|
||||||
function TReportRegistry.CreateReport(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent): TInterfacedObject;
|
|
||||||
begin
|
|
||||||
Result := CreateObject( aClassOrDisplayname) As TInterfacedObject;
|
|
||||||
// Result := CreateComponent( aClassOrDisplayname, aOwner ) As TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TReportRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
If not aMinAcceptableClass.InheritsFrom( TInterfacedObject )
|
|
||||||
Then
|
|
||||||
aMinAcceptableClass := TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,81 +0,0 @@
|
|||||||
unit uEditorRegistryUtils;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, Forms, uClassRegistryUtils, uCustomEditor;
|
|
||||||
|
|
||||||
type
|
|
||||||
{
|
|
||||||
IEditorRegistry = interface (IComponentRegistry)
|
|
||||||
22F14B82-AC61-4987-847E-AF8513DE2A10
|
|
||||||
function CreateEditor(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = NIL): TCustomEditor;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TEditorRegistry = class(TComponentRegistry, IEditorRegistry)
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass); override;
|
|
||||||
function CreateEditor(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil): TCustomEditor;
|
|
||||||
end;
|
|
||||||
}
|
|
||||||
|
|
||||||
IEditorRegistry = interface (IFormRegistry)
|
|
||||||
['{F6AC050F-5547-4E1F-AA44-DA0D06EDA4D7}']
|
|
||||||
function CreateEditor(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = NIL): TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TEditorRegistry = class(TFormRegistry, IEditorRegistry)
|
|
||||||
protected
|
|
||||||
function CreateEditor(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil): TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
|
||||||
|
|
||||||
var
|
|
||||||
EditorRegistry : IEditorRegistry;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
SysUtils, cxControls;
|
|
||||||
|
|
||||||
function CreateEditor(const AName: String; const IID: TGUID; out Intf): Boolean;
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
Result := Supports(EditorRegistry.CreateEditor(AName, Application), IID, Intf);
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
{ TEditorRegistry }
|
|
||||||
|
|
||||||
function TEditorRegistry.CreateEditor(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent): TForm;
|
|
||||||
begin
|
|
||||||
if not Assigned(AOwner) then
|
|
||||||
AOwner := Application;
|
|
||||||
Result := CreateComponent( aClassOrDisplayname, aOwner ) as TForm;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{procedure TEditorRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if not aMinAcceptableClass.InheritsFrom(TCustomEditor) then
|
|
||||||
aMinAcceptableClass := TCustomEditor;
|
|
||||||
end;}
|
|
||||||
|
|
||||||
initialization
|
|
||||||
EditorRegistry := TEditorRegistry.Create;
|
|
||||||
|
|
||||||
finalization
|
|
||||||
EditorRegistry := NIL;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
unit uInformeRegistryUtils;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, Forms, uClassRegistryUtils;
|
|
||||||
|
|
||||||
type
|
|
||||||
IInformeRegistry = interface (IReportRegistry)
|
|
||||||
['{F6AC050F-5547-4E1F-AA44-DA0D06EDA4D7}']
|
|
||||||
function CreateInforme(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = NIL): TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TInformeRegistry = class(TReportRegistry, IInformeRegistry)
|
|
||||||
protected
|
|
||||||
function CreateInforme(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil): TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function CreateInforme(const AName: String; const IID: TGUID; out Intf): Boolean;
|
|
||||||
|
|
||||||
var
|
|
||||||
InformeRegistry : IInformeRegistry;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
SysUtils, cxControls;
|
|
||||||
|
|
||||||
function CreateInforme(const AName: String; const IID: TGUID; out Intf): Boolean;
|
|
||||||
begin
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
Result := Supports(InformeRegistry.CreateInforme(AName, Application), IID, Intf);
|
|
||||||
finally
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
{ TInformeRegistry }
|
|
||||||
|
|
||||||
function TInformeRegistry.CreateInforme(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent): TInterfacedObject;
|
|
||||||
begin
|
|
||||||
{ if not Assigned(AOwner) then
|
|
||||||
AOwner := Application;}
|
|
||||||
Result := CreateObject( aClassOrDisplayname) as TInterfacedObject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
initialization
|
|
||||||
InformeRegistry := TInformeRegistry.Create;
|
|
||||||
|
|
||||||
finalization
|
|
||||||
InformeRegistry := NIL;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,50 +0,0 @@
|
|||||||
unit uViewRegistryUtils;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, Forms, uClassRegistryUtils, uCustomView;
|
|
||||||
|
|
||||||
type
|
|
||||||
IViewRegistry = interface (IComponentRegistry)
|
|
||||||
['{F49AE52F-47EC-42AF-8365-A09270E4B45D}']
|
|
||||||
function CreateView(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil): TCustomView;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
TViewRegistry = class(TComponentRegistry, IViewRegistry)
|
|
||||||
protected
|
|
||||||
procedure ValidateMinAcceptableClass(var aMinAcceptableClass: TClass); override;
|
|
||||||
function CreateView( const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent = nil ): TCustomView;
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
|
||||||
ViewRegistry : IViewRegistry;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{ TViewRegistry }
|
|
||||||
|
|
||||||
function TViewRegistry.CreateView(const aClassOrDisplayname: String;
|
|
||||||
aOwner: TComponent): TCustomView;
|
|
||||||
begin
|
|
||||||
Result := CreateComponent( aClassOrDisplayname, aOwner ) as TCustomView;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TViewRegistry.ValidateMinAcceptableClass(
|
|
||||||
var aMinAcceptableClass: TClass);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
if not aMinAcceptableClass.InheritsFrom(TCustomView) then
|
|
||||||
aMinAcceptableClass := TCustomView;
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
ViewRegistry := TViewRegistry.Create;
|
|
||||||
|
|
||||||
finalization
|
|
||||||
ViewRegistry := NIL;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,280 +0,0 @@
|
|||||||
unit uControllerBase;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, uDADataTable, Forms;
|
|
||||||
|
|
||||||
type
|
|
||||||
ISujeto = interface;
|
|
||||||
|
|
||||||
IObservador = interface (IInterface)
|
|
||||||
['{679D5CF2-D5DC-4A52-9FF3-04AD91402483}']
|
|
||||||
procedure AddSujeto(Sujeto: ISujeto);
|
|
||||||
procedure DeleteSujeto(Sujeto: ISujeto);
|
|
||||||
procedure RecibirAviso(ASujeto: ISujeto); overload;
|
|
||||||
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); overload;
|
|
||||||
end;
|
|
||||||
|
|
||||||
ISujeto = interface (IInterface)
|
|
||||||
['{CDB691CD-D1D6-4F2E-AA34-93B1CD0E6030}']
|
|
||||||
procedure AddObservador(Observador: IObservador);
|
|
||||||
procedure DeleteObservador(Observador: IObservador);
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ ******************* PARA PRUEBAS ******************************************}
|
|
||||||
TMiInterfacedObject = class(TObject, IInterface)
|
|
||||||
protected
|
|
||||||
FRefCount: Integer;
|
|
||||||
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
|
|
||||||
function _AddRef: Integer; stdcall;
|
|
||||||
function _Release: Integer; virtual; stdcall;
|
|
||||||
function GetRefCount : Integer;
|
|
||||||
public
|
|
||||||
procedure AfterConstruction; override;
|
|
||||||
procedure BeforeDestruction; override;
|
|
||||||
class function NewInstance: TObject; override;
|
|
||||||
property RefCount: Integer read FRefCount;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
{ ***************************************************************************}
|
|
||||||
|
|
||||||
|
|
||||||
TObservador = class(TObject, IObservador)
|
|
||||||
private
|
|
||||||
fSujetos: IInterfaceList;
|
|
||||||
protected
|
|
||||||
FRefCount: Integer;
|
|
||||||
procedure RecibirAviso(ASujeto: ISujeto); overload; virtual;
|
|
||||||
procedure RecibirAviso(ASujeto: ISujeto; ADataTable: IDAStronglyTypedDataTable); overload; virtual; abstract;
|
|
||||||
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
|
|
||||||
function _AddRef: Integer; stdcall;
|
|
||||||
function _Release: Integer; stdcall;
|
|
||||||
function GetRefCount : Integer;
|
|
||||||
public
|
|
||||||
constructor Create; virtual;
|
|
||||||
procedure AddSujeto(Sujeto: ISujeto);
|
|
||||||
procedure DeleteSujeto(Sujeto: ISujeto);
|
|
||||||
destructor Destroy; override;
|
|
||||||
|
|
||||||
procedure AfterConstruction; override;
|
|
||||||
procedure BeforeDestruction; override;
|
|
||||||
class function NewInstance: TObject; override;
|
|
||||||
property RefCount: Integer read FRefCount;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TSujeto = class(TInterfacedObject, ISujeto)
|
|
||||||
private
|
|
||||||
fObservadores: IInterfaceList;
|
|
||||||
protected
|
|
||||||
procedure AvisarObservadores; overload;
|
|
||||||
procedure AvisarObservadores(ADataTable: IDAStronglyTypedDataTable); overload;
|
|
||||||
public
|
|
||||||
constructor Create; virtual;
|
|
||||||
procedure AddObservador(Observador: IObservador);
|
|
||||||
procedure DeleteObservador(Observador: IObservador);
|
|
||||||
destructor Destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
IControllerBase = IObservador;
|
|
||||||
TControllerBase = TObservador;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
Dialogs, SysUtils;
|
|
||||||
|
|
||||||
|
|
||||||
function InterlockedIncrement(var I: Integer): Integer;
|
|
||||||
asm
|
|
||||||
MOV EDX,1
|
|
||||||
XCHG EAX,EDX
|
|
||||||
LOCK XADD [EDX],EAX
|
|
||||||
INC EAX
|
|
||||||
end;
|
|
||||||
|
|
||||||
function InterlockedDecrement(var I: Integer): Integer;
|
|
||||||
asm
|
|
||||||
MOV EDX,-1
|
|
||||||
XCHG EAX,EDX
|
|
||||||
LOCK XADD [EDX],EAX
|
|
||||||
DEC EAX
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TMiInterfacedObject }
|
|
||||||
|
|
||||||
procedure TMiInterfacedObject.AfterConstruction;
|
|
||||||
begin
|
|
||||||
// Release the constructor's implicit refcount
|
|
||||||
InterlockedDecrement(FRefCount);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TMiInterfacedObject.BeforeDestruction;
|
|
||||||
begin
|
|
||||||
// if RefCount <> 0 then
|
|
||||||
// Error(reInvalidPtr);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TMiInterfacedObject.GetRefCount: Integer;
|
|
||||||
begin
|
|
||||||
Result := FRefCount;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// Set an implicit refcount so that refcounting
|
|
||||||
// during construction won't destroy the object.
|
|
||||||
class function TMiInterfacedObject.NewInstance: TObject;
|
|
||||||
begin
|
|
||||||
Result := inherited NewInstance;
|
|
||||||
TMiInterfacedObject(Result).FRefCount := 1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TMiInterfacedObject.QueryInterface(const IID: TGUID; out Obj): HResult;
|
|
||||||
begin
|
|
||||||
if GetInterface(IID, Obj) then
|
|
||||||
Result := 0
|
|
||||||
else
|
|
||||||
Result := E_NOINTERFACE;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TMiInterfacedObject._AddRef: Integer;
|
|
||||||
begin
|
|
||||||
Result := InterlockedIncrement(FRefCount);
|
|
||||||
// ShowMessage('_AddRef: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TMiInterfacedObject._Release: Integer;
|
|
||||||
begin
|
|
||||||
Result := InterlockedDecrement(FRefCount);
|
|
||||||
// ShowMessage('_Release: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
|
||||||
if Result = 0 then
|
|
||||||
Destroy;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{ TSujeto }
|
|
||||||
|
|
||||||
procedure TSujeto.addObservador(Observador: IObservador);
|
|
||||||
begin
|
|
||||||
FObservadores.Add(Observador);
|
|
||||||
Observador.AddSujeto(Self);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TSujeto.AvisarObservadores;
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
AObs : IObservador;
|
|
||||||
begin
|
|
||||||
for i := 0 to Pred(FObservadores.Count) do
|
|
||||||
begin
|
|
||||||
if Supports(FObservadores[i], IObservador, AObs) then
|
|
||||||
AObs.RecibirAviso(Self);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TSujeto.AvisarObservadores(ADataTable: IDAStronglyTypedDataTable);
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
AObs : IObservador;
|
|
||||||
begin
|
|
||||||
for i := 0 to Pred(FObservadores.Count) do
|
|
||||||
begin
|
|
||||||
if Supports(FObservadores[i], IObservador, AObs) then
|
|
||||||
AObs.RecibirAviso(Self, ADataTable);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TSujeto.Create;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FObservadores := TInterfaceList.Create;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TSujeto.DeleteObservador(Observador: IObservador);
|
|
||||||
begin
|
|
||||||
FObservadores.Remove(Observador);
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TSujeto.Destroy;
|
|
||||||
begin
|
|
||||||
FObservadores := NIL;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TObservador }
|
|
||||||
|
|
||||||
procedure TObservador.RecibirAviso(ASujeto: ISujeto);
|
|
||||||
begin
|
|
||||||
//
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TObservador._AddRef: Integer;
|
|
||||||
begin
|
|
||||||
Result := InterlockedIncrement(FRefCount);
|
|
||||||
// ShowMessage('_AddRef: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TObservador._Release: Integer;
|
|
||||||
begin
|
|
||||||
Result := InterlockedDecrement(FRefCount);
|
|
||||||
// ShowMessage('_Release: ' + ClassName + ' - RefCount: ' + IntToStr(FRefCount));
|
|
||||||
// if (Result = 0)
|
|
||||||
if (Assigned(fSujetos) and (fSujetos.Count = FRefCount)) then
|
|
||||||
Destroy;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TObservador.AddSujeto(Sujeto: ISujeto);
|
|
||||||
begin
|
|
||||||
FSujetos.Add(Sujeto);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TObservador.AfterConstruction;
|
|
||||||
begin
|
|
||||||
// Release the constructor's implicit refcount
|
|
||||||
InterlockedDecrement(FRefCount);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TObservador.BeforeDestruction;
|
|
||||||
begin
|
|
||||||
// if RefCount <> 0 then
|
|
||||||
// Error(reInvalidPtr);
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TObservador.Create;
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
FSujetos := TInterfaceList.Create;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TObservador.DeleteSujeto(Sujeto: ISujeto);
|
|
||||||
begin
|
|
||||||
FSujetos.Remove(Sujeto);
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TObservador.Destroy;
|
|
||||||
begin
|
|
||||||
FSujetos := NIL;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TObservador.GetRefCount: Integer;
|
|
||||||
begin
|
|
||||||
Result := FRefCount;
|
|
||||||
end;
|
|
||||||
|
|
||||||
class function TObservador.NewInstance: TObject;
|
|
||||||
begin
|
|
||||||
Result := inherited NewInstance;
|
|
||||||
TObservador(Result).FRefCount := 1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TObservador.QueryInterface(const IID: TGUID; out Obj): HResult;
|
|
||||||
begin
|
|
||||||
if GetInterface(IID, Obj) then
|
|
||||||
Result := 0
|
|
||||||
else
|
|
||||||
Result := E_NOINTERFACE;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,52 +0,0 @@
|
|||||||
unit uAppInfoUtils;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
function GetAppName: String;
|
|
||||||
function GetAppVersion: String;
|
|
||||||
function GetAppFullName: String;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
Forms, SysUtils, JclFileUtils;
|
|
||||||
|
|
||||||
function GetAppName: String;
|
|
||||||
var
|
|
||||||
FAppInfo : TJclFileVersionInfo;
|
|
||||||
begin
|
|
||||||
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
|
|
||||||
try
|
|
||||||
Result := FAppInfo.ProductName;
|
|
||||||
finally
|
|
||||||
FreeANDNil(FAppInfo);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
function GetAppVersion: String;
|
|
||||||
var
|
|
||||||
FAppInfo : TJclFileVersionInfo;
|
|
||||||
begin
|
|
||||||
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
|
|
||||||
try
|
|
||||||
Result := FAppInfo.ProductVersion;
|
|
||||||
finally
|
|
||||||
FreeANDNil(FAppInfo);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function GetAppFullName: String;
|
|
||||||
var
|
|
||||||
FAppInfo : TJclFileVersionInfo;
|
|
||||||
begin
|
|
||||||
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
|
|
||||||
try
|
|
||||||
Result := FAppInfo.ProductName + ' ' + FAppInfo.ProductVersion;
|
|
||||||
finally
|
|
||||||
FreeANDNil(FAppInfo);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
end.
|
|
||||||
@ -1,287 +0,0 @@
|
|||||||
unit uDialogUtils;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Windows, Controls, SysUtils;
|
|
||||||
|
|
||||||
type
|
|
||||||
TDlgButton = (TDlgButton_SI, TDlgButton_NO, TDlgButton_CANCELAR,
|
|
||||||
TDlgButton_ACEPTAR, TDlgButton_OK, TDlgButton_CERRAR);
|
|
||||||
TDlgButtonSet = set of TDlgButton;
|
|
||||||
|
|
||||||
|
|
||||||
//For example:
|
|
||||||
//1. to display the "OpenDialog" for text files
|
|
||||||
//
|
|
||||||
// s := 'aaa.txt';
|
|
||||||
// if OpenFileDialog(Application.Handle, 'txt', 'Text Files|*.txt', 'c:\', 'Select text file', s) then
|
|
||||||
// ShowMessage(s + ' file was selected for open')
|
|
||||||
//
|
|
||||||
//2. to display the "Save dialog":
|
|
||||||
//
|
|
||||||
// s := 'data.dbf';
|
|
||||||
// if SaveFileDialog(Application.Handle, 'dbf', 'dBase tables|*.dbf|All files|*.*', 'c:\', 'Select table', s) then
|
|
||||||
// ShowMessage(s + ' table was selected for save')
|
|
||||||
|
|
||||||
function OpenFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
|
||||||
function SaveFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure ShowInfoMessage(const AMessage : String); overload;
|
|
||||||
procedure ShowInfoMessage(const AHeader : String; const AMessage : String); overload;
|
|
||||||
procedure ShowWarningMessage(const AMessage : String); overload;
|
|
||||||
procedure ShowWarningMessage(const AHeader : String; const AMessage : String); overload;
|
|
||||||
procedure ShowErrorMessage(const AHeader : String; const AMessage : String); overload;
|
|
||||||
procedure ShowErrorMessage(const AHeader : String; const AMessage : String; AException: Exception); overload;
|
|
||||||
|
|
||||||
function ShowConfirmMessage(const AHeader : String;
|
|
||||||
const AMessage : String) : TModalResult; overload;
|
|
||||||
|
|
||||||
function ShowConfirmMessage(const ATitle : String;
|
|
||||||
const AHeader : String;
|
|
||||||
const AMessage : String;
|
|
||||||
const AButtonSet: TDlgButtonSet) : TModalResult; overload;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
Forms,
|
|
||||||
CommDlg,
|
|
||||||
JSDialog,
|
|
||||||
JSDialogs,
|
|
||||||
Classes,
|
|
||||||
StrUtils;
|
|
||||||
|
|
||||||
const
|
|
||||||
sBtnSi = '&Si';
|
|
||||||
sBtnNo = '&No';
|
|
||||||
sBtnCancelar = '&Cancelar';
|
|
||||||
sBtnAceptar = '&Aceptar';
|
|
||||||
sBtnOK = '&OK';
|
|
||||||
sBtnCerrar = '&Cerrar';
|
|
||||||
|
|
||||||
|
|
||||||
function CharReplace(const Source: string; oldChar, newChar: Char): string;
|
|
||||||
var
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
Result := Source;
|
|
||||||
for i := 1 to Length(Result) do
|
|
||||||
if Result[i] = oldChar then
|
|
||||||
Result[i] := newChar
|
|
||||||
end;
|
|
||||||
|
|
||||||
function OpenSaveFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string;
|
|
||||||
MustExist, OverwritePrompt, NoChangeDir, DoOpen: Boolean): Boolean;
|
|
||||||
var
|
|
||||||
ofn: TOpenFileName;
|
|
||||||
szFile: array[0..MAX_PATH] of Char;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
FillChar(ofn, SizeOf(TOpenFileName), 0);
|
|
||||||
FillChar(szFile, SizeOf(szFile), 0);
|
|
||||||
with ofn do
|
|
||||||
begin
|
|
||||||
lStructSize := SizeOf(TOpenFileName);
|
|
||||||
hwndOwner := ParentHandle;
|
|
||||||
lpstrFile := szFile;
|
|
||||||
nMaxFile := SizeOf(szFile);
|
|
||||||
if (Title <> '') then
|
|
||||||
lpstrTitle := PChar(Title);
|
|
||||||
if (InitialDir <> '') then
|
|
||||||
lpstrInitialDir := PChar(InitialDir);
|
|
||||||
StrPCopy(lpstrFile, FileName);
|
|
||||||
lpstrFilter := PChar(ReplaceStr(Filter, '|', #0)+#0#0);
|
|
||||||
if DefExt <> '' then
|
|
||||||
lpstrDefExt := PChar(DefExt);
|
|
||||||
end;
|
|
||||||
|
|
||||||
if MustExist then
|
|
||||||
ofn.Flags := ofn.Flags or OFN_FILEMUSTEXIST;
|
|
||||||
|
|
||||||
if OverwritePrompt then
|
|
||||||
ofn.Flags := ofn.Flags or OFN_OVERWRITEPROMPT;
|
|
||||||
|
|
||||||
if NoChangeDir then
|
|
||||||
ofn.Flags := ofn.Flags or OFN_NOCHANGEDIR;
|
|
||||||
|
|
||||||
if DoOpen then
|
|
||||||
begin
|
|
||||||
if GetOpenFileName(ofn) then
|
|
||||||
begin
|
|
||||||
Result := True;
|
|
||||||
FileName := StrPas(szFile);
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
if GetSaveFileName(ofn) then
|
|
||||||
begin
|
|
||||||
Result := True;
|
|
||||||
FileName := StrPas(szFile);
|
|
||||||
end;
|
|
||||||
end
|
|
||||||
end;
|
|
||||||
|
|
||||||
function OpenFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
|
||||||
begin
|
|
||||||
Result := OpenSaveFileDialog(ParentHandle, DefExt, Filter, InitialDir, Title, FileName, True, False, False, True);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function SaveFileDialog(ParentHandle: THandle; const DefExt, Filter, InitialDir, Title: string; var FileName: string): Boolean;
|
|
||||||
begin
|
|
||||||
Result := OpenSaveFileDialog(ParentHandle, DefExt, Filter, InitialDir, Title, FileName, False, True, True, False);
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
function CreateTaskDialog(const ATitle: String;
|
|
||||||
const AInstruction: String;
|
|
||||||
const AMessage: String;
|
|
||||||
const AIcon: TTaskDialogIcon): TJSDialog;
|
|
||||||
var
|
|
||||||
ADialog : TJSDialog;
|
|
||||||
begin
|
|
||||||
ADialog := TJSDialog.Create(NIL);
|
|
||||||
with ADialog do
|
|
||||||
begin
|
|
||||||
Position := dpScreenCenter;
|
|
||||||
ButtonBar.Buttons := [];
|
|
||||||
DialogOptions := [doModal, doTopMost];
|
|
||||||
|
|
||||||
Title := ATitle;
|
|
||||||
Instruction.Text := AInstruction;
|
|
||||||
Content.Text := AMessage;
|
|
||||||
MainIcon := AIcon;
|
|
||||||
end;
|
|
||||||
Result := ADialog;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure CreateCustomButtons(const AButtonSet: TDlgButtonSet;
|
|
||||||
ACustomButtons : TJSCustomButtons);
|
|
||||||
|
|
||||||
function CreateButton(const ACaption: String; const AModalResult: TModalResult): TJSCustomButtonItem;
|
|
||||||
begin
|
|
||||||
Result := ACustomButtons.Add;
|
|
||||||
Result.Caption := ACaption;
|
|
||||||
Result.ModalResult := AModalResult;
|
|
||||||
end;
|
|
||||||
|
|
||||||
begin
|
|
||||||
with ACustomButtons do
|
|
||||||
begin
|
|
||||||
Clear;
|
|
||||||
|
|
||||||
if TDlgButton_SI in AButtonSet then
|
|
||||||
CreateButton(sBtnSi, mrYes);
|
|
||||||
|
|
||||||
if TDlgButton_NO in AButtonSet then
|
|
||||||
CreateButton(sBtnNo, mrNo);
|
|
||||||
|
|
||||||
if TDlgButton_CANCELAR in AButtonSet then
|
|
||||||
CreateButton(sBtnCancelar, mrCancel);
|
|
||||||
|
|
||||||
if TDlgButton_ACEPTAR in AButtonSet then
|
|
||||||
CreateButton(sBtnAceptar, mrOk);
|
|
||||||
|
|
||||||
if TDlgButton_OK in AButtonSet then
|
|
||||||
CreateButton(sBtnOK, mrOk);
|
|
||||||
|
|
||||||
if TDlgButton_CERRAR in AButtonSet then
|
|
||||||
CreateButton(sBtnCerrar, mrNone);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ShowInfoMessage(const AHeader : String; const AMessage : String); overload;
|
|
||||||
var
|
|
||||||
ADialog : TJSDialog;
|
|
||||||
begin
|
|
||||||
ADialog := CreateTaskDialog('Información', AHeader, AMessage, tdiInformation);
|
|
||||||
try
|
|
||||||
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
|
||||||
ADialog.Execute;
|
|
||||||
finally
|
|
||||||
FreeAndNIL(ADialog);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ShowInfoMessage(const AMessage : String);
|
|
||||||
begin
|
|
||||||
ShowInfoMessage('', AMessage);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ShowWarningMessage(const AHeader : String; const AMessage : String); overload;
|
|
||||||
var
|
|
||||||
ADialog : TJSDialog;
|
|
||||||
begin
|
|
||||||
ADialog := CreateTaskDialog('¡Atención!', AHeader, AMessage, tdiWarning);
|
|
||||||
try
|
|
||||||
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
|
||||||
ADialog.Execute;
|
|
||||||
finally
|
|
||||||
FreeAndNIL(ADialog);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ShowWarningMessage(const AMessage : String);
|
|
||||||
begin
|
|
||||||
ShowWarningMessage('', AMessage);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ShowErrorMessage(const AHeader : String; const AMessage : String);
|
|
||||||
var
|
|
||||||
ADialog : TJSDialog;
|
|
||||||
begin
|
|
||||||
ADialog := CreateTaskDialog(Application.Title, AHeader, AMessage, tdiError);
|
|
||||||
try
|
|
||||||
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
|
||||||
ADialog.Execute;
|
|
||||||
finally
|
|
||||||
FreeAndNIL(ADialog);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ShowErrorMessage(const AHeader : String; const AMessage : String; AException: Exception);
|
|
||||||
var
|
|
||||||
ADialog : TJSDialog;
|
|
||||||
begin
|
|
||||||
ADialog := CreateTaskDialog(Application.Title, AHeader, AMessage, tdiError);
|
|
||||||
try
|
|
||||||
CreateCustomButtons([TDlgButton_CERRAR], ADialog.CustomButtons);
|
|
||||||
ADialog.Expando.Lines.Text := #13#13 + AException.Message;
|
|
||||||
ADialog.Expando.ShowText := 'Mostrar información sobre el error';
|
|
||||||
ADialog.Expando.HideText := 'No mostrar información sobre el error';
|
|
||||||
ADialog.Expando.Visible := True;
|
|
||||||
ADialog.Execute;
|
|
||||||
finally
|
|
||||||
FreeAndNIL(ADialog);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function ShowConfirmMessage(const AHeader : String;
|
|
||||||
const AMessage : String) : TModalResult;
|
|
||||||
begin
|
|
||||||
Result := ShowConfirmMessage(Application.Title, AHeader,
|
|
||||||
AMessage, [TDlgButton_SI, TDlgButton_NO]);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function ShowConfirmMessage(const ATitle : String;
|
|
||||||
const AHeader : String;
|
|
||||||
const AMessage : String;
|
|
||||||
const AButtonSet: TDlgButtonSet) : TModalResult;
|
|
||||||
var
|
|
||||||
ADialog : TJSDialog;
|
|
||||||
begin
|
|
||||||
ADialog := CreateTaskDialog(Application.Title, AHeader, AMessage, tdiConfirmation);
|
|
||||||
try
|
|
||||||
CreateCustomButtons(AButtonSet, ADialog.CustomButtons);
|
|
||||||
Result := ADialog.Execute;
|
|
||||||
finally
|
|
||||||
FreeAndNIL(ADialog);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
@ -2,6 +2,7 @@ object fConfigurarConexion: TfConfigurarConexion
|
|||||||
Left = 663
|
Left = 663
|
||||||
Top = 468
|
Top = 468
|
||||||
ActiveControl = edtServer
|
ActiveControl = edtServer
|
||||||
|
AutoScroll = False
|
||||||
Caption = 'Configuraci'#243'n de la conexi'#243'n'
|
Caption = 'Configuraci'#243'n de la conexi'#243'n'
|
||||||
ClientHeight = 149
|
ClientHeight = 149
|
||||||
ClientWidth = 392
|
ClientWidth = 392
|
||||||
@ -89,10 +90,12 @@ object fConfigurarConexion: TfConfigurarConexion
|
|||||||
TabOrder = 3
|
TabOrder = 3
|
||||||
end
|
end
|
||||||
object HTTPChannel: TROWinInetHTTPChannel
|
object HTTPChannel: TROWinInetHTTPChannel
|
||||||
UserAgent = 'AdminPV'
|
|
||||||
TargetURL = 'http://localhost:8099/BIN'
|
|
||||||
ServerLocators = <>
|
ServerLocators = <>
|
||||||
DispatchOptions = []
|
DispatchOptions = []
|
||||||
|
ProbeServers = False
|
||||||
|
ProbeFrequency = 60000
|
||||||
|
UserAgent = 'AdminPV'
|
||||||
|
TargetURL = 'http://localhost:8099/BIN'
|
||||||
Left = 120
|
Left = 120
|
||||||
Top = 112
|
Top = 112
|
||||||
end
|
end
|
||||||
@ -101,9 +104,9 @@ object fConfigurarConexion: TfConfigurarConexion
|
|||||||
Top = 112
|
Top = 112
|
||||||
end
|
end
|
||||||
object CoService: TRORemoteService
|
object CoService: TRORemoteService
|
||||||
|
ServiceName = 'srvLogin'
|
||||||
Message = ROBinMessage
|
Message = ROBinMessage
|
||||||
Channel = HTTPChannel
|
Channel = HTTPChannel
|
||||||
ServiceName = 'srvLogin'
|
|
||||||
Left = 184
|
Left = 184
|
||||||
Top = 112
|
Top = 112
|
||||||
end
|
end
|
||||||
|
|||||||
@ -36,7 +36,7 @@ var
|
|||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
StrUtils, JclStrings, uDMBase, VARELA_Intf;
|
StrUtils, JclStrings, uDataModuleBase, VARELA_Intf;
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -1,254 +0,0 @@
|
|||||||
unit uDMBase;
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Controls, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
|
|
||||||
TBXOffice2003Theme, Classes, ImgList, uROClient, uROBinMessage,
|
|
||||||
uROServiceComponent, uRORemoteService, uROWinInetHttpChannel,
|
|
||||||
DataAbstract3_Intf, uDADataTable, uDABINAdapter, cxintl, cxIntlPrintSys3,
|
|
||||||
JvAppStorage, JvAppRegistryStorage, SysUtils,
|
|
||||||
JvComponentBase, uDADataStreamer;
|
|
||||||
|
|
||||||
type
|
|
||||||
TdmBase = class(TDataModule)
|
|
||||||
ROChannel: TROWinInetHTTPChannel;
|
|
||||||
SmallImages: TPngImageList;
|
|
||||||
StyleManager: TJvNavPaneStyleManager;
|
|
||||||
TBXSwitcher: TTBXSwitcher;
|
|
||||||
cxIntl: TcxIntl;
|
|
||||||
cxIntlPrintSys3: TcxIntlPrintSys3;
|
|
||||||
ROMessage: TROBinMessage;
|
|
||||||
DABINAdapter: TDABINAdapter;
|
|
||||||
JvAppRegistryStorage: TJvAppRegistryStorage;
|
|
||||||
RORemoteService: TRORemoteService;
|
|
||||||
procedure DAClientDataModuleCreate(Sender: TObject);
|
|
||||||
procedure ROChannelFailure(Sender: TROTransportChannel;
|
|
||||||
anException: Exception; var Retry: Boolean);
|
|
||||||
procedure ROChannelProgress(iSender: TObject; iType: TProgressType;
|
|
||||||
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
|
||||||
private
|
|
||||||
FOnThemeChange: TNotifyEvent;
|
|
||||||
function GetAdapter: TDABINAdapter;
|
|
||||||
function GetChannel: TROWinInetHTTPChannel;
|
|
||||||
function GetCodigoEmpresa: Integer;
|
|
||||||
function GetMessage: TROBinMessage;
|
|
||||||
procedure InitStyleManager;
|
|
||||||
procedure OnTBXThemeChange(Sender: TObject);
|
|
||||||
procedure LeerConfiguracion;
|
|
||||||
procedure SalvarConfiguracion;
|
|
||||||
public
|
|
||||||
function DarVersion : String;
|
|
||||||
procedure ConfigurarConexion;
|
|
||||||
function HayConexion(const ATargetURL : String = ''): Boolean;
|
|
||||||
property Adapter: TDABINAdapter read GetAdapter;
|
|
||||||
property Channel: TROWinInetHTTPChannel read GetChannel;
|
|
||||||
property CodigoEmpresa: Integer read GetCodigoEmpresa;
|
|
||||||
property Message: TROBinMessage read GetMessage;
|
|
||||||
property OnThemeChange: TNotifyEvent read FOnThemeChange write
|
|
||||||
FOnThemeChange;
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
|
||||||
dmBase: TdmBase;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.DFM}
|
|
||||||
|
|
||||||
uses
|
|
||||||
Dialogs, TBX, TBXThemes, uConfigurarConexion, WinInet, Forms, Windows,
|
|
||||||
JclFileUtils, VARELA_Intf, cxControls;
|
|
||||||
|
|
||||||
const
|
|
||||||
SERVER_URL = 'http://localhost:8099/bin';
|
|
||||||
IE_OFFLINE_ERROR = 'Unexpected error in WinInet HTTP Channel (2)';
|
|
||||||
|
|
||||||
{
|
|
||||||
*********************************** TdmBase ************************************
|
|
||||||
}
|
|
||||||
procedure TdmBase.ConfigurarConexion;
|
|
||||||
begin
|
|
||||||
with TfConfigurarConexion.Create(NIL) do
|
|
||||||
try
|
|
||||||
TargetURL := ROChannel.TargetURL;
|
|
||||||
if ShowModal = mrOk then
|
|
||||||
begin
|
|
||||||
ROChannel.TargetURL := TargetURL;
|
|
||||||
ROChannel.Connected := False;
|
|
||||||
ROChannel.Connected := True;
|
|
||||||
SalvarConfiguracion;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
Free;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.DAClientDataModuleCreate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
TBXSwitcher.OnThemeChange := OnTBXThemeChange;
|
|
||||||
TBXSetTheme('Office2003');
|
|
||||||
|
|
||||||
LeerConfiguracion;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.GetAdapter: TDABINAdapter;
|
|
||||||
begin
|
|
||||||
Result := DABinAdapter;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.GetChannel: TROWinInetHTTPChannel;
|
|
||||||
begin
|
|
||||||
Result := ROChannel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.GetCodigoEmpresa: Integer;
|
|
||||||
begin
|
|
||||||
Result := 1;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.GetMessage: TROBinMessage;
|
|
||||||
begin
|
|
||||||
Result := ROMessage;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.InitStyleManager;
|
|
||||||
begin
|
|
||||||
if not USE_THEMES then
|
|
||||||
begin
|
|
||||||
TBXSwitcher.EnableXPStyles := False;
|
|
||||||
StyleManager.Theme := nptStandard;
|
|
||||||
end
|
|
||||||
else begin
|
|
||||||
TBXSwitcher.EnableXPStyles := True;
|
|
||||||
with StyleManager do
|
|
||||||
begin
|
|
||||||
if CurrentTheme is TTBXOffice2003Theme then
|
|
||||||
begin
|
|
||||||
case GetOffice2003Scheme of
|
|
||||||
osBlue : Theme := nptXPBlue;
|
|
||||||
osMetallic : Theme := nptXPSilver;
|
|
||||||
osGreen : Theme := nptXPOlive;
|
|
||||||
else
|
|
||||||
Theme := nptStandard;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
procedure TdmBase.LeerConfiguracion;
|
|
||||||
begin
|
|
||||||
ROChannel.TargetURL := JvAppRegistryStorage.ReadString('ServerURL', SERVER_URL);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.OnTBXThemeChange(Sender: TObject);
|
|
||||||
begin
|
|
||||||
InitStyleManager;
|
|
||||||
|
|
||||||
if Assigned(FOnThemeChange) then
|
|
||||||
FOnThemeChange(Sender);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.SalvarConfiguracion;
|
|
||||||
begin
|
|
||||||
JvAppRegistryStorage.BeginUpdate;
|
|
||||||
try
|
|
||||||
JvAppRegistryStorage.WriteString('ServerURL', ROChannel.TargetURL);
|
|
||||||
finally
|
|
||||||
JvAppRegistryStorage.EndUpdate;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.ROChannelFailure(Sender: TROTransportChannel;
|
|
||||||
anException: Exception; var Retry: Boolean);
|
|
||||||
begin
|
|
||||||
if (Pos(anException.Message, IE_OFFLINE_ERROR) > 0) then
|
|
||||||
begin
|
|
||||||
// Preguntar al usuario si se quiere conectar
|
|
||||||
if InternetGoOnline(PAnsiChar(ROChannel.TargetURL), GetDesktopWindow(), 0) then
|
|
||||||
Retry := True // Si el usuario pulsa en 'Conectar' reintentar la operación
|
|
||||||
else
|
|
||||||
Abort; // Si el usuario pulsa en 'Seguir desconectado' parar todo
|
|
||||||
end
|
|
||||||
else
|
|
||||||
Retry := True;
|
|
||||||
// raise Exception.Create(anException.Message);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TdmBase.ROChannelProgress(iSender: TObject; iType: TProgressType;
|
|
||||||
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
|
||||||
begin
|
|
||||||
{ if iType = ptInProgress then
|
|
||||||
begin
|
|
||||||
if not Form1.Visible then
|
|
||||||
Form1.Show;
|
|
||||||
end
|
|
||||||
else
|
|
||||||
Form1.Hide;}
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.DarVersion: String;
|
|
||||||
var
|
|
||||||
Obj : TJclFileVersionInfo;
|
|
||||||
begin
|
|
||||||
Obj := TJclFileVersionInfo.Create(Application.ExeName);
|
|
||||||
try
|
|
||||||
Result := 'v' + Obj.FileVersion;
|
|
||||||
finally
|
|
||||||
FreeAndNil(Obj);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TdmBase.HayConexion(const ATargetURL: String): Boolean;
|
|
||||||
var
|
|
||||||
AHTTPChannel: TROWinInetHTTPChannel;
|
|
||||||
AROBinMessage: TROBinMessage;
|
|
||||||
ACoService: TRORemoteService;
|
|
||||||
begin
|
|
||||||
AHTTPChannel := TROWinInetHTTPChannel.Create(Self);
|
|
||||||
AROBinMessage := TROBinMessage.Create(Self);
|
|
||||||
ACoService := TRORemoteService.Create(Self);
|
|
||||||
|
|
||||||
ShowHourglassCursor;
|
|
||||||
try
|
|
||||||
with AHTTPChannel do
|
|
||||||
begin
|
|
||||||
Name := 'HTTPChannel';
|
|
||||||
UserAgent := 'AdminPV';
|
|
||||||
if Length(ATargetURL) > 0 then
|
|
||||||
TargetURL := ATargetURL
|
|
||||||
else
|
|
||||||
TargetURL := ROChannel.TargetURL;
|
|
||||||
end;
|
|
||||||
|
|
||||||
with ACoService do
|
|
||||||
begin
|
|
||||||
ServiceName := 'srvLogin';
|
|
||||||
Message := AROBinMessage;
|
|
||||||
Channel := AHTTPChannel;
|
|
||||||
end;
|
|
||||||
|
|
||||||
try
|
|
||||||
(ACoService as IsrvLogin).Ping;
|
|
||||||
Result := True;
|
|
||||||
except
|
|
||||||
Result := False;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
AHTTPChannel.Connected := False;
|
|
||||||
FreeAndNil(AHTTPChannel);
|
|
||||||
FreeAndNil(ACoService);
|
|
||||||
FreeAndNil(AROBinMessage);
|
|
||||||
HideHourglassCursor;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
initialization
|
|
||||||
dmBase := TdmBase.Create(NIL);
|
|
||||||
|
|
||||||
finalization
|
|
||||||
dmBase.Free;
|
|
||||||
|
|
||||||
end.
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -3,48 +3,252 @@ unit uDataModuleBase;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes;
|
Controls, PngImageList, JvComponent, JvNavigationPane, TBXSwitcher,
|
||||||
|
TBXOffice2003Theme, Classes, ImgList, uROClient, uROBinMessage,
|
||||||
|
uROServiceComponent, uRORemoteService, uROWinInetHttpChannel,
|
||||||
|
DataAbstract3_Intf, uDADataTable, uDABINAdapter, cxintl, cxIntlPrintSys3,
|
||||||
|
JvAppStorage, JvAppRegistryStorage, SysUtils,
|
||||||
|
JvComponentBase, uDADataStreamer;
|
||||||
|
|
||||||
type
|
type
|
||||||
TDataModuleBase = class(TDataModule)
|
TdmBase = class(TDataModule)
|
||||||
|
ROChannel: TROWinInetHTTPChannel;
|
||||||
|
SmallImages: TPngImageList;
|
||||||
|
StyleManager: TJvNavPaneStyleManager;
|
||||||
|
TBXSwitcher: TTBXSwitcher;
|
||||||
|
cxIntl: TcxIntl;
|
||||||
|
cxIntlPrintSys3: TcxIntlPrintSys3;
|
||||||
|
ROMessage: TROBinMessage;
|
||||||
|
DABINAdapter: TDABINAdapter;
|
||||||
|
JvAppRegistryStorage: TJvAppRegistryStorage;
|
||||||
|
RORemoteService: TRORemoteService;
|
||||||
|
procedure DAClientDataModuleCreate(Sender: TObject);
|
||||||
|
procedure ROChannelFailure(Sender: TROTransportChannel;
|
||||||
|
anException: Exception; var Retry: Boolean);
|
||||||
|
procedure ROChannelProgress(iSender: TObject; iType: TProgressType;
|
||||||
|
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
||||||
private
|
private
|
||||||
FRefCount: Integer;
|
FOnThemeChange: TNotifyEvent;
|
||||||
protected
|
function GetAdapter: TDABINAdapter;
|
||||||
function QueryInterface(const IID: TGUID; out Obj): HResult; override; stdcall;
|
function GetChannel: TROWinInetHTTPChannel;
|
||||||
function _AddRef: Integer; stdcall;
|
function GetCodigoEmpresa: Integer;
|
||||||
function _Release: Integer; stdcall;
|
function GetMessage: TROBinMessage;
|
||||||
|
procedure InitStyleManager;
|
||||||
|
procedure OnTBXThemeChange(Sender: TObject);
|
||||||
|
procedure LeerConfiguracion;
|
||||||
|
procedure SalvarConfiguracion;
|
||||||
public
|
public
|
||||||
property RefCount: integer read fRefCount write fRefCount;
|
function DarVersion : String;
|
||||||
|
procedure ConfigurarConexion;
|
||||||
|
function HayConexion(const ATargetURL : String = ''): Boolean;
|
||||||
|
property Adapter: TDABINAdapter read GetAdapter;
|
||||||
|
property Channel: TROWinInetHTTPChannel read GetChannel;
|
||||||
|
property CodigoEmpresa: Integer read GetCodigoEmpresa;
|
||||||
|
property Message: TROBinMessage read GetMessage;
|
||||||
|
property OnThemeChange: TNotifyEvent read FOnThemeChange write
|
||||||
|
FOnThemeChange;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
dmBase: TdmBase;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
|
||||||
{$R *.DFM}
|
{$R *.DFM}
|
||||||
|
|
||||||
// Set an implicit refcount so that refcounting
|
uses
|
||||||
// during construction won't destroy the object.
|
Dialogs, TBX, TBXThemes, uConfigurarConexion, WinInet, Forms, Windows,
|
||||||
|
JclFileUtils, VARELA_Intf, cxControls;
|
||||||
|
|
||||||
function TDataModuleBase.QueryInterface( const IID: TGUID; out Obj): HResult;
|
const
|
||||||
|
SERVER_URL = 'http://localhost:8099/bin';
|
||||||
|
IE_OFFLINE_ERROR = 'Unexpected error in WinInet HTTP Channel (2)';
|
||||||
|
|
||||||
|
{
|
||||||
|
*********************************** TdmBase ************************************
|
||||||
|
}
|
||||||
|
procedure TdmBase.ConfigurarConexion;
|
||||||
begin
|
begin
|
||||||
if GetInterface(IID, Obj)
|
with TfConfigurarConexion.Create(NIL) do
|
||||||
then Result := 0
|
try
|
||||||
else Result := E_NOINTERFACE;
|
TargetURL := ROChannel.TargetURL;
|
||||||
|
if ShowModal = mrOk then
|
||||||
|
begin
|
||||||
|
ROChannel.TargetURL := TargetURL;
|
||||||
|
ROChannel.Connected := False;
|
||||||
|
ROChannel.Connected := True;
|
||||||
|
SalvarConfiguracion;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
Free;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TDataModuleBase._AddRef: Integer;
|
procedure TdmBase.DAClientDataModuleCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Inc(fRefCount);
|
TBXSwitcher.OnThemeChange := OnTBXThemeChange;
|
||||||
Result := fRefCount;
|
TBXSetTheme('Office2003');
|
||||||
|
|
||||||
|
LeerConfiguracion;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TDataModuleBase._Release: Integer;
|
function TdmBase.GetAdapter: TDABINAdapter;
|
||||||
begin
|
begin
|
||||||
Dec(fRefCount);
|
Result := DABinAdapter;
|
||||||
Result := fRefCount;
|
|
||||||
if fRefCount = 0 then Destroy;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetChannel: TROWinInetHTTPChannel;
|
||||||
|
begin
|
||||||
|
Result := ROChannel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetCodigoEmpresa: Integer;
|
||||||
|
begin
|
||||||
|
Result := 1;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.GetMessage: TROBinMessage;
|
||||||
|
begin
|
||||||
|
Result := ROMessage;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.InitStyleManager;
|
||||||
|
begin
|
||||||
|
if not USE_THEMES then
|
||||||
|
begin
|
||||||
|
TBXSwitcher.EnableXPStyles := False;
|
||||||
|
StyleManager.Theme := nptStandard;
|
||||||
|
end
|
||||||
|
else begin
|
||||||
|
TBXSwitcher.EnableXPStyles := True;
|
||||||
|
with StyleManager do
|
||||||
|
begin
|
||||||
|
if CurrentTheme is TTBXOffice2003Theme then
|
||||||
|
begin
|
||||||
|
case GetOffice2003Scheme of
|
||||||
|
osBlue : Theme := nptXPBlue;
|
||||||
|
osMetallic : Theme := nptXPSilver;
|
||||||
|
osGreen : Theme := nptXPOlive;
|
||||||
|
else
|
||||||
|
Theme := nptStandard;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TdmBase.LeerConfiguracion;
|
||||||
|
begin
|
||||||
|
ROChannel.TargetURL := JvAppRegistryStorage.ReadString('ServerURL', SERVER_URL);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.OnTBXThemeChange(Sender: TObject);
|
||||||
|
begin
|
||||||
|
InitStyleManager;
|
||||||
|
|
||||||
|
if Assigned(FOnThemeChange) then
|
||||||
|
FOnThemeChange(Sender);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.SalvarConfiguracion;
|
||||||
|
begin
|
||||||
|
JvAppRegistryStorage.BeginUpdate;
|
||||||
|
try
|
||||||
|
JvAppRegistryStorage.WriteString('ServerURL', ROChannel.TargetURL);
|
||||||
|
finally
|
||||||
|
JvAppRegistryStorage.EndUpdate;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.ROChannelFailure(Sender: TROTransportChannel;
|
||||||
|
anException: Exception; var Retry: Boolean);
|
||||||
|
begin
|
||||||
|
if (Pos(anException.Message, IE_OFFLINE_ERROR) > 0) then
|
||||||
|
begin
|
||||||
|
// Preguntar al usuario si se quiere conectar
|
||||||
|
if InternetGoOnline(PAnsiChar(ROChannel.TargetURL), GetDesktopWindow(), 0) then
|
||||||
|
Retry := True // Si el usuario pulsa en 'Conectar' reintentar la operación
|
||||||
|
else
|
||||||
|
Abort; // Si el usuario pulsa en 'Seguir desconectado' parar todo
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Retry := True;
|
||||||
|
// raise Exception.Create(anException.Message);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TdmBase.ROChannelProgress(iSender: TObject; iType: TProgressType;
|
||||||
|
iDirection: TProgressDirection; iTransferred, iTotal: Integer);
|
||||||
|
begin
|
||||||
|
{ if iType = ptInProgress then
|
||||||
|
begin
|
||||||
|
if not Form1.Visible then
|
||||||
|
Form1.Show;
|
||||||
|
end
|
||||||
|
else
|
||||||
|
Form1.Hide;}
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.DarVersion: String;
|
||||||
|
var
|
||||||
|
Obj : TJclFileVersionInfo;
|
||||||
|
begin
|
||||||
|
Obj := TJclFileVersionInfo.Create(Application.ExeName);
|
||||||
|
try
|
||||||
|
Result := 'v' + Obj.FileVersion;
|
||||||
|
finally
|
||||||
|
FreeAndNil(Obj);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TdmBase.HayConexion(const ATargetURL: String): Boolean;
|
||||||
|
var
|
||||||
|
AHTTPChannel: TROWinInetHTTPChannel;
|
||||||
|
AROBinMessage: TROBinMessage;
|
||||||
|
ACoService: TRORemoteService;
|
||||||
|
begin
|
||||||
|
AHTTPChannel := TROWinInetHTTPChannel.Create(Self);
|
||||||
|
AROBinMessage := TROBinMessage.Create(Self);
|
||||||
|
ACoService := TRORemoteService.Create(Self);
|
||||||
|
|
||||||
|
ShowHourglassCursor;
|
||||||
|
try
|
||||||
|
with AHTTPChannel do
|
||||||
|
begin
|
||||||
|
Name := 'HTTPChannel';
|
||||||
|
UserAgent := 'AdminPV';
|
||||||
|
if Length(ATargetURL) > 0 then
|
||||||
|
TargetURL := ATargetURL
|
||||||
|
else
|
||||||
|
TargetURL := ROChannel.TargetURL;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with ACoService do
|
||||||
|
begin
|
||||||
|
ServiceName := 'srvLogin';
|
||||||
|
Message := AROBinMessage;
|
||||||
|
Channel := AHTTPChannel;
|
||||||
|
end;
|
||||||
|
|
||||||
|
try
|
||||||
|
(ACoService as IsrvLogin).Ping;
|
||||||
|
Result := True;
|
||||||
|
except
|
||||||
|
Result := False;
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
AHTTPChannel.Connected := False;
|
||||||
|
FreeAndNil(AHTTPChannel);
|
||||||
|
FreeAndNil(ACoService);
|
||||||
|
FreeAndNil(AROBinMessage);
|
||||||
|
HideHourglassCursor;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
initialization
|
||||||
|
dmBase := TdmBase.Create(NIL);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
dmBase.Free;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
@ -3,27 +3,22 @@ unit uDataTableUtils;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
uDACDSDataTable, uDADataTable, uDAInterfaces, uDADelta, uDAMemDataTable;
|
uDACDSDataTable, uDADataTable, uDAInterfaces, uDADelta;
|
||||||
|
|
||||||
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
||||||
var ATarget : TDACDSDataTable;
|
var ATarget : TDACDSDataTable;
|
||||||
RemoteUpdate: Boolean = True); overload;
|
RemoteUpdate: Boolean = True);
|
||||||
|
|
||||||
function CloneDataTable(const ASource : TDAMemDataTable;
|
|
||||||
RemoteUpdate: Boolean = True): TDAMemDataTable; overload;
|
|
||||||
|
|
||||||
procedure CopyDataTable(ASource : IDADataset; ATarget : TDADataTable;
|
procedure CopyDataTable(ASource : IDADataset; ATarget : TDADataTable;
|
||||||
const OnlySelectedRows : Boolean = False);
|
const OnlySelectedRows : Boolean = False);
|
||||||
procedure DeleteAllTable(const ADataTable : TDADataTable);
|
procedure DeleteAllTable(const ADataTable : TDADataTable);
|
||||||
function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean;
|
function DeltaValuesAreDifferent(const aDelta : IDADelta): boolean;
|
||||||
|
|
||||||
function DataTableModified (const ADataTable : TDADataTable): Boolean;
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
DB, Classes, uDAClasses, SysUtils, uDABINAdapter, uROTypes, uDBSelectionList,
|
uDAClasses, SysUtils, uDABINAdapter, uROTypes, uDBSelectionList, cxControls,
|
||||||
cxControls, Dialogs, Variants, uDADataStreamer;
|
Dialogs, Variants, uDADataStreamer;
|
||||||
|
|
||||||
|
|
||||||
{procedure EliminarNoSeleccionados(const ASource : IDADataset;
|
{procedure EliminarNoSeleccionados(const ASource : IDADataset;
|
||||||
@ -149,80 +144,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
function CloneDataTable(const ASource : TDAMemDataTable;
|
|
||||||
RemoteUpdate: Boolean = True): TDAMemDataTable;
|
|
||||||
var
|
|
||||||
i : Integer;
|
|
||||||
ATarget : TDAMemDataTable;
|
|
||||||
begin
|
|
||||||
if not Assigned(ASource) then
|
|
||||||
raise Exception.Create ('No se ha asignado la tabla de origen (CloneDataTable)');
|
|
||||||
|
|
||||||
ATarget := TDAMemDataTable.Create(NIL);
|
|
||||||
with ATarget do
|
|
||||||
begin
|
|
||||||
|
|
||||||
{ ATENCIÓN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
||||||
--------------------------------------------------------------------
|
|
||||||
DA5 tiene un fallo en el cual las tablas definidas como detalle no
|
|
||||||
tienen asociados los eventos internos before... y after... por lo
|
|
||||||
que los campos AutoInc no funcionan (no pone el -1, -2...).
|
|
||||||
La forma de arreglarlo es llamar a DisableEventHandlers/EnableEventHandlers
|
|
||||||
que realiza la asociación de los eventos.
|
|
||||||
}
|
|
||||||
ATarget.DisableEventHandlers; // <--- INDISPENSABLE!!!!!!!!!!!!!!!!!!!!
|
|
||||||
|
|
||||||
|
|
||||||
try
|
|
||||||
if not Assigned(ASource.RemoteDataAdapter) then
|
|
||||||
raise Exception.Create('No está asignado RemoteDataAdapter (' + ASource.Name + ')');
|
|
||||||
|
|
||||||
LogicalName := ASource.LogicalName;
|
|
||||||
CustomAttributes.Assign(ASource.CustomAttributes);
|
|
||||||
Fields.AssignFieldCollection(ASource.Fields); // o también ATarget.LoadSchema;
|
|
||||||
Params.AssignParamCollection(ASource.Params);
|
|
||||||
|
|
||||||
RemoteDataAdapter := ASource.RemoteDataAdapter;
|
|
||||||
|
|
||||||
Randomize;
|
|
||||||
Name := ASource.Name + '_' + IntToStr(Random(MAXINT));
|
|
||||||
|
|
||||||
BusinessRulesID := ASource.BusinessRulesID;
|
|
||||||
|
|
||||||
with MasterParamsMappings do
|
|
||||||
for i := 0 to ASource.MasterParamsMappings.Count - 1 do
|
|
||||||
Add(ASource.MasterParamsMappings.Strings[i]);
|
|
||||||
|
|
||||||
with MasterRequestMappings do
|
|
||||||
for i := 0 to ASource.MasterRequestMappings.Count - 1 do
|
|
||||||
Add(ASource.MasterRequestMappings.Strings[i]);
|
|
||||||
|
|
||||||
MasterMappingMode := ASource.MasterMappingMode;
|
|
||||||
|
|
||||||
MasterFields := ASource.MasterFields;
|
|
||||||
MasterOptions := ASource.MasterOptions;
|
|
||||||
|
|
||||||
DetailFields := ASource.DetailFields;
|
|
||||||
DetailOptions := ASource.DetailOptions;
|
|
||||||
|
|
||||||
RemoteUpdatesOptions := ASource.RemoteUpdatesOptions;
|
|
||||||
StreamingOptions := ASource.StreamingOptions;
|
|
||||||
RemoteFetchEnabled := ASource.RemoteFetchEnabled;
|
|
||||||
finally
|
|
||||||
ATarget.EnableEventHandlers; // <--- INDISPENSABLE!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
if not RemoteUpdate then
|
|
||||||
begin
|
|
||||||
ATarget.LogChanges := False;
|
|
||||||
ATarget.RemoteFetchEnabled := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
Result := ATarget;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
||||||
var ATarget : TDACDSDataTable; RemoteUpdate: Boolean);
|
var ATarget : TDACDSDataTable; RemoteUpdate: Boolean);
|
||||||
var
|
var
|
||||||
@ -273,36 +194,131 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
function DataTableModified (const ADataTable : TDADataTable): Boolean;
|
end.
|
||||||
|
|
||||||
|
procedure CloneDataTable(const ASource : TDACDSDataTable;
|
||||||
|
var ATarget : TDACDSDataTable; RemoteUpdate: Boolean);
|
||||||
var
|
var
|
||||||
bCambiado : Boolean;
|
i : Integer;
|
||||||
dtDetails : TList;
|
|
||||||
i : integer;
|
|
||||||
begin
|
begin
|
||||||
bCambiado := False;
|
with ATarget do
|
||||||
|
|
||||||
if Assigned(ADataTable) and (ADataTable.Active) then
|
|
||||||
begin
|
begin
|
||||||
bCambiado :=(ADataTable.State = dsEdit) or
|
// ****** Inicio migración DA 5
|
||||||
(ADataTable.HasDelta and DeltaValuesAreDifferent(ADataTable.Delta));
|
|
||||||
|
|
||||||
if (not bCambiado) then
|
//RemoteService := ASource.GetRemoteService;
|
||||||
begin
|
//Adapter := ASource.GetAdapter;
|
||||||
dtDetails := ADataTable.GetDetailDataTables;
|
RemoteDataAdapter.Assign(ASource.RemoteDataAdapter);
|
||||||
for i := 0 to dtDetails.Count - 1 do
|
// ****** Fin migración DA 5
|
||||||
|
|
||||||
|
BusinessRulesID := ASource.BusinessRulesID;
|
||||||
|
Randomize;
|
||||||
|
Name := ASource.Name + '_' + IntToStr(Random(MAXINT));
|
||||||
|
LogicalName := ASource.LogicalName;
|
||||||
|
|
||||||
|
Params.AssignParamCollection(ASource.Params);
|
||||||
|
|
||||||
|
if Assigned(ASource.LocalSchema) then
|
||||||
|
LocalSchema := ASource.LocalSchema
|
||||||
|
else begin
|
||||||
|
// ****** Inicio migración DA 5
|
||||||
|
{
|
||||||
|
with SchemaCall do
|
||||||
begin
|
begin
|
||||||
bCambiado := bCambiado or
|
MethodName := ASource.SchemaCall.MethodName;
|
||||||
((TDADataTable(dtDetails.Items[i])).State in dsEditModes) or
|
for i := 0 to ASource.SchemaCall.Params.Count - 1 do
|
||||||
((TDADataTable(dtDetails.Items[i])).HasDelta and
|
begin
|
||||||
DeltaValuesAreDifferent((TDADataTable(dtDetails.Items[i])).Delta));
|
with Params.Add do begin
|
||||||
if bCambiado then
|
Name := ASource.SchemaCall.Params[i].Name;
|
||||||
Break;
|
ParamType := ASource.SchemaCall.Params[i].ParamType;
|
||||||
|
DataType := ASource.SchemaCall.Params[i].DataType;
|
||||||
|
Value := ASource.SchemaCall.Params[i].Value;
|
||||||
|
UserClassName := ASource.SchemaCall.Params[i].UserClassName;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
}
|
||||||
|
// ****** Fin migración DA 5
|
||||||
|
ATarget.Fields.AssignFieldCollection(ASource.Fields); // o también ATarget.LoadSchema;
|
||||||
|
end;
|
||||||
|
|
||||||
|
// ****** Inicio migración DA 5
|
||||||
|
{
|
||||||
|
with DataUpdateCall do
|
||||||
|
begin
|
||||||
|
MethodName := ASource.DataUpdateCall.MethodName;
|
||||||
|
for i := 0 to ASource.DataUpdateCall.Params.Count - 1 do
|
||||||
|
begin
|
||||||
|
with Params.Add do begin
|
||||||
|
Name := ASource.DataUpdateCall.Params[i].Name;
|
||||||
|
ParamType := ASource.DataUpdateCall.Params[i].ParamType;
|
||||||
|
DataType := ASource.DataUpdateCall.Params[i].DataType;
|
||||||
|
Value := ASource.DataUpdateCall.Params[i].Value;
|
||||||
|
UserClassName := ASource.DataUpdateCall.Params[i].UserClassName;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
with ScriptCall do
|
||||||
|
begin
|
||||||
|
MethodName := ASource.ScriptCall.MethodName;
|
||||||
|
for i := 0 to ASource.ScriptCall.Params.Count - 1 do
|
||||||
|
begin
|
||||||
|
with Params.Add do begin
|
||||||
|
Name := ASource.ScriptCall.Params[i].Name;
|
||||||
|
ParamType := ASource.ScriptCall.Params[i].ParamType;
|
||||||
|
DataType := ASource.ScriptCall.Params[i].DataType;
|
||||||
|
Value := ASource.ScriptCall.Params[i].Value;
|
||||||
|
UserClassName := ASource.ScriptCall.Params[i].UserClassName;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
with DataRequestCall do
|
||||||
|
begin
|
||||||
|
MethodName := ASource.DataRequestCall.MethodName;
|
||||||
|
for i := 0 to ASource.DataRequestCall.Params.Count - 1 do
|
||||||
|
begin
|
||||||
|
with Params.Add do begin
|
||||||
|
begin
|
||||||
|
Name := ASource.DataRequestCall.Params[i].Name;
|
||||||
|
ParamType := ASource.DataRequestCall.Params[i].ParamType;
|
||||||
|
DataType := ASource.DataRequestCall.Params[i].DataType;
|
||||||
|
Value := ASource.DataRequestCall.Params[i].Value;
|
||||||
|
UserClassName := ASource.DataRequestCall.Params[i].UserClassName;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
}
|
||||||
|
// ****** Fin migración DA 5
|
||||||
|
|
||||||
|
with MasterParamsMappings do
|
||||||
|
for i := 0 to ASource.MasterParamsMappings.Count - 1 do
|
||||||
|
Add(ASource.MasterParamsMappings.Strings[i]);
|
||||||
|
|
||||||
|
with MasterRequestMappings do
|
||||||
|
for i := 0 to ASource.MasterRequestMappings.Count - 1 do
|
||||||
|
Add(ASource.MasterRequestMappings.Strings[i]);
|
||||||
|
|
||||||
|
MasterMappingMode := ASource.MasterMappingMode;
|
||||||
|
|
||||||
|
MasterFields := ASource.MasterFields;
|
||||||
|
MasterOptions := ASource.MasterOptions;
|
||||||
|
|
||||||
|
DetailFields := ASource.DetailFields;
|
||||||
|
DetailOptions := ASource.DetailOptions;
|
||||||
|
|
||||||
|
RemoteUpdatesOptions := ASource.RemoteUpdatesOptions;
|
||||||
|
StreamingOptions := ASource.StreamingOptions;
|
||||||
|
RemoteFetchEnabled := ASource.RemoteFetchEnabled;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if not RemoteUpdate then
|
||||||
|
begin
|
||||||
|
ATarget.LogChanges := False;
|
||||||
|
ATarget.RemoteFetchEnabled := False;
|
||||||
end;
|
end;
|
||||||
Result := bCambiado;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
end.
|
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ implementation
|
|||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Menus, uDMBase, cxControls;
|
Menus, uDataModuleBase, cxControls;
|
||||||
|
|
||||||
{
|
{
|
||||||
********************************* TfEditorBase *********************************
|
********************************* TfEditorBase *********************************
|
||||||
|
|||||||
BIN
Source/Base/uEditorDBBase.ddp
Normal file
BIN
Source/Base/uEditorDBBase.ddp
Normal file
Binary file not shown.
@ -13,6 +13,7 @@ inherited fEditorDBBase: TfEditorDBBase
|
|||||||
ExplicitWidth = 652
|
ExplicitWidth = 652
|
||||||
inherited Image1: TImage
|
inherited Image1: TImage
|
||||||
Left = 625
|
Left = 625
|
||||||
|
Picture.Data = {00}
|
||||||
ExplicitLeft = 625
|
ExplicitLeft = 625
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@ -36,10 +36,12 @@ type
|
|||||||
{ Private declarations }
|
{ Private declarations }
|
||||||
protected
|
protected
|
||||||
function GetModified: Boolean; override;
|
function GetModified: Boolean; override;
|
||||||
function HayDatos: Boolean; virtual;
|
|
||||||
published
|
published
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
var
|
||||||
|
fEditorDBBase: TfEditorDBBase;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
@ -194,17 +196,35 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
function TfEditorDBBase.GetModified: Boolean;
|
function TfEditorDBBase.GetModified: Boolean;
|
||||||
|
var
|
||||||
|
dtDetails : TList;
|
||||||
|
i : integer;
|
||||||
|
bCambiado : Boolean;
|
||||||
begin
|
begin
|
||||||
if ReadOnly then
|
bCambiado := False;
|
||||||
Result := False
|
if Assigned(dsDataTable.DataTable) then
|
||||||
else
|
begin
|
||||||
Result := DataTableModified(dsDataTable.DataTable) or inherited GetModified;
|
bCambiado := (dsDataTable.DataTable.State = dsEdit) or
|
||||||
end;
|
DeltaValuesAreDifferent(dsDataTable.DataTable.Delta);
|
||||||
|
|
||||||
function TfEditorDBBase.HayDatos: Boolean;
|
if (not bCambiado) then
|
||||||
begin
|
begin
|
||||||
Result := Assigned(dsDataTable.DataTable) and (dsDataTable.DataTable.State <> dsInactive)
|
dtDetails := dsDataTable.DataTable.GetDetailDataTables;
|
||||||
and (not dsDataTable.DataTable.IsEmpty);
|
for i := 0 to dtDetails.Count - 1 do
|
||||||
|
begin
|
||||||
|
bCambiado := bCambiado or
|
||||||
|
((TDADataTable(dtDetails.Items[i])).State = dsEdit) or
|
||||||
|
DeltaValuesAreDifferent((TDADataTable(dtDetails.Items[i])).Delta);
|
||||||
|
if bCambiado then
|
||||||
|
Break;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
if (not bCambiado) then
|
||||||
|
bCambiado := inherited GetModified;
|
||||||
|
|
||||||
|
Result := bCambiado;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfEditorDBBase.FormCloseQuery(Sender: TObject;
|
procedure TfEditorDBBase.FormCloseQuery(Sender: TObject;
|
||||||
|
|||||||
BIN
Source/Base/uEditorDBItem.ddp
Normal file
BIN
Source/Base/uEditorDBItem.ddp
Normal file
Binary file not shown.
@ -5,7 +5,7 @@ inherited fEditorGridBase: TfEditorGridBase
|
|||||||
ClientHeight = 446
|
ClientHeight = 446
|
||||||
ClientWidth = 703
|
ClientWidth = 703
|
||||||
ExplicitWidth = 711
|
ExplicitWidth = 711
|
||||||
ExplicitHeight = 473
|
ExplicitHeight = 480
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
@ -66,7 +66,7 @@ inherited fEditorGridBase: TfEditorGridBase
|
|||||||
CloseButton = False
|
CloseButton = False
|
||||||
DefaultDock = TBXDock
|
DefaultDock = TBXDock
|
||||||
DockMode = dmCannotFloatOrChangeDocks
|
DockMode = dmCannotFloatOrChangeDocks
|
||||||
DockPos = 440
|
DockPos = 392
|
||||||
DockRow = 1
|
DockRow = 1
|
||||||
DragHandleStyle = dhNone
|
DragHandleStyle = dhNone
|
||||||
Images = SmallImages
|
Images = SmallImages
|
||||||
@ -134,7 +134,6 @@ inherited fEditorGridBase: TfEditorGridBase
|
|||||||
Caption = 'Quitar filtro y ver todo'
|
Caption = 'Quitar filtro y ver todo'
|
||||||
ImageIndex = 19
|
ImageIndex = 19
|
||||||
OnExecute = actQuitarFiltroExecute
|
OnExecute = actQuitarFiltroExecute
|
||||||
OnUpdate = actQuitarFiltroUpdate
|
|
||||||
end
|
end
|
||||||
object actDuplicar: TAction
|
object actDuplicar: TAction
|
||||||
Category = 'Archivo'
|
Category = 'Archivo'
|
||||||
@ -1431,9 +1430,4 @@ inherited fEditorGridBase: TfEditorGridBase
|
|||||||
Action = actImprimir
|
Action = actImprimir
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object TimerParaFiltro: TTimer
|
|
||||||
OnTimer = TimerParaFiltroTimer
|
|
||||||
Left = 472
|
|
||||||
Top = 80
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
@ -45,7 +45,6 @@ type
|
|||||||
TBXSeparatorItem15: TTBXSeparatorItem;
|
TBXSeparatorItem15: TTBXSeparatorItem;
|
||||||
TBXItem34: TTBXItem;
|
TBXItem34: TTBXItem;
|
||||||
Duplicar1: TMenuItem;
|
Duplicar1: TMenuItem;
|
||||||
TimerParaFiltro: TTimer;
|
|
||||||
procedure tbxEditFiltroChange(Sender: TObject; const Text: String);
|
procedure tbxEditFiltroChange(Sender: TObject; const Text: String);
|
||||||
procedure FormShow(Sender: TObject); override;
|
procedure FormShow(Sender: TObject); override;
|
||||||
procedure actPrevisualizarExecute(Sender: TObject);
|
procedure actPrevisualizarExecute(Sender: TObject);
|
||||||
@ -56,8 +55,6 @@ type
|
|||||||
procedure JvFormStorageSavePlacement(Sender: TObject);
|
procedure JvFormStorageSavePlacement(Sender: TObject);
|
||||||
procedure JvFormStorageRestorePlacement(Sender: TObject);
|
procedure JvFormStorageRestorePlacement(Sender: TObject);
|
||||||
procedure actRefrescarExecute(Sender: TObject);
|
procedure actRefrescarExecute(Sender: TObject);
|
||||||
procedure TimerParaFiltroTimer(Sender: TObject);
|
|
||||||
procedure actQuitarFiltroUpdate(Sender: TObject);
|
|
||||||
private
|
private
|
||||||
FViewGrid : IViewGridBase;
|
FViewGrid : IViewGridBase;
|
||||||
protected
|
protected
|
||||||
@ -73,19 +70,15 @@ type
|
|||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses
|
uses
|
||||||
uDMBase, uCustomEditor, cxGridTableView;
|
uDataModuleBase, uCustomEditor, cxGridTableView;
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
var
|
|
||||||
FTextoFiltro : String;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
********************************* TfEditorGridBase *****************************
|
********************************* TfEditorGridBase *****************************
|
||||||
}
|
}
|
||||||
destructor TfEditorGridBase.Destroy;
|
destructor TfEditorGridBase.Destroy;
|
||||||
begin
|
begin
|
||||||
TimerParaFiltro.Enabled := False;
|
|
||||||
FViewGrid := NIL;
|
FViewGrid := NIL;
|
||||||
inherited;
|
inherited;
|
||||||
end;
|
end;
|
||||||
@ -107,17 +100,8 @@ end;
|
|||||||
|
|
||||||
procedure TfEditorGridBase.tbxEditFiltroChange(Sender: TObject; const Text: String);
|
procedure TfEditorGridBase.tbxEditFiltroChange(Sender: TObject; const Text: String);
|
||||||
begin
|
begin
|
||||||
TimerParaFiltro.Enabled := False;
|
|
||||||
FTextoFiltro := Text;
|
|
||||||
TimerParaFiltro.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TfEditorGridBase.TimerParaFiltroTimer(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
TimerParaFiltro.Enabled := False;
|
|
||||||
if Assigned(ViewGrid) then
|
if Assigned(ViewGrid) then
|
||||||
ViewGrid.Filter := FTextoFiltro;
|
ViewGrid.Filter := Text;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfEditorGridBase.FormShow(Sender: TObject);
|
procedure TfEditorGridBase.FormShow(Sender: TObject);
|
||||||
@ -146,7 +130,6 @@ end;
|
|||||||
|
|
||||||
procedure TfEditorGridBase.actQuitarFiltroExecute(Sender: TObject);
|
procedure TfEditorGridBase.actQuitarFiltroExecute(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
TimerParaFiltro.Enabled := False;
|
|
||||||
if Assigned(ViewGrid) then
|
if Assigned(ViewGrid) then
|
||||||
begin
|
begin
|
||||||
tbxEditFiltro.Text := '';
|
tbxEditFiltro.Text := '';
|
||||||
@ -154,16 +137,9 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TfEditorGridBase.actQuitarFiltroUpdate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
(Sender as TAction).Enabled := (Length(tbxEditFiltro.Text) > 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TfEditorGridBase.Create(AOwner: TComponent);
|
constructor TfEditorGridBase.Create(AOwner: TComponent);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
FTextoFiltro := '';
|
|
||||||
actModificar.ShortCut := ShortCut(VK_RETURN, []);
|
actModificar.ShortCut := ShortCut(VK_RETURN, []);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|||||||
@ -1,27 +1,23 @@
|
|||||||
inherited fEditorItem: TfEditorItem
|
inherited fEditorItem: TfEditorItem
|
||||||
Left = 423
|
Left = 423
|
||||||
Top = 273
|
Top = 273
|
||||||
|
Width = 686
|
||||||
|
Height = 535
|
||||||
Caption = 'fEditorItem'
|
Caption = 'fEditorItem'
|
||||||
ClientHeight = 508
|
|
||||||
ClientWidth = 678
|
|
||||||
ExplicitWidth = 686
|
|
||||||
ExplicitHeight = 535
|
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
Width = 678
|
Width = 678
|
||||||
Visible = False
|
Visible = False
|
||||||
ExplicitWidth = 678
|
|
||||||
inherited Image1: TImage
|
inherited Image1: TImage
|
||||||
Left = 651
|
Left = 651
|
||||||
ExplicitLeft = 651
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
object pgPaginas: TPageControl [1]
|
object pgPaginas: TPageControl [1]
|
||||||
Left = 0
|
Left = 0
|
||||||
Top = 76
|
Top = 76
|
||||||
Width = 678
|
Width = 678
|
||||||
Height = 413
|
Height = 406
|
||||||
ActivePage = pagGeneral
|
ActivePage = pagGeneral
|
||||||
Align = alClient
|
Align = alClient
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
@ -31,15 +27,12 @@ inherited fEditorItem: TfEditorItem
|
|||||||
end
|
end
|
||||||
inherited TBXDock: TTBXDock
|
inherited TBXDock: TTBXDock
|
||||||
Width = 678
|
Width = 678
|
||||||
ExplicitWidth = 678
|
|
||||||
inherited tbxMain: TTBXToolbar
|
inherited tbxMain: TTBXToolbar
|
||||||
ExplicitWidth = 524
|
|
||||||
inherited TBXItem5: TTBXItem
|
inherited TBXItem5: TTBXItem
|
||||||
Visible = False
|
Visible = False
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited tbxMenu: TTBXToolbar
|
inherited tbxMenu: TTBXToolbar
|
||||||
ExplicitWidth = 678
|
|
||||||
inherited TBXSubmenuItem4: TTBXSubmenuItem
|
inherited TBXSubmenuItem4: TTBXSubmenuItem
|
||||||
inherited TBXItem10: TTBXItem
|
inherited TBXItem10: TTBXItem
|
||||||
Visible = False
|
Visible = False
|
||||||
@ -48,10 +41,8 @@ inherited fEditorItem: TfEditorItem
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
inherited StatusBar: TStatusBar
|
inherited StatusBar: TStatusBar
|
||||||
Top = 489
|
Top = 482
|
||||||
Width = 678
|
Width = 678
|
||||||
ExplicitTop = 489
|
|
||||||
ExplicitWidth = 678
|
|
||||||
end
|
end
|
||||||
inherited EditorActionList: TActionList
|
inherited EditorActionList: TActionList
|
||||||
Top = 104
|
Top = 104
|
||||||
|
|||||||
@ -26,7 +26,7 @@ var
|
|||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
uses uDMBase;
|
uses uDataModuleBase;
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
|
|||||||
@ -5,6 +5,8 @@ inherited fEditorPreview: TfEditorPreview
|
|||||||
WindowState = wsMaximized
|
WindowState = wsMaximized
|
||||||
OnDestroy = FormDestroy
|
OnDestroy = FormDestroy
|
||||||
OnResize = FormResize
|
OnResize = FormResize
|
||||||
|
ExplicitWidth = 320
|
||||||
|
ExplicitHeight = 240
|
||||||
PixelsPerInch = 96
|
PixelsPerInch = 96
|
||||||
TextHeight = 13
|
TextHeight = 13
|
||||||
inherited JvNavPanelHeader: TJvNavPanelHeader
|
inherited JvNavPanelHeader: TJvNavPanelHeader
|
||||||
|
|||||||
BIN
Source/Base/uViewGridBase.ddp
Normal file
BIN
Source/Base/uViewGridBase.ddp
Normal file
Binary file not shown.
@ -276,8 +276,6 @@ var
|
|||||||
begin
|
begin
|
||||||
with _FocusedView.DataController.Filter do
|
with _FocusedView.DataController.Filter do
|
||||||
begin
|
begin
|
||||||
ShowHourglassCursor;
|
|
||||||
Application.ProcessMessages;
|
|
||||||
BeginUpdate;
|
BeginUpdate;
|
||||||
try
|
try
|
||||||
Options := [fcoCaseInsensitive, fcoSoftCompare];
|
Options := [fcoCaseInsensitive, fcoSoftCompare];
|
||||||
@ -298,8 +296,6 @@ begin
|
|||||||
Active := False;
|
Active := False;
|
||||||
finally
|
finally
|
||||||
EndUpdate;
|
EndUpdate;
|
||||||
HideHourglassCursor;
|
|
||||||
Application.ProcessMessages;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user