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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.07.2019, 22:36   #1  
arhat is offline
arhat
Участник
 
116 / 16 (1) ++
Регистрация: 10.11.2014
Адрес: Казахстан
AX максимальный размер поля string
Всем привет! При увеличении размеров поля в таблице на 3000 символов происходит что то странное с таблицей, в таблице вместо данных появляются иероглифы и куски кода.
Вроде пишут что размер максимальный 4000 символов, но с учетом unicode он будет равен 2000 символам.
Вопрос какое максимальное значений поля string в аксапте, желательно с логическим объяснением?
Старый 12.07.2019, 08:53   #2  
KiselevSA is offline
KiselevSA
Злыдни
Аватар для KiselevSA
Злыдни
Лучший по профессии 2015
 
958 / 333 (13) ++++++
Регистрация: 25.01.2002
Адрес: Москва
Максимальная длина переменной char в SQL - 8000 байт. Т.к. в Unicode длина для символа может составлять 4 байта, то, для гарантированного не выхода за разрешенный диапазон, текстовую строку лучше ограничивать длиной 2000. И использовать memo для хранения "трактатов".
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании.
За это сообщение автора поблагодарили: S.Kuskov (2), arhat (1).
Старый 31.07.2024, 13:48   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,945 / 3229 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от KiselevSA Посмотреть сообщение
текстовую строку лучше ограничивать длиной 2000.
Интересно.
Раньше, еще со времен трешки, старался никогда не делать больше чем 1000
А тут возникла необходимость у коллеги. (но Аксапта 2012 выдала при фильтрации по полю длиной 2048 символов - ошибку SQL "Invalid precision value")

Посмотрел как обстоят дела в стандарте
Набросал джобик и он выдал что есть несколько EDT длиной больше чем 2000

StrLen ExtendedTypeName
32 767 SysLookupMultiSelectValues
10 000 AifDetail

8 192 WebControlId
4 000 ReqDemPlanGranularityAttribute
4 000 MaximumString
4 000 TaxReportExplanation_NO
3 999 MCRNotes
3 000 MCRPickingQuery
3 000 MCRWMSPickingAreaIDQuery
3 000 MCRItemIDQuery
3 000 DMFConnectionString
2 048 ProjDependeciesListString
2 048 RetailListingStatusMessage
2 048 CatVendorEventLogDescription

какая-то жесть ...

Особенно длина в 10 тысяч символов и в 32 тысячи.

Последний раз редактировалось Logger; 31.07.2024 в 14:14.
Старый 31.07.2024, 18:13   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Logger Посмотреть сообщение
есть несколько EDT длиной больше чем 2000
Не факт что они используются для создания полей в таблицах
Старый 06.08.2024, 11:55   #5  
Maximin is offline
Maximin
NavAx
NavAx Club
 
412 / 346 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
А эти типы для этого и не используются...
Но по теме - у меня еще один вопрос.
Нужно мне очень длинное поле. Перешел на Memo с Str2000.
Но.
1. Если повесить лукап на memo поле, то стрелка лукапа выглядит на форме уродски. Кстати, в сетке все еще хуже - если задать высоту контрола жестко, чтобы сетку не "раздувало", то лезут жуткие артефакты рисования.
2. Форма лукапа появляется черт знает где, относительно stringEdit контрола.
Выглядит это все в AX2012 максимально стремно.
Никто не боролся?
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...

Последний раз редактировалось Maximin; 06.08.2024 в 12:03. Причина: Поправил сылку на картинку
Старый 06.08.2024, 12:01   #6  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,945 / 3229 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Тоже встречал такое, но указанной вами зависимости не заметил.
Вроде бы просто в лукапной форме прибивал гвоздями координаты в зависимости от caller контрола. Вроде писал свой класс наследник SysLookup

Если надо могу поискать.
Старый 06.08.2024, 12:38   #7  
Maximin is offline
Maximin
NavAx
NavAx Club
 
412 / 346 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Тут так не получится - прибить гвоздями.
Это хитрое поле и вызывает разные лукапы (или системные от EDT, или динамические строит по SysTableLookup), в зависимости от того, что настроено для этого типа строки.
Разве что вот эти из SysTableLookup...
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...
Старый 06.08.2024, 13:07   #8  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,945 / 3229 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
А у вас не может быть что-то из этой серии ?
How-to. Слетание пользовательских настроек в формах после вызова lookup, или MS - suxx.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
amer-ax: It was a great day! Blog bot DAX Blogs 3 29.12.2012 01:02
daxdilip: Whats New in Dynamics AX 2012 (A brief extract from the recently held Tech Conf.) Blog bot DAX Blogs 7 31.01.2011 12:35
paruvella: De-serialization of string format XML in Dynamics Ax Blog bot DAX Blogs 0 08.10.2010 14:05
paruvella: De-serialization of string format XML in Dynamics Ax Blog bot DAX Blogs 0 29.09.2010 18:05
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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