-- Nev 24.05.2007
-- Formstrigger
WHEN-NEW-FORM-INSTANCE
   SELECT EDV.F_KMP_ADMIN INTO :GLOBAL.ADMIN FROM DUAL;
   IF :GLOBAL.ADMIN <> 1 THEN
   	  SET_BLOCK_PROPERTY('FUS_ABT_PROZ_PUNKTE', DELETE_ALLOWED, PROPERTY_FALSE);
   	  SET_BLOCK_PROPERTY('FUS_ABT_PROZ_PUNKTE', INSERT_ALLOWED, PROPERTY_FALSE);
   	  SET_BLOCK_PROPERTY('FUS_ABT_PROZ_PUNKTE', UPDATE_ALLOWED, PROPERTY_FALSE);
   END IF;
 
-- Serverfunction
CREATE OR REPLACE FUNCTION EDV.F_KMP_ADMIN RETURN NUMBER IS
V_COUNT NUMBER;
BEGIN
    select count(GRANTED_ROLE) into v_count  
      from user_role_privs
     where GRANTED_ROLE = 'KMP_ADMIN';
       
    IF V_COUNT > 0 THEN
       RETURN 1;
    ELSE
       RETURN 0;
    END IF;
EXCEPTION
   WHEN OTHERS THEN
      RETURN 0;
END;
/
-- Server Grants und Synonyms
CREATE PUBLIC SYNONYM F_KMP_ADMIN FOR EDV.F_KMP_ADMIN;
GRANT EXECUTE ON F_KMP_ADMIN TO KMP_ADMIN;
GRANT EXECUTE ON F_KMP_ADMIN TO KMP_READ;
GRANT EXECUTE ON F_KMP_ADMIN TO KMP_STANDARD;