• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Selection Formula

  • Автор темы Автор темы Xalet
  • Дата начала Дата начала
X

Xalet

Есть формула, которая создается из параметров и подается для DB.Search.

Field TE:=@texttotime("~DateE~");Field TS:=@texttotime("~DateS~");Field District:="~Location~";
SELECT(((TE)>=(ActDate))&((TS)=<(ActDate))&(UserLocation=District)

В общем все работает. Вопрос такой. Какое значение присвоить для District, чтобы нашло со всеми значениями UserLocation?

Пробовал туда * подсовывать, не срабатывает.
 
а почему
Field TE:=@texttotime("~DateE~"), а не
TE:=@texttotime("~DateE~")


по вопросу убрать из селекшн формулы упоминание о UserLocation, и получиться
SELECT(((TE)>=(ActDate))&((TS)=<(ActDate))
 
а почему
Field TE:=@texttotime("~DateE~"), а не
TE:=@texttotime("~DateE~")

Вот чего не знаю, того не знаю. Не я их писал.


по вопросу убрать из селекшн формулы упоминание о UserLocation, и получиться

Про убрать я знаю, но это в данном случае сложнее будет.
 
Что значит со всеми значениями? С любым? Тогда проверь поле на пустоту.
 
TE:=@texttotime("~DateE~"); TS:=@texttotime("~DateS~"); District:="~Location~";
SELECT(((TE)>=(ActDate))&((TS)=<(ActDate))&@IsAvalivable( UserLocation )
 
xalet
Так убери условие. Зачем оно в таком случае?
 
В общем чтобы понятнее было. Есть форма в которой вводятся даты и местоположение. Из этой формы берутся значения и присваиваются для соответственных в формуле. Ну вот если вписать там "Все локации", надо соответственно найти доки с любыми значениями для локэйшн. То что вы предлагали это реализуемо, но это модификация исходной формулы (а они берутся из шаблонов в зависимости от типов отчета). Т.е. реально канешн написать все это чтобы работало... Но самый простой вариант подсунуть значение для локэйшн с которым бы нашло все. Хотя по вашим ответам складывается впечатление, что так просто сделать не получится.
 
Да, нужно формулу менять.
Есть еще собака @Matches. Не знаю, поможет ли она тебе. :lol:
 
Решил. Вот таким вот способом, если кому-то понадобится нечто похожее:

Field TE:=@texttotime("~DateE~");Field TS:=@texttotime("~DateS~");Field District:="~Location~";
SELECT(((TE)>=(ActDate))&((TS)=<(ActDate))&(@IF(District="*";@true;UserLocation= District)))

Но все равно всем спасибо за советы.
 
Field TE:=@texttotime("~DateE~");Field TS:=@texttotime("~DateS~");Field District:="~Location~";
SELECT(((TE)>=(ActDate))&((TS)=<(ActDate))&(@IF(District="*";@true;UserLocation= District)))
Код:
TE:=@texttotime("~DateE~");
TS:=@texttotime("~DateS~");
District:="~Location~";
SELECT(((TE)>=(ActDate))&((TS)=<(ActDate)) & @Matches(UserLocation;District)
Ы?
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab