Страница 2 из 3

Добавлено: 11 дек 2007, 11:39
san
У меня MS SQL , галактика Ошибка добавления настроек. Код возврата 311
в логе
42S02: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'dbo.ToAtlDate'.
42S02: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'dbo.ToAtlTime'.

Добавлено: 11 дек 2007, 11:42
Алексей
edward_K
как обновить сам патчменедежр в режиме "исправления"?

Я в настройке ставлю "обновлять при запуске"
Он запускается - пишет что нашел обновления и предлагает закрыть себя и остальные приложения и стартовать снова.
Закрываю.
Открываю его заново - та же ситуация...

Замкнутый круг какой-то получается :)

Хотя на галку и саппорт обновления поставились.

На MSSQL - после установки обновлений на галку - при запуске вылетает ошибка 311 (при попытке обновления настроек). (Со старым ЕХЕ БД открывается на ура).
В саппорт заходит - но при запуске любого интерфейса - валится.
В лог вот что пишет.

Код: Выделить всё

11.12.2007 11:29:37 [TEST810#USER]:
DECLARE @CurDT DATETIME, @AtlDate INT, @AtlTime INT
SELECT @CurDT=GETDATE()
SELECT @AtlDate=dbo.ToAtlDate(@CurDT), @AtlTime=dbo.ToAtlTime(@CurDT)
UPDATE T$SPECMTR SET F$ATL_LASTUSER=?,F$ATL_ORIGINOFFICE=?,F$ATL_LASTDATE=@AtlDate,F$ATL_LASTTIME=@AtlTime,F$COTABLE=?,F$CSPEC=?,F$CSALDTUNE=?,F$COBJ=?,F$CKAU#1#=?,F$CKAU#2#=?,F$CKAU#3#=?,F$CKAU#4#=?,F$CKAU#5#=?,F$CKAU#6#=?,F$CKAU#7#=?,F$CKAU#8#=?,F$CKAU#9#=? WHERE F$NREC=? AND Sys#UL=?
IF @@ERROR=0 AND @@ROWCOUNT>0 SELECT Sys#UL FROM T$SPECMTR WHERE F$NREC=?
11.12.2007 11:29:37 [TEST810#USER]:
  42S02: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'dbo.ToAtlDate'.
  42S02: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'dbo.ToAtlTime'.

Добавлено: 11 дек 2007, 12:24
thor
Ну вот, кто-то уже и натнкулся.
Хотел было топик сделать, да не сподобился...
Все дело в том, что после установки Атлантиса версии 5.3.14 и переустановки NAP-сервера, происходит модификация триггеров на MS SQL таким образом, что они используют ряд User Defined Functions, которые также должны находиться в рабочей БД
ToAtlDAte
ToAtlTime
это как раз одни из таких пользовательских функций.
Если ставить после обновлений новую БД инсталятором, то они прописываются в БД, а если БД уже была создана на моаент установки Атлантиса, то их в данной БД нет.
Решение - Установить временно новую БД (любую) - сгенерить скрипт по созданию пользовательских функций и запустить его на рабочей БД.
PS
Не забудьте запустить chkmssql, т.к. все триггера поменялись.

Добавлено: 11 дек 2007, 12:34
san
chkmssql
Проверка структуры и далее сообщение:
"Вы не имеете прав для работы с утилитой"
в лог ничего не пишется

Добавлено: 11 дек 2007, 17:29
maikl
Надо отменить протект

Добавлено: 11 дек 2007, 20:15
thor
Или в CFG для chkmssql добавить имя юзера и пароль

Добавлено: 13 дек 2007, 21:32
eldar
thor писал(а):Ну вот, кто-то уже и натнкулся.
Хотел было топик сделать, да не сподобился...
Все дело в том, что после установки Атлантиса версии 5.3.14 и переустановки NAP-сервера, происходит модификация триггеров на MS SQL таким образом, что они используют ряд User Defined Functions, которые также должны находиться в рабочей БД
ToAtlDAte
ToAtlTime
это как раз одни из таких пользовательских функций.
Если ставить после обновлений новую БД инсталятором, то они прописываются в БД, а если БД уже была создана на моаент установки Атлантиса, то их в данной БД нет.
Решение - Установить временно новую БД (любую) - сгенерить скрипт по созданию пользовательских функций и запустить его на рабочей БД.
PS
Не забудьте запустить chkmssql, т.к. все триггера поменялись.
thor писал(а):Не забудьте запустить chkmssql, т.к. все триггера поменялись.
Говорит, что Не совпадают версии или контрольные суммы словаря и использующей его программы. Проверка структуры запрещена.
?

Добавлено: 14 дек 2007, 00:29
edward_K
нефиг словарь менять 8) . Теперь ставте демо базу, открываете X$fiels , в первой строке смотрите эту контрольную сумму и ставте на время в рабочую базу. Вариант - chkmssql действительно от другой версии.

Добавлено: 14 дек 2007, 05:52
Алексей
а никто его и не менял
у меня аналогичное сообщение и на вновсь установленной новым инсталлером базе тоже.

для перехода на 5.3 - надо делать какой-то список процедур - рид.ми к которому видимо пока не готов :)

