Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / sql поиск / 9 сообщений из 9, страница 1 из 1
14.05.2013, 19:17
    #38257246
kirsan19041994
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
Народ, помогите разобраться в коде. Нашел его на вашем форуме, но плохо понимаю некоторые моменты. Объясните пожалуйста что это и с чем его едят
ls_text
s = 'pos(lower(string('+is_fltname+')),~''+ls_text+'~')>0'

сам код

if "фамилия" = '' then return //имя поля по которому осуществляется сортировка

ls_text = lower(sle_1.text)
if ls_text = '' then
dw_1.setfilter('')
dw_1.filter()
return
end if

s = 'pos(lower(string('+is_fltname+')),~''+ls_text+'~')>0'

dw_1.setfilter(s)
dw_1.filter()
...
Рейтинг: 0 / 0
14.05.2013, 20:14
    #38257288
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
kirsan19041994pos(lower(string('+is_fltname+')),~''+ls_text+'~')>0
Этот фильтр оставляет только те строки DW, в которых указанное поле (имя которого в is_fltname) содержит ls_text как подстроку, без учета регистра.
...~''+ls_text+'~'... - берет содержимое ls_text в кавычки
string() - переводит поле в строку (на случай нестроковых полей)
lower() - приводит к нижнему регистру
pos() - ищет подстроку, возвращает 0 если не находит
...
Рейтинг: 0 / 0
14.05.2013, 21:01
    #38257324
kirsan19041994
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
в соседнем форуме посоветовали этот код не использовать.
можете подсказать как исправить ошибку в данном коде?

IF sle_1.Text <> '' THEN
FILTER = "universities_name_of_university ='" + sle_1.Text + "'"
dw_1.SetFilter(FILTER)
dw_1.FILTER()
END IF

пишет undefined variable filter
...
Рейтинг: 0 / 0
14.05.2013, 22:35
    #38257383
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
kirsan19041994,

Объявите строковую переменную filter перед ее использованием.
Код: sql
1.
string filter



ЗЫ. Вы бы для начала основы языка выучили. Не думайте что вам тут все и дальше будут разжевывать.
...
Рейтинг: 0 / 0
16.05.2013, 21:33
    #38261082
kirsan19041994
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
Подскажите, как вернуть все строки в DW. Если в строке поиска ничего не написано, то надо отобразить всю таблицу

IF sle_1.Text = ' ' THEN показать всю таблицу
понимаю, что вопрос нубский, но реально не могу понять что надо написать
...
Рейтинг: 0 / 0
16.05.2013, 22:12
    #38261112
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
Ответ - в вашем первом сообщении

kirsan19041994if ls_text = '' then
dw_1.setfilter('')
dw_1.filter()
return
end if
...
Рейтинг: 0 / 0
16.05.2013, 22:15
    #38261114
kirsan19041994
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
в первую очередь сделал так - не работает. компилируется без ошибок, но таблицу не отображает
...
Рейтинг: 0 / 0
16.05.2013, 23:25
    #38261147
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
kirsan19041994,

Значит у вас ls_text не пустая и внутрь IF управление не передается.
Потому что это точно работает:
Код: sql
1.
2.
dw_1.setfilter('')
dw_1.filter()
...
Рейтинг: 0 / 0
17.05.2013, 09:15
    #38261333
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sql поиск
Скорее всего retrive таблицы и не делался
А фильтр к пустому dw применять бесполезно
Поучите основы
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / sql поиск / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]