![]() |
#1 |
int 20h
|
![]()
Всем добрый день.
В ходе ковыряния в аксе натолкнулся на кусок кода, который выдает сообщение об ошибке используя метку @SYS24175 открыл меточный файл и удивился, так как - данная метка не включена в меточный файл axSYSRu.aldи более того, данная метка отсутствует и в английском меточном файле axSYSen-us.ald). Так же показалось странным что в меточном файле, метки идут непоследовательно, а с пропуском. @SYS24165 Закрытие и коррекция @SYS24167 Счет разового поставщика использован для разовой поставки @SYS24168 Счет разового поставщика @SYS24171 Утверждение @SYS24176 Номер покупки %1 уже используется. @SYS24177 Профиль разноски взят из @SYS24178 Механизм разноски не определен Подскажите пожалуйста это я один такой везучий или это мс что то забыл добавить Да забыл сказать MS DAX Kernel 4.5.2503.630 Application Version 4.0.2501.122 Спасибо.
__________________
It's just my Unhopelessnessabilityerism ![]() Trying to debug my mind ![]() Последний раз редактировалось zZ_TOP_Zz; 07.07.2009 в 16:24. |
|
![]() |
#2 |
Участник
|
Цитата:
этой метки нет и в ax2009. Цитата:
Мог, конечно. |
|
![]() |
#3 |
Участник
|
Цитата:
Сообщение от zZ_TOP_Zz
![]() В ходе ковыряния в аксе натолкнулся на кусок кода, который выдает сообщение об ошибке используя метку @SYS24175 открыл меточный файл и удивился, так как - данная метка не включена в меточный файл axSYSRu.ald
... Да забыл сказать MS DAX Kernel 4.5.2503.630 Application Version 4.0.2501.122 @SYS24175 Валютный курс национальной валюты должен быть равен 100 Вполне возможно, что ваш "кусок кода" - это неудаленный устаревший код из ax3.0 |
|
|
За это сообщение автора поблагодарили: zZ_TOP_Zz (1). |
![]() |
#4 |
Участник
|
Кстати, а что за код то?
Я пытаюсь найти где используется метка @SYS24175 при помощи перекрестных ссылок в четверке, у меня такой метки в коде не находит. |
|
![]() |
#5 |
Member
|
Просмотрел приложения версий 4.0.2501.122 и 4.0.2501.347 (какие нашел быстро). Не нашел ссылки на метку. Вы назовите метод и класс. Может вам дадут правильный код (с правильной меткой). Или посмотрите сравнением слоев сами может... На каком слое у вас метод?
__________________
С уважением, glibs® |
|
![]() |
#6 |
int 20h
|
Цитата:
Сообщение рождает системный класс FormRealControl вызвается метод modified и условие проверки не выполняется бросая throw Error X++: Boolean modified() { Boolean ret; if ((someTable.CurrencyCode == CompanyInfo::find().currencyCode) && (this.realValue() != 100)) throw error("@SYS24175"); Return ret; } [c] \Classes\Info\add 14 [c] \Classes\Global\error 3 [c] \Classes\FormRealControl\modified 7 [c] \Classes\FormRealControl\leave [c] \Classes\FormRun\selectControl
__________________
It's just my Unhopelessnessabilityerism ![]() Trying to debug my mind ![]() Последний раз редактировалось zZ_TOP_Zz; 07.07.2009 в 18:37. |
|
![]() |
#7 |
Участник
|
Цитата:
а как вы получили текст этого метода? |
|
![]() |
#8 |
Участник
|
Цитата:
Нету такого в списке официальных http://forum.mazzy.ru/index.php?showtopic=881 вот приложение - это Axapta 4.0 SP2 EE Feature Pack 1 (HRM & Payroll) а кернел какой-то забавный. |
|
![]() |
#9 |
Member
|
Класс то системный, а вот код из контрола на форме. Сделайте сравнение слоев на этой форме. В стандарте на .modified() у этого контрола формы что-то есть?
Или назовите форму и путь к контролу.
__________________
С уважением, glibs® |
|
![]() |
#10 |
Member
|
Нашел. Это либо
\Data Dictionary\Tables\EmplAdvLine_RU\Methods\checkExchRate либо \Data Dictionary\Tables\LedgerJournalTrans\Methods\checkExchRate в 3.0 было. Вот код 4.0 X++: private boolean checkExchRate() { boolean ret = true; ; if (this.ExchRate != 100.00 && this.CurrencyCode == CompanyInfo::standardCurrency()) { ret = checkFailed(strfmt("@SYS85793", ExchRates::displayExchRate(100))); } return ret; } private boolean checkExchRate() { boolean ret = true; if (this.CurrencyCode == CompanyInfo::standardCurrency()) { if (this.ExchRate != 100.00) { ret = checkFailed(strfmt("@SYS85793", ExchRates::displayExchRate(100))); } } return ret; }
__________________
С уважением, glibs® |
|
![]() |
#11 |
Member
|
В общем, Маззи правильно сначала предположил. Вы код из 3.0 потянули откуда-то и затерли правильный код из 4.0.
Что интересно, в 3.0 у вас код не правлен. Непонятно зачем вы вообще его в 4.0 затянули из 3.0.
__________________
С уважением, glibs® |
|
|
За это сообщение автора поблагодарили: zZ_TOP_Zz (1). |
![]() |
#12 |
Боец
|
Не совсем в тему, но почему расчет ведётся жестко на 100 единиц, как в 3ке, так и в 4-ке?
ведь логичнее было бы брать LedgerParameters::find().expressExchRate() (General ledger parameters --> Tabpage 'Ledger' --> Group 'General' --> Field 'Express exchange rate') |
|
![]() |
#13 |
Member
|
А он хранится в БД за 100 всегда. Вот отображается в интерфейсе в соответствии с указанным вами параметром.
__________________
С уважением, glibs® |
|
![]() |
#14 |
int 20h
|
Всем спасибо...дело действительно в старом функционале который протащили в 4 из тройки. Проверил контрол на форме и нашел там этот модифай...
Хотя не понятно зачем они удалили метки из меточного файла. А как же обратная совместимость ![]() Будем считать тему закрытой. Спасибо. Что касается странной версии ядра то это последняя версия ядра высланая нам МС не помню какой это KB был, но если кому надо могу поискать.
__________________
It's just my Unhopelessnessabilityerism ![]() Trying to debug my mind ![]() |
|
![]() |
#15 |
Участник
|
Цитата:
в том числе был перенос в другой слой. полной обратной совместимости по меткам нет. |
|
![]() |
#16 |
Участник
|
А про билд?
Может расскажете что за билд такой? Интересно же. Цитата:
Сообщение от mazzy
![]() Нету такого в списке официальных http://forum.mazzy.ru/index.php?showtopic=881
вот приложение - это Axapta 4.0 SP2 EE Feature Pack 1 (HRM & Payroll) а кернел какой-то забавный. |
|
![]() |
#17 |
int 20h
|
Это был KB969779 он фиксит версию ядра до указанной в заголовке.
__________________
It's just my Unhopelessnessabilityerism ![]() Trying to debug my mind ![]() |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
![]() |
#18 |
Administrator
|
Ну кстати патч от KB944115 (см также KB950595) дает билд 4.0.2503.362. А вообще - на партнерсорсе лежит список всех изменений в ядре с указанием номера билда. Вполне возможно что очередной патч дает соответствующий номер
UPD О.. опередили уже
__________________
Возможно сделать все. Вопрос времени |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
![]() |
#19 |
Участник
|
Меня удивила вторая циферка. ни разу не видел в ней 5.
|
|
![]() |
#20 |
int 20h
|
Прошу прощения у Всех я похоже опечатался и задумался только после сообщения Мази о цифре 5. Версия ядра 4.5.2503.630 надо читать 4.0.2503.630
Извините еще раз...отвлекают ...теряешь сосредоточенность.
__________________
It's just my Unhopelessnessabilityerism ![]() Trying to debug my mind ![]() |
|