|
(ADODB.Recordset): Текущий объект Recordset не поддерживает закладки | ☑ | ||
---|---|---|---|---|
0
Shved_72
29.02.16
✎
13:45
|
Таблицу сам создал, с скуле отрабатывает.
из 1с тотже заспрос не хочет: Произошла исключительная ситуация (ADODB.Recordset): Текущий объект Recordset не поддерживает закладки. Это связано с ограничением поставщика или с выбранным типом курсора. сам запрос прост как валенок (как и таблица, единственное что у нее пишется онлайн из другого места, я читаю из 1с). "/****** Сценарий для команды SelectTopNRows среды SSMS ******/ SELECT [Name] ,[Tool] FROM [Test].[dbo].[Sex]" |
|||
1
lubitelxml
29.02.16
✎
13:47
|
(0) название таблицы зачет )
|
|||
2
Necessitudo
29.02.16
✎
15:34
|
Так не хочешь показать как сам объект Recordset создаешь?
|
|||
3
vde69
29.02.16
✎
15:38
|
вроде как [dbo] должен быть первым ?
|
|||
4
vde69
29.02.16
✎
15:39
|
SELECT [Name]
,[Tool] FROM [dbo].[Test].[Sex] или вообще так SELECT [Name] ,[Tool] FROM [dbo].[Sex]" |
|||
5
Shved_72
29.02.16
✎
15:42
|
трокаСоединения = "DRIVER={ODBC Driver 11 for SQL Server};SERVER=(local);UID=sa;PWD=порно;DATABASE=секас";
Connection = Новый COMОбъект("ADODB.Connection"); Connection.ConnectionString=СтрокаСоединения; Connection.Open(); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = Connection; RecordSet = Новый COMОбъект("ADODB.RecordSet"); ТекстЗапроса = ""; Command.CommandText = ТекстЗапроса; RecordSet = Command.Execute(); Пока RecordSet.EOF Цикл RecordSet.MoveNext(); КонецЦикла; |
|||
6
Necessitudo
29.02.16
✎
15:46
|
(3) Нет, dbo должно идти вторым или вообще его быть не должно.
|
|||
7
Necessitudo
29.02.16
✎
15:47
|
(5) Что за каша???
|
|||
8
Necessitudo
29.02.16
✎
15:48
|
RecordSet = Command.Execute();
Ты издеваешься? |
|||
9
Necessitudo
29.02.16
✎
15:49
|
Connection = Новый COMОбъект("ADODB.Connection");
Connection.ConnectionString = СокрЛП(Справочники.tsНастройкиИмпортаЭкспорта.СтрокаСоединенияOracle.Значение); Connection.Open(); RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet.ActiveConnection = Connection; RecordSet.CursorType = 3; RecordSet.LockType = 2; ТекстЗапроса = "Select COUNT(ARTICUL), STORE From ECONTROL.V_REMAINS_1C |where STORE IN " + СписокСкладовСтрокой + " AND QUANTITY > 0 |group by STORE"; Попытка RecordSet.Open(ТекстЗапроса, Connection); Исключение Сообщить(ОписаниеОшибки()); Connection.Close(); Возврат; КонецПопытки; КоличествоКолонок = RecordSet.Fields.Count; Пока RecordSet.Eof()=0 Цикл НоваяСтрока = ОстаткиОракла.Добавить(); Для НомерКолонки=0 По КоличествоКолонок - 1 Цикл НоваяСтрока[ОстаткиОракла.Колонки[НомерКолонки].Имя] = RecordSet.Fields(НомерКолонки).Value; КонецЦикла; RecordSet.MoveNext(); КонецЦикла; RecordSet.Close(); Connection.Close(); |
|||
10
Shved_72
29.02.16
✎
16:01
|
этот кусок уже давно юзаю и работал. даже с (8).
забил твой: http://i.imgur.com/YpB7XQI.jpg ошибка та же. рядом в другом очтете этот же код работает, но там один вызывает 1 раз, а тут по кругу обработкой ожидания |
|||
11
Shved_72
29.02.16
✎
16:08
|
дак в исключение не заходит, т.е. подключение корректно, а при попутке перебрать записи - ложь
|
|||
12
Shved_72
29.02.16
✎
16:13
|
нашел
|
|||
13
Shved_72
29.02.16
✎
16:15
|
цикл надо так
Пока НЕ RecordSet.EOF Цикл всем спасибо. простите что отнял ваше время |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |