Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Перечисление значений одной переменой. / 8 сообщений из 8, страница 1 из 1
09.07.2018, 16:20
    #39671688
andrepont
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
Здравствуйте. Имеется код

IF rol = 1 OR rol = 2 OR rol = 3 OR rol = 4 OR rol = 5 OR rol = 6 OR rol = 7 OR rol = 8 OR rol = 9 OR rol = 10 THEN

перечисляется значение переменной rol. Можно ли как то сократить выражение, по типу rol=1,2,3,4,5,6,7,8,9? Заранее спасибо.
...
Рейтинг: 0 / 0
09.07.2018, 19:11
    #39671783
Penner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
Inlist()
...
Рейтинг: 0 / 0
09.07.2018, 20:46
    #39671812
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
Меньше или равно 10, больше или равно 1 ?
...
Рейтинг: 0 / 0
10.07.2018, 14:24
    #39672095
andrepont
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
Вот весь код для понимания это кусок меню. rol PUBLIC переменная уровня доступа при авторизации. В зависимости от переменной каждой группе показываются свои пункты меню. Просто хотелось бы как то сократить код, а именно перечисление значений переменной rol.
SET SYSMENU TO
SET SYSMENU AUTOMATIC
IF rol = 1 OR rol=2 OR rol=3 OR rol=4 OR rol=5 THEN
DEFINE PAD _3lg0jym6e OF _MSYSMENU PROMPT "Меню" COLOR SCHEME 3 ;
KEY ALT+T, "ALT+T"

endif
...
Рейтинг: 0 / 0
10.07.2018, 14:27
    #39672098
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
21557481 inlist() чем не устроил?
Код: sql
1.
IF inlist(rol,1,2,3,4,5) THEN 
...
Рейтинг: 0 / 0
10.07.2018, 14:45
    #39672112
andrepont
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
Спасибо все работает.
...
Рейтинг: 0 / 0
10.07.2018, 16:17
    #39672162
asdor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
andrepont,

а чем не нравится
Код: sql
1.
if rol<6


Код: sql
1.
if rol<=5


Код: sql
1.
if rol>=1 and  rol<=5
...
Рейтинг: 0 / 0
10.07.2018, 16:18
    #39672163
asdor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перечисление значений одной переменой.
inlist() превращается в тот же or.
Что является самой медленной операцией. (хотя какая тут скорость))))
Да и просто меньше букв. и может яснее...?
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Перечисление значений одной переменой. / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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