powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объединение строк
18 сообщений из 18, страница 1 из 1
Объединение строк
    #33418905
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть код:
Код: plaintext
1.
2.
3.
4.
5.
6.
sss=ALLTRIM(rtm.model)
ddd=ALLTRIM(dir.markname)
markname=allTRIM(ddd)+allTRIM(sss)
MESSAGEBOX(sss) *** все верно
MESSAGEBOX(ddd)  *** все верно
MESSAGEBOX(markname) *** выводит только ddd :(
Почему???
...
Рейтинг: 0 / 0
Объединение строк
    #33418922
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где то на кавычки натыкается
...
Рейтинг: 0 / 0
Объединение строк
    #33418972
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изменил код:
Код: plaintext
1.
2.
3.
MESSAGEBOX("."+sss+".")  *** выводит . 2101 .
MESSAGEBOX("."+ddd+".")  *** выводит .ВАЗ.
MESSAGEBOX("."+markname+".") *** выводит .ВАЗ                                      .
Ничего не понимаю!
Да,
MESSAGEBOX("."+alltrim(markname)+".") выводит .ВАЗ.
Куда исчезает sss?
П.С. все поля в базе символьные.
...
Рейтинг: 0 / 0
Объединение строк
    #33418994
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из командного окна делаю:
Код: plaintext
?sss+" "+ddd
показывает 2101 ВАЗ - как и должно быть
...
Рейтинг: 0 / 0
Объединение строк
    #33418998
Петров Андрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss='2101'
ddd='ВАЗ'
markname=allTRIM(ddd)+allTRIM(sss)
MESSAGEBOX(sss)
MESSAGEBOX(ddd)
MESSAGEBOX(markname)

Все ОК. Приводите ЧЕТКИЕ примеры - вывожу вот это получаю вот это...
...
Рейтинг: 0 / 0
Объединение строк
    #33419175
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Петров Андрейsss='2101'
ddd='ВАЗ'
markname=allTRIM(ddd)+allTRIM(sss)
MESSAGEBOX(sss)
MESSAGEBOX(ddd)
MESSAGEBOX(markname)

Все ОК. Приводите ЧЕТКИЕ примеры - вывожу вот это получаю вот это...

Итак, код:
Код: plaintext
1.
2.
3.
4.
5.
6.
sss='2101'
ddd='ВАЗ'
markname=allTRIM(ddd)+allTRIM(sss)
MESSAGEBOX("."+sss+".") - выводится . 2101 .
MESSAGEBOX("."+ddd+".") - выводится .ВАЗ.
MESSAGEBOX("."+alltrim(markname)+".") - выводится .ВАЗ.
Куда девается sss?

Ставлю точку останова на последнем MB, в командном окне ввожу:
Код: plaintext
?"."+sss+" "+ddd+"."
Выводится .2101 ВАЗ.
...
Рейтинг: 0 / 0
Объединение строк
    #33419186
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VFP7SP1 Всё пучком. На последнем MB выводится .ВАЗ2101.
...
Рейтинг: 0 / 0
Объединение строк
    #33419191
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это было на VFP 9.

Запускаю на VFP 6, все отрабатывает нормально (т.е. на последнем MB выводится .ВАЗ2101.)

Что может сломаться в 9 ?
...
Рейтинг: 0 / 0
Объединение строк
    #33419280
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На соседней машине с VFP 9 все проходит нормально.
Явно проблема у меня с настройками, только какими?
...
Рейтинг: 0 / 0
Объединение строк
    #33419335
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самы простой способ - переустановить по новой и немиться.
...
Рейтинг: 0 / 0
Объединение строк
    #33419558
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переустановил. Все так же плохо (
...
Рейтинг: 0 / 0
Объединение строк
    #33419752
5631
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss и ddd-это только переменные ? Может есть поля базы данных с тем же именем или еще что-нибудь?
...
Рейтинг: 0 / 0
Объединение строк
    #33421042
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
5631sss и ddd-это только переменные ? Может есть поля базы данных с тем же именем или еще что-нибудь?

sss='2101'
ddd='ВАЗ'
markname=allTRIM(ddd)+allTRIM(sss)
...
Рейтинг: 0 / 0
Объединение строк
    #33421052
foxwizard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня все нормально и в 8 и в 9-ке
попробуй на чистом фоксе с установками по умолчанию.
...
Рейтинг: 0 / 0
Объединение строк
    #33421053
foxwizard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss='2101'
ddd='ВАЗ'
markname=allTRIM(ddd)+allTRIM(sss)
set step on
MESSAGEBOX("."+alltrim(markname)+".")

и в дебагере посмотри значение переменной markname.
Поля markname случайно нет в активной табличке?

Переходи на работу с нормальными машинами:
Toyota,Honda,WV,AUDI (шутка)
...
Рейтинг: 0 / 0
Объединение строк
    #33421216
dmitryx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю foxwizard прав.
Судя по первому примеру, в таблице dir есть поле markname, видимо отсюда и грабли. Используйте префикс "m." для переменной markname чтобы избежать конфликтов.
...
Рейтинг: 0 / 0
Объединение строк
    #33422036
w3d
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, действительно, есть поле markname.....
Посыпаю голову пеплом :)
Вывод: спать надо больше.
...
Рейтинг: 0 / 0
Объединение строк
    #33428694
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi w3d!

Вывод - не надо экономить на буковках! Если это переменная, и если идёт
обращение к ней (т.е. грубо говоря её "считывание") - обязательно добавляй
префикс m. - вот слева от знака = при присвоении - не обязательно, но и не
повредит (а вот если = это не присвоение а сравнение - то обязательно надо!)

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Объединение строк
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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