![医院信息系统软件总体项目设计方案_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/ac78f785-f6c4-44c6-853d-6eb7b9739088/ac78f785-f6c4-44c6-853d-6eb7b97390881.gif)
![医院信息系统软件总体项目设计方案_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/ac78f785-f6c4-44c6-853d-6eb7b9739088/ac78f785-f6c4-44c6-853d-6eb7b97390882.gif)
![医院信息系统软件总体项目设计方案_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/ac78f785-f6c4-44c6-853d-6eb7b9739088/ac78f785-f6c4-44c6-853d-6eb7b97390883.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、医院信息系统软件总 体项目设计方案第二章:相关技术指标描述第三章:前端控件的开发3。1 ldbase_FRM 控件3。11 ldbase_FRM 控件总体说明把操作提示区放到一起,如操作员,日期,终端,提示区和操作提示区。 提供几个更新方法:SetUsrName(Usrname:string)通过基本的 API: getargv( usrname' ); 得到SetDate(DateStr:string)通过基本的 date 函数得到SetTrmno(Trmno:string)通过基本的 API: getargv( trmno') 得到 SetCopyright(CopyRig
2、htStr:string)通过基本的 API: getargv( trmno') 得到SetHelp(HelpStr:string)通过基本的 txt_control.help 得到注意把每个 edit 控件, combo 控件的 hint=helpster,showhint=true.能否把控件分成一组一组的,便于控制?增加以下方法 :Focusfirst(grp:string)grp= control object group name,if=nil indicate current group.If currentgrp =-1 find first group.Focusbyn
3、ame(ctlname:string)Ctlname 表示控件名称FocusLast(grd:string)grp=konggroup name,if=nil indicate current group.FocusPrev(grp:string)grp=control object group name,if=nil indicate current group. FocusNext(grp:string)grp=control object group name,if=nil indicate current group. UpdCtlByStr(Grp:String,Updstr:str
4、ing)grp=control object group name,if=nil indicate current group.UpdStr 格式如' ctyno=abcdef;ctyname=972397; 。' . 参见 grid string一般他用 grid.getstr 得到, 在 grid.onclick 事件中调用 为了实现以上功能,每个控件必须有一个 group 属性 ,表示控件所属的组。3。 2 ldtext控件3。 21 ldtext控件总体说明增加属性:Group 表示控件所属的组 ,如” luo ” 一般任何控件都需要本属性TabStop 表示控件是否可
5、以得到焦点 一般任何控件都需要本属性TabOrder 表示控件得到焦点的顺序HelpStr 表示控件得到焦点后的提示字符串MatchStr表示 grid 中的容字符串要更新的 edit 或其他控件的容匹配字符串 如 grid 中得到' ctyno=abcdef;ctyname=972397; 。 。'.而 屏 幕 上 有 一 个 txt_bdctyf_ctyno.matchstr=' ctyno ', 则txt_bdxtyf_ctyno.text= ' abcdef '他通过 ldbase_frm 的 ctlupdate 方法更新,具体说明见 l
6、dbase_frm 说明FmtStr 表示编辑的容的数据格式 , 如: # V(n) 自由格式 , 长度为 n, 数据库用 varchar # Z(n) 自由格式 , 长度为 n, 数据库用 char# S(n) 'a'-'z' '0'-'9' 'A'-'Z'和汉字 字符串格式 , 长度为 n# A(n) 'a'-'z' '0'-'9' 'A'-'Z'字符串格式 , 长度为 n# C(n) 汉字字符串格式
7、 , 长度为 n# G(n) '0'-'9' 字符串格式 , 长度为 n# P(n) '0'-'9' 字符串格式 , 前端显示用密码方式显示dnsn# D(yn,mn,dn)日期字符串格式 , 年份长度为 yn, 月份长度为 mn, 天的长度为# T(hn,mn,sn)时间字符串格式 , 小时长度为 hn, 分钟长度为 mn, 秒的长度为# I(n) 整型格式长度为 n# F(n1,n2)浮点格式 , 小数点前面为 n1 位,小数为 n2 位# $(n1,n2)金额格式 , 小数点前面为 n1 位,小数为 n2 位minlen表示
8、输入数据的最小长度 , 一般 >=0maxlen 表示输入数据的最大长度 , 一般 >0,0 和负数表示不限制keystr 表示编辑容是否关键字字段 , 如 : p'表示唯一的 primary key f '表示和主表对应的组合 primary 之一 c'表示不和主表对应的组合其他primary key t '表示本字段为不可以修改字段'n'表示本字段为一般字段BackAttr 表示在控件的首字符前按 backspace 的处理 : 如 false 表示无动作 ,true 表示进入前一个控件FullAttr 表示在控件输入满字符后的处
9、理 , 如 false 表示无动作 ,true 表示进入下一个控件FullFlag 表示该控件必须输入满字符 , 如 false- 表示无需输入满 ,true- 表示必须输入满Backcolor 表示该控件的提示字符颜色Forecolor 表示该控件的输入字符在失去焦点后的颜色EditBackColor 表示该控件的在输入时输入框的颜色EditForeColor 表示该控件的在输入时输入字符的颜色FontNo 表示该字符字体 , 如建立常见的几种字体Layout 表示标签的位置关系 , 如 left/right 表示左右 ,top/bottom 表示上下LabelWidth 表示标签的长度Te
10、xtWidth 表示输入框的长度缺省的 passwordchar 为 *, 无需在外部指定 缺省的 AllowHeadNull 为 false缺省的 showhint 为 true缺省的 hint 为 helpstr3。 3 ldgrid控件3。 31 ldgrid 控件总体说明增加以下属性attr: 表示唯一定位时的列属性'p' , ' f' , ' c'表示唯一定位时要用到的列进行比较和匹配 'n'和t'及其他表示不需要dispf: 表示列的显示和非显示属性 , ' d' orh'True 表示
11、列显示 ,False 表示列不显示增加以下方法LdGrid.SetCols(ColFmtStr:string) 按列描述字符串格式初始化 grid 的列.ColFmtStr 格式如下:” name;width;fmt;attr;cption# 。 。”Name格式如:ctynoWidth 格式如 :widthFmt 格式如:V(8),C(8),I(6),G(6),A(20),D(4,2,2),T(2,2,2),F(10,2),$(10.2)等Attr 格式如 :null,disp,print,disp&printCaption 格式如:国家编码RowFirst() 把光标定位到第一行上
12、RowEmpty()清除所有容RowLocate(Locstr:string)Locstr定位容字符串,格式如下:'ctyno=abcdef;ctyname=972397; 。 。RowAppend(Appstr:string)Appstr删除容字符串,格式如下:'ctyno=abcdef;ctyname=972397; 。 。Appstr=nil or ''表示空行在当前行之前添加 , 光标定位在刚添加的一行。RowInsert(Insstr:string)Insstr 插入容字符串,格式如下:' ctyno=abcdef;ctyname=972397
13、; 。Insstr=nil or '表示空行 在当前行之前插入 , 光标定位在刚插入的一行。RowUpdate(Updstr:string)Updstr 修改容字符串,格式如下:RowDelete(Delstr:string)Delstr 删除容字符串,格式如下:RowGetStr(Getstr:string)Getstr 取得容字符串,格式如下:RowPrev()把光标定位到上一行上RowNext()把光标定位到下一行上RowLast()把光标定位到最后一行上AddTitle(TitleStr:string)把打印标题字符串加到 GRID中ctyno=abcdef;ctyname=9
14、72397;ctyno=abcdef;ctyname=972397;ctyno=abcdef;ctyname=972397;。'。'。'AddPage(PageHeaderLStr, PageHeaderCStr, PageHeaderRStr:string)把打印表头字符串加到GRID中AddPage(PageFooterLStr, PageFooterCStr, PageFooterRStr:string)把打印表尾字符串加到GRID中PreView()打印预览OnClick()一般本函数由用户编写 , 他负责把选中的行或列的容写到画面的 edit 控件上3。 4
15、ldreport控件3。 5 ldcombo 控件参见 ldedit3。 6 button 控件参见 ldedit第四章:终端授权接口描述4。1 终端授权接口总体说明终端授权主要用于管理客户端的终端的合法性授权, 只有通过软件的检查并得到授权的 终端才可以和后端系统进行交易, 终端授权文件和系统的运行目录在同一个目录下, 它的名 字叫 ldtrmapp.ini ,同时系统提供一个处理终端授权的库函数,他和系统的运行目录在同 一个目录下,它的名字叫 ldtrmapp.dll 。其中 ldtrmapp.ini 文件格式如下: hostname trmno=”000001”key=” acfdefg
16、hh ”为了保证一个配置文件可以重复使用在多个终端上, 上述容可以重复, 以上容表示一个 终端的配置文件, 系统支持每个终端一个文件, 其容各不一样。 其 hostname 为本机 hostname 。 但为了管理方便,可以把系统所有的终端配置文件写在同一个文件中,因此本文本有多个 SECTION。Trmno 表示主机上终端数据库中描述的终端名称。Key 表示通过用 hostname 经过 trmno 和前端系统的特殊可控制变量变换后的结果,一 般用hash和DES算法实现。其中 ldtrmapp.dll 提供以下动态库函数:取得终端名称 GetHostName() 检查终端的合法性 ChkT
17、rmValid()4。2 终端授权接口的详细描述4。 2。1 GetHostName()函数调用原型说明:int GetHostname(hostname);/ 表示要返回的主机名称函数接口参数说明:char*hostname;函数返回值说明:0-表示成功, 1- 表示失败。 函数调用说明:无 系统实现说明:无4。2。2 ChkTrmValid()函数调用原型说明:int ChkTrmValid(trmid);函数接口参数说明:char *trmid; / 表示返回的终端代号。 函数返回值说明:0-表示合法, 1- 表示非法 ,2- 读授权文件失败。 函数调用说明:无系统实现说明:系统自动取得
18、 hostname ,检查终端的合法性,返回合法的终端代号。第五章:三层式交易接口描述5。1 交易接口总体说明交易接口属于开发层面的容, 以下主要通过提供客户端的动态库实现客户端访问的透明 性,客户端的动态库和客户端的运行程序在同一个用户目录下,文件名为 ldmidc.dll 。同 时提供编程的头文件 ldmidch.pas 供程序员参考。 同时为了服务器端的访问透明, 服务器端 提供相关动态库函数,文件名为 ldmids.dll 。同时提供编程的头文件 ldmidsh.pas 供程序该客户端动态库 ldmidc.dll 提供以下函数:和中间件核心连接函数 ConnectMidKernel()
19、 交易请求函数 DoMidTx() 和中间件核心断链函数 DisconnectMidKernel() 取得当前返回错误提示函数 GetTxMsgDefault() 取得任意返回错误提示函数 GetTxMsgByInt()该服务器端动态库 ldmids.dll 提供以下函数:取得系统变量函数 GetSvrVar()5。2 客户端交易接口的详细描述formload 时处理,同时系统允许在每次调 DisconnectMidKernel() 嵌套调用。5。2。1 ConnectMidKernel()constchar*midware;/表示连接的 MIDWAR的名字,女口 tuxedo,cstalk等
20、constchar*midwarehost;/表示连接的 MIDWAR核心主机的别名或 IP地址constchar*trmid;/表示连接的 CLIENT 的 终端 代号 , 一般 用hostname 表示constchar*usrid;/表示连接的 CLIENT 的用户代号,一般用 usrid表示constchar*usrpasswd; /连接的CLIENT的用户口令,一般用passwd表示.函数调用原型说明:int ConnectMidKernel(midware,midwarehost,trmid,usrid,usrpasswd);函数接口参数说明:函数返回值说明:0-表示成功, 1-
21、表示失败。对于具体错误返回提示用 GetErrMsgDedefult 得到。 函数调用说明:本函数一般在系统初始化时调用,如在用 DoMidTx 时及时调用本函数,允许和 系统实现说明:当发现已经连接了以后,系统不在做连接动作,而只把连接的次数加1, 在断连接 时自动把连接次数减一,实现系统的嵌套式调用。3。1。2 DoMidTx ()函数调用原型说明:int DoMidTx(txc,tic,tid,toc,trc,tod);函数接口参数说明:TXC *txc;/ 表示交易控制块结构TIC*tic;/ 表示交易请求控制块结构Char*tid;/ 表示交易请求数据块,由用户自己定义,/ 一般和交
22、易接口文档的容一致。Char*trc;/ 表示交易请求和应答往返控制块。 由用户设置和系统返回。/ 在调用时为本次往返的起始条件,一般首次由用户设置。/ 在返回时为下次往返的起始条件。TOC*toc;/ 表示交易应答控制块Char*tod;/ 表示交易应答数据块/ 一般和交易接口文档的容一致交易控制块一般包括如下容typedef structchartimeout6;chartrmid6;chartrmsno6;charusrid6;charusrsno6;chartxtoken24;/ 表示交易延时,以秒为单位/ 终端代号/ 终端流水号/ 用户代号/ 用户流水号/ 交易令牌/ 表示服务名称/
23、 表示交易代号/ 表示交易冲正标志正常状态表示取消状态,表示不留痕迹 表示冲正状态,表示留痕迹/ 表示交易请求期望得到的结果类型表示期望得到单笔返回结果 表示期望得到多笔往返返回 / 表示需要设置数据库事务标志char hseqno6; char txcnt6;char txmax6;char txfee12; char txamt12;char tidlen6;char trclen6;char todlen6; TIC; 交易返回控制块包括如下容:TXC; 交易请求控制块一般包括如下容: typedef structchar svrname24; char txno6;char hcode
24、1;/'0'-/'1'- /'2'- char txtype1;/'0'- /'1'- char commitf1;/ 更改数据库用 '1'/ 查询数据库用 '0'/ 其他标志由用户自己控制/ 冲正或取消交易的原流水号。/ 本次交易上送 tid 记录数/ 本次交易可以返回的最大记录数/ 如果为 0 表示:/ 由服务器端按 tid.todlen 决定返回最大记录数 / 交易手续费/ 交易金额/ 交易请求数据块长度/ 交易往返控制块长度/ 交易返回数据块长度typedef structc
25、hartxrst8;/ 交易返回代码chartxmsg80;/ 交易错误提示。chartxhlp80;/ 交易返回处理提示。chartrmseqno6;/ 返回终端流水号charusrseqno6;/ 返回用户流水号,一般由主机生成,chartxtype1;/ 表示交易返回结果类型 /'0'- 表示单笔返回结果 /'1'- 表示多笔往返返回/'0'-/'1'-chartxcnt6;/ 本次交易返回记录数/ 在非往返交易情况下为 1chartxmax6;/ 本次交易可以返回的最大记录数/ 在非往返交易情况下为 1/ 如果大于交易返回
26、记录数表示交易结束chartodlen6;/ 返回数据长度TOC;函数返回值说明:得到。0-表示成功, 1- 表示失败。对于具体错误返回提示用GetErrMsgDedefult函数调用说明:本函数一般在交易请求时调用。 系统实现说明:当发现未连接时,系统自动做连接动作。3。 1。3 DisconnectMidKernel()函数调用原型说明:int DisconnectMidKernel(); 函数接口参数说明:无函数返回值说明:得到。0-表示成功, 1- 表示失败。对于具体错误返回提示用GetErrMsgDedefult函数调用说明:本函数一般在退出系统时调用,注意要和 ConnectMid
27、Kernel() 匹配。 系统实现说明:如果减当发现未连接时,系统不做连接动作。当系统连接数不为0时,自动减一, 一为 0,真实 Disconnect。和 ConnectMidKernel 实现嵌套。3。 1。4 GetTxMsgByInt()函数调用原型说明:void GetTxMsgByInt(errcode,errmsg);函数接口参数说明:int errcode;/ 错误代码char *errmsg;/ 错误提示缓冲区函数返回值说明:函数调用说明: 本函数一般在取得系统各种错误代码的提示时使用。系统实现说明:无3。1。 5 GetTxMsgDefault()函数调用原型说明:voidG
28、etTxMsgDefault(errmsg);函数接口参数说明:/ 错误提示缓冲区char*errmsg;函数返回值说明: 无 函数调用说明: 本函数一般在上次调用发生错误时使用。系统实现说明:无5。3 服务器端交易接口的详细描述5。3。 1 GetSvrVar()函数调用原型说明: int GetSvrVar(int varid,TXC *txc,TIC *tic,char *varstr);/变量代号见TXC描述/ 见 TIC 描述/ 返回结果字符串函数接口参数说明: int varid; TXC *txc; TIC *tic; Char*varstr;函数返回值说明:0- 成功, 1-
29、失败(无此变量)函数调用说明:varid 描述的各个 txc,tic 变量见相关的 include 头文件 ldmidsh.pas 系统实现说明:无5。3。 2 CmpSvrVar()函数调用原型说明:int CmpSvrVar(int varid,TXC *txc,TIC *tic,char *str);/ 变量代号II见TXC描述TIC *tic;Char*str;II 见 TIC 描述II 比较字符串函数返回值说明:0-匹配, 1-不匹配, 2- 无此变量 函数调用说明:varid 描述的各个 txc,tic 变量见相关的 include 头文件 ldmidsh.pas 匹配不区分大小写
30、。系统实现说明:无第六章:数据库访问接口描述6。1 数据库接口总体说明数据访问接口主要用于处理数据库的数据访问,每个数据库都有相关的数据库访问函 数,一般包括插入,删除,修改,运算,选择,加锁,最小,最大等。为了实现以上功能, 必须提供一个项目数据库描述脚本和数据库的原始描述脚本, 通过 这两个最基本的脚本自动产生数据库访问的程序代码和项目工程文件, 再通过该项目工程文 件产生相关的动态连接库,具体的原始文档命名和格式规见下面容:项目描述文件: dba 项目名 .pjt 数据库表描述文件: dba 表名 .gen 项目数据库脚本: dba 项目名 .sql 表初始化数据库脚本: dba 表名
31、.sql 项目工程文件: dba 项目名 .dpr 数据库访问结构的头文件: dbs 项目名 .pas 数据库表访问结构的头文件:dbs 表名 .pas每个表对应的数据访问文件:dba 表名 .pas项目过程中应该产生的必要文档: dba 项目名 .dfm ,。由项目工程文件产生的数据库访问的动态库函数:dba项目名.dll在项目名 .dll 中包含如下函数: 数据库连接函数 dbconnect() 数据库连接函数 dbdisconnect() 数据库访问函数dba表名();详细容请见相关章节。函数接口参数说明: int varid; TXC *txc;6。2 文件格式详细描述6。2。1 项目
32、描述文件项目描述文件的文件名为: dba 项目名。 Pjt 文件格式如下:DATABASE dbserver= dbname= usrid= usrpasswd=TABLE表 1 :表的中文注释表 2 :表的中文注释 COMMENT 项目注释其中表的中文注释可以没有6。2。2 数据库表描述文件数据库表描述文件的文件名为: dba 表名 .gen文件格式如下:PURPOSE分割描述数据库表的作用,其中用“”作为注释符,可以支持多行,每行用 如果在文档中要自动回行用“ n ”表示换行a/”“ purpose 1 ”TABLEname="中文表名”FIELD#描述表中的各个字段,其中数据类
33、型见以下表#数据类型包括 ,c(char),vc(varchar),i(integer),$(decimal) #数据类型格式见下 :c(6),vc(6),i(6),$(10,2) #英文名称中文名称 字段类型及长度 字段备注fid1“字段 1”char(6)本字段为关键字字段INDEX#索引约束类型包括 :"pk","uk","k"#索引物理类型包括 :"c(luster)"-聚簇 ,"n(oncluster)"-非聚簇#相关字段:描述关键字的各个相关字段,如果有多个用","
34、; 分隔#索引字索引约束类型 索引物理类型 相关字段。”tab_idx1 pk“ c”“ fld1,fld2,CONSTRAINT#现在暂时不用LOAD DATA#输入要建立的原始数据,在产生的*.sql 中体现TABLE RELATIONSHIP #现在暂时不用 LIFE CYCLE 描述数据库表的生命周期,其中用“”作为注释符 可以支持多行,每行用“” “分割 如果在文档中要自动回行用“ n ”表示换行TRIGGER暂不用STORE PROCEDURE#暂不用TRANSACATION RELATIONSHIP#服务代号 交易代码 交易中文名 交易访问数据库说明 reg_svr 0101 门
35、诊挂号 “更新,删除,修改,查询等”以上文件格式未明确部分有待进一步明确。6。2。3 项目数据库脚本数据库表描述文件的文件名为: dba 项目名 .sql 文件格式如下:andif exists (select * from sysobjects where id = object_id('t_Action') OBJECTPROPERTY(id, N'IsUserTable') = 1)drop table t_Action - Create Table t_Action科技活动- Create table t_Action 科技活动Create Table
36、t_Action (FIdint identity(1,1) not null primary key,类别时间- 编号FActionTypeId int not null default 0,FDate char(8) not null default '',FAddressvarChar(48) not null default '', -地点FMastervarChar(48) not null default '',-主办位编FActionTitlevarChar(48) not null unique,-主题FActionContvar
37、Char(1024) not null default '', -活动容FNotevarChar(255) not null default ''-备注重点项目鉴定);- Create Table t_ProjCheckCreate Table t_ProjCheck (FId int identity(1,1) not null primary key,- 编号FProjName varChar(48) not null, -项目名称FDatechar(8) not null default '',-鉴定日期FCheckerVarChar(48
38、) not null default '', -鉴定单位FCheckIdvarChar(32) not null unique, -鉴定号FPersonsVarChar(48) not null default '', -参加人员FNotevarChar(255) not null default '' -备注);6。 2。4 表初始化数据库脚本数据库表描述文件的文件名为: dba 表名 .sql 文件格式如下:if exists (select * from sysobjects where id = object_id('t_Proj
39、Check') and OBJECTPROPERTY(id, N'IsUserTable') = 1)drop table t_ProjCheck - Create Table t_ProjCheck重点项目鉴定Create Table t_ProjCheck (FId int identity(1,1) not null primary key, - 编号FProjName varChar(48) not null, -项目名称FDatechar(8) not null default '',-鉴定日期FCheckerVarChar(48) not n
40、ull default '', -鉴定单位FCheckIdvarChar(32) not null unique, -鉴定号FPersonsVarChar(48) not null default '', -参加人员FNotevarChar(255) not null default '' -备注);6。 2。5 数据库访问项目工程文件数据库表描述文件的文件名为: dba 表名 .dpr 文件格式如下: program 项目名 ;usesForms,PolMain_Frm in 'PolMain_Frm.pas' frmPolMa
41、in,LDSysIntDef_u in 'LDSysIntDef_u.pas'。$R *.RESbeginApplication.Initialize;Application.CreateForm(TfrmPolMain, frmPolMain); Application.Run;end.参见 dephi 的工程文件格式,容一定要包含每个表的程序文件! !6。 2。6 项目表结构头文件数据库表描述文件的文件名为: dbs 项目名 .pas 文件格式如下: 宏定义 : DBA_INSERT DBA_DELETE DBA_UPDATE DBA_KEYSEL DBA_KEYLOC D
42、BA_CALCUL DBA_MINSEL DBA_MAXSELtypestr_ 表名 = record字段 : 字段类型 ;end;。6。 2。7 数据库表结构头文件数据库表描述文件的文件名为: dbs 表名 .pas文件格式如下:typestr_ 表名 = record 字段 : 字段类型 ;end;6。 2。8 表访问程序文件数据库表描述文件的文件名为: dba 表名 .pas 文件格式如下:具体格式为 pas 格式的文件6。 2。9 项目过程中应该产生的必要文档数据库表描述文件的文件名为: dba?.pas ,数据库描述文档, 文件格式如下:一般包括 dbaconnect,dbdisco
43、nnect 等处理的程序代码, 。6。 2。10 数据库访问动态库数据库表描述文件的文件名为: dba 项目名 .dll 文件格式为动态库格式。6。 2 数据库访问接口的详细描述6。 2。1 DbaConnect()函数调用原型说明:int Dbaconnect(dbsvrname,dbname,connname);char char char*dbsvrname;*dbname;*connname;函数返回值说明:0-表示成功,1- 表示失败。函数调用说明:无函数接口参数说明:系统实现说明:/ 表示要连接的数据库服务器/ 表示要连接的数据库/ 表示连接的名字6。 2。2 DbaDisconn
44、ect()函数调用原型说明:int DbaDisconnect(connname); 函数接口参数说明:char*connname;函数返回值说明:0-表示合法, 1- 表示失败。 函数调用说明:/ 表示连接的名字无系统实现说明:系统自动切断和数据库的连接。6。2。3 Dba 表名 ()函数调用原型说明:int Dba函数接口参数说明:char*connname;int dbamode;表名 (char *connname,dbamode,dbastr);/ 表示连接的名字/ 表示数据访问的方式/ 它有如下方式定义在项目头文件中/DBA_INSERT/DBA_DELETE/DBA_UPDATE
45、/DBA_KEYSEL/DBA_KEYLOC/DBA_MINSEL/DBA_MAXSEL, 具体见下/DBA_RECADDDBA_RECSST数据库源减数据DBA_RECTSS数据源减数据库表结构 *dbastr;函数返回值说明:/ 表示数据访问数据结构正数或 0-表示访问记录条数,负数 - 表示失败。 函数调用说明:无 系统实现说明:系统要把数据库访问失败的错误代码转化为负数返回。第七章:交易接口数据结构7。1 交易接口数据结构总体说明交易接口数据结构主要用于处理交易接口数据结构的自动代码生成, 他生成访问的交易 接口数据结构程序文档,供程序访问时快速编程,便于系统文档和程序的一致性。为了实
46、现以上功能,必须提供一个交易接口项目描述脚本和交易接口的原始描述脚本, 通过这两个最基本的脚本自动产生交易接口的数据结构。 具体的原始文档命名和格式规见下 面容:交易接口项目描述文件: txi 项目名 .pjt 交易接口描述文件: txi 交易代号 .gen 交易接口数据结构的头文件: txi 项目名 .pas 详细细节请见相关章节。7。2 文件格式详细描述7。2。1 交易接口项目描述文件项目描述文件的文件名为: txi 项目名。 Pjt 文件格式如下:SERVER NAME svrname= usrid= usrpasswd=INTERFACE交易接口代号 1:交易接口的中文注释 交易接口代
47、号 2:交易接口的中文注释 COMMENT 项目注释其易接口的中文注释可以没有7。2。2 交易接口描述文件数据库表描述文件的文件名为: txi 交易接口 .gen文件格式如下:ATTRIBUTEserver=svr_deftxno=$filename(4,8)PURPOSE分割描述交易接口的作用,其中用“”作为注释符,可以支持多行,每行用“” 如果在文档中要自动回行用“ n ”表示换行a/”“ purpose 1 ”。TRANSCATION CONTROL BLOCK #描述交易接口易控制块的各个字段,其中数据类型见以下表#英文名称 中文名称 字段类型及长度 字段备注fid1 “字段 1”ch
48、ar(6) 本字段为关键字字段。TRANSCATION REQUEST CONTROL BLOCK #描述交易接口易请求控制块的各个字段,其中数据类型见以下表#英文名称 中文名称 字段类型及长度 字段备注fid1 “字段 1”char(6) 本字段为关键字字段。TRANSCATION REPEAT CONTROL BLOCK #描述交易接口易往返控制块的各个字段,其中数据类型见以下表#英文名称 中文名称 字段类型及长度 字段备注fid1 “字段 1”char(6) 本字段为关键字字段。TRANSCATION INPUT DATA #描述交易接口易输入数据块的各个字段,其中数据类型见以下表#英文
49、名称 中文名称 字段类型及长度 字段备注fid1 “字段 1”char(6) 本字段为关键字字段。TRANSCATION OUTPUT CONTROL BLOCK #描述交易接口易返回控制块的各个字段,其中数据类型见以下表#英文名称 中文名称 字段类型及长度 字段备注fid1 “字段 1”char(6) 本字段为关键字字段。TRANSCATION OUTPUT DATA #描述交易接口易输出数据块块的各个字段,其中数据类型见以下表#英文名称 中文名称 字段类型及长度 字段备注fid1 “字段 1”char(6) 本字段为关键字字段PROCESS LOGIC描述交易接口的处理逻辑,其中用“”作为
50、注释符可以支持多行,每行用“” “分割如果在文档中要自动回行用“ n ”表示换行CLIENT CALLER描述交易接口的前端界面调用者和调用主要参数,其中用“”作为注释符 英文名 中文名 调用备注ACCESS TABLE描述交易接口的访问的数据库表名和访问方式,其中用“”作为注释符#svrname txno txname dbaccess#服务名称交易代号 交易名称#数据库访问格式如 :tab1.insert;tab2.delete, 割svr_def 0101 $txname(0101)以上文件格式未明确部分有待进一步明确。数据库访问如果一个交易对多个表更改, 用分号分"tab1.
51、insert;tab2.delete"第八章:通用报表开发工具8。1 通用报表开发工具总体说明终端授权主要用于管理客户端的终端的合法性授权, 只有通过软件的检查并得到授权的 终端才可以和后端系统进行交易, 终端授权文件和系统的运行目录在同一个目录下, 它的名 字叫 ldtrmapp.ini ,同时系统提供一个处理终端授权的库函数,他和系统的运行目录在同 一个目录下,它的名字叫 ldtrmapp.dll 。其中 ldtrmapp.ini 文件格式如下: hostname trmno=”000001”key=” acfdefghh ”为了保证一个配置文件可以重复使用在多个终端上, 上述容
52、可以重复, 以上容表示一个 终端的配置文件, 系统支持每个终端一个文件, 其容各不一样。 其 hostname 为本机 hostname 。 但为了管理方便,可以把系统所有的终端配置文件写在同一个文件中,因此本文本有多个 SECTION。Trmno 表示主机上终端数据库中描述的终端名称。Key 表示通过用 hostname 经过 trmno 和前端系统的特殊可控制变量变换后的结果,一 般用hash和DES算法实现。其中 ldtrmapp.dll 提供以下动态库函数:取得终端名称 GetHostName() 检查终端的合法性 ChkTrmValid()8。2 通用报表描述文件8。2。1 通用报表
53、格式描述通用报表文件可以存储在数据库中 , 也可以存放在文件中 , 它主要分为以下几个 SECTION: PURPOSE- 表示报表的用途ATTRIBUTE - 表示报表的属性TITLE - 表示报表的大标题HEAD COMMENT - 表示报表的大标题以下表体之上的说明文字BODY HEAD DETAIL - 表示报表的表体末级表头字段描述BODY HEAD GROUP -表示报表的表体非末级表头字段描述TAIL COMMENT - 表示报表的表体以下的说明文字CONST PARAMETER -表示报表使用的报表常量通用报表格式文件的文件格式如下PURPOSE本报表用于市行之间的储蓄通存通兑
54、资金清算ATTRIBUTERPTENAME= rpt0101RPTCNAME门诊收费日报RPTSTYLE=1TITLEATTR=1HEADATTR=1BODYATTR=1TAILATTR=1LEFTSIZE=0TOPSIZE=0BODYLEFTSIZE=0BODYRIGHTSIZE=0FULLPAGESIZE=10FULLPAGEPROCESS=1;SUBTOTALPROCESS=1TOTALPROCESS=1; 报表英文名称; 报表中文名称;0- 无表体表, 1- 有表体表;0- 正常标题 ,1- 倍高倍宽标题;0- 正常表头说明 ,1- 带线框表头说明;0- 行和行之间有分隔符, 1- 行
55、和行之间无分隔符;0- 正常表尾说明 ,1- 带线框表尾说明; 报表左边空; 报表上边空; 报表表体左边空; 报表表体右边空;报表每页行数,0表示不处理表格满情况;0- 不处理, 1-按换页处理 ,2- 加空行;0- 不处理, 1-按换页处理 ,2- 加空行;0- 不处理, 1-按换页处理 ,2- 加空行#SECTION="" ;section=(1-yes,0-no).TITLE#align=L:LEFT,C=CENTRE,R=RIGHT,F=FOLLOW LAST FIELD.# alignname captionformatC0,0 T01 "$RPTNAME"SRC0,0T02 "$UNITFNAME"SRC0,0 T03 "$UNITALIAS"SRC0,0 T04 "$UNEXIST"SRL0,0T05 "SYSCDATE=$SYSCDATE"SRC0,0T06 "SYSFDATE=$SYSFDATE"SRC0,0T07 "SYSEDATE=$SYSEDATE"SRC0,0T08 "SYSCTIM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入股代理合同范本
- 关于砂石购买标准合同范本
- 出版社教材出版合同范本
- 2025年食品级甘氨酸钠项目投资可行性研究分析报告
- 中国劳动合同范本
- 内墙磁粉合同范例
- 2025年度城市供水排水工程承包合同书范本
- 2025年度国际食品饮料代理销售合同
- 2025年度公路施工质量检测合同范本
- 2019-2025年中国劳动保护服行业市场调研分析及投资战略咨询报告
- 政府资金项目(荣誉)申报奖励办法
- JJF 1069-2012 法定计量检定机构考核规范(培训讲稿)
- 最新如何进行隔代教育专业知识讲座课件
- 当前警察职务犯罪的特征、原因及防范,司法制度论文
- 计算机文化基础单元设计-windows
- 创建动物保护家园-完整精讲版课件
- 广东省保安服务监管信息系统用户手册(操作手册)
- DNA 亲子鉴定手册 模板
- DB33T 1233-2021 基坑工程地下连续墙技术规程
- 天津 建设工程委托监理合同(示范文本)
- 部编一年级语文下册教材分析
评论
0/150
提交评论