11.09.2023

1с предприятие выдает ошибку. Наиболее частые ошибки «1С» и методы их исправления. Конфликт блокировок при выполнении транзакции



Последняя редакция №22 от 15.07.08 | История
URL:
Ключевые слова: ошибка,исключение,попытка, 80004005, 80040E31, 00000005, 00000041, 80070005, 80000009, 80030005, 8001011B, 80010108, 80010005, 800706BA, 800706BE, 80080005,SDBL,pos,CAST

Предлагаю всем дружно составить перечень ошибок 1С 80 и какое сообщение об этой ошибке можно получить для анализа в функции ОписаниеОшибки().

Просьба соблюдать формат и дословно приводить текст ошибки.

Ошибка блокировки при транзакциях

Microsoft OLE DB Provider for SQL Server: Transaction (Process ID 55) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.

HRESULT=80004005, SQLSTATE=40001, native=1205

Возникает при конфликте транзакций, часто при записи объектов.

Ошибка блокировки при транзакциях 2

Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.

HRESULT=80040E31, SQLSTATE=HYT00, native=1222

Истек тайм-аут.

Более 256 таблиц в запросе

Ошибка выполнения запроса "Построенный запрос к СУБД использует слишком много таблиц. Допустимо не более 256."

Когда в запросе идет обращение более, чем к 256 таблицам.

Ошибки: 00000005, 00000041, 80070005, 80000009, 80030005, 8001011B
Возникают в тех случаях, когда пользователь, от имени которого работает клиентское приложение, не имеет прав доступа к каким-либо ресурсам. В частности, это может означать, что пользователю, от имени которого стартовало клиентское приложение 1С:Предприятия, недоступны либо средства COM+ того компьютера, на котором установлен сервер, либо зарегистрированное на нем COM+ приложение 1CV8, которое является сервером 1С:Предприятия.

Если эта ошибка возникает во внешнем соединении 1С:Предприятия, то это означает отсутствие соответствующих прав у пользователя того приложения, которое обратилось к внешнему соединению. Это может быть любое интерактивное приложение или, например, WEB-сервер. В частности, если в качестве WEB-сервера используется Microsoft Internet Information Services, то таким пользователем может быть пользователь IUSR_<Имя компьютера> или ASPNET.

Методика настройки прав доступа пользователей к COM+ серверу описана в разделах "Вопросы установки и настройки 1C:Предприятия 8.0 в варианте "клиент-сервер"" и "Особенности использования внешнего соединения 1С:Предприятия в WEB-приложениях".
(С) ИТС

Ошибка 80010108
Может возникнуть в том случае, если клиентское приложение некоторое время (несколько минут) находилась в неактивном состоянии, например из-за засыпания компьютера или долгого ожидания на точке останова в отладчике. Причиной этого является особенность механизма DCOM, обеспечивающего принудительный разрыв соединения с сервером, если клиент долго не проявлял активность.
(C) ИТС

Ошибка 80010005
Может возникнуть в клиентском приложении в процессе обращения к серверу 1С:Предприятия, если при перерисовке экрана клиентское приложение обратилось к серверу 1С:Предприятия повторно. Это может быть проявлением внутренней ошибки клиентского приложения 1С:Предприятия. Для ее оперативного исправления желательно описать обстоятельства ее возниконовения и обратиться на линию технической поддержки 1С:Предприятия 8.0.
(C) ИТС

Ошибки 800706BA, 800706BE
Сигнализируют об аварийной ситуации на сервере 1С:Предприятия, которая привела к его автоматическому перезапуску.
(С) ИТС

Ошибка 0х80080005: Server execution failed
Одной из причин возникновения этой ошибки явлются проблемы с подсистемой COM+, являющейся частью операционной системы. При возникновении такой ошибки, как правило, в системные журналы событий также записываются события с источником COM+, именем серверного приложения System Application и указанием файла Comsvcs.dll. Существуют процедуры восстановления работоспособности COM+, однако они дают желаемый результат не всегда. Описания официально рекомендованных процедур можно найти в http://support.microsoft.com/default.aspx?scid=kb;en-us;315296 (или похожей http://support.microsoft.com/default.aspx?scid=kb;en-us;318731), однако по результатам практических применений рекомендуется процедура, описанная в http://www.jsifaq.com/subN/tip6900/rh6951.htm . Эта последовательность шагов дополнена по сравнению с официальной и может быть использована в операционных системах 2000/XP/2003. Ниже приводится ее перевод на русский язык.
Для восстановления поврежденного каталога COM+:

1. Переименуйте каталог %SystemRoot%\System32\Clbcatq.dll в %SystemRoot%\System32\~Clbcatq.dll (обратите внимание на появление тильды в имени каталога).
2. Перезагрузите компьютер.
3. Удалите из системного реестра ключ COM3, расположенный в ключе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.
4. Запустите командную консоль CMD.EXE.
5. Наберите pushd %SystemRoot% и нажмите Enter.
6. Наберите rd /s /q Registration и нажмите Enter.
7. Наберите popd и нажмите Enter.
8. Наберите exit и нажмите Enter.
9. Удалите слово Hide из строки, начинающейся с COM=, в файле %SystemRoot%\Inf\Sysoc.inf. Для редактирования файла можно использовать Notepad.
10. Для Windows XP:
* Запустите командную консоль CMD.EXE.
* Наберите regsvr32 /s ole32.dll и нажмите Enter.
* Наберите regsvr32 /s oleaut32.dll и нажмите Enter.
* Наберите exit и нажмите Enter.
11. Запустите панель управления Установка/Удаление программ и выберите пункт Добавление\удаление компонент Windows.
12. Нажмите Next и переустановите COM+.
Замечание: Если механизм защиты системных файлов Windows File Protection блокирует одно или несколько из вышеприведенных действий, то необходимо выполнять эти действия в безопасном режиме (Safe Mode).
http://users.v8.1c.ru/Adm433.aspx

Ошибка записи/проведения

Ошибка при вызове метода контекста (Записать): Операция не выполнена!

Возникает, если в модуле записи/проведения присвоить Отказ=истина

Ошибка преобразования данных XML

возникает при рассинхронизации структуры данных (конфигурации) между узлами распределенной базы

В базе нет пользователя с административными правами
При редактировании списка пользователей роли берутся только из конфигурации БД. Обновить конфигурацию БД (F7).

Попытка передачи мутабельного значения на сервер 1С:Предприятия
Возникает только в клиент-серверной версии (SQL). Для исправления ошибки нужен программист. Если у вас типовая конфигурация, попробуйте обновить ее до последнего релиза.
Мутабельный - изменяемое. На сервер 1С можно передавать значения только примитивных типов данных.

Клиентский поток исполняется на сервере. Удалить клиента веременно невозможно
v8: Клиентский поток исполняется на сервере. Удалить клиента веременно невозмож

Однако не обязательно перезапускать сервер приложений (выгоняя всех пользователей), чтобы убить зависший таким образом процесс.
Достаточно найти этот процесс на SQL сервере и убить его на SQL сервере.

Ошибка SDBL: Поля "CAST (Q_000_T_001/Recorder AS REF(Document4055)/Fld4092" и "CAST (Q_000_T_001/Recorder AS REF(Document123)/Fld2322" не совместимы по типам.(pos=10173)

В документах "Приходный кассовый ордер" и "Расходный кассовый ордер" реквизит "Основание" имеет в свойстве "Неограниченная длина" включенный флаг, надо снимать флаг и указать длину этого реквизита

"Ошибка SQL: Поле не найдено "MaxGetCode"

Эта ошибка выдается в файловом варианте, когда клиенты разных версий одновременно работают с ИБ в файловом варианте.

В начале юридического договора, особенно в ИТ области, обычно есть раздел под названием Термины. В нем объясняется — что значит или включает в себя то или иное ИТ слово.

Но кроме действительно сложных слов как сервер или сайт также и обычные, всем известные слова у программистов могут значить совсем другое. Например ошибки. В общечеловеческом смысле это слово означает неправильное действие. Такое, за которое его автору может быть даже стыдно.

В программистом смысле слово ошибки имеет, наверное, два уточнения..

Что означает термин «ошибка» в программировании и в 1С

Ошибка – это поведение программы, отличающееся от задуманного. Каждый компьютер это уникальный комплекс программ и железа, отличающийся от другого компьютера.

Стандартизация как железа, так и программ, позволяет нам предполагать, что на каждом компьютере программы будут работать одинаково, однако по факту всегда могут складываться определенные обстоятельства, когда автор программы будет удивлен почему программа делает сейчас именно так, а не иначе.

Сюда же вероятно можно включить те ситуации, когда программа делает что-то не так, потому что программист о чем-то забыл или недодумал.

Ошибка – это специальное сообщение программы о сложившихся обстоятельствах, когда программа не может сделать так, как предполагалось она будет делать. Возможно покажется, что это то же самое, но это не так.

Например, программист задумывал, что сначала пользователь откроет файл, а потом программа сделает то-то и то-то. Однако когда программа была скопирована пользователю на компьютер и пользователь забыл открыть файл. Или пытался открыть, но файл оказался некорректный или винчестер «битый».
И программа сообщает пользователю: Эй, тут ошибка! Я не могу сделать то, что должна.

Ошибки 1С имеют несколько уровней – во первых сообщения об ошибках 1С могут принадлежать , которая сообщает о невозможности выполнить какие-то действия, которые она должна была выполнить из-за сложившихся обстоятельств.

Второй уровень – это ошибки 1С в программе на языке 1С. Да, платформа выполняет успешно написанную программистом 1С программу, но программа может быть написана некорректно или также не может быть выполнена именно в сложившихся обстоятельствах (на этом компьютере, при таких действиях конкретного пользователя и т.п.).

Третий уровень – это ошибки 1С в данных. Данные в базе данных взаимосвязаны друг с другом. Тем не менее могут встречаются ситуации когда данные «портятся». Например, в одной из форм не стоят достаточные проверки, чтобы особенно креативный пользователь ввел что-то неправильно. Далее программа может сработать неверно, потому что алгоритм не предполагал что кто-то введет такое..

Сообщение об ошибке 1С

1С сообщает об ошибке выполнения программы на языке 1С с помощью типового окошка с текстом ошибки 1С и кнопками ОК и Подробнее.

Причем секрет тут в том, что в этом окошке отображается только краткое сообщение об ошибке 1С, которое зачастую программисту ни о чем не говорит.

Чтобы увидеть полное – нужно нажать на кнопку Подробно. Уже там будет отображена даже строка программы, в которой произошла ошибка 1С. Также можно перейти прямо в конфигуратор к этой строке.

Но пользователи об этом не знают.. И всегда присылают скриншот того первого окошка. Если присылают 🙂

Генерация исключения

Итак, мы рассматриваем ошибку 1С в программировании как способ/возможность программе сообщить пользователю о том, что она не может что-то сделать.

Пример. Нужно открыть файл. Но при открытии возможны ошибки 1С – например у пользователя нет доступа на чтение файла. Мы можем написать так:


Если Файл = Ложь Тогда
Сообщить(«Не удалось открыть файл»);
Иначе
//программа идет дальше, делаем что-то с файлом
КонецЕсли;

В данном примере мы учли, что файл может быть не открыт с помощью конструкции «Если».

Однако у данного примера есть очевидные минусы:

  • Таких вариантов может быть много (не откроется файл, не прочитается файл до конца, пользователь пьян, выключили электричество..)
  • Могут быть неучтенные варианты, про которые программист не подумал.

Поэтому в программировании принято использовать прием под названием «генерировать исключение» — то есть позволить ошибке 1С произойти.

Программа делает вид, что файл в любом случае откроется. Никаких «Если» не пишется. Если же что-то пойдет не так, то программа собственно и сообщит об ошибке 1С – ее выполнение прервется.

1С сама файл не открывает – она вызывает команду Windows API. Windows написана также с использованием этого приема. Таким образом Вы можете представить себе цепочку прерываний выполнения, начинающуюся с Windows:

  • Язык 1С – команда открыть файл
  • Платформа 1С – команда открыть файл
  • Windows API – команда открыть файл
  • Программа на ассемблере – команда открыть файл
  • Опа! Файл не открывается!
  • Программа на ассемблере прервана!
  • Функция Windows API прервана!
  • Платформа 1С выполнение программы прервано!
  • Программа на языке 1С прервана!
  • Пользователь видит сообщение.

Вопрос: кто выводит тогда сообщение об ошибке 1С? Откуда оно берется?

Перехват и обработка исключения

Так мы подходим к следующему приему: перехват исключений, сгенерированных во время выполнения этой цепочки.

Исключения переходят с нижнего уровня выполнения наверх, по цепочке. Если последний уровень не обработал исключение – то это сделает предыдущий уровень.

Пример. Обработаем исключение в языке 1С:
Попытка
Файл = ОткрытьФайл(ИмяФайла);
Строка = Файл.Прочитать();
Исключение
Сообщить(«Файл не удалось открыть: не существует или нет прав доступа»);
КонецПопытки;

В этом примере мы обработали самостоятельно исключение (т.е. исключительную ситуацию или ошибку 1С). Таким образом именно мы сообщаем пользователю о произошедшей «ошибке» — невозможности открыть файл.

Когда мы делаем это самостоятельно – мы можем и не сообщать пользователю ничего, а просто пойти по другому варианту выполнения программы.

Легко заметить, что этот способ можно применять в том числе и на случай, когда в каком-то участке кода может произойти «какая-нибудь» ошибка 1С. Мы ее «ловим» и обрабатываем или сообщаем о ней пользователю.

Что будет, если не перехватить и не обработать ошибку 1С на нашем «верхнем» уровне? Тогда о ней сообщит следующий уровень ниже — платформа 1С. Как она это делает, мы только что говорили и смотрели на скриншоте.

Что будет, если платформа не отработает это? Правильно – это обычно отработает более нижний уровень – Windows. В этом случае программа 1С «упадет», а Windows сообщит – программа совершила недопустимую операцию и будет закрыта.

Что будет, если Windows не отработает это? Вы наверняка это видели – компьютер зависнет или перезагрузится.

Вложенный перехват и транзакции

Как Вы думаете, какие сообщения увидит пользователь при выполнении данного примера?

Попытка
Попытка
ф = 1/0;
Исключение
Сообщить("Конкретная ошибка");
КонецПопытки;
Исключение
Сообщить("Общая ошибка");
КонецПопытки;

Верно! Сработает внутренний обработчик и сообщит «Конкретная ошибка», а внешний не сработает.

Однако с точки зрения программы здесь произошла ошибка 1С, хотя она и была отработана. Где-то там у себя в мозгах платформа запомнила – здесь была ошибка 1С.

Это имеет значение для выполнения транзакций. Транзакция – это несколько действий с данными в базе данных, которые должны выполняться только вместе. Как мы понимаем возможно причиной их невыполнения вместе могут быть ошибки 1С. Поэтому существует следующий механизм:

НачатьТранзакцию();
//создали справочник 1, но на самом деле он не записался в базу данных
Спр1.Записать();
//создали справочник 2, но на самом деле он не записался в базу данных
Спр2.Записать();
ЗафиксироватьТранзакцию();
//эта команда записала в базу данных все, что было сделано начиная с ‘НачатьТранзакцию’

Функция ЗафиксироватьТранзакцию() может быть выполнена только в случае, если с момента вызова НачатьТранзакцию() не произошло ни одной ошибки 1С.

Если Вы при написании подобного кода понимаете, что в этой строке кода может быть ошибка 1С – Вы можете поставить ее обработку с помощью Попытка/Исключение. Однако платформа в этом случае все равно учтет, что ошибка 1С произошла и не станет фиксировать транзакцию и записывать данные в базу данных.

Непреднамеренные ошибки 1С

Итак, в программе 1С программистом может быть допущена ошибка 1С. В этом случае платформа 1С сообщит о ней.

В случае, если не удается понять, почему и когда такая ошибка 1С возникает, Вы можете использовать Попытка/Исключение, чтобы обработать ошибку 1С.

Также Попытка/Исключение можно использовать в случае, когда Вы хотели бы создать гарантированно безошибочный участок программы. Вы сможете быть уверены, что если даже ошибка 1С произойдет, то Вы ее отлавливаете и отрабатываете специальным образом.

Преднамеренные ошибки 1С

Вы можете в тексте программы делать вид что файл всегда откроется и число всегда поделится. Но использовать Попытка/Исключение как способ переключить программу на другой вариант исправления в случае, если такое произойдет. Или просто сообщить пользователю об ошибке 1С.

Собственный вызов ошибки 1С

Вы можете самостоятельно создавать функции, которые в случае невозможности своего выполнения могут сообщать об этом с помощью генерации исключения.

Это можно сделать вот так:

Функция СделатьЧтото(Параметр)
Если Параметр = Неопределено Тогда
ВызватьИсключение «Ошибка в функции СделатьЧтото. Не указан параметр»;
КонецЕсли;
КонецФункции

Для чего это требуется? В случае, когда Вы создаете функцию, которой будете пользоваться во многих местах, а может будут пользоваться и другие – это красивый способ одновременно убить нескольких зайцев:

  • Отработать ошибку 1С
  • Сообщить об ошибке 1С на уровень выше (программе, которая вызывала эту функцию)
  • Сообщить не только об ошибке 1С, но и текст/подробности
  • Гарантированно прервать выполнение не только своей функции, но и всех уровней, если программист писавший их не подумал о том, что такая ошибка 1С может быть и не обработал ее.

Более корректные способы сообщения об ошибке 1С

Обычно когда требуется сообщить что-то пользователю, используются .

Однако в типовых конфигурациях, таких как Бухгалтерия, Управление торговлей, УПП – есть специальная функция:
ОбщегоНазначения.СообщитьОбОшибке(«Текст»);

Ее плюсы:

  • Форма сообщения зависит от запущенного клиента
  • Записывает сведения в журнал регистрации
  • В некоторых конфигурациях реализована более красивая форма сообщения об ошибке 1С.

Анализ ошибок

При работе платформы 1С работает журнал регистрации. Кроме действий пользователя он также сохраняет сведения об ошибках 1С, которые происходили в течении работы платформы 1С.

В конфигураторе выберите пункт меню Администрирование/Журнал регистрации.

Нажмите кнопку Отбор (как на картинке). Установите отбор событий только по ошибкам 1С.

Журнал отобразит список происходивших ошибок. Кликните на строчку, чтобы рассмотреть конкретное сообщение подробнее.

Совсем недавно, начиная с версии 3.0.43.50, в программе 1С:Бухгалтерия 8 редакция 3.0 в документ «Корректировка поступления» разработчиками добавлен новый вид операции Исправление собственной ошибки. Теперь документ позволяет не только регистрировать полученные от поставщика исправленные или корректировочные счета-фактуры и производить соответствующую корректировку в учете, но и исправлять допущенные работниками бухгалтерии технические ошибки. В данной статье мы на конкретном примере подробно рассмотрим, как можно исправить в бухгалтерском учете и в целях налогообложения ошибку, совершенную при вводе в программу сведений из первичного документа.

Напомню, для того, чтобы в программе можно было пользоваться документами Корректировка поступления и Корректировка реализации, необходимо в настройках функциональности программы на закладке Торговля включить флажок Исправительные и корректировочные документы.

Рассмотрим пример

Организация «Рассвет» применяет общий режим налогообложения – метод начисления и Положение по бухгалтерскому учету (ПБУ) 18/02 «Учет расчетов по налогу на прибыль организаций». Организация является плательщиком НДС.

В январе 2016 года при вводе в программу первичного документа, предъявленного сторонней организацией акта об оказании услуг, бухгалтер-операционист допустил две ошибки. Во-первых, указал неверную стоимость услуги, а во-вторых, при регистрации полученного от поставщика счета-фактуры, ошибся в указании его номера. Полученный от поставщика акт об оказании услуг регистрируется в программе с помощью документа Поступление с видом операции Услуги. В графе «Сумма» табличной части документа вместо правильных 6 000 рублей было указано 5 000 рублей.

Полученный счет-фактура регистрируется в «подвале» документа путем указания его номера и даты. Вместо «настоящего» номера 7 был указан номер 1.
Расходы на приобретенную услугу в бухгалтерском учете относятся к общехозяйственным расходам (счет учета 26). Документ Поступление с вышеперечисленными ошибками и результат его проведения представлены на Рис. 1.


При проведении документ в бухгалтерском учете и в целях налогообложения прибыли учел стоимость услуг без НДС по дебету счета 26 «Общехозяйственные расходы», выделил по дебиту счета 19.04 «НДС по приобретенным услугам» сумму предъявленного поставщиком НДС в корреспонденции с кредитом счета 60.01 «Расчеты с поставщиками и подрядчиками». Также документ сформировал запись в регистр накопления НДС предъявленный, который является основанием для формирования записей в книгу покупок.

Следовательно, в результате допущенной ошибки при указании стоимости услуги в бухгалтерском учете и в целях налогообложения прибыли занижена сумма расходов, занижена сумма предъявленного НДС и занижена задолженность перед поставщиком.

Документ Счет-фактура полученный формируется в программе на основании документа Поступление и, как следствие, содержит неправильные сумму и сумму НДС.

Сформированный с неправильным номером документ Счет-фактура полученный приведен на Рис. 2.

В программе сумма НДС может приниматься к вычету либо с помощью регламентного документа Формирование записей книги покупок, либо непосредственно в документе Счет-фактура полученный, при включенном флажке Отразить вычет НДС в книге покупок датой получения.

Результат проведения документа Счет-фактура полученный приведен на Рис. 3.

Документ при проведении в бухгалтерском учете принял к вычету сумму НДС и сформировал запись в регистр НДС Покупки (в книгу покупок), соответственно, с заниженной суммой НДС и ошибочным номером счета-фактуры.
Книга покупок за первый квартал показана на Рис. 4.

Стоимость услуги была оплачена поставщику только в следующем квартале. Документ Платежное поручение был создан на основании ошибочного документа Поступление.

Проводка соответствующего документа Списание с расчетного счета, созданного при получении выписки с расчетного счета, показана на Рис. 5.

Наконец, в результате проведенной с поставщиком сверки взаиморасчетов, во втором квартале данная ошибка была обнаружена. Отчетность по НДС за первый квартал на данный момент уже была сдана.

Давайте вначале вспомним, как должна исправляться такая ошибка в бухгалтерском и налоговом учете.

В соответствии с п. 5 ПБУ 22/2010 «Исправление ошибок в бухгалтерском учете и отчетности», ошибка отчетного года, выявленная до окончания этого года, исправляется записями по соответствующим счетам бухгалтерского учета в том месяце отчетного года, в котором выявлена ошибка.

В соответствии с п. 1 ст. 54 НК РФ, при обнаружении ошибок (искажений) в исчислении налоговой базы, относящихся к прошлым налоговым (отчетным) периодам, в текущем налоговом (отчетном) периоде перерасчет налоговой базы и суммы налога производится за период, в котором были совершены указанные ошибки (искажения).

Правда из этого правила есть исключения. В соответствии с тем же самым пунктом НК РФ, налогоплательщик вправе провести перерасчет налоговой базы и суммы налога за налоговый (отчетный) период, в котором выявлены ошибки (искажения), относящиеся к прошлым налоговым (отчетным) периодам, когда допущенные ошибки (искажения) привели к излишней уплате налога.

Как мы уже говорили, в результате допущенной ошибки, была занижена сумма расходов. Следовательно, в целях налогообложения прибыли, была завышена налогооблагаемая база (прибыль) и, соответственно, это привело к излишней уплате налога. Поэтому исправления в целях налогообложения прибыли можно произвести в текущем отчетном периоде, как и в бухгалтерском учете.

А вот для того, чтобы разобраться, как нам поступить с НДС, мы обратимся к Постановлению Правительства Российской Федерации № 1137 от 26.12.2011 года. В соответствии с п. 4 Правил ведения книги покупок, при необходимости внесения изменений в книгу покупок (после окончания текущего налогового периода) аннулирование записи по счету-фактуре, корректировочному счету-фактуре производится в дополнительном листе книги покупок за налоговый период, в котором были зарегистрированы счет-фактура, корректировочный счет-фактура, до внесения в них исправлений.

Для исправления описанной нами ошибки мы воспользуемся документом Корректировка поступления и в качестве вида операции выберем Исправление собственной ошибки.

На закладке Главное необходимо выбрать основание – это тот документ поступления, в котором допущена ошибка, который мы будем корректировать (в нашем случае это документ Поступление (акт, накладная) № 1 от 11.01.2016 г.). Чуть ниже, при выборе основания, автоматически отражается ссылка на исправляемый документ Счет-фактура полученный и его реквизиты.

Нам необходимо исправить входящий номер (новое значение равняется 7). На данной закладке можно выбрать, где будет отражаться корректировка: только в учете НДС или во всех разделах учета (мы хотим внести исправления в бухгалтерский учет, в учет по налогу на прибыль и в учет НДС). Также можно выбрать счета для отражения доходов и расходов.

Заполненная закладка Главное документа Корректировка поступления представлена на Рис. 6.

Если для исправления ошибки, необходимо исправлять какие-то суммовые показатели, то тогда могут понадобиться закладки: Товары, Услуги, Агентские услуга.
Так как в нашем примере ошибка допущена при вводе в программу акта об оказании услуг, мы воспользуемся закладкой Услуги и укажем правильную цену – 6 000 рублей.
Закладка Услуги документа Корректировка поступления представлена на Рис. 7.

При проведении документ в бухгалтерском учете сторнирует ошибочную проводку по вычету НДС (Дт 68.02 - Кт 19.04) на сумму 900 рублей и сформирует правильную проводку на сумму 1 080 рублей. Дополнительно выделит по дебету счета 19.04 недостающую сумму предъявленного поставщиком НДС (180 рублей), увеличит по дебету счета 26 «Общехозяйственные расходы» в бухгалтерском и налоговом учете сумму расходов на услугу (1 000 рублей) и, соответственно, увеличит по кредиту счета 60.01 сумму задолженности поставщику (1 180 рублей).
Проводки документа Корректировка поступления представлены на Рис. 8.

Кроме проводок в бухгалтерском и налоговом учете документ сформирует записи в регистрах накопления по НДС.
В регистре НДС предъявленный (суммы НДС, предъявленные поставщиками) будет зафиксирован приход на правильную сумму НДС, и, так как эта сумма НДС непосредственно документом регистрируется в книге покупок, сразу же будет отражен ее расход.

В регистре НДС Покупки будут сформированы две записи. Первая запись - это сторно не правомерно принятой к вычету суммы НДС с ошибочным номером счета-фактуры. А вторая запись - это вычет правильной суммы НДС по счету-фактуре с правильными реквизитами. Так как исправления вносятся в прошлый налоговый период по НДС, в сформированных записях будет проставлен признак дополнительного листа и прописан соответствующий корректируемый период.
Сформированные документом Корректировка поступления записи в регистры накопления представлены на Рис. 9.

Также при проведении документа в программе будет создан (зарегистрирован) новый документ Счет-фактура полученный с пояснением «исправление собственной ошибки» (смотри Рис. 6). Данный документ можно просмотреть в списке документов Счет-фактура полученный. Ошибочный и исправленный документы показаны на Рис. 10.

Форма исправленного документа Счет-фактура полученный содержит дату исправления и ссылку на исправляемый документ. Также в форме документа присутствуют значения реквизитов полученного от поставщика счета-фактуры до исправления ошибки и после ее исправления (Рис. 11).

Давайте, для проверки корректности наших действий, сформируем книгу покупок за первый квартал – налоговый период, в котором была допущена ошибка.
В формируемом нами отчете укажем нужный период. В настройках отчета включим флажок «Формировать дополнительные листы» и укажем вариант формирования – за текущий период.
Настройки отчета Книга покупок показаны на Рис. 12.

Посмотрим дополнительный лист книги покупок.
Как и положено, в дополнительном листе указывается номер дополнительного листа, налоговый период и дата составления. В графе 16 табличной части приводится итоговая сумма НДС за налоговый период до составления дополнительного листа.
В дополнительном листе присутствуют, как мы и ожидали, две строки: сторно по счету-фактуре с ошибочными номером и суммами и исправленная запись с правильным номером счета-фактуры и правильными суммами.
Дополнительный лист книги покупок за первый квартал представлен на Рис. 13.

Такая проблема, как Ошибка формата потока, в 1С 8.3 встречается достаточно часто. Рассмотрим, как исправить данную ошибку.

Что же такое ошибка формата потока в 1с 8.3?

Такое происходит в следующих ситуациях:

  1. Ошибка формата потока при запуске 1С Предприятия 8.2 или конфигуратора обычно связана с проблемами в кеше. Обычно она вызвана неправильным выключением системы вследствие, например, отключения электричества. Поэтому настоятельно рекомендуется ставить блоки бесперебойного питания, чтобы не потерять важную информацию. Часто ошибка появляется при запуске базы после обновления конфигурации.
  2. Вторая ситуация — при формировании какого-либо отчета, например, открытии отчета , проведении документа, открытии документа и т.д. Часто это связано именно с содержанием информации в базе данных. Причиной этой ошибки чаще всего является наличие «битой» информации внутри системы.

Получите 267 видеоуроков по 1С бесплатно:

Исправление

  1. Как правило, для решения данной проблемы достаточно почистить временные файлы в системе. .
  2. Если не помогло, но есть возможность попасть в конфигуратор, запустите .
  3. Если доступа в конфигуратор нет, и база тестовая — воспользуйтесь , которая располагается в папке программы.
  4. Если вышеперечисленные методы не помогают, но запускается режим 1С предприятие, выгрузите данные в новую базу с помощью обработки « «. Однако при этом возможны потери данных.
  5. Обновление . Еще одной причиной может стать наличие активных сеансов пользователей с разной версией клиентской части платформы 1С. То есть, например, в базе работает пользователь с платформой 1С 8.3.5.1517, а пытается подключиться другой, с версией 8.3.5.1444.

Если это не помогло — есть более изощренные способы решения данной проблемы. Например, с помощью HEX-редактора. Если Вам необходима квалифицированная помощь программистов 1С, обратитесь к нам! Подробности на странице

Всем известно, что любое программное обеспечение может давать времени от времени различные сбои или попросту говоря работать не надлежащим образом. Подобные сбои которые приводят к нарушению правильного функционирования системы называются в ошибками . Программа 1с является программным продуктом (программным обеспечением), соответственно в данной программе тоже могут встречаться различные ошибки которые приводят к не правильной работе системы. могут быть очень разнообразными, и если Вы не обладаете рядом специальных знаний в области программирования и специфики работы внутренних механизмов 1с то Вы не сможете правильно понять и диагностировать ошибку, а уж тем более ее исправить. Любой наш программист 1с всегда готов Вам помочь в решении любых вопросов связанных с ошибками 1с !

Из-за чего возникают ошибки в базе 1с?

Теперь давайте немного поговорим о том из-за чего же все-таки могут происходить различные ошибки в базе 1с при работе с программой. На самом деле причин может быть очень много и все они могут иметь под собой абсолютно разную почву. И все же, мы с Вами постараемся понять в обобщенных чертах причину возникновения различных ошибок в 1с .

Виды ошибок в базе 1с

Ошибок в 1с может быть великое множество и происходить они могут по самым разным причинам. В данной статье мы не будем рассматривать все возможные ошибки 1с, мы постараемся выделить так называемые основные "виды" встречающихся ошибок. Мы условно называем их "виды" так как содержание ошибки которое показывает Вам программа как правило всегда различное, а суть часто бывает одинаковая. Итак выделим самые часто встречающиеся ошибки в базе 1с :

  1. Ошибка формата потока
  2. Поле объекта не обнаружено
  3. Метод объекта не обнаружен
  4. Недостаточно памяти
  5. Ошибки связанные с таблицами SQL (актуальны для серверов 1с которые работают на реляционных базах данных, например MySQL)
  6. Ошибка доступа 1с

Ошибка формата потока в 1с

ошибка формата потока 1с

Поле объекта не обнаружено

Поле объекта не обнаружено

Индекс находится за границами массива

Ошибка 1с

Ошибка формата потока в 1с

Данная ошибка очень часто проявляется при ошибочном чтении последовательности команд из байт-кода в потоке, поэтому она и называется ошибка формата потока 1с . Любая транзакция будет прервана если в следствии ее исполнения возникает данная ошибка. Подобные ошибки требуют немедленного исправления так как они могут навредить работе системы 1С Предприятие. Данные ошибки могут исправить только квалифицированные программисты 1с.

Поле объекта не обнаружено

Если система 1с выдает вам сообщение об ошибке с текстом "Поле объекта не обнаружено ", то это означает следующее, что ошибка возникает в ситуации когда программа пытается обратится к реквизиту (полю) объекта которого просто не существует. Данная ошибка носит характер "ошибки времени выполнения" если она возникает в 1С Предприятии. Ошибки этого рода также исправить могут только программисты.

Индекс находится за границами массива

Массивом в программировании называется некая область памяти в которой хранятся множество объектов одинакового типа (в 1с такими типами могут выступать например СправочникСсылка, ДокументОбъект и т.д. , а также любые примитивные типы такие как число, строка, булево и т.д.). Ошибка 1с связанная с выходом за границы массива как раз и случается тогда, когда программа обращается за границы памяти которая выделена под массив. Соответственно программа в этом случае и выдает ошибку, уведомляет пользователя (программиста) о том, что происходит обращение за пределы массива, а это в свою очередь является программной ошибкой.

Метод объекта не обнаружен

Подобная ошибка происходит тогда когда система пытается обратится к методу (функции) объекта, описание которого (которой) не существует в коде. Ошибки такого типа могут исправляются программистами.

Недостаточно памяти в 1с

Эта ошибка происходит в том случае если у системы заканчивается вся оперативная память выделенная под нужды выполнения программ в операционной системе, поэтому программа и выдает ошибку "Недостаточно памяти в 1с ". Она может произойти при различных событиях таких как обновление конфигурации, обработка большого файла, при формировании отчета, загрузки большой базы данных и т.д. Подобную ошибку пользователь может попробовать исправить сам.

Возможное исправление ошибки 1с «Недостаточно памяти»

Ошибка кроется в ограниченном выделении адресной памяти операционной системой под ПО (программное обеспечение).
Ограничения для адресной памяти по умолчанию составляют:

  • для 32 битной системы – 2гб
  • для 64 битной – 4 гб

Для того, что бы увеличить размер адресной памяти Вам необходимо сделать следующие действия:

  1. Запустите командную строку: “Пуск – Выполнить” – введите CMD и нажмите клавишу enter
  2. Теперь в командной строке введите текст без кавычек “bcdedit /set increaseuserva 3072″, где 3072 – размер желаемой адресной памяти
  3. Перезагрузите Вашу операционную систему (компьютер)
  4. Попробуйте выполнить то действие в 1С, которое не получалось ранее и приводило к ошибке.
  5. Если всё получилось и операция повторяется не так часто – рекомендуется вернуть размер адресной памяти к значению по умолчанию с помощью команды “bcdedit /deletevalue increaseuserva”

Ошибки связанные с таблицами SQL

Ошибки данного рода обычно возникают на стороне сервера, в тот момент когда система обращается к таблице и не может прочитать данные. Такая ошибка может возникать из-за не правильной настройки сервера, а также из-за повреждения таблиц SQL. В особых тяжелых ситуациях может даже не быть возможности восстановления базы данных, и тогда Вас может спасти только архивная копия базы данных. Мы настоятельно рекомендуем своевременно делать архивные копии базы данных.

Ошибка доступа в 1с

Данная ошибка происходит тогда когда пользователь пытается выполнить какое-либо действие которое запрещено правами доступа (роли). Именно поэтому система выдает ошибку доступа в 1с. Роли настраиваются в конфигураторе программистом.

Не получилось исправить ошибку в 1с?

Если у Вас не получилось исправить какую-нибудь ошибку в 1с не стоит отчаиваться, поднимите трубку и позвоните нам! Наши специалисты всегда готовы Вам помочь в решении любых вопросов связанных с 1с, в том числе и с ошибками возникающими при работе системы.


© 2024
zane-host.ru - Программы. Компьютеры. Сетевое оборудование. Оргтехника