AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.03.2013, 12:24   #1  
nebot is offline
nebot
Участник
 
13 / 10 (1) +
Регистрация: 20.03.2013
Добрый день. Спрашивал на других форумах, мозг сломал, идеи кончились)

При копировании всей ячейки в excel и вставлении ее в NAV получается , например, символы+ 2 нечитаемых символа - char(13) и char(10).
На некоторых компьютерах это выглядит как два квадрата.
На других - как два пробела. То есть они невидимы.
Надо сделать так, чтобы "невидимки" стали квадратами.

Операционки одинаковые. Региональные настройки одинаковые и менялись. Системные шрифты менял. от версии excel не зависит. Шрифты excel менял. Темы оформления windows менял. zup файлы подкладывал.

Дело, однозначно, в операционке. Сталкивался ли кто-нибудь с такой проблемой?
Спасибо.
Старый 21.03.2013, 15:57   #2  
alexb_imported is offline
alexb_imported
Участник
 
256 / 12 (1) ++
Регистрация: 25.08.2006
Чисто из любопытства: а что Вы хотите с этими квадратами в 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  
nebot is offline
nebot
Участник
 
13 / 10 (1) +
Регистрация: 20.03.2013
Цитата:
Сообщение от AlexB Посмотреть сообщение
Чисто из любопытства: а что Вы хотите с этими квадратами в Navision делать?
Я хочу, чтобы их было видно)
Пользователь, когда копирует что-то в Navision, если там будут стоять квадраты - удалит их. А если невидимые пробелы - проигнорирует. И тогда с данными -беда) Да и чтобы найти в таблице подобную запись и исправить ее - проще глазами пробежаться, а не вычислять -есть символы невидимые после каждой записи.

Как я уже говорил, это настройки системы. В XP такие случаи достаточно редки. В более высоких ОС - 50/50. Но все шаманства пока что результата не приносят.

Есть у меня мысль, что это шрифт, который по умолчанию использует Navision. Его как-то можно поменять? . Шрифт ОС я менял - не работает
Старый 22.03.2013, 11:21   #4  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
Мне кажется нужно во всех полях, где происходит вставка пользователем данных, поставить принудительное вырезание спец символов.
Надеяться на то что пользователь сам что-то вырежет очень опрометчиво. Вы их там дрессируете? Током бьете, если не удалили? />
Старый 22.03.2013, 12:37   #5  
nebot is offline
nebot
Участник
 
13 / 10 (1) +
Регистрация: 20.03.2013
>>>Вы их там дрессируете?

Типа того) Просто раньше проблем не было, да и с таблице сразу видно было, где косяк.
Теперь, с постепенным переходом на WIN7, таких случаев получилось больше, потому что этот глюк чаще. И самому не видно, что исправлять). А вставить принудиловку во ВСЕ таблицы, что сейчас есть - год работы))
Старый 22.03.2013, 13:02   #6  
InTacto is offline
InTacto
Участник
Аватар для InTacto
 
323 / 11 (1) +
Регистрация: 09.08.2005
Цитата:
Сообщение от nebot Посмотреть сообщение
И самому не видно, что исправлять).
напишите отчет, который покажет. для универсальности можно рекордрефы использовать.

Цитата:
Сообщение от nebot Посмотреть сообщение
А вставить принудиловку во ВСЕ таблицы, что сейчас есть - год работы))
У вас пользователи только копипастом занимаются, при чем во ВСЕ таблицы.

Вообше вам виднее, но такие проблемы решать нужно координально, а не искать глазами квадратики в табличках.
Старый 22.03.2013, 13:28   #7  
max_hl_imported is offline
max_hl_imported
Участник
 
45 / 10 (1) +
Регистрация: 28.07.2006
Если есть возможность редактировать CU1, то можно добавить в функци MakeText код
Код:
Ch[1] := 9;   // TAB
Ch[2] := 10;  // LF
Ch[3] := 13;  // CR
DELCHR(Text, '=', Ch);
Для удаления мусора из полей с типом Code нужно создать функцию с ID 109 аля
Код:
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;
Таким образом можно сэкономить 1 год жизни )
Старый 22.03.2013, 13:39   #8  
nebot is offline
nebot
Участник
 
13 / 10 (1) +
Регистрация: 20.03.2013
Да, спасибо, такое мне уже советовали.
Но, по большому счету это не решение проблемы)
Я хочу, чтобы у пользователя, да и у меня, был визуальный контроль. Иногда, улучшения только добавляют проблем)
Иными словами "Верните все как было")))
Старый 22.03.2013, 13:48   #9  
max_hl_imported is offline
max_hl_imported
Участник
 
45 / 10 (1) +
Регистрация: 28.07.2006
Хехе )
Ну тогда что мешает в 1 КЮ поменять CRLF на, скажем, "?" ?
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:11.