Имя: Пароль:
1C
1С v8
запрос из 77 к 82
,
0 арах
 
14.03.12
13:29
вобщем делаю так

База8 = CreateObject("V82.Application");
Попытка
  База8_2 =  База8.Connect("Srvr=Serv1C:1541; Ref=Torg; Usr=А; Pwd=9;");
Исключение
   Сообщить("Не удалось подключить внешнюю базу");
КонецПопытки;  

Запрос = База8_2.NewObject("Запрос");
Запрос.Текст = "Выбрать Ссылка Из Справочник.Пользователи";

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
   Сообщить(Строка(Выборка.Ссылка));
КонецЦикла;

но 77 ругается на
Пока Выборка.Следующий() Цикл
как обойти?
1 Галахад
 
гуру
14.03.12
13:31
Выбрать Ссылка.Код Из Справочник.Пользователи
2 zak555
 
14.03.12
13:31
выгрузить ?
3 vmv
 
14.03.12
13:32
раз запрос сом, то
и сомвыбора

делай выводы
4 ale-sarin
 
14.03.12
13:33
Выборка.Следующий() = 1. Должно прокатить, т.к. Истина = 1.
5 vmv
 
14.03.12
13:33
а ну да че-та помню из 7.7, что читать напрямую можно только примитивный типы, а атор по комзапросу хочеть работать со ссылками, забавно
6 ale-sarin
 
14.03.12
13:34
(5) У него еще до ссылки не дошло, раньше ругается. Потому как 77 не знает что такое булево.
7 ShoGUN
 
14.03.12
13:36
(0) Интересно, что хотели увидеть в
Сообщить(Строка(Выборка.Ссылка));
Прям вот очень интересно. А ругается потому что в 7.7 нет Boolean, в (4) решение.
8 vmv
 
14.03.12
13:36
(6) а ну да, там же всегда сравнивали с 1/0, ацтой)
9 арах
 
14.03.12
15:11
(4) гыы почти так.. через отладчик выяснилось что булево в  77  ложь = 0 а вот истина нихрена не 1 а -1 ))))
тобишь пишем
Выборка.Следующий() = -1
10 ale-sarin
 
14.03.12
15:12
(9) Ого. Ну может и так.
11 zak555
 
14.03.12
15:12
(9) пиши тогда по-другому

Выборка.Следующий() <> 0