Дайте объяснение по Workspaces?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
АндрейБ
Бывалый
Бывалый
 
Сообщения: 276
Зарегистрирован: 18.12.2004 (Сб) 17:00
Откуда: Санкт-Петербург

Дайте объяснение по Workspaces?

Сообщение АндрейБ » 20.08.2012 (Пн) 17:11

Я не профессионал, поэтому сразу прошу нисхождения!
У меня есть процедура которая выполняет обновление в нескольких таблицах последовательно и достаточно много записей.
Что бы обновление прошло успешно во всех талблицах - а это обязательное условие, иначе если обновление в одной таблице произведено, а других нет - это приведет к нарушению целостности
и осмысленности данных, поэтому я использую транзакцию:
Workspaces(0).CommitTrans
[рабочий код]
Workspaces(0).BeginTrans
Но сталкнулся с тем что если в рабочем коде между началом и концом транакции я хочу описать рекордет, и пытаюсь с ним работать, выдает ошибку Run-time Error 3420
- как бы говоря что объект не описан. Хотя описав рекордсет до начала транзакции, такой ошибки не выдает.
Почему?
Просто в процессе выполнения кода у меня вознкает потребность в описание новых рекордсет на основание полученых данных.
Как быть?
Кто ищет, тот всегда найдет ...

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Дайте объяснение по Workspaces?

Сообщение ger_kar » 20.08.2012 (Пн) 18:26

Что значит описать рекордсет? Декларация объектной переменной, получение ссылки на рекордсет или что либо иное?
Бороться и искать, найти и перепрятать

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Дайте объяснение по Workspaces?

Сообщение alibek » 22.08.2012 (Ср) 7:50

АндрейБ писал(а):Workspaces(0).CommitTrans
[рабочий код]
Workspaces(0).BeginTrans

Должно быть наоборот.
Lasciate ogni speranza, voi ch'entrate.

АндрейБ
Бывалый
Бывалый
 
Сообщения: 276
Зарегистрирован: 18.12.2004 (Сб) 17:00
Откуда: Санкт-Петербург

Re: Дайте объяснение по Workspaces?

Сообщение АндрейБ » 24.08.2012 (Пт) 14:43

Alibek счет начало и кнец я попутал.
На счет рекордсет, определения набора записей - я как понимаю описание переменной:
Set F1.RST1 = F1.DBS1.OpenRecordset("Select * From A;")
Кто ищет, тот всегда найдет ...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Дайте объяснение по Workspaces?

Сообщение alibek » 25.08.2012 (Сб) 9:01

АндрейБ писал(а):Set F1.RST1 = F1.DBS1.OpenRecordset("Select * From A;")

Что такое F1 и DBS1? Если переменные, то так неправильно.
Либо пиши F1.Databases(0).OpenRecordset (если F1 это Workspace), либо пиши DBS1.OpenRecordset, если раньше было указано Set DBS1 = F1.Databases(0).
Lasciate ogni speranza, voi ch'entrate.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 63

    TopList