Oracle EBS Alert

Alert 是一种Oracle系统中的一种机制,它可以监视系统数据库,在规定的情况下给规定用户一个通知,通知可以是邮件或者其他形式,在标注的系统和客户化系统中都是可以定义使用的。有两种类型的Alert:

(1)     Event Alert. 事件型的Alert会即时发出消息

(2)     Periodic Alert. 周期型根据预定义周期检查数据库然后发出消息

Oracle Alert会在以上两种给定请款下检查(check)数据库,检查时发生的与预定义不符合的情况叫做一个异常 (Exception),检查之后发生的预定义动作叫做反应(Action)。

Action在Oracle中有4种:

(1)     发送E-mail 消息(UNIX Sendmail, VMS mail, Any MAPI-complaint NT mail application…)

(2)     提交一个并发请求(Concurrent Program)

(3)     运行一个SQL脚本(只有客户化表和开放接口表才可以在这个情况下进行写操作)

(4)     运行一个系统脚本

标准Alert Guide中开发Alert的7个基本步骤:(参考R11i Oracle Alert Student Guide)

(1)     调查研究

(2)     定义Alert

(3)     定义反应(Action)

(4)     定义反应集(Action Set)

(5)     测试Alert

(6)     查看历史记录

(7)     编写文档

1.       Event Alert

事件型Alert可以监视数据库,即时做出反应。对数据库的增加(insert)和修改(update)操作可以进行监控,一个查询语句(select SQL statement) 定义在Event Alert中和定义的反应(Action)作为数据库事件的结果。

触发条件:当对Oracle 应用或客户化应用数据库表有update/insert操作时

(1)     调查、准备

对于标准的Oracle EBS功能,可以再form中查看Record History得到相应的表,然后在应用开发的职责下可以看到对应表的列。

准备阶段还需要安装客户化应用、创建客户化应用和设置Mail List。

对于客户化表,需要注册表和列到Oracle系统中( AD_DD.REGISTER_TABLE 和AD_DD.REGISTER_COLUMN )。

(2)     定义Alert

用户:sysadmin

职责:Alert Manager

菜单:Alert>>Define

关键的属性设置

   Application: 选择Alert的应用,取决于要对那个应用使用Alert

Name: Alert的标识,唯一

Periodic/Event: 选择Alert的类型,只能二选一,这里选Event

Event Detail>>Application: 注册表的应用

Event Detail>>Table: 注册的表

Event Detail>>After Insert: 是否对insert 进行监控

Event Detail>>After Update: 是否对update 进行监控

    Select Statement: 返回结果的select 语句

    Verify: 验证Select语句

    Alert Detail: Alert的细节设置

    

  其中Oracle ID 固定选择APPS, OU就是需要控制的OU,一般情况要选择某一个组织,input和output就是Select语句中的参数,input参数以“:”开头(常用的有 :ROWID, :MAILID, :ORG_ID, :DATE_LAST_CHECKED),output参数以“&”开头,会自动解析到类表里。

(3)     定义Action

  Action Level为Detail的意思是,如果前面的SQL返回n条记录,那么将发n封mail。这里的Text引用了output 变量。

(4)     Action Set: 设置反应集

Action Set就是把一系列的Action放在一个集合里

(5)     测试

测试之前可以查看一下对应生成的触发器,方法:

SELECT t.owner, t.trigger_name, t.trigger_type, t.triggering_event

FROM all_triggers t

WHERE t.table_owner = 应用简称

AND t.table_name = 表名

触发器的类型也可以在这里看到。

对于客户化表,如果没有界面,那么可以模拟登陆来测试:

View
Code

然后对表进行update/insert操作就会根据触发器来判断是否有Alert的Action

(6)     查看历史记录

菜单:History

根据相应的条件就可以查出相应的Alert的Action。

也可以查询wf_notification_out,如果state从0变为2说明邮件发送了:

SELECT * FROM wf_notification_out WHERE corrid = 'APPS:ALR:';

如果配置有邮件服务,那么maillist也会受到邮件。

2.       Periodic Alert

周期型的定义和事件型定义基本一致,系统check方式不一样。

Frequency: check的周期

Start Time: 开始时间

End Time:结束时间

其他与Event型基本一致

