|  06.10.2004, 17:59 | #1 | 
| NavAx | Случайно наткнулся на код 
			
			Axapta 3.0 SP3 HF1 Класс InventDimCtrl_Frm_Mov_Transfer слой (sys) PHP код: 
			  
				__________________ С уважением, Игорь Ласийчук. | 
|  | 
|  06.10.2004, 18:26 | #2 | 
| Участник | 
			
			Ну что вы так уж привередничаете?   Этот код по крайней мере работает...   
				__________________ Здесь могла быть Ваша реклама! | 
|  | 
|  06.10.2004, 18:36 | #3 | 
| Модератор | 
			
			Это называется КОК   Константно - Ориентированный Код Много ли там такого, можно узнать, запустив поиск по "fwt"  С Уважением, Георгий | 
|  | 
|  07.10.2004, 05:41 | #4 | 
| Участник | 
			
			Не знаю какой глубинный смысл стоит за словосочетанием "константно-ориентированный код", но смысл сего куска кода очевиден поставить на строчку tmpFieldId = tmpFieldId; брякпойнт и отлаживать случай когда он равен 7... Мне гораздо более интересным показался с этой точки зрения метод decodeItemId класса Barcode. Смысл метода - найти в базе ItemId товара по отсканированному штрих-коду: PHP код: 
			  P.S. AX 3.0 SP2 P.P.S Хотя и тут я подозреваю как именно эта странность поимела место быть. | 
|  | 
|  07.10.2004, 09:14 | #5 | 
| Участник | 
			
			Наверное, метод decodeItemId() писали какие-нибудь аутсорсеры, у которых оплата идет по количеству написанных строк кода   
				__________________ Когда гестапо перекрыло все выходы, Штирлиц вышел через вход! | 
|  | 
|  07.10.2004, 10:25 | #6 | 
| Модератор | 
			
			Возможено, речь сначала шла о InventTable decodeItemId(str _barcodeStr = barcodeStr) метод findInputBarcode возвращал ItemId, по которому происходил поиск в InventTable и возвращалась целая запись. Потом была оптимизация, и люди поняли, что нет надобности тянуть всю запись. У меня есть подозрения, что данный код - результат "оптимизации".. 2Alks Это код, завязанный на константы, прошитые в коде, в данном случае "fwt". С Уважением, Георгий. | 
|  | 
|  07.10.2004, 11:21 | #7 | 
| Участник | Цитата: 
		
			Изначально опубликовано George Nordic  2Alks Это код, завязанный на константы, прошитые в коде, в данном случае "fwt".  Моя версия по поводу decodeItemId() исходит из того что у InventTable есть устаревшее поле DEL_BarCode. Соответственно ляп сей появился когда это поле устраняли, а до этого устранения участок кода видимо выглядел так: select firstonly inventTable index hint ItemIdx where inventTable.BarCode == itemId; Мораль: все мы люди.   | 
|  | 
|  07.10.2004, 11:41 | #8 | 
| Участник | 
			
			2 Alks Ну, положим, так то он точно не выглядел... Минимум -не было hint ItemIdx | 
|  | 
|  07.10.2004, 13:18 | #9 | 
| Участник | Цитата: 
		
			Изначально опубликовано xonix  2 Alks Ну, положим, так то он точно не выглядел... Минимум -не было hint ItemIdx   | 
|  | 
|  07.10.2004, 13:34 | #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 | 
|  |