Человеческий язык SQL ошибок.

ODBC

Модератор: Andrew™

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Человеческий язык SQL ошибок.

Сообщение Yufil »

При ошибке происходит вызов filemanager.throw(), а внутри него доступно сообщение сервера FileError(), код ошибки сервера FileErrorCode(), код ошибки Клариона Filemanager.get_error(). А дальше всё разбирается, преобразуется и формируется новое сообщение.
Вот этот текст

Код: Выделить всё

TextGroup            Group
                      String('unique key|Нарушена уникальность записи')
                      String('table reference|Запись используется в другой таблице БД')
                     End
просто помогает идентифицировать ошибку по фрагменту текста сообщения, может быть дополнен другими строками.
Например, если в тексте есть 'unique key', будет выведено 'Нарушена уникальность записи'

Поставь в начало отладочную выдачу FileError(), FileErrorCode() и Get_error, потом дополни список строк контекста и поправь коды ошибок сервера Firebird. И будет тебе щастье...
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Человеческий язык SQL ошибок.

Сообщение kreator »

Реальный путь, ещё раз спасибо. К Firebird'у привязываться не хочется, сегодня есть, завтра нет (сейчас ждем версию 3.0, если ничего ребята не сделают с быстродействием, будем думать куда мигрировать). А есть ещё у меня старый проект на SQLAnywhere, сейчас вроде интерес проснулся к нему. И ещё момент. Сделал мультиязычный интерфейс небольшого модуля. Вдруг понадобится развитие - ошибки выдавать на другом языке. Так что буду смотреть FileManager.
We are hard at work… for you. :)
Ответить