Имя: Пароль:
1C
1C 7.7
v7: Прямой запрос к реквизиту неопределенного типа
0 МастерВопросов
 
15.11.11
10:38
Цитирую DDS-ник
#==TABLE no 271    : Документ СписаниеТМЦ
F=SP3860                |(P)Субконто1        |C   |23    |0        
F=TSP3860               |                    |C   |3     |0  

Вот текст запроса:


       |SELECT СписаниеТМЦ.IDDOC [Ссылка $Документ.СписаниеТМЦ]
       |    , СписаниеТМЦ.SP3860 [Субконто1 $Субконто]
       |   , СписаниеТМЦ.TSP3860 Субконто1_вид
       |    , ВнеоборотныеАктивы.ID [ВнеоборотныеАктивыСсылка $Справочник.ВнеоборотныеАктивы]
       |FROM $Документ.СписаниеТМЦ AS СписаниеТМЦ
       |    INNER JOIN _1SJOURN AS Журнал ON СписаниеТМЦ.IDDOC = Журнал.IDDOC
       |    LEFT OUTER  JOIN $Справочник.ВнеоборотныеАктивы AS ВнеоборотныеАктивы on SubString($СписаниеТМЦ.Субконто1,5,9)=ВнеоборотныеАктивы.ID



Возвращает пустое поле "ВнеоборотныеАктивы.ID". Поле СписаниеТМЦ.Субконто1 заполнено и имеет вид "Справочник.ВнеоборотныеАктивы".



З.Ы.: Так тоже пробовал:
LEFT OUTER  JOIN $Справочник.ВнеоборотныеАктивы AS ВнеоборотныеАктивы on LEFT(RIGHT($СписаниеТМЦ.Субконто1,9),13)=ВнеоборотныеАктивы.ID
1 Rie
 
15.11.11
10:46
(0) Не то вырезаешь.
Попробуй SUBSTRING($СписаниеТМЦ.Субконто1,7,9)
2 МастерВопросов
 
15.11.11
10:47
вот так заработало:
Right(LEFT($СписаниеТМЦ.Субконто1,15),9)

(1) спасибо
3 МастерВопросов
 
15.11.11
10:58
записка:
SUBSTRING($СписаниеТМЦ.Субконто1,7,9)
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший