2008-06-30

利用API函数修改PB自带toolbar的字体

关键字: pb api toolbar 字体
改变PB自带工具栏的字体﹐不要自定义控件做工具栏。 function long FN_ToolBarSetFont(long unknown,string fontname,long fontsize,long unknown1,string str) library "pbvm100.dll" 用这个方法可以改 声明 function long FindWindowExA( long hParent, long hChildAfter, String lpszClass, String lpszWindow ) Library "user32.d ...
  • 13:48
  • 浏览 (26)
  • 评论 (0)
  • 分类: PB
2008-06-05

[PB]读取下拉框的显示值

关键字: 下拉数据窗口 dddw displayvalue
DW(数据窗口)作为下拉方式存在,可以设置datavalue和displayvalue。 datavalue是column的实际数值,而我们看到的是displayvalue,当然可以设置两个都相同   如果要取得datavalue很简单,dw_control.getItemXXX(row, column_name) (XXX为column的类型,比如String, Number等等)   如果要取得显示值得时候就相对麻烦些(datavalue跟displayvalue不一样) 方法有两种,一种是getChild方法取得下拉句柄,并顺藤摸瓜取得。这个方法略显麻烦 ...
  • 10:56
  • 浏览 (46)
  • 评论 (0)
  • 分类: PB
2008-04-28

PB-数据窗口关闭事件ID

关键字: pb 数据窗口关闭事件id
数据窗口根窗口一样,有titlebar, control menu, minBox, maxbox 当点击关闭安钮的,pb似乎没有提供这样的事件ID,pbm_close/pbm_closequery都不是 尽管如此,我们还有功能强大的other事件,我们只需要在other事件写上 if message.number = 24 then     messagebox('Close', 'Close datawindow') end if return 0 当你关闭的时候就会看到一个提示框,证明你已经捕获到数据窗口的close事件了   ( ...
  • 18:35
  • 浏览 (72)
  • 评论 (0)
  • 分类: PB
这里说的DataWindow是指dataobject的那个,而不是DataWindow Control DataWindow可以有几个参数,但是PB并没有提供专门的函数去取得这些参数,DW Syntax也没有指出用那些关系可以去除这些参数信息。但是这些信息还是可以直接取得 dw_control.object.dataWindow.table.arguments 取出来的是一个字符串,参数之间通过~n连接,参数名和参数类型之间通过~t连接 比如有参数arg1/String和arg2/Number,我们用上述语句得到的结果就会是 "arg1~tString~narg2~tNum ...
  • 11:46
  • 浏览 (91)
  • 评论 (0)
  • 分类: PB
PB9.0(含)前的版本都由提供MSSQL server 的专用接口 但PB10之后,这个接口就被取消了,改而使用ole db或者odbc接口来连接database 举个例子 //MSSQL Server的连接配置 sqlca.dbms=MSS Microsoft SQL Server sqlca.database=yourdb sqlca.dbparm= sqlca.logid=sa SQLCA.LogPass = <password> sqlca.servername=SERVERNAME sqlca.autocommit=false // OLE DB的连接配置 SQLCA.D ...
  • 02:00
  • 浏览 (130)
  • 评论 (0)
  • 分类: PB
2008-03-29

PB事件/函数的触发机制和触发方式

关键字: pb事件/函数的触发机制和触发方式
B作为windows下的一个非常便捷的DB开发工具,有着和windows一样的消息触发机制 PB提供了相应event/function触发机制和触发方式,用户可以根据自己的实际需要选用不同方法。 1. 触发机制 trigger/post 使用trigger会即时触发event/function; 使用post的时候则有所不同,系统会将event/function放在消息队列中,等待排在前面的event/function完成后才会执行,因为这个消息队列实现先进先出。 默认情况下系统以trigger方式触发event/function 什么情况下该用trigger,什么情况下该用post? ...
  • 01:57
  • 浏览 (144)
  • 评论 (0)
  • 分类: PB
PB读取文件的时候,每次只能读取32K,所以当文件大于32K的时候就要分多次读取以下是一个读取大于32K的文件并放在一个blob对象里面long ll_filelen, ll_read = 0integer li_fileidblob lblb_tmp, lblb_totalstring ls_filepath, ls_contenttry    // 取得文件的长度    ll_filelen = FileLength ( ls_filepath )    // 打开文件并取得文件句柄 &nb ...
  • 12:14
  • 浏览 (93)
  • 评论 (0)
  • 分类: PB
案例:有一个业务需要同时更新两个或以上的表分析:同时更新两个表,简单一点的就是用其中一个表做DW更新,同时用SQL更新另外一个表;或者页trigger实现其他表的更新。但这样对于相类似的业务就无疑是大大增加工作量。而且维护不方便。但我们细细考虑一下,DW作为PB的利器自然有他独到的地方。更新属性就好像是为了这种多表更新而设计的。PB更新数据库的时候首先看更新的table,然后看需要更新的column。也就是说,只需要在更新的时候设置好更新属性,就可以方便的实现多表更新了。步骤可以简单理解为:更新的时候将表1作为可更新表,表1的column作为可更新column。更新完后再设置表2作为可更新表, ...
  • 23:26
  • 浏览 (66)
  • 评论 (0)
  • 分类: PB
2007-12-16

PB动态创建DW的两个例子

关键字: 动态创建DW, 外部数据源
PB提供了关于如何动态创建Datawindow的相关函数 transaction.SyntaxFromSQL ( sqlselect, presentation, err ) dwcontrol.Create ( string syntax {, string errorbuffer } ) 关于这两个方法如何使用,这里就不再陈述了,帮助里面已经很详细了(使用帮助是很好的习惯). 例子1:动态创建有SQL的DW 说明:这个比较常用的方法,首先利用SQL得到DW的语法,然后用语法来创建DW 这过程跟创建可视化的DW,然后保存在PBL,在将这个保存的名字赋值给DW作为dataobject是同 ...
  • 02:42
  • 浏览 (176)
  • 评论 (0)
  • 分类: PB
2007-06-27

PB脚本注册数据源(ASA的打包说明)

关键字: PB 数据源 ASA的打包说明
PB及ASA的打包说明 一.安装步骤 一般地说发布一个PB应用除应用程序部件本身外,还应该包含如下文件及相关操作: 1. PowerBuilder运行时动态链接库( Runtime Library )。 2. 数据库接口:一方面包括PB提供的数据库专用接口或ODBC接口程序,另一方面包括不同数据库厂商提供的ODBC数据库驱动程序。 3. ODBC数据源的配置。 二.PowerBuilder运行时动态链接库( Runtime Library )。 不同版本的PB所需要的运行时动态链接库文件不尽相同,但库名有相似的地方,这些DLL都必须包含在应用程序目录或系统目录当中: PB6.5 ...
  • 12:30
  • 浏览 (437)
  • 评论 (0)
  • 分类: PB
Ben.Sin
搜索本博客
存档
最新评论