插件中给大文本类型字段赋值

可以在插件中添加一个窗体frmForBigText,在窗体上添加RICHTX32.OCX控件rtbBigText,运用这个控件将要赋值的大文本以RTF格式保存成临时文件。
然后在单据数据包中将大文本对应的路径("BigTextTempFileName")修改成刚刚生成的临时文件路径,并给界面上的大文本字段赋值(m_BillInterface.SetText)
Dim frm As frmForBigText
Dim sFieldText As String
Dim sKey As String
Dim dct As KFO.Dictionary
Dim dctFld As KFO.Dictionary
Set frm = New frmForBigText
frm.rtbBigText.Text = "大文本内容"
frm.rtbBigText.TextRTF = VBA.Replace(frm.rtbBigText.TextRTF, "|", "")
frm.rtbBigText.SaveFile "C:/kingdeeBigText/temp/BigText.tmp", rtfRTF
sFieldText = VBA.Left$(Replace(frm.rtbBigText.Text, vbCrLf, ""), 100) & "..."
Set frm = Nothing
Set dctFld = m_BillInterface.GetDataFldbyKey("FBigText")
dctFld("BigTextTempFileName") = "C:/kingdeeBigText/temp/BigText.tmp"
dctFld("FFLD") = sFieldText
dctFld("FOLD") = sFieldText
dctFld("FMODIFY") = 1
Set dct = m_BillInterface.GetFieldInfoByKey("FBigText", "", 0)
m_BillInterface.SetText dct, dctFld("FFLD"), -1
If m_dctDataForBigText Is Nothing Then '记录生成的临时文件路径,以便在类终结的时候删除这些临时文件
Set m_dctDataForBigText = New KFO.Dictionary
End If
m_dctDataForBigText("BigTextFileName" & m_dctDataForBigText.Count + 1) = "C:/kingdeeBigText/temp/BigText.tmp"
Private Sub DelBigTextTempFile()
For i = 1 To m_dctDataForBigText.Count
Kill m_dctDataForBigText("BigTextFileName" & i)
Next
Set m_dctDataForBigText = Nothing
end sub
从数据库选出大文本的值在插件中进行赋值
Dim smFile As Object
Dim lOffset As Long
插件中给大文本类型字段赋值
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



