vdcasino
betexper
imajbet
perabet
casinomaxi
ilbet

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

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

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

قبليقبلي Go to previous topic
بعديبعدي Go to next topic
آخرين ارسال 05 مهر 1404 12:05 ب.ظ توسط  Tariverdi
فهرست روشهای افزودن منابع دیجیتال (WS_GetDOAddWizardList)
 0 پاسخ
مرتب:
شما مجاز به پاسخ به اين پست نمي باشيد.
مولف پيغام ها


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


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


--
05 مهر 1404 12:05 ب.ظ

    فهرست روشهای افزودن منابع دیجیتال

    function WS_GetDOAddWizardList(const ADBName: String; ACategoryMask: Integer; AworkflowKey: Integer): String;

    Created: Version 12.10.00

    این تابع اطلاعات روشهای از پیش تعریف شده برای افزودن منابع دیجیتال را به به صورت یک رشته حرفی با فرمت JSON تولید می کند.

    توضیح: در سیستم مدیریت فرایندها، کارها یا ماهیت مستقل دارند که در این صورت ابتدا یک منبع دیجیتال ایجاد می شود و سپس کار به این منبع دیجیتال مرتبط می شود. در این حالت، کارها با استفاده از روشهای افزودن منبع دیجیتال آغاز می شود.  یا این که کارها ماهیت مستقل ندارند و به یک منبع دیجیتال موجود مرتبط می شوند که در این حالت نیازی به ایجاد یک منبع دیجیتال وجود ندارد و کار به منبع دیجیتالی که از قبل موجود است مرتبط می شود.

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

      doawCategoryGeneral                      = 0;   عادی 

      doawCategoryWorkflow                   = 1  فرایند گردش کار   ;

      doawCategoryFloat                            = 2;  شناور 

      doawCategorySemiFloat                   = 3; نیمه شناور   

      doawCategoryWorkflowSemiFloat = 4; فرایند گردش کار نیمه شناور  

    روش محاسبه مقدار پارامتر

    همانطور که گفته شد هر گزینه یک بیت با یک عدد خاص است که مقدار عدد هر گزینه، برابر با 2 به توان آن عدد است. به این ترتیب مقدار هر گزینه (دسته بندی روش افزودن) به شرح زیر محاسبه می شود:

    عادی: 20  = 1 

    فرایند گردش کار: 21  =2

    شناور:  22= 4

    نیمه شناور:  23= 8

    فرایند گردش کار نیمه شناور:  24= 16

     

    اگر چند گزینه را مد نظر داشته باشید ، مقدار این پارامتر برابر با مجموع مقادیر گزینه ها خواهد بود. برای مثال اگر روشهای  «فرایند گردش کار» و «فرایند گردش کار نیمه شناور » را می خواهید باید مقدار 2+16=18 و یا اگر روشهای «شناور» و «نیمه شناور» را مد نظر دارید باید مقدار 8+4=12 برای این پارامتر اختصاص دهید.

    نکته مهم: مقدار 1- به معنی انتخاب تمام گزینه هاست.

     

    • AworkflowKey (کلید گردش کار) : اگر مقدار این پارامتر صفر پاس شود یا مقداری وارد نشود به معنی تمام گردش کارها خواهد بود. در غیر این صورت اگر کلید گردش کار، وارد شود آنگاه فهرست روشهای افزودن مرتبط با همان گردش کار خاص نمایش داده خواهد شد.

     

    الگوی خروجی تابع

    {"_ErrNo":"0",

     "DOAddWizardArray":[

    {"_Key":"4",

     "_Code":"4",

     "_Name":"\u0646\u0645\u0648\u0646\u0647",

     "_Category":"1",

     "_AllDOsHaveUniqueContentKind":"-1",

     "_DefaultContentKind":"6"},

    .

    .

     ]}

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

    1. _ErrNo )شماره خطا (: اگر اجرای تابع با خطا روبرو شود در اینجا کد خطا نمایش داده می شود. شماره  به معنی عدم وجود خطاست.
    2. _DOAddWizardArray (آرایه روشهای افزودن منبع دیجیتال): در این ویژگی، که به شکل آرایه است، ویژگی های اصلی روشهای افزودن منابع دیجیتال، به شرح زیر ثبت می شود:
    • _Key (کلید روش افزودن منبع دیجیتال)
    • _Code (کد روش افزودن)
    • _Name (نام روش افزودن ): همانطور که در مثال هم می بینید اگر نام روش افزودن به فارسی باشد، کاراکترهای فارسی به شکل Escaped Unicode ذخیره می شود که البته می توانید به ترتیبی که در بخشهای بعدی شرح داده شده است برای تست، این کاراکترها را به شکل فارسی خوانا مشاهده کنید.
    • _Category (دسته بندی روش افزودن): این ویژگی به شکل یک عدد صحیح است که شماره بیت (bit) دسته بندی را نشان می دهد. مثلا 3 یعنی دسته بندی «شناور»
    • _AllDOsHaveUniqueContentKind (نوع محتوای تمام منابع دیجیتال مشخص هستند): اگر طراح گردش کار تصمیم بگیرد که تمام کارهای گردش کار از یک نوع محتوا باشند آنگاه در تنظیمات روش افزودن منبع دیجیتال (شکل زیر)، این گزینه را فعال می کند :

     

    در این صورت در این ویژگی عدد 1- و در غیر این صورت عدد 0 قرار خواهد گرفت. یادآوری می شود که در این حالت، در هنگام ایجاد کار جدید، کاربر، اساسا در دیالوگ ایجاد کار جدید، نوع محتوا را تعیین نمی کند و کار با یک محتوای پیش فرض که در قسمت بعد توضیح داده شده است ایجاد می شود. اما در حالت 0، نوع محتوا در هنگام ایجاد کار جدید و توسط کاربر، تعیین می شود.

    • _DefaultContentKind (کلید نوع محتوای پیش فرض): این ویژگی کلید نوع محتوای پیش فرض را نشان می دهد. مثلا24  که کلید نوع محتوای "موسیقی" است. توجه کنید که اگر گزینه مشخص بودن تمام منابع دیجیتال (که در قسمت قبل توضیح داده شد) فعال باشد آنگاه این نوع محتوا به شکل خودکار و بدون دخالت کاربر به کار تعلق خواهد گرفت در غیر این صورت، کاربر در هنگام تعریف کار جدید، فهرست نوع محتواها را می بیند و می تواند محتوای پیش فرض را تغییر دهد (شکل زیر):

     

    در این مثال، گزینه «نوع محتوای تمام منابع دیجیتال مشخص هستند» فعال نیست و لذا در هنگام ایجاد کار جدید، با دیالوگی شبیه به شکل زیر مواجه خواهیم شد:

     

    ملاحظه می کنید که سیستم بطور خودکار نوع محتوای پیش فرض را پیشنهاد می کند اما کاربر می تواند فهرست نوع محتوا را باز کند و نوع مورد نظر خود را انتخاب کند.

    مثالها

    قبل از ارائه مثالها باید یک نکته مهم را در نظر داشته باشید که از فهرست روشهای از پیش تعریف شده افزودن منابع دیجیتال، تنها روشهایی در خروجی می آید که دسترسی کاربر برنامه به آنها مجاز است .

    مثال 1: فهرست تمام روشهای افزودن منابع دیجیتال در پایگاه «تست گردش کار»

    برای این کار، اسکریپت زیر را به برنامه گردش کار اضافه می کنیم:

    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 WorkTaskAddWizardList() {

       ReposUtils.HostURL = “nosa-test”;

       ReposUtils.UserName = “nosa/tariverdi”;

       var res=””;

       res=ReposUtils.WS_GetDOAddWizardList(“_ReposXP_workflow”, -1, 0);

       let farsiRes=jsonToArray(res);

       WorkState.ReturnText=JSON.stringify(farsiRes);  

    }

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

    برای نمونه روشی که با کادر قرمز مشخص شده است دارای کلید 7، کد 23 ، نام «تست نیمه شناور»، دسته بندی 3 (نیمه شناور)، گزینه «تمام منابع دیجیتال دارای نوع محتوا"ی غیر فعال و نوع محتوای پیش فرض 3 (پیوست نامه) است.

     

    مثال 2: فهرست روشهای افزودن «شناور» و «نیمه شناور» در پایگاه تست گردش کار

    قبلا توضیح داده شد که روش شناور بیت 2 و روش نیمه شناور بیت 3 هستند لذا در این مثال باید به شکل زیر، پارامتر AcategoryMask  را برابر با 22+23=12 قرار دهیم:

       res=ReposUtils.WS_GetDOAddWizardList(“_ReposXP_workflow”, 12, 0);

    به این ترتیب، فهرست روشها به صورت زیر درج می شود:

     
    مثال 3: فهرست روشهای افزودن مرتبط با گردش کار «کالاها»

    کلید این گردش کار 1 است بنابراین در این مثال باید به شکل زیر، پارامتر AworkflowKey را برابر با 1 قرار دهیم:

       res=ReposUtils.WS_GetDOAddWizardList(“_ReposXP_workflow”, -1, 1);

    در صورت فایل خروجی به شکل زیر خواهد بود:

    برای تست این مثال خالی از لطف نیست که به روشهای آغاز کار مرتبط با این گردش کار (کالاها) نگاهی بیندازیم:

     

    ملاحظه می کنید که این گردش کار از طریق فعال شدن گزینه محدودیت روشهای آغاز کار، به سه روش بالا محدود شده است که در فایل خروجی نیز مشاهده کردیم. حال اگر این گزینه را غیرفعال کنیم قاعدتا این گردش کار به شکل زیر، با تمام روشهای افزودن منابع دیجیتال مرتبط خواهد شد:

     

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


    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