Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.28;
Скачать: CL | DM;

Вниз

Фильтрация, проблема.   Найти похожие ветки 

 
Shram   (2004-02-25 14:33) [0]

Пытаюсь отфильтровать по имени пишу следущий фильтр :
table1.filter:="name=""Александр";
Table1.filtered:=true;

И когда в программе запускю этот фильтр выдает ошибку: "Unterminated string constant"


 
Zacho ©   (2004-02-25 14:35) [1]

Естественно. Вообще-то это даже компилироваться не должно. Правильно так:
table1.filter:="name=""Александр""";


 
Shram   (2004-02-25 14:38) [2]

Zacho ©   (25.02.04 14:35) [1]

Спасибо, а зачем эти две последние ковычки нужны?


 
Zacho ©   (2004-02-25 14:41) [3]

По правилам синтаксиса Паскаля.


 
Shram   (2004-02-25 14:43) [4]

Блин у меня в книге вообще написано Name="Вася"


 
Zacho ©   (2004-02-25 14:47) [5]

Если ты это заносишь в Filter в design-time, в Object Inspector"е - то так и пиши. А если в коде пытаешься написать строку с кавычками, то каждую кавычку надо удваивать. Или, например, использовать ф-цию AnsiQuotedStr. Да и еще способ есть :)


 
Anatoly Podgoretsky ©   (2004-02-25 14:53) [6]

Zacho ©   (25.02.04 14:35) [1]
Нет ругань будет в рантайм, поскольку правилам Паскаля строка соответвтвует, а вот правилам фильтра нет, будет как раз строка с одним апострофом, а надо два с обеиъ сторон константы "Александр"

Shram   (25.02.04 14:43) [4]
Не приводи ссылку вне контекста, явно это в инспекторе объектов, в том контексте правильно, а в вопросе это внутри программы.


 
Anatoly Podgoretsky ©   (2004-02-25 14:54) [7]

Zacho ©   (25.02.04 14:35) [1]
Нет ругань будет в рантайм, поскольку правилам Паскаля строка соответвтвует, а вот правилам фильтра нет, будет как раз строка с одним апострофом, а надо два с обеиъ сторон константы "Александр"

Shram   (25.02.04 14:43) [4]
Не приводи ссылку вне контекста, явно это в инспекторе объектов, в том контексте правильно, а в вопросе это внутри программы.


 
Zacho ©   (2004-02-25 14:56) [8]


> Anatoly Podgoretsky ©   (25.02.04 14:54) [7]

Ага, соответствует, что-то я проглючил малость.. :(


 
Anatoly Podgoretsky ©   (2004-02-25 15:03) [9]

Стандартный взгляд на проблему :-)


 
Shram   (2004-02-25 15:29) [10]

Уважаемые, помогите, снова возникла проблема, теперь пытаюсь отфильтровать по двум значениям по имени и по дате:
Table1.Filter:="Name =""Петя""""and mydate>="+ quotedstr(datetostr(date));

Запускаю фильтр, выдает следующуб ошибку: "Arithmetic in filter expressions not supported"


 
DenK_vrtz ©   (2004-02-25 15:32) [11]

а не пора ли начать использовать OnFilterRecord


 
Vlad40   (2004-02-25 16:11) [12]

А почему вдруг у тебя после Петя стоит 4 кавычки. Проблема в этом


 
Guest_2004   (2004-02-25 16:17) [13]

Может чтоб не путаться с количеством кавычек использовать #39?


 
Vlad40   (2004-02-25 16:25) [14]

Насколько я понимаю, проблема тут не в том, что сложно подсчитать кавычки, а в том, сколько их должно быть. Кстати, неплохо бы еще перед and пробел добавить, короче так:

Table1.Filter:="Name =""Петя"" and mydate>="+ quotedstr(datetostr(date));


 
Vlad40   (2004-02-25 16:27) [15]

Хотя работает и без пробела :-)


 
Shram   (2004-02-25 16:39) [16]

Всем спасибо...



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

Текущий архив: 2004.03.28;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.041 c
7-1071935855
саша
2003-12-20 18:57
2004.03.28
осциллограф на базе компа


1-1079013992
Thick
2004-03-11 17:06
2004.03.28
Компонент в RichEdit


6-1074234534
noname
2004-01-16 09:28
2004.03.28
Как максимально быстро передать поток по сети?


1-1078652605
Max
2004-03-07 12:43
2004.03.28
Заполнение и очистка TList


11-1057823898
Jack Ben
2003-07-10 11:58
2004.03.28
latest KOL and Delphi 3