CREATE or REPLACE FUNCTION getcallerinfo(integer, varchar) RETURNS VARCHAR AS '
   DECLARE
     _id VARCHAR;
     _name VARCHAR;
     _contact1 VARCHAR;
     _contact2 VARCHAR;
     _contact3 VARCHAR;
     _customerid VARCHAR;
     _address VARCHAR;
     _zipcode VARCHAR;
     _city VARCHAR;
     _country VARCHAR;
     _field1 VARCHAR;
     _field2 VARCHAR;
     _field3 VARCHAR;
     _field4 VARCHAR;
     _field5 VARCHAR;
   BEGIN
     select into _id, _name, _address, _zipcode, _city, _country, _customerid, 
                 _contact1, _contact2, _contact3, _field1, _field2, _field3, _field4, _field5 
                 id, name, address, zipcode, city, country, customerid,
                 contact1, contact2, contact3, field1, field2, field3, field4, field5
       from  fastdial_company where company = $1 and
             (number = $2 OR $2 like number OR  number = (''00'' || $2) OR (''00'' || $2) like number)
       order by number desc limit 1;
     IF NOT FOUND THEN
       return ''###############'';
     END IF;
     return _id || ''#'' || _name || ''#'' || _address || ''#'' || _zipcode || ''#'' || _city || ''#'' || _country || ''#'' || _customerid || ''#'' ||
             _contact1  || ''#'' || _contact2  || ''#'' || _contact3  || ''#'' ||
            _field1 || ''#'' || _field2 || ''#'' || _field3 || ''#'' || _field4 || ''#'' || _field5 || ''#'';
   END;
' LANGUAGE plpgsql;

