Метод проверки удаления

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8028
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Метод проверки удаления

Сообщение Игорь Столяров »

Привет всем !

Есть несколько связанных списков, в словаре описаны правила запрета на удаление связанных записей.
При удалении из BROWSE все запреты правильно отрабатывают - OK !

Есть непреодолимое желание "пробежаться" по списку и отметить записи,
при удалении которых возникнет запрет из-за наличия записей в связанных списках.

Можно конечно, сделать это вручную, описав в коде и проверив все связи,
а потом отслеживать все изменения связей в словаре .... :(

Но ведь шаблоны ABC это и так уже сделали и используют эту проверку при удалении записей !
Подскажите пожалуйста, кто-нибудь знает каким методом ABC проверить возможность удаления записи ?

Заранее спасибо ! :)
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Метод проверки удаления

Сообщение kreator »

Игорь Столяров писал(а):Но ведь шаблоны ABC это и так уже сделали и используют эту проверку при удалении записей !
Сомневаюсь в этом. Проверка должна производится в момент удаления. Во-первых, очень долго проверять все связи и наличие связанных записей. Во-вторых, есть вариант положиться в этом вопросе на SQL сервер. Тогда классы вообще ничего не делают, сообщают только ошибку сервера. Думаю, если уж есть такая необходимость, то руками реализовывается. Как пример - шаблон дерева (не важно - по одному файлу или нет). При создании ветки всегда делается проверка на наличие "подветок", чтобы правильно нарисовать иконку, к примеру.
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 8028
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 28 раз
Поблагодарили: 96 раз

Метод проверки удаления

Сообщение Игорь Столяров »

kreator писал(а): Во-вторых, есть вариант положиться в этом вопросе на SQL сервер.
Приношу извинения, не указал в вопросе: формат БД - TopSpeed (TPS).
Make Clarion Great Again ! 😎
kreator
✯ Ветеран ✯
Сообщения: 5159
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 11 раз
Поблагодарили: 26 раз

Метод проверки удаления

Сообщение kreator »

Игорь Столяров писал(а):Приношу извинения, не указал в вопросе: формат БД - TopSpeed (TPS).
Совершенно не важно. За Referential Integrity отвечает Relation Manager Class. Есть у него метод Delete для удаления записей. Посмотрите что можно вытащить из него (из этого класса).
We are hard at work… for you. :)
Ответить