Обектният метод не е намерен, обменът на edo е конфигуриран.

Вие (или потребителят) работите в 1C. Изведнъж - грешка. Какво да правя?

Разбира се, най-правилното е да анализирате каква е грешката на 1C, причините за нея, прекарайте час или два, за да разберете какво е какво.

Какво да направите, ако това не е възможно? Няма време, няма желание, няма достатъчно знания. Ето някои много вредни съвети за бързо коригиране на грешки в 1C.

Съобщение за грешка 1C

Типичният тип съобщение за грешка 1C е прозорец с текста на грешката 1C и бутоните OK и Още.

Показаният тук текст на грешката 1C е потребителско съобщение; често не означава нищо за програмиста, тъй като показаната грешка 1C може да е резултат от някои неправилни действия.

За да коригирате грешките на 1C, трябва да щракнете върху Още в този прозорец, за да видите съобщението за грешка на програмиста 1C. В него се посочва:

  • , в който възникна грешка на 1C
  • Функцията на този модул, в която е възникнала грешката 1C
  • Номерът на реда на този модул, в който е възникнала грешката 1C.

Можете също да щракнете върху бутона Конфигуратор и след това ще се отвори конфигураторът, този модул, тази функция на този ред, след което можете да коригирате грешката 1C.

Трикове за разбиране на грешките

Както току-що казах, текстът на грешка в 1C много често е следствие от извършени преди това неправилни действия.

Например, много често срещан текст за грешка на 1C гласи:

Стойността не е стойност на тип обект (WhatName)

Какво би означавало това???

А това означава следното:

  • Има променлива
  • Програмата предполага, че стойността на променливата е директория или документ или нещо подобно - като цяло има подробности (полета)
  • Програмата се опитва да получи достъп до поле на този обект
  • Грешката на 1C обаче е, че по някаква причина в предишните редове на програмата тази променлива получи стойност, която няма никакви подробности (полета), например стойността „Undefined“.

Коригиране на грешки в 1C, които са по-чести

Разбира се, не можем да вземем предвид всички грешки, които могат да съществуват в 1C в момента.
Нека се опитаме да изброим накратко 1C грешки, които се случват често, както и вредни съвети за бързо коригиране на 1C грешки.

  • Ако променливата е от тип Boolean (т.е. приема стойностите True и False), тогава тя може да бъде достъпна по следния начин:

    Ако име на променлива тогава

    Това писане е подобно:
    If VariableName = True Then

    Въпреки това, ако по някаква причина тази променлива приеме небулева стойност, тогава първата опция ще даде 1C грешка, но втората не.

  • „Името на функцията XXX не е намерено“

    Някои модули се изпълняват на сървъра. Освен това някои функции на същия модул могат да се изпълняват на сървъра или на клиента.

    В този случай може да възникне грешка 1C, че функция, изпълнявана на сървъра, извиква функция, която се изпълнява на клиента. В този случай ще има такава грешка 1C.

    Необходимо е да преместите такава функция на сървъра, ако е възможно.

  • „Променлива с име XXX не е намерена“

    Подобно на предишната грешка 1C. Ако програмата съдържа извикване на функция, която се намира в общ модул, тогава изглежда така:
    Име на модул.Име на функция();

    Ако в свойствата на модула е зададено, че той се изпълнява на клиента и ние осъществяваме достъп от онези редове на програмата, които се изпълняват на сървъра, тогава ще има 1C грешка
    „Променливата не е намерена – име на модул“

    Необходимо е по подобен начин да се активира изпълнението на този модул на сървъра.

  • „Свойството XXX не беше открито на обекта“

    Думата „Свойство“ означава полето на този обект (атрибут). Необходимо:
    o Определете какъв вид обект е
    o Ако това е справочник, документ, трябва да се види дали имотът наистина се казва така
    o Ако е или – вижте детайлите на формуляра с това име.

  • „Метод Xxxx не е открит на обекта“

    Думата „метод“ се отнася до функция/процедура в модул на този обект.

    Необходимо:
    o Определете какъв вид обект е
    o Намерете неговия модул (модул на обект, ако е 1C обект, модул на формуляр, ако е формуляр)
    o Проверете за наличието на функция със същото име.

  • „Грешка 1C при изпълнение на заявка“

    Това означава, че в текста на заявката има грешка 1C. Текстът на заявката обикновено се определя в програмата по-рано (т.е. по-високо), отколкото се изпълнява. Потърсете текста на заявката в този модул (с поглед отгоре или като потърсите думата „ИЗБЕРЕТЕ“).

    Опитайте да анализирате текста на заявката или като щракнете с десния бутон върху текста на заявката и опитайте да отворите дизайнера на заявка, за да получите подсказка.

  • „Грешка в оформлението на 1C“ - при стартиране на отчет

    Тази 1C грешка означава или 1C грешка в текста на заявката, или 1C грешка в настройките на ACS (често в групи, в избрани полета, в условно форматиране).

    Опитайте да започнете с настройките, като ги опростите значително. Проверете дали в избраните полета и условното форматиране няма полета, отбелязани с кръстче в списъка.

    Ако не помогне, опитайте да отидете до тялото на заявката и да използвате инструмента за създаване на заявки, за да получите подсказка.

