vdcasino
betexper
imajbet
perabet
casinomaxi
ilbet

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

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

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

قبليقبلي Go to previous topic
بعديبعدي Go to next topic
آخرين ارسال 09 بهمن 1402 03:04 ب.ظ توسط  Tariverdi
آموزشی: نحوه فیلتر کردن جستجوی کارها (SearchWork) براساس وضعیت کارها (Status)
 4 پاسخ
مرتب:
شما مجاز به پاسخ به اين پست نمي باشيد.
مولف پيغام ها


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


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


--
04 تیر 1401 10:37 ق.ظ

    همانطور که می دانید متد SearchWork برای جستجو در کارها بکار می رود. فرمت این متد به شکل زیر است:

     

     

    مقدار مشخصه Status در data نشان دهنده وضعیت کارهایی است که جستجو می شود. برای روشن تر شدن مطلب بهتر است با انواع وضعیتهای کارها آشنا شویم:

    انواع وضعیتهای کارها

    کارها اساسا شش وضعیت دارند:

    • کارهای فعال
    • کارهای متوقف شده با خطا
    • کارهای لغو شده
    • کارهای پایان یافته
    • کارهای تعلیق نشده
    • کارهای تعلیق شده

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

    مقدار دهی مشخصه Status

    بطور کلی اگر یک مفهوم چندحالتی باشد این مفهوم بهتر است به شکل Bitwise تعریف شود. به این معنی که برای هر حالت یک Bit در نظر گرفته می شود که دو حالت (0، و 1) را می تواند داشته باشد. سپس ترکیب حالتها با یک عدد باینری (مبنای دو) نشان داده می شود که معادل این عدد در مبنای 10 مقداری است که ترکیب حالتهای این مفهوم  را مشخص می کند. حال از آنجایی که مفهوم وضعیت کار هم چند حالتی است (فعلا 6 حالت دارد) لذا برای محاسبه  Status در اینجا از روش BitWise استفاده شده است. به این ترتیب برای هر یک از وضعیت ها یک Bit به شرح زیر تعیین شده است.

     

    Bit0 = Active Works (فعال)

    Bit1 = Failed With Error Works (متوقف شده با خطا)

    Bit2 = Aborted Works (لغو شده)

    Bit3 = Ended Works ( پایان یافته)

    Bit4 = Not Suspended Works (تعلیق نشده)

    Bit5 = Suspended Works (تعلیق شده)

     

    مقدار هرکدام از این Bitها برابر با 0 یا 1 است که 0 به معنی عدم انتخاب این وضعیت و 1 به معنی انتخاب این وضعیت است. لذا این شش بیت در کنار هم یک عدد باینری (در مبنای 2) را تشکیل می دهند که ترکیبهای متفاوت و متعددی از وضعیتها را شامل خواهند شد. برای نمونه به مثالهای زیر توجه کنید:

    توضیحات

    Bit0 فعال

    Bit1

    توقف با  خطا

    Bit2 لغو شده

    Bit3

    پایان یافته

    Bit4

    تعلیق نشده

    Bit5

    تعلیق شده

    عدد وضعیت در مبنای 2

    عدد وضعیت در مبنای 10

    تمام کارهای فعال و غیرفعال

    1

    1

    1

    1

    0 0

    1111

    15

    فقط کارهای پایان یافته

    0

    0

    0

    1

    0 0

    1000

    8

    فقط کارهای لغو شده

    0

    0

    1

    0

    0 0

    100

    4

    کارهای غیرفعال (متوقف، لغو شده و پایان یافته)

    0

    1

    1

    1

    0 0

    1110

    14

    کارهای فعال تعلیق نشده* 1 0 0 0 1 0 10001 17
    کارهای فعال تعلیق شده 1 0 0 0 0 1 100001 33
    کل کارهای فعال 1 0 0 0 0 0 1 1

     

    * : اگر هیچ مقداری برای Status تعیین نشود، این جستجو بصورت پیش فرض، کارهای با وضعیت فعال و تعلیق نشده را بازیابی خواهد کرد. بنابراین  بجای 17 می توانید  از عدد صفر استفاده کنید یا اینکه بطور کلی مقداری را برای status تعیین نکنید.

    روش تبدیل عدد باینری به عدد دهدهی (مبنای 10)

    برای این کار کافی است عدد باینتری را از سمت راست و بسته به موقعیت در توانهای عدد 2 ضرب کنید:

    برای مثال، عدد دهدهی ردیف دوم یعنی کارهای پایان یافته را محاسبه می کنیم:

    وضعیت کارهای پایان یافته در مبنای 2=1000

    این وضعیت در مبنای 10 = 1*2+ 0*2+ 0*21 + 0*20 =8+0+0+0=8

    مثال 2: کارهای غیرفعال (متوقف، لغو شده و پایان یافته)

    1110=وضعیت در مبنای 2

    این وضعیت در مبنای 10 = 1*2+ 1*2+ 1*21 + 0*20 =8+4+2+0=14

    مثال 3: کارهای تعلیق شده 

    100001=وضعیت در مبنای 2

    این وضعیت در مبنای 10 = 1*25  + 0*24 + 0*23 + 0*2+ 0*21 + 1*20 =32+0+0+0+0+ 1=33

    پیدا کردن وضعیتها از مقدار دهدهی Status

    حال ممکن است این سوال پیش بیاید که چگونه از مقدار Status متوجه شویم که شامل چه وضعیتهایی است. برای این کار کافی است عدد دهدهی را به مبنای دو (باینری) تبدیل کنیم. در این صورت به راحتی و با توجه به ترتیب 0 و 1 ها متوجه می شویم که کدام وضعیت را شامل است.

    مثال

    فرض کنید مقدار Status=10 است. حال اگر این عدد را به باینری تبدیل کنیم برابر می شود با 1010

    حال در این عدد باینری از راست به چپ ، وضعیتهای به شرح زیر است:

    Bit0=0

    Bit1=1

    Bit2=0

    Bit3=1

    به این ترتیب مشخص است که فقط Bitهای 1 و 3 انتخاب شده اند. یعنی "متوقف با خطا" و "پایان یافته"

    تکمیلی : مزیت استفاده از BitWise

    در مفاهیم چند حالتی که ترکیبهای متفاوتی از حالتها را می تواند داشته باشد، اگر نخواهیم از BitWise استفاده کنیم باید برای تمام ترکیبهای یک، دوتایی و سه تایی حالتها یک مقدار اختصاص دهیم. برای مثال برای مفهوم وضعیت کارها چون دارای شش حالت است تعداد !6 یا 720 ترکیب می تواند وجود داشته باشد. بنابراین باید 720 کد را به حالتهای مختلف اختصاص دهیم که کدنویسی را پیچیده و debug کردن کدها را با دشواری روبرو می کند. مزیت دوم این است که این روش قابل توسعه است یعنی با اضافه شدن یک حالت، به راحتی فقط یک رقم به عدد باینری اضافه می شود اما در غیر اینصورت باید !7 یا 5040 کد را پیش بینی و استفاده کنیم. شاهد این قضیه این است که در نسخه های قبلی چهار حالت پشتیبانی می شد و در نسخه 15.26 به راحتی دو حالت دیگر یعنی کارهای تعلیق نشده و کارهای تعلیق شده در قالب دو بیت جدید 4 و 5 به این الگو اضافه شد.

    پيوست ها


    کاربر پورتال


    کاربر پورتال


    --
    04 تیر 1401 01:07 ب.ظ
    سپاس فراوان از آقای تاریوردی عزیز.
    توضیحات مربوط به BitWise بسیار کامل و جالب بود.


    در صورت صلاحدید، توضیحاتی هم در مورد بخش Term و نحوه ی اعمال شرایط ترکیبی بفرمایید، ممنون میشم.


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


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


    --
    04 تیر 1401 01:50 ب.ظ

    جناب آقای مولایی بزرگوار

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

    با تشکر



    کاربر پورتال


    کاربر پورتال


    --
    04 تیر 1401 02:20 ب.ظ
    کاملا درست میفرمایید.
    هدفم این بود که همکارانی که به این پست مراجعه می کنند، با همه ی زوایای این تابع اشنا شوند که با لینکی که شما محبت کردید، این اتفاق خواهد افتاد.

    باز هم از مستندات کاملی که تولید می کنید سپاسگزارم.


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


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


    --
    09 بهمن 1402 03:04 ب.ظ
    با سلام خدمت همکاران محترم
    با توجه به این که در نسخه 15.26 دو حالت جدید "کارهای تعلیق نشده" و "کارهای تعلیق شده" به حالتهای کار اضافه شده است، این مستند بروزرسانی شد.

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


    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