TIPTOP二次开发结构.docx
- 文档编号:13264996
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:16
- 大小:17.87KB
TIPTOP二次开发结构.docx
《TIPTOP二次开发结构.docx》由会员分享,可在线阅读,更多相关《TIPTOP二次开发结构.docx(16页珍藏版)》请在冰点文库上搜索。
TIPTOP二次开发结构
2012-3-1TIPTOP报表程式结构
TIPTOP报表程式结构
(1)变量声明部分
(2)Main
(3)_tm函数
(4)报表输出函数(相当show)
1)变量声明部分
databaseds
globals变量名#全局变量定义
define变量名record
endrecord#记录集变量定义
define变量名recordlike表#记录集变量定义
define变量名like表.字段#局部变量定义
2)Main
赋值初始变量
cl_user#检查用户是否存在
cl_setup#程式预设检查
cl_used#记录程式使用时间
定义g_sql的水晶报表的结构,作用于xml转换
格式如下:
g_sql="字段.表.字段,..."
生成temp表
LETl_table=cl_prt_temptable('报表程式名',g_sql)clipped
Call_tm函数#输入打印条件inputprintcondition
Call报表输入函数#调用报表输出函数readdataandcreateout-file
cl_used#记录程式使用时间
3)_tm函数
局变量定义
openwindow路径#打开界面路径
cl_ui_init#初始化变量值
initializetm.*tonull#给所有tm.*的变量赋空值
WHILETRUE#循环执行菜单显示
CONSTRUCTBYNAME变量名ON查询条件字段,...
BEFORECONSTRUCT
cl_qbe_init#QBE查询条件初始化
ONACTION菜单项#具体菜单名
ONIDLE#闲置时间设置
INPUTBYNAME变量名WITHOUTDEFAULTS
BEFOREINPUT
cl_qbe_display_condition()
AFTERFILED
4)报表输出函数
定义屏幕变量sr记录集
格式如下:
definesrrecord
...
endrecord
cl_del_data(l_table)#清空临时表记录集
LETg_sql="insertinto",g_cr_db_str,CLIPPED,l_tableCLIPPED,"VALUES(...)"
PREPAREINSERT_PREPFROMg_sql#插入临时表l_table的记录
LETl_sql="..."#show记录数据的SQLA语句
PREPARE变量名FROMl_sql#预编译SQL语句
DECLARE游标变量名CURSORFOR预编译SQL变量名
FOREACH游标变量名INTOsr.*#循环读取记录到屏幕变量
...
EXECUTEinsert_prepUSINGsr.*
ENDFOREACH
LETg_sql="SELECT*FROM",g_cr_db_strCLIPPED,l_tableCLIPPED#生成水晶报表记录集
LETg_str="..."#给水晶报表中的26个参数传值,切记要对应变量
CALLcl_prt_cs3('报表程式名','报表程式名',g_sql,g_str)
2009-09-11TIPTOP单头单档程式结构
定义变量
Main函数
_cs函数
_menu菜单函数
_a函数
_i函数
_q函数
_fetch函数
_show函数
_u函数
_x函数
_r函数
_copy函数
_out函数
_chkym检查日期函数
1)定义变量
定义数据库路径
databaseds
定义全局变量文件路径
globals"..."
定义记录集变量
Define变量名Recordlike表
2)Main函数
OPTIONS#改变系统预设值
FORMLINE#窗口开始的位置
MESSAGELINE#信息提示的位置
PROMPTLINE#提示信息的位置
cl_user#检查用户帐号
cl_setup#检查程式设置路径
cl_used#记录程式使用时间
定义水晶报表结构
LETg_sql="字段.表.字段,..."
cl_prt_temptable()#创建临时表记录水晶报表记录集
插入记录
LETg_sql="INSERTINTOds_report",l_table,CLIPPED...
OPENWINDOW#打开窗口
cl_ui_init()#设定程式初始化
CALL_menu#打开菜单
CLOSEWINDOW#关闭窗口
cl_used
3)_cs函数
CLEARFORM#清除屏幕
CONSTRUCTBYNAME变量名ON字段变量名,...#取屏幕变量条件
BEFORECONSTRUCT
cl_qbe_init()
ONACTION...
ONIDLE...
cl_on_idle()
CONTINUECONSTRUCT
ENDCONSTRUCT
定义查询SQL语句
定义游标记录集
4)_menu菜单函数
BEFOREMENU
cl_navigator_setting()#上下记录数据移动
ONACTION...
ONIDLE...
cl_on_idle
CONTINUEMENU
ENDMENU
5)_a函数
CLEARFORM#清除屏幕
cl_opmsg#定义程式操作类型
WHILETRUE
CALL_i#调用_i函数插入记录
INSERTINTO表VALUES(屏幕变量名.*)#插入记录数据
EXITWHILE
ENDWHILE
6)_i函数
DISPLAYBYNAME字段变量名,...
INPUTBYNAME字段变量名,...WITHOUTDEFAUTLS
BEFOREINPUT
AFTERFIELD...
ONACTION...
ONIDLE...
cl_on_idle()
CONTINUEINPUT
ENDINPUT
7)_q函数
cl_navigator_setting()#上下记录数据移动
cl_opmsg#定义程式操作类型
CALL_cs#调用查询函数
定义游标记录集
CALL_fetch#
8)_fetch函数
PROMPT...
ONIDLE...
cl_on_idle
ONACTION...
ENDPROMPT
cl_navigator_setting#上下笔记录移动
SELECT*INTO屏幕变量名.*FROM表#读取记录数据给屏幕变量
CALL_show#调用显示函数显示当前记录
9)_show函数
DISPLAYBYNAME字段变量,...
10)_u函数
cl_opmsg#定义程式操作类型
BEGINWORK#打开工作区
CALL_show#显示记录
WHILETRUE
CALL_i("u")#栏位修改
UPDATE表#更新记录数据
EXITWHILE
ENDWHILE
COMMITWORK#提交数据
11)_x函数
BEGINWORK#打开工作区
定义游标记录集
CALL_show#显示记录
cl_exp#询问是否设置无效
UPDATE表#更新记录
COMMITWORK#提交数据
12)_r函数
BEGINWORK#打开工作区
定义游标记录集
CALL_show#显示记录
cl_delete#询问是否要删除记录
DELETEFROM表#删除记录
COMMITWORK#提交数据
13)_copy函数#复制函数
INPUT字段变量名,...FROM字段变量名,...
AFTERFIELD...
ONACTION...
ONIDLE...
cl_on_idle
CONTINUEINPUT
ENDINPUT
DROPTABLE临时表#删除临时表
INTOTEMP临时表#插入临时表
UPDATE表...#更新临时表的关键资料字段
INSERTINTO表SELECT*FROM临时表#将临时表中的记录插入到正式表中...
CALL_show#显示记录
14)_out函数#报表输出函数
cl_del_data#清空临时表中的记录
cl_wait#等待显示
定义游标记录集
FOREACH游标变量名INTO屏幕变量名.*#循环读取记录到屏幕变量...
EXECUTE插入预编译SQL变量USING屏幕变量名.*
ENDFOREACH
CLOSE游标记录集
CALLcl_prt_cs3#
2009-09-09TIPTOP单身单档录入程式结构
定义变量
MAIN函数
_menu菜单函数
_q函数
_b函数
_b_askkey函数
_b_fill函数
_bp函数
_set_entry函数
_set_no_entry函数
1)定义变量
定义数据库路径
databaseds
定义全局变量路径
globals"..."
定义动态数组变量
Define动态变量名ARRAYOFRECORD...
ENDRECORD
2)MAIN函数
OPTIONS#改变系统预设值
FORMLINE#窗口开始的位置
MESSAGELINE#讯息显示的位置
PROMPTLINE#提示讯息的位置
cl_user#检查用户帐号
cl_setup#检查程式路径
cl_used#记录程式使用时间
OPENWIHDOW#打开窗口
cl_ui_init#程式设定初始化
CALL_menu#打开菜单
CLOSEWINDOW#关闭窗口
cl_used#记录程式使用时间
3)_menu菜单函数
WHILETRUE
CASEg_action_choice
..
ENDCASE
ENDWHILE
4)_q函数
_askkey#调用_askkey函数,不明白为何这样做?
?
?
5)_b函数
cl_opmsg#定义程式操作类型
cl_detail_input_auth("...")#检查单身是否有insert或是delete权限
INPUTARRAY变量名WITHOUTDEFAULTSFROM屏幕变量名.*
ATTRIBUTE(COUNT=变量名,MAXCOUNT=变量名,UNBUFFERED,
INSERTROW=单身变量,DELETEROW=单身变量,APPENDROW=单身变量)
BEFOREINPUT
fgl_set_arr_curr()#此函数找不到不知何作用
BEFOREROW
BEGINWORK#工作区定义
BEFOREINSERT
AFTERINSERT
INSERINTO...VALUES...#插入记录
COMMITWORK#提交数据
AFTERFIELD...
NEXTFIELD...
BEFOREDELETE
DELETEFROM...#删除记录
COMMITWORK#提交数据
ONROWCHANGE
UPDATE...#更新数据
COMMITWORK#提交数据
AFTERROW
COMMITWORK#提交数据
ONACTION...
ONIDLE...
cl_on_idle
CONTINUEINPUT
ENDINPUT
COMMITWORK
6)_askkey函数
CLEARFORM#清除窗口
...
CONSTRUCT变量名ON字段变量,...FROM字段变量,...
ONACTION...
ONIDLE...
cl_on_idle
CONTINUECONSTRUCT
ENDCONSTRUCT
CALL_b_fill填充函数
7)_b_fill填充函数
LETg_sql="..."#定义SQL语句
PREPARE变量名FROMg_sql#预编译SQL语句
DECLEAR游标变量名CURSORFOR预编译变量名
FOREACH游标变量名INTO动态数组变量名.*
...
ENDFOREACH
8)_bp函数
cl_set_act_setting#显示确定与退出按钮提示
DISPLAYARRAY动态数组变量名TO屏幕变量名.*ATTRIBUTE(COUNT=记录数变量名)
BEFOREROW
cl_show_fld_cont#定义p_per档特殊格式栏位
ONACTION...
EXITDISPLAY
AFTERDISPLAY
CONTINUEDISPLAY
ENDDISPLAY
9)_set_entry与_set_no_entry函数
cl_set_comp_entry()#设置栏位是否可以输入
2009-09-09TIPTOP查询式报表程式结构
定义变量
Main函数
_cs函数
_menu函数
_q函数
_b_fill函数
_bp函数
1)定义变量
定义数据库路径
databaseds
定义全局变量文件路径
globals"..."
定义动态数组
Define数组变量名DYNAMICARRAYOFRECORD
...
ENDRECORD
2)MAIN函数
OPTIONS#改变系统预设置值
FORMLINE#窗口开始位置
MESSAGELINE#讯息显示的位置
PROMPTLINE#提示讯息的位置
cl_suer#用户帐号的检查
cl_setup#程式路径检查
cl_used#程式使用时间记录
OPENWINDOW#窗口打开
cl_ui_init#程式设定初始化
CALL_menu#菜单显示
CLOSEWINDOW#关闭窗口
cl_used#记录程式使用时间
3)_csQBE查询函数
CLEARFORM#清空窗口
...
INITIALIZEtm.*TONULL#清空条件变量值
INPUTBYNAME变量名WITHOUTDEFAULTS
ONACTION...
ONIDLE...
cl_on_idle()
CONTINUEINPUT
...
ENDINPUT
CONSTRUCT变量名ON字段变量名,...FROM字段变量名,...
BEFORECONSTRUCT
cl_qbe_init()
ONACTION...
ONIDLE...
cl_on_idle()
CONTINUECONSTRUCT
ENDCONSTRUCT
LETg_tw="..."#查询条件变量值组合
4)_menu菜单函数
WHILETRUE
_bp("G")#调用_bp函数
CASEg_action_choice
...
ENDCASE
ENDWHILE
5)_q函数
cl_navigator_setting()#上下笔记录移动数据
cl_opmsg#定义操作程式类型
CALL_cs#调用查询函数
CALL_b_fill#调用填充记录函数
6)_b_fill填充函数
LETg_sql="..."#查询SQL语句
PREPARE变量名FROMg_sql#预编译SQL语句
DECLEAR游标变量名CURSORFOR预编译变量名
FOREACH游标变量名INTO动态数组变量名.*
...
ENDFOREACH
7)_bp函数
cl_set_act_setting("accept,cancle",FALSE)#显示确定与退出按钮
DISPLAYARRAY动态数组变量名TO动态数组变量名.*ATTRIBUTE(COUNT=记录变量名,UNBEFFERED)
BEFOREDISPLAY
cl_navigator_setting()#上下笔记录数据移动
cl_show_fld_cont()#設定p_per內有特殊格式設定的欄位
ONACTION...
EXITDISPLAY
ONIDLE...
cl_on_idle()
CONTINUEDISPLAY
AFTERFILED
CONTINUEDISPLAY
cl_set_head_visible("","AUTO")#显示/隐藏单头元件
ENDDISPLAY
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TIPTOP 二次开发 结构