Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Чайный вопрос еще один по фоксу... :)  [new]
alex22
Member

Откуда:
Сообщений: 7
Есть выражение:
iif(reg_bnk$(1;4),'Д','Б')

Как интерпретировать (1;4) ?

1. Равно всем значениям в диапазоне с 1 до 4?
2. Равно либо 1 либо 4?
3. Равно всем значениям в диапазоне от 1 до 4, не включая 1 и 4 (т.е. получается 2 и 3)?

Заранее спасибо большое.
З.Ы. Сам я Оракловец, а описания того, что занчит (х1;х2) не нашел нигде...
8 фев 10, 10:19    [8309397]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
GoshaS
Member

Откуда: юг Архангельской обл.
Сообщений: 392
Оператор '$'
Возвращает значение истина (.T.), если данное символьное выражение содержится в другом символьном выражении, в противном случае возвращает ложь (.F.).

Синтаксис:

cSearchFor $ cSearchIn

Поиск ведется с учетом регистра.

Функция iif()
Возвращает одно из двух значений, в зависимости от значения данного логического выражения.
IIF(lExpression, eExpression1, eExpression2)
lExpression-логическое выражение.

Честно говоря, ваше выражение - не понимаю, как оно работает. Т.к. Оператор сравнения символьных выражений, а тут непонятно что.
8 фев 10, 12:03    [8310191]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
PaulWist
Member

Откуда:
Сообщений: 2236
alex22
Есть выражение:
iif(reg_bnk$(1;4),'Д','Б')

Как интерпретировать (1;4) ?

1. Равно всем значениям в диапазоне с 1 до 4?
2. Равно либо 1 либо 4?
3. Равно всем значениям в диапазоне от 1 до 4, не включая 1 и 4 (т.е. получается 2 и 3)?

Заранее спасибо большое.
З.Ы. Сам я Оракловец, а описания того, что занчит (х1;х2) не нашел нигде...


Что-то в самом выражении не правильно.

Returns True (.T.) if a character expression is contained in another character expression; otherwise, returns False (.F.).

 
cSearchFor $ cSearchIn
 


Parameters
cSearchFor
Specifies the expression looked for within cSearchIn.

cSearchIn
Specifies the expression that is searched to see if it contains cSearchFor.

If cSearchFor is found in cSearchIn, $ returns True (.T.); otherwise, it returns False (.F.). cSearchFor and cSearchIn can be character-type variables or array elements, character-type fields, character string literals, or memo fields of any length. 

Memo fields can be manipulated like character expressions, fields in tables, variables, or array elements. For example, if MEMO_FLD is a memo field, the following is acceptable: 
8 фев 10, 12:04    [8310200]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
reware
Member

Откуда: Хабаровск
Сообщений: 585
Да бред какой-то. Может это написано не на фоксе ? Оператор $ ищет подстроку (параметр слева) в строке (параметр справа). И где тут строка в параметре справа ?
8 фев 10, 12:52    [8310667]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
quxix
Guest
alex22
Есть выражение:
iif(reg_bnk$(1;4),'Д','Б')

Как интерпретировать (1;4) ?

1. Равно всем значениям в диапазоне с 1 до 4?
2. Равно либо 1 либо 4?
3. Равно всем значениям в диапазоне от 1 до 4, не включая 1 и 4 (т.е. получается 2 и 3)?

Заранее спасибо большое.
З.Ы. Сам я Оракловец, а описания того, что занчит (х1;х2) не нашел нигде...

возможно это пользовательская функция-попробуйте найти её в коде
8 фев 10, 13:35    [8311045]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
quxix
Guest
quxix
alex22
Есть выражение:
iif(reg_bnk$(1;4),'Д','Б')

Как интерпретировать (1;4) ?

1. Равно всем значениям в диапазоне с 1 до 4?
2. Равно либо 1 либо 4?
3. Равно всем значениям в диапазоне от 1 до 4, не включая 1 и 4 (т.е. получается 2 и 3)?

Заранее спасибо большое.
З.Ы. Сам я Оракловец, а описания того, что занчит (х1;х2) не нашел нигде...

возможно это пользовательская функция-попробуйте найти её в коде

Если функция reg_bnk$ возвращает true то iif()-возвратит нам 'Д',иначе 'Б'
8 фев 10, 13:37    [8311061]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
reware
Member

Откуда: Хабаровск
Сообщений: 585
quxix
возможно это пользовательская функция-попробуйте найти её в коде

Чем дальше, тем страшнее. С каких пор в именах (в том числе и функций) стало разрешено пользоваться символами вроде доллара ?
8 фев 10, 15:20    [8311962]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
ВладимирМ
Member

