powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Значение строковой функции превращается в "????" при обращении к ней в запросе
19 сообщений из 19, страница 1 из 1
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660371
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Аксесс 97, т.е. стринги сидят не в юникоде. Функция строкового типа. При заходе в функцию видно в отладчике, что она возвращает правильное значение. К функции обращается запрос, но в поле, которое вычисляется при помощи этой функции, вместо правильного значения показано "????". Брал Asc от этих символов - получил честным образом код вопросительного знака.

Одна деталь. Эти символы - это ивритские буквы. Поэтому вопрос в первую очередь к тем, кто знаком с закидонами ивритского Аксесса. Но возможно, что и с русскими буквами тоже такое бывает.

Заранее спасибо.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660381
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бывает - все работает нормально - фенька в шрифтах.

Исчезает само-собой при определенных сочетаниях Windows-Access закономерность в сочетаниях пока установить не удалось :).

Как я понял проблема в том, что где-то внутри юникод преобразуется в аски неправильно.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660382
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vam911Как я понял проблема в том, что где-то внутри юникод преобразуется в аски неправильно.
Юникод ни при чем, я с этого начал.

Больше того. Эта функция берет значения из некой таблицы. В запросе два поля - одно вычисляется через эту функцию, а другое показывается прямо из той же таблицы. Во втором значения правильные!
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660384
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч vam911Как я понял проблема в том, что где-то внутри юникод преобразуется в аски неправильно.
Юникод ни при чем, я с этого начал.

Больше того. Эта функция берет значения из некой таблицы. В запросе два поля - одно вычисляется через эту функцию, а другое показывается прямо из той же таблицы. Во втором значения правильные!

А если в дебуг загнать функцию, что там произходит.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660385
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vam911А если в дебуг загнать функцию, что там произходит.
Блин. Ну написано же в вопросе.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660389
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если "поиграть" с телом фуекции в цлях упрощения (вход=выход)?
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660390
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
vam911а если "поиграть" с телом фуекции в цлях упрощения (вход=выход)?
Ой. Вообще что-то странное. Запрос перестал запускаться. Выдает MsgBox с пустым текстом - и всё.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660391
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и тмпом параметов/значения пощёлкать -string/variant
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660397
YBW
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
YBW
Гость
Владимир Саныч vam911а если "поиграть" с телом фуекции в цлях упрощения (вход=выход)?
Ой. Вообще что-то странное. Запрос перестал запускаться. Выдает MsgBox с пустым текстом - и всё.

ИМХО если цифры и символы выдает правильно - значит шрифты...
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660402
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Alexey Shи тмпом параметов/значения пощёлкать -string/variant
Пробовал, ничего не меняется.

YBWИМХО если цифры и символы выдает правильно - значит шрифты...
А вот это, как ни смешно, не пробовал... Попробую.

Но шрифты - сильно сомневаюсь я, что дело в них. Потому что код ASCII этого вопросительного знака - как у вопросительного знака, а не как у буквы.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660403
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, напустил бы JetComp на это дело для начала...

(с выражением лица)
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660408
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
VictoshaСаныч, напустил бы JetComp на это дело для начала...
Да, была мысль где-то в подсознании... Спасибо. :^)
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660564
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полуофф
СанычАксесс 97, т.е. стринги сидят не в юникоде
Саныч, а кто тебе сказал, что в аксесе 97 стринги - не в юникоде???
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660588
Фотография kedzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм. у нас была похожая проблема.
может поможет:
функция брала данные из прилинкованной таблицы (mdb) - результат функции был: ????
база с данными сжималась 2 раза: 1-раз с основной сортировкой, потом с русской. База с интерфейсом также 2 раза: основной и русской.
Модуль с функцией удалялся. Потом создавался заново, текст при этом копировался через блокнот, а не на прямую.
После этого функция возвращала нормальные значения.

Удачи.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660778
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Лох ПозорныйСаныч, а кто тебе сказал, что в аксесе 97 стринги - не в юникоде???
Во-первых, брал пробу на Asc.
Во-вторых:
http://sql.ru/forum/actualthread.aspx?tid=59204&pg=-1

kedzoхм. у нас была похожая проблема.
может поможет:
функция брала данные из прилинкованной таблицы (mdb) - результат функции был: ????
база с данными сжималась 2 раза: 1-раз с основной сортировкой, потом с русской. База с интерфейсом также 2 раза: основной и русской.
Модуль с функцией удалялся. Потом создавался заново, текст при этом копировался через блокнот, а не на прямую.
После этого функция возвращала нормальные значения.

Удачи.
Ух как хитро... Попробую, спасибо. :^)
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32660800
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Саныч
В таблицах оно может и не юникод, а вот VB-шные функции тока с юникодовскими строками оперируют. Можешь на пробу LenB от строки посмотреть, или в массив байт загнать.

В запросе два поля - одно вычисляется через эту функцию, а другое показывается прямо из той же таблицы. Во втором значения правильные!
Ну вот из таблицы - оно берет напрямую. А для VB - конвертит, сначала в юникод, потом возможно обратно, и где-то его возможно сколбашивает.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32661218
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Лох Позорныйа вот VB-шные функции тока с юникодовскими строками оперируют.
А чего же тогда Asc возвращает значение меньше 256?
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32661235
vam911
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вплоть до выхода из функции все нормально??

если да. попробуй для теста - передать в ответ не всю строку, а только ее первый симовол, причем сделай chr(asc(left(1,str))).

Интересен результат.
...
Рейтинг: 0 / 0
Значение строковой функции превращается в "????" при обращении к ней в запросе
    #32661258
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч Лох Позорныйа вот VB-шные функции тока с юникодовскими строками оперируют.
А чего же тогда Asc возвращает значение меньше 256?
Во-первых Asc и не может вернуть значение больше 255
Во-вторых:
Код: plaintext
1.
2.
3.
?asc("a")
  97  
?ascw("a")
  97  
Так что пофигу что оно там возвращает :)
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Значение строковой функции превращается в "????" при обращении к ней в запросе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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