AssociateRecords (QTP, TestComplete, VBScript)
Parent page: Service Functions – Dictionary (QTP, TestComplete, VBScript)
Description
Converts a string of comma-separated sets of parameters. Example: “User1 {login=john_doe, password=john1}, User2 {login=jane_doe, password=jane1}”
Implementation
Public Function AssociateRecords(ByVal strRecordSet)
Dim objDictionary
Dim intScan, intCount, sLine, sRecordName, sRecordData
Set objDictionary = CreateObject("Scripting.Dictionary")
sLine = strRecordSet
intCount = 0
Do
intScan = InStr(1, sLine, "{")
If Not (intScan > 0) Then
Set AssociateRecords = objDictionary
Exit Function
End If
sRecordName = Trim(Replace(Left(sLine, intScan-1), ",", " "))
If sRecordName = "" Then
sRecordName = "Noname" & intCount
End If
sLine = Mid(sLine, intScan+1)
intScan = InStr(1, sLine, "}")
If Not (intScan > 0) Then
Set AssociateRecords = objDictionary
Exit Function
End If
sRecordData = Left(sLine, intScan-1)
If Not objDictionary.Exists(sRecordName) Then
objDictionary.Add sRecordName, AssociateParameters(sRecordData)
Else
Set objDictionary.Item(sRecordName) = AssociateParameters(sRecordData)
End If
intCount = intCount +1
sLine = Mid(sLine, intScan+1)
Loop While TRUE
Set AssociateRecords = objDictionary
End Function

