📄 multireportset.cls
字号:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "MultiReportSet"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
' 多栏帐设置类
' 作者:魏然
' 日期:1998.05.18
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Option Explicit
Private mvarReportID As Long '帐表ID
Private mvarReportName As String '帐表名称
Private mvarReportType As AcntBookType '帐册类型:1=日记帐、2=明细帐 3=总帐
Private mvarViewID As Long '视图ID
Private mvarViewName As String '视图名称
Private mvarColumns As Integer '栏目数
Private mvarFixColumns As Integer '固定栏目数
Private mvarColumnTop() As Long '栏目Top
Private mvarColumnLeft() As Long '栏目Left
Private mvarColumnHeight() As Long '栏目高度
Private mvarColumnWidth() As Long '栏目宽度
Private mvarHeadFieldId() As Long
Private mvarHeadFieldName() As String
Private mvarHeadFields As Integer
Private mvarGridTop As Long
Private mvarHeadTop() As Long '表头栏目Top
Private mvarHeadLeft() As Long '表头栏目Left
Private mvarHeadHeight() As Long '表头栏目高度
Private mvarHeadWidth() As Long '表头栏目宽度
Private mvarHeadType() As Long '表头栏目宽度
Private mvarHeadAlign() As Integer '表头栏目对齐方式
Private mbytCodeShowType() As Byte '编码显示格式
Private mvarColumnOrderType() As Integer '栏目排序方式 0=不排序 1=升序列 2=降序
Private mvarColumnIsFix() As Boolean '是否固定栏目
Private mvarColumnIsFind() As Boolean '是否查找栏目
Private mvarColumnFieldID() As Variant '栏目字段ID
Private mvarColumnFieldName() As String '栏目字段
Private mvarColumnDesc() As String '栏目说明
Private mvarColumnFieldType() As String '栏目字段类型
Private mvarColumnFieldSize() As Integer '栏目字段长度
Private mvarColumnCombine() As String '栏目合并名称
Private mvarExpandStyle As Byte '多栏帐展开方式 1=余额借方展开 2=余额贷方展开 3=借方展开 4=借方余额后展开 5=贷方展开 6=贷方余额后展开
Private mvarContent As String '分析内容 (科目、单位、部门等)
Private mvarSubDesc() As String '子栏目说明
Private mvarSubCond() As String '子栏目条件(ID)
Private mvarSubCode() As String '子栏目条件(Code)
Private mvarSubData() As Byte '子栏目数据类型
Private mvarSubDirect() As Integer '子栏目借贷方向
Private mvarSubColumns As Integer '子栏目数
Private mvarSubAmountWidth() As Long '子栏目金额显示宽度
Private mvarSubQuantityWidth() As Long '子栏目数量显示宽度
Private mvarSubCurrencyWidth() As Long '子栏目外币显示宽度
Private mintDirect As Integer
Private mvarFrom As String 'SQL 的 FROM 子句
Private mvarSelect As String 'SQL 的 SELECT 子句
Private mvarWhere As String 'SQL 的 WHERE 子句
Private mbytPrep As Byte '预置标志 0=向导 1=预置表 2=自定义表
Private mbytGroup As Byte
Private mlngParentID As Long '所属报表目录ID
Private mintParentLevel As Integer '所属报表目录层次
Private mlngPrintSetID As Long '打印设置ID
Private mlngPaperID As Long
Private mstrUnionWhere As String '表间连接条件
'''''''''''''''''''''''''''''''''''''''''''''''''''
' 列表设置类属性
'
'''''''''''''''''''''''''''''''''''''''''''''''''''
'编码显示格式
Public Property Get CodeShowType(ByVal ColumnIndex As Integer) As Long
CodeShowType = mbytCodeShowType(ColumnIndex)
End Property
Public Property Let CodeShowType(ByVal ColumnIndex As Integer, ByVal vData As Long)
mbytCodeShowType(ColumnIndex) = vData
End Property
'表头栏目对齐方式
Public Property Let HeadAlign(ByVal ColumnIndex As Integer, ByVal vData As Integer)
mvarHeadAlign(ColumnIndex) = vData
End Property
Public Property Get HeadAlign(ByVal ColumnIndex As Integer) As Integer
HeadAlign = mvarHeadAlign(ColumnIndex)
End Property
'打印设置ID
Public Property Get PrintSetId()
PrintSetId = mlngPrintSetID
End Property
Public Property Get Direct() As Integer
Direct = mintDirect
End Property
Public Property Let Direct(ByVal vData As Integer)
mintDirect = vData
End Property
Public Property Get ParentId()
ParentId = mlngParentID
End Property
Public Property Get Prep() As Byte
Prep = mbytPrep
End Property
Public Property Get Group() As Byte
Group = mbytGroup
End Property
'数据区高度
Public Property Let GridTop(ByVal vData As Long)
mvarGridTop = vData
End Property
Public Property Get GridTop() As Long
GridTop = mvarGridTop
End Property
'表头字段ID数目
Public Property Let HeadFields(ByVal vData As Long)
mvarHeadFields = vData
ReDim mvarHeadFieldId(vData)
ReDim mvarHeadFieldName(vData)
ReDim mvarHeadTop(vData)
ReDim mvarHeadLeft(vData)
ReDim mvarHeadHeight(vData)
ReDim mvarHeadWidth(vData)
ReDim mvarHeadType(vData)
ReDim mvarHeadAlign(vData)
ReDim mbytCodeShowType(vData)
End Property
Public Property Get HeadFields() As Long
HeadFields = mvarHeadFields
End Property
'表头字段ID
Public Property Let HeadFieldId(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarHeadFieldId(ColumnIndex) = vData
End Property
Public Property Get HeadFieldId(ByVal ColumnIndex As Integer) As Long
HeadFieldId = mvarHeadFieldId(ColumnIndex)
End Property
'表头字段名称
Public Property Let HeadFieldName(ByVal ColumnIndex As Integer, ByVal vData As String)
mvarHeadFieldName(ColumnIndex) = vData
End Property
Public Property Get HeadFieldName(ByVal ColumnIndex As Integer) As String
HeadFieldName = mvarHeadFieldName(ColumnIndex)
End Property
Public Property Get OnlyData() As Boolean
OnlyData = IIf(mlngPaperID = 0, False, True)
End Property
Public Property Get PaperID() As Long
PaperID = mlngPaperID
End Property
Public Property Let PaperID(ByVal New_ID As Long)
mlngPaperID = New_ID
End Property
Public Property Get Content() As String
Content = mvarContent
End Property
Public Property Let Content(ByVal vData As String)
mvarContent = vData
End Property
'栏目字段长度
Public Property Let ColumnFieldSize(ByVal ColumnIndex As Integer, ByVal vData As Integer)
mvarColumnFieldSize(ColumnIndex) = vData
End Property
Public Property Get ColumnFieldSize(ByVal ColumnIndex As Integer) As Integer
ColumnFieldSize = mvarColumnFieldSize(ColumnIndex)
End Property
'栏目字段类型
Public Property Let ColumnFieldType(ByVal ColumnIndex As Integer, ByVal vData As String)
mvarColumnFieldType(ColumnIndex) = vData
End Property
Public Property Get ColumnFieldType(ByVal ColumnIndex As Integer) As String
ColumnFieldType = mvarColumnFieldType(ColumnIndex)
End Property
'栏目说明
Public Property Let ColumnDesc(ByVal ColumnIndex As Integer, ByVal vData As String)
mvarColumnDesc(ColumnIndex) = vData
End Property
Public Property Get ColumnDesc(ByVal ColumnIndex As Integer) As String
ColumnDesc = mvarColumnDesc(ColumnIndex)
End Property
'栏目字段
Public Property Let ColumnFieldName(ByVal ColumnIndex As Integer, ByVal vData As String)
mvarColumnFieldName(ColumnIndex) = vData
End Property
Public Property Get ColumnFieldName(ByVal ColumnIndex As Integer) As String
ColumnFieldName = mvarColumnFieldName(ColumnIndex)
End Property
'栏目字段ID
Public Property Let ColumnFieldID(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarColumnFieldID(ColumnIndex) = vData
End Property
Public Property Get ColumnFieldID(ByVal ColumnIndex As Integer) As Long
ColumnFieldID = mvarColumnFieldID(ColumnIndex)
End Property
'是否查找栏目
Public Property Let ColumnIsFind(ByVal ColumnIndex As Integer, ByVal vData As Boolean)
mvarColumnIsFind(ColumnIndex) = vData
End Property
Public Property Get ColumnIsFind(ByVal ColumnIndex As Integer) As Boolean
ColumnIsFind = mvarColumnIsFind(ColumnIndex)
End Property
'是否固定栏目
Public Property Let ColumnIsFix(ByVal ColumnIndex As Integer, ByVal vData As Boolean)
mvarColumnIsFix(ColumnIndex) = vData
End Property
Public Property Get ColumnIsFix(ByVal ColumnIndex As Integer) As Boolean
ColumnIsFix = mvarColumnIsFix(ColumnIndex)
End Property
'栏目排序方式 0=不排序 1=升序列 2=降序
Public Property Let ColumnOrderType(ByVal ColumnIndex As Integer, ByVal vData As Integer)
mvarColumnOrderType(ColumnIndex) = vData
End Property
Public Property Get ColumnOrderType(ByVal ColumnIndex As Integer) As Integer
ColumnOrderType = mvarColumnOrderType(ColumnIndex)
End Property
'栏目Top
Public Property Let ColumnTop(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarColumnTop(ColumnIndex) = vData
End Property
Public Property Get ColumnTop(ByVal ColumnIndex As Integer) As Long
ColumnTop = mvarColumnTop(ColumnIndex)
End Property
'栏目Left
Public Property Let ColumnLeft(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarColumnLeft(ColumnIndex) = vData
End Property
Public Property Get ColumnLeft(ByVal ColumnIndex As Integer) As Long
ColumnLeft = mvarColumnLeft(ColumnIndex)
End Property
'栏目高度
Public Property Let ColumnHeight(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarColumnHeight(ColumnIndex) = vData
End Property
Public Property Get ColumnHeight(ByVal ColumnIndex As Integer) As Long
ColumnHeight = mvarColumnHeight(ColumnIndex)
End Property
'栏目宽度
Public Property Let ColumnWidth(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarColumnWidth(ColumnIndex) = vData
End Property
Public Property Get ColumnWidth(ByVal ColumnIndex As Integer) As Long
ColumnWidth = mvarColumnWidth(ColumnIndex)
End Property
'表头栏目Top
Public Property Let HeadTop(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarHeadTop(ColumnIndex) = vData
End Property
Public Property Get HeadTop(ByVal ColumnIndex As Integer) As Long
HeadTop = mvarHeadTop(ColumnIndex)
End Property
'表头栏目Left
Public Property Let HeadLeft(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarHeadLeft(ColumnIndex) = vData
End Property
Public Property Get HeadLeft(ByVal ColumnIndex As Integer) As Long
HeadLeft = mvarHeadLeft(ColumnIndex)
End Property
'表头栏目高度
Public Property Let HeadHeight(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarHeadHeight(ColumnIndex) = vData
End Property
Public Property Get HeadHeight(ByVal ColumnIndex As Integer) As Long
HeadHeight = mvarHeadHeight(ColumnIndex)
End Property
'表头栏目宽度
Public Property Let HeadWidth(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarHeadWidth(ColumnIndex) = vData
End Property
Public Property Get HeadWidth(ByVal ColumnIndex As Integer) As Long
HeadWidth = mvarHeadWidth(ColumnIndex)
End Property
'表头栏目类型
Public Property Let HeadType(ByVal ColumnIndex As Integer, ByVal vData As Long)
mvarHeadType(ColumnIndex) = vData
End Property
Public Property Get HeadType(ByVal ColumnIndex As Integer) As Long
HeadType = mvarHeadType(ColumnIndex)
End Property
'栏目宽度
Public Property Let ColumnCombine(ByVal ColumnIndex As Integer, ByVal vData As String)
mvarColumnCombine(ColumnIndex) = vData
End Property
Public Property Get ColumnCombine(ByVal ColumnIndex As Integer) As String
ColumnCombine = mvarColumnCombine(ColumnIndex)
End Property
'栏目数
Public Property Let Columns(ByVal vData As Integer)
mvarColumns = vData
ReDim mvarColumnWidth(mvarColumns)
ReDim mvarColumnOrderType(mvarColumns)
ReDim mvarColumnIsFix(mvarColumns)
ReDim mvarColumnIsFind(mvarColumns)
ReDim mvarColumnFieldID(mvarColumns)
ReDim mvarColumnFieldName(mvarColumns)
ReDim mvarColumnDesc(mvarColumns)
ReDim mvarColumnFieldType(mvarColumns)
ReDim mvarColumnFieldSize(mvarColumns)
ReDim mvarColumnCombine(mvarColumns)
End Property
Public Property Get Columns() As Integer
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -