作者: JAN(January) FEB(February) MAR(March)
APR(April) MAY(May) JUN(June)
JUL(July) AUG(August) SEP(September)
OCT(October) NOV(November) DEC(December)
********************************************************************
****************************常用设置********************************
onlog 触发器编写示范
Declare
flag varchar():=null;
cou number:=;
n number;
Begin
Loop
logon(USERNAMEPASSWORD||@||CONNECTPROPERTY_FALSE);
flag:=Get_Application_Property(DATASOURCE);
Exit when cou> or flag=ORACLE;
cou:=cou+;
End Loop;
If flag<>ORACLE then
set_alert_property(a_alert_message_text
登录失败请返回重试);
n:=show_alert(a_);
raise form_trigger_failure; 中断 FORM
End if;
End;
对基表执行查询(只对基表)
Set_Block_Property(Block_NameDefault_Wherewhere );
Go_Block(Block_Name);
Execute_Query;
***************************************************
变量
局部变量
全局变量:em
:parameterv_name
:globalV_name
***************************************************
同步发生显示
synchronize;
实施TRIGGER触发
EXECUTE_TRIGGER(TRIGGER_NAME);
清除模块
clear_block(NO_VALIDATE); NO_VALIDATE不生效
建立警告栏并由警告栏选择
Declare
n number;
Begin
Set_Alert_Property(Alert_NameAlert_Message_Textmessage);
n:=Show_Alert(Alert_Name);
If n=Alert_Button then
;
ElsIf n=Alert_Button then
;
End if;
End;
WINDOW设置
运行时最大化最小化
Set_Window_Property(FORMS_MDI_WINDOW WINDOW_STATE MAXIMIZE|MINIMIZE);
WINDOW标题
Set_Window_Property(FORMS_MDI_WINDOW titleTEXT);
退出是否为真
Set_Window_Property(FORMS_MDI_WINDOW REMOVE_ON_EXITPROPERTY_FALSE|TRUE);
设置系统提示信息等级
:SystemMessage_Level:= |||;
设置ITEM属性
设置ITEM属性ENABLED
Set_Item_Property(Block_nameItem_nameENABLEDPROPERTY_TRUE|FALSE);
设置ITEM属性NAVIGABLE
Set_Item_Property(Block_nameItem_nameNAVIGABLEPROPERTY_TRUE|FALSE);
设置ITEM属性VISUAL_ATTRIBUTE
Set_Item_Property(Block_nameItem_namevisual_attributevname);
vname由导航器中(VISUAL_ATTRIBUTES)定义
设置ITEM属性DISPLAYED
Set_Item_Property(Block_nameItem_namedisplayedTRUE|FALSE);
设置ITEM属性POSITION
Set_Item_Property(Block_nameItem_namepositionxy);
设置ITEM_SIZE
Set_Item_Property(Block_nameItem_nameitem_sizexy);
设置ITEM属性LABLE
Set_Item_Property(Block_nameItem_nameLABELMESSAGE)
设置LIST ITEM示范
Declare
n number;
Begin
clear_list(bfkfs);
m:=populate_group(fkfs);
populate_list(bfkfsfkfs);
/*
其中FKFS 为 record group ;
*/
End;
增加LIST ITEM
Add_List_Element(list_name list_index list_label list_value);
Add_List_Element(list_id list_index list_label list_value);
删除LIST ITEM项
Delete_List_Element(list_name list_index);
Delete_List_Element(list_id list_index);
例:
BEGIN
Delete_List_Element(years);
Add_List_Element(years );
END;
获得LIST ITEM项的组成
获得LIST ITEM的总和
GET_LIST_ELEMENT_COUNT(list_id);
GET_LIST_ELEMENT_COUNT(list_name);
获得LIST ITEM的标签
GET_LIST_ELEMENT_LABEL(list_id list_name list_index);
GET_LIST_ELEMENT_LABEL(list_name list_index);
获得LIST ITEM的值
GET_LIST_ELEMENT_VALUE(list_id list_index);
GET_LIST_ELEMENT_VALUE(list_name list_index);
设置时间
DECLARE
timer_id Timer;
one_minute NUMBER() := ;
BEGIN
timer_id := CREATE_TIMER(emp_timer one_minute REPEAT|NO_REPEAT);
END;
产生一个EDITER框
DECLARE
ed_id Editor;
status BOOLEAN;
BEGIN
ed_id:=Find_Editor(edit_name); 由edit_name导航器定义
IF NOT Id_Null(ed_id) THEN
Show_Editor(ed_id NULL :em_name status);
ELSE
Message(Editor Happy_Edit_Window not found);
RAISE Form_Trigger_Failure;
END IF;
END;
产生一个LOV框
DECLARE
lv_id LOV;
status BOOLEAN;
BEGIN
lv_id := Find_LOV(lov_name); lov_name 由导航器定义
IF Id_Null(lv_id) THEN
lv_id := Find_LOV(lov_name); lov_name 由导航器定义
END IF;
status := Show_LOV(lv_id);
END;
定义一个EXCEPTION例外
Declare
err_ exception;
Begin
If then
Raise err;
End if;
Exception
When err_ then
END;
设置应用特性(光标类型)
SET_APPLICATION_PROPERTY(CURSOR_STYLE
CROSSHAIR|BUSY|HELP|DEFAULT|INSERTION);
***********************************************************************
**********************************函数*********************************
把字符串的字符变成全大写(UPPER)全小写(LOWER)第一个字母大写(INITCAP)
UPPER|LOWER|INITCAP(STRING)
在文件的左(LPAD)右(RPAD)粘贴字符
LPAD|RPAD(STRINGLENGTHSET) LENGTH为总字符长SET为粘贴字符
在文件的左(LTRIM)右(RTRIM)删除字符
LTRIM|RTRIM(SRTINGSET) SET为待删除字符
找出字符集在字符串中的位置
INSTR(STRINGSETNM) 从STRING中找出SET从N位起第M个
数的绝对值
ABS(VALUE)
MOD模
MOD(VALUE除数) 返回除数除VALUE的余数常用判断VALUE是否为整数
把VALUE从N位四捨五入ROUND 或从N位截断TRUNC
ROUND|TRUNC(VALUEN)
返回VALUE的符号
SIGN(VALUE)
列表的最大值
GREATEST(NN);
列表的最小值
LEAST(NN);
返回小于或等于数的最大整数
FLOOR(VALUE) floor()= floor()=
返回大于或等于数的最小整数
CEIL(VALUE) cell ()= cell ()=
取字符串长度
substr(stringstartnumber) number为string长度start为string起点
DECODE函数多重(ifthenelse)
decode(valueifthenifthenelse)
判断VALUE是否为空(空值替换)
NVL(UALUEWKFHZ) WKFHZ是为空返回值不为空则为原值
字段长度
length(:em_id)
返回字符串的第一(最左)个字符的ascII值
ascII(string)
多行VALUE的 (作用于多行)
AVG(VALUE)平均值
COUNT(VALUE)行数
MAX(VALUE)最大值
MIN(VALUE)最小值
SUM(VALUE)和
字符转换
TRANSLATE(STRING待转字符转换字符);
如 TEANSLATE(AAABBBABBA) 返回BBBAAA
比较单行中多个列的值获得最大(GREATEST最小(LEAST)
GREATEST|LEAST(列名列名)
按表达式或位置排序
ORDER BY 表达式OR位置 ASC|DESC ASC升DESC降 默认ASC
***********************************************************************
***********************************************************************
游标的属性
() %ISOPEN 打开属性 布尔型 打开为TRUE
判断光标是否打开如未打开则打开光标
IF NOT(CORSOR_NAME%ISOPEN) THEN
OPEN CORSOR_NAME;
END IF;
FETCH