Clone/Copy/Release Dictionary Parameters (QTP, TestComplete, VBScript)
Parent page: Service Functions – Dictionary (QTP, TestComplete, VBScript)
Description
1. Clone Dictionary object with all parameters
2. Copy parameters from one Dictionary to another
3. Release objects associated to Dictionary keys
Implementation
CloneParameters
Public Function CloneParameters(ByRef objSource)
Dim objDest, Iter, dvKeys
Set objDest = CreateObject("Scripting.Dictionary")
If TypeName (objSource) <> "Dictionary" Then
Set CloneParameters = objDest
Exit Function
End If
dvKeys = objSource.Keys()
For Iter = 0 To UBound(dvKeys)
objDest.Item(dvKeys(Iter)) = objSource.Item(dvKeys(Iter))
Next
Set CloneParameters = objDest
End Function
CopyParameters
Public Function CopyParameters(ByRef objSource, ByRef objDest) Dim Iter, dvKeys If TypeName (objDest) <> "Dictionary" Then Set objDest = CloneParameters(objSource) Set CopyParameters = objDest Exit Function End If If TypeName (objSource) <> "Dictionary" Then Set CopyParameters = objDest Exit Function End If dvKeys = objSource.Keys() For Iter = 0 To UBound(dvKeys) objDest.Item(dvKeys(Iter)) = objSource.Item(dvKeys(Iter)) Next Set CopyParameters = objDest End Function
ReleaseParameters
'Note. Use to release Object type parameters Public Function ReleaseParameters(ByRef objSource) Dim Iter, dvKeys If TypeName (objSource) <> "Dictionary" Then Exit Function End If dvKeys = objSource.Keys() For Iter = 0 To UBound(dvKeys) Set objSource.Item(dvKeys(Iter)) = Nothing Next End Function

