利用Power Builder7.0设计网络数据库的编程技巧
- 格式:pdf
- 大小:143.04 KB
- 文档页数:3
PowerBuilder数据库配置方法PowerBuilder数据库配置方法首先进入到PowerBuilder主页面后:1.在pb主菜单的Tool菜单中选择"DataBase Profile"进入到一个界面2.在Installed Database InterFaces中找到Oracle所在位置,确保其选中,选择按钮"New"创建一个数据库名[如:Orcl]3.在弹出的窗口中选择Tab页面为Connection:4.在Profile Name:中输入你要创建的数据库名,这里就假设为Orcl5.在Connect Information中:6.SerVer:这里输入你在Net8 Easy Configers中配置的数据库服务器名7.Login ID:输入你连接数据库的用户ID8.Password:输入你连接数据库的用户口令9.接着选择System Tab页面:在PowerBuilder Catalog Table Owener:system[这个是可以更改的]按下:"Apply"或者"OK"后即可.返回到Database Profiles界面:10.选择你刚才创建的数据库,进行连接"Connect"连接.*****当然,你可以直接选择你创建的数据库,然后选择Edit进入到一个界面"Database Proile Setup",选择Preview页面,将Database Connectiong Syntax:中的代码Copy到你的应用程序的Open事件中即可.// Profile OrclSQLCA.DBMS = "O84 Oracle8/8i (8.x.4+)"SQLCA.LogPass = "Password"SQLCA.ServerName = "Sername"SQLCA.LogId = "UserID"SQLCA.AutoCommit = FalseSQLCA.DBParm = "PBCatalogOwner='Orcl'"SetPointer(HourGlass!)connect using sqlca;file://数据库连接成功打开主窗口Open(w_main)If sqlca.sqlcode<>0 thenMessagebox("不能连接到数据库",Sqlca.sqlerrtext)haltreturnend if以上这几行代码就是具体的连接代码,只要你进行修改成你自己的数据库名和用户名用户口令即可.如果向动态的进行数据库连接,你可以创建一个INi文件,将连接数据库的代码写到INi 文件中,这样即可动态的进行数据库连接了.具体的INi文件代码内容为:[DataBase]DBMS=ODBCDatabase=UserID=DatabasePassword=ServerName=LogId=LogPassword=DbParm=ConnectString='DSN=dagang;UID=kantmis;PWD =kantmis'Prompt=0对于这样的问题,如果你想在窗口打开的时候看到窗口的数据,直接在窗体的Open事件中写如下代码即可:dw_1.Settransobject(sqlca)dw_1.Retrieve()如果要按照你的条件进行显示数据,你直接到DataWindow的SQL中,定义Where条件即可.另外,你也可以定义数据检索的RetrieveVal Arguments即可查询出符合条件的记录.。
powerbuilder教程
PowerBuilder是一种用于开发客户端/服务器和Web应用程序
的集成开发环境(IDE)。
它具有易于使用的可视化设计工具
和强大的开发功能,适用于数据库应用程序的快速开发和维护。
PowerBuilder的开发过程主要包含以下几个步骤:
1. 创建新的应用程序:在PowerBuilder中,可以选择新建应
用程序,然后配置数据库连接等信息。
2. 创建数据窗口:数据窗口是PowerBuilder中最重要的界面
元素之一,用于显示数据库中的数据。
可以通过拖放方式将数据库表或查询结果添加到数据窗口中,然后设计数据窗口的布局和样式。
3. 编写业务逻辑:可以使用PowerScript编程语言来编写数据
窗口和应用程序的逻辑。
PowerScript是一种类似于其他编程
语言的脚本语言,可以用于处理用户交互、数据库操作、错误处理等。
4. 调试和测试:在开发过程中,可以使用PowerBuilder提供
的调试工具来调试和测试应用程序。
可以设置断点、监视变量的值,并逐步执行代码以检查程序的运行情况。
5. 部署和发布:完成开发和测试后,可以将应用程序部署到目标环境中。
PowerBuilder支持将应用程序打包成可执行文件或
安装程序,以便用户在其计算机上安装和运行应用程序。
总之,通过PowerBuilder的可视化设计工具和强大的开发功能,开发人员可以快速构建数据库应用程序,并实现复杂的业务逻辑。
它是一种非常适合开发数据驱动应用程序的开发工具。
PowerBuilder 是一个可视化图形界面的数据库应用系统开发工具,它支持面向对象技术、客户/服务器机制、分布式组件开发和因特网应用。
1.集中式结构:计算机所有的系统资源都集中在主机上,所有处理也在主机完成。
(增加服务器负载)。
2.文件服务器网络结构:应用程序在客户工作客户站上运行,文件服务器只提供资源的集中管理和访问途径。
(增加网络负载)3.客户服务器网络结构:向服务器发送处理请求而不是文件请求;服务器返回返回的是处理结果而不是文件。
访问文件服务器的数据库访问客服/服务器的数据库4.分布式客户/服务器网络结构客户端应用程序(客户层)电脑、实施商业规则的组件(中间层)电脑、数据库服务器(服务器层)电脑(1)组件具有不同的应用程序可以重复使用的组件共享特性。
(2)组件具有配置和设计的灵活性,使计算机性能得以改善(3)组件开发使得复杂的应用变为易于管理的模块5.Web网络结构Web服务器(电脑)->中间件(电脑)->数据库服务器(电脑)中间件负责管理Web服务器和数据库服务器之间的通信,并提供应用程序服务,它能够直接访问数据库、调用外部程序。
或利用程序代码访问数据库。
因此可以提供与数据库相关的动态HTML页面或执行用户查询,并将结果格式化成HTML页面,然后通过Web服务器返回给用户浏览器。
信息系统开发主要分为:结构生命周期发、快速原型法和面向对象法。
通常软件系统根据需求分为两类。
一类需求是需要比较稳定的而且并能够预先指定的系统,称之为预先指定的系统。
如计算机控制系统,卫星图像处理系统、火箭发射控制、数据库管理系统。
开发这类系统需要预先进行严格需求分析,指定精确的规格说明,并在严格管理下进行传统的生命周期开发。
另一类是需求模糊,随时可变化的系统。
一般是商业和行政数据处理系统、决策支持系统。
快速原型法进行开发。
以免开发的系统过时,不符合客户需求。
面向对象建模得到的模型对象的三个要素(三个子模型),即静态结构(对象模型)、交互次序(动态模型)和数据变化(功能模型)。
Peterevans's Development Notes1.数据窗口中点击相同行同时选中:Long iString ls_testnoDateTime ldt_opstimeIF row <= 0 Or IsNull(row) THENThis.SelectRow(0,False)RETURNEND IFIF row = GetSelectedRow(0) THEN RETURNThis.SelectRow(0,False)ls_Test_No = This.GetItemString(row,"pat_master_index_inp_no")ldt_opstime = This.GetItemDateTime(row,"operation_schedule_scheduled_date_time")FOR i = This.RowCount() To 1 Step -1IF This.GetItemString(i, "pat_master_index_inp_no") = ls_Test_No And This.GetItemDateTime(i, "operation_schedule_scheduled_date_time") = ldt_opstime THENThis.SelectRow(i,True)END IFNEXT2.创建数据通道语句:datastore lds_opslds_ops = Create datastorelds_ops.DataObject = 'd_schedule_arrange'lds_ops.SetTransObject(sqlca)3.在已过滤后的数据基础上对datawindow进行过滤dw_1.setfilter(dw_1.describe("datawindow.table.filter")+your_join+your_new_filter)dw_1.filter()4.在datawindow中显示动态时间建立一个计算域,表达式为string(datetime(today(),now()),'yyyy年mm月dd日 hh点mm分ss秒'),同时设置datawindow的属性dw_1.Object.DataWindow.Timer_Interval=5005.在数据窗口中只显示不同的数据dw_1.filter("isnull(columnname[-1]) and columnname<>columnname[-1]")dw_1.filter()6.统计数据窗口中处于选中状态的行数方法一: long ll_Selected ll_Selected = long(dw_1.describe("evaluate('sum( if(IsSelected(), 1, 0) for all)',1)"))方法二: long ll_Selected ll_Selected = long(dw_1.describe("evaluate('count(IsSelected() for all)',1)"))方法三:upperbound(dw_1.Object.Data.Selected)7.在数据窗口中选定想要打印的几条记录long ll_posdataStore lds_dslds_ds = create dataStorelds_ds.dataObject = dw_1.dataObjectfor ll_pos = 1 to dw_1.rowCount()if dw_1.IsSelected(ll_pos) thendw_1.RowsCopy(ll_pos,ll_pos,Primary!,lds_ds,lds_ds.rowCount()+1,Primary!) end ifnextlds_ds.print()8.单击编辑框选中其中内容自定义事件ue_clicked,代码是:this.selecttext(1,len(this.text)),getfocus事件的代码改为:This.Post Event ue_clicked()。
第一章什么是PowerBuilder在开始学习PowerBuilder之前,首先要弄清楚的问题是什么是PowerBuilder,它是用来干什么的,它的特点又是什么。
只有知道了PowerBuilder的功能和特点所在,我们才能知道什么时候应该选用PowerBuilder作为我们的应用程序开发工具。
1.1 什么是PowerBuilder我们知道,数据库应用是当前计算机应用的一个非常重要的方面,而在目前的数据库应用技术中普遍采用的就是客户机/服务器体系结构,在这种体系结构中,所有的数据和数据库管理系统都在服务器上,客户机通过采用标准的SQL语句等方式来访问服务器上数据库中的数据。
由于这种体系结构把数据和对数据的管理都统一放在了服务器上。
就保证了数据的安全性和完整性,同时也可以充分利用服务器高性能的特点。
正因为客户机/服务器体系结构的这些优点,因而得到了非常广泛的应用。
PowerBuilder是著名的数据库应用开发工具生产厂商PowerSoft公司推出的产品(PowerSoft现已被数据库厂商Sybase所收购),它完全按照客户机/服务器体系结构研制设计,在客户机/服务器结构中,它使用在客户机中,作为数据库应用程序的开发工具而存在。
由于PowerBuilder采用了面向对象和可视化技术,提供可视化的应用开发环境,使得我们利用PowerBuilder,可以方便快捷地开发出利用后台服务器中的数据和数据库管理系统的数据库应用程序。
在当前,网络技术迅速发展,随之发展的还有OLE,OCX,跨平台等技术,而在PowerBuilder的最新版PowerBuilder 6.0中提供了对这些技术的全面支持。
总之在数据库开发工具领域,PowerBuilder是其中非常优秀的一个,利用它我们可以开发出功能强大的数据库应用程序。
1.2 PowerBuilder的特点PowerBuilder提供了对目前流行的大多数关系数据库管理系统的支持,由于在PowerBuilder的应用程序中对数据库访问的部分一般采用国际化标准数据库查询语言SQL,使得用PowerBuilder开发的应用程序可以不做修改或者只做少量的修改就可以在不同的后台数据库管理系统上使用。
PowerBuilder数据库开发技术实验指导书实验目录1.实验一、PowerBuilder集成环境2.实验二、PowerBuilder数据定义3.实验三、PowerBuilder数据操纵4.实验四、PowerBuilder窗口设计5.实验五、PowerBuilder菜单设计6.实验六、PowerBuilder数据窗口设计7.实验七、小型数据库应用系统开发实验一:PowerBuilder集成环境一.实验目的1.掌握PowerBuilder的启动与退出2.熟悉PowerBuilder集成环境,包括菜单,工具条以及帮助3.熟悉PowerBuilder的类库管理,并创建一个简单应用4.熟悉窗口与菜单设计画板,添加设计和使用窗口与菜单二.实验内容1. PowerBuilde的启动与退出2.熟悉PowerBuilde集成环境3.创建一个简单的应用。
三.实验条件1.提供一台WINDOWS XP操作系统的计算机2.提供PowerBuilder9.0设计环境四.实验步骤1.启动与退出在安装完后,可以通过WINDOWS开始菜单找出Sybase 程序组中的PowerBuilder9.0启动PowerBuilder.启动后即出现如图所示的主窗口,可以选择菜单File/Exit 退出并关闭PowerBuilder.2.熟悉PowerBuilder集成环境,包括菜单、工具以及帮助画板是PowerBuilder提供的专项设计工具,PowerBuilder为窗口菜单数据窗口用户对象函数结构数据库数据管道以及应用提供画板。
如WINDOWS画板是用来设计应用程序窗口界面。
画板也是有多个子窗口组成,如WINDOWS画板有Layout外观子窗口,Properties 属性子窗口,Script脚本子窗口,Declare申明变量子窗口,这些子窗口可以在菜单View 中选取打开。
3.创建一个简单应用选择File/New 出现一个新建对话框(1)创建一个工作区Workspace ,输入工作区的名称Myspace,在Systemtree中出现建好的工作区。
一种简单的powerbuilder10数据库编程介绍1、需求分析与数据库建立进行需求分析(需求分析文档),确定数据关系,建立各种数据表,建立数据库(Access),设置ODBC数据源(控制面板->管理工具->数据源ODBC->“用户DSN”菜单下点“添加” 选相应的数据源驱动程序,如果用Access2003建立的,则选第三项“Driver do Microsoft Access(*.mdb),然后点击“完成”->输入数据源名,如mydata,然后点击“选择”按钮选择建好的数据库,最后点“确定”,如下图所示)2、界面设计(功能界面、重要数据表维护界面)界面设计主要分为几个部分(1)按照管理系统所需的功能设计界面。
首先画出所有可能的业务流程(数据的各种可能输入、修改、删除业务,数据的输出、显示业务)(2)按照需要维护的表设计界面(往往给最高权限管理员直接修改数据用)3、开始程序编写(1) 新建一个workspace(new->workspace->workspace)(2) 在workspace下建立一个目标(new->Target->application),可取名frame(3) 在目标下建一个主窗口可取名w_main,窗体名一般以w_开头(new->PB Object->Window),将其Window Type 设为“mdihelp!”(4) 为主窗口建一个主菜单可取名m_frame,菜单名一般以m_开头(new->PB Object->Menu)(5) 程序中设置ODB ODBC点击按钮,选中“ODB ODBC”项,然后单击右边“New”按钮,弹出如下对话框,设置Profile Name和Data Source,如图所示。
(6) 建立配置文件配置文件取名“config.ini”,内容如下:[MyDB]DBMS=ODBCAutoCommit=FalseDBParm=ConnectString='DSN=mydata;UID=;PWD='(7) 自动连接数据库与退出程序关闭数据库的编写首先建立Global Variables如下:string gs_userid,gs_username //登录用户标识、用户姓名string gs_root_path,gs_ini_path //应用路径和主配置文件路径其次申明Global External Functions如下:FUNCTION int GetComputerNameA(ref string computername,ref long size) LIBRARY "KERNEL32.DLL" alias for "GetComputerNameA;Ansi"FUNCTION long GetCurrentDirectoryA( long nBufferLength, REF string szBuffer ) LIBRARY "KERNEL32.DLL" alias for "GetCurrentDirectoryA;Ansi"FUNCTION long SetCurrentDirectoryA( string szPathName ) LIBRARY "KERNEL32.DLL" alias for "SetCurrentDirectoryA;Ansi"//end prototypes在程序的总入口(进入“”)Open事件中写入以下代码:// Profile moneyandfriendsstring ls_1//设置应用根目录gs_root_path = space(255)GetCurrentDirectoryA( 255, gs_root_path )if right(gs_root_path,1) = '\' thengs_root_path = left(gs_root_path,len(gs_root_path) - 1)end if//设置配置文件路径gs_ini_path = gs_root_path + "\config.ini"IF not FileExists ( gs_ini_path ) THENMessageBox( "找不到配置文件"+gs_ini_path,"系统配置错误",stopsign!,ok! ) RETURNEND IF//SetProfileString(gs_ini_path,'DBMS','ls_1=ProfileString(gs_ini_path,'MyDB','DBMS','ODBC')SQLCA.DBMS =ls_1SQLCA.AutoCommit = Falsels_1=ProfileString(gs_ini_path,'MyDB','DBParm','error')SQLCA.DBParm = ls_1connect using sqlca;open(w_main) //打开主界面在Close事件中加入如下代码:disCONNECT USING sqlca;(8) 建立新的具体功能窗体(如w_zichuangti)8.1 设置窗体BackColor为“Cream”,输入窗体Title;要在1024*768分辨率下基本满屏,窗体大小可设置为“4645*2748”8.2在新窗体上一般用GroupBox来划分功能区域,设置该控件的字体为“宋体”,大小为“10”,背景颜色为“Cream”8.3用静态文本做功能说明或指示,一般加黑,宋体9号字示例程序界面如下:(9) 响应菜单click事件弹出子窗口(相同子窗口只弹出一次待研究)在菜单下编写代码打开窗体(双击菜单即可在Click事件下编写),简单代码如下://选择菜单时调出子窗体window lwopensheet(lw,'w_ zichuangti',parentwindow,0,Cascaded! )lw.WindowState = Maximized!(10) 相同的子窗口只让弹出一次(代研究)(10) 建立数据窗口(11) 添加新的pbl文件一般要用不同的pbl文件分类存储不同窗体、数据窗口和菜单等资源;建立新的pbl文件的方法如下:点击工具栏上“Library”按钮,然后在弹出子窗口中进入程序所在文件夹,在工具栏左下有“”创建pbl的按钮。
PowerBuilder 7.0实用技巧八则一、实现运行窗口居中众所周知,PowerBuilder 7.0在以前的版本中提供了图形化的预览工具,可以很方便的在设计阶段实现窗口居中。
但是,到了7.0似乎该项工具被取消了,也没有什么属性来设置,至少我没有找到。
每当我们需要将窗口居中的时候只有一点一点地调整它的X,Y值,这一点十分让人头痛。
出于无奈,只好通过编程实现。
我们只在每个需要居中的窗口的Open事件中写上这些代码就会实现窗口的自动居中。
要实现窗口的自动居中,我们可以用函数Move()来实现。
但是,由于我们开发出来的应用程序往往会在不同的设置环境中运行,虽然一般情况下是由我们为用户配置好的,但我们总不能保证用户显示器的设置模式不会改变。
所幸的是,PB为我们提供了环境对象Environment,该对象其实是一个系统结构,其中保存了PB应用程序的运行平台信息,例如,代码集,CPU类型等。
其中当然会有我们需要的屏幕宽和高。
为了得到该结构我们可以用函数GetEnvironment()。
该函数的作用是得到关于操作系统,处理器和屏幕的系统信息。
具体用法如下:Environment my_systemInteger li_ScreenWidth, li_ScreenHeightGetEnvironment(my_system)// 得到屏幕的总宽度和长度li_ScreenWidth = PixelsToUnits(my_system.ScreenWidth, XPixelsToUnits!)li_ScreenHeight = PixelsToUnits(my_system.ScreenHeight, XPixelsToUnits!)// 函数PixelsToUnits()的作用是将屏幕的像数转换成PowerBuilder使用的单位,因为像数通常不用于方形中,具体用法请参见函数手册。
然后就可以用Move()来实现窗口居中。
powerbulider 千分位格式摘要:1.什么是PowerBuilder2.PowerBuilder 的功能特点3.如何使用PowerBuilder 进行千分位格式设置4.千分位格式设置的重要性正文:PowerBuilder 是一款非常强大的数据处理软件,它可以帮助用户快速地对数据进行格式化、处理和分析。
在使用PowerBuilder 时,用户可以利用其内置的功能特点,轻松地完成各种复杂的数据处理任务。
其中,千分位格式设置是PowerBuilder 的一个重要功能,它可以帮助用户对数据进行精确的格式化处理。
首先,我们需要了解什么是千分位格式。
千分位格式是指在数字中插入三位小数点,以便更精确地表示数值。
例如,对于一个数值1234.567,使用千分位格式后,将显示为1234.56700。
这种格式在财务报表、科学数据等领域中非常常见,因为它可以确保数据的准确性。
在使用PowerBuilder 进行千分位格式设置时,用户可以按照以下步骤操作:1.打开PowerBuilder 软件,并导入需要处理的数据文件。
2.在数据表格中,选择需要设置千分位格式的列。
3.单击工具栏上的“格式”按钮,然后选择“数字”选项。
4.在弹出的“数字”对话框中,切换到“小数”选项卡。
5.勾选“千分位分隔符”复选框,并在“分隔符”文本框中输入想要插入的小数点。
6.单击“确定”按钮,完成千分位格式设置。
通过以上步骤,用户就可以在PowerBuilder 中轻松地完成千分位格式设置。
需要注意的是,在进行千分位格式设置时,一定要确保数据的准确性,以便避免因格式设置错误导致的数据丢失或损坏。
总之,PowerBuilder 的千分位格式设置功能为用户提供了方便快捷的数据处理方式。
在财务报表、科学数据等领域中,精确的千分位格式设置非常重要,它可以帮助用户更准确地表示数据,从而提高数据的可读性和可信度。
PowerBuilder 编程技巧实例随着数据库技术在各行各业的广泛应用,作为企业级数据库前端开发工具的Power Builder日益成为开发人员的得力助手。
PowerBuilder以其开放的体系结构,友好的用户界面和简洁高效的开发环境赢得了众多程序员的喜爱,连续多年被评为美国计算机界的年度风云产品,在数据库开发工具领域占据了高达44%的市场份额。
PowerBuilder进入我国的时间不长,许多编程人员希望了解并掌握这一先进工具。
在这里,笔者将自己平日用PowerBuilder作开发的一些体会整理出来,奉献给大家。
PowerBuilder是由多个功能模块组成的可视化集成开发环境,是面向对象的开发工具,用它可以方便地建立起基于Windows的分布式数据库应用。
其功能模块分别完成应用管理、窗口对象设计、菜单对象设计、数据窗对象设计和数据库查询等工作,这些功能模块由于PowerBuilder提供的色彩丰富的工具条而被称作"Painter"(画板)。
下文便依据各模块作大的分类介绍相应的编程技巧。
一、有关应用的编程技巧仅让应用程序运行一次的技巧:有时需要限制一个PowerBuilder应用同时运行的实例(Instance)个数或仅让应用运行一次,我们可以通过调用WindowsSDK函数或使用PowerBuilder的Handle()函数来实现。
先谈调用SDK函数的方法。
为了调用SDK函数,需要在ApplicationPainter的菜单项Declare\GlobalExternalFunctions中定义:FunctionuintGetModuleHandle(stringModuleName)Library"Kernel.exe" FunctionuintGetModuleUsage(uintModuleHandle)Library"Kernel.exe"下面这段程序写在Application的Open事件中。