【发布时间】:2010-07-14 13:18:17
【问题描述】:
我有一个用 Powerbuilder 11.5 编写的应用程序,它可以自动填写 Word 文档的表单域(MS Word 2003)。
Word 文档受到保护,因此只能更改表单域。
在下面的代码中,您可以看到我使用 char(10) + char(13) 插入换行符,但是在保存的文档中,我看到的只是字符应该在的 2 个小方块。
我也尝试过使用"~r~n",这也只打印了 2 个正方形。
当我手动填写表格时,我可以根据需要插入换行符。
还有什么我可以尝试的吗?或者有人知道使用 Powerbuilder 填写单词表格的不同方法吗?
//1 Shipper
ls_value = ids_form_info.object.shipper_name[1]
if not isnull(ids_form_info.object.shipper_address2[1]) then
ls_value += char(10) + char(13) + ids_form_info.object.shipper_address2[1]
end if
if not isnull(ids_form_info.object.shipper_address4[1]) then
ls_value += char(10) + char(13) + ids_form_info.object.shipper_address4[1]
end if
if not isnull(ids_form_info.object.shipper_country[1]) then
ls_value += char(10) + char(13) + ids_form_info.object.shipper_country[1]
end if
if lnv_word.f_inserttextatbookmark( 'shipper', ls_value ) = -1 then return -1
f_inserttextat书签如下:
public function integer f_inserttextatbookmark (string as_bookmark, string as_text, string as_fontname, integer ai_fontsize);
if isnull(as_text) then return 0
iole_word = create OLEOBJECT
iole_word.connectToNewobject( "word.application" )
iole_word.Documents.open( <string to word doc> )
iole_word.ActiveDocument.FormFields.Item(as_bookmark).Result = as_text
return 1
end function
【问题讨论】:
标签: ms-word ole powerbuilder