Имя: Пароль:
1C
1С v8
Не понимаю в чем косяк в запросе
,
0 Wersia
 
13.02.14
09:02
Ребят, здравствуйте. Есть запрос
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ОстаткиИОбороты.Счет КАК Счет,
    ОстаткиИОбороты.Счет.Порядок КАК КодСтрокаПросто,
    ЕстьNull(ОстаткиИОбороты.Счет.Порядок+ "" ,"!")КАК КодСтрокаЕстьNull,
        ВЫБОР
        КОГДА ОстаткиИОбороты.Счет.Порядок + "" = NULL
            ТОГДА "!!!!!"
        ИНАЧЕ ОстаткиИОбороты.Счет.Порядок + ""
    КОНЕЦ КАК КодСтрокаСВыбором,

    ПРЕДСТАВЛЕНИЕ(ОстаткиИОбороты.Счет) КАК СчетПредставление1,
    ОстаткиИОбороты.Счет.Код КАК код,
    ПРЕДСТАВЛЕНИЕ(ОстаткиИОбороты.Предприятие) КАК Предприятие
ИЗ
    РегистрБухгалтерии.Основной.ОстаткиИОбороты(
            &ДатаНач,
            &ДатаКон,
            ,
            ,
            Счет В ИЕРАРХИИ (&Счет),
            ,
            ВидМеталла В (&СписокВидовМеталла)
                И Предприятие В (&СписокПредприятий)) КАК ОстаткиИОбороты
ИТОГИ ПО
    ОБЩИЕ,
    Предприятие ИЕРАРХИЯ КАК Предприятие,
    Счет ИЕРАРХИЯ КАК Счет
АВТОУПОРЯДОЧИВАНИЕ

Когда ставлю ОстаткиИОбороты.Счет.Порядок  то выбирает это поле хорошо, но когда я его хочу преобразовать- сложить с другой строкой, например ОстаткиИОбороты.Счет.Порядок +"" то не для всех счетов это прокатывает.
[URL=http://www.radikal.ru][IMG]http://s55.radikal.ru/i149/1402/b6/428d01cfc2cc.jpg[/IMG][/URL]

В какую сторону рыть?Подскажите, пожалуйста
1 Wersia
 
13.02.14
09:03
2 1dvd
 
13.02.14
09:04
А ты уверен, что Счет.Порядок  - это строка?
3 Повелитель
 
13.02.14
09:05
(0) если складывать со значением null любое число, то получаешь на выходе null
Чтобы этого избежать используй функцию Естьnull(Значение,0)
4 Повелитель
 
13.02.14
09:05
(3) если складывать со значением null любое значение, то получаешь на выходе null
5 Wobland
 
13.02.14
09:05
любое сравнение с нуллом даёт ложь
6 Лефмихалыч
 
13.02.14
09:12
(0) запрос - хлам, выброси его. Расскажи лучше, что ты получить хочешь

(2) всегда строкой был
7 Wersia
 
13.02.14
09:54
(6) часть запроса выдрана из ОСВ, а баловство со Счет.порядок просто для наглядности того, что преобразования попробовал разные. Суть: бух захотела в поле счета видеть не только сам счет, но и его название. И получается, что если я просто вывожу или номер счета, или его код, или порядок, то выводит хорошо, НО если я поставлю сложение строк, или сделаю через выразить, то по счетам, являющимися родителями значение получившейся строки становится NUll. попробую через проверку на родителя, может получится хоть счет вывести без наименования.
8 Wersia
 
13.02.14
10:05
(4) Я это попробовал.
9 Wersia
 
13.02.14
10:07
(8)

Мне интересно, почему ОстаткиИОбороты.Счет.Порядок КАК КодСтрокаПросто дает результат , а ОстаткиИОбороты.Счет.Порядок+ "" дает Null
10 Wersia
 
13.02.14
11:40
в отчете поставил тупо ВыводимаяОбласть.Параметры.СчетПредставление = Выборка.Счет.Код + " " +Выборка.Счет.Наименование;
Но все равно не понятно что творится с выборкой из запроса.