Отладка в 1С 8.3 на примерах

Поділитися
Вставка
  • Опубліковано 29 тра 2017
  • Пошаговая инструкция по работе с отладкой в 1С. Как поставить точку останова в коде. Вычисление выражений и просмотр значений переменных. Стек вызовов. Табло для вычисления выражений. Как найти и исправить ошибки в программной коде 1С.
    Наша статья про отладку:
    programmist1s.ru/otladka-1s/
    Читайте статьи по 1С на нашем сайте:
    programmist1s.ru/materialyi-po...

КОМЕНТАРІ • 55

  • @user-rr4gr2np4l
    @user-rr4gr2np4l 6 років тому +14

    Спасибо Леонтьев Илья 👋

  • @officialaleksandrkosorukov
    @officialaleksandrkosorukov 4 роки тому +1

    Очень полезно! Спасибо!

  • @fraktald6068
    @fraktald6068 4 роки тому +2

    Спасибо, все понятно.

  • @Igorrreha
    @Igorrreha 5 років тому +7

    Огромное спасибо. Хорошо знаю js. Появилась необходимость писать курсач на 1с, после чего возник интерес к изучению синтаксиса языка, чтобы быстро в него вникнуть, и твои уроки максимально для этого подошли :)
    P.S: Оч. хорошо подаёшь материал. Продолжай в том же духе!

  • @user-buzer290
    @user-buzer290 4 роки тому +1

    Буквально лучший урок по 1С. Возможность изучить чужой код эффективно сложно переоценить. Наблюдать за работой интерпретатора очень интересно.

  • @user-eh1et6ls8q
    @user-eh1et6ls8q  7 років тому +4

    Пошаговая инструкция по работе с отладкой в 1С. Как поставить точку останова в коде. Вычисление выражений и просмотр значений переменных. Стек вызовов. Табло для вычисления выражений.
    Как найти и исправить ошибки в программной коде 1С.
    Наша статья про отладку:
    programmist1s.ru/otladka-1s/
    Услуги 1С программиста в Москве:
    1cproger.ru/
    Читайте статьи по 1С на нашем сайте:
    programmist1s.ru/materialyi-po-1s/

  • @roberrtrokko726
    @roberrtrokko726 4 роки тому

    Благодарю!!

  • @user-uf5sv1wi1p
    @user-uf5sv1wi1p 3 роки тому +1

    Леонтив красавчег 👍🏻😎

  • @kilka13
    @kilka13 3 роки тому

    спасибо

  • @barabucho
    @barabucho 3 роки тому

    Илья,возникла необходимость переноса типового функционала в сильно переработанную конфу,необновляемую 5 лет какие инструменты рассмотреть (раньше анализировал стек...,но тут случай сложнее,уже меня не хватает) для анализа необходимых компонентов,составляющих нужную подсистему в источнике? - речь об обычном приложении (не управляемое)

  • @user-xe9uq9kl5y
    @user-xe9uq9kl5y 10 місяців тому

    После просмотра появился вопрос можно ли прописать в коде условия остановки его выполнения и открытия в отладчике на этом месте? Т.е. не устанавливать точку останова вручную, а прописать через условную конструкцию условия, при достижении которых исполнение останавливается на этом моменте, а если условия не наступят, то код исполняется полностью.

  • @romanbush5164
    @romanbush5164 3 роки тому +2

    ооо точка остановы это прям как в визуал студио сишка)))))

  • @alexeast555
    @alexeast555 Рік тому

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

  • @user-gq3ol3hw4l
    @user-gq3ol3hw4l 4 роки тому

    На этом уроке закончилось действие учебной программы... Достигнуто предельное количество подключений. Как то можно его продлить??

  • @user-ti4ux2ut1q
    @user-ti4ux2ut1q 4 роки тому +4

    Странно, делал все как на видео ,но у меня при наведение на Слово количество не высвечивается число, а при вычислении M пишет переменная неопределена, что может быть?

    • @user-yl2mv7vl4t
      @user-yl2mv7vl4t 4 роки тому

      такая же ситуация

    • @VZRVEL
      @VZRVEL 4 роки тому +1

      Выведи его на "Табло", и шагай, все поймешь в процессе.

  • @user-hs6hd3nm8q
    @user-hs6hd3nm8q 7 років тому

    Фактически в таких примерах можно в начале зажать F10 и держать, что в итоге приведёт нас к месту бесконечного цикла?

    • @IlyaLeontyev
      @IlyaLeontyev 7 років тому +5

      Алексей, "в таких примерах" - то есть в зависающих задачах? Да, Вы все правильно поняли.

  • @user-lx4dt7vb5x
    @user-lx4dt7vb5x 5 років тому +1

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

    • @IlyaLeontyev
      @IlyaLeontyev 5 років тому +5

      Устанавливаете точку остановка в событии формы "ПриСозданииНаСервере" (или "ПриОткрытии").
      После того, как выполнение кода встанет на этой точке, используйте Отладка - Стек вызовов, чтобы вычислить вызовы, которые привели к открытию формы.

    • @user-lx4dt7vb5x
      @user-lx4dt7vb5x 5 років тому

      @@IlyaLeontyev Спасибо!

  • @user-yl2mv7vl4t
    @user-yl2mv7vl4t 4 роки тому +2

    В колонке значения пусто, в колонке тип - неопределено, при вычислении выражения. Что делать?

    • @realbakhodirov
      @realbakhodirov 3 роки тому

      Тоже, самое что делать? Вы нашли ответ

    • @polina_view3120
      @polina_view3120 3 роки тому +2

      Чтобы СлучЧисло приобрело хотя бы одно значение, необходимо, чтобы цикл выполнился хотя бы один раз. Цикл выполняется при нескольких нажатиях кнопки F11 и прохождением таким образом курсора по всем операциям процедуры. Соответственно, показатель СлучЧисло изменяется при повторении этой процедуры. Вследствие этого Массив накапливает данные и тоже становится доступным к просмотру.

  • @user-dm7kk9qr7v
    @user-dm7kk9qr7v 6 років тому +1

    В строке меню"Отладка", у меня отсутствует: шаг вперед, назад, вычисл. выражение и тд. Как найти ? Помогите пожалуйста. Извиняюсь, может для кого то это легко, вот так вот(

    • @user-go9fn5pq9p
      @user-go9fn5pq9p 6 років тому +1

      Для того, чтобы появилась трассировка, нужно установить точку останова, хотя бы одну, и запустить режим отладки любым способом (Меню "Отладка", Пиктограмма в панели или "f5")

  • @Judoka_UZB
    @Judoka_UZB 2 роки тому +1

    привет из 2022

  • @VikulovStas
    @VikulovStas 3 роки тому +1

    Спасибо за Уроки! Но всё-таки не "зависание", а "зацикливание" программы происходит. Зависшая программа не станет реагировать на отладку.

  • @AlexeySvoi
    @AlexeySvoi 4 роки тому +1

    Хороший урок, спасибо!
    Только пока не понятно, отладчик в обычном приложении и управляемом приложении одинаковые или нет?
    А еще не понятно, кто те 11 ронинов, поставившие дизлайк? ;)

    • @VZRVEL
      @VZRVEL 4 роки тому +3

      КолвоДизлайков = КолВоСотрудниковУчЦентраН1 - 1РандомныйСлепой Или 1РандомныйГлухой;

  • @user-uq1em1jg3r
    @user-uq1em1jg3r 6 років тому

    Программируя на Делфи и C# никогда не пользовался отладчиком и не считал это необходимостью. Как минимум с зависанием цикла Пока студия программирования просто сообщит об исключении во время выполнения кода. Так зачем нужен этот отладчик? В 1С вообще есть механизм исключений? По ощущениям от первых роликов я увидел только абсолютно непонятную проверку синтаксиса с ужасающей вложенностью, что-то по типу "ФормаФормаФорма", хотя конечно и не стоило ожидать уровня Visual Studio, но все же неужели мне придется самому искать при помощи точек останова цикл в котором я забыл инкриминировать счетчик?

    • @user-eh1et6ls8q
      @user-eh1et6ls8q  6 років тому +3

      Да нет, на самом деле очень удобный механизм: всегда можно посмотреть что содержится в той или иной переменной. Это очень полезно, особенно для изучения чужого кода :)
      А особенно при изучения кода фирмы "1С" :)))
      По исключениям... Наверное есть (но механизм может отличатся от др. языков - поэтому "наверное"):
      Попытка
      //код который может вызвать ошибку
      Исключение
      Сообщить(ОписаниеОшибки()); //вывести из-за чего ошибка
      КонецПопытки;
      P.S.
      Ужасающая вложенность ужасает только до момента понимания это вложенности)

    • @user-uq1em1jg3r
      @user-uq1em1jg3r 6 років тому

      Школа 1С - видеоуроки бесплатно, как я понял это вы писали обработку исключений - "try catch finely". Понятно, что если я сам оберну код в этот оператор, то исключение обработается. Ну а если его можно перехватить, значит механизм исключений есть, что уже не может не радовать) Если блок catch не найден, то среда CLR отображает пользователю сообщение о необработанном исключении и останавливает выполнение программы. Последнее предложение, как раз и было моим вопросом, в большинстве багов и ошибок я буду зависать или получать необработанное исключение в среде 1С? Спасибо, что отвечаете на сообщения под видео, которому уже год!

    • @IlyaLeontyev
      @IlyaLeontyev 5 років тому +3

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

  • @user-nb1ru6ph2g
    @user-nb1ru6ph2g 6 років тому +1

    У вас получается и во внешней обработке отладчик работает?

    • @user-vg9vz9xo3v
      @user-vg9vz9xo3v 5 років тому

      1С не любит Фаерволов. Дайте ему "полный доступ" - и отладчик заработает и во внешних обработках.

    • @user-lx4dt7vb5x
      @user-lx4dt7vb5x 5 років тому +1

      @@user-vg9vz9xo3v Это как, подскажите пожалуйста

    • @IlyaLeontyev
      @IlyaLeontyev 5 років тому

      @@user-lx4dt7vb5x отладчик должен работать во внешней обработке без проблем.

    • @user-lx4dt7vb5x
      @user-lx4dt7vb5x 5 років тому

      @@IlyaLeontyev почему то не останавливается... А ещё, как отлаживать внешние печатные формы?

    • @IlyaLeontyev
      @IlyaLeontyev 5 років тому +1

      @@user-lx4dt7vb5x возможно, вы пытаетесь отладить уже подключенную внешнюю обработку. А так нельзя - нужно ее сначала сохранить в виде файла. Затем уже этот файл открыть в режиме "Конфигуратор" для отладки. Далее необходимо будет запустить программу в пользовательском режиме в режиме отладки (например, нажав на клавишу F5 в режиме Конфигуратор). И уже в этом режиме запускать и отлаживать обработку в виде сохраненного файла. После завершения отладки и исправления всех ошибок обработку нужно будет снова подключить туда, откуда вы ее взяли.

  • @dopamine5071
    @dopamine5071 5 років тому +6

    "останова", "табло".. неужели эти слова никого не смущают?

    • @user-xv2om6gb5v
      @user-xv2om6gb5v 2 роки тому +1

      Людей, знающих русский, не смущает. Посмотрите в вики значение слова "останов".

  • @apb64
    @apb64 4 роки тому

    А как ПОДКЛЮЧИТЬ эту долбаную отладку? Она вообще теперь не работает, ничего не останавливается!!!

  • @user-dk2xt8zh8i
    @user-dk2xt8zh8i 5 років тому +1

    Извините, но Вы так не приятно причмокиваете и придыхаете, еле еле через силу дослушал до конца. Поработайте пожалуйста над подачей.

    • @lero4ka_valero4ka_77
      @lero4ka_valero4ka_77 5 років тому +5

      Если из шипованой резины повыдергивать шипы, шума будет меньше, а вот эффекта не будет. Смыслом проникайтесь, а не шипами

    • @user-dk2xt8zh8i
      @user-dk2xt8zh8i 5 років тому +1

      @@lero4ka_valero4ka_77 мчмок мчм мням хорошо

    • @user-vq8hx4jg7m
      @user-vq8hx4jg7m 4 роки тому +6

      @@user-dk2xt8zh8i Вам бесплатно предоставляют ценную информацию, а вы на причмокивания(которых я не заметил) обращаете внимание.

    • @user-dk2xt8zh8i
      @user-dk2xt8zh8i 4 роки тому

      держи в курсе "братан"