Проблема с объектом группы.

Понадобилось включить настройку прав у объекта группы раздела, поставил галку "Администрируется по записям", попытался опубликовать, меня тут же обматерили, что название объекта длиннее чем 22 символа.

:confused:

И чего мне теперь делать? Как права на группы раздавать?!!!

Или это из серии то, что мы не лечим?

Нравится

12 комментариев

Ау, сообщество, чего делать то? Все заново создавать или все таки рискнуть переименовать все объекты соответствующим образом?

Заново меня как то не возбуждает, много всего....

И кстати откуда сие странное число: 22? почему не 42?

А что за БД, MSSQL или Oracle?

Ограничения на длину идентификаторов есть, к примеру, в Oracle (30 символов). Если отнять от имени таблицы 'InFolder', добавляемые для таблиц групп, как раз получится 22. А если ещё и 'Right', останется ещё меньше.

MS SQL
Речь про объект группы, то есть добавляется 'Folder' и проблема возникает только если "Администрируется по записям" включить. Снимаешь эту галку -- все нормально

В это время создается объект MyWorkspaceMyFolderRights. Скорее всего длина имена такой таблицы превышает максимально допустимые.

Во первых оно у меня и без Rights уже длиннее чем 22,а во вторых с другим объектом где тоже конструкция с Folder ровно 22, а с Rights будет длиннее, но работает все......

Да и короче вопрос сейчас не в этом, вопрос в том что делать:
Можно ли все переименовать и раздел пересоздать (записей пока нет, пусто) или вообще все с нуля пересоздавать?

И кстати, добавляется не Rights, а Right и впереди Sys, так что создается таблица с именем Sys[название объекта]Right, то есть для объекта группы это вообще будет Sys[название объекта]FolderRight.

И в этом случае с тем объектом, где у меня все работает, как раз 30 и получается......
Таким образом, вспоминая арифметику, получаем
30 - длинна( Sys ) - длинна( Folder ) - длинна( Right ) = 16

То есть если мы хотим, чтобы никаких геморроев нас в будущем не подстерегало, надо длину объекта ограничить 16-ю символами.

P.S. Я может уже надоел с этим, но "ДОКУМЕНТАЦИЯ!! ДОКУМЕНТАЦИЯ!! ДОКУМЕНТАЦИЯ!!" - скандировали уставшие разработчики!!!

P.P.S. Но видать фейсбучные интерфейсные штучки-дрючки являются более приоритетным направлением...оно и понятно с этим пускать пыль в глаза эффектнее на презентухах с большого экрана, а разработчики чего: они на то и разработчики, потра@#$%&ся пару лишних дней, ничего такого, образованней глядишь станут, стараясь по косвенным признакам отследить крутовиражный полет ястреба террасофтовской мысли....

P.P.P.S. Кстати, это ведь я до этого допер, так как у меня "SQL пулемёт" есть, редакция On-Site, а как до такого додуматься человеку в случае On-Line?

Извините, может резко слишком, просто наболело.

С переименованием по ходу ни черта не выйдет.......
Все по новой, мать-перемать, форменное издевательство.

Теоретически, можно попросить пересобрать исходники ядра, выставив константу в число больше 30. Для MS это ведь не принципиально. Но проще переименовать объект более лаконично.

Не сработает, там столько перекрестных ссылок/вызовов в коде завязанных на имя объекта, мама не горюй.

Так что займусь мартышкиным трудом, сделаю все по новой. Выхода нет, время не ждет.

Александр, сообщил о проблеме в департамент разработки.

Я очень рад.
А у них есть машина времени?
Чтобы вернуть мне время потерянное из-за отсутствия одной строчки в документации?
Нет? Странно.....

Тогда ценность этой информации для меня весьма низка, Дмитрий, уж извините, я бы даже сказал, нулевая.

Александр, я Вас понимаю. Но от ошибок никто не застрахован.
Мы, конечно же, исправим данную проблему в следующей сборке.

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

Показать все комментарии