Хубав ден на всички!

Много от нас се сблъскват със софтуерни продукти на 1C Company в нашата дейност. Освен това на някои от нас понякога дори им се налага услуга 1C продукти. Понякога в този „прекрасен“ процес на обслужване възникват различни инциденти. Днес ще говорим за един от тях.

А именно темата на този материал: Как да коригирате грешка, която възниква в 1C - Не може да се свърже с друга програма: Методът на обекта не е намерен (Свързване).

Ако имате късмета да видите същата грешка като на тази екранна снимка, прочетете, за да разберете как да я поправите 😉

Малко уводна теория:

1C:Enterprise 8.xпредоставя различни интересни възможности за организиране на обмен на данни с други софтуерни системи. Заедно с механизма OLE автоматизациявъведена е и концепцията за COM връзка, която позволява надежден и по-бърз достъп до данните на 1C:Enterprise 8.0 от външни приложения, поддържащи тази технология.

За да организирате достъпа до данните на 1C:Enterprise 8.0 чрез COM връзкае създаден COM обектс лична карта V8.COMConnector, с чиято помощ се осъществява връзката. След това се извиква методът Connect на предварително създадения обект V8.COMConnector. Метод на свързваневръща връзка към обект за COM връзка с информационната база 1C:Enterprise 8.0. А чрез получения обект за COM връзка се осъществява достъп до валидните методи, свойства и обекти на информационната база, с която се осъществява връзката.

Сега, знаейки откъде растат краката, нека да преминем към практиката. Да кажем (по време на актуализация или някаква друга операция) сте получили грешка като:

За да коригирате грешката, която възниква в 1C - методът на обекта не е намерен (свързване), трябва да направите следното:

В най-новите версии на операционните системи Windows отидете на „Component Services“. Тази функционалност се извиква в следната последователност: Контролен панел - Администриране - Компонентни услуги.

Изберете: Компютри – Моят компютър – COM+ приложения – Създайте приложение – Създайте ново приложение – въведете името „V82COMConnector“ (превключвател „Сървърно приложение“) – Посочен потребител (администратор)

В темата, която се появява V82COM Конектор– изберете подклон Компоненти – създайте нов компонент – ​​Инсталирайте нови компоненти – \bin\comcntr.dll

Щракнете с десния бутон върху клона V82COMConnector - Свойства - Сигурност - премахнете отметката от "Принудителна проверка на достъпа за приложения" - поставете отметка в квадратчето "Прилагане на правила за ограничаване на софтуера" - Ниво на ограничение "Неограничено":

Също така в потребителски профили C:\Users\OurUser\AppData\Roaming\1C\1CEStart.cfg променете параметъра UseHWLicenses=0 на UseHWLicenses=1

След всички тези промени можете (за чистотата на експеримента) да рестартирате компютъра и да се насладите на по-нататъшна работа в 1C, но без тази грешка (!)

P.S. Малък бонус в края: Актуализация на 1C като администратор

Доста често някои от вашите отдалечени клиенти са счетоводители и др. - не може самостоятелно да актуализира софтуерните продукти на 1C, той изисква администраторски права и не иска или се „страхува“ да щракнете с десния бутон върху прекия път (и изберете „Изпълни като администратор“). Затова постоянно дразни брат ни ИТ специалист.

Нека щракнем с десния бутон вместо него, но го направи веднъж и завинаги забравете тази тема!

Така че, нека направим еднократна настройка - щракнете с десния бутон върху прекия път за стартиране на 1C, изберете „Свойства“, щракнете върху „Промяна на настройките за всички потребители“ и поставете отметка в квадратчето „Стартиране на тази програма като администратор“. След това щракнете върху OK няколко пъти и забравете за „страшния“ клиент 😉

Надявам се, че сте успели да намерите полезна информация тук за себе си. Напишете в коментарите за вашите „трикове“ - заедно ще донесем образователни ползи.

Довиждане и всичко най-добро! 😉

Всеки знае, че всеки софтуер може да даде различни проблеми от време на време или, просто казано, да не работи правилно. Такива повреди, които водят до нарушаване на правилното функциониране на системата, се наричат грешки. Програмата 1c е софтуерен продукт (софтуер), следователно в тази програма могат да възникнат и различни грешки, които водят до неправилна работа на системата. може да бъде много разнообразна и ако нямате редица специални познания в областта на програмирането и спецификата на вътрешните механизми на 1C, тогава няма да можете правилно да разберете и диагностицирате грешката, още по-малко да я коригирате. Всеки от нашите 1c програмисти винаги е готов да ви помогне при разрешаването на всякакви проблеми, свързани с 1s грешки!

Какво причинява грешки в базата данни 1C?

Сега нека поговорим малко за това защо могат да се случат различни неща. грешки в 1s база даннипри работа с програмата. Всъщност може да има много причини и всички те могат да имат напълно различни причини. И все пак ще се опитаме да разберем най-общо причината за появата на различни грешки в 1s.

Видове грешки в базата данни 1C

