📄 reportset.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 = "ReportSet"
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 mvarReportStyle As Byte '帐册大类:1=总分类帐、2=应收帐款、3=应付帐款
'4=现金银行、5=商品、6=委托、7=受托、8=分期付款、9=委托加工
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 mvarColumnOrderType() As Integer '栏目排序方式 0=不排序 1=升序列 2=降序
Private mvarColumnIsFix() As Boolean '是否固定栏目
Private mvarColumnIsMust() 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 mbytFormat() As Byte '栏目格式化类型 0=其他 1=数量 2=单价 3=原币 4=汇率 5=本币
Private mbytFomular() As Byte '字段标志 0=非计算 1=余额 2=累积数 3=发生额
Private mstrCurTable As String '币种表名
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 mvarFrom As String 'SQL 的 FROM 子句
Private mvarSelect As String 'SQL 的 SELECT 子句
Private mbytPrep As Byte '预置标志 0=向导 1=预置表 2=自定义表
Private mbytGroup As Byte
Private mintDirect As Integer
Private mlngParentID As Long '所属报表目录ID
Private mintParentLevel As Integer '所属报表目录层次
Private mlngPrintSetID As Long
Private mlngColType As Long '栏目类型 1=数量 2=原币 4=本币
Private mstrUnionWhere As String '表间连接条件
Private mblnOnlyData As Boolean
Private mlngPaperID As Long
'''''''''''''''''''''''''''''''''''''''''''''''''''
' 列表设置类属性
'
'''''''''''''''''''''''''''''''''''''''''''''''''''
'编码显示格式
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 Get ColType() As Long
ColType = mlngColType
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
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
'打印设置ID
Public Property Get PrintSetId()
PrintSetId = mlngPrintSetID
End Property
Public Property Get ParentId() As Long
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 Preserve mvarHeadFieldId(vData)
ReDim Preserve mvarHeadFieldName(vData)
ReDim Preserve mvarHeadTop(vData)
ReDim Preserve mvarHeadLeft(vData)
ReDim Preserve mvarHeadHeight(vData)
ReDim Preserve mvarHeadWidth(vData)
ReDim Preserve mvarHeadType(vData)
ReDim Preserve mvarHeadAlign(vData)
ReDim Preserve 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 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 ColumnFormat(ByVal ColumnIndex As Integer, ByVal vData As Byte)
mbytFormat(ColumnIndex) = vData
End Property
Public Property Get ColumnFormat(ByVal ColumnIndex As Integer) As Byte
ColumnFormat = mbytFormat(ColumnIndex)
End Property
'字段标志
Public Property Let ColumnFomular(ByVal ColumnIndex As Integer, ByVal vData As Byte)
mbytFomular(ColumnIndex) = vData
End Property
Public Property Get ColumnFomular(ByVal ColumnIndex As Integer) As Byte
ColumnFomular = mbytFomular(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
'是否必选栏目
Public Property Let ColumnIsMust(ByVal ColumnIndex As Integer, ByVal vData As Boolean)
mvarColumnIsMust(ColumnIndex) = vData
End Property
Public Property Get ColumnIsMust(ByVal ColumnIndex As Integer) As Boolean
ColumnIsMust = mvarColumnIsMust(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)
On Error Resume Next
mvarColumnWidth(ColumnIndex) = vData
End Property
Public Property Get ColumnWidth(ByVal ColumnIndex As Integer) As Long
ColumnWidth = mvarColumnWidth(ColumnIndex)
End Property
Public Property Get Direct() As Integer
Direct = mintDirect
End Property
Public Property Let Direct(ByVal vData As Integer)
mintDirect = vData
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
'表头栏目宽度
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -