Показать сообщение отдельно
Старый 28.07.2008, 18:15   #1  
Bishop is offline
Bishop
Участник
 
89 / 60 (3) ++++
Регистрация: 12.08.2004
Адрес: Москва
Ax 4.0 - ошибка в SysDatabaseLog.setDescription()
При добавлении в журнал базы данных таблиц, в titleField которых содержатся многомерные поля, возникает ошибка в методе таблицы SysDatabaseLog:
X++:
void setDescription(Common common)
{
    // ...
    str field2Str(fieldId fieldId)
    {
        return strfmt('%1', common.(fieldId)); // ОШИБКА ЗДЕСЬ
    }
    // ...
        description = field2Str(dictTable.titleField1());
    // ...
        description += (description?',':'')+field2Str(dictTable.titleField2());
    // ...
}
Предлагаю исправить следующим образом:
X++:
// ...
        //description = field2Str(dictTable.titleField1());
        description = field2Str(fieldId2ext(dictTable.titleField1(), 1));
        // ...
        //description += (description?',':'')+field2Str(dictTable.titleField2());
        description += (description?',':'')+field2Str(fieldId2ext(dictTable.titleField2(), 1));
        // ...
Замеченные таблицы с многомерными полями в titleField (Ax 4.0 SP2 EE FP1 RU HRP):
DEL_LedgerKeyTrans.Dimension
DimensionSetPreSimulated.DimensionCriteria
LedgerBalancesDim.Dimension
DimensionSetCombinationDuplicate.Dimension
RPayTblParameters.PayRate
RPayTblTrans.Stavka
За это сообщение автора поблагодарили: kashperuk (5).