• روش شیء یافت نشد اتصال سخت افزار

    شما (یا کاربر) در 1C کار می کنید. ناگهان یک اشتباه چه باید کرد؟

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

    اگر این امکان پذیر نباشد چه؟ نه زمان، نه میل، نه دانش کافی. در اینجا چند نکته بسیار بد برای رفع سریع خطاها در 1C وجود دارد.

    پیغام خطا 1C

    یک نمای معمولی از یک پیام خطای 1C، پنجره ای با متن یک خطای 1C و دکمه های OK و More است.

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

    برای رفع خطاهای 1C، در این پنجره روی More کلیک کنید تا پیام خطای برنامه نویس 1C را ببینید. بیان می کند:

    • که در آن خطای 1C رخ داده است
    • عملکرد این ماژول که در آن خطای 1C رخ داده است
    • شماره خط این ماژول که در آن خطای 1C رخ داده است.

    همچنین می توانید روی دکمه Configurator کلیک کنید و سپس پیکربندی باز می شود، این ماژول، این تابع در این خط، پس از آن می توانید خطای 1C را اصلاح کنید.

    ترفندهای اشتباه

    همانطور که قبلاً گفته شد، در متن خطای 1C، اغلب نتیجه اقدامات نادرست قبلی است.

    به عنوان مثال، یک متن خطای بسیار رایج 1C به شرح زیر است:

    مقدار یک مقدار از نوع شی نیست (SomeName)

    یعنی چی؟؟؟

    و این یعنی موارد زیر:

    • یک متغیر وجود دارد
    • این برنامه فرض می کند که مقدار متغیر یک دایرکتوری یا یک سند یا چیزی مشابه است - به طور کلی، دارای جزئیات (فیلد) است.
    • برنامه سعی می کند به فیلد این شیء دسترسی پیدا کند
    • با این حال، خطای 1C این است که به دلایلی، در خطوط قبلی برنامه، این متغیر مقداری دریافت کرد که هیچ جزئیاتی (فیلد) ندارد، به عنوان مثال، مقدار "Undefined".

    تصحیح خطاهای 1C که بیشتر رایج هستند

    البته ما نمی توانیم تمام خطاهایی را که ممکن است در 1C وجود داشته باشد در نظر بگیریم.
    بیایید سعی کنیم به طور خلاصه خطاهای 1C را که اغلب رخ می دهند و همچنین نکات بد برای رفع سریع خطاهای 1C فهرست کنیم.

    • اگر متغیری از نوع boolean باشد (یعنی مقادیر True و False را می گیرد)، پس می توان به این شکل به آن دسترسی داشت:

      If VariableName then

      این املا شبیه به:
      اگر VariableName = True Then

      با این حال، اگر به دلایلی این متغیر یک مقدار غیر بولی به خود بگیرد، گزینه اول خطای 1C می دهد و گزینه دوم خطا نمی دهد.

    • "عملکرد با نام Xxx یافت نشد"

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

      در این حالت، ممکن است یک خطای 1C رخ دهد که تابعی که روی سرور اجرا می‌شود به تابعی که روی کلاینت اجرا می‌شود دسترسی پیدا می‌کند. در این مورد، چنین خطای 1C وجود خواهد داشت.

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

    • "متغیر با نام xxx یافت نشد"

      مشابه خطای قبلی 1C. اگر برنامه به تابعی که در یک ماژول مشترک است فراخوانی داشته باشد، به شکل زیر است:
      ModuleName.FunctionName();

      اگر در همان زمان در ویژگی های ماژول مشخص شود که روی کلاینت اجرا می شود و ما از خطوط برنامه ای که روی سرور اجرا می شود دسترسی داشته باشیم، خطای 1C وجود خواهد داشت.
      "متغیر پیدا نشد - ModuleName"

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

    • "ویژگی XXX برای شی پیدا نشد"

      کلمه Property به معنای میدان این شی (props) است. لازم:
      o تعیین کنید که شی چیست
      o اگر این یک دایرکتوری، یک سند است، باید ببینید که آیا prop واقعاً به این نام خوانده می شود
      o اگر هست یا – مشخصات فرم را با همین نام مشاهده کنید.

    • "روش Xxx روی شی پیدا نشد"

      کلمه "روش" به یک تابع/روش در ماژول این شی اشاره دارد.

      لازم:
      o نوع شیء را تعیین کنید
      o ماژول آن را پیدا کنید (ماژول شی اگر یک شی 1C است، ماژول شکل اگر یک فرم است)
      o وجود تابعی با این نام را بررسی کنید.

    • "خطای 1C هنگام اجرای یک درخواست"

      این بدان معنی است که یک خطای 1C در متن درخواست وجود دارد. متن درخواست معمولاً زودتر از زمان اجرا (یعنی بالاتر) در برنامه تعریف می شود. متن درخواست را در این ماژول (با چشمان خود در بالا یا با جستجوی کلمه "SELECT") جستجو کنید.

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

    • "خطا طرح بندی 1C" - هنگام اجرای گزارش

      این خطای 1C به معنای خطای 1C در متن درخواست یا خطای 1C در تنظیمات ACS است (اغلب در گروه بندی، در فیلدهای انتخابی، در قالب بندی شرطی).

      سعی کنید با تنظیمات شروع کنید و آنها را بسیار ساده کنید. بررسی کنید که در فیلدهای انتخاب شده و قالب بندی شرطی - هیچ فیلدی با علامت ضربدر در لیست وجود ندارد.

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

    خطا هنگام به‌روزرسانی حسابداری (Processing.Updating InfoBase.ObjectModule(1777)): روش شی پیدا نشد (UpdateDetails)

    شرح خطا:
    به روز رسانی پایگاه داده پس از به روز رسانی پیکربندی از نسخه 2.0.65.47 به نسخه 2.0.66.6 با خطا (Processing.Updating the Infobase.ObjectModule(1777)): روش شی پیدا نشد (UpdateDetails) پلتفرم 1C: Enterprise 8.3.19.1818، نسخه فایل پایگاه داده

    راه حل های یافت شده:

    با توجه به این واقعیت که هنگام به روز رسانی پیکربندی پایه 1C: Accounting 2.0، توسعه دهندگان حق ارتقاء از نسخه 2.0.65.47 به 2.0.66.6 را بدون نصب نسخه های میانی باقی گذاشتند، به طور طبیعی، این فرصت از دست نرفته است. اما این موفقیت آمیز نبود، زیرا. خطای بالا رخ داد

    اگر قبل از شروع به‌روزرسانی یک نسخه بایگانی از پایگاه داده تهیه کرده باشید، این کار شما را از حل مشکل با استفاده از پیکربندی نجات می‌دهد. اگر این خطا رخ دهد، در بهترین حالت، تنها بازیابی یک کپی از پایگاه داده باقی می ماند. برای انتشار 2.0.65.47 دوباره به روز رسانی کنید. همیشه 1C 8 را در حالت کاربر اجرا کنید (کلید "F7" روی صفحه کلید یا در منوی "پیکربندی" - "به روز رسانی پیکربندی پایگاه داده F7") تا به روز رسانی نسخه فعلی را تکمیل کنید.

    سپس پیکربندی 1C: Accounting 8 را برای انتشار نسخه 2.0.66.2 به روز می کنیم. مجدداً اجباری 1C 8 را در حالت کاربر اجرا کنید تا به‌روزرسانی نسخه فعلی تکمیل شود.

    اگر پشتیبان تهیه نشود

    اگر نسخه پشتیبان تهیه نشده باشد. سپس فقط برای ذخیره پیکربندی پایگاه داده در یک فایل، منوی "پیکربندی" - "ذخیره پیکربندی" باقی می ماند.

    ما با اخطار موافقت می کنیم و تنظیمات پشتیبانی را همانطور که نشان داده شده است تنظیم می کنیم:

    ما "OK" را فشار می دهیم. منتظر هستیم تا پلت فرم اقدامات لازم را انجام دهد. در مرحله بعد، ما به پردازش "به روز رسانی پایگاه اطلاعات" می رویم، در ماژول پردازش به خط 1777 (با فراخوانی پنجره "Go by line number" با استفاده از ترکیب کلید "Ctrl + G") بروید و روی خط نظر دهید، و تنظیم کاراکترهای "//" قبل از خط:

    از طریق منوی "Configuration" - "Update database configuration F7") تغییرات را ذخیره کنید. پایگاه داده را در حالت 1C: Enterprise برای به روز رسانی پایگاه داده راه اندازی می کنیم. پس از آن، باید پیکربندی را برای پشتیبانی برگردانید. فایل پیکربندی ذخیره شده قبلی از طریق منوی "پیکربندی" بارگیری می شود - "بارگیری پیکربندی از فایل"

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

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

    همه می‌دانند که هر نرم‌افزاری می‌تواند گهگاهی خرابی‌های مختلفی داشته باشد یا به زبان ساده، درست کار نکند. چنین خرابی هایی که منجر به اختلال در عملکرد صحیح سیستم می شود نامیده می شوند اشتباهات. برنامه 1c یک محصول (نرم افزار) نرم افزاری است، به ترتیب در این برنامه خطاهای مختلفی نیز ممکن است رخ دهد که منجر به عملکرد نادرست سیستم شود. می تواند بسیار متنوع باشد و اگر تعدادی دانش خاص در زمینه برنامه نویسی و ویژگی های عملکرد مکانیسم های داخلی 1c نداشته باشید، نمی توانید به درستی خطا را درک و تشخیص دهید و حتی بیشتر تصحیح کنید هر کدام از ما برنامه نویس 1sهمیشه آماده کمک به شما در حل هر مشکلی است خطاهای 1s!

    چه چیزی باعث ایجاد خطا در پایگاه داده 1s می شود؟

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

    انواع خطاها در پایگاه داده 1s

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

    1. خطای قالب جریان
    2. فیلد شی پیدا نشد
    3. روش شی پیدا نشد
    4. حافظه ناکافی
    5. خطاهای مرتبط با جداول SQL (مربوط به سرورهای 1c که بر روی پایگاه داده های رابطه ای مانند MySQL اجرا می شوند)
    6. خطای دسترسی 1s

    خطای قالب جریان در 1 ثانیه

    خطای قالب جریان 1s

    فیلد شی پیدا نشد

    فیلد شی پیدا نشد

    ایندکس خارج از محدوده آرایه است

    خطای 1s

    خطای قالب جریان در 1 ثانیه

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

    فیلد شی پیدا نشد

    اگر سیستم 1s یک پیغام خطا با متن " فیلد شی پیدا نشد"، پس این بدان معنی است که خطا زمانی رخ می دهد که برنامه سعی می کند به ویژگی (فیلد) یک شی دسترسی پیدا کند که به سادگی وجود ندارد. این خطا در صورت بروز در 1C Enterprise ماهیت "خطای زمان اجرا" دارد. این نوع را نیز فقط برنامه نویسان می توانند اصلاح کنند.

    ایندکس خارج از محدوده آرایه است

    یک آرایه در برنامه نویسی یک ناحیه حافظه خاص است که در آن بسیاری از اشیاء از یک نوع ذخیره می شود (در 1s چنین انواعی می توانند مانند ReferenceReference، DocumentObject و غیره باشند، و همچنین انواع اولیه مانند number، string، boolean. ، و غیره.). خطای 1sمربوط به فراتر رفتن از مرزهای آرایه فقط زمانی اتفاق می افتد که برنامه به مرزهای حافظه ای که برای آرایه اختصاص داده شده است دسترسی پیدا کند. بر این اساس، برنامه در این حالت خطا می دهد، به کاربر (برنامه نویس) اطلاع می دهد که به آرایه در حال دسترسی است و این به نوبه خود یک خطای برنامه است.

    روش شی پیدا نشد

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

    حافظه کافی در 1 ثانیه وجود ندارد

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

    رفع احتمالی خطای 1c "حافظه کافی نیست"

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

    • برای سیستم 32 بیتی - 2 گیگابایت
    • برای 64 بیت - 4 گیگابایت

    برای افزایش حجم حافظه آدرس باید موارد زیر را انجام دهید:

    1. خط فرمان را اجرا کنید: "Start - Run" - CMD را تایپ کنید و کلید enter را فشار دهید
    2. اکنون در خط فرمان متن را بدون نقل قول وارد کنید "bcdedit /set riseuserva 3072"، جایی که 3072 اندازه حافظه آدرس مورد نظر است.
    3. راه اندازی مجدد سیستم عامل (کامپیوتر)
    4. سعی کنید عملی را در 1C انجام دهید که قبلاً کار نمی کرد و منجر به خطا شد.
    5. اگر همه چیز درست شد و این عملیات به قدری تکرار نشد، توصیه می شود با استفاده از دستور "bcdedit / deletevalue rrituserva" اندازه حافظه آدرس را به مقدار پیش فرض برگردانید.

    خطاهای مربوط به جداول SQL

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

    خطای دسترسی در 1 ثانیه

    این خطا زمانی رخ می دهد که کاربر سعی می کند عملی را انجام دهد که توسط حقوق دسترسی (نقش) ممنوع است. به همین دلیل است که سیستم در 1s خطای دسترسی می دهد. نقش ها در پیکربندی توسط برنامه نویس پیکربندی می شوند.

    آیا نمی توان خطا را در 1s رفع کرد؟

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