Advertisement
LovelessIsma

Untitled

Nov 21st, 2016
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE TABLE td_consumoconcepto
  2. (
  3.   td_idconsumoconcepto character varying(12) NOT NULL,
  4.   tm_idproyecto character varying(10),
  5.   tm_idpropiedad character varying(10),
  6.   tm_idconcepto character varying(10),
  7.   tm_per_mes smallint,
  8.   tm_per_ano smallint,
  9.   td_importe numeric(9,2),
  10.   activo smallint,
  11.   idusuarioreg integer,
  12.   fechareg timestamp without time zone,
  13.   idusuarioact integer,
  14.   fechaact timestamp without time zone,
  15.   CONSTRAINT td_consumoconcepto_pkey PRIMARY KEY (td_idconsumoconcepto)
  16. )
  17. WITH (
  18.   OIDS=FALSE
  19. );
  20. ALTER TABLE td_consumoconcepto
  21.   OWNER TO postgres;
  22.  
  23. DROP FUNCTION IF EXISTS pa_propiedad_consumo_concepto_listar(character varying, character varying, smallint, smallint, character varying, character varying);
  24.  
  25. CREATE OR REPLACE FUNCTION pa_propiedad_consumo_concepto_listar(
  26. IN tipo character varying,
  27. IN idproyecto character varying,
  28. IN anho smallint,
  29. IN mes smallint,
  30. IN idpropiedad character varying,
  31. IN idconcepto character varying,
  32. OUT td_idconsumoescalonable character varying,
  33. OUT tm_idconcepto character varying,
  34. OUT tm_idpropiedad character varying,
  35. OUT tm_descripcionpropiedad character varying,
  36. OUT td_importe numeric)
  37.   RETURNS SETOF record AS
  38. $BODY$
  39.  
  40. BEGIN
  41.   IF tipo = '1' THEN
  42.     RETURN QUERY SELECT '0'::character varying, idconcepto, a.tm_idpropiedad, a.tm_descripcionpropiedad, 0::numeric
  43.     FROM tm_propiedad AS a
  44.         LEFT JOIN td_consumoconcepto AS conscpto ON a.tm_idpropiedad = conscpto.tm_idpropiedad
  45.     WHERE a.tm_idproyecto = idproyecto AND a.tm_idtipopropiedad = 'DPT' AND a.activo = 1;
  46.    ELSIF tipo = '2' THEN
  47.  
  48.      RETURN QUERY SELECT COALESCE(b.td_idconsumoconcepto, '0'), idconcepto, a.tm_idpropiedad, a.tm_descripcionpropiedad, COALESCE(b.td_importe, 0)
  49.  
  50.      FROM tm_propiedad AS a
  51.  
  52.         LEFT JOIN td_consumoconcepto AS b ON a.tm_idpropiedad = b.tm_idpropiedad AND b.tm_per_ano = anho AND b.tm_per_mes = mes AND b.activo = 1 AND b.tm_idconcepto = idconcepto
  53.  
  54.      WHERE a.tm_idproyecto = idproyecto AND a.tm_idtipopropiedad = 'DPT' AND a.activo = 1;
  55.  
  56.   END IF;
  57. END;
  58.  
  59. $BODY$
  60.   LANGUAGE plpgsql VOLATILE
  61.   COST 100
  62.   ROWS 1000;
  63. ALTER FUNCTION pa_propiedad_consumo_concepto_listar(character varying, character varying, smallint, smallint, character varying, character varying)
  64.   OWNER TO postgres;
  65.  
  66. DROP FUNCTION IF EXISTS pa_propiedad_concepto_exportar(character varying, character varying);
  67.  
  68. CREATE OR REPLACE FUNCTION pa_propiedad_concepto_exportar(IN idproyecto character varying, IN idconcepto character varying, OUT codigoproyecto character varying, OUT idpropiedad character varying, OUT propiedad character varying, OUT tm_idconcepto character varying, OUT importe numeric)
  69.   RETURNS SETOF record AS
  70. $BODY$
  71. BEGIN
  72.    
  73.     RETURN QUERY SELECT tm_idproyecto, tm_idpropiedad, tm_descripcionpropiedad, idconcepto, 0::numeric
  74.     FROM tm_propiedad WHERE tm_idproyecto = idproyecto AND tm_idtipopropiedad = 'DPT' AND activo = 1;
  75. END$BODY$
  76.   LANGUAGE plpgsql VOLATILE
  77.   COST 100
  78.   ROWS 1000;
  79. ALTER FUNCTION pa_propiedad_concepto_exportar(character varying, character varying)
  80.   OWNER TO postgres;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement