vdcasino
betexper
imajbet
perabet
casinomaxi
ilbet

چنانچه در هریک از مراحل نصب یا کاربری نرم‌افزارها به مشکلی برخورد کرده‌اید یا هر سوال، اشکال یا ابهامی در این زمینه دارید، می‌توانید پاسخ خود را ابتدا در مطالب موجود جستجو و در صورت لزوم به عنوان یک مبحث جدید مطرح کنید، تا کارشناسان پشتیبانی به آن پاسخ دهند.

به منظور ثبت سوال جدید و یا پاسخ به موضوعات موجود، ابتدا می بایست از طریق صفحه مربوطه به سامانه وارد شوید. چنانچه نام کاربری دریافت نکرده اید، به صورت رایگان و از طریق صفحه مربوطه، ابتدا در سامانه ثبت نام نمایید.

انجمن های پشتیبانی سیمرغ نوسا

قبليقبلي Go to previous topic
بعديبعدي Go to next topic
آخرين ارسال 23 شهریور 1404 11:34 ق.ظ توسط  Tariverdi
دریافت مشخصات گردش کار از طریق کلید گردش کار (WS_GetWorkflowDataByKey)
 0 پاسخ
مرتب:
شما مجاز به پاسخ به اين پست نمي باشيد.
مولف پيغام ها


کاربر باتجربه


کاربر باتجربه


--
23 شهریور 1404 11:34 ق.ظ

    دریافت مشخصات گردش کار از طریق کلید گردش کار

    function WS_GetWorkflowDataByKey (const ADBName: String; AKey: Integer): String;

    Created: Version 12.03.00

    این تابع مشخصات یک گردش کار از قبیل نام، کد، دسته بندی و ... را بصورت یک رشته حرفی به فرمت JSON تولید می­کند.

    شرح پارامترهای تابع
    • ADBName (نام پایگاه) : در این پارامتر، نام پایگاه بصورت رشته حرفی درج می شود. برای مثال "_ReposXP_Workflow"
    • Akey (کلید گردش کار): محتوای این پارامتر یک رشته حرفی حاوی یک عدد صحیح است که کلید گردش کار را تعیین می کند. مثلا "1"
    فرمت خروجی تابع

    خروجی این تابع، یک رشته حرفی به فرمت JSON و شامل ویژگیهای زیر است:

    {"_ErrNo":"0",  کد خطا

     "_Name":"\u062A\u0633\u062A 1",   نام گردش کار

     "_EngName":"English Name",    نام لاتین گردش کار

     "_Code":"3",     کد گردش کار

     "_Desc": "\u062A\u0633\u062A 1",      یادداشت گردش کار

     "_DefaultPriority": "1",      کلید اولویت پیش فرض

     "_Category": "1",        کلید دسته بندی  

     "_CltScript": "",    برنامه گردش کار در کلاینت

     "_ShowInMenu": ""}    وضعیت نمایش در منوی وب

     

    شرح ویژگیهای خروجی Json

    این رشته حرفی شامل ویژگیهای زیر است:

    • _ErrNo(کدخطا): اگر اجرای تابع با خطا روبرو شود در اینجا کد خطا نمایش داده می شود. شماره 0  به معنی عدم وجود خطاست.
    • _Name (نام گردش کار): همانطور که در مثال هم می بینید اگر نام گردش کار به فارسی باشد، کاراکترهای فارسی به شکل Escaped Unicode ذخیره می شود.  در این مثال نام گردش کار "تست 1" بوده که به صورت «\u062A\u0633\u062A 1» ذخیره شده است.
    • برای اطمینان از قابل تفسیر و Decode شدن داده ها در انواع پایگاههای داده ، در استاندارد Json کاراکترهای غیر انگلیسی به شکل Escaped Unicode ذخیره می شود که ساختار آن شامل کاراکترهای /u و یک عدد مبنای 16 (Hexadecimal)است.
    • EngName_(نام لاتین گردش کار)
    • _Code (کد گردش کار)
    • _Desc (یادداشت گردش کار)
    • _DefaultPriority (کلید اولویت پیش فرض کارها): هر گردش کار می تواند دارای یک اولویت پیش فرض باشد که در هنگام ایجاد کار جدید به کار اختصاص داده می شود. در این قسمت کلید این اولویت بصورت یک عدد صحیح نمایش داده می شود. لازم به توضیح است که عدد صفر به معنی این است که اولویت پیش فرض برای این گردش کار وجود ندارد.
    • _Category (کلید دسته بندی گردش کار): این ویژگی کلید دسته بندی گردش کار را نشان می دهد که عدد صفر به معنی این است که این گردش کار در هیچ دسته بندی قرار نگرفته است و به عبارت دیگر گزینه «تعیین نشده»
    • CltScript_ (برنامه گردش کار در کلاینت): یکی از امکانات گردش کار تعیین رفتار فیلدها در فرمهای وظایف از طریق برنامه کلاینت است که سه رفتار از نوع اعتبارسنجی، محاسبه مقدار و تعیین وضعیت ویرایش را برای فیلدها تعیین می کند. در این ویژگی، برنامه گردش کار به شکل یک رشته حرفی ذخیره می شود.
    • _ShowInMenu (وضعیت نمایش در منوی کلاینت وب): اگر بیاد داشته باشید، در کلاینت وب، با هدف دسترسی سریع تر به گردش کارهای مدیریتی و نظارتی، امکان درج و نمایش این گردش کارها  در منو وجود دارد. در هر صورت در این ویژگی که از نوع Boolean است، عدد 1 به معنی نمایش و عدد 0 به معنی عدم نمایش گردش کار در منوی وب است.

     

    مثال: دریافت مشخصات گردش کار «کالاها» در پایگاه «تست گردش کار»

    function jsonToArray(jsonStr) {

         try {

            let obj = JSON.parse(jsonStr);

            function convert(value) {

            if (typeof value === "object" && value !== null) {

               if (Array.isArray(value)) {

                 // اگر مقدار یک آرایه باشه، هر عضو رو جداگانه پردازش کن

                  return value.map(item => convert(item));

               } else {

              // اگر مقدار یک آبجکت باشه

                  return Object.entries(value).map(([key, val]) => ({

                   key,

                   value: convert(val)

                 }));

            }

          }

          return value; // مقادیر ساده (string, number, etc.)

        }

        return convert(obj);

     

      } catch (e) {

        console.error("JSON نامعتبر است:", e.message);

        return [];

      }

    }

    function WorkTaskWorkflowData () {

       ReposUtils.HostURL = "nosa-test";

       ReposUtils.UserName = "nosa/tariverdi";

                     var res="";

       res=ReposUtils.WS_GetWorkflowDataByKey("_ReposXP_workflow", "1" )  ;

       let farsiRes=jsonToArray(res);

       WorkState.ReturnText=JSON.stringify(farsiRes, null, 2);

    }

    در این مثال، مشخصات گردش کار «کالاها» با کلید "1" از پایگاه تست گردش کار (_ReposXP_workflow) به شکل زیر نمایش داده می شود. توضیح این که در این مثال برای خوانا بودن عبارتهای فارسی و تفکیک ویژگیها از تابعی بنام jsonToArray برای تبدیل خروجی Json به یک آرایه استفاده شده است:

     

    نکته قابل توجه در این مثال، ویژگی «برنامه کلاینت» (_CltScript) است که بصورت یک رشته حرفی نمایش داده شده است. در این رشته حرفی، عبارتهای «\n» به معنی CRLF(Carriage Return + Line Feed) یا انتقال به ابتدای خط اول از پاراگراف بعد است که مرز پاراگرافها را مشخص می کند. ملاحظه می کنید که تمام توابع موجود در برنامه کلاینت از انواع اعتبار سنجی (WorkFieldValidKalaNum) ، محاسبه مقدار (WorkFieldCalcPaid) و وضعیت ویرایش (WorkFieldReadOnlyPaidMoney) در این مثال وجود دارد.

    پيوست ها
    شما مجاز به پاسخ به اين پست نمي باشيد.


    kurtkoy escort
    bostanci escort
    ankara escort
    comendo minha prima gordinha rajini murugan movie hd moglie con due negri calcaterra e lara scena hot mujeres con ropa interior transparente