Вычислить выражение 1с не работает

Обучение программированию на 1С

Точки останова и вычисление выражений

Отладка 1С – главный программный механизм для поиска и устранения ошибок в коде. Основной инструмент, который используется в его работе – точка останова (break point). Это маркер, который указывает на определённую строку в программном коде. Когда модуль достигает точки, исполнение программы останавливается.

Как устанавливать точки останова

Поставить точку остановы можно в любом месте. В окне модуля она обозначается специальным знаком. Чтобы начать работу с точками, необходимо нажать клавишу «F5». Если требуется присоединение запущенной рабочей базы, порядок действий следующий:

  • Зайти по пути: «Сервис» – «Параметры» – «Системные»;
  • Установить птичку напротив строчки «Отладка разрешена»;
  • Выйти из настроек и подключить новую базу: «Отладка» – «Подключение».

Точка останова ставится при помощи функциональной клавиши «F9». Нужно нажать её и выбрать необходимую точку. Для просмотра установленных точек используется сочетание «горячих» клавиш «Alt» + «F9» или путь «Отладка – Список точек останова».

Разновидности точек

Кроме стандартной точки в 1С доступны и точки с условием:

  1. Синяя точка. Используется для отлова конкретной итерации (действия, которое повторяется в цикле). При достижении точки активируется процесс отладки.
  2. Серая точка. Неактивная точка. Чтобы деактивировать её, необходимо нажать сочетание «горячих» клавиш «Shift»+»Ctrl»+»F9».
  3. Точка останова по ошибке. Основная точка для отладки. Выполнение кода останавливается в момент достижения ошибки.
Читайте также:  Яндекс почему ты не работаешь
Как вылавливать ошибки исполнения из кода

Основной смысл в том, чтобы исполнение программного кода остановилось на точке останова. Когда она установлена, требуется активировать процесс выполнения нужного фрагмента программного кода. Начнётся пошаговое выполнение кода.

Как пользоваться отладкой

В ходе работы Конфигуратора для ускорения процесса отладки может потребоваться перемещение по коду. Для этих целей используются функциональные клавиши «F10» и «F11». Если нужно перешагнуть на следующую строку, нужно нажать «F11». Но иногда этого не достаточно. Так, если на очередной строке будет находиться функция или процедура – возникнет «провал» в это действие. Чтобы исключить «провал», необходимо вместо «F11» использовать «F10», это позволит перешагнуть через функцию (или процедуру).

Как вычислять заданные выражения в коде

При работе в отладчике может потребоваться найти определённые данные. Для этого удобно использовать форму «Вычислить выражение». Достаточно указать в форме переменную, и в коде будут показаны все места, где она встречается.

Чтобы открыть форму, нужно использовать «горячие» клавиши «Shift» + «F9» или зайти в меню («Отладка – Вычислить выражение»).

Также в 1С имеется функции «Табло» («Ctrl» + «Alt» +»W» или «Отладка – Табло»). Главное его отличие от «Вычислить выражение» – возможность работы с группой показателей, а не с одной переменной.

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

Источник

Обучение программированию на 1С

Вычисление выражений

Незаменимая обработка «Вычисление выражений» для тестирования вашего кода без конфигуратора в пользовательском режиме. Бывает ситуация, когда в информационной базе 1С:Предприятия работают пользователи и нет возможности проверить код на правильность без обновления. Или нужно, к примеру, быстро вычислить какое-то строковое или числовое выражение без запуска конфигуратора. В этом случае все эти операции можно сделать в данной обработке. При этом тестируемый код можно без проблем загружать и сохранять в отдельный файл. В конфигураторе при отладке аналогом этой обработки является пункт меню «Отладка ? Вычислить выражение…» и окно «Выражение». Обработка пригодится всем программистам, которые разрабатывают конфигурации 1С.

Приведём краткую инструкцию пользования обработкой:

  1. Открываем внешнюю обработку «Вычисление выражений» через пункт меню «Файл ? Открыть…».
  2. На вкладке «Код» в текстовом поле пишем код, который нам необходимо протестировать. При написании отдельные слова начинают подсвечиваться разным цветом, как и в конфигураторе, в зависимости от их назначения. Для отображения результата в теле кода нужно использовать переменную «Результат», которая может принимать произвольный тип.

  1. На вкладке «Параметры» можно объявлять необходимые переменные, задавать им значения и использовать при написании кода 1С. Это удобно, т.к. не приходится прописывать код, который бы искал конкретные значения, хранящиеся в информационной базе.

  1. Далее нажимаем на кнопку «Выполнить» и проверяем полученный результат в поле «Результат». Если в исследуемой переменной используется составной тип данных: массив, структура, список значений, таблица значений, строка таблицы значений, то значения этой переменной отображаются не только в текстовом поле «Результат», но и на вкладке «Таблица» в поле табличного документа.

  1. Можно сохранить как написанный код, нажав на кнопку «Сохранить» (в файл XML), так и полученную таблицу в формате табличного документа MXL или в формате Microsoft Excel (XSL).

Если вам понравилась эта обработка, то вы можете скачать её здесь или по ссылке ниже. Нажмите на кнопке «Скачать» и загрузите её себе на компьютер.

Источник

Вычисление выражений

Приведём краткую инструкцию пользования обработкой:

1. Открываем внешнюю обработку «Вычисление выражений» через пункт меню «Файл → Открыть…».

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

3. На вкладке «Параметры» можно объявлять необходимые переменные, задавать им значения и использовать при написании кода 1С. Это удобно, т.к. не приходится прописывать код, который бы искал конкретные значения, хранящиеся в информационной базе.

4. Далее нажимаем на кнопку «Выполнить» и проверяем полученный результат в поле «Результат». Если в исследуемой переменной используется составной тип данных: массив, структура, список значений, таблица значений, строка таблицы значений, то значения этой переменной отображаются не только в текстовом поле «Результат», но и на вкладке «Таблица» в поле табличного документа.

5. Можно сохранить как написанный код, нажав на кнопку «Сохранить» (в файл XML), так и полученную таблицу в формате табличного документа MXL или в формате MicrosoftExcel (XSL).

Если вам понравилась эта обработка, то вы можете скачать её по ссылке ниже. Нажмите на кнопке «Скачать» и загрузите её себе на компьютер.

Источник

Как работать с отладкой в 1С 8.3 и 8.2

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

Ниже рассмотрим основные методы использования механизма отладки в виде практической инструкции на конкретном примере.

Внимание! Если Вы используете клиент-серверный режим работы (на сервере), Вам необходимо включить отладку на сервере 1С Предприятия.

Запуск отладки в 1С

Самый простой способ запустить отладку в 1С — открыть 1С в режиме конфигуратор и из него запустить режим отладки в нужном режиме работы (тонком/толстом, управляемом/обычном):

Рекомендуем при рядовой разработке использовать режим отладки «Толстого клиента». Но в чистовом варианте всегда прогонять в режиме «тонкого» и «веб-клиента».

Отладка фоновых заданий 1С

Для того чтобы иметь возможность отладки фоновых заданий, необходимо зайти в меню «Отладка — Подключение». В открывшемся окне нажать кнопку «Автоматическое подключение»:

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

В этом окне Вы можете установить соответствующий флаг.

Помимо фоновых заданий, в данном окне Вы можете включить отладку внешних соединений, http и web-сервисов.

Установка точки останова (брейкпойнта)

Вторым этапом при отладке является установка точки останова (в других языках программирования — брейкпойнт).

Для примера я выбрал для отладки обработчик «При изменении» на форме документа Доверенность:

Для того чтобы установить точку останова, необходимо найти нужный программный код и кликнуть дважды на поле, слева от поля ввода кода (или нажать кнопку F9):

Чтобы увидеть список всех установленных, необходимо зайти в меню Отладка — Список точек останова (alt + F9):

Точка останова 1С с условием (синяя)

Помимо обычной точки останова в 1С есть еще один вид точек останова — с условием. Графически такая точка отображается синим цветом. Такая точка останова очень полезна, когда нужно отловить какую-либо определенную итерацию при обходе в цикле. Отладка включится в тот момент, когда выполнится определенное условие.

Например, остановим цикл на строке с номером 25:

Неактивная точка останова (серая)

Серая точка останова означает, что она не активна, система не будет останавливаться на такой точке. Сделать не активной её можно, нажав специальную кнопку на панели «Отключить точку останова» (shift+ctrl+F9):

Точка останова по ошибке

Система может остановиться по вызванной ошибке, для этого необходимо в меню Отладка — Остановка по ошибке установить соответствующий флаг:

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

Пошаговое перемещение по программному коду 1С

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

Для того чтобы сделать шаг к следующей строке, необходимо нажать кнопку «F11″(Шагнуть в).

Если Вы пошагово проходите по строчкам программного кода и на строке присутствует процедура или функция, то Вы «провалитесь» внутрь этой процедуры (или функции).

Чтобы не «проваливаться», достаточно вместо F11 (Шагнуть в) выполнять переход по строкам кнопкой F10 (Шагнуть через), эта кнопка позволяет перешагивать через процедуры в программном коде.

Чтобы перейти с текущего положения курсора к нужному, минуя промежуточные строчки кода, необходимо установить курсор на нужной строке и нажать shift + F10 (Идти до курсора).

Анализ значений в режиме отладки 1С

Посмотреть значения определенных значений можно разными способами:

Отображение значения при наведении курсора

При наведении на переменную система «подсвечивает» значения переменной:

Использование «Вычислить выражение» или «Табло»

  • Форму Вычислить выражение можно вызвать с помощью контекстного меню или нажатия быстрых клавиш — (Shift + F9), или меню (Отладка — Вычислить выражение).
  • Табло вызывается с помощью быстрых клавиш Ctrl + Alt +W или из меню (Отладка — Табло).

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

Использовать эти методы очень просто. Достаточно ввести в табло имя нужной переменной. Большой плюс произвольных вычислений — Вы можете добавить в выражение свои данные.

Очень полезно использовать вычисление выражения и выполнить запрос, выгрузить в таблицу значений и посмотреть её.

Как узнать откуда вызвана процедура в отладке — Стек вызовов

Очень часто требуется понять, откуда была вызвана та или иная процедура или функция и с какими параметрами. Для этого в 1С предусмотрена специальная функция — «Стек вызовов». Для запуска Стека вызовов необходимо нажать горячие клавиши — Ctrl + Alt + C или через меню (Отладка — Стек вызовов).

С помощью него Вы можете подробно узнать, откуда была вызвана процедура и с какими параметрами:

Если Вас интересует оценка производительности при отладке — Замер производительности при отладке.

Смотрите также обзорное видео по отладке в 1С:

Другие статьи по 1С:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник

Оцените статью