Buenos días desde El Salvador colegas de PostGreSQL.


Este es mi primer correo a todos los de la Lista, saludos;


Fernando,

Yo al igual que tu, no encuentro cuál es el error.... por ello te diré un par 
de cosas;

Pregunto ¿Ejecutaste tu función sin problemas, fuera de .Net?. es decir, la 
probaste ejecutandola desde la consola o desde el pgAdmin ?¿

Y, si cambias la forma en como ejecutas tu función desde .Net.... si le  pasas 
el Query al Command tal cual lo hicieras en la consola.... algo así:

            QueryCommand = New NpgsqlCommand
            QueryCommand.Connection = tu_conexion_postgre
            QueryCommand.CommandText = "select AsientosDetalleElimina(" & 
agencia & "," & tipdoc &"," & numero & ");"
            QueryCommand.ExecuteNonQuery()

Nuevamente saludos desde El Salvador 

Juan Ramírez

From: [EMAIL PROTECTED]
To: pgsql-es-ayuda@postgresql.org
Subject: [pgsql-es-ayuda] Ayuda con una Funcion plpgsql
Date: Mon, 13 Oct 2008 14:32:39 +0000








Amigos como estan , necesito su ayuda estoy empezando con lo de las funciones 
en postgree y punto net, y tengo un problema con una no se si me pueden ayudar

cuando ejecuto la funcion desde c# me sale este error ERROR: 42601: syntax 
error at or near ")"


esta es la funcion que utilizo:

CREATE OR REPLACE FUNCTION "master"."AsientosDetalleElimina" (vAgeCod 
varchar,vAsiDoc varchar, vAsiNum varchar) RETURNS boolean AS $$
BEGIN
    delete from asidet where asiagecod=vAgeCod and asidoc=vAsiDoc and 
asinum=vAsiNum;
    return true;
END;
$$
LANGUAGE 'plpgsql';

Desde punto net le llamo asi a la funcion.

comando = new NpgsqlCommand("AsientosDetalleElimina)", cnpg);
                comando.CommandType = CommandType.StoredProcedure;
                comando.Parameters.Add(new NpgsqlParameter("@age", 
NpgsqlDbType.Varchar, 3)).Value = agencia;
                comando.Parameters.Add(new NpgsqlParameter("@doc", 
NpgsqlDbType.Varchar, 2)).Value = tipdoc;
                comando.Parameters.Add(new NpgsqlParameter("@num", 
NpgsqlDbType.Varchar, 7)).Value = numero;
                comando.Parameters[0].Direction = ParameterDirection.Input;
                comando.Parameters[1].Direction = ParameterDirection.Input;
                comando.Parameters[2].Direction = ParameterDirection.Input;
                 comando.ExecuteNonQuery();

y justo en la ultima linea me da el error.

Otra duda que tengo puedo mandar como parametro un datatable completo y 
recibirlo como cursor en una funcion de postgree, para manipularlo desde la 
funcion. Ojala y me puedan ayudar

Get Windows Live and get whatever you need, wherever you are. Start here.

_________________________________________________________________
Invite your mail contacts to join your friends list with Windows Live Spaces. 
It's easy!
http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us

Responder a