ORALCE EBS ALERT 初体验的更多相关文章

  1. 百度EChart3初体验

    由于项目需要在首页搞一个订单数量的走势图,经过多方查找,体验,感觉ECharts不错,封装的很细,我们只需要看自己需要那种类型的图表,搞定好自己的json数据就OK.至于说如何体现出来,官网的教程很详 ...

  2. SignalR初体验

    简介 ASP .NET SignalR[1]  是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信.什么是实时通信的Web呢?就是让客户端(Web页面)和服务器端可以 ...

  3. 中文代码示例之NW.js桌面应用开发初体验

    先看到了NW.js(应该是前身node-webkit的缩写? 觉得该起个更讲究的名字, 如果是NorthWest之意的话, logo(见下)里的指南针好像也没指着西北啊)和Electron的比较文章: ...

  4. [Ajax] AJAX初体验之-在博客中添加无刷新搜索

    现在博客很流行,相信应该上网时间稍微长点的朋友都会在这或者在那的有一个自己的博客.对于一些有一定能力的朋友,可能更喜欢自己去下载一个博客程序来架设一个自己的博客,而不是使用一些博客网站提供的服务.而大 ...

  5. ThinkPHP -- 开发初体验及其几个配置文件的介绍

    ThinkPHP是一款不错的轻量级的PHP+MVC框架,它吸取了Ruby On Rails的特性,不仅将Model.View.Controller分开,而且实现了ORM.模板标签等高级特性.    开 ...

  6. js随堂初体验(一)

    Js初体验(-) 1 js的基础知识 A web三大标准:1 html:结构标准    2 css:表现标准  3 javascript:行为标准 B js三种书写方式:1 行内js:onclick ...

  7. javascript_19-DOM初体验

    DOM DOM: 文档对象模型(Document Object Model),又称为文档树模型.是一套操作HTML和XML文档的API. DOM可以把HTML和XML描述为一个文档树.树上的每一个分支 ...

  8. .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验

    不知不觉,“.NET平台开源项目速览“系列文章已经15篇了,每一篇都非常受欢迎,可能技术水平不高,但足够入门了.虽然工作很忙,但还是会抽空把自己知道的,已经平时遇到的好的开源项目分享出来.今天就给大家 ...

  9. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

随机推荐

  1. [error]configure: error: You need a C++ compiler for C++ support.

    安装pcre包的时候提示缺少c++编译器 解决办法 使用yum安装 yum -y install gcc-c++ 本文出自 "orangleliu笔记本"博客,转载请务必保留此出处 ...

  2. EJB_开发EJB容器模型的WEB服务

    开发EJB容器模型的WEB服务 WEB服务 Web服务也是一种分布式技术,它与EJB最大的不同是,Web服务属于行业规范,可以跨平台及语言.而EJB属于Java平台的规范,尽管理论上可以跨平台,但实现 ...

  3. 21 FragmentTabHost +Fragment代码案例

    注意头导航标签过多会被压缩并 结构 MainActivity.java package com.qf.day21_fragmenttabhost_demo1; import com.qf.day21_ ...

  4. python+OpenCV 特征点检测

    1.Harris角点检测 Harris角点检测算法是一个极为简单的角点检测算法,该算法在1988年就被发明了,算法的主要思想是如果像素周围显示存在多于一个方向的边,我们认为该点为兴趣点.基本原理是根据 ...

  5. 剑指offer面试题4 替换空格(java)

    注:利用java中stringBuilder,append,length方法很方便的解决字符串问题 /* * 剑指offer 替换空格 * xsf * */ /*开始替换空格的函数,length为原数 ...

  6. FFmpeg源代码简单分析:avformat_write_header()

    ===================================================== FFmpeg的库函数源代码分析文章列表: [架构图] FFmpeg源代码结构图 - 解码 F ...

  7. 使用Broadcast实现android组件之间的通信

    android组件之间的通信有多种实现方式,Broadcast就是其中一种.在activity和fragment之间的通信,broadcast用的更多本文以一个activity为例. 效果如图: 布局 ...

  8. 【java集合框架源码剖析系列】java源码剖析之LinkedList

    注:博主java集合框架源码剖析系列的源码全部基于JDK1.8.0版本. 在实际项目中LinkedList也是使用频率非常高的一种集合,本博客将从源码角度带领大家学习关于LinkedList的知识. ...

  9. Android开发学习之路--Camera之初体验

    顾名思义Camera就是拍照和录像的功能,像微信里面,我们想拍照传一下照片,就可以通过camera来拍照,然后存储照片,发送给好友.那么微信的app里面是不会直接通过camera api来实现的,因为 ...

  10. Qt中实现启动画面

    纵所周之,当一个程序的启动比较耗时的时候,为了不让用户枯燥的等待或者是误以为程序运行异常了,所以我们都会在启动比较耗时的程序中加上启动界面 ,例如office软件等等. 在Qt中实现启动界面,主要就是 ...