Текущее время: Чт, апр 18 2024, 09:43

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot]


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

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