|
|
#7 |
|
Banned
|
Ооо! Классика! Самое интересное, что этот "восточноевропейский" метод в принципе невозможно написать правильно. В польской локализации там передаются накладные через запятую. Во всех остальных странах было бы верно поставить queryValue(). К несчастью, у меня в клиентах - концерн с двумя польскими, датской и русскими фабриками. Приходится делать проверки на CompanyInfo::features_W()
Там есть еще прелесть: если packingSlipId пришел пустой, то идет поиск строки InventTrans c ПУСТОЙ (!) накладной. Представляю переписанный тремя поколениями разработчиков пассаж, который, вроде, работает при всех условиях: X++: ...
packSlipId = packingSlipId ? packingSlipId : movement.packingSlipForUpdate_W();
if( packSlipId )
{
packSlipId = strRTrim(strLTrim(packSlipId));
if( strScan(packSlipId,",",1,strlen(packSlipId)) && CompanyInfo::features_W() == CRSEFeatures_W::PL)
packSlipId = packSlipId;
else
packSlipId = queryValue(packSlipId);
qbds.addRange(fieldnum(InventTrans, PackingSlipId)).value(packSlipId);
}
...Последний раз редактировалось EVGL; 02.12.2011 в 18:58. |
|
|
|
| За это сообщение автора поблагодарили: Pustik (3), Logger (5). | |
|
|
|