Hi,

PFA patch to fix the issue in function node where it was displaying wrong
query if function returns table.
RM#1851

--
Regards,
Murtuza Zabuawala
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.2_plus/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.2_plus/create.sql
index 3819657..9435039 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.2_plus/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.2_plus/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
 )
 {% endif -%}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
 {% if data.procost %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.5_plus/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.5_plus/create.sql
index 2a9bad3..f217afa 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.5_plus/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.5_plus/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
 )
 {% endif %}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
 {% if data.procost %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.6_plus/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.6_plus/create.sql
index 9e88fd6..e1958c8 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.6_plus/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/9.6_plus/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
 )
 {% endif %}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
 {% if data.procost %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/default/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/default/create.sql
index 014c1ca..f30187d 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/default/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/pg/sql/default/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
 )
 {% endif -%}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
 {% if data.procost %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.2_plus/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.2_plus/create.sql
index 5afd446..1e6c7cb 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.2_plus/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.2_plus/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
 )
 {% endif -%}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset (data.prorettypename.startswith('SETOF ') or 
data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% elif 
data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else %} 
{{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
 {% if data.procost %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.5_plus/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.5_plus/create.sql
index a669e55..0ac9a43 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.5_plus/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.5_plus/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
     )
 {% endif -%}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
     {% if data.provolatile %}{% if data.provolatile == 'i' %}IMMUTABLE{% elif 
data.provolatile == 's' %}STABLE{% else %}VOLATILE{% endif %} {% endif %}{% if 
data.proleakproof %}LEAKPROOF {% endif %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.6_plus/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.6_plus/create.sql
index 612eca9..804d7e8 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.6_plus/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/9.6_plus/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
     )
 {% endif -%}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
     {% if data.provolatile %}{% if data.provolatile == 'i' %}IMMUTABLE{% elif 
data.provolatile == 's' %}STABLE{% else %}VOLATILE{% endif %} {% endif %}{% if 
data.proleakproof %}LEAKPROOF {% endif %}
diff --git 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/default/create.sql
 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/default/create.sql
index ab47e1d..b04982b 100644
--- 
a/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/default/create.sql
+++ 
b/web/pgadmin/browser/server_groups/servers/databases/schemas/functions/templates/function/ppas/sql/default/create.sql
@@ -13,7 +13,7 @@ CREATE{% if query_type is defined %}{{' OR REPLACE'}}{% endif 
%} FUNCTION {{ con
 {% endif -%}
 )
 {% endif -%}
-    RETURNS{% if data.proretset and data.prorettypename.startswith('SETOF ') 
%} {{ data.prorettypename }} {% elif data.proretset %} SETOF {{ 
conn|qtTypeIdent(data.prorettypename) }}{% else %} {{ 
conn|qtTypeIdent(data.prorettypename) }}{% endif %}
+    RETURNS{% if data.proretset and (data.prorettypename.startswith('SETOF ') 
or data.prorettypename.startswith('TABLE')) %} {{ data.prorettypename }} {% 
elif data.proretset %} SETOF {{ conn|qtTypeIdent(data.prorettypename) }}{% else 
%} {{ conn|qtTypeIdent(data.prorettypename) }}{% endif %}
 
     LANGUAGE {{ data.lanname|qtLiteral }}
 {% if data.procost %}
-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

Reply via email to