Skip to content

Commit

Permalink
commit inicial
Browse files Browse the repository at this point in the history
  • Loading branch information
gonzaloSarmientoSejas committed Jun 20, 2013
0 parents commit 29dba54
Show file tree
Hide file tree
Showing 25 changed files with 2,260 additions and 0 deletions.
1 change: 1 addition & 0 deletions index.php
1 change: 1 addition & 0 deletions lib
1 change: 1 addition & 0 deletions pxp
Submodule pxp added at e6dc0b
2 changes: 2 additions & 0 deletions sis_empresas/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
EMPRESAS
====
90 changes: 90 additions & 0 deletions sis_empresas/base/data000001.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
/***********************************I-DAT-GSS-DIR-0-19/06/2013*****************************************/

/*
* Author: GSS
* Date: 09/06/2013
* Description: Build the menu definition and the composition
*/


/*
Para definir la la metadata, menus, roles, etc
1) sincronize ls funciones y procedimientos del sistema
2) verifique que la primera linea de los datos sea la insercion del sistema correspondiente
3) exporte los datos a archivo SQL (desde la interface de sistema en sis_seguridad),
verifique que la codificacion se mantenga en UTF8 para no distorcionar los caracteres especiales
4) remplaze los sectores correspondientes en este archivo en su totalidad: (el orden es importante)
menu,
funciones,
procedimietnos
*/


INSERT INTO segu.tsubsistema ( codigo, nombre, fecha_reg, prefijo, estado_reg, nombre_carpeta, id_subsis_orig)
VALUES ('DIR', 'Sistema de Empresas', '2013-06-19', 'DIR', 'activo', 'empresas', NULL);

select pxp.f_insert_tgui ('Directorio', '', 'DIR', 'si', NULL, '', 1, '', '', 'DIR');


select pxp.f_insert_testructura_gui ('DIR', 'SISTEMA');

/***********************************F-DAT-GSS-DIR-0-19/06/2013*****************************************/


/***********************************I-DAT-GSS-DIR-0-20/06/2013*****************************************/

select pxp.f_insert_tgui ('Parametros', 'parametrso', 'EMPPAR', 'si', 1, '', 2, '', '', 'DIR');
select pxp.f_insert_tgui ('Rubro', 'actividad', 'EMPACT', 'si', 1, 'sis_empresas/vista/actividad/Actividad.php', 3, '', 'Actividad', 'DIR');
select pxp.f_delete_tgui ('EMPPR');
select pxp.f_insert_tgui ('Procesos', 'procesos', 'EMPPR', 'si', 2, '', 2, '', '', 'DIR');
select pxp.f_insert_tgui ('Empresa', 'empresas', 'EMPR', 'si', 1, 'sis_empresas/vista/empresa/Empresa.php', 3, '', 'Empresa', 'DIR');

select pxp.f_insert_testructura_gui ('EMPPAR', 'DIR');
select pxp.f_insert_testructura_gui ('EMPACT', 'EMPPAR');
select pxp.f_delete_testructura_gui ('EMPPR', 'EMPPAR');
select pxp.f_insert_testructura_gui ('EMPPR', 'DIR');
select pxp.f_insert_testructura_gui ('EMPR', 'EMPPR');



select pxp.f_insert_tfuncion ('dir.ft_actividad_sel', 'Funcion para tabla ', 'DIR');
select pxp.f_insert_tfuncion ('dir.ft_empresa_sel', 'Funcion para tabla ', 'DIR');
select pxp.f_insert_tfuncion ('dir.ft_actividad_ime', 'Funcion para tabla ', 'DIR');
select pxp.f_insert_tfuncion ('dir.ft_empresa_ime', 'Funcion para tabla ', 'DIR');


select pxp.f_insert_tprocedimiento ('DIR_ACT_SEL', 'Consulta de datos', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACT_ARB_SEL', 'Consulta de datos', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACTGRAL_SEL', 'Consulta de datos', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACTPRIM_SEL', 'Consulta de datos', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACTESP_SEL', 'Consulta de datos', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACT_CONT', 'Conteo de registros', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACTGRAL_CONT', 'Conteo de registros', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACTPRIM_CONT', 'Conteo de registros', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACTESP_CONT', 'Conteo de registros', 'si', '', '', 'dir.ft_actividad_sel');
select pxp.f_insert_tprocedimiento ('DIR_EMPR_SEL', 'Consulta de datos', 'si', '', '', 'dir.ft_empresa_sel');
select pxp.f_insert_tprocedimiento ('DIR_EMPR_CONT', 'Conteo de registros', 'si', '', '', 'dir.ft_empresa_sel');
select pxp.f_insert_tprocedimiento ('DIR_ACT_INS', 'Insercion de registros', 'si', '', '', 'dir.ft_actividad_ime');
select pxp.f_insert_tprocedimiento ('DIR_ACT_MOD', 'Modificacion de registros', 'si', '', '', 'dir.ft_actividad_ime');
select pxp.f_insert_tprocedimiento ('DIR_ACT_ELI', 'Eliminacion de registros', 'si', '', '', 'dir.ft_actividad_ime');
select pxp.f_insert_tprocedimiento ('DIR_EMPR_INS', 'Insercion de registros', 'si', '', '', 'dir.ft_empresa_ime');
select pxp.f_insert_tprocedimiento ('DIR_EMPR_MOD', 'Modificacion de registros', 'si', '', '', 'dir.ft_empresa_ime');
select pxp.f_insert_tprocedimiento ('DIR_EMPR_ELI', 'Eliminacion de registros', 'si', '', '', 'dir.ft_empresa_ime');


