Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема при работе с СКУЛСерверными View, при привязке их из акцесса 
:(
    Опции темы
Bes
Дата 3.8.2005, 07:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



делаю связь в акцессе через одбц к СКУЛсерверной вьюшке в которой есть right join и case - ничего криминального.
открываю ее в акцессе меняю название - все нрмально
меняю название еще раз - говорит (дословно)

Данные были изменены
Другой пользователь изменил эту запись и сохранил свои изменения.
Внесите исправления повторно.


после чего именно эту запись можно редактировать "безболезненно" сколь угодно много и долго.
НО с другой записью происходит та же история.

Что теперь каждую запись так "лечить"?
И что это за фигня вообще?

-------------------------------------------
так, выясняется следующая хрень:
вот конструктор вьюшки:


Код

create view view1 as
SELECT Таб1.Дата, 
Таб1.Код, 
Таб1.Документ, 
case when Таб1.Название = Таб2.Имя then 0 else 1 end AS Совп, 
Таб1.Название, 
Таб2.Прим, 
Таб2.Тип, 
FROM Таб2 RIGHT JOIN Таб1 ON Таб2.Ключ = Таб1.Код


так вот если я меняю поле название первый раз то вычисляемое поле совп не меняется, когда я пытаюсь поменять поле название второй раз - меняется вычисляемое поле совп и выплевывается ошибка, а потом все нормально пока данные поля название снова не приведут к изменению вычисляемого поля совп.

Как решить эту проблему? Т.к. при использовании этой вьюшки в качестве источника данных в форме она вообще там про копирование изменений в буфер начинает кричать и пр. ?

Это сообщение отредактировал(а) Bes - 3.8.2005, 08:05
PM MAIL   Вверх
Akina
Дата 3.8.2005, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(Bes @ 3.8.2005, 08:52)
Как решить эту проблему?

Наверное, стандартным методом - пересмотром подхода.
TSQL в принципе не имеет средств корректирования вьювов - только удаление и создание заново. Именно по такой схеме работают надстройки редактирования. И тут проблемы блокировки неизбежны.
Попробуй поискать что там насчет AutoCommit или типа того в настройках - может найдется


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Bes
Дата 3.8.2005, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



Может тригер какой прикрутить?
PM MAIL   Вверх
Akina
Дата 3.8.2005, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



А для чего ты меняешь вьюв??? сделай его параметрическим...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Bes
Дата 3.8.2005, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



Раньше дисточником данных для этой формы запрос основанный на двух таблицах, теперь таблицы лежат на SQLServer2000 там же создана вьюшка которая привязана через одбц в акцессе. теперь эта привязанная таблца(вьюшка) является источником данных.
Естесственно что в форме для работы с этими таблицами наворочено куча кода, вот я и думаю не переписывать всю форму а просто правильно организовать подключение.
Теперь вопрос: всвязи с вышенаписанным что имеется ввиду под параметритречиским.... не понял
PM MAIL   Вверх
Akina
Дата 3.8.2005, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Тогда конвертируй базу данных (MDB) в проект (ADP).
А параметрический view - это view, принимающий параметры.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Bes
Дата 3.8.2005, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



У меня Access97 там вроде нет ADP.... smile
Блин все похоже кирдык.
PM MAIL   Вверх
Akina
Дата 3.8.2005, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(Bes @ 3.8.2005, 13:26)
У меня Access97 там вроде нет ADP

Точно, нету... и как с ним работать - я уже давно и прочно забыл.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Bes
Дата 3.8.2005, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



Самое стремное, что создаю новую форму на основе этого запроса - все работает, блин наворотили там..... smile
PM MAIL   Вверх
Bes
Дата 8.8.2005, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



ПРошу прощения - еще раз возвращаюськ теме, т.к. проблема локализовалась.
Ошибка возникает при рефреше формы после изменении значения в поле А по событию АвтерЕдит поля В.
Т.е. меняю ручками название детали (поле В) и в событии "After Edit" пишу запрос на изменение значения кода в поле А который соответствует этой измененной детали. после чего вызываю рефреш формы на котором и получаю ошибку - надо сказать что вьюшка связана по этому полю

FROM Таб2 RIGHT JOIN Таб1 ON Таб2.Ключ = Таб1.Код

вот это Таб1.Код и меняется программно.

По-моему бред: не предмтавляю как это работало в Акцессовских таблицах.
PM MAIL   Вверх
Bes
Дата 9.8.2005, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 806
Регистрация: 8.12.2004

Репутация: нет
Всего: 7



UP

PM MAIL   Вверх
SergeyD
Дата 21.4.2006, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 21.4.2006

Репутация: нет
Всего: нет



У меня есть одна база Access97 c таблицами и другая - с запросами, формами и т.п. Естественно, во второй используются связанные с первой таблицы.

Вопрос. Можно ли связать вторую базу с таблицами SQL-server (туда их я могу импортировать из первой базы довольно легко)?
Если да, то как это сделать?  
PM MAIL   Вверх
Papirus
Дата 24.4.2006, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 19.4.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 1



Цитата(Akina @  3.8.2005,  12:05 Найти цитируемый пост)
А параметрический view - это view, принимающий параметры. 

Параметры принимают пользовательские функции и процедуры. А View просто "образ" одной или нескольких таблиц. Для выборки данных с помощью вьюх используется тот же сиснтаксис, что и при выборках из таблиц. smile 
Код

Select * From MyView Where ID = 4
 smile

Добавлено @ 08:31 
Цитата(SergeyD @  21.4.2006,  16:48 Найти цитируемый пост)
Вопрос. Можно ли связать вторую базу с таблицами SQL-server (туда их я могу импортировать из первой базы довольно легко)?

Связать? Или импортировать?
Если импортировать, то почему бы не в ту же базу, а там связывай как хочешь... да и справами доступа меньше заморочек.
 
PM MAIL ICQ   Вверх
SergeyD
Дата 24.4.2006, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 21.4.2006

Репутация: нет
Всего: нет



Мне нужно импортировать базу, содержащую только таблицы, в SQLсервер (это несложно), а потом базу, в которой формы, отчеты и т.п. связать с этими импортированными таблицами. В данный момент обе базы - Access 97. 
PM MAIL   Вверх
Papirus
Дата 25.4.2006, 08:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 19.4.2005
Где: Санкт-Петербург

Репутация: 2
Всего: 1



Цитата(SergeyD @  24.4.2006,  11:29 Найти цитируемый пост)
а потом базу, в которой формы, отчеты и т.п. связать с этими импортированными таблицами. 

Здесь то и будут главные заморочки, т.к. синтаксис T-SQL несколько отличается от языка запросов Акса. И если используются в источниках данных конструкции типа: Select * From table1 Where ID = Forms!MyForm.TextBox1.Value - их придется ручками переписывать. При этом оченно не советую использовать Акс97+ODBC. Лучший вариант проект  AccessXP или 2003. 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »


 




[ Время генерации скрипта: 0.0689 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.