|   |   | 
| 
 | СКД - Отобразить паспортные данные одной строкой | ☑ | ||
|---|---|---|---|---|
| 0
    
        Adolf88 27.09.19✎ 12:54 | 
        Доброго дня, коллеги!
 Есть УПП 1.3.110.3 и платформа 8.2.19.68 и один отчет на СКД. Задача - создать поле паспорт, в котором бы отображались данные паспорта в одной строке. Завожу новое вычисляемое поле, пишу в него следующее выражение: ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументСерия + ", " + ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументНомер + ", " + ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументКемВыдан + ", " + ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументДатаВыдачи. Добавляю это поле в список выводимых полей, получаю ошибку - Отчет не сформирован! Неверные параметры "+". Убираю ДатуВыдачи, получается вот такое выражение: ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументСерия + ", " + ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументНомер + ", " + ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументКемВыдан + ", " Все отрабатывает корректно. И если написать вот такое выражение: ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументДатаВыдачи, то ДатаВыдачи отображается. Что не так может быть с этой датой, что отдельно она отображается, а вкупе со всеми остальными паспортными данными - нет? | |||
| 1
    
        ДенисЧ 27.09.19✎ 12:55 | 
        Преобразования типов в выражениях не допустимы.     | |||
| 2
    
        Vakhrin 27.09.19✎ 12:58 | 
        А чем уже готовое "Представление" не нравится?     | |||
| 3
    
        Cyberhawk 27.09.19✎ 13:05 | 
        Через запятую СКД сама умеет ресурсы в одной строке отображать     | |||
| 4
    
        Cyberhawk 27.09.19✎ 13:06 | 
        Ну а тебе естьнулл добавить к каждому слагаемому     | |||
| 5
    
        Adolf88 27.09.19✎ 13:27 | 
        (4) 
 Добавил, опять такая же петрушка - Отчет не сформирован! Неверные параметры "+". | |||
| 6
    
        Cyberhawk 27.09.19✎ 13:28 | 
        Ну в исполняемом запросе компоновки посмотри какие значения в полях СКД-то на самом деле. Естнулл защищает только от нуллов, остальное к строке преобразовывай     | |||
| 7
    
        Cyberhawk 27.09.19✎ 13:29 | 
        Вчитался в ноль, у тебя из-за даты     | |||
| 8
    
        Cyberhawk 27.09.19✎ 13:31 | 
        Дату в строку преобразовываешь и дело в шляпе - можно хоть в слагаемом через Строка или Формат     | |||
| 9
    
        Cyberhawk 27.09.19✎ 13:32 | 
        Ну или вычисляемое поле     | |||
| 10
    
        pechkin 27.09.19✎ 13:32 | 
        в выражения Формат работает     | |||
| 11
    
        Adolf88 27.09.19✎ 13:39 | 
        (8) (10) Благодарочка вам, все работает. 
 Финальный вариант, вдруг кому-нибудь пригодится: ЕСТЬNULL(ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументСерия, ЛОЖЬ) + ", " + ЕСТЬNULL(ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументНомер, ЛОЖЬ) + ", " + ЕСТЬNULL(ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументКемВыдан, ЛОЖЬ) + ", " + ФОРМАТ(ДанныеОФизЛице.ПаспортныеДанные.ФизЛицоДокументДатаВыдачи, "ДФ = 'дд.ММ.гггг'") | |||
| 12
    
        Cyberhawk 27.09.19✎ 13:40 | 
        (11) Вместо ЛОЖЬ тогда уж что-то типа "серия отстутствует", "номер отсутствует" и т.д.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |