powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объясните дураку
3 сообщений из 3, страница 1 из 1
Объясните дураку
    #33649952
Foxuser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица в ней поле нумерик 11зн., но числа от 8 до 11 зн. делаю так:
brow all for substr(alltr(str(rkod)),3,3)='440'
вижу 8-10зн. коды а 11зн. не показывает в чем проблема, знатоки?
...
Рейтинг: 0 / 0
Объясните дураку
    #33650110
zmej74
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для того чтобы понять в чем проблема сделаем маленький эксперимент
var = 1234567890
?str(var)
var = 12345678901
?str(var)
и ты увидишь, что для более чем 10-ти значных чисел STR() представляет эти числа в другом формате. Первое что приходит в голову для решения проблемы так это использовать твою команду так:
brow all for substr(alltr(str(rkod,11)),3,3)='440'
...
Рейтинг: 0 / 0
Объясните дураку
    #33650172
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще-то, надо было открыть HELP и почитать описание команды STR(). А там сказано, что если второй параметр не указан явно, то предполагается, что этот параметр равен 10.

Как решить, zmej74 уже написал. Указать в команде STR() второй параметр явно.

Если речь идет о FoxPro не ниже 6 версии, то можно так:

Код: plaintext
BROWSE FOR SUBSTR(TRANSFORM(rkod), 3 , 3 )='440'
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объясните дураку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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