select pxp.f_insert_tprocedimiento_gui ('DIR_ACT_INS', 'EMPACT', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_ACT_MOD', 'EMPACT', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_ACT_ELI', 'EMPACT', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_ACT_ARB_SEL', 'EMPACT', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_ACTGRAL_SEL', 'EMPR', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_ACTPRIM_SEL', 'EMPR', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_ACTESP_SEL', 'EMPR', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_EMPR_INS', 'EMPR', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_EMPR_MOD', 'EMPR', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_EMPR_ELI', 'EMPR', 'no');
select pxp.f_insert_tprocedimiento_gui ('DIR_EMPR_SEL', 'EMPR', 'no');

/***********************************F-DAT-GSS-DIR-0-20/06/2013*****************************************/
45 changes: 45 additions & 0 deletions sis_empresas/base/dependencies000001.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/********************************************I-DEP-GSS-DIR-0-19/06/2013********************************************/

ALTER TABLE dir.tempresa
ADD CONSTRAINT fk_tempresa__id_lugar FOREIGN KEY (id_lugar)
REFERENCES param.tlugar(id_lugar)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE;

ALTER TABLE dir.tempresa
ADD CONSTRAINT fk_tempresa__id_actividad FOREIGN KEY (id_actividad)
REFERENCES dir.tactividad(id_actividad)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE;

ALTER TABLE dir.tpublicidad
ADD CONSTRAINT fk_tpublicidad__id_lugar FOREIGN KEY (id_lugar)
REFERENCES param.tlugar(id_lugar)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE;

ALTER TABLE dir.tactividad_esp
ADD CONSTRAINT fk_tactividad_esp__id_actividad_prim FOREIGN KEY (id_actividad_prim)
REFERENCES dir.tactividad_prim(id_actividad_prim)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE;

ALTER TABLE dir.tactividad_prim
ADD CONSTRAINT fk_tactividad_prim__id_actividad_gral FOREIGN KEY (id_actividad_gral)
REFERENCES dir.tactividad_gral(id_actividad_gral)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE;

ALTER TABLE dir.tactividad
ADD CONSTRAINT fk_tactividad__id_actividad FOREIGN KEY (id_actividad_fk)
REFERENCES dir.tactividad(id_actividad)
ON DELETE NO ACTION
ON UPDATE NO ACTION
NOT DEFERRABLE;

/********************************************F-DEP-GSS-DIR-0-19/06/2013********************************************/
209 changes: 209 additions & 0 deletions sis_empresas/base/funciones/dir.ft_actividad_ime.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,209 @@
CREATE OR REPLACE FUNCTION dir.ft_actividad_ime (
p_administrador integer,
p_id_usuario integer,
p_tabla varchar,
p_transaccion varchar
)
RETURNS varchar AS
$body$
/**************************************************************************
SISTEMA: Sistema de Empresas
FUNCION: dir.ft_actividad_ime
DESCRIPCION: Funcion que gestiona las operaciones basicas (inserciones, modificaciones, eliminaciones de la tabla 'dir.tactividad'
AUTOR: (admin)
FECHA: 20-06-2013 19:53:50
COMENTARIOS:
***************************************************************************
HISTORIAL DE MODIFICACIONES:
DESCRIPCION:
AUTOR:
FECHA:
***************************************************************************/

DECLARE

v_nro_requerimiento integer;
v_parametros record;
v_id_requerimiento integer;
v_resp varchar;
v_nombre_funcion text;
v_mensaje_error text;
v_id_actividad integer;
v_codigo_largo varchar;

BEGIN

v_nombre_funcion = 'dir.ft_actividad_ime';
v_parametros = pxp.f_get_record(p_tabla);

/*********************************
#TRANSACCION: 'DIR_ACT_INS'
#DESCRIPCION: Insercion de registros
#AUTOR: admin
#FECHA: 20-06-2013 19:53:50
***********************************/

if(p_transaccion='DIR_ACT_INS')then

begin

--obtiene codigo recursivamente
IF v_parametros.id_actividad_fk is null THEN
v_codigo_largo = v_parametros.codigo;
ELSE

WITH RECURSIVE t(id,id_fk,cod,n) AS (
SELECT a.id_actividad,a.id_actividad_fk, a.codigo,1
FROM dir.tactividad a
WHERE a.id_actividad = v_parametros.id_actividad_fk
UNION ALL
SELECT a.id_actividad,a.id_actividad_fk, a.codigo , n+1
FROM dir.tactividad a, t
WHERE a.id_actividad = t.id_fk
)
SELECT pxp.textcat_all(b.cod||'.')
into
v_codigo_largo
FROM (SELECT cod
FROM t
order by n desc) b;


v_codigo_largo = v_codigo_largo||v_parametros.codigo;
END IF;


--Sentencia de la insercion
insert into dir.tactividad(
estado_reg,
codigo,
codigo_largo,
id_actividad_fk,
nombre,
fecha_reg,
id_usuario_reg,
fecha_mod,
id_usuario_mod
) values(
'activo',
v_parametros.codigo,
v_codigo_largo,
v_parametros.id_actividad_fk,
v_parametros.nombre,
now(),
p_id_usuario,
null,
null

)RETURNING id_actividad into v_id_actividad;

--Definicion de la respuesta
v_resp = pxp.f_agrega_clave(v_resp,'mensaje','Rubro almacenado(a) con exito (id_actividad'||v_id_actividad||')');
v_resp = pxp.f_agrega_clave(v_resp,'id_actividad',v_id_actividad::varchar);

--Devuelve la respuesta
return v_resp;

end;

/*********************************
#TRANSACCION: 'DIR_ACT_MOD'
#DESCRIPCION: Modificacion de registros
#AUTOR: admin
#FECHA: 20-06-2013 19:53:50
***********************************/

elsif(p_transaccion='DIR_ACT_MOD')then

begin

--obtiene codigo recursivamente
IF v_parametros.id_actividad_fk is null THEN
v_codigo_largo = v_parametros.codigo;
ELSE

WITH RECURSIVE t(id,id_fk,cod,n) AS (
SELECT a.id_actividad,a.id_actividad_fk, a.codigo,1
FROM dir.tactividad a
WHERE a.id_actividad = v_parametros.id_actividad_fk
UNION ALL
SELECT a.id_actividad,a.id_actividad_fk, a.codigo , n+1
FROM dir.tactividad a, t
WHERE a.id_actividad = t.id_fk
)
SELECT pxp.textcat_all(a.cod||'.')
into
v_codigo_largo
FROM (SELECT cod
FROM t
order by n desc) a;


v_codigo_largo = v_codigo_largo||v_parametros.codigo;
END IF;

--Sentencia de la modificacion
update dir.tactividad set
codigo = v_parametros.codigo,
codigo_largo = v_codigo_largo,
id_actividad_fk = v_parametros.id_actividad_fk,
nombre = v_parametros.nombre,
fecha_mod = now(),
id_usuario_mod = p_id_usuario
where id_actividad=v_parametros.id_actividad;

--Definicion de la respuesta
v_resp = pxp.f_agrega_clave(v_resp,'mensaje','Rubro modificado(a)');
v_resp = pxp.f_agrega_clave(v_resp,'id_actividad',v_parametros.id_actividad::varchar);

--Devuelve la respuesta
return v_resp;

end;

/*********************************
#TRANSACCION: 'DIR_ACT_ELI'
#DESCRIPCION: Eliminacion de registros
#AUTOR: admin
#FECHA: 20-06-2013 19:53:50
***********************************/

elsif(p_transaccion='DIR_ACT_ELI')then

begin
--Sentencia de la eliminacion
delete from dir.tactividad
where id_actividad=v_parametros.id_actividad;

--Definicion de la respuesta
v_resp = pxp.f_agrega_clave(v_resp,'mensaje','Rubro eliminado(a)');
v_resp = pxp.f_agrega_clave(v_resp,'id_actividad',v_parametros.id_actividad::varchar);

--Devuelve la respuesta
return v_resp;

end;

else

raise exception 'Transaccion inexistente: %',p_transaccion;

end if;

EXCEPTION

WHEN OTHERS THEN
v_resp='';
v_resp = pxp.f_agrega_clave(v_resp,'mensaje',SQLERRM);
v_resp = pxp.f_agrega_clave(v_resp,'codigo_error',SQLSTATE);
v_resp = pxp.f_agrega_clave(v_resp,'procedimientos',v_nombre_funcion);
raise exception '%',v_resp;

END;
$body$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100;
Loading

0 comments on commit 29dba54

Please sign in to comment.