Guest User

Untitled

a guest
Feb 21st, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. CREATE OR REPLACE FUNCTION FN_INDICADOR (
  2. id_sensor in VARCHAR2)
  3. RETURN VARCHAR2
  4. IS
  5. MSG VARCHAR2(200);
  6. v_query_insert VARCHAR2 (500);
  7. err_code VARCHAR2(100);
  8. err_msg VARCHAR2(150);
  9. BEGIN
  10. -- cargamos la consulta contenida en el indicador
  11. SELECT query INTO v_query_insert FROM SENSOR WHERE IDSENSOR=id_sensor;
  12. -- ejecutamos la consulta
  13. EXECUTE IMMEDIATE v_query_insert INTO MSG;
  14.  
  15. RETURN MSG;
  16.  
  17. EXCEPTION
  18. WHEN OTHERS THEN
  19. -- se registra el codigo de error
  20. err_code := SQLCODE;
  21. -- se registra el mensaje de error
  22. err_msg := SUBSTR(SQLERRM, 1, 200);
  23. MSG:= SQLCODE ||'- '||err_msg; -- Error de aplicacion
  24. RETURN MSG;
  25. END;
  26.  
  27. CREATE OR REPLACE TRIGGER UPDATE_VALOR
  28. BEFORE UPDATE ON SENSOR REFERENCING NEW AS NEW OLD AS OLD
  29. FOR EACH ROW
  30. DECLARE
  31. v_fecha DATE;
  32. BEGIN
  33. v_fecha :=SYSDATE;
  34. SELECT SYSDATE INTO v_fecha FROM DUAL;
  35. :NEW.ACTUALIZACION :=v_fecha;
  36. END;
  37.  
  38. CREATE OR REPLACE TRIGGER UPDATE_VALOR
  39. BEFORE UPDATE ON SENSOR REFERENCING NEW AS NEW OLD AS OLD
  40. FOR EACH ROW
  41. DECLARE
  42. v_fecha DATE;
  43. v_indicador NUMBER;
  44. BEGIN
  45. --ESTE PROCESO SOLO ME DA LA FECHA ACTUAL DEL SISTEMA Y LA REGISTRA EN
  46. --MICAMPO ACTUALIZACION
  47. v_fecha :=SYSDATE;
  48. SELECT SYSDATE INTO v_fecha FROM DUAL;
  49. :NEW.ACTUALIZACION :=v_fecha;
  50. --LLAMADA DE MI FUNCION
  51. v_indicador := FN_INDICADOR(IDSENSOR);
  52. END;
  53.  
  54. FN_INDICADOR(parametro);
  55.  
  56. esquema1.FN_INDICADOR(parametro);
  57.  
  58. v_regreso := FN_INDICADOR(parametro);
Add Comment
Please, Sign In to add comment