نحوه خاموش کردن پنجره پاپ آپ با تماس های سرور در برنامه 1C. نحوه غیرفعال کردن پنجره پاپ آپ با تماس های سرور در برنامه 1C نحوه غیرفعال کردن اعلان های پاپ آپ در 1C 8.3

در طول درس ما: یک پایه ایجاد کردیم، پردازش ایجاد کردیم، یک فرم ایجاد کردیم.

اکنون ما 5 روش ارسال پیام از 1C را به شما خواهیم گفت "سلام، دنیا!"

همه در مورد حداقل دو روش نمی دانند :)

چگونه و کجا متن برنامه را بنویسیم؟

با فرم "Module" به تب پنجره بروید. مطمئن خواهید شد که قبلاً متنی در آنجا دارید ("روال...").

اگر متنی وجود ندارد، پس:

  • در کلاینت ضخیم که فرم را به اشتباه به پردازش اضافه کردید، از ابتدا تکرار کنید
  • فراموش کردید یک دکمه در تین کلاینت اضافه کنید، از ابتدا تکرار کنید.

داخل متن یک خط وجود دارد:

// محتویات کنترل کننده را درج کنید

وظیفه شما این است که این خط را پاک کنید و متن برنامه را در جای خود وارد کنید. پس از آن، پردازش را ذخیره کنید و آن را در حالت سازمانی باز کنید.

وقتی روی Execute کلیک می کنید، اقداماتی که وارد کرده اید اکنون انجام خواهند شد.

حالا بریم سراغ خود روش ها!

پیام در 1C، روش 1 - ساده ترین

بنابراین باید به جای متن "// Insert the content of handler." متن برنامه را بنویسید

گزارش ("سلام دنیا!");

در واقع فقط همین :)

پیام در حالت Enterprise در مشتری ضخیم در پایین پنجره 1C، در تین کلاینت - در سمت راست در پنجره پردازش خواهد بود.

این ساده ترین روش است که به طور گسترده توسط برنامه نویسان استفاده می شود.

پیام در 1C، روش 2 - همچنین ساده است

هشدار ("سلام دنیا!")؛

در واقع فقط همین :)

پیام در حالت Enterprise در هر دو گزینه مشتری در یک پنجره پاپ آپ خواهد بود.

پیام در 1C، روش 3 - فقط در 1C نسخه 8.2 ظاهر شد