Добавлено: 14 дек 2007, 08:21
eldar
edward_K писал(а):нефиг словарь менять 8) . Теперь ставте демо базу, открываете X$fiels , в первой строке смотрите эту контрольную сумму и ставте на время в рабочую базу. Вариант - chkmssql действительно от другой версии.
не помогает
словарь не менял, контрольная сумма совпадает, chkmssql от последних обновлений

проблема с правами

Добавлено: 14 дек 2007, 13:22
Daiver
Вроде поборол, но теперь возникла другая проблема. Те, кто заведён в протекте как администратор, работают нормально, у пользователей постоянно лезут ошибки, такое впечатление, что БД доступна им только для чтения. Что может быть?

Добавлено: 14 дек 2007, 17:27
Polimer
Оказывается есть инструкция (ATLANTIS53.TXT).
Выдержка из нее:

5. Для платформы MSSQL Server необходимо после установки обновлений на Галактику ERP:
а) в базе данных master выполнить сторонними средствами скрипт
exec sp_addmessage 50012,11,'Call %s in %s return an error (NAP: %d, RPC: %d)','us_english',true,REPLACE
exec sp_addmessage 50013,11,'Some records are locked (%s)','us_english',false,REPLACE
exec sp_addmessage 50014,11,'Locked records buffer is overflowed in %s','us_english',true,REPLACE
б) обновить каталог DB_INST Галактики ERP (установить с помощью Менеджера обновлений
пакетное обновление Atlantis 5.3.14 в систему db_inst);
б) обновить вспомогательную службу Галактики ERP napsrv.exe с помощью
инсталлятора БД ms_inst.exe;
в) запустить утилиту проверки БД chkmssql.exe версии 5.3.14
на проверку служебных объектов (ChkBase.StoredProcs=on) и
триггеров (ChkBase.Triggers=on) по всем таблицам в режиме исправления.
О порядке работы с утилитой см. документ "Средство разработки Атлантис.
Инструменты и утилиты. Руководство программиста".
Пример конфигурационного файла утилиты chkmssql.exe:
[ChkBase]
StoredProcs=on
UsersAndRights=off
Compile=off
Memo=off
Journal=off
Fields=off
Indexes=off
Triggers=off
Tables=

[DataBase]
DatabaseName=test
DataBaseDriver=ms70drv.DLL

[Login]
UserName=
Password=

[SQLDriver]
SQLServer=ncacn_ip_tcp:TEST_SQL[1997]

[DictVersion]
Version=52
Sum=-1601339646

Логин и пароль админа Г., после этого все заработало.

Добавлено: 18 янв 2008, 15:09
vist
Сделал по инструкции, сообщает об ошибках доступа при каждом действии, НО РАБОТАЕТ...
В лог пишет:
42000: [Microsoft][ODBC SQL Server Driver][SQL Server]EXECUTE permission denied on object 'ToAtlDate', database 'PRZ810', owner 'dbo'.
42000: [Microsoft][ODBC SQL Server Driver][SQL Server]EXECUTE permission denied on object 'ToAtlTime', database 'PRZ810', owner 'dbo'.

Добавлено: 18 янв 2008, 17:56
thor
В Permissions в свойствах функций, которые у вас в БД лежат в разделе User Defined Functions, проверьте есть ли у роли Publuc право на Execute, если нет, то поставьте галку

Добавлено: 29 янв 2008, 14:51
Den
Собираюсь тоже обновить 810 до Атлантиса 5.3...
так и не понял, строчника то теперь не будет с этой версии. Слышал краем уха,что вроде как обещали оставить. Нашел на фтп :

ftp://ftp.galaktika.ru/pub/support/gala ... AL810/VIP/

Это не из этой оперы...?