Список форумов Акцент Акцент
официальный форум разработчика программы Акцент
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Ошибка при создании партии

 
Начать новую тему   Ответить на тему    Список форумов Акцент -> Акцент 7.40
Предыдущая тема :: Следующая тема  
Автор Сообщение
Oleksandr
Гость





СообщениеДобавлено: Чт Окт 25, 2012 10:32 am    Заголовок сообщения: Ошибка при создании партии Ответить с цитатой

Код:
Option Explicit
Dim ent, series
Set ent = workarea.Entity(100) ' условный товар
Set series = ent.seriesColl.create  ("SerName", "2222", "33333", Date-7, Date)
MsgBox series.Id
series.save
MsgBox series.Id

Первый и второй мессадж бокс выдаёт нули, если код запущен под пользователем, созданным средствами Акцент-администратор. Хотя партия создаётся. Баг будет наблюдаться как в 7 так и в более поздних версиях Акцента (наверно и в 6 тоже, но в той базе 6 Акцента, что у меня есть, нужные разрешения уже проставлены, вероятно вручную), на серверах начиная с MSSQL2005
Причина:
В SQL Server 2005 и более поздних версиях видимость метаданных ограничивается защищаемыми объектами, которыми пользователь владеет или на которые пользователю были предоставлены разрешения. Источник: http://msdn.microsoft.com/ru-ru/library/ms187113%28v=sql.100%29.aspx
В данном случае это:
Код:
 select @ret = ident_current('SERIES')

в процедуре ap_series_update
Решение: Необходимо добавить разрешение как минимум на SELECT для ap_public в таблице SERIES
Вернуться к началу
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Вс Окт 28, 2012 7:58 am    Заголовок сообщения: Re: Ошибка при создании партии Ответить с цитатой

чтобы с 2005 года никто не столкнулся с этой "ошибкой" ? не верю.
проблема в конкретной базе или ее администраторе.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Oleksandr
Гость





СообщениеДобавлено: Вс Окт 28, 2012 9:19 am    Заголовок сообщения: Ответить с цитатой

Ну да, конкретной базы. Той, которая идет вместе с Акцентом. Какая процедура развертывания Акцент-SQL? Разве не на основании базы, которая идет в поставке?
На счет того, что никто не столкнулся - причины могут быть разные:
1. Используют SQL2000
2. Работают под пользователем имеющим соотв. права (например, созданным не в Акцент-администраторе, а скриптом addadmin.sql или другими способами)
3. В решении не используется код с багом.
4. Программист (админ) уже пофиксил баг.
5. Нашли способ обходить ошибку и игнорируют
6. Прочее...


Последний раз редактировалось: Oleksandr (Вс Окт 28, 2012 10:03 am), всего редактировалось 1 раз
Вернуться к началу
Oleksandr
Гость





СообщениеДобавлено: Вс Окт 28, 2012 10:01 am    Заголовок сообщения: Re: Ошибка при создании партии Ответить с цитатой

olimp писал(а):
чтобы с 2005 года никто не столкнулся с этой "ошибкой" ? не верю.
проблема в конкретной базе или ее администраторе.

Ошибки НЕ будет на какой-то конкретной базе, на которой она исправлена
Вернуться к началу
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Вс Окт 28, 2012 4:25 pm    Заголовок сообщения: Re: Ошибка при создании партии Ответить с цитатой

Oleksandr писал(а):
olimp писал(а):
чтобы с 2005 года никто не столкнулся с этой "ошибкой" ? не верю.
проблема в конкретной базе или ее администраторе.

Ошибки НЕ будет на какой-то конкретной базе, на которой она исправлена

Или будет там, где были шаловливые руки админа ))))

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

P.S. не нужно плодить кучу одинаковых тем.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Oleksandr
Гость





СообщениеДобавлено: Вс Окт 28, 2012 5:47 pm    Заголовок сообщения: Re: Ошибка при создании партии Ответить с цитатой

olimp писал(а):

Или будет там, где были шаловливые руки админа ))))

Причем тут вообще админ? Разрешения в базе и в скрипте нет изначально, а не админ его снимает.
olimp писал(а):

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

Я указал на ошибку. Код тоже написал. Воспроизвести её Вы и сами можете, хоть накатывая базу с помощью скрипта, хоть подключая базу из поставки. Кол-во манипуляций минимальное.
Новая база на SQL SERVER => 2005 -> Новый пользователь (в том числе в группе Admins), созданный "Акцент администратором" -> Вышеуказанный код
Вернуться к началу
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Вс Окт 28, 2012 9:36 pm    Заголовок сообщения: Re: Ошибка при создании партии Ответить с цитатой

Oleksandr писал(а):
olimp писал(а):

Или будет там, где были шаловливые руки админа ))))

Причем тут вообще админ? Разрешения в базе и в скрипте нет изначально, а не админ его снимает.

Кто имеет право изменять права доступа, как не админ ?
Раздача прав по умолчанию тоже на нем висит. И администрированием можно легко добиться того, что каждого пользователя нужно будет руками создавать в консоли.
Цитата:

Я указал на ошибку. Код тоже написал. Воспроизвести её Вы и сами можете, хоть накатывая базу с помощью скрипта, хоть подключая базу из поставки. Кол-во манипуляций минимальное.
Новая база на SQL SERVER => 2005 -> Новый пользователь (в том числе в группе Admins), созданный "Акцент администратором" -> Вышеуказанный код

С сериями работают все прикладные решения. Если за 7 лет существования SQL 2005 и 4 лет существования SQL 2008 никто не наступил на такие же грабли, что и ты, тратить время на то, чтобы убедится в нахождении проблемы на стороне клиента, я не буду.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Акцент -> Акцент 7.40 Часовой пояс: GMT + 2
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group