ShowUserAlert("سلام، دنیا!"، سلام واقعا!");

این روش فقط در نسخه 1C 8.2 ظاهر شد. این یک پنجره پاپ آپ در گوشه سمت راست پایین صفحه است که به مرور زمان از بین می رود.

پیام در 1C، روش 4 - برنامه نویس

پرتاب استثنا "سلام، جهان!"؛

هنگام اجرای هر برنامه ای ممکن است خطایی رخ دهد. گاهی اوقات می توان این خطا را از قبل محاسبه کرد (مثلاً باید a = b/c را محاسبه کنید و در زمان اجرای برنامه مشخص می شود که c برابر با 0 است).

در این حالت راهی برای گزارش خطا با استفاده از این روش وجود دارد.

پیام در 1C، روش 5 - از نظر فناوری پیشرفته، فقط برای پیکربندی استاندارد

General Purpose.ReportError("سلام، دنیا!");

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

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

در اینجا یک مثال کامل است. این ویژگی در بسیاری از تنظیمات استاندارد (فقط مشتری ضخیم!) وجود دارد. به نظر می رسد که نتیجه با عمل روش 1 برابر است.
با این حال، خیر - در برخی تنظیمات (به عنوان مثال نرم افزار شروع)، پیام های خطا در گزارش تکرار می شوند. همچنین، با تنظیمات اضافی، پیام کاملاً متفاوت به نظر می رسد.

بنابراین، اکنون می توانید مانند یک برنامه نویس واقعی احساس کنید!

این دقیقا همان چیزی است که برنامه نویسی 1C است. البته برنامه نویسی واقعی بسیار پیچیده تر است و به دانش زیادی نیاز دارد، اما شما اکنون یک ایده کلی دارید.

موفق باشید!

P.S. نسخه pdf این درس حاوی تصاویری از صفحه است تا تجربه خود را آسان تر بسازید.

P.P.S. این درس شامل 5 ویدیو با مثال هایی از ایجاد پایه برای برنامه نویسی، ایجاد پردازش، برنامه نویسی در کلاینت ضخیم و نازک است.

این مقاله مجموعه مقالات "اولین مراحل توسعه در 1C" را ادامه می دهد.

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

قابلیت کاربرد

این مقاله در مورد عملکرد بحث می کند:

  • رابط در نسخه "نسخه 8.2" برای پیکربندی توسعه یافته در پلت فرم 1C: Enterprise 8.2.19.130
  • رابط تاکسی برای پیکربندی توسعه یافته بر روی پلت فرم 1C:Enterprise 8.3.4.496 تا 8.3.9+
  • رابط تاکسی برای پیکربندی توسعه یافته بر روی پلت فرم 1C:Enterprise 8.3.10-8.3.11

نحوه نمایش پیام به کاربر در 1C

نمایش پیام ها در حالت کاربر تعدادی از مشکلات را حل می کند:

  • انعکاس پیشرفت فرآیند جاری (نمایش مرحله اجرای فرآیند؛ نمایش مقادیر محاسبه شده به دست آمده در طول عملیات الگوریتم)؛
  • نمایش خطاها به کاربر برای تصحیح احتمالی؛
  • صدور توصیه ها؛

انواع پیام:

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

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

پیام های مقدماتی برای ارائه برخی اطلاعات به کاربر در نظر گرفته شده است.

لازم است کاربر با آن آشنا شود و احتمالاً اقداماتی را انجام دهد که در این پیام توضیح داده شده است.

بسیار مهم است که کاربر واقعاً این پیام ها را بخواند، بنابراین آنها فقط باید حاوی اطلاعات مهم باشند.

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

در مفهوم رابط مدیریت شده، رویکرد صدور پیام تا حدودی تغییر کرده است. اکنون به شکلی که در آن سرچشمه گرفته است گره خورده است. دیگر نمی توان آن را بست تا متن کاملاً نامرئی باشد.

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

نحو توابع:

گزارش دادن (<Текст сообщения>, <Статус>)

آن ها اولین پارامتر خود متن است.

پارامتر دوم (وضعیت پیام) اختیاری است. شما می توانید مقادیر را برای وضعیت مشخص کنید: طبیعی, مهم, خیلی مهمو غیره.

این مقدار تعیین می کند که کدام نماد در کنار پیام قرار گیرد. با این حال، این فقط در رابط معمولی کار می کند.

در مفهوم رابط مدیریت شده، نماد همیشه یک علامت تعجب است و نمی توان آن را نادیده گرفت.

واقعیت این است که اگر پیامی در زمان نوشتن یک عنصر دایرکتوری ایجاد شود، ممکن است وضعیت زیر رخ دهد.

کاربر روی یک دکمه کلیک می کند ذخیره کن و ببند، در این حالت پیام در پنجره مربوطه (در سمت راست فرم) نمایش داده می شود.

اما فرم فورا بسته می شود و کاربر نمی بیند که هیچ اطلاعاتی برای او نمایش داده شده است.

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

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

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

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

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

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

بنابراین، کد برنامه در پلتفرم 8.3 را می توان هم در سمت کلاینت و هم در سمت سرور اجرا کرد.

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

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

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

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

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

همین ویژگی در مورد کلاس صدق می کند پیام به کاربر. شکل نمونه ای از استفاده از روش را نشان می دهد برای گزارش دادندر سمت سرور

در نتیجه استفاده از روش برای گزارش دادندر سمت سرور، پیام ها بر روی صفحه نمایش در سمت مشتری نمایش داده می شوند.

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

  1. توسط خود پلتفرم هنگام ضبط تعاملی یا تغییر یک شی
  2. توسط توسعه دهنده هنگام فراخوانی یک متد در کد .

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

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

برای ایجاد هشدارهای خود، باید از روش زمینه جهانی استفاده کنید ShowUserAlert(). نحو آن قبل از نسخه 8.3.10 در زیر ارائه شده است:

هشدار ShowUser (<Текст>, <НавигационнаяССылка>, <Пояснение>, <Картинка>)

پارامتر اول حاوی متنی است که در اعلان نمایش داده می شود.

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

با استفاده از پارامتر سوم، می توانید توضیحی برای پیام ارسال کنید، i.e. برخی توضیحات گسترده

همچنین می توانید تصویری را که وضعیت اعلان را نشان می دهد اختصاص دهید.

لازم به ذکر است که تمامی این پارامترها اختیاری هستند. در زیر نمونه ای از استفاده از این روش (در پیکربندی و در حالت کاربر در گزینه رابط "نسخه 8.2") آورده شده است.

در نسخه پلتفرم 8.3.10.216 برای رابط "Taxi"، مکانیسم اعلان به طور قابل توجهی بهبود یافته است تا قابلیت استفاده از هر دو مشتری نازک و وب را بهبود بخشد. به همین دلیل پارامترهای ارسال شده به متد نیز تغییر کرده است ShowUserAlert(). حال نحو به این صورت است:

ShowUserAlert(<Текст>, <ДействиеПриНажатии>, <Пояснение>, <Картинка>, <СтатусОповещенияПользователя>, <КлючУникальности>)

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

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

پارامتر بعدی وضعیت هشدار کاربربرای اولین بار ظاهر شد. وضعیت هشدار (اطلاعات یا مهم) را نشان می دهد.

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

پس از اجرای دستور، تقریباً این نمای پنجره برنامه را دریافت می کنیم:

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

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

از مرکز، هشدار با کلیک بر روی دکمه پاک کردن پاک می شود، اما اگر اقداماتی مرتبط با هشدار وجود داشته باشد، به محض اینکه کاربر روی متن پیام کلیک کند، آن نیز ناپدید می شود.

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

همانطور که می بینید، امکانات ارائه شده توسط روش مربوطه بیشتر شده است! اما اینها همه تغییرات در مکانیسم اطلاع رسانی نیست.

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

از ویژگی های جدید نیز می توان به نمایش همزمان حداکثر سه هشدار بر روی صفحه نمایش اشاره کرد.

این پایان آشنایی ما با تولید نرم افزار هشدارها است. با این حال، به یاد داشته باشید که هشدارها نه تنها توسط توسعه‌دهنده به صورت برنامه‌نویسی، بلکه توسط خود پلتفرم در زمان ضبط تعاملی یا تغییر یک شی تولید می‌شوند. و اغلب این واقعیت عمدتاً در بین کاربران مبتدی باعث سوء تفاهم می شود: چرا این هشدارهای سرویس مورد نیاز است که به هر حال نمی توان آنها را خاموش کرد؟

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

دقیقاً به همین دلیل است که پلتفرم این هشدارهای سرویس را نمایش می دهد و به کاربر اطلاع می دهد که عملکرد آنها کامل شده است. در مثال ما، در زمان ضبط تعاملی، کاربر اعلان زیر را مشاهده خواهد کرد:

پیام های پایان کار

پیام های خاتمه پیام هایی هستند که تا زمانی که کاربر اقدامات خاصی را انجام ندهد، اجازه کار را نمی دهند. تا زمانی که پیام را پردازش کند.

کمی بعد در مورد امکان استفاده از پیام های خاتمه در پلتفرم 8.3 صحبت خواهیم کرد (اخیراً آنها سعی کرده اند از آنها استفاده نکنند، بنابراین مثال در نظر گرفته شده بیشتر مربوط به پلت فرم 8.2 است).

دو روش برای صدور پیام پایان وجود دارد هشدارو سوال. هشدارمتفاوت است سوالچون یک دکمه دارد خوب.

یک سوال ممکن است مجموعه های مختلفی از گزینه های پاسخ را مشخص کند ( نه واقعا, بله خیر لغو, خوب, OK لغو, تکرار لغو, AbortRepeatSkip) که با استفاده از پارامتر مشخص می شوند.

بیایید برخی از هشدارها را با استفاده از خط نمایش دهیم (به عنوان مثال، در یک ماژول برنامه مدیریت شده):

هشدار ("پایگاه اکنون باز خواهد شد")؛

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

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

عملکرد به روشی مشابه کار می کند سوال.

نحو:
سوال(<ТекстВопроса>,<Кнопки>,<Таймаут>,<КнопкаПоУмолчанию>,<Заголовок>,
<КнопкаТаймаута>);

فقط دو پارامتر اول مورد نیاز است. برای پارامتر دوم، نوع داده ترکیبی است ( سوال حالت گفتگویا ListValues). پارامتر سوم ( <Таймаут> ) بازه زمانی را بر حسب ثانیه مشخص می کند که در طی آن سیستم منتظر پاسخ کاربر می ماند.

پس از اتمام بازه زمانی، پنجره سوال بسته می شود. پارامتر مشابه( <Таймаут> ) نیز برای عملکرد موجود است هشدار.

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

لطفا توجه داشته باشید که این روش ها ( هشدارو سوال) روی سرور در دسترس نیستند. و این منطقی است، زیرا روش های رابط را نمی توان در سروری که در آن کاربر وجود ندارد، اجرا کرد.

ویژگی های استفاده از ویندوز مودال در پلتفرم 8.3

در پلت فرم 8.3، حالت های عملیاتی با و بدون مدالیت وجود دارد. تنظیم پیش‌فرض «حالت حالت استفاده نکنید» است.

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

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

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

پنجره های پاپ آپ اغلب با تنظیمات پیش فرض مرورگر غیرفعال می شوند. کاربر باید مجبور شود مجوز این ویندوزها را تنظیم کند.

مرورگرهای رایانه های لوحی و تلفن ها در اکثر موارد به هیچ وجه از پنجره های پاپ آپ پشتیبانی نمی کنند.

برای جایگزینی توابع سوالو هشدارروش های جدیدی توسعه یافته است: ShowQuestion, نمایش هشدار.

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

دریافت و پردازش مقادیر وارد شده توسط کاربر در یک روش جداگانه انجام می شود که با بسته شدن کادر محاوره ای فراخوانی می شود.

نحو توابع نمایش هشدار:

نمایش هشدار(<ОписаниеОповещенияОЗавершении>, <ТекстПредупреждения>, <Таймаут>, <Заголовок>)

پارامتر <ОписаниеОповещенияОЗавершении> (اختیاری)

نوع داده: توضیحات هشدارها.

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

نحو توابع ShowQuestion:

ShowQuestion(<ОписаниеОповещенияОЗавершении>, <ТекстВопроса>, <Кнопки>, <Таймаут>, <КнопкаПоУмолчанию>, <Заголовок>, <КнопкаТаймаута>)

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

در زیر نمونه ای از استفاده از تابع آورده شده است.

کلاس MessageToUser

راحتی اولیه کلاس پیام پیام به کاربراین است که این یک پیام متنی است (برخلاف روش‌ها هشدارو سوال).

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

لطفاً توجه داشته باشید که اولاً این شیء باید ایجاد شود. مثلا: Message = New MessageToUser;

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

در مرحله دوم، شما باید متن پیام را در یک ویژگی جداگانه مشخص کنید.

ثالثاً در ملک رشتهمی توانید مشخص کنید که این پیام به کدام عنصر فرم پیوست شود.

توجه! برای اتصال به فیلد فرم مورد نظر، به مقدار دهی اولیه خصوصیات توجه کنید PathToDataو DataKey. برای یک سند، هنگام قرار دادن کد در یک ماژول شی، می توانید بنویسید:

Message.DataPath = "شیء";
Message.DataKey = ThisObject.Link;

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

برای آزمایش، کد را در ماژول شی یک سند قرار می دهیم.

در زیر نتیجه به دست آمده در حالت کاربر برای پلتفرم 8.3 است.

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

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

بر این اساس، هنگامی که خطاها شناسایی می شوند، تراکنش لغو می شود، یعنی. نوشتن یک عنصر دایرکتوری ممنوع است، یا ارسال یک سند ممنوع است.

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

اما از سوی دیگر، بسته شدن سند بدون انجام آن، بدون واکنش به پیام به هیچ وجه امکان پذیر است. بنابراین، این پیام ها به کاربر پایان نمی یابد.

اعلان وضعیت فرآیند

یک تابع ویژه وجود دارد که با آن می توانید پیشرفت تقریبی یک فرآیند را نمایش دهید.

نحو: حالت(<ТекстСообщения>, <Прогресс>, <Пояснение>, <Картинка>)
گزینه ها:<ТекстСообщения>و<Пояснение>– اختیاری، نوع – خط.
متن در نوار وضعیت ویژه نمایش داده می شود.
<Прогресс>این پارامتر نیز اختیاری است، اما بصری است.
نوع: عدد. مقدار شاخص پیشرفت (از 1 تا 100).
<Картинка>همچنین یک پارامتر اختیاری
هنگام پردازش هر رویداد، فراخوانی های دوره ای تابعی مانند:

در این مورد، برچسب ها ممکن است تغییر کنند و مقادیر پارامتر Progress ممکن است تغییر کند.

یک تابع را می توان از یک رویه (تابع) یا از چندین فراخوانی کرد. به این ترتیب می توانید وضعیت اجرای فرآیند را پیگیری کنید.

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

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

من می خواهم یک بار دیگر توجه شما را به این واقعیت جلب کنم که اگر پیکربندی شما (نسخه 8.3.3+) شامل کار با استفاده از یک سرویس گیرنده وب باشد، پس:

  • در سطح پیکربندی، تنظیم حالت مدالیته باید روی «استفاده نشود» تنظیم شود
  • کد باید از روش های مدل تعامل کاربر ناهمزمان استفاده کند. چنین روش هایی با کلمات شروع می شود نمایش دهیدیا شروع.

در مقاله پایانی این مجموعه می‌توانید اطلاعات بیشتری در مورد امتناع از استفاده از ویندوزهای مودال در پلتفرم 1C:Enterprise 8.3 بخوانید. و ما ادامه می دهیم و در نهایت شروع به مطالعه رابط تاکسی مورد انتظار می کنیم که قبلاً بیش از یک بار در مطالب ما ذکر شده است.

امروز به نکات ابزار در 1C می پردازیم. آنها بسیار مفید هستند زیرا توضیح می دهند که چه چیزی باید در یک زمینه مشخص وارد شود. شما می توانید برای هر فیلدی که در 1C وجود دارد، راهنمایی ابزار ایجاد کنید. آنها اغلب توسط برنامه نویسان مبتدی 1C نادیده گرفته می شوند.

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

نحوه ایجاد راهنمایی برای فیلدهای فرم در 1C

و بنابراین بیایید شروع به ایجاد نکات ابزار برای فیلدهای فرم های مختلف در 1C کنیم. در مثال، من از سندی که قبلا ایجاد کردیم استفاده خواهم کرد. اما اگر نیاز به ارائه نکاتی برای اسناد دیگر دارید، همه چیز مشابه است.

بیایید به یاد بیاوریم که چه فیلدهایی در سند ما وجود دارد. اینها تامین کننده، نام، مقدار، قیمت و مقدار هستند. بیایید برای فیلدهای Supplier و مثلاً قیمت، نکات ابزاری ایجاد کنیم. پیکربندی را باز کنید، به سند بروید و در آن به تب Data بروید. روی جزئیات تامین کننده دوبار کلیک کنید. در پنجره Properties که باز می شود، به دنبال مورد Hint بگردید. ما در آنجا وارد "سازمانی که کالا از آن دریافت شده است."

به همین ترتیب یک اشاره برای فیلد Price ایجاد می کنیم. با دوبار کلیک کردن به قسمت خصوصیات قیمت رفته و در قسمت Hint عبارت «قیمت 1 واحد کالا» را بنویسید.

اکنون برنامه خود را در حالت دیباگ اجرا می کنیم و به نتیجه نگاه می کنیم. هنگامی که ماوس خود را روی موارد با Supplier and Price قرار می دهید، نکات ابزار ما باید نمایش داده شود.

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

در این مقاله به شما خواهیم گفت که چگونه یادآورهای مزاحم را در مورد نسخه جدیدی از برنامه با استفاده از مثال پیکربندی "Trade Management" نسخه 11.3 غیرفعال کنید.

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

در پنجره "تنظیمات نمایش اخبار" در برگه "فیدهای خبری"، باید کادر "به روز رسانی تنظیمات استاندارد" را غیرفعال کنید و روی دکمه "تأیید" کلیک کنید. کار شما تمام شده است، دیگر پنجره های پاپ آپی با پیام های به روز رسانی شما را آزار نمی دهد!

برای غیرفعال کردن پنجره های پاپ آپ برای همه کاربران، باید به بخش "داده های تحقیق و مدیریت" - "پشتیبانی کاربر آنلاین" بروید.

در گروه «مدیریت تنظیمات و به‌روزرسانی‌های اخبار»، روی پیوند «باز کردن تنظیمات مدیریت اخبار» کلیک کنید.

در پنجره مدیریت تنظیمات و به‌روزرسانی‌های اخبار، در تب «تنظیمات کاربر»، باید کادرهای کاربرانی را که می‌خواهید تنظیمات را برای آنها تغییر دهید علامت بزنید، سپس روی دکمه «تنظیمات کاربر» کلیک کنید. در تنظیمات کاربر در برگه "فیدهای خبری"، چک باکس های غیر ضروری را غیرفعال کنید و روی "OK" کلیک کنید. پس از این، باید روی دکمه "Record and close" در پنجره مدیریت تنظیمات و به روز رسانی اخبار کلیک کنید.

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

اکنون ما در مورد برخی از مسائل فنی در 1C که هر کاربر باید در مورد آنها بداند، به شما خواهیم گفت. اغلب حسابدارانی که از برنامه 1C Enterprise 8 استفاده می کنند می گویند که هنگام انجام هر عملیاتی، یک پنجره کوچک در سمت چپ صفحه نمایش داده می شود که نشانگرهایی را نشان می دهد که کاربر به آنها نیاز ندارد. اغلب چنین پنجره هایی فقط عملکرد "تحریک کننده" را انجام می دهند و به شما اجازه نمی دهند به طور معمول کار کنید.
به طور معمول پنجره دارای کتیبه های زیر است - "تماس های انباشته" و "تماس های جاری" (با اطلاعاتی در مورد شماره آنها). در ظاهر مدیریت شده "1C Enterprise 8" اینگونه به نظر می رسد:

در ظاهر، "تاکسی" کمی متفاوت به نظر می رسد:

کاربران اغلب تعجب می کنند که این پنجره های دارای نشانگر چیست و چقدر در کار خود ضروری هستند.

چیست؟

این یکی از ابزارهایی است که توسط متخصصانی که روی برنامه 1C کار می کردند توسعه داده شده است. به عبارت دیگر، اینها شاخص های عملکرد تماس های سرور هستند. معمولاً در حالت 1C، آنها به توسعه دهنده در زمان واقعی نشان می دهند: سازمان، داده ها در مورد مدت زمان و تعداد تماس های سرور و همچنین میزان اطلاعات دریافتی و ارسال شده.

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

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

راه اندازی یک پنجره پاپ آپ

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

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

راه های خاموش کردن نمایش تماس های سرور

روش اول اداری است.

برای شروع، به . برای انجام این کار، در حالت راه اندازی Enterprise، مکان نما را روی پایه مورد نیاز قرار دهید و کلیدی به نام Configurator را فشار دهید.

با کلیک کردن روی منوی "ابزار" - "گزینه ها"، پارامترهای اطلاعات را باز کنید. پایگاه داده در حالت "Configurator".

سپس برگه "Advanced" را انتخاب کنید که در پارامترهای تب به نام "Launch 1C: Enterprise" قرار دارد. تیک گزینه "Display performance options" را بردارید و روی دکمه "OK" (یا دکمه "Apply") کلیک کنید.

در نهایت در حالت Enterprise برنامه 1C را اجرا کنید.

روش دوم سفارشی است.

در حالت Enterprise، روی دکمه منوی اصلی کلیک کنید و "ابزار" - "گزینه ها" را انتخاب کنید.

پس از آن، علامت کادری به نام «نمایش پارامترهای عملکرد» را که در پنجره تنظیمات قرار دارد، بردارید.

و در نهایت بر روی دکمه "OK" کلیک کنید.