2010-10-08 125 views
2

我是PowerBuilder的新手。我有一个使用PowerBuilder创建PDF文件的任务。我怎样才能做到这一点?在PowerBuilder中创建PDF文件

+0

我们可以帮助您更具体的要求。你需要报告的PDF文件,还是其他的东西? – 2010-10-13 16:16:10

回答

0

好问题 - 除了找到第三方工具,真的不是一种简单的方法。我已经尝试了前面提到的方法,但它确实有效,但并非没有问题,而且您仍然面临部署头痛,部署ghost脚本并且必须确保Post Script驱动程序位于客户端上。

我最终尝试了许多免费和付费的PDF转换器,其中最无缝工作的是一种安装为“打印机”的转换器,例如您在PC上安装Adobe,但需要动态验证存在通过RegistryGet打印机,如果它不存在请求用户安装或动态安装它通过代码和注册表项(不好玩)。

在经历了几次与部署问题有关的头痛之后,我最终选择了服务器解决方案,但它需要一台服务器,您可以运行一个进程(蒸馏器)来抓取后期脚本文件并将它们提取为PDF。我使用了一个带进度条的响应窗口,PB应用程序将后脚本文件打印到服务器位置,蒸馏器抓取并转换该文件。我的PB应用程序轮询服务器,直到找到PDF,或者用户首先取消其中的任何一个。使用好蒸馏器的过程很快(< 5秒),这对我们的用户来说是可以接受的。

当PDF存在时,我们会将它附加到电子邮件中并通过Oracle(mapi)发送。该解决方案限制了客户端在大多数企业环境中发布脚本驱动程序的要求,但您需要通过注册表进行检查。也许有更好的解决方案,因为我最后这样做了,大约在2008年。

fyi-我通常不会提出厂商建议,但在这种情况下,因为有一个在易用性和质量上脱颖而出,它被称为PDFCreator,它安装为Windows打印机。它现在看起来是开源的,但我记得我们不得不支付在企业环境中使用它。

祝你好运。

2

我们的组织过去使用Ghostscript,而是搬到了Amyuni。

1

你正在使用什么版本的PowerBuilder?最新版本内置PDF功能(使用Ghostscript)。

1

安装Ghostscript。 免费获得PDFCreator并安装它。 然后你可以将任何数据窗口或数据存储保存为PDF格式的发言:

dw_1.saveAs(path_where_to_save_with_name_of_file.pdf,PDF!真)

第三个参数是替代,如果该文件存在同名。我希望这个对你有用。 Regards, Alberto

1

我们只是使用Ghostscript。我早些时候写过Ghostscript setup instructions。我们还通过将应用程序打印到'Sybase DataWindow PS'打印机,然后运行Ghostscript制作PDF,将我们填写的Word文档打印到我们的应用程序中。

3

按照Alberto Megia的建议,下载PDF creator,但不要使用SAVE AS。 安装pdf创建器后,它将安装打印机,使用该打印机保存带有打印功能的数据窗口 。

呼叫打印功能后,您会看到一个“另存为”对话框。

如果使用“saveas”功能,pdf将不具有数据窗口显示的格式。