На момент выпуска этого релиза, вот возможные ошибки, которые могут быть возвращены функцией GetLastError, использованной при обработке XML. Для более подробной информации, обратитесь
Clarion XML Support PDF.
Ошибка
Описание0 NoError
1 XMLReadFail
2 XMLWriteFail
3 DuplicateName
4 IllegalName
5 CreateDOMFail
6 EOF (End of File)
7 InvalidArgument
8 IllegalFunctionCall
9 NotSupported
10 InternalError
11 FieldNotFound
12 CommonError
13 IllegalParameter
14 ImportFail
15 NotSuccessful
16 IllegalFormat
17 IllegalType
18 IllegalSize
19 NoSuchField
20 EOS (End of Schema)
21 SchemaNotSupported
22 InconsistentSchema
23 CheckFail
24 AddRecordFailed
25 InvalidNodeName
26 NoCurrentNode
27 CdataNotSupported
28 Base64NotSupported
сведения об ERRORCODE 47
Когда ERRORCODE возвращает значение 47 ('Invalid File Declaration'), то вы можете использовать оператор FILEERRORCODE для получения дополнительной информации.
FILEERRORCODE возвращает строку в следующем формате
"obj : index : property : errorcode"
объект
один из SYSTEM, FILE, FIELD, MEMO/BLOB, KEY или COMPONENTиндекс порядковый объект в родителе (счет с 1).
свойство имя неверного свойства
код ошибки формат Snumber или Dnumber
Ниже приведена таблица расширенных кодов ошибок , с соответствующим номером CLAMSG, сообщение об ошибке по умолчанию и примечание
Dnumber
показывает код ошибки определенного драйвераSnumber
показывает общий код ошибкиНиже приведена таблица кодов ошибок
Snumber, с соответствующим номером CLAMSG, сообщение об ошибке по умолчанию и примечание
Объект |
Код ошибки |
Номер CLAMSG |
Сообщение |
Примечание |
SYSTEM |
S00001 |
100001 |
Внутренняя ошибка: Свойство не может быть установлено. |
Вы никогда не должны видеть ее. Это баг библиотечной функции. |
S00002 |
100002 |
Не обнаружена поддержка динамического файла |
Вы пытаетесь изменить драйвер статического файла не имея библиотеки поддержки Драйвера Динамического Фалйа. Этот код ошибки возвращает file{PROP:Driver} = 'value'. |
|
FILE |
S00001 |
1100001 |
Не указан драйвер файла |
Этот код ошибки возвращает file{PROP:Driver} = 'value'. |
S00002 |
1100002 |
Драйвер файла не может быть загружен |
Система не может загрузить библиотеку DLL драйвера файла. Возможно не найдена по указанному пути |
|
S00003 |
1100003 |
DLL не является допустимым драйвером файла |
Обычно означает, что файл драйвера поврежден. |
|
S00004 |
1100004 |
Неопределенный файловый драйвер |
Значение указанное в file{PROP:Driver} не соответствует ни одному из известных драйверов. Если вы имеете сторонний драйвер, возможно вам необходимо добавить его в список, хранящийся в реестре Windows "HKEY_LOCAL_MACHINE\Software\SoftVelocity\AnyDriver\\C60" |
|
S00005 |
1100005 |
Размер структуры записи составляет больше 4194304 байт |
||
FIELD |
S00001 |
1200001 |
Не допустимая метка Clarion |
|
S00002 |
1200002 |
Дублирование метки |
||
S00003 |
1200003 |
Не указан тип |
||
S00004 |
1200004 |
Тип требует указания размера, а он не указан |
||
S00005 |
1200005 |
Группа имеет больше более чем определено |
Вы не определили достаточное количество полей в файле, чтобы заполнить группу, основанную на значении. file{PROP:Fields, n} установленного для этой группы. |
|
S00006 |
1200006 |
Количество знаков после запятой, превышает указанный размер |
||
S00007 |
1200007 |
Слишком большой размер |
||
S00008 |
1200008 |
Подсчет полей не определялся для поля GROUP |
||
S00009 |
1200009 |
Поле должно быть определено поверх поля, определенного ранее |
||
S00010 |
1200010 |
Группа имеет размер больше 4194304 байт |
||
S00011 |
1200011 |
Поле имеет размер больше чем 4190208 байт |
||
S00012 |
1200012 |
Поле больше поля, поверх которого оно объявляется |
||
S00013 |
1200013 |
Недопустимый шаблон |
||
S00014 |
1200014 |
Поле не может быть объявлено поверх поля в другой группе |
||
KEY |
S00001 |
1300001 |
Недопустимая метка Clarion |
|
S00002 |
1300002 |
Дублирование метки |
||
S00003 |
1300003 |
Установлен тип 'KEY', но поля не указаны |
||
S00004 |
1300004 |
Ключ определен как PRIMARY и DUP |
||
COMPONENT |
S00001 |
1400001 |
Число компонент больше числа полей в структуре файла |
|
S00002 |
1400002 |
Компонент является полем массива |
||
MEMO/BLOB |
S00001 |
1300001 |
Недопустимая метка Clarion |
|
S00002 |
1300002 |
Дублирование метки |
||
S00003 |
1500003 |
Не указан размер для MEMO |
Ниже приведена таблица кодов ошибок
Dnumber, с соответствующим номером CLAMSG и сообщением об ошибке по умолчанию
Объект |
Код ошибки |
Номер CLAMSG |
Сообщение ошибки |
FILE |
D00001 |
2100001 |
Компонент не соответствует структуре физического файла |
FIELD |
D00001 |
2200001 |
Компонент не соответствует структуре физического файла |
D00002 |
2200002 |
Не указана метка или имя |
|
D00003 |
2200003 |
Не поддерживаемый тип данных |
|
D00004 |
2200004 |
Число измерений больше числа поддерживаемых файловым драйвером |
|
D00005 |
2200005 |
Размер поля больше максимально поддерживаемого файловым драйвером |
|
KEY |
D00001 |
2300001 |
Компонент не соответствует структуре физического файла |
D00002 |
2300002 |
Не указана метка или имя |
|
D00003 |
2300003 |
Определено слишком много ключей |
|
COMPONENT |
D00001 |
2400001 |
Компонент не соответствует структуре физического файла |
D00002 |
2400002 |
Драйвер не поддерживает убывающие последовательности ключа |
|
D00003 |
2400003 |
Драйвер не поддерживает смешивание последовательностей компонент ключа по возрастанию и убыванию |
|
MEMO/BLOB |
D00001 |
2500001 |
Компонент не соответствует структуре физического файла |
D00002 |
2500002 |
Не указана метка или имя |
|
D00003 |
2500003 |
Определено слишком много MEMO |
|
D00004 |
2500004 |
Размер MEMO-поля больше максимально поддерживаемого файловым драйвером |
|
D00005 |
2500005 |
Драйвер не поддерживает BLOB |
|
D00006 |
2500006 |
Драйвер не поддерживает MEMO |
|
D00007 |
2500007 |
Драйвер не поддерживает BINARY memo или blob |
Ниже приведена таблица кодов ошибок специфичных для драйвера
ODBC, с соответствующим номером CLAMSG и сообщением об ошибке по умолчанию
Объект |
Код ошибки |
Номер CLAMSG |
Сообщение ошибки |
FIELD |
D03101 |
2203101 |
Вы используете с сервером ODBC 1.0 тип данных без знака |
Ниже приведена таблица кодов ошибок специфичных для драйвера
Oracle, с соответствующим номером CLAMSG и сообщением об ошибке по умолчанию
Объект |
Код ошибки |
Номер CLAMSG |
Сообщение ошибки |
MEMO/BLOB |
D03201 |
253201 |
BLOB поля не поддерживаются Oracle v7 и более ранними версиями |
Ниже приведена таблица кодов ошибок специфичных для драйвера
TopSpeed, с соответствующим номером CLAMSG, сообщением об ошибке по умолчанию и примечанием
Объект |
Код ошибки |
Номер CLAMSG |
Сообщение |
Примечание |
FILE |
D00102 |
2100102 |
Вы пытаетесь открыть более новый формат файла TopSpeed, чем поддерживаемый драйвером |
В настоящее время этой ошибки не должно выдаваться. Она может появляться в будущем, если изменится формат TopSpeed и вы попытаетесь открыть его текущим драйвером |
Ошибки времени выполнения, отслеживаемые в программе
В прикладной программе с помощью процедур ERRORCODE и ERROR можно отследить возникновение приведенных далее ошибочных ситуаций. Для каждой ошибки есть числовой код (возвращаемый процедурой ERRORCODE) и соответствующее текстовое сообщение (возвращаемый процедурой ERROR), поясняющее проблему.
2 File Not Found
В заданном каталоге нет указанного файла.
3 Path Not Found
Каталог, указанный как часть пути в файловой системе, не существует.
4 Too Many Open Files
Использованы все доступные идентификационные номера файлов. Проверьте значение, установленное в файле CONFIG.SYS в строке FILES=, или в установках сетевой операционной среды число одновременно открытых файлов.
5 Access Denied
Файл уже открыт другим пользователем в режиме исключительного доступа, оставлен в заблокированном состоянии или у вас нет прав в сети на открытие данного файла. Кроме того, эта ошибка может возникать, когда недостаточно свободного места на диске.
7 Memory Corrupted
По неизвестной причине произошло некое разрушение данных в памяти.
8 Insufficient Memory
Для выполнения операции не хватает свободной оперативной памяти. Закрыв другие приложения, можно освободить требуемое количество памяти.
15 Invalid Drive
Неудачная попытка произвести считывание с несуществующего дискового устройства.
27
Invalid Table DeclarationПопытка открыть файл, который имеет неверную табличную структуру, завершилась ошибкой. Это нормальная ситуация когда Динамический файл был создан некорректно. А также в приложениях, основанных на
IP Driver.
30 Entry Not Found
Ошибка при выполнении оператора GET для QUEUE. В форме GET(очередь
,ключ) не найдено соответствующее значение ключа, а для формы GET(очередь,указатель), указатель выходит за границы допустимого диапазона.
32 File Is Already Locked
Попытка заблокировать файл не удалась, потому что его уже заблокировал другой пользователь.
33 Record Not Available
Обычно возникает при попытке считать запись после последней (или перед первой) записи файла оператором NEXT или PREVIOUS. Может также выдаваться при выполнении операторов PUT или DELETE, если запись предварительно не была прочитана.
35 Record Not Found
При выполнении оператора в форме GET(файл
,ключ), не найдена запись с соответствующим значением ключевого поля.
36 Invalid Data File
Либо произошло некоторое неопознанное повреждение файла данных, либо атрибут OWNER не
соответствует паролю, использованному при кодировании файла.
37 File Not Open
Попытка выполнить некую операцию, требующую предварительного открытия файла, завершилась аварийно вследствие того, что файл не открыт.
38 Invalid Key File
Возникло нарушение структуры файла ключей, природа которого неясна.
40 Creates Duplicate Key
Попытка внести в файл оператором ADD или PUT запись, в которой значение ключевого поля совпадает со значением этого поля в другой, уже находящейся в файле записи, причем для файла определено, что дублирование ключевых полей недопустимо.
43 Record Is Already Held
Попытка выполнить оператор HOLD применительно к некоторой записи не удалась из-за того, что другой пользователь уже заблокировал эту запись.
45 Invalid Filename
Имя файла не соответствует правилам образования имен файлов в DOS.
46 Key File Must Be Rebuilt
Возникло нарушение структуры файла ключей, природа которого неясна, и требуется повторное построение ключевого файла оператором BUILD.
47 Invalid Record Declaration
Структура файла данных на диске не соответствует структуре, объявленной в программе. Обычно, такая ситуация возникает из-за того, что поменяли описание файла в Словаре Данных и еще не преобразовали сам файл данных в новый формат. Смотрите Как обрабатывать
ERROR 47.
48 Unable To Log Transaction
Файл протокола транзакции или
pre-image файл нельзя записать на диск. Обычно возникает вследствие недостатка свободного места на диске или у пользователя нет соответствующих прав в сетевой среде.
52 File Already Open
Попытка открыть файл, который данный пользователь уже открыл.
54 No Create Attribute
Попытка выполнить процедуру CREATE применительно к файлу, в объявлении которого отсутствует атрибут CREATE.
55 File Must Be Shared
Попытка открыть для эксклюзивного доступа файл, который должен иметь общий доступ. (Ошибка, поддерживаемая для совместимости с предыдущими версиями
Clarion, в дальнейшем использоваться не будет)
56 LOGOUT Already Active
Попытка выполнить второй оператор LOGOUT, тогда как транзакция еще не закончилась.
57 Invalid Memo File
Возникло нарушение структуры файла memo-полей, природа которого неясна. Для файлов данных Clarion причиной может быть нарушение сигнатуры .MEM файла или указателей на memo-поле в файле данных, которое свидетельствует о “рассогласовании” ( обычно из-за копирования файлов с одного места в другое и копирования несоответствующего .MEM файла).
63 Exclusive Access Required
Попытка выполнить оператор BUILD(файл), BUILD(ключ), EMPTY(файл) или PACK(файл), в то время
как файл не открыт в режиме исключительного доступа.
64 Sharing Violation
Попытка выполнить некое действие с файлом, для которого требуется, чтобы файл был открыт в режиме совместного использования.
65 Unable To ROLLBACK Transaction
Попытка выполнить оператор ROLLBACK транзакции закончилась по неизвестной причине неудачно.
73 Memo File Missing
Попытка открыть файл, в объявлении которого имеется memo-поле, а файл, содержащий данные memo-полей отсутствует.
75 Invalid Field Type Descriptor
Поврежден описатель типа поля или в операторе GET(очередь
,имя) употреблено имя несуществующей переменной, или описание файла не соответствует файловому драйверу. Например, попытка определить поле LONG в файле xBase не имеющего соответствующего поля MEMO.
76 Invalid Index String
Строка, указанная в операторе BUILD(Динамический индекс,строка) имеет неправильный формат.
77 Unable To Access Index
Попытка прочитать запись на основе динамического индекса не удалась из-за того, не найден нужный динамический индекс.
78 Invalid Number Of Parameters
В операторе
EVALUATE в процедуру передается неверное число параметров. Примечание: с версии Clarion 6.2 (9047), теперь драйвер SQL добавляет больше информации в лог-файл, поясняющей причину возникновения ERRORCODE 78.
79 Unsupported Data Type In File
Файловый драйвер обнаружил в файле поле, тип которого не поддерживается файловой системой данного драйвера. Обычно это неподдерживаемая форма оператора (отличающаяся параметрами), который вообще-то поддерживается.
80 Unsupported File Driver Function
Файловый драйвер обнаружил недопустимый оператор доступа к файлу. Обычно это неподдерживаемая форма оператора (отличающаяся параметрами), который вообще-то поддерживается.
81 Unknown Error Posted
Файловый драйвер обнаружил некую ошибку в файловой системе, о которой он не может получить более детальной информации.
88 Invalid Key Length
Попытка создать ключ или индекс по полю длиннее 245 символов для файла с драйвером Clarion. Другие файловые драйверы также могут возвращать эту ошибку, если длина ключа превышает лимит, поддерживаемый системным файловым драйвером.
89 Record Changed By Another Station
При выполнении в сетевой операционной среде оператора WATCH обнаружено, что запись в файле на диске, которую нужно изменить в сетевой операционной среде, не соответствует первоначальной версии записи.
90 File Driver Error
Файловый драйвер обнаружил некую ошибку при работе с файловой системой. Для уточнения природы этой ошибки можно использовать процедуры FILEERRORCODE и FILEERROR.
91 No Logout Active
Оператор
COMMIT или ROLLBACK был установлен вне структуры транзакции (не был выполнен оператор LOGOUT).
92 BUILD in Progress
Ранее был выполнен оператор BUILD и было установлено свойство
PROP:ProgressEvents для генерирования событий. Оператор, генерирующий эту ошибку, не предназначен для работы во время выполнения BUILD.
93 BUILD Cancelled
Пользователь отменил выполнение BUILD. Эта ошибка появляется при посылке события
EVENT:BuildDone.
94 Record Limit Exceeded
Превышен лимит числа записей для целевого файла. Это значение зависит от файлового драйвера и может быть получено во время любой попытки модифицировать файл, лимит записей в котором превышен.
97 Stream Error
Используется во время обработки RTF.
100 Trigger Error
Эта ошибки возникает каждый раз, когда зарегистрированный метод файла возвращает ЛОЖЬ. Смотри
CALLBACK.
1010 Illegal Expression
Процедура
EVALUATE обнаружила синтаксическую ошибку в выражении.
1011 Variable Not Found
Функция EVALUATE не нашла переменную, использованную в выражении. Сначала нужно выполнить оператор BIND, чтобы указать все переменные, видимые EVALUATE.
Ошибки времени выполнения, не обнаруживаемые в программе
Приведенные далее ошибки, возникающие во время выполнения программы, нельзя обнаружить с помощью процедур ERRORCODE и ERROR.
ACCEPT loop requires a window
Для цикла ACCEPT нет соответствующего ему окна.
ENDPAGE must only be called for reports
Попытка выполнить оператор ENDPAGE, когда нет активной структуры REPORT.
Event posted to a report control
Попытка сгенерировать событие применительно к объекту в структуре REPORT.
Metafile record too large in report
Метафайл .WMF слишком велик, чтобы его можно было напечатать в отчете.
PRINT must only be called for reports
Попытка напечатать структуру, которая не является частью структуры REPORT.
Report is already open
Попытка открыть отчет, который уже открыт и еще не закрыт.
Too many keystrokes PRESSed
Параметр оператора
PRESS содержит слишком много символов.
Unable to complete operation (system is MODAL)
Попытка выполнить недопустимое действие в программе, которая уже раскрыла модальное окно
.
Unable to create control (system is MODAL)
Попытка создать объект оператором CREATE в программе, открывшей окно с атрибутом MODAL.
Unable to open APPLICATION (APPLICATION already active)
Попытка открыть окно APPLICATION в программе, в которой уже открыто окно MDI.
Unable to open APPLICATION (system is MODAL)
Попытка открыть окно
APPLICATION в программе, в которой уже открыто окно с атрибутом MODAL.
Unable to open APPLICATION
Неудачная
попытка открыть окно APPLICATION.
Unable to open MDI window (No APPLICATION active)
Попытка открыть окно
MDI в программе, которая еще не открыла окно APPLICATION с атрибутом MDI.
Unable to open MDI window (system is MODAL)
Попытка открыть окно
MDI в программе, которая уже открыла окно с атрибутомMODAL.
Unable to open MDI window on APPLICATION's thread
Попытка открыть окно MDI в том же самом процессе, в котором открыто окно APPLICATION с атрибутом MDI.
Unable to open MDI WINDOW
Неудачная попытка открыть окно с атрибутом M
DI .
Unable to open WINDOW
Неудачная
попытка открыть окно .
Unable to process ACCEPT (system is MODAL)
Попытка обработать недопустимую операцию в программе, которая уже открыла модальное окно или обработка модального события.
Unexpected error opening printer device
Неожиданная ошибка во время открытия принтера.
Window is already open
Попытка открыть уже открытое окно.
Window is not open
Попытка выполнить некое действие, которое требует открытия окна. Обычно при присвоении значения свойству.
WSLSTG 755
Указывает на неудачную попытку операционной системы запросить дополнительную память. Возможно слишком много объектов в структуре окна или отчета. Также, убедитесь, что
Clarion не запущен в своем собственной области памяти. Возможно ограничен размер виртуальной памяти операционной системы.
Компилятор выдает сообщение об ошибке точно в том месте исходного текста программы, в котором обнаружил нарушение синтаксиса. Поэтому, неправильная конструкция находится или справа от этого места, или где-то а предшествующем тексте. Для большинства сообщений об ошибках неправильная конструкция находится справа от места обнаружения, но некоторые сообщения относятся к ошибкам, причина которых лежит гораздо раньше того момента, когда ошибка будет обнаружена компилятором. Для обнаружения таких ошибок наряду с пониманием того, что пытался сообщить вам компилятор, нужна еще некоторая “исследовательская” работа.
Расшифровка сообщений об ошибке, выдаваемых компилятором, для точного определения ошибки, которую следует исправить, может потребовать некоторых умственных усилий. Одна (относительно небольшая) ошибка может породить “лавинный эффект”; - длинный список сообщений об ошибках, которые все имеют одну причину. Как правило в этом случае и возникает ситуация, когда в одном модуле исходного текста появляется длинный список сообщений об ошибках. Чтобы устранить такую ситуацию, нужно исправить только первую ошибку, а затем перекомпилировать и посмотреть, сколько ошибок останется (довольно часто бывает, что не одной). Если же имеется только пара ошибок, далеко друг от друга отстоящих в тексте программы, то похоже, что это независимые ошибки и придется все их найти и исправить перед повторной компиляцией.
Приведенные далее сообщения выдаются, когда компилятор обнаружил особую синтаксическую ошибку и пытается точно указать ее причину, чтобы вы могли ее исправить.
В некоторых из приведенных далее сообщений содержится шаблон
"%V" . Вместо него компилятор подставляет точное имя, указывая, что произошло с этим именем, тем самым уточняя место возникновения и причину ошибки.! introduces a comment
Это типичная ошибка программистов на С. Если написать IF A != 1 THEN вы получите такое сообщение.
Actual value parameter cannot be array
Передаваемый параметр не должен быть массивом.
ADDRESS parameter ambiguous
ADDRESS(MyLabel),
где MyLabel представляет собой имя и процедуры и имя элемента данных.
All fields must be declared before JOINs
В структуре VIEW любой оператор JOIN должен идти после всех операторов PROJECT.
Ambiguous label
Неоднозначность в синтаксисе уточнения имени. Например:
G GROUP
S:T SHORT !
Обращаются как к G:S:TEND
G:S GROUP
T SHORT !
Обращаются как к G:S:TEND
CODE
G:S:T = 7 !
Что здесь имеется ввиду?
Array too big
В 16-ти разрядных приложениях размер массивов ограничен 64 К.
Attribute parameter must be QUEUE, QUEUE field or constant string
Параметр должен быть меткой объявленной ранее структуры QUEUE, поля в структуре QUEUE или строковой константой.
Attribute requires more parameters
Атрибуту нужно передавать все необходимые параметры.
Attribute string must be constant
Параметр должен быть строковой константой, а не меткой переменной.
Attribute variable must be global
Данный параметр должен быть переменной, объявленной в программном модуле, как глобальная переменная.
Attribute variable must have string type
Данный параметр должен быть переменной типа STRING, CSTRING или PSTRING.
BREAK structure must enclose DETAIL
Внутри вложенной структуры BREAK (на самом нижнем уровне) должна быть объявлена хотя бы одна структура DETAIL.
Calling function as procedure
Предупреждение о том, что к процедуре, возвращающей значение и не имеющей атрибута
PROC обращаются как процедуре, не возвращающей значение и возвращаемое значение будет потеряно.Cannot call procedure as function
К процедуре, которая не возвращает значение, нельзя обращаться как к источнику в операторе присваивания или как параметр.
Cannot declare KEY in a VIEW
В структуре
VIEW нельзя объявлять ключ.
Cannot EXIT from here
Оператор EXIT может содержаться только внутри локальной подпрограммы (ROUTINE ).
Cannot GOTO into ROUTINE
Метка перехода в операторе GOTO должна быть меткой исполняемого оператора в той же процедуре или локальной подпрограмме, где находится оператор GOTO и не может быть именем локальной подпрограммы.
Cannot have default parameter here
Для целочисленного параметра, передаваемого значением, можно передавать значение по умолчанию, но совсем опускать значение нельзя.
Cannot have initial values with OVER
Переменная, объявленная с атрибутом OVER не может иметь к тому же начальное значение.
Cannot have statement here
Это сообщение выдается, когда компилятор видит, что вы попытались определить исполняемый оператор внутри раздела глобальных данных.
Cannot initialize variable reference
Указанная переменная не может иметь начального значения.
Cannot return CSTRING from CLARION function
Для процедур, написанных на языке Clarion, CSTRING является недопустимым типом возвращаемого значения (значения такого типа могут возвращать только функции, написанные на других языках).
Cannot RETURN value from procedure
Оператор RETURN с параметром возвращаемое значение может содержаться только в процедур, прототипированных чтобы возвращать значение.
CLARION function cannot use RAW or NAME
Для процедур, написанных на языке Clarion, такие атрибуты недопустимы (только функции, написанные на других языках могут сопровождаться такими атрибутами).
DECIMAL has too many places
Переменные DECIMAL и PDECIMAL могут содержать только 30 десятичных разрядов и и дробная часть не может превышать общую длину.
DECIMAL too long
Переменные DECIMAL и PDECIMAL могут иметь длину максимум 31.
Declaration not valid in FILE structure
В структуре FILE нельзя объявлять такие данные.
Declaration too big
В 16-ти разрядном приложении компилятор обнаружил PSTRING > 255 или MEMO > 64K и т.д.
DLL attribute requires EXTERNAL attribute
Атрибут DLL предполагает наличие атрибута EXTERNAL в 32-х разрядных программах.
Dynamic INDEX must be empty
Попытка использовать форму с двумя параметрами оператора BUILD применительно к ключу или индексу, объявленному с полями-компонентами.
Embedded OVER must name field in same structure
Параметр атрибута OVER должен быть меткой ранее объявленной переменной в той же самой структуре
.
ENCRYPT attribute requires OWNER
Атрибуты
ENCRYPT и OWNER работают совместно.
Entity-parameter cannot be an array
Нельзя передавать массив параметров-объектов (FILE, QUEUE, и т.д.).
Expected: %V
Это наиболее общая ошибка. Компилятор предполагает, что далее будет идти некий синтаксический элемент (один из элементов подставляемых в сообщение вместо шаблона %V), но вместо этого обнаруживает в исходном тексте нечто, не соответствующее синтаксическому контексту.
Expression cannot be picture
Попытка использовать мнемоническую метку соответствия шаблона там, где применение шаблона недопустимо.
Expression cannot have conditional type
Выражение
не дает числового значения. Например, MyValue = A > B неверно.
Expression must be constant
В данном выражении использование переменной недопустимо.
Field equate label not defined: %V
Указанное мнемоническое имя соответствия экранного поля не было предварительно объявлено.
Field not found
При использовании синтаксиса уточнения имен присутствует ссылка на поле, не являющееся частью порождающего объекта. Например, указание MyGroup.SomeField, в котором SomeField не объявлено в MyGroup.
Field not found in parent FILE
В операторе JOIN должны объявляться все поля, связывающие главный и вторичный файлы.
Field requires (more) subscripts
Ссылка на элемент многомерного массива должна содержать индекс для каждого измерения.
FILE must have DRIVER attribute
Для того, чтобы определить файловую систему, для которой объявляется файл, в объявлении файла обязателен атрибут DRIVER.
FILE must have RECORD structure
Недопустимо объявлять структуру FILE, в которой нет структуры RECORD.
FILEs must have same DRIVER attribute
Все файлы, упомянутые в операторе LOGOUT должны использовать одну и ту же файловую систему.
Function did not return a result
Предупреждение о том, что реализация процедуры, прототипированная возвращать результат, результат не возвращает.
Function result is not of correct type
Оператор RETURN должен возвращать значение согласующееся с типом возвращаемого значения, указанным в прототипе в структуре MAP.
Group too big
В 16-ти разрядном приложении размер групп ограничен 64K.
Ignoring EQUATE redefinition: %V
Сообщение о том, что указанное мнемоническое имя соответствия игнорируется. Это действительная ошибка переопределения имени, при этом основное определение остается в силе.
Illegal array assignment
При присвоении значения элементу массива и должен указываться отдельный элемент, а не целый массив.
Illegal character
Недопустимый лексический элемент. Например код ASCII 255 встреченный в исходном тексте.
Illegal data type: %V
Указанный тип данных не соответствует структуре в которой он находится.
Illegal key component
В ключе имеется компонент недопустимого типа.
Illegal nesting of window controls
В структуру OPTION помещен экранный объект, не являющийся кнопкой RADIO или в структуру SHEET помещен объект, не являющийся объектом типа TAB.
Illegal parameter for LIKE
Неправильный параметр в объявлении LIKE. Например, LIKE(7).
Illegal parameter type for STRING
Неправильный
параметр в объявлении STRING. Например, STRING(MyVar), где MyVar – метка переменной и не EQUATE.
Illegal reference assignment
Значение переменной-указателя можно присвоить только другой переменной-указателю такого же типа или метке переменной типа на которую он указывает.
Illegal return type or attribute
Прототип содержит в качестве возвращаемого недопустимый тип данных (такой как *CSTRING).
Illegal target for DO
Параметром оператора DO должно быть имя локальной подпрограммы ROUTINE).
Illegal target for GOTO
Метка перехода в операторе GOTO должна быть меткой исполняемого ператора в той же процедуре или локальной подпрограмме, где находится оператор GOTO и не может быть именем локальной подпрограммы.
INCLUDE invalid, expected: %V
Параметр оператора INCLUDE должен быть правилам сформированной строкой. В частности, недопустимо преобразование типа, таким образом неправилен оператор
INCLUDE('MyFile'&MyValue).INCLUDE misplaced
Оператор INCLUDE должен следовать за разделителем строк или точкой с запятой (за которой могут идти несколько пробелов).
INCLUDE nested too deep
Incompatible assignment types
Попытка присвоения данных несовместимых типов.
Incorrect procedure profile
Попытка в качестве параметра-процедуры передать процедуру, не соответствующую прототипу.
Indices must be constant
Попытка сделать USE-переменную, которая представляет собой массив с переменными индексами.
Indistinguishable new prototype: %V
Имеется прототип, который компилятор не в состоянии отличить от предыдущего прототипа, используя правила перегрузки функций.
Integer expression expected
Выражение должно давать в результате целочисленное значение.
Invalid BREAK statement
Оператор BREAK, который пытается прервать несуществующий цикл или находится вне структуры LOOP или ACCEPT
.
Invalid CYCLE statement
Invalid data declaration attribute
Атрибут, который не соответствует данному объявлению данных.
Invalid data type for value parameter
Тип данных указанные в прототипе в структуре MAP не может предаваться по значению и должен передаваться “адресом”. Например, чтобы передать параметр типа CSTRING в процедуру на языке Clarion он должен прототипироваться только как *CSTRING.
Invalid FILE attribute
Атрибут, который не соответствует объявлению файла.
Invalid first parameter of ADD
Первый
параметр оператора ADD неверен.
Invalid first parameter of FREE
Первый параметр оператора FREE неверен.
Invalid first parameter of NEXT
Первый
параметр оператора NEXT неверен.
Invalid first parameter of PUT
Первый
параметр оператора PUT неверен.
Invalid GROUP/QUEUE/RECORD attribute
Атрибут не соответствует объявлению
GROUP, QUEUE, или RECORD.
Invalid KEY/INDEX attribute
Атрибут не соответствует объявлению KEY или INDEX.
Invalid label
Метка, в которой содержатся символы отличные от букв, цифр, знака подчеркивания (_), и двоеточия (:), или начинающаяся не с буквы или символа подчеркивания.
Invalid LOOP variable
Попытка использовать недопустимый тип данных (DATE, TIME, STRING, и т.д.) в качестве переменной цикла.
Invalid MEMBER statement
Параметр оператора MEMBER не является строковой константой или не указывает на программный модуль текущего проекта.
Invalid method invocation syntax
Попытка использовать синтаксис {} при обращении к методу с применением объекта BLOB или FILE.
Invalid number
Требуется число, например в качестве коэффициента повторения в строковой константе ({}).
Invalid OMIT expression
Параметр оператора OMIT неверен.
Invalid parameters for attribute
Атрибуту, который предполагает наличие параметра, нужно передавать правильный параметр.
Invalid picture token
Шаблон содержит несоответствующие символы.
Invalid printer control token
Оператор PRINT содержит символы управления принтером.
Invalid QUEUE/RECORD attribute
Атрибут, который не соответствует объявлению
QUEUE или RECORD.
Invalid SIZE parameter
SIZE(ерунда+еще_что-то)
Invalid string (misused <...> or {...} )
В строковой константе содержится дна открывающая скобка (< или {) и нет соответствующей закрывающей (> или }). Если они являются частью строки, то такие символы должны представляться удвоением (<< или {{).
Invalid structure as first parameter
Первый
параметр оператора неверен.
Invalid structure within property syntax
Структура, которая недопустима в операторе присвоения значения свойству.
Invalid USE attribute parameter
Параметр
не соответствует атрибуту USE.
Invalid use of PRIVATE data
Попытка обращения к личным данным из вне модуля класса.
Invalid use of PRIVATE procedure
Попытка обращения к личному методу из вне модуля класса.
Invalid variable data parameter type
При передаче параметров “по адресу”, нужно передавать данные того типа, который указан в прототипе в структуре MAP.
Invalid WINDOW control
Объект, которые не допустим в структуре WINDOW.
ISL error: %V
Свяжитесь со Службой технической поддержки и сообщите подробности, связанные с появлением этого сообщения.
KEY must have components
Нельзя объявить ключ, не указав поля-компоненты, которые устанавливают порядок сортировки.
Label duplicated, second used: %V
Указанная мнемоническая метка соответствия объявлялась несколько раз в пределах одного и того же модуля и только последняя использована в списке мнемонических меток соответствия, допустимых для использования в исполняемых операторах в данном модуле. Исправляется с помощью третьего параметра атрибута USE.
Label in prototype not defined: %V
Использование прототипа, в котором один из типов данных еще не определен.
Label not defined: %V
Указанная метка не была предварительно объявлена.
Mis-placed string slice operator
Часть строки которая не является последним измерением массива. Например
, MyStringArray[3:4,5].
Missing procedure definition: %V
Указанная процедура не представлена прототипом в структуре MAP.
Missing virtual function
Ошибка
компилятора.
Must be dimensioned variable
Здесь
должен указываться массив.
Must be field of a FILE or VIEW
Здесь должно быть поле из реального или виртуального файла. Например, NULL(LocalVariable) даст такое сообщение об ошибке.
Must be FILE or KEY
Параметр оператора JOIN не является меткой структуры FILE или KEY.
Must be reference variable
В DISPOSE можно использовать только переменную-указатель.
Must be variable
Здесь должна быть метка предварительно объявленной переменной.
Must have constant string parameter
Данные параметр должен быть строковой константой, но не переменной.
Must RETURN value from function
Если в структуре MAP объявлен прототип процедуры с возвращением значения, то ему должен соответствовать оператор
RETURN, возвращающий значение.Must specify DECIMAL size
В объявлении переменной типа DECIMAL или PDECIMAL должно быть указано максимальное число хранимых цифр.
Must specify identifier
Требуется, но отсутствует идентификатор.
Must specify print-structure
Оператором PRINT может печататься только структура входящая в структуру REPORT.
No matching prototype available
Попытка определить процедуру, для которой нет соответствующего прототипа в структуре MAP или CLASS.
Not valid inside structure
В структуре имеются данные несоответствующего типа.
OMIT cannot be nested
Оператор OMIT не может быть вложенным.
OMIT misplaced
Перед оператором OMIT может быть разделитель строк или точка с запятой (после которой возможно некоторое количество пробелов).
OMIT not terminated: %V
Указанный в операторе OMIT параметр не найден до конца исходного модуля.
Order is MENUBAR, TOOLBAR, Controls
Структура MENUBAR должна предшествовать структуре TOOLBAR, а структура TOOLBAR должна предшествовать объявлениям объектов в WINDOW или APPLICATION.
OVER must name variable
Параметр атрибута OVER должен быть меткой ранее объявленной переменной.
OVER must not be larger than target variable
Параметр атрибута OVER должен быть меткой ранее объявленной переменной, которая больше или равна по длине переменной, которая объявляется поверх нее.
OVER not allowed with STATIC or THREAD
Переменная, объявленная с атрибутом OVER не может иметь атрибут STATIC или THREAD (их должна иметь базовая переменная).
Parameter cannot be omitted
При обращении в процедуру или функцию должны передаваться все параметры, для которых в прототипе не указано, что они могут опускаться.
Parameter kind does not match
При передаче параметра “по адресу” должны передаваться данные того типа, который был указан в прототипе в структуре MAP.
Parameter must be picture
Здесь
должен быть шаблон отображения.
Parameter must be procedure label
Здесь должно быть имя процедуры.
Parameter must be report DETAIL label
Оператором PRINT может печататься только структура
DETAIL, входящая в структуру REPORT.
Parameters must have labels
Попытка определить процедуру, не используя имен параметров.
Parameter type label ambiguous (CODE or DATA)
У данных и процедуры может совпадать имя, но в этом случае его нельзя использовать в прототипе процедуры.
PROCEDURE cannot have return type
Если в структуре MAP в прототипе отсутствует возвращаемое значение, то этому прототипу должна соответствовать процедура.
Procedure doesn't belong to module: %V
Попытка объявить процедуру, прототип которой определен как принадлежащий другому модулю.
Procedure in parent CLASS has VIRTUAL mismatch
Для виртуального метода требуется атрибут VIRTUAL в прототипах и в родительском классе и в порожденном классе.
Prototype is: %V
Попытка определить процедуру с неправильным прототипом.
QUEUE/RECORD not valid in GROUP
Структура GROUP не может содержать структуры QUEUE или RECORD.
Redefining system intrinsic: %V
Предупреждение о том, что указанная процедура (часть исходного кода) имеет имя совпадающее с именем библиотечной процедуры или функции в библиотеке исполняющей системы Clarion, и что вместо встроенной процедуры будет происходить обращение к вашей процедуре.
Routine label duplicated
Метка оператора ROUTINE уже использовалась ранее в другом операторе.
Routine not defined: %V
Обозначенная локальная подпрограмма (ROUTINE) не существует.
SECTION duplicated: %V
Указанная секция имеется во включаемом оператором INCLUDE файле в двух экземплярах.
SECTION not found: %V
Указанная секция во включаемом оператором INCLUDE файле отсутствует.
Statement label duplicated
Две строки исполняемых операторов имеют одинаковую метку.
Statement must have label
Оператор
(такой как ROUTINE или PROCEDURE) должен иметь метку.
String not terminated
У строковой константы отсутствует заключительная кавычка
(').
Subscript out of range
Попытка указать элемент массива, один или несколько индексов которого выходят за допустимые границы.
Too few indices
Это ссылка на элемент массива, который имеет несколько измерений и для него нужно указывать индексы по всем измерениям.
Too few parameters
При обращении в процедуру должны передаваться все параметры, для которых в прототипе не указано, что они могут опускаться.
Too many indices
В ссылке на элемент массива указано индексов больше, чем количество измерений массива.
Too many parameters
При обращении к процедуре или функции не может передаваться параметров больше чем указано в прототипе.
Unable to verify validity of OVER attribute
Предупреждение о том, что вы объявляете переменную поверх принимаемого параметра и во время выполнения типы данных могут не соответствовать.
Unknown attribute: %V
Указанный атрибут не принят в языке Clarion.
Unknown function label
Процедура не представлена прототипом в структуре MAP.
Unknown identifier
Имя предварительно не объявлено.
Unknown identifier: %V
Указанный идентификатор предварительно не объявлен.
Unknown key component: %V
Указанный компонент ключа не существует в структуре FILE.
Unknown procedure label
Процедура не представлена прототипом в структуре MAP.
UNTIL/WHILE illegal here
Попытка использовать UNTIL или WHILE для завершения уже завершенного цикла.
Value-parameter cannot be an array
Нельзя передавать массив как параметр-значение.
Value requires (more) subscripts
Это ссылка на массив, который имеет несколько измерений, поэтому нужно указать индексы по всем измерениям.
Variable expected
Здесь должна быть метка предварительно объявленной переменной.
Variable-size must be constant
В объявлении переменной в качестве параметра, определяющего длину, должно указываться константное выражение.
VIRTUAL illegal outside of CLASS structure
Атрибут VIRTUAL можно использовать только в прототипах в структуре CLASS, но не в MAP.
Wrong number of parameters
При обращении в процедуру должны передаваться все параметры, для которых в прототипе не указано, что они могут опускаться.
Wrong number of subscripts
Попытка обратиться к многомерному массиву, не указав индексы по каждому измерению. Например:
MyShort SHORT,DIM(8,2) !Массив включающий два измерения
CODE
MyValue = MyShort[7] !
Неправильное число индексовОшибки неопределенного характера
Существуют ошибки которые никогда не должны возникать, и ключ к причинам которых компилятор пытается дать разработчикам компилятора. Сообщите о проблеме в фирму
SoftVelocity и передайте файл исходного текста, при компиляции которого возникла ошибочная ситуация.
Inconsistent scanner initialization
Unknown operator
Unknown expression type
Unknown expression kind
Unknown variable context
Unknown parameter kind
Unknown assignment operator
Unknown variable type
Unknown case type
Unknown equate type
Unknown string kind
Unknown picture type
Unknown descriptor type
Unknown initializer type
Unknown designator kind
Unknown structure field
Unknown formal entity
Type descriptor not static
Unknown clear type
Unknown simple formal type
Out of attribute space
Unknown label/routine
Unknown special identifier
Value not static
Unknown static label
Unknown screen structure kind
Corrupt pragma string
Old symbol non-NIL
Not implemented yet
String not CCST