Имя: Пароль:
1C
1C 7.7
v7: Доступ в прямом запросе через 2 точки - пишет ошибка, хочет только через 1 точку
0 Vladal
 
08.09.15
10:40
Нужно из 1С 8 достучаться до скульной 7.7, работающей на прямых запросах.

Пишу такой запрос пока что в SQL-студии:

|select top 100
|    рн.ДатаВремя,
|    рн.Склад,
|    case when рн.Склад.ИдЭлемента = '    2U   ' then 'Склад шин' |else 'прочий склад' end,
|    *
|from
|    ДокументШ_РасходнаяНакладная рн (nolock)
|
|order by рн.ДатаВремя --desc

выдаёт ошибку:

|Сообщение 258, уровень 15, состояние 1, строка 4
|Cannot call methods on char.

В восьмёрке это без проблем делается, а как правильно сравнить элемент справочника по его ID, прибитому гвоздями?
1 Vladal
 
08.09.15
10:41
скулю не нравится, что я иду через 2 точки к идентификатору:

when рн.Склад.ИдЭлемента
2 ДенисЧ
 
08.09.15
10:43
рн.Склад - это ИД. Тип char(9).
Откуда у него могут быть через точку ещё пропертя?
3 Ёпрст
 
08.09.15
10:43
я бы тоже послал
4 dmpl
 
08.09.15
10:43
(1) Ему не нравится, что точка применяется к строковому значению.
5 ДенисЧ
 
08.09.15
10:45
(3) а я бы ещё и в морду дал...
6 Djslon
 
08.09.15
10:47
левое соединение напрашивается
7 Ёпрст
 
08.09.15
10:47
короче,
case when Склады.ИдЭлемента = '    2U   ' then 'Склад шин' |else 'прочий склад' end,
....
left join $Справочник.Склады as Склады on
Склады.id = рн.Склад
8 DCKiller
 
08.09.15
10:49
...и вообще, делать неявные соединения в запросе, даже непрямом - дурной вкус.
9 Vladal
 
08.09.15
10:50
(2) Ы!
Получилось!

case when рн.Склад = '    2U   ' then 'Склад шин' else 'прочий склад' end
10 Vladal
 
08.09.15
10:51
(8) Да я вообще электрик. че прицепились?
11 Ёпрст
 
08.09.15
11:00
(10) зачет , чего...
а ИдЭлемента - этот реквизит ты откуда взял ?
12 Vladal
 
08.09.15
11:05
(11) ПО аналогии. Думал, что так в таблице будет, но как сделал вьюху, увидел, что ссылки на другие справочники сразу их id-шниками представлены.
13 Vladal
 
08.09.15
11:07
(7) Ага, возьму на заметку. Но мне пока не нужно получать склдад из параметра, тут всё "прибито гвоздями" к кодам элементов.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший