Skip to content

akpaevj/onec-debug-adapter

Repository files navigation

1C:Enterprise Debug Adapter

Реализация DAP для HTTP сервера отладки 1С.

Адаптер реализован на .NET платформе и требует для своей работы установленного рантайма .NET 6.

Доступная дополнительная функциональность:

  • Логпоинты
  • Остановка по условию (вычисляемое выражение)
  • Остановка по ошибкам (доступен фильтр по тексту)
  • Вычисление контекста при наведении на символ

Адаптер позволяет выполнять отладку исходных кодов конфигураций (формат конфигуратора) с подключением к серверу отладки 1С из любой среды, поддерживающей DAP.
Поддерживается возможность отладки как основной конфигурации, так и расширений.
Для отладки основной конфигурации достаточно создать шаблонный launch.json, указав имя информационной базы и адрес/порт сервера отладки.
Для отладки расширений используется функциональность Multi-Root Workspaces, пример конфигурации отладки 2 проектов (основная конифигурация и расширение):

{
   "folders":[
      {
         "path":"erp",
         "name":"ERP"
      },
      {
         "path":"my_extension",
         "name":"МоеРасширение"
      }
   ],
   "launch":{
      "version":"0.2.0",
      "configurations":[
         {
            "name":"Отладка 1С (запуск)",
            "type":"onec",
            "request":"launch",
            "platformPath":"${env:PROGRAMFILES}/1cv8",
            "platformVersion":"8.3.24.1548",
            "rootProject":"${workspaceFolder:ERP}",
            "infoBase":"Информационная база #2",
            "debugServerHost":"localhost",
            "debugServerPort":1550,
            "extensions":[
               "${workspaceFolder:МоеРасширение}"
            ],
            "autoAttachTypes":[
               "Client",
               "Server"
            ]
         }
      ]
   },
   "settings":{
      
   }
}

Так-же расширение добавляет в Debug View дополнительные панели для конфигурации автоподключаемых типов отладки и отображения уже существующих предметов, с возможностью ручного подключения