SSRS - Отдельная часть строки и возврат - PullRequest
0 голосов
/ 05 октября 2018

Я отчаянно пытался отделить определенную часть строки с помощью выражения (Mid / InStr).

Строка: Передано из «Доу, Джон» в «», Передано из группы «Клиент»'to' Сервис '

Мне нужно значение группы: Сервис

Кто-нибудь может помочь?Возможно ли это?

1 Ответ

0 голосов
/ 05 октября 2018

Я смог сделать это с помощью функции.


Пример:

screenshot


Текстовое выражение:

=Code.GetTransferedGroup(Fields!YourColumnNameHere.Value)


Код:

Public Function GetTransferedGroup(columnValue As String) As String
'--------------------------------------------------------------------------------------------------------------------
' Purpose:      Seperate part of a string
' Example:      =Code.GetTransferedGroup("Transfered from 'Doe, John' to '', Transfered from Group 'Customer' to 'Service'")
' Reference:    /11869314/ssrs-otdelnaya-chast-stroki-i-vozvrat
'--------------------------------------------------------------------------------------------------------------------
Const transferedHeader   As String = "Transfered from Group"
Const transferedTerm     As String = " to "
Dim transferedPart       As Integer
Dim transferedValues     As String

    Try
        transferedPart = InStr(1, columnValue, transferedHeader, vbBinaryCompare)
        transferedValues = Mid(columnValue, transferedPart + Len(transferedHeader) + 1, Len(columnValue) - (transferedPart + Len(transferedHeader)))
        return Replace(Mid(transferedValues, InStr(1, transferedValues, transferedTerm) + Len(transferedTerm), Len(transferedValues) - InStr(1, transferedValues, transferedTerm)), "'", "")

    Catch 
        return "Error"

    End Try

End Function

Код свойств отчета:

screenshot

...