ساخت سیستم های اطلاعاتی توزیع شده، جستجو، وظایف معمول، گزینه های کاربردی. گزینه های عملکردی و پارامترهای گزینه های کاربردی 1c 8.3 گزینه های عملکردی زیر سیستم


شی 1c "گزینه های عملکردی" - طراحی شده برای برجسته کردن عملکرد در راه حل برنامه که می تواند در حین اجرا بدون تغییر خود فعال (غیرفعال) شود (همراه با زیرسیستم ها، آنها رابط مشتری نازک 1C را تشکیل می دهند). آنها بخشی از مکانیسم گزینه های عملکردی هستند.

مکانیزم گزینه های تابع شامل دو شی فوق داده است:

  1. گزینه عملکردی؛
  2. پارامترهای گزینه های عملکردی

بیشتر

گزینه تابعیک شی ابرداده است که می تواند مستقیماً بر ترکیب رابط برنامه تأثیر بگذارد (اگر گزینه تابعی مقدار خود را در یک ویژگی بولی ذخیره کند). با کمک اشیاء از این نوع، می توانید عناصری را که مربوط به عملکرد غیرقابل دسترس هستند پنهان کنید. به عنوان مثال، گزینه حسابداری ارز می تواند ارزها، قسمت ارز از فیلد، ستون مقدار ارز را از گزارش ها پنهان کند.

منبع مقدار گزینه تابعی، شی فوق داده ای است که به عنوان ویژگی Storage انتخاب شده است، به عنوان مثال، می تواند باشد.

در مورد ذخیره مقدار یک گزینه عملکردی در یک ویژگی دایرکتوری یا منبع، اطلاعات اضافی مورد نیاز است که دقیقاً نحوه انتخاب مقدار گزینه را نشان دهد. برای این منظور یک شی فوق داده جداگانه ارائه شده است - پارامترهای گزینه های تابع.

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

[پنهان شدن]

گزینه های عملکردی ممکن است بر:

  1. در رابط کاربری:
    • جهانی ;
    • ملزومات (از جمله ستون‌های الزامات به شکلی مانند جدول ارزشیا درخت ارزش)؛
    • دستورات فرم؛
  2. در گزارش های اجرا شده با استفاده از سیستم ترکیب داده ها؛
  3. در الگوریتم هایی که به زبان داخلی نوشته شده اند - می توان مقادیر گزینه های عملکردی را از زبان داخلی دریافت کرد و از آنها در شرایط مختلف استفاده کرد، به عنوان مثال، برای کاهش میزان محاسبات (به عنوان مثال نگاه کنید به ).

توجه!اگر برنامه کلاینت با نسخه فایل infobase از طریق وب سرور کار می کند، تغییر گزینه کاربردی تنها پس از راه اندازی مجدد وب سرور، رابط کاربری را تغییر می دهد (راه اندازی مجدد برنامه مشتری، رابط کاربری را تغییر نمی دهد).

ویژگی های گزینه های کاربردی 1C

  • ذخیره سازی - فیلدی که در آن باید یک شی با نوع بولی انتخاب کنید. به عنوان یک قاعده، از ثابت ها استفاده می شود.
  • هنگام دریافت - پرچم مسئول امکان به دست آوردن مقدار گزینه عملکردی در حالت ممتاز است.
  • ترکیب - لیستی از اشیاء و ویژگی های اشیاء که هنگام خاموش / خاموش شدن گزینه عملکردی (با استفاده از فرم مدیریت شده کنترل می شود) قابلیت مشاهده آنها روشن / خاموش می شود.

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

ویژگی های استفاده از گزینه های کاربردی 1C:

  1. گزینه های تابع می توانند مقادیری از نوع دلخواه داشته باشند (نه لزوماً بولی).
  2. هنگام اضافه کردن یک ثابت جدید برای استفاده از یک گزینه عملکردی، حتماً آن را در زیرسیستم مناسب قرار دهید و مجوزهایی را به آن اختصاص دهید.
  3. کار با گزینه های کاربردی از زبان داخلی در دسترس است که به لطف آن توسعه دهنده می تواند الگوریتم های خود را برای مقادیر گزینه های عملکردی ایجاد کند.
  4. اگر گزینه تابع غیرفعال باشد، دستور رابط فرمان از رابط فرمان حذف می شود:
    • ویژگی که یک پارامتر فرمان است.
    • نوع پارامتر فرمان (اگر نوع پارامتر فرمان مرکب باشد، پس از غیرفعال شدن همه انواع پارامتر، فرمان از دسترس خارج می شود).

توجه!گزینه های عملکردی و پارامترهای آنها بر ترکیب پایگاه داده تأثیر نمی گذارد: همه جداول و فیلدها بدون توجه به وضعیت گزینه های عملکردی در پایگاه داده وجود دارند.

تأثیر گزینه های عملکردی بر جزئیات و دستورات فرم:

  1. نوع فرم مدیریت شده<Вид>یک شی ( DirectoryObject، DocumentObject و غیره) در صورتی غیرفعال می شود که شی مربوطه توسط گزینه functional غیرفعال شود. فقط آن دسته از گزینه های کاربردی که هیچ پارامتری ندارند تجزیه می شوند.
  2. ویژگی اصلی نوع فرم مدیریت شده DynamicListاگر شیء پیکربندی که به عنوان جدول اصلی لیست پویا مشخص شده است توسط گزینه تابعی غیرفعال شود غیرفعال می شود. فقط آن دسته از گزینه های کاربردی که هیچ پارامتری ندارند تجزیه می شوند.
  3. یک ویژگی فرم از یک نوع مرجع غیرفعال می شود اگر شی پیکربندی که آن نوع را تشکیل می دهد توسط یک گزینه عملکردی غیرفعال شود. اگر گزینه های کاربردی همه انواع مؤلفه را غیرفعال کنند، ویژگی فرم یک نوع ترکیبی غیرفعال می شود.
  4. جدول فرم در صورتی غیرفعال می شود که داده های یک ویژگی فرم غیرفعال شده توسط یک گزینه عملکردی را نمایش دهد.
  5. در گفتگوی انتخاب نوع (به عنوان مثال، برای فیلدهای ورودی مرتبط با ویژگی های یک نوع ترکیبی) هیچ گونه ای وجود ندارد اگر اشیاء پیکربندی که این انواع را تشکیل می دهند توسط یک گزینه عملکردی غیرفعال شده باشند. اطلاعات مربوط به انواع غیرفعال شده توسط گزینه های کاربردی در حافظه پنهان سمت سرویس گیرنده ذخیره می شود و پس از 20 دقیقه یا در طی تماس روش پاک می شود. UpdateInterface().

توجه!بر خلاف رابط فرمان، مقادیر پارامترهای گزینه های کاربردی فقط برای یک نمونه فرم خاص تنظیم می شوند.

ایجاد یک پارامتر گزینه های کاربردی

پارامتر گزینه عملکردی با استفاده از شی پیکربندی 1C "پارامترهای گزینه های عملکردی" ایجاد می شود.

[پنهان شدن]

این را می توان در پنجره پیکربندی با افزودن یک شی جدید انجام داد.

ویژگی های پارامتر گزینه های تابع:

  • استفاده - مجموعه ای از اشیاء را تنظیم می کند که مقادیر آنها تعیین می کند که چگونه مقدار گزینه عملکردی باید انتخاب شود. فهرست اشیاء موجود شامل فرهنگ لغت و ابعاد ثبت اطلاعات است. برای هر پارامتر از گزینه های عملکردی در این لیست، می توانید یک دایرکتوری (از کل فهرست دایرکتوری ها) و یک بعد از هر ثبت اطلاعات را انتخاب کنید.

توجه!شما نمی توانید از یک شی ابرداده در بیش از یک پارامتر گزینه تابع استفاده کنید.

تقریباً تمام راه حل های استاندارد مبتنی بر پلت فرم 1C: Enterprise 8.x از مکانیسم گزینه های کاربردی استفاده می کنند. این به شما اجازه می دهد تا عملکرد پیکربندی را در بلوک ها کنترل کنید.

بنابراین، به عنوان مثال، گزینه "استفاده از سفارشات داخلی" (به تصویر سمت راست مراجعه کنید) به شما امکان می دهد این سند را برای استفاده در حالت "1C: Enterprise" در دسترس کاربر قرار دهید و همچنین شامل شاخه های جداگانه ای از الگوریتم های مربوط به این قابلیت

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

اصل عملیات

همانطور که در بالا ذکر شد، گزینه کاربردی به شما امکان می دهد عملکرد پیکربندی مرتبط با آن را فعال / غیرفعال کنید. بیایید دنباله ای از اقدامات را برای ایجاد و پیکربندی این شی پیکربندی در نظر بگیریم.

در شاخه کانفیگ "عمومی-> گزینه های کاربردی" ما می توانیم یک شی جدید ایجاد کنیم یا ویژگی های گزینه های ایجاد شده را مشاهده کنیم. بیایید گزینه کاربردی "EnableImportance" را در پیکربندی تست ایجاد کنیم. در همان ابتدا، زمانی که شی هنوز پیکربندی نشده است، پنجره لیست خصوصیات آن به شکل زیر خواهد بود:

ویژگی های "Name" و "Synonym" یک هدف استاندارد دارند. تنظیمات "ذخیره سازی" و "ترکیب" مورد توجه خاص است.

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

گزینه های پیکربندی مرتبط با یک گزینه کاربردی در برگه Composition پیکربندی می شوند. تصویر بالا لیست انتخابی از اشیاء موجود در ترکیب آن را نشان می دهد.

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

گزینه "Privilege mode on get" به شما امکان می دهد هنگام دریافت مقدار گزینه عملکردی، بررسی حقوق دسترسی را غیرفعال کنید، که تأثیر مثبتی بر عملکرد خواهد داشت (عملیات بررسی دسترسی بیش از حد حذف می شود) و پیچیدگی توسعه بیشتر را کاهش می دهد (نیازی به پیکربندی نیست. حقوق برای شی ای که مقدار گزینه عملکردی را ذخیره می کند).

مثال استفاده

در پیکربندی آزمایشی، بیایید یک شمارش «اهمیت» و همچنین یک ثابت ایجاد کنیم.

"EnableImportance". اشیاء ایجاد شده در تصویر زیر نشان داده شده اند.

ثابت برای ذخیره مقدار گزینه عملکردی در نظر گرفته شده است. شمارش به عنوان مقدار ویژگی مرجع در سند آزمایشی عمل می کند که در دسترس بودن آن توسط گزینه عملکردی تعیین می شود.


مدرک آزمون دارای دو شرط است:
  • "نظر" با تایپ "String".
  • "اهمیت" با نوع "EnumerationReference.Importance".

بیایید ویژگی سند "Importance" را به گزینه عملکردی اضافه کنیم و سپس رفتار پلتفرم را در حالت کاربر در نظر بگیریم.

پس از اجرای برنامه در حالت 1C: Enterprise، یک سند آزمایشی را باز کنید. ما ویژگی "اهمیت" را در فرم نخواهیم دید، زیرا هنوز گزینه عملکردی را فعال نکرده ایم.

برای فعال کردن استفاده از ویژگی "Importance"، باید مقدار ثابت "EnableImportance" را روی TRUE تنظیم کنید. سپس فرم به صورت زیر تغییر می کند:

عملکرد گزینه های عملکردی تقریباً به تمام اشیاء پیکربندی گسترش می یابد، به استثنای برخی از شاخه های "عمومی" که عمدتاً عملکردهای سرویس را انجام می دهند. به عنوان مثال، شما نمی توانید گزینه های کاربردی دیگر را در ترکیب یک گزینه کاربردی قرار دهید (و این چندان منطقی نیست).

بیایید نگاهی به چند جنبه جالب از نحوه عملکرد این شیء پیکربندی بیندازیم:

1. تنظیم گزینه های کاربردی تقریباً هیچ تأثیری بر پرس و جوهای SQL ایجاد شده توسط پلت فرم ندارد.

به عنوان مثال، هنگام باز کردن یک سند با یک گزینه عملکرد غیرفعال، پلت فرم در هر صورت مقدار این ویژگی را در درخواست دریافت می کند. اسکرین شات زیر کوئری های SQL را نشان می دهد که با گزینه فعال و غیرفعال تولید شده اند.

2. عنصر فرم "Importance" در فرم، صرف نظر از مقدار گزینه عملکردی، همیشه دارای مقادیر ویژگی های "Visibility" و "Accessibility" برابر با TRUE است.

در واقع، هم هنگام ایجاد یک فرم در سرور، و هم هنگام باز کردن فرم، و همچنین در حین کار بیشتر با آن، ویژگی های "Visibility" و "Accessibility" به طور خودکار توسط پلت فرم روی FALSE تنظیم نمی شوند. احتمالاً 1C:Enterprise 8.x این کار را "پشت صحنه" انجام می دهد.

3. برای بدست آوردن مقدار گزینه عملکردی، پلتفرم یک پرس و جوی SQL را مطابق با شی ذخیره سازی، یعنی به DBMS تولید می کند. به یک ثابت در یکی از مقالات قبلی، قبلاً در مورد ساخت پرس و جوهای SQL به ثابت ها و نحوه ذخیره آنها در پایگاه داده صحبت کردیم.


