Рейтинг:
5
Maciej Los
Вы пробовали использовать Left
функция, а не Mid
?
=Left(Fields!Description.Value, InStr(Fields!Description.Value, "-")-1)
Подробнее на сайте: Примеры выражений (построитель отчетов) - службы SQL Server Reporting Services (SSRS) | Microsoft Docs[^]
[РЕДАКТИРОВАТЬ]
Ричард Диминг написал (в комментарии):
То IIF
функция вычисляет обе ветви во всех случаях, поэтому вы получаете ошибку.
Вам нужно будет использовать IIF
в несколько ином положении:
=Left(Fields!Description.Value, IIF(InStr(Fields!Description.Value, "-") > 0, InStr(Fields!Description.Value, "-") - 1, Len(Fields!Description.Value)))
[/РЕДАКТИРОВАТЬ]
mohammed mqi
это дает мне #ошибку
Maciej Los
К сожалению, мой плохой. Обновлено (удалено 1 из функции Instr).
mohammed mqi
спасибо, это работает нормально, но у меня есть проблема, если нет тире"-" в моем слове это дает мне ошибку, как я могу этого избежать?
кроме того я пробую это и а также показать мне ошибку для слова не содержит тире
=IIf(InStr(Поля!Описание.Значение, "-") > 0,слева(поля!Описание.Значение, InStr(Поля!Описание.Значение, "-")-1),Поля!Описание.Ценность)
Maciej Los
Кажется, вы должны проверить свои данные. Извините, но у меня нет к ним доступа.
Richard Deeming
То IIF
функция вычисляет обе ветви во всех случаях, поэтому вы получаете ошибку.
Вам нужно будет использовать IIF
в несколько ином положении:
=Left(Fields!Description.Value, IIF(InStr(Fields!Description.Value, "-") > 0, InStr(Fields!Description.Value, "-") - 1, Len(Fields!Description.Value)))
mohammed mqi
спасибо Ричард Диминг это прекрасно работает это здорово
также Спасибо Мацей Лос
Maciej Los
Звучит как ответ...
Richard Deeming
Это всего лишь небольшая поправка к вашей. :)
Maciej Los
Спасибо, но я действительно думаю, что ваш комментарий стоит опубликовать в качестве ответа....
Итак, я обновил свой ответ... и я использовал ваш комментарий как часть ответа.
Любым способом...
- Спасибо, Ричард.
mohammed mqi
спасибо за редактирование вашего ответа