Грешки в 1sМоже да има голямо разнообразие и те могат да се случат по различни причини. В тази статия няма да разглеждаме всички възможни 1c грешки; ще се опитаме да подчертаем така наречените основни „типове“ срещани грешки. Условно ги наричаме „типове“, тъй като съдържанието на грешката, която програмата ви показва, обикновено винаги е различно, но същността често е една и съща. Така че нека подчертаем най-често срещаните грешки в 1s база данни:

  1. Грешка във формата на потока
  2. Полето за обект не е намерено
  3. Методът на обекта не е намерен
  4. Недостатъчно памет
  5. Грешки, свързани с SQL таблици (от значение за 1C сървъри, които работят на релационни бази данни, като MySQL)
  6. Грешка при достъп 1s

Грешка при форматиране на потока след 1 сек

Грешка във формат на поток 1s

Полето за обект не е намерено

Полето за обект не е намерено

Индексът е извън границите на масива

Грешка 1c

Грешка при форматиране на потока след 1 сек

Тази грешка много често възниква, когато поредица от команди е погрешно прочетена от байт код в поток, поради което се нарича Грешка във формат на поток 1s. Всяка транзакция ще бъде прекратена, ако тази грешка възникне в резултат на нейното изпълнение. Такива грешки изискват незабавна корекция, тъй като могат да навредят на работата на системата 1C Enterprise. Тези грешки могат да бъдат коригирани само от квалифицирани 1C програмисти.

Полето за обект не е намерено

Ако системата 1c ви даде съобщение за грешка с текста " Полето за обект не е намерено", това означава, че грешката възниква в ситуация, когато програмата се опитва да получи достъп до атрибут (поле) на обект, който просто не съществува. Тази грешка има естеството на "грешка по време на изпълнение", ако се появи в 1C Enterprise. Грешки от този вид също могат да бъдат коригирани само програмисти.

Индексът е извън границите на масива

Масивът в програмирането е определена област от паметта, в която се съхраняват много обекти от един и същи тип (в 1c такива типове могат да бъдат например DirectoryLink, DocumentObject и т.н., както и всякакви примитивни типове като число, низ, Boolean и т.н.). Грешка 1cсвързано с излизане отвъд границите на масива, възниква точно когато дадена програма има достъп до границите на паметта, която е разпределена за масива. Съответно програмата в този случай генерира грешка и уведомява потребителя (програмиста), че има достъп извън масива, а това от своя страна е софтуерна грешка.

Методът на обекта не е намерен

Подобна грешка възниква, когато системата се опитва да получи достъп до метод (функция) на обект, чието описание не съществува в кода. Грешки от този тип могат да бъдат коригирани от програмисти.

Няма достатъчно памет за 1 сек

Тази грешка възниква, ако системата изчерпи цялата RAM, разпределена за нуждите на изпълнение на програми в операционната система, поради което програмата генерира грешката " Няма достатъчно памет за 1 сек". Може да възникне по време на различни събития като актуализиране на конфигурация, обработка на голям файл, при генериране на отчет, зареждане на голяма база данни и т.н. Потребителят може да опита сам да поправи такава грешка.

Възможна корекция за грешка 1c „Няма достатъчно памет“

Грешката се крие в ограниченото разпределение на адресна памет от операционната система за софтуер (софтуер).
Ограниченията на адресната памет по подразбиране са:

  • за 32-битова система – 2GB
  • за 64 бита – 4 GB

За да увеличите размера на адресната памет, трябва да направите следното:

  1. Стартирайте командния ред: "Старт - Изпълнение" - въведете CMD и натиснете enter
  2. Сега в командния ред въведете текста без кавички „bcdedit /set increaseuserva 3072″, където 3072 е размерът на желаната адресна памет
  3. Рестартирайте вашата операционна система (компютър)
  4. Опитайте се да извършите това действие в 1C, което не е работило преди и е довело до грешка.
  5. Ако всичко се получи и операцията не се повтаря толкова често, препоръчително е да върнете размера на адресната памет до стойността по подразбиране, като използвате командата „bcdedit /deletevalue increaseuserva“

Грешки, свързани с SQL таблици

Грешки от този вид обикновено възникват от страната на сървъра, когато системата има достъп до таблицата и не може да прочете данните. Тази грешка може да възникне поради неправилна конфигурация на сървъра, както и поради повреда на SQL таблици. В особено трудни ситуации може дори да не е възможно да възстановите базата данни и тогава само архивирано копие на базата данни може да ви спаси. Силно препоръчваме да правите навреме резервни копия на базата данни.

Грешка при достъп за 1 сек

Тази грешка възниква, когато потребител се опита да извърши действие, което е забранено от правата за достъп (роли). Ето защо системата издава грешка при достъп от 1s. Ролите се конфигурират в конфигуратора от програмиста.

Не можахте да поправите грешката за 1s?

Ако не сте успели да коригирате грешка в 1C, не се отчайвайте, вдигнете телефона и ни се обадете! Нашите специалисти винаги са готови да ви помогнат да разрешите всякакви проблеми, свързани с 1C, включително грешки, които възникват по време на работата на системата.

Дял