|   |   | 
| 
 | Тип, ссылка для параметра в запросе... | ☑ | ||
|---|---|---|---|---|
| 0
    
        mikecool 01.09.23✎ 14:14 | 
        Запрос
 Выбрать Выбор когда &Параметр Ссылка Справочник.Спр1 Тогда Выразить(&Параметр Как Справочник.Спр1).Код Когда &Параметр Ссылка Справочник.Спр2 Тогда Выразить(&Параметр Как Справочник.Спр2).Наименование Иначе "" Конец если у меня &Параметр есть ссылка на Справочник.Спр1, то получаю ошибку Несовместимые типы ВЫРАЗИТЬ Выразить(&Параметр Как Справочник.Спр2) Это почему так? Как попадает в эту ветку вообще? зы: проверил на типах - то же самое | |||
| 1
    
        Волшебник 01.09.23✎ 14:15 | 
        Выразить - для реквизитов составного типа     | |||
| 2
    
        mikecool 01.09.23✎ 14:16 | 
        (1) от параметра реквизит взять - все равно через Выразить ходить надо, другого пути я не знаю     | |||
| 3
    
        mikecool 01.09.23✎ 14:17 | 
        +2 и на первое ветвление не ругается, там, где ссылка совпадает     | |||
| 4
    
        Волшебник 01.09.23✎ 14:19 | 
        (2) Анализируй тип в программном коде. Передай нужное поле в качестве параметра     | |||
| 5
    
        mikecool 01.09.23✎ 14:21 | 
        (4) для этого нужно совершить еще запрос, чтобы получить нужное поле
 да тут дело бы не в том, могу и так сделать вопрос в другом - как запрос попадает в ветку, в которую попадать не должен? | |||
| 6
    
        mikecool 01.09.23✎ 14:23 | 
        +5 видимо "компиляция" проходит независимо от ветвления...     | |||
| 7
    
        mikecool 01.09.23✎ 14:25 | 
        есть ли выход?
 в задаче - сформировать наименование элемента по 3м реквизитам составного типа, значения реквизитов передаю как параметры, и пытался выкрутиться одним запросом | |||
| 8
    
        dmt 01.09.23✎ 14:36 | 
        (7) см (4), если ты передаешь значение как параметр, то что мешает сразу получить тип? вычисление типа не приведет к запросу     | |||
| 9
    
        mikecool 01.09.23✎ 14:39 | 
        (8) хорошо, есть у меня типы значений, как это мне упростит задачу?
 формировать текст запроса динамически или нарисовать дерево если с которых брать нужный текст запроса? | |||
| 10
    
        Галахад 01.09.23✎ 14:49 | 
        Хм.
 ВЫБРАТЬ ВЫБОР КОГДА ТИПЗНАЧЕНИЯ(&Параметр) = ТИП(Справочник.Валюты) ТОГДА 1 КОГДА ТИПЗНАЧЕНИЯ(&Параметр) = ТИП(Справочник.Номенклатура) ТОГДА 2 ИНАЧЕ "" КОНЕЦ КАК Поле1 | |||
| 11
    
        ptiz 01.09.23✎ 15:45 | 
        (7) можно положить параметр во временную таблицу в колонку составного типа     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |