Merge pull request #986 from JoshGer/patch-1

Updating migration script for data-driven subscription PASSWORD field
This commit is contained in:
Umachandar Jayachandran
2022-03-02 22:14:38 -08:00
committed by GitHub
@@ -656,12 +656,34 @@ Sub MigrateReportSubscriptions(snkReport As CatalogItem, srcReport As CatalogIte
RsSrc.GetDataDrivenSubscriptionProperties(srcSub.SubscriptionID, extensionSettings, dataRetrievalPlan, description, active, status, eventType, matchData, parameters)
If extensionSettings.Extension = "Report Server FileShare" Then
Dim newParameterValues() As [ParameterValueOrFieldReference] = New [ParameterValueOrFieldReference](extensionSettings.ParameterValues.Length) {}
Array.Copy(extensionSettings.ParameterValues, newParameterValues, extensionSettings.ParameterValues.Length)
Dim pwdParameterValue As ParameterValue = New ParameterValue
pwdParameterValue.Label = "PASSWORD"
pwdParameterValue.Name = "PASSWORD"
pwdParameterValue.Value = "PASSWORD"
newParameterValues(extensionSettings.ParameterValues.Length) = pwdParameterValue
Dim passwordParamFound As Boolean = False
Array.Copy(extensionSettings.ParameterValues, newParameterValues, extensionSettings.ParameterValues.Length)
For Each pvofr As ParameterValueOrFieldReference In extensionSettings.ParameterValues
If TypeOf pvofr Is ParameterValue Then
Dim pv As ParameterValue = pvofr
If pv.Name.Contains("PASSWORD") Then
'Subscription has Password field linked to dataset field
passwordParamFound = True
Exit For
End If
Else If TypeOf pvofr Is ParameterFieldReference Then
Dim pfr As ParameterFieldReference = pvofr
If pfr.ParameterName.Contains("PASSWORD") Then
'Subscription has Password field linked to dataset field
passwordParamFound = True
Exit For
End If
End If
Next
If not passwordParamFound Then
'Subscription has Password field set to "Leave blank" or "Enter value"
Dim pwdParameterValue As ParameterValue = New ParameterValue
pwdParameterValue.Label = "PASSWORD"
pwdParameterValue.Name = "PASSWORD"
pwdParameterValue.Value = "PASSWORD"
newParameterValues(extensionSettings.ParameterValues.Length) = pwdParameterValue
End If
extensionSettings.ParameterValues = newParameterValues
End If
@@ -688,7 +710,8 @@ Sub MigrateReportSubscriptions(snkReport As CatalogItem, srcReport As CatalogIte
RsSrc.GetSubscriptionProperties(srcSub.SubscriptionID, extensionSettings, description, active, status, eventType, matchData, parameters)
If extensionSettings.Extension = "Report Server FileShare" Then
Dim newParameterValues() As [ParameterValueOrFieldReference] = New [ParameterValueOrFieldReference](extensionSettings.ParameterValues.Length) {}
Array.Copy(extensionSettings.ParameterValues, newParameterValues, extensionSettings.ParameterValues.Length)
Array.Copy(extensionSettings.ParameterValues, newParameterValues, extensionSettings.ParameterValues.Length)
'Standard subscriptions will always require adding PASSWORD parameter during migration
Dim pwdParameterValue As ParameterValue = New ParameterValue
pwdParameterValue.Label = "PASSWORD"
pwdParameterValue.Name = "PASSWORD"