در مثال ما، پلتفرم پرس و جوی SQL زیر را تولید می کند:

در مورد لحظه دریافت مقدار گزینه عملکردی، پلت فرم بر اساس اصل زیر هدایت می شود : اولین دریافت مقدار یک گزینه عملکردی هنگام دسترسی به شی / لوازم موجود در ترکیب آن اتفاق می افتد. سپس پلتفرم از مقدار کش استفاده می کند تا زمانی که مقدار شیئی که این مقدار را ذخیره می کند تغییر کند (در مثال ما، ثابت های EnableImportance) یا جلسه کاربر مجدداً راه اندازی شود. مقدار یک گزینه کاربردی در یک جلسه ذخیره می شود.


همه موارد فوق به صورت تجربی تأیید شد. همه چیزهایی که من برای آزمایش استفاده کردم در پیکربندی تست (لینک در انتهای مقاله) است، به استثنای .

نتیجه

گزینه های کاربردی بخش جدایی ناپذیر تقریباً هر راه حل گردشی مبتنی بر پلت فرم 1C: Enterprise 8.x هستند. به لطف این مکانیسم است که می توانید تنظیماتی را با ساخت بلوک از عملکرد ایجاد کنید که هنگام پیکربندی برنامه به راحتی فعال / غیرفعال می شود. در عین حال، قابلیت های مکانیزم را می توان با استفاده از پارامترهای گزینه های عملکردی گسترش داد، اما این موضوع برای مقاله دیگری است.

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

دانلودها:

گزینه های عملکردیو پارامتر گزینه تابع- اینها اشیاء پیکربندی 1C 8.3 (8.2) هستند که با هم مکانیسم گزینه های عملکردی را نشان می دهند. مکانیزم گزینه های عملکردی، عملکردی است که به شما امکان می دهد مجموعه ای از عملکردهای مورد نیاز کاربران را تعریف کنید.

به عبارت ساده، مکانیسم گزینه های کاربردی یک کلید روشن/خاموش برای عملکردهای مختلف در یک پیکربندی است.

چرا ممکن است لازم باشد عملکرد را غیرفعال کنید؟

267 درس ویدیویی 1C را به صورت رایگان دریافت کنید:

اغلب، عملکرد اضافی می تواند کار کارمندان را پیچیده کند. یک مثال پیش پا افتاده از استفاده از گزینه های کاربردی در 1C این است که پایگاه داده سوابق یک سازمان یا انبار را نگه می دارد، پس چرا کاربر را ملزم به پر کردن این داده ها در همه اسناد می کند؟

گزینه های کاربردی چه چیزی را کنترل می کنند؟

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

گزینه های عملکردیاشیاء پیکربندی رایج هستند. آنها بخشی از مکانیسم گزینه های کاربردی هستند و به شما امکان می دهند عملکردی را در راه حل برنامه انتخاب کنید که می تواند در حین اجرا بدون تغییر خود راه حل برنامه فعال یا غیرفعال شود.

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

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

شما می توانید اشیاء پیکربندی مختلف یا ویژگی های آنها را با این گزینه کاربردی مرتبط کنید. به عنوان مثال، می توانید props را با این گزینه کاربردی مرتبط کنید موجودیسند دریافت کالا.

سپس، در حین پیاده سازی، می توانید این گزینه کاربردی را در یک پایگاه اطلاعاتی خاص در حالت 1C: Enterprise فعال یا غیرفعال کنید.

پلت فرم به طور خودکار نمایش تمام عناصر رابط مربوطه (فیلدها، دستورات، ستون های فهرست، عناصر گزارش) را روشن و خاموش می کند. در مورد ما، فیلد پنهان یا نمایش داده می شود موجودیدر تمام فرم های سند رسید کالاها.

30.03.2017

گزینه های کاربردی 1C 8.3 (مکانیسم، استفاده)

برای شروع مهمتوجه داشته باشید که مکانیسم گزینه های تابع نهدسترسی به داده ها را محدود می کند، اما فقط نمایان بودن (نمایش) داده ها را در فرم کنترل می کند. برای محدود کردن دسترسی به اشیاء در پلتفرم، از مکانیسم نقش ها استفاده می شود.
بنابراین، بررسی مکانیسم گزینه های عملکردی را با توضیح مشکل آغاز می کنیم. در پیکربندی کوچک ما، یک فهرست "انبارها" وجود دارد. فرض کنید همه کاربران به این دایرکتوری دسترسی دارند.
از نو! مکانیسم گزینه های عملکردی نمایش داده ها را در فرم کنترل می کند و دسترسی به شی فوق داده را محدود نمی کند (دایرکتوری، سند، ورودی های رجیستری ....) لازم است تنظیمات "استفاده از انبارهای متعدد" را انجام دهید. (بله، بله ... این در UT 11.X است، در آنجا برای سازمان ها انجام می شود). اگر از چندین انبار استفاده کنیم، دایرکتوری انبار در رابط موجود است، اگر نه، دستوری که یک انبار را باز می‌کند (فرض می‌کنیم که در این مورد فقط یکی وجود دارد و کار را پیچیده نمی‌کنیم).

