**********************************************************/
/*函数名称:uf_dwsaveas_excel
功能:将数据窗口数据导出EXCEL文件,并将EXCEL文件默认英文标题替换成中文。
参数:datawindow datawin,为用户要导出数据窗口的数据窗口控件名
返回值:integer 1,success;-1,error
流程描述:先用saveasAscii()倒出为excel文件,再替换表头为中文名
原因:为提高程序的可读性作了少量的修改(如:增加注释、改变排版风格等)*/
/**********************************************************/
/***************以下程序将导出为EXCEL文档******************/
integer li_rtn,ii,li_asc
string ls_name,ls_pathname
boolean lb_exist
if datawin.RowCount()<1 then
MessageBox("提示信息","请先检索数据再导出至Excel!")
return -1//error
end if
li_rtn=GetFileSaveName("保存文件",ls_pathname,ls_name,"xls","Excel文件(*.xls),*.xls")
if li_rtn=1 then
lb_exist = FileExists(ls_pathname)
IF lb_exist THEN
li_rtn = MessageBox("保存", ls_pathname+"已经存在,是否覆盖?",Exclamation!, YesNo!)
end if
if li_rtn=1 then
//当文件存在用户选择覆盖,或是文件本就不存在时。注意变量li_rtn
li_rtn=datawin.SaveAsAscii(ls_pathname)
if li_rtn=1 then
//MessageBox("提示信息","导出数据成功!")
else
MessageBox("错误信息","导出数据失败!")
return -1//error
end if
else
return -1//error
end if
else
return -1
end if
/**********以下程序将导出的EXCEL英文标题替换为汉字*********/
long numcols , numrows , c, r
OLEObject xlapp , xlsub
int ret
numcols = long(datawin.Object.DataWindow.Column.Count)
numrows = datawin.RowCount()
// 产生oleobject的实例
xlApp = Create OLEObject
//连接ole对象
ret = xlApp.ConnectToNewObject( "Excel.Sheet" )
if ret < 0 then
MessageBox("连接失败!","连接到EXCEL失败,请确认您的系统是否已经安装EXCEL!~r~n"&
+"错误代码:"+string(ret))
return -1
end if
// 打开EXCEL文件
xlApp.Application.Workbooks.Open(ls_pathname)
使文件可见
//xlApp.Application.Visible = true
// 得到活动工作表的引用,改善程序性能
xlsub = xlapp.Application.ActiveWorkbook.Worksheets[1]
string ls_colname,ls_text,ls_modistr,ls_col
//取字段名更改为对应的文本text值
FOR c=1 to numcols
ls_col="#"+string(c)+".name"
ls_colname=datawin.describe(ls_col)
ls_modistr=ls_colname+"_t.text"
ls_text=datawin.describe(ls_modistr)
xlsub.cells[1,c]=ls_text
NEXT
xlApp.DisConnectObject()
Destroy xlapp
MessageBox("提示信息","导出数据成功!")
return 1//success
**********************************************************//*函数名称:uf_dwsaveas_excel功能:将数据窗口数据导出EXCEL文件,并将EXCEL文件默认英文标题替换成中文。参数:datawindow datawin,为用户要导出数据窗口的数据窗口控件名返回值:integer 1,success;-1,error流程描述:先用saveasAscii()倒出为excel文件,再替换表头为中文名原因:为...
/ids_Data.DataObject = dw_1.dataobject
//将dw_condation数据窗口对象与ids_Data连接
ids_Data.SetTransObject(sqlca)
dw_1.getfullstate(str)
ids_data.setfullstate(str)
gf_
saveasascii
2
excel
(ids_data)
pb
9
DataWindow
有一个内置的功能可以将数据
导出
为PDF格式。要
使用
此功能,可以按照以下步骤操作:
1. 首先,确保
DataWindow
已经创建并绑定到数据源。
2. 在代码中,
使用
以下语句
导出
DataWindow
为PDF格式:dw_1.SaveAs("
文件
路径\
文件
名.pdf", PDF!, true)
其中,dw_1是要
导出
的
DataWindow
实例,"
文件
路径\
文件
名.pdf"是
导出
文件
的保存路径和名称。PDF!是
导出
格式的标识符,表示要
导出
为PDF格式。true表示如果
文件
已经存在,则覆盖原
文件
。
3. 执行以上代码后,
DataWindow
将被
导出
为PDF
文件
并保存在指定路径。
需要注意的是,
pb
9
DataWindow
的PDF
导出
功能依赖于操作系统内部的PDF打印机驱动程序。因此,在执行
导出
操作之前,确保操作系统中已经安装了PDF打印机驱动程序。
此外,还可以通过调整
DataWindow
的布局和格式来优化
导出
的PDF
文件
。例如,可以设置打印纸张的大小、方向、页边距等。也可以调整字体、颜色、表格样式等,以使
导出
的PDF
文件
更加符合需求。
总之,
pb
9
DataWindow
后台
导出
PDF是一个方便且简单的功能,通过几行代码即可将数据
导出
为PDF
文件
,适用于各种数据报表和文档的生成需求。
### 回答2:
在PowerBuilder 9中,可以
使用
DataWindow
控件的后台
导出
功能将数据窗口以PDF格式
导出
。
首先,需要创建一个
DataWindow
对象,并在设计时设置其数据源以获取需要
导出
的数据。可以
使用
SQL语句或存储过程来定义数据源。
接下来,在代码中
使用
以下语句创建一个
DataWindow
Control对象,并将其与前面创建的
DataWindow
对象关联起来:
DataWindow
Control dwControl
dwControl = CREATE
DataWindow
Control
dwControl.DataObject = '
datawindow
_name'
然后,可以
使用
导出
功能将数据窗口以PDF格式
导出
到指定位置。以下是一个示例代码:
string ls_savepath
ls_savepath = "C:\Output\filename.pdf"
dwControl.SaveAs(ls_savepath, PDF!, false)
以上代码中,"C:\Output\filename.pdf"是保存
导出
文件
的路径和
文件
名。PDF!常量指示将数据窗口以PDF格式
导出
。最后一个参数是指
导出
过程是否需要等待完成,false表示不等待。
在运行时,执行以上代码将触发数据窗口
导出
为PDF
文件
到指定位置。请确保指定的路径是有效的,并且有足够的权限进行读写操作。
需要注意的是,
DataWindow
导出
为PDF的功能在PowerBuilder 9中是基于Ghostscript库实现的。因此,需要确保Ghostscript库已正确安装并配置在系统路径中,以便PowerBuilder能够调用它来进行PDF
导出
。
### 回答3:
在PowerBuilder 9中,我们可以通过
使用
DataWindow
后台
导出
功能将数据窗口
导出
为PDF
文件
。
要
使用
DataWindow
后台
导出
功能,我们需要按照以下步骤操作:
1. 首先,我们需要在
DataWindow
的属性中设置
导出
格式为PDF。可以通过设置
DataWindow
对象的保存格式属性为PDF来实现。
2. 接下来,我们需要创建一个DataStore对象,并将
DataWindow
对象分配给DataStore。
3. 然后,我们可以
使用
DataStore对象的SaveAs方法将
DataWindow
导出
为PDF
文件
。在SaveAs方法中,我们需要指定
导出
文件
的路径和
文件
名。
下面是一个示例代码,演示了如何
使用
DataWindow
后台
导出
功能
导出
为PDF
文件
:
// 创建一个DataStore对象
DataStore ds
ds = CREATE DataStore
// 将
DataWindow
对象分配给DataStore
dw_mydata.SetTransObject(ds)
// 设置
DataWindow
导出
格式为PDF
dw_mydata.SaveFormat = PDF!
// 设置
导出
文件
的路径和
文件
名
ds.DataObject = "d_mydata"
ds.SetTransObject(dw_mydata)
ds.SaveAs("C:\mydata.pdf")
// 释放DataStore和
DataWindow
对象
DESTROY ds
DESTROY dw_mydata
在上述代码中,"dw_mydata"是要
导出
为PDF的
DataWindow
对象,"d_mydata"是
DataWindow
对象的数据源。我们可以根据实际情况修改这些对象的名称和数据源。
执行上述代码后,
DataWindow
对象将被
导出
为名为"mydata.pdf"的PDF
文件
,保存在"C:\"路径下。
希望以上信息能够帮助您了解如何在PowerBuilder 9中
使用
DataWindow
后台
导出
功能
导出
为PDF
文件
。如果有其他问题,请随时提问!