SQL
CREATE OR REPLACE FUNCTION ORIGEN_PARTIDA(partida IN NUMBER)
RETURN VARCHAR
AS
  expO INT;
  parO INT;  
  magO INT;
  resultat VARCHAR(1);
BEGIN
/*
Donat un numero de partida, obtenir el seu origen: E=Expedient, P=Partida o M=Magatzem
*/
  resultat:='';
  SELECT CP_PEDID_O,CP_ALMA_O,CP_PARTID_O into expO, magO, parO FROM "c_cuepar" where CP_NUMER=partida and ROWNUM=1;
  if expO>0 THEN
    resultat:='E';
  elsif parO>0 and magO=0 THEN
    resultat:='P';
  elsif parO=0 and magO>0 THEN
    resultat:='M';
  end if;
  return resultat;
END;