![]() |
#1 |
NavAx
|
Случайно наткнулся на код
Axapta 3.0 SP3 HF1
Класс InventDimCtrl_Frm_Mov_Transfer слой (sys) PHP код:
![]()
__________________
С уважением, Игорь Ласийчук. |
|
![]() |
#2 |
Участник
|
Ну что вы так уж привередничаете?
![]() Этот код по крайней мере работает... ![]()
__________________
Здесь могла быть Ваша реклама! |
|
![]() |
#3 |
Модератор
|
Это называется КОК
![]() Много ли там такого, можно узнать, запустив поиск по "fwt" ![]() С Уважением, Георгий |
|
![]() |
#4 |
Участник
|
Не знаю какой глубинный смысл стоит за словосочетанием "константно-ориентированный код", но смысл сего куска кода очевиден поставить на строчку tmpFieldId = tmpFieldId; брякпойнт и отлаживать случай когда он равен 7...
Мне гораздо более интересным показался с этой точки зрения метод decodeItemId класса Barcode. Смысл метода - найти в базе ItemId товара по отсканированному штрих-коду: PHP код:
![]() P.S. AX 3.0 SP2 P.P.S Хотя и тут я подозреваю как именно эта странность поимела место быть. |
|
![]() |
#5 |
Участник
|
Наверное, метод decodeItemId() писали какие-нибудь аутсорсеры, у которых оплата идет по количеству написанных строк кода
![]()
__________________
Когда гестапо перекрыло все выходы, Штирлиц вышел через вход! |
|
![]() |
#6 |
Модератор
|
Возможено, речь сначала шла о
InventTable decodeItemId(str _barcodeStr = barcodeStr) метод findInputBarcode возвращал ItemId, по которому происходил поиск в InventTable и возвращалась целая запись. Потом была оптимизация, и люди поняли, что нет надобности тянуть всю запись. У меня есть подозрения, что данный код - результат "оптимизации".. 2Alks Это код, завязанный на константы, прошитые в коде, в данном случае "fwt". С Уважением, Георгий. |
|
![]() |
#7 |
Участник
|
Цитата:
Изначально опубликовано George Nordic
2Alks Это код, завязанный на константы, прошитые в коде, в данном случае "fwt". ![]() Моя версия по поводу decodeItemId() исходит из того что у InventTable есть устаревшее поле DEL_BarCode. Соответственно ляп сей появился когда это поле устраняли, а до этого устранения участок кода видимо выглядел так: select firstonly inventTable index hint ItemIdx where inventTable.BarCode == itemId; Мораль: все мы люди. ![]() |
|
![]() |
#8 |
Участник
|
2 Alks
Ну, положим, так то он точно не выглядел... Минимум -не было hint ItemIdx |
|
![]() |
#9 |
Участник
|
Цитата:
Изначально опубликовано xonix
2 Alks Ну, положим, так то он точно не выглядел... Минимум -не было hint ItemIdx ![]() |
|
![]() |
#10 |
Administrator
|
Цитата:
Изначально опубликовано George Nordic
Много ли там такого, можно узнать, запустив поиск по "fwt" Хотя в случае с Barcode никакие Best Practices не помогут. Как говорится, ошибка в ДНК. ![]()
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|