128 lines
3.1 KiB
OpenEdge ABL
128 lines
3.1 KiB
OpenEdge ABL
VERSION 1.0 CLASS
|
|
BEGIN
|
|
MultiUse = -1 'True
|
|
END
|
|
Attribute VB_Name = "IteratorRule"
|
|
Attribute VB_GlobalNameSpace = False
|
|
Attribute VB_Creatable = False
|
|
Attribute VB_PredeclaredId = False
|
|
Attribute VB_Exposed = False
|
|
Option Explicit
|
|
|
|
Public row_ As Long
|
|
Private data_ As Excel.Worksheet
|
|
|
|
Public Sub Init(target As Excel.Worksheet, Optional tRow& = FIRST_DATA_ROW)
|
|
Set data_ = target
|
|
row_ = tRow
|
|
End Sub
|
|
|
|
Public Function Increment(Optional inc& = 1)
|
|
If row_ + inc > 0 Then _
|
|
row_ = row_ + inc
|
|
End Function
|
|
|
|
Public Function GoFirst()
|
|
row_ = FIRST_DATA_ROW
|
|
End Function
|
|
|
|
Public Function GoLast()
|
|
row_ = data_.Columns(S_R_ID).Find(vbNullString, LookAt:=xlWhole).Row - 1
|
|
End Function
|
|
|
|
Public Function GoToID(sID$) As Boolean
|
|
Dim rFound As Excel.Range: Set rFound = data_.Columns(S_R_ID).Find(sID, LookAt:=xlWhole)
|
|
If rFound Is Nothing Then
|
|
GoToID = False
|
|
Else
|
|
GoToID = True
|
|
row_ = rFound.Row
|
|
End If
|
|
End Function
|
|
|
|
Public Function IsDone() As Boolean
|
|
IsDone = data_.Cells(row_, S_R_ID) = vbNullString
|
|
End Function
|
|
|
|
Public Function RemoveRow()
|
|
Call data_.Rows(row_).Delete
|
|
End Function
|
|
|
|
'===== Propertiy Get =====
|
|
Public Property Get RuleID() As String
|
|
RuleID = data_.Cells(row_, S_R_ID)
|
|
End Property
|
|
|
|
Public Property Get RuleName() As String
|
|
RuleName = data_.Cells(row_, S_R_NAME)
|
|
End Property
|
|
|
|
Public Property Get Enabled() As Boolean
|
|
Enabled = data_.Cells(row_, S_R_ENABLED) = FLAG_VALUE_ON
|
|
End Property
|
|
|
|
Public Property Get ApplyFixes() As Boolean
|
|
ApplyFixes = data_.Cells(row_, S_R_APPLY) = FLAG_VALUE_ON
|
|
End Property
|
|
|
|
Public Property Get GroupName() As String
|
|
GroupName = data_.Cells(row_, S_R_GROUP)
|
|
End Property
|
|
|
|
Public Property Get Description() As String
|
|
Description = data_.Cells(row_, S_R_DESCRIPTION)
|
|
End Property
|
|
|
|
Public Property Get ErrorsCount() As Long
|
|
ErrorsCount = data_.Cells(row_, S_R_ERRORS)
|
|
End Property
|
|
|
|
Public Property Get FixesCount() As Long
|
|
FixesCount = data_.Cells(row_, S_R_FIXES)
|
|
End Property
|
|
|
|
Public Property Get TimeSpent() As Double
|
|
TimeSpent = data_.Cells(row_, S_R_TIME)
|
|
End Property
|
|
|
|
Public Property Get DescriptionLabel() As String
|
|
DescriptionLabel = Fmt("{1}: {2}", RuleID, RuleName)
|
|
End Property
|
|
|
|
' ==== Property Let ====
|
|
Public Property Let RuleID(newVal$)
|
|
data_.Cells(row_, S_R_ID) = newVal
|
|
End Property
|
|
|
|
Public Property Let RuleName(newVal$)
|
|
data_.Cells(row_, S_R_NAME) = newVal
|
|
End Property
|
|
|
|
Public Property Let Enabled(newVal As Boolean)
|
|
data_.Cells(row_, S_R_ENABLED) = IIf(newVal, FLAG_VALUE_ON, FLAG_VALUE_OFF)
|
|
End Property
|
|
|
|
Public Property Let ApplyFixes(newVal As Boolean)
|
|
data_.Cells(row_, S_R_APPLY) = IIf(newVal, FLAG_VALUE_ON, FLAG_VALUE_OFF)
|
|
End Property
|
|
|
|
Public Property Let GroupName(newVal$)
|
|
data_.Cells(row_, S_R_GROUP) = newVal
|
|
End Property
|
|
|
|
Public Property Let Description(newVal$)
|
|
data_.Cells(row_, S_R_DESCRIPTION) = newVal
|
|
End Property
|
|
|
|
Public Property Let ErrorsCount(newVal&)
|
|
data_.Cells(row_, S_R_ERRORS) = newVal
|
|
End Property
|
|
|
|
Public Property Let FixesCount(newVal&)
|
|
data_.Cells(row_, S_R_FIXES) = newVal
|
|
End Property
|
|
|
|
Public Property Let TimeSpent(newVal As Double)
|
|
data_.Cells(row_, S_R_TIME) = newVal
|
|
End Property
|