Miklix

ডায়নামিক্স 365 এ এক্স ++ কোড থেকে আর্থিক মাত্রার মান আপডেট করুন

প্রকাশিত: ১৬ ফেব্রুয়ারী, ২০২৫ এ ১২:০২:০৩ PM UTC
সর্বশেষ আপডেট: ১৩ নভেম্বর, ২০২৫ এ ১:৩৮:২৩ PM UTC

এই নিবন্ধটি ব্যাখ্যা করে যে ডাইনামিক্স 365-এ X++ কোড থেকে কীভাবে একটি আর্থিক মাত্রার মান আপডেট করা যায়, একটি কোড উদাহরণ সহ।


এই পৃষ্ঠাটি যতটা সম্ভব মানুষের কাছে পৌঁছানোর জন্য ইংরেজি থেকে মেশিন অনুবাদ করা হয়েছে। দুর্ভাগ্যবশত, মেশিন অনুবাদ এখনও একটি নিখুঁত প্রযুক্তি নয়, তাই ত্রুটি হতে পারে। আপনি যদি চান, আপনি এখানে মূল ইংরেজি সংস্করণটি দেখতে পারেন:

Update Financial Dimension Value from X++ Code in Dynamics 365

এই পোস্টের তথ্য Dynamics 365 এর উপর ভিত্তি করে তৈরি। এটি Dynamics AX 2012 তেও কাজ করা উচিত, কিন্তু আমি এটি স্পষ্টভাবে পরীক্ষা করিনি।

সম্প্রতি আমাকে কিছু ফর্ম লজিকের উপর ভিত্তি করে একটি একক আর্থিক মাত্রার মূল্য আপডেট করার দায়িত্ব দেওয়া হয়েছিল।

আপনি হয়তো জানেন, যেহেতু Dynamics AX 2012 আর্থিক মাত্রাগুলি পৃথক টেবিলে সংরক্ষণ করা হয় এবং একটি RecId এর মাধ্যমে রেফারেন্স করা হয়, সাধারণত একটি DefaultDimension ক্ষেত্রে।

মাত্রা পরিচালনার পুরো কাঠামোটি কিছুটা জটিল এবং আমি প্রায়শই এটির ডকুমেন্টেশন পুনরায় পড়তে বাধ্য হই, সম্ভবত কারণ এটি এমন কিছু নয় যা আমি প্রায়শই নিয়ে কাজ করি।

যাই হোক, বিদ্যমান ডাইমেনশন সেটে একটি ফিল্ড আপডেট করার কথা প্রায়শই আসে, তাই আমি ভাবলাম আমার প্রিয় রেসিপিটি লিখে ফেলি ;-)


একটি স্ট্যাটিক ইউটিলিটি পদ্ধতি এইরকম দেখতে পারে:

public static DimensionDefault updateDimension( DimensionDefault    _defaultDimension,
                                                Name                _dimensionName,
                                                DimensionValue      _dimensionValue)
{
    DimensionAttribute                  dimAttribute;
    DimensionAttributeValue             dimAttributeValue;
    DimensionAttributeValueSetStorage   dimStorage;
    DimensionDefault                    ret;
    ;

    ret             = _defaultDimension;

    ttsbegin;

    dimStorage      = DimensionAttributeValueSetStorage::find(_defaultDimension);
    dimAttribute    = DimensionAttribute::findByName(_dimensionName);

    if (_dimensionValue)
    {
        dimAttributeValue = DimensionAttributeValue::findByDimensionAttributeAndValue(  dimAttribute,
                                                                                        _dimensionValue,
                                                                                        true,
                                                                                        true);
        dimStorage.addItem(dimAttributeValue);
    }
    else
    {
        dimStorage.removeDimensionAttribute(dimAttribute.RecId);
    }

    ret = dimStorage.save();

    ttscommit;

    return ret;
}

এই পদ্ধতিটি একটি নতুন (অথবা একই) DimensionDefault RecId প্রদান করে, তাই যদি কোনও রেকর্ডের জন্য একটি মাত্রা মান আপডেট করা হয় - যা সম্ভবত সবচেয়ে সাধারণ পরিস্থিতি - তাহলে আপনার সেই রেকর্ডের মাত্রা ক্ষেত্রটি নতুন মান দিয়ে আপডেট করা নিশ্চিত করা উচিত।

আরও পড়ুন

যদি আপনি এই পোস্টটি উপভোগ করেন, তাহলে আপনার এই পরামর্শগুলিও পছন্দ হতে পারে:


ব্লুস্কাইতে শেয়ার করুনফেসবুকে শেয়ার করুনলিংকডইনে শেয়ার করুনটাম্বলারে শেয়ার করুনX-এ শেয়ার করুনলিংকডইনে শেয়ার করুনপিন্টারেস্টে পিন করুন

মিকেল ক্রিস্টেনসেন

লেখক সম্পর্কে

মিকেল ক্রিস্টেনসেন
মিকেল হলেন miklix.com এর স্রষ্টা এবং মালিক। একজন পেশাদার কম্পিউটার প্রোগ্রামার/সফ্টওয়্যার ডেভেলপার হিসেবে তার ২০ বছরেরও বেশি অভিজ্ঞতা রয়েছে এবং বর্তমানে তিনি একটি বৃহৎ ইউরোপীয় আইটি কর্পোরেশনে পূর্ণকালীন কর্মরত। ব্লগিং না করার সময়, তিনি তার অবসর সময় বিভিন্ন আগ্রহ, শখ এবং কার্যকলাপে ব্যয় করেন, যা কিছুটা হলেও এই ওয়েবসাইটে কভার করা বিভিন্ন বিষয়ের মধ্যে প্রতিফলিত হতে পারে।