Откуда: г. Москва
Сообщений: 7864
alex22
Как интерпретировать (1;4) ?
...
З.Ы. Сам я Оракловец, а описания того, что занчит (х1;х2) не нашел нигде...

Интепретировать как синтаксическую ошибку.

Для FoxPro символ точки с запятой - это символ переноса строки, когда команда не помещается в одну строку или ее удобнее написать в несколько строк. Например

SELECT MyField ;
FROM MyTable

Т.е. вообще-то это одна команда, но записана в несколько строк

Ну, и то, что Вам уже сказали, символ $ - это поиск подстроки в строке. А выражение (1;4) никак невозможно интерпретировать как строку

quxix
возможно это пользовательская функция-попробуйте найти её в коде

Этого не может быть по двум причинам:

1. Символ $ недопустимо использовать в именах
2. Символ точки с запятой не может разделять параметры
8 фев 10, 15:29    [8312028]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
Wasilich
Member

Откуда:
Сообщений: 17
Интересно, reg_bnk это что? Поле БД, переменная? Что содержит? Или это загадка.
Может это из какого ни-ть Клиппера, а не Фокса.
8 фев 10, 18:59    [8313569]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
reware
Member

Откуда: Хабаровск
Сообщений: 585
Wasilich
Интересно, reg_bnk это что? Поле БД, переменная? Что содержит? Или это загадка.
Может это из какого ни-ть Клиппера, а не Фокса.

И вот не надо тут Clipper поминать. В нем синтаксис языка аналогичный фоксу. Скорее, это из бейсика, где переменные символьного типа и функции, возвращающие строку, имеют в конце имени как раз-таки $.
8 фев 10, 19:16    [8313623]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
Игорь Горбонос
Member

Откуда: Днепропетровск
Сообщений: 4236

> Автор: reware
> И вот не надо тут Clipper поминать. В нем синтаксис языка аналогичный фоксу. Скорее, это из бейсика, где
> переменные символьного типа и функции, возвращающие строку, имеют в конце имени как раз-таки $.

reware
И вот не надо тут Clipper поминать.
В смысле бейсик
Функции есть, только разделителя такого (;) нет. Этот разделитель в бейсике используется только при печати как символ
форматирования. Так что, брифинг знатоков считаю не закрытым

Posted via ActualForum NNTP Server 1.4

8 фев 10, 19:27    [8313650]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
reware
Member

Откуда: Хабаровск
Сообщений: 585
Игорь Горбонос

форматирования. Так что, брифинг знатоков считаю не закрытым

Лучше все-же автора спросить, откуда он вытащил этот код.
8 фев 10, 21:18    [8313966]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
Kruchinin Pahan
Member

Откуда: Екатеринбург
Сообщений: 925
alex22
Есть выражение:
iif(reg_bnk$(1;4),'Д','Б')

Как интерпретировать (1;4) ?

1. Равно всем значениям в диапазоне с 1 до 4?
2. Равно либо 1 либо 4?
3. Равно всем значениям в диапазоне от 1 до 4, не включая 1 и 4 (т.е. получается 2 и 3)?

Заранее спасибо большое.
З.Ы. Сам я Оракловец, а описания того, что занчит (х1;х2) не нашел нигде...

Если скобки заменить на квадратные, то выражение будет иметь смысл:
iif(reg_bnk$[1;4],'Д','Б')
Опять же, reg_bnk должно быть символьным.
10 фев 10, 07:04    [8320787]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
quxix
Guest
reware
quxix
возможно это пользовательская функция-попробуйте найти её в коде

Чем дальше, тем страшнее. С каких пор в именах (в том числе и функций) стало разрешено пользоваться символами вроде доллара ?

может быть автор сего творения этого не знал:
Например программа с таким именем(reg_bnk$.prg) легко создается и компилируется и работает:),
а вот функцию скомпилировать с таким именем, у меня во всяком случае, не получилось-что соответствует рекомендациям.
10 фев 10, 11:56    [8322286]     Ответить | Цитировать Сообщить модератору
 Re: Чайный вопрос еще один по фоксу... :)  [new]
Kruchinin Pahan
Member

Откуда: Екатеринбург
Сообщений: 925
quxix
reware
quxix
возможно это пользовательская функция-попробуйте найти её в коде

Чем дальше, тем страшнее. С каких пор в именах (в том числе и функций) стало разрешено пользоваться символами вроде доллара ?

может быть автор сего творения этого не знал:
Например программа с таким именем(reg_bnk$.prg) легко создается и компилируется и работает:),
а вот функцию скомпилировать с таким именем, у меня во всяком случае, не получилось-что соответствует рекомендациям.

Теперь осталось запустить эту пржэшку в указанном контексте.
10 фев 10, 14:34    [8323833]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить