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

แชร์
ฝัง
  • เผยแพร่เมื่อ 3 ม.ค. 2025

ความคิดเห็น • 57

  • @Igorrreha
    @Igorrreha 6 ปีที่แล้ว +9

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

  • @Школа1С-видеоурокибесплатно

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

  • @user-buzer290
    @user-buzer290 4 ปีที่แล้ว +2

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

  • @НиколайТартаков
    @НиколайТартаков 7 ปีที่แล้ว +16

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

  • @АндрюшаМухин
    @АндрюшаМухин 5 หลายเดือนก่อน +2

    Ты крутой, спасибо

  • @fraktald6068
    @fraktald6068 5 ปีที่แล้ว +4

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

  • @alexeast555
    @alexeast555 ปีที่แล้ว +1

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

  • @ЯрославЧерников-щ1щ
    @ЯрославЧерников-щ1щ 4 ปีที่แล้ว +3

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

  • @officialaleksandrkosorukov
    @officialaleksandrkosorukov 5 ปีที่แล้ว +3

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

  • @АлексейАникеев-у3б
    @АлексейАникеев-у3б 5 ปีที่แล้ว +5

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

    • @АртемПольский-ъ7ш
      @АртемПольский-ъ7ш 5 ปีที่แล้ว +1

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

    • @VZRVEL
      @VZRVEL 4 ปีที่แล้ว +2

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

  • @АрменЖидрасян
    @АрменЖидрасян ปีที่แล้ว +1

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

  • @barabucho
    @barabucho 3 ปีที่แล้ว +1

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

  • @Judoka_UZB
    @Judoka_UZB 2 ปีที่แล้ว +3

    привет из 2022

  • @АртемПольский-ъ7ш
    @АртемПольский-ъ7ш 5 ปีที่แล้ว +3

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

    • @realbakhodirov
      @realbakhodirov 4 ปีที่แล้ว

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

    • @polina_view3120
      @polina_view3120 3 ปีที่แล้ว +3

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

  • @roberrtrokko726
    @roberrtrokko726 5 ปีที่แล้ว +2

    Благодарю!!

  • @МарияГришина-з7ш
    @МарияГришина-з7ш 5 ปีที่แล้ว +1

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

  • @ЛёхаБукреев
    @ЛёхаБукреев 4 หลายเดือนก่อน +1

    "Обламаетесь" =)))

  • @kilka13
    @kilka13 3 ปีที่แล้ว +2

    спасибо

  • @Дмитрий-с5щ2и
    @Дмитрий-с5щ2и 5 ปีที่แล้ว +2

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

    • @IlyaLeontyev
      @IlyaLeontyev 5 ปีที่แล้ว +6

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

    • @Дмитрий-с5щ2и
      @Дмитрий-с5щ2и 5 ปีที่แล้ว +1

      @@IlyaLeontyev Спасибо!

  • @АлексейГорбачёв-б8ш
    @АлексейГорбачёв-б8ш 7 ปีที่แล้ว +1

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

    • @IlyaLeontyev
      @IlyaLeontyev 7 ปีที่แล้ว +6

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

  • @romanbush5164
    @romanbush5164 4 ปีที่แล้ว +3

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

  • @НиколайГришаев-р4ю
    @НиколайГришаев-р4ю 7 ปีที่แล้ว +2

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

    • @РоманШананин-н8ч
      @РоманШананин-н8ч 7 ปีที่แล้ว +2

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

  • @НиколайСимонов-я8д
    @НиколайСимонов-я8д 6 ปีที่แล้ว +1

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

    • @Школа1С-видеоурокибесплатно
      @Школа1С-видеоурокибесплатно  6 ปีที่แล้ว +4

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

    • @НиколайСимонов-я8д
      @НиколайСимонов-я8д 6 ปีที่แล้ว +1

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

    • @IlyaLeontyev
      @IlyaLeontyev 6 ปีที่แล้ว +4

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

  • @ДарьяМартынюк-к3м
    @ДарьяМартынюк-к3м 7 ปีที่แล้ว +2

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

    • @user-vg9vz9xo3v
      @user-vg9vz9xo3v 6 ปีที่แล้ว +1

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

    • @Дмитрий-с5щ2и
      @Дмитрий-с5щ2и 5 ปีที่แล้ว +2

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

    • @IlyaLeontyev
      @IlyaLeontyev 5 ปีที่แล้ว +1

      @@Дмитрий-с5щ2и отладчик должен работать во внешней обработке без проблем.

    • @Дмитрий-с5щ2и
      @Дмитрий-с5щ2и 5 ปีที่แล้ว +1

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

    • @IlyaLeontyev
      @IlyaLeontyev 5 ปีที่แล้ว +2

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

  • @dopamine5071
    @dopamine5071 6 ปีที่แล้ว +7

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

    • @АлександрПляскин-ъ3у
      @АлександрПляскин-ъ3у 3 ปีที่แล้ว +1

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

  • @AlexeySvoi
    @AlexeySvoi 4 ปีที่แล้ว +2

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

    • @VZRVEL
      @VZRVEL 4 ปีที่แล้ว +4

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

  • @VikulovStas
    @VikulovStas 3 ปีที่แล้ว +2

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

  • @apb64
    @apb64 5 ปีที่แล้ว +1

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

  • @ПавелВасюков-ж9и
    @ПавелВасюков-ж9и 6 ปีที่แล้ว +2

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

    • @lero4ka_valero4ka_77
      @lero4ka_valero4ka_77 6 ปีที่แล้ว +6

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

    • @ПавелВасюков-ж9и
      @ПавелВасюков-ж9и 6 ปีที่แล้ว +2

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

    • @ВячеславКалинкин-х5т
      @ВячеславКалинкин-х5т 5 ปีที่แล้ว +7

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

    • @ПавелВасюков-ж9и
      @ПавелВасюков-ж9и 5 ปีที่แล้ว +1

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