<div><span style="font-family:courier new,monospace;">Hi All!</span></div><div> </div><div><span style="font-family:courier new,monospace;">Ask for help in a yet another puzzle:</span></div><div><span style="font-family:courier new,monospace;">-----------------------------------------------------------------------------------------------------------------------</span></div><div><div><span style="font-family:courier new,monospace;">CREATE OR REPLACE FUNCTION __z$z (</span></div><div><span style="font-family:courier new,monospace;"> p_compid uuid,</span></div><div><span style="font-family:courier new,monospace;"> out p_stv integer,</span></div><div><span style="font-family:courier new,monospace;"> out p_msg text</span></div><div><span style="font-family:courier new,monospace;">)</span></div><div><span style="font-family:courier new,monospace;">RETURNS void AS</span></div><div><span style="font-family:courier new,monospace;">$body$</span></div><div><span style="font-family:courier new,monospace;">BEGIN</span></div><div><span style="font-family:courier new,monospace;">END;</span></div><div><span style="font-family:courier new,monospace;">$body$</span></div><div><span style="font-family:courier new,monospace;">LANGUAGE 'plpgsql'</span></div><div><span style="font-family:courier new,monospace;">VOLATILE</span></div><div><span style="font-family:courier new,monospace;">CALLED ON NULL INPUT</span></div><div><span style="font-family:courier new,monospace;">SECURITY INVOKER</span></div><div><span style="font-family:courier new,monospace;">COST 100;</span></div><div> </div><div><span style="font-family:courier new,monospace;">-----------------------------------------------------------------------------------------------------------------------</span></div><div> </div><div><div><span style="font-family:courier new,monospace;">struct {</span></div><div><span style="font-family:courier new,monospace;"> PGresult *stmt;</span></div><div><span style="font-family:courier new,monospace;"> char name [32],</span></div><div><span style="font-family:courier new,monospace;"> exp [512];</span></div><div><span style="font-family:courier new,monospace;"> int argc;</span></div><div><span style="font-family:courier new,monospace;"> Oid argv[16];</span></div><div><span style="font-family:courier new,monospace;">} sql_queries [KDEPO$K_SQL_MAX] = {</span></div><div><span style="font-family:courier new,monospace;"> {NULL, "zz", "select __z$z($1::uuid, $2::integer, $3::text);", 3, {2950, 23, 25}},</span></div></div></div><div> </div><div><span style="font-family:courier new,monospace;">...</span></div><div><div><span style="font-family:courier new,monospace;"> $TRACE("PQprepare(%#0x, '%s', '%s'", conn, sql_queries[j].name, sql_queries[j].exp );</span></div><div> </div><div><span style="font-family:courier new,monospace;"> res = sql_queries[j].stmt = PQprepare(conn, sql_queries[j].name, sql_queries[j].exp,</span></div><div><span style="font-family:courier new,monospace;"> sql_queries[j].argc, sql_queries[j].argv);</span></div><div> </div><div><span style="font-family:courier new,monospace;"> if ( (status = PQresultStatus(res)) != PGRES_COMMAND_OK )</span></div><div><span style="font-family:courier new,monospace;"> {</span></div><div><span style="font-family:courier new,monospace;"> $LOG(STS$K_ERROR, "PQprepare('%s') -> %d (%s), '%s'",</span></div><div><span style="font-family:courier new,monospace;"> sql_queries[j].exp, status, PQresStatus(status), PQresultErrorMessage(res));</span></div></div><div><span style="font-family:courier new,monospace;">...</span></div><div> </div><div> </div><div><div><span style="font-family:courier new,monospace;">18-10-2017 18:43:11.090 25491 [DB\kdepo_db_init\157] [#0] pgconn = 0x632bf0</span></div><div><span style="font-family:courier new,monospace;">18-10-2017 18:43:11.090 25491 [DB\__kdepo_sql_init\106] PQprepare(0x632bf0, 'zz', 'select vcloud.__z$z($1::uuid, $2::integer, $3::text);'</span></div><div><span style="font-family:courier new,monospace;">18-10-2017 18:43:11.091 25491 [DB\__kdepo_sql_init\114] %VCKDEPO-E: PQprepare('select vcloud.__z$z($1::uuid, $2::integer, $3::text);') -> 7 (PGRES_FATAL_ERROR), 'ERROR: function vcloud.__z$z(uuid, integer, text) does not exist</span></div><div><span style="font-family:courier new,monospace;">LINE 1: select vcloud.__z$z($1::uuid, $2::integer, $3::text);</span></div><div><span style="font-family:courier new,monospace;"> ^</span></div><div><span style="font-family:courier new,monospace;">HINT: No function matches the given name and argument types. You might need to add explicit type casts.</span></div><div><span style="font-family:courier new,monospace;">-----------------------------------------------------------------------------------------------------------------------</span></div><div> </div><div><span style="font-family:courier new,monospace;">No errors if p_stv and p_msg has been declared as IN. So , what I'm need to check ?</span></div><div> </div><div> </div><div><span style="font-family:courier new,monospace;">TIA.</span></div><div> </div><div> </div></div><div> </div><div><span style="font-family:courier new,monospace;">-- </span></div><div><span style="font-family:courier new,monospace;">С уважением,<br />Ruslan R. Laishev</span></div><div><span style="font-family:courier new,monospace;">OpenVMS bigot, natural born system/network progger, C contractor.</span></div><div><span style="font-family:courier new,monospace;">+79013163222</span></div><div><span style="font-family:courier new,monospace;">+79910009922</span></div><div> </div>