powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как построить условие для Select с параметрическим Where ???
8 сообщений из 8, страница 1 из 1
как построить условие для Select с параметрическим Where ???
    #33637267
alex_dch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди научите уму )) !!
я использую чужой класс, для выбора даты на форме,
после того как отработала форма и я запомнил все параметры
запускаю запрос..
как мне правильно построить Select с макроподстановкой для Where
чтобы фокс понимал что делать если дата введена, или не введена.

uslovie = "NOT DELETED()"

IF (DTOC(d_date2) = ' . . '
messagebox("дата не введена")
ELSE
uslovie = uslovie + " AND doc_date = d_date2"
ENDIF

...

select
....
where & uslovie

в общем делаю как-то вот так, но все время терзают смутные сомнения что я
делаю операцию на глаза через ж..
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33637385
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
local lsSelectCmd
text to lsSelectCmd textmer noshow
select * from tt where <<iif(...)>>
endtext
&lsSelectCmd
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33637525
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может так?
set deleted on
uslovie =iif(empty(d_date2),".t."," AND doc_date = d_date2")

select
....
where & uslovie
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33637550
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex_dchЛюди научите уму )) !!
select
....
where & uslovie

в общем делаю как-то вот так, но все время терзают смутные сомнения что я
делаю операцию на глаза через ж..
Мне кажется, что вы делаете все правильно. Это обычная практика, когда условия в запросе меняется динамически в результате диалога с пользователем.
Хотя, если эти самые условия не очень сложные, то можно предусмотреть это в запросе:
SELECT ...
FROM ...
WHERE EMPTY(d_date2) OR (!EMPTY(d_date2) AND (d_date2 = doc_date))
С уважением, Алексей.
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33637559
alex_dch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну значит от оптимального пути в запросах я отклоняюсь не сильно, это радует ))
в общем остается только один вопрос - как более грамотно проверить заполнено ли поле с ДАТОЙ или нет..

для текстовых полей я обычно делаю так len(allt(sText)) > 1

вот (>0) что-то иногда не проходит, не разбирался почему еще.
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33637578
Фотография Aleksey-K
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чем EMPTY() не устраивает?
С уважением, Алексей
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33637619
alex_dch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не знаю.. что-то ступор какой-то.
спасибо!
...
Рейтинг: 0 / 0
как построить условие для Select с параметрическим Where ???
    #33654288
AlikT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Fox, даже в .exe - интепритатор, поэтому пусть тебя не терзают сомнения варианты :

select * from table
и
lsSql='select * from table'
&lsSql

абсолютно равнозначны
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / как построить условие для Select с параметрическим Where ???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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