summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--wizards/source/sfdocuments/SF_Form.xba224
1 files changed, 217 insertions, 7 deletions
diff --git a/wizards/source/sfdocuments/SF_Form.xba b/wizards/source/sfdocuments/SF_Form.xba
index 56e60785e40c..9b259034e56d 100644
--- a/wizards/source/sfdocuments/SF_Form.xba
+++ b/wizards/source/sfdocuments/SF_Form.xba
@@ -710,14 +710,12 @@ Public Function Methods() As Variant
"Activate" _
, "CloseForm" _
, "Controls" _
- , "First" _
, "GetDatabase" _
- , "Last" _
- , "Move" _
- , "New" _
- , "Next" _
- , "Previous" _
- , "Refresh" _
+ , "MoveFirst" _
+ , "MoveLast" _
+ , "MoveNew" _
+ , "MoveNext" _
+ , "MovePrevious" _
, "Requery" _
, "SubForms" _
)
@@ -725,6 +723,183 @@ Public Function Methods() As Variant
End Function ' SFDocuments.SF_Form.Methods
REM -----------------------------------------------------------------------------
+Public Function MoveFirst() As Boolean
+''' The cursor is (re)positioned on the first row
+''' Args:
+''' Returns:
+''' True if cursor move is successful
+''' Example:
+''' myForm.MoveFirst()
+
+Dim bMoveFirst As Boolean ' Return value
+Const cstThisSub = "SFDocuments.Form.MoveFirst"
+Const cstSubArgs = ""
+
+ If ScriptForge.SF_Utils._ErrorHandling() Then On Local Error GoTo Catch
+ bMoveFirst = False
+
+Check:
+ If ScriptForge.SF_Utils._EnterFunction(cstThisSub, cstSubArgs) Then
+ If Not _IsStillAlive() Then GoTo Finally
+ End If
+Try:
+ With _Form
+ bMoveFirst = .first()
+ End With
+
+Finally:
+ MoveFirst = bMoveFirst
+ ScriptForge.SF_Utils._ExitFunction(cstThisSub)
+ Exit Function
+Catch:
+ GoTo Finally
+End Function ' SFDocuments.SF_Form.MoveFirst
+
+REM -----------------------------------------------------------------------------
+Public Function MoveLast() As Boolean
+''' The cursor is (re)positioned on the last row
+''' Args:
+''' Returns:
+''' True if cursor move is successful
+''' Example:
+''' myForm.MoveLast()
+
+Dim bMoveLast As Boolean ' Return value
+Const cstThisSub = "SFDocuments.Form.MoveLast"
+Const cstSubArgs = ""
+
+ If ScriptForge.SF_Utils._ErrorHandling() Then On Local Error GoTo Catch
+ bMoveLast = False
+
+Check:
+ If ScriptForge.SF_Utils._EnterFunction(cstThisSub, cstSubArgs) Then
+ If Not _IsStillAlive() Then GoTo Finally
+ End If
+Try:
+ With _Form
+ bMoveLast = .last()
+ End With
+
+Finally:
+ MoveLast = bMoveLast
+ ScriptForge.SF_Utils._ExitFunction(cstThisSub)
+ Exit Function
+Catch:
+ GoTo Finally
+End Function ' SFDocuments.SF_Form.MoveLast
+
+REM -----------------------------------------------------------------------------
+Public Function MoveNew() As Boolean
+''' The cursor is (re)positioned in the new record area
+''' Args:
+''' Returns:
+''' True if cursor move is successful
+''' Example:
+''' myForm.MoveNew()
+
+Dim bMoveNew As Boolean ' Return value
+Const cstThisSub = "SFDocuments.Form.MoveNew"
+Const cstSubArgs = ""
+
+ If ScriptForge.SF_Utils._ErrorHandling() Then On Local Error GoTo Catch
+ bMoveNew = False
+
+Check:
+ If ScriptForge.SF_Utils._EnterFunction(cstThisSub, cstSubArgs) Then
+ If Not _IsStillAlive() Then GoTo Finally
+ End If
+Try:
+ With _Form
+ .last() ' To simulate the behaviour in the UI
+ .moveToInsertRow()
+ End With
+ bMoveNew = True
+
+Finally:
+ MoveNew = bMoveNew
+ ScriptForge.SF_Utils._ExitFunction(cstThisSub)
+ Exit Function
+Catch:
+ GoTo Finally
+End Function ' SFDocuments.SF_Form.MoveNew
+
+REM -----------------------------------------------------------------------------
+Public Function MoveNext(Optional ByVal Offset As Variant) As Boolean
+''' The cursor is (re)positioned on the next row
+''' Args:
+''' Offset: The number of records to go forward (default = 1)
+''' Returns:
+''' True if cursor move is successful
+''' Example:
+''' myForm.MoveNext()
+
+Dim bMoveNext As Boolean ' Return value
+Dim lOffset As Long ' Alias of Offset
+Const cstThisSub = "SFDocuments.Form.MoveNext"
+Const cstSubArgs = ""
+
+ If ScriptForge.SF_Utils._ErrorHandling() Then On Local Error GoTo Catch
+ bMoveNext = False
+
+Check:
+ If IsMissing(Offset) Or IsEmpty(Offset) Then Offset = 1
+ If ScriptForge.SF_Utils._EnterFunction(cstThisSub, cstSubArgs) Then
+ If Not _IsStillAlive() Then GoTo Finally
+ If Not ScriptForge.SF_Utils._Validate(Offset, "Offset", ScriptForge.V_NUMERIC) Then GoTo Finally
+ End If
+Try:
+ lOffset = CLng(Offset) ' To be sure to have the right argument type
+ With _Form
+ If lOffset = 1 Then bMoveNext = .next() Else bMoveNext = .relative(lOffset)
+ End With
+
+Finally:
+ MoveNext = bMoveNext
+ ScriptForge.SF_Utils._ExitFunction(cstThisSub)
+ Exit Function
+Catch:
+ GoTo Finally
+End Function ' SFDocuments.SF_Form.MoveNext
+
+REM -----------------------------------------------------------------------------
+Public Function MovePrevious(Optional ByVal Offset As Variant) As Boolean
+''' The cursor is (re)positioned on the previous row
+''' Args:
+''' Offset: The number of records to go forward (default = 1)
+''' Returns:
+''' True if cursor move is successful
+''' Example:
+''' myForm.MovePrevious()
+
+Dim bMovePrevious As Boolean ' Return value
+Dim lOffset As Long ' Alias of Offset
+Const cstThisSub = "SFDocuments.Form.MovePrevious"
+Const cstSubArgs = ""
+
+ If ScriptForge.SF_Utils._ErrorHandling() Then On Local Error GoTo Catch
+ bMovePrevious = False
+
+Check:
+ If IsMissing(Offset) Or IsEmpty(Offset) Then Offset = 1
+ If ScriptForge.SF_Utils._EnterFunction(cstThisSub, cstSubArgs) Then
+ If Not _IsStillAlive() Then GoTo Finally
+ If Not ScriptForge.SF_Utils._Validate(Offset, "Offset", ScriptForge.V_NUMERIC) Then GoTo Finally
+ End If
+Try:
+ lOffset = CLng(Offset) ' To be sure to have the right argument type
+ With _Form
+ If lOffset = 1 Then bMovePrevious = .previous() Else bMovePrevious = .relative(-lOffset)
+ End With
+
+Finally:
+ MovePrevious = bMovePrevious
+ ScriptForge.SF_Utils._ExitFunction(cstThisSub)
+ Exit Function
+Catch:
+ GoTo Finally
+End Function ' SFDocuments.SF_Form.MovePrevious
+
+REM -----------------------------------------------------------------------------
Public Function Properties() As Variant
''' Return the list or properties of the Form class as an array
@@ -762,6 +937,41 @@ Public Function Properties() As Variant
End Function ' SFDocuments.SF_Form.Properties
REM -----------------------------------------------------------------------------
+Public Function Requery() As Boolean
+''' Reload from the database the actual data into the form
+''' The cursor is (re)positioned on the first row
+''' Args:
+''' Returns:
+''' True if requery is successful
+''' Example:
+''' myForm.Requery()
+
+Dim bRequery As Boolean ' Return value
+Const cstThisSub = "SFDocuments.Form.Requery"
+Const cstSubArgs = ""
+
+ If ScriptForge.SF_Utils._ErrorHandling() Then On Local Error GoTo Catch
+ bRequery = False
+
+Check:
+ If ScriptForge.SF_Utils._EnterFunction(cstThisSub, cstSubArgs) Then
+ If Not _IsStillAlive() Then GoTo Finally
+ End If
+Try:
+ With _Form
+ If .isLoaded() Then .reload() Else .load()
+ End With
+ bRequery = True
+
+Finally:
+ Requery = bRequery
+ ScriptForge.SF_Utils._ExitFunction(cstThisSub)
+ Exit Function
+Catch:
+ GoTo Finally
+End Function ' SFDocuments.SF_Form.Requery
+
+REM -----------------------------------------------------------------------------
Public Function SetProperty(Optional ByVal PropertyName As Variant _
, Optional ByRef Value As Variant _
) As Boolean