powerbuilder10用法

1.migrate失敗: Error C0037: Unclosed quoted string:

pb6.5 升級時要注意 ~ 符號 , 在pb10.5 中已經不需要了 , 可用 Edit Slource 檢查是否有 ~在中文字前面,或是有少 \符號

2.Referenced object w_time is out of date, must be converted.

物件的呼叫及物件的繼承有先後順序 , 先呼叫的或是父物件要先用 regenerate 先升級,成功後再 regenerate 其它的物件 , 最後再用一次 migrate 全部檢查

PowerBuilder 9.0 Datawindow 导出 pdf 文件

把 Datawindow 导出到PDF文件,早就想做了。为此我曾经试过几个版本的PowerBuilder(PowerBuilder 9.0,PowerBuilder 10.0),但都没有试成功。我一直以为是PB的 Bug,今天在网上搜了很多资料,终于搞定。原来要安装gs705w32.exe 和 Acrobat 的虚拟打印机。PB这样导出PDF文件,也太不专业了吧。

1. 下载安装gs705w32.exe

http://www.processlist.com/info/gs705w32.html 2. 安装 gs705w32.exe ,默认安装路经为c:/gs。 3. 安装虚拟打印机

1) 直接在 控制面板 > 打印机和传真 > 添加打印机,端口任意,默认的LPT1就可以; 2) 打印机驱动是PowerBuilder9.0自带的,就在PowerBuilder9.0的安装文件夹下,

选择从 磁盘安装 > X:\\Program Files\\Sybase\\Shared\\PowerBuilder\\drivers, 选择 ADIST5.INF,读取到五个驱动: Acrobat Distiller, Acrobat Distiller CS, Acrobat Distiller CT, Acrobat Distiller J, Acrobat Distiller K 选择第一个Acrobat Distiller 4. 在代码中利用SaveAs()输出 pdf 文件:

int li_rc

string ls_title = \输出 pdf 文件\ string ls_PathName, ls_FileName

// 选 择输出文件

li_rc = GetFileSaveName(ls_title, ls_PathName, ls_FileName, \

if(li_rc = 1) then

// 使用 Distill 方法输出 pdf 文件

dw_1.Object.DataWindow.Export.PDF.Method = Distill!

// 选择打印机

dw_1.Object.DataWindow.Printer = \

dw_1.Object.DataWindow.Export.PDF.Distill.CustomPostScript=\

// 输出 pdf 文件

if(dw_1.SaveAs(ls_PathName, PDF!, true) = 1) then messagebox(ls_title,\保 存成功!\ else

Messagebox(ls_title,\保 存失败!\ end if end if

以上程序在PowerBuilder 9.01 Build 7096下调试通过。

另外,你也可以在X:\\Program Files\\Sybase\\Shared\\PowerBuilder\\drivers下编辑.BAT文件,写入:

rundll32.exe printui.dll,PrintUIEntry /if /f .\\\\ADIST5.INF /r \ Distiller\

运行它来实现添加虚拟打印机。

1,建立工程对象 New - Project -- Application 如下图

联系客服:779662525#qq.com(#替换为@)