Показать сообщение отдельно
Старый 06.07.2006, 12:02   #1  
DreamCreator is offline
DreamCreator
Moderator
Аватар для DreamCreator
Axapta Retail User
 
553 / 45 (3) +++
Регистрация: 04.11.2004
Адрес: Казань
InventLocation.address()
Добрый день!

Таблица InventLocation, метод address, слой sys (+ правлено мной):

PHP код:
display Addressing address()
{
    
// Address address = Address::find(this.tableId, this.recId, AddressType::None); // было на sys
   
    
Address address Address::find(this.tableIdthis.recId,
                
AddressType::RealAddress_RU);   // поправлено мной
   
    
if (address)
        return 
address.address;

    return 
CompanyInfo::find().address;

Таблица Address, метод find, слой sys:

PHP код:
static Address  find(tableId        tableId,
                     
recId          recId,
                     
AddressType    addressType,
                     
boolean        update false)
{
    
Address  address;
    ;

    if (
tableId && recId && addressType)
    {
        
address.selectForUpdate(update);

        
select firstonly address
            index TypeIdx
            where address
.addrTableId   == tableId  &&
                  
address.addrRecId     == recId    &&
                  
address.type          == addressType;
    }

    return 
address;

Если следовать логике sys-овского InventLocation.address, то addressType всегда равен AddressType::None, т.е. ноль и условие if (tableId && recId && addressType) в Address::find никогда не выполняется.