SQLSelect: type LeftJoin/RightJoin params as String
- Component:
src/ClassModules/SQLSelect.cls (around 120–143)
Problem
- Untyped parameters (
Variant ByRef) cause mismatches when passed into AddJoin.
Snippet (actual)
Public Sub LeftJoin(sTable, sAlias, Optional sCondition As String = "")
AddJoin "LEFT OUTER", sTable, sAlias, sCondition
End Sub
Public Sub RightJoin(sTable, sAlias, Optional sCondition As String = "")
AddJoin "RIGHT OUTER", sTable, sAlias, sCondition
End Sub
Expected
Public Sub LeftJoin(sTable As String, sAlias As String, Optional sCondition As String = "")
AddJoin "LEFT OUTER", sTable, sAlias, sCondition
End Sub
Public Sub RightJoin(sTable As String, sAlias As String, Optional sCondition As String = "")
AddJoin "RIGHT OUTER", sTable, sAlias, sCondition
End Sub
Steps to Reproduce
- Call
LeftJoin/RightJoin with string literals under strict compilation.
Actual
- Compile-time "ByRef argument type mismatch" in some contexts.
Proposed Fix
- Type parameters as
String.
SQLSelect: type LeftJoin/RightJoin params as String
src/ClassModules/SQLSelect.cls(around 120–143)Problem
VariantByRef) cause mismatches when passed intoAddJoin.Snippet (actual)
Expected
Steps to Reproduce
LeftJoin/RightJoinwith string literals under strict compilation.Actual
Proposed Fix
String.