مقدار یک مقدار از نوع شی رشته ای نیست

خطای "مقدار یک مقدار از نوع شی (سازمان خارجی) نیست" در 1C: حسابداری 8.2 (نسخه 2.0)

2015-07-13T13:28:05+00:00

چنین خطایی می تواند در هر سندی رخ دهد که از "سند تسویه حساب با طرف مقابل (حسابداری دستی)" به عنوان یکی از جزئیات استفاده می کند.

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

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

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

من اخیراً برنامه ای را در یکی از رایانه های کاری خود به روز کردم. 1C: سازمانی. پس از شروع برنامه، در فرآیند به روز رسانی خطایی رخ داد: «به روز رسانی انجام نشد. هنگام به‌روزرسانی نسخه برنامه خطایی روی داد: مقدار، مقداری از نوع شی (کد) نیست.» راه اندازی مجدد برنامه کمکی نکرد - پنجره خطا دوباره ظاهر شد:

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

1. پس اول از همه برنامه را ببندید 1C، و در صورت لزوم یک کپی از پایگاه داده تهیه کنید. برای این کار به پوشه ای که پایگاه داده در آن ذخیره شده است بروید و آن را در جایی کپی کنید فایل 1Cv8.1CD:

2. حالا دوباره برنامه را اجرا کنید 1C: سازمانی. در پنجره شروع، به " پیکربندی”:

3. سپس در نوار منو، به تب “ بروید اداره” – “تست و تعمیر”:

4. در پنجره‌ای که باز می‌شود، کادرها و نشانگرها را دقیقاً مانند تصویر من علامت بزنید و سپس روی دکمه Run کلیک کنید:

5. در پایان فرآیند تست، اطلاعات با نتایج این تست در زیر نمایش داده می شود:
برنامه را ببندید 1C. سپس دوباره آن را راه اندازی می کنیم. پس از راه اندازی خطا: به روز رسانی انجام نشد. مقدار یک مقدار از نوع شی نیست” نباید تکرار شود.

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

خطای مقدار 1C در سلول ها چه چیزی را نشان می دهد؟

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

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

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

متخصصان IT Consulting تجربه گسترده ای در راه اندازی و نگهداری برنامه های Enterprise 8.3 دارند. می توانید پاسخ رایج ترین سؤالات مربوط به مقادیر را در 1C دریافت کنید.

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

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

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

پیغام خطا 1C

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

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

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

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

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

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

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

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

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

این چه معنی خواهد داشت؟؟؟

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

  • یک متغیر وجود دارد
  • این برنامه فرض می کند که مقدار متغیر یک دایرکتوری یا سند یا چیز مشابه دیگری است - به طور کلی دارای جزئیات (فیلدها) است.
  • برنامه سعی می کند به یک فیلد از این شی دسترسی پیدا کند
  • با این حال، خطای 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 به معنای میدان این شی (خصلت) است. لازم:
    o نوع شیء را تعیین کنید
    o اگر این یک کتاب مرجع، یک سند است، باید ببینید که آیا این ملک واقعاً به این نام خوانده می شود یا خیر
    o اگر هست یا – به جزئیات فرم با آن نام نگاه کنید.

  • "روش Xxxx روی شی شناسایی نشد"

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

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

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

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

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

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

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

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

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

خطا: "مقدار یک مقدار از یک نوع شی (RightValue) نیست" در 1C: Accounting 8.3 (نسخه 3.0.31.9)

2018-10-25T11:51:27+00:00

پس از به‌روزرسانی به آخرین نسخه (3.0.31.9) 1C: Accounting 8.3، لیست سفارش‌های پرداخت برای برخی از کاربران باز نشد. خطا ظاهر می شود: "مقدار یک مقدار از نوع شی (RightValue) نیست."

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

اما 31 مارس نزدیک است و من می خواهم امروز به دستورات پرداخت چگونه این کار را انجام دهم؟ تا الان فقط یک راه بلدم:

  • به بخش Administration بروید.
  • تنظیمات کاربر را در نوار اقدام باز کنید.
  • تنظیمات کاربر را کاملاً پاک کنید.

من هنوز روش نرم‌تری نمی‌دانم، اما در این مسیر کار می‌کنم.

شاید بهتر باشد ابتدا سعی کنید همه تنظیمات را پاک نکنید، بلکه تنظیمات فقط عنصر «سفارش‌های پرداخت» را در تنظیمات ظاهری پاک کنید.

با احترام، (معلم و توسعه دهنده).

با دوستان به اشتراک بگذارید یا برای خود ذخیره کنید:

در حال بارگیری...