test code

PHOTO EMBED

Thu Apr 18 2024 09:12:19 GMT+0000 (Coordinated Universal Time)

Saved by @MinaTimo

internal final class TI_test23
{
    /// <summary>
    /// Class entry point. The system will call this method when a designated menu 
    /// is selected or when execution starts and this class is set as the startup class.
    /// </summary>
    /// <param name = "_args">The specified arguments.</param>
    public static void main(Args _args)
    {
        // create Advanced rule
        Name name = "test2";
        DimensionRule   DimensionRule;
        DimensionHierarchyView  DimensionHierarchyView;
        // get account structure 'SHC'
        select DimensionHierarchyView
            where DimensionHierarchyView.Name == curExt()
            && DimensionHierarchyView.UserLanguageId == xUserInfo::find().language;
        // create Advanced rule
        //DimensionRuleStorage newRuleStorage = DimensionRuleStorage::construct(name, name, DimensionHierarchyView.RecId);
        //newRuleStorage.save();

        //ttsbegin;
        //DimensionRule.initValue();
        //DimensionRule.Name = "test1";
        //DimensionRule.Description = "test1";
        //DimensionRule.AccountStructure = curExt();
        //DimensionRule.insert();
        //ttscommit;
        //DimensionAttribute dimensionAttribute = DimensionAttribute::findByName('MainAccount');
        //Info(name);
        //Info(strFmt("%1", DimensionHierarchyView.RecId));

        //DimensionRuleCriteria   DimensionRuleCriteria;
        //DimensionRule = DimensionRule::findByName(name, DimensionHierarchyView.RecId, NoYes::Yes);
        //Info(strFmt("%1", DimensionRule.RecId));

        //DimensionRuleCriteria.initValue();
        //DimensionRuleCriteria.DimensionAttribute = dimensionAttribute.RecId;
        //DimensionRuleCriteria.DimensionRule = DimensionRule.RecId;
        //DimensionRuleCriteria.RangeFrom = name;
        //DimensionRuleCriteria.RangeTo = name;
        ////DimensionRuleCriteria.WildCardString = DimensionCriteriaOperators::WildcardSQL; // 
        //DimensionRuleCriteria.insert();

        // 3
        LedgerAdvancedRuleStructureEntity   en;
        en.AccountRuleStructureName = "test3";
        en.Description = "test3";
        en.SegmentName01 = "BudgetCode";
        en.insert();
        // 2
        //boolean hierarchyCreated = DimensionHierarchyConstraint::createHierarchy(
        //    DimensionHierarchyType::AccountRuleStructure,
        //                name,
        //               name);
        //if(hierarchyCreated) Info("done");
        DimensionHierarchyConstraint d; 
        DimensionHierarchyType hierarchyType = DimensionHierarchyType::AccountRuleStructure;
        DimensionHierarchy activeDimensionHierarchy = DimensionHierarchy::findByTypeAndName(
                    hierarchyType,
                    name,
                    false,
                    true);
        Info(strFmt("%1", activeDimensionHierarchy.RecId));
        //activeDimensionHierarchy.onmo
        DimensionHierarchyConstraint::activateDraftHierarchy(5637172105);
        //DimensionRuleAppliedHierarchy

        DimensionHierarchyConstraintCriteria c;

    }

}
/*
class MK_Test2
{
    DimensionHierarchy dimHierarchy;
    DimensionConstraintTree dimConstraintTree;
    int dimLevelNum;

/// <summary>
/// Class entry point. The system will call this method when a designated menu
/// is selected or when execution starts and this class is set as the startup class.
/// </summary>
/// <param name = "_args">The specified arguments.</param>
    public static void main(Args _args)
    {
        MK_Test2 MK_Test2 = new MK_Test2();

        ttsBegin;

        MK_Test2.createHierarchy('MyHierarchy5', 'My hierarchy5');
        MK_Test2.addLevelToTree(5637145090, 'BudgetCode', 'BudgetCode', 1, '', ''); // BudgetCode
        //MK_Test2.addLevelToTree(5637145090, 'BudgetCode', 'BudgetCode', 1, '00500', '00700'); // BudgetCode

        ttsCommit;
    }

    //                          HierarchyName
    private void createHierarchy(HierarchyName _name, Description _description)
    {
        dimHierarchy.initValue();
        dimHierarchy.Description = _description;
        dimHierarchy.DraftDescription = dimHierarchy.Description ;
        dimHierarchy.Name = _name;
        dimHierarchy.IsDraft = true;
        dimHierarchy.DraftName = dimHierarchy.Name;
        dimHierarchy.StructureType = DimensionHierarchyType::AccountRuleStructure;
        dimHierarchy.insert();

        dimConstraintTree.DimensionHierarchy = dimHierarchy.RecId;
        dimConstraintTree.insert();
    }

    //
    private RefRecId addLevelToTree(DimensionAttributeRecId _attribute, Name _name, Description _description,
        DimensionOrdinal _ordinal, DimensionFromValue _from, DimensionToValue _to, boolean _additionalCriteria = false)
    {
        DimensionConstraintNodeCriteria dimConstraintNodeCriteria;
        DimensionConstraintNode dimConstraintNode;
        DimensionHierarchyLevel dimHierarchyLevel;

        if (! _additionalCriteria)
        {
            // Insert level in tree
            // ---------------------------------
            dimLevelNum++;
            dimHierarchyLevel.clear();
            dimHierarchyLevel.DimensionHierarchy = dimHierarchy.RecId;
            dimHierarchyLevel.Level = dimLevelNum;
            dimHierarchyLevel.DimensionAttribute = _attribute;
            dimHierarchyLevel.insert();
        }

        // Add range node to level
        // ------------------------
        dimConstraintNode.clear();
        dimConstraintNode.Description = _description;
        dimConstraintNode.DimensionConstraintTree = dimConstraintTree.RecId;
        dimConstraintNode.DimensionHierarchyLevel = dimHierarchyLevel.RecId;
        dimConstraintNode.IsOptional = false;
        dimConstraintNode.Name = _name;
        dimConstraintNode.Ordinal = _ordinal;
        //dimConstraintNode.ParentConstraintNode = _parentLevelId;
        dimConstraintNode.insert();

        // Add criteria to node
        dimConstraintNodeCriteria.clear();
        dimConstraintNodeCriteria.Ordinal = 1;
        dimConstraintNodeCriteria.DimensionConstraintNode = dimConstraintNode.RecId;

        if (_from || _to)
        {
            dimConstraintNodeCriteria.IsFromOpen = false;
            dimConstraintNodeCriteria.IsToOpen = false;
            dimConstraintNodeCriteria.RangeFrom = _from;
            dimConstraintNodeCriteria.RangeTo = _to;
        }
        else
        {
            dimConstraintNodeCriteria.WildCardString = '%';
            dimConstraintNodeCriteria.IsFromOpen = true;
            dimConstraintNodeCriteria.IsToOpen = true;
        }

        dimConstraintNodeCriteria.insert();
        return dimConstraintNode.RecId;
    }

}
*/
content_copyCOPY