返回列表 发帖

[V6功能解说] 财务数据抽取中的Office文件

问题汇总
本文解释了在财务数据抽取(FDE)功能中你要如何集成你的office文件。


管理模块
该解决方案适用于下列版本:Sage X3 V6


解决方法
要想执行这项整合,请参见以下步骤:

• 创建一个Excel文件,并在这个文件上创建一个宏。

宏的示例:
Sub myMacro(tit As String, header() As String, item() As String, val1() As Variant, val2() As Variant, val3() As Variant, val4() As Variant, val5() As Variant)
With ActiveWorbook.ActiveSheet
Range(""A1"").Select
ActiveCell.Value = tit
With Selection.Font
        .Name = ""Arial""
        .FontStyle = ""Bold""
        .Size = 12
End With
Range(""A2"").Value = ""Item""
Range(""B2"").Select
For i = 0 To (UBound(header) - 1)
  ActiveCell.Offset(0, i).Value = header(i)
Next
Dim Range1 As String
Dim myRange As Range
Set myRange = Range(""A4:F4"")
For i = 0 To (UBound(item) - 1)
  Range1 = ""A"" + CStr(i + 4)
  myRange.Copy Range(Range1)
  Range(Range1).Select
  ActiveCell.Offset(0, 0).Value = item(i)
  ActiveCell.Offset(0, 1).Value = val1(i)
  ActiveCell.Offset(0, 2).Value = val2(i)
  If val3(i) <> 0 Then
   ActiveCell.Offset(0, 3).Value = val3(i)
  End If
  If val4(i) <> 0 Then
   ActiveCell.Offset(0, 4).Value = val4(i)
  End If
  If val5(i) <> 0 Then
   ActiveCell.Offset(0, 5).Value = val5(i)
  End If
End With
End Sub

• 创建一个默认文件:参数设置→财务→会计格式→默认文件
——[对象代码]:TXW
——[文件类型]:Excel(请确保文件类型与office文件版块里GESTXS功能中的文件类型相同)
——加载你刚刚创建的excel文件,然后“保存”。

• 前往功能:财务→报表→平衡计分表→查询,在[office文件]页签中,你可以看到自动加载了你的office文件。
你可以选择添加一个按钮来刷新你的宏。然后,再执行你新按钮的操作。你的流程中需要功能“CALLIU”来调用你的office文件中的宏。下面是如何调用CALLIU:CAILLOU“你的宏的名称”,where“你的office文件的位置”with“你的宏的参数”。

• 创建一个按钮:开发→程序字典→屏幕→屏幕,并加载屏幕TXSM4
——在屏幕中添加一个新的模块,[模块类型]为“列表”。
——将一个字段添加至该模块:我将它命名为XTOEXCEL,[类型]:A;[长度]:3;[图形对象]:图象。
——向这个字段添加一个操作,[类型]:单击;[操作]:SPE。
——“保存”并“审核”

• 现在,我要在SPETXSM4程序中执行我的代码。这会调用文件中相应的宏来刷新Excel文件。

下面是一个代码的示例:
$ACTION
Return

Subprog CL_TOEXCEL(VALEUR)
Variable Char VALEUR()
Local Integer J
# Read office doc
Call LECBLOBMOD (""TXW"", """", """", ""EXCEL"" , [V]GSLTOFFTYP,[M:TXM4]DOCUMENT ) From SUBAON
# Display office doc
Affzo [M:TXM4]DOCUMENT

J = [M:TXM1]NBLIG
If J = 0 : Return : Endif

Local File TXSA [XXX]
Read [XXX]TXS1 = [M:TXM0]TXSNAM

# Call Excel macro
CALLIU ""myMacro"" From [M:TXM4]DOCUMENT  With [F:XXX]TXSDES,[F:XXX]NAMCOL(0..4),
  [M:TXM1]INTIT(0..J),[M:TXM1]AMTVAL1(0..J),[M:TXM1]AMTVAL2(0..J),


mkstat = 4

Close Local File [XXX]
End

返回列表