|
21.03.2013, 12:24 | #1 |
Участник
|
Добрый день. Спрашивал на других форумах, мозг сломал, идеи кончились)
При копировании всей ячейки в excel и вставлении ее в NAV получается , например, символы+ 2 нечитаемых символа - char(13) и char(10). На некоторых компьютерах это выглядит как два квадрата. На других - как два пробела. То есть они невидимы. Надо сделать так, чтобы "невидимки" стали квадратами. Операционки одинаковые. Региональные настройки одинаковые и менялись. Системные шрифты менял. от версии excel не зависит. Шрифты excel менял. Темы оформления windows менял. zup файлы подкладывал. Дело, однозначно, в операционке. Сталкивался ли кто-нибудь с такой проблемой? Спасибо. |
|
21.03.2013, 15:57 | #2 |
Участник
|
Чисто из любопытства: а что Вы хотите с этими квадратами в Navision делать?
Я до сих пор сталкивался с тем, что наоборот, всякие LF/CR надо было удалять. Попробуйте так: заведите две текстовые переменные (например TextCRLF, TextLFCR) каждая с 2 Dimension: Код: TextCRLF[1] := 13; TextCRLF[2] := 10; TextLFCR[1] := 10; TextLFCR[2] := 13; |
|
21.03.2013, 17:46 | #3 |
Участник
|
Цитата:
Пользователь, когда копирует что-то в Navision, если там будут стоять квадраты - удалит их. А если невидимые пробелы - проигнорирует. И тогда с данными -беда) Да и чтобы найти в таблице подобную запись и исправить ее - проще глазами пробежаться, а не вычислять -есть символы невидимые после каждой записи. Как я уже говорил, это настройки системы. В XP такие случаи достаточно редки. В более высоких ОС - 50/50. Но все шаманства пока что результата не приносят. Есть у меня мысль, что это шрифт, который по умолчанию использует Navision. Его как-то можно поменять? . Шрифт ОС я менял - не работает |
|
22.03.2013, 11:21 | #4 |
Участник
|
Мне кажется нужно во всех полях, где происходит вставка пользователем данных, поставить принудительное вырезание спец символов.
Надеяться на то что пользователь сам что-то вырежет очень опрометчиво. Вы их там дрессируете? Током бьете, если не удалили? /> |
|
22.03.2013, 12:37 | #5 |
Участник
|
>>>Вы их там дрессируете?
Типа того) Просто раньше проблем не было, да и с таблице сразу видно было, где косяк. Теперь, с постепенным переходом на WIN7, таких случаев получилось больше, потому что этот глюк чаще. И самому не видно, что исправлять). А вставить принудиловку во ВСЕ таблицы, что сейчас есть - год работы)) |
|
22.03.2013, 13:02 | #6 |
Участник
|
напишите отчет, который покажет. для универсальности можно рекордрефы использовать.
У вас пользователи только копипастом занимаются, при чем во ВСЕ таблицы. Вообше вам виднее, но такие проблемы решать нужно координально, а не искать глазами квадратики в табличках. |
|
22.03.2013, 13:28 | #7 |
Участник
|
Если есть возможность редактировать CU1, то можно добавить в функци MakeText код
Код: Ch[1] := 9; // TAB Ch[2] := 10; // LF Ch[3] := 13; // CR DELCHR(Text, '=', Ch); Код: PROCEDURE MakeCode@109(VAR CodeText@1000000000 : Text[250]) : Integer; VAR Ch@1000000001 : Text[3]; BEGIN Ch[1] := 9; // TAB Ch[2] := 10; // LF Ch[3] := 13; // CR DELCHR(Text, '=', Ch); EXIT(0); END; |
|
22.03.2013, 13:39 | #8 |
Участник
|
Да, спасибо, такое мне уже советовали.
Но, по большому счету это не решение проблемы) Я хочу, чтобы у пользователя, да и у меня, был визуальный контроль. Иногда, улучшения только добавляют проблем) Иными словами "Верните все как было"))) |
|
22.03.2013, 13:48 | #9 |
Участник
|
Хехе )
Ну тогда что мешает в 1 КЮ поменять CRLF на, скажем, "?" ? |
|