Показать сообщение отдельно
Старый 12.08.2019, 16:41   #16  
wojzeh is offline
wojzeh
Участник
Аватар для wojzeh
Соотечественники
 
672 / 512 (19) +++++++
Регистрация: 27.04.2006
Адрес: Montreal
Цитата:
Сообщение от mazzy Посмотреть сообщение
Я правильно понимаю, что сейчас есть таблица, устроенная подобно InventDim, в которой каждое значение аналитики находится в своей колонке. а в GeneralJournalAccountEntry указывается идентификатор, подобный InventDim?
ага. на-ка вот, насладись красотой!

Нажмите на изображение для увеличения
Название: DimensionAttributeValueCombination.png
Просмотров: 120
Размер:	95.6 Кб
ID:	12365

открываешь такой это чудо-юдо в бровзере, а там - хоба-на!

Нажмите на изображение для увеличения
Название: DimensionAttribute2.png
Просмотров: 129
Размер:	74.9 Кб
ID:	12366

круче, чем у копперфильда, разрезающего амаяка акопяна!

а поиск идёт по имени столбца

X++:
/// <summary>
    /// Gets the Value fieldId of the <c>DimensionAttributeValueCombination</c> table for a <c>DimensionAttribute</c> name.
    /// </summary>
    /// <param name = "_dimensionAttributeName">The name of the <c>DimensionAttribute</c>.</param>
    /// <returns>The Id of the Value field.</returns>
    public static FieldId getDimensionValueFieldId(Name _dimensionAttributeName)
    {
        container cachedResult = DimensionCache::getValue(DimensionCacheScope::DimensionKeyValueColumn, [DimensionMetadataConstants::DimensionCombinationValueColumn, _dimensionAttributeName]);

        if (cachedResult == conNull())
        {
            DimensionAttribute dimensionAttribute = DimensionAttribute::findByName(_dimensionAttributeName);

            if (!dimensionAttribute)
            {
                throw error(Error::wrongUseOfFunction(funcName()));
            }

            if (dimensionAttribute.getStatus() == DimensionAttributeStatus::Inactive)
            {
                throw error("@Dimension:DimensionAttributeInactive");
            }

            cachedResult = [fieldName2id(tableNum(DimensionAttributeValueCombination), dimensionAttribute.DimensionValueColumnName)];
            DimensionCache::insertValue(DimensionCacheScope::DimensionKeyValueColumn, [DimensionMetadataConstants::DimensionCombinationValueColumn, _dimensionAttributeName], cachedResult);
        }

        FieldId dimensionAttributeFieldId = conpeek(cachedResult, 1);

        return dimensionAttributeFieldId;
    }
Название: DimensionAttribute.png
Просмотров: 895

Размер: 54.0 Кб
__________________
Felix nihil admirari
За это сообщение автора поблагодарили: mazzy (2).