پیکربندی اشیاء فراداده

برای انجام این کار، ما نیاز داریم:
  • دو گزینه کاربردی "UseMultipleWarehouses" و "Do NotUseMultipleWarehouses". اولی مسئول در دسترس بودن دایرکتوری است و دومی برای در دسترس بودن دستور عمومی برای فراخوانی الگوریتم "باز کردن" انبار.
  • ثابت هایی به همین نام با نوع "Boolean" برای ذخیره مقادیر گزینه های عملکردی
  • دایرکتوری "انبارها"
  • فرمان عمومی "باز انبار اصلی". فراموش نکنید که یک گروه از دستورات را برای آن تعیین کنید، در غیر این صورت پیکربندی را اعمال نکنید (خطا وجود دارد)
و یک زیرسیستم اضافه کنید که در آن همه اشیاء موجود را در آن قرار دهیم

تنظیم گزینه های کاربردی

گزینه اول «استفاده از انبارهای چندگانه» است. مقدار در ثابتی به همین نام ذخیره می شود، دایرکتوری "Warehouses" گنجانده شده است. بنابراین، زمانی که مقدار ثابت "True" باشد، دایرکتوری در رابط موجود است، در صورت false، دایرکتوری در رابط نمایش داده نمی شود (محتوای زیر سیستم ها، اشکال شی و غیره)




تابع دوم "Don't UseMultipleWarehouses" زمانی تنظیم می شود که اولین "UseMultipleWarehouses" تنظیم نشده باشد.
آن ها اگر از چندین انبار استفاده نکنیم (UseMultipleWarehouses = FALSE و جستجوی "Warehouses" در دسترس نباشد)، دستور "Open Main Warehouse" نمایش داده می شود که در دسترس بودن آن با گزینه "Do not UseMultipleWarehouses" کنترل می شود (Do notUseMultipleWarehouses = درست است، واقعی)

بررسی رفتار سیستم

گزینه شماره 1. UseMultipleWarehouses = True، Do NotUseMultipleWarehouses = False. فهرست "انبارها" در رابط موجود است


گزینه شماره 2. UseMultipleWarehouses = False، Do NotUseMultipleWarehouses = True. کتاب مرجع "انبارها" در رابط موجود نیست، در عوض دستور کلی "باز کردن انبار اصلی" در دسترس است.

انتخاب سردبیر
ماهی منبع مواد مغذی لازم برای زندگی بدن انسان است. می توان آن را نمکی، دودی و ...

عناصر نمادگرایی شرقی، مانتراها، مودراها، ماندالاها چه می کنند؟ چگونه با ماندالا کار کنیم؟ استفاده ماهرانه از کدهای صوتی مانتراها می تواند...

ابزار مدرن از کجا شروع کنیم روش های سوزاندن آموزش برای مبتدیان چوب سوزی تزئینی یک هنر است، ...

فرمول و الگوریتم محاسبه وزن مخصوص بر حسب درصد یک مجموعه (کل) وجود دارد که شامل چندین جزء (کامپوزیت ...
دامپروری شاخه ای از کشاورزی است که در پرورش حیوانات اهلی تخصص دارد. هدف اصلی این صنعت ...
سهم بازار یک شرکت چگونه در عمل سهم بازار یک شرکت را محاسبه کنیم؟ این سوال اغلب توسط بازاریابان مبتدی پرسیده می شود. با این حال،...
حالت اول (موج) موج اول (1785-1835) یک حالت فناورانه را بر اساس فناوری های جدید در نساجی شکل داد.
§یک. داده های عمومی یادآوری: جملات به دو قسمت تقسیم می شوند که مبنای دستوری آن از دو عضو اصلی تشکیل شده است - ...
دایره المعارف بزرگ شوروی تعریف زیر را از مفهوم گویش (از یونانی diblektos - گفتگو، گویش، گویش) ارائه می دهد - این ...