Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Вниз

Опять   Найти похожие ветки 

 
Bakch   (2002-11-28 09:01) [0]

Доброе утро всем!
Определено множество имен таблиц:
type
TNameTable = (Table1, Table2.....TableN);
TNameTableSet = set of TNameTable;
var
List_of_Name:TNameTableSet;
Делаю проверку
if not (MTable.TableName in List_of_Name) then
Получаю "Incompatible types WideStrings and TNameTable".
Как же покончить с этим инкомпетибл.


 
Sima   (2002-11-28 09:35) [1]

Ну дак а ты что хотел?
Тип TNameTableSet - это Byte (т.к. set), а TableName - это строка
ну и как приказываешь делфи это сравнивать?

А типа использовать массив строк, в которых имена хранятся не пробовал? можно объявить константу и в ней искать


 
xenon   (2002-11-28 09:38) [2]

type
TNameTable = (Table1, Table2.....TableN);
TNameTableSet = set of TNameTable;
Это не множество имен таблиц, а множество целочисленных констант.
(хотя это не совсем так)
Выход - создай массив из названий таблиц. И в цикле с ним сравнивай. Или используй TStringList.


 
Victor_Cr   (2002-11-28 10:59) [3]

Перечисляемый тип для объектов (например TTable), это очень странная структура. Несовместимость очевидна множество состоящее из таблиц (т.е. объектов) не может сравниваться с строковыми переменными. Убери .TableName и получишь синтаксически правильную структуру.
Но я не могу понять зачем тебе это нужно. Для этого есть и другие методы, например присваивай своим таблицам уникальные идентификаторы, а их уже загоняй в множество (Инкремируешь свойство Tag у таблиц).


 
Victor_Cr   (2002-11-28 11:06) [4]

Черт, я голодный и тупой от этого. Извени первый абзац отпадает.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
6-51870
boolean
2002-10-07 13:40
2002.12.16
Help


1-51755
Berg
2002-12-04 15:51
2002.12.16
Не запускается HELP


1-51659
Adrian_Copil_Minune
2002-12-04 12:15
2002.12.16
Очередь


4-51993
Semion
2002-10-23 06:28
2002.12.16
запись в EXE


3-51636
Vacula
2002-11-27 19:26
2002.12.16
ADO+Access





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский