Advertisement
LovelessIsma

Untitled

Feb 20th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.66 KB | None | 0 0
  1. SELECT ta_tipovaloracion INTO tipovaloracion FROM tm_proyecto WHERE tm_idproyecto = id;
  2.  
  3. IF tipovaloracion = '02' THEN
  4. RETURN QUERY SELECT a.tm_idpropiedad, a.tm_descripcionpropiedad, a.tm_idproyecto, a.tm_idtipopropiedad, a.tm_idpropiedadrelacionada, a.tm_idtorre, a.tm_area_sintechar, a.tm_area_techada, a.tm_area, a.tm_ratio, a.tm_importefijo, a.tm_saldoinicial, a.ta_clasepropiedad, b.ta_denominacion, COALESCE(c.tipoper, 'NA')::character varying, COALESCE(c.idpersonax, '0')::character varying, COALESCE(c.tm_iditc, '')::character varying, COALESCE(c.tipodoc, '')::character varying, COALESCE(c.tm_numerodoc, '')::character varying, COALESCE(c.descripcion, 'SIN PROPIETARIO O INQUILINO')::character varying, ''::character varying, ''::character varying, a.tm_orden, 0::bigint
  5.  
  6. FROM tm_propiedad AS a
  7.  
  8. INNER JOIN ta_tabla AS b ON a.ta_clasepropiedad = b.ta_codigo AND b.ta_campo = 'ta_clasepropiedad'
  9.  
  10. LEFT JOIN (
  11.  
  12. SELECT MAX(ppro.fechareg) AS maxfechareg, ppro.tm_idpropiedad, 'PROP' AS tipoper, pro.tm_idtipopropietario AS idpersonax, pro.tm_iditc, pro.descripcion, pro.tipodoc, pro.tm_numerodoc
  13.  
  14. FROM vstpropietario AS pro
  15.  
  16. INNER JOIN td_propiedadpropietario AS ppro ON pro.tm_idtipopropietario = ppro.tm_idpropietario
  17.  
  18. INNER JOIN tm_propiedad AS propi ON ppro.tm_idpropiedad = propi.tm_idpropiedad
  19.  
  20. WHERE propi.tm_idproyecto = id AND ppro.ta_estado_propiedadpersona = '00' AND ppro.activo = 1
  21.  
  22. GROUP BY ppro.tm_idpropiedad, pro.tm_idtipopropietario, pro.tm_iditc, pro.descripcion, pro.tipodoc, pro.tm_numerodoc
  23.  
  24. UNION ALL
  25.  
  26. SELECT MAX(pinq.fechareg) AS maxfechareg, pinq.tm_idpropiedad, 'INQU' AS tipoper, inq.tm_idtipoinquilino AS idpersonax, inq.tm_iditc, inq.descripcion, inq.tipodoc, inq.tm_numerodoc
  27.  
  28. FROM vstinquilino AS inq
  29.  
  30. INNER JOIN td_propiedadinquilino AS pinq ON inq.tm_idtipoinquilino = pinq.tm_idinquilino
  31.  
  32. INNER JOIN tm_propiedad AS propi ON pinq.tm_idpropiedad = propi.tm_idpropiedad
  33.  
  34. WHERE propi.tm_idproyecto = id AND pinq.ta_estado_propiedadpersona = '00' AND pinq.activo = 1
  35.  
  36. GROUP BY pinq.tm_idpropiedad, inq.tm_idtipoinquilino, inq.tm_iditc, inq.descripcion, inq.tipodoc, inq.tm_numerodoc
  37.  
  38. ) AS c ON a.tm_idpropiedad = c.tm_idpropiedad
  39.  
  40. WHERE a.tm_idproyecto = id AND a.activo = 1 AND a.tm_ratio > 0 ORDER BY a.tm_orden; -- AND a.tm_idtipopropiedad = 'DPT'
  41. ELSE
  42. RETURN QUERY SELECT a.tm_idpropiedad, a.tm_descripcionpropiedad, a.tm_idproyecto, a.tm_idtipopropiedad, a.tm_idpropiedadrelacionada, a.tm_idtorre, a.tm_area_sintechar, a.tm_area_techada, a.tm_area, a.tm_ratio, a.tm_importefijo, a.tm_saldoinicial, a.ta_clasepropiedad, b.ta_denominacion, COALESCE(c.tipoper, 'NA')::character varying, COALESCE(c.idpersonax, '0')::character varying, COALESCE(c.tm_iditc, '')::character varying, COALESCE(c.tipodoc, '')::character varying, COALESCE(c.tm_numerodoc, '')::character varying, COALESCE(c.descripcion, 'SIN PROPIETARIO O INQUILINO')::character varying, ''::character varying, ''::character varying, a.tm_orden, 0::bigint
  43.  
  44. FROM tm_propiedad AS a
  45.  
  46. INNER JOIN ta_tabla AS b ON a.ta_clasepropiedad = b.ta_codigo AND b.ta_campo = 'ta_clasepropiedad'
  47.  
  48. LEFT JOIN (
  49.  
  50. SELECT MAX(ppro.fechareg) AS maxfechareg, ppro.tm_idpropiedad, 'PROP' AS tipoper, pro.tm_idtipopropietario AS idpersonax, pro.tm_iditc, pro.descripcion, pro.tipodoc, pro.tm_numerodoc
  51.  
  52. FROM vstpropietario AS pro
  53.  
  54. INNER JOIN td_propiedadpropietario AS ppro ON pro.tm_idtipopropietario = ppro.tm_idpropietario
  55.  
  56. INNER JOIN tm_propiedad AS propi ON ppro.tm_idpropiedad = propi.tm_idpropiedad
  57.  
  58. WHERE propi.tm_idproyecto = id AND ppro.ta_estado_propiedadpersona = '00' AND ppro.activo = 1
  59.  
  60. GROUP BY ppro.tm_idpropiedad, pro.tm_idtipopropietario, pro.tm_iditc, pro.descripcion, pro.tipodoc, pro.tm_numerodoc
  61.  
  62. UNION ALL
  63.  
  64. SELECT MAX(pinq.fechareg) AS maxfechareg, pinq.tm_idpropiedad, 'INQU' AS tipoper, inq.tm_idtipoinquilino AS idpersonax, inq.tm_iditc, inq.descripcion, inq.tipodoc, inq.tm_numerodoc
  65.  
  66. FROM vstinquilino AS inq
  67.  
  68. INNER JOIN td_propiedadinquilino AS pinq ON inq.tm_idtipoinquilino = pinq.tm_idinquilino
  69.  
  70. INNER JOIN tm_propiedad AS propi ON pinq.tm_idpropiedad = propi.tm_idpropiedad
  71.  
  72. WHERE propi.tm_idproyecto = id AND pinq.ta_estado_propiedadpersona = '00' AND pinq.activo = 1
  73.  
  74. GROUP BY pinq.tm_idpropiedad, inq.tm_idtipoinquilino, inq.tm_iditc, inq.descripcion, inq.tipodoc, inq.tm_numerodoc
  75.  
  76. ) AS c ON a.tm_idpropiedad = c.tm_idpropiedad
  77.  
  78. WHERE a.tm_idproyecto = id AND a.activo = 1 ORDER BY a.tm_orden; -- AND a.tm_idtipopropiedad = 'DPT'
  79. END IF;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement