Текущее время: Чт, мар 28 2024, 16:50

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Объект блокировки для таблицы с большим ключом
СообщениеДобавлено: Пн, фев 11 2013, 14:50 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, июн 12 2008, 16:54
Сообщения: 52
Добрый день,

Подскажите, можно ли создать объект блокировки для таблицы, ключ которой больше 300 байт?
Мне постоянно выдает ошибку DI776.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, фев 11 2013, 15:25 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, фев 17 2006, 07:38
Сообщения: 99
Предлагаю расчитывать по ключу какой-либо хэш (например MD5), и в ФМ блокировки передавать его.
Для этого есть ФМ CALCULATE_HASH_FOR_CHAR.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, фев 11 2013, 16:06 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, июн 12 2008, 16:54
Сообщения: 52
Проблема в том, что ФМ блокировки не генерируются, так как объект просто не активируется, если длинна ключа в таблице больше!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, фев 11 2013, 20:07 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
так блокирует то логически, т.е. ,как вариант для простого случая, можете создать объект блокировки на любую другую таблицу с нужным ключом, или изменить ф/м и вызовы под свои нужды

можете показать здесь свой длинный ключ?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, фев 11 2013, 21:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3074
Откуда: Москва
MaaLL написал(а):
Проблема в том, что ФМ блокировки не генерируются, так как объект просто не активируется, если длинна ключа в таблице больше!

Так сделайте ключом для таблицы поле типа GUID или хэш, как предлагает vahtang . Зачем нужен такой длинный первичный ключ? :roll:

_________________
С уважением,
Удав.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем  Тема решена
СообщениеДобавлено: Пн, фев 11 2013, 23:46 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Создать структуру с одним хеш-полем и создать на нее (вместо таблицы) объект блокировки.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, янв 16 2023, 06:47 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, июл 19 2007, 07:04
Сообщения: 1072
Пол: Мужской
Есть таблица с большим ключом, объект блокировки на нее создать не получается, но есть постоянные проблемы с ее обновлением: теряем записи при обновлении без блокировки. Таблица хранит больше сотни млн. записей, используется в большом количестве решений, в т.ч. смежным функционалом. Т.е. модифицировать ключ таблицы рискованно и трудозатратно. Может, посоветуете какие-то решения из практики?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, янв 16 2023, 13:20 
Специалист
Специалист

Зарегистрирован:
Вт, июн 10 2014, 09:41
Сообщения: 179
В голову приходит только создание другой новой структуры и делать блокировку для неё (например, чтобы блокировался целый блок из оригинальной таблицы), либо делать блокировку на уровне БД (SELECT SINGLE * FOR UPDATE), но это чревато производительностью, если программы будут долго и много блокировать записи.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Объект блокировки для таблицы с большим ключем
СообщениеДобавлено: Пн, янв 16 2023, 19:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 20 2007, 18:21
Сообщения: 1613
Блокировку можно сделать на базе своей структуры. Длинный ключ изначально плохая идея. 3-4 поля с хорошей кардинальностью.

_________________
я твой сап эфай внедрял
BAdI-позитив
Взять немножечко абопу, сунь туда кошачью *опу, RFC лапки, БТ старой бабки, на медленном базиснике переносить, тестовое окружение материть, снимать SAT пенку, биться головой о стенку, охапка тайм-шитов, отчет готов!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB