Парсировщик кода 1С

07.08.23

Разработка - Инструментарий разработчика

Инструмент сделан на чистом 1С. Может быть полезен тестировщикам, программистам и разработчикам 1С. Протестировано на платформе 8.3.23.1739.

Актуальный релиз

Наименование Файл Версия Размер
Парсировщик кода 1С:
.epf 168,40Kb
10
.epf 1.2.6.2 168,40Kb 10 Скачать

Инструмент "Парсировщик кода 1С" анализирует код на языке 1С, разбивая его на части и создавая дерево, которое показывает структуру кода, и таблицу токенов (литералы, операции и другие). После того, как дерево построено и таблица токенов заполнена инструмент может преобразовать код в байт-код или выполнить форматирование кода на основе дерева и таблицы.

Включает в себя:

  1. Разбор - разбирает код на составные элементы.

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

    Сравнение:

    Публикация Разбор
    Парсировщик кода 1С 90%
    Технологическая платформа 1С:Предприятие 8.3 100%

     
  2. Форматтер - выполняет форматирование кода.

    Преимущество:
    - Есть возможность переключения между однострочным и многострочным вариантами;
    - Есть возможность перевода текста (русский - английский).
     

    Сравнение:

    Публикация Форматтер
    (однострочный - многострочный)
    Автоформатирование кода 25%
    ИТС: Автоформатирование кода и локализации 0%
    ИТС: Форматирование текста 8.1 0%
    ИТС: Форматирование текста 8.2 0%
    Методика применения однострочного кода 50%
    Парсировщик кода 1С 90%
    Технологическая платформа 1С:Предприятие 8.3 0%
    Транслятор: перевод и форматирование текста 0%

     
  3. Компилятор - преобразовывает код в байт-код.

    Преимущество:
    - Есть возможность переключения между компиляторами.
     

    Сравнение:

    Публикация Компилятор Комментарий
    VM1C - виртуальная машина для 1С 50-100% Первая версия написана в 1С (возможно были все основные функции), потом портирована на .Net.
    [1C-to-EXE] Компилятор 1С кода 50% Базовые операторы (функции, процедуры, циклы, список значений и переменные и др.).
    Парсировщик кода 1С 90% Преобразовывает почти все операторы.
    Пишем консольные exe-приложения на языке 1С 100% Интерпретатор сценариев на языке 1С, включающий в себя стековую виртуальную машину, исполняющую сценарий и транслятор языка 1С в байт-код виртуальной машины.
    Технологическая платформа 1С:Предприятие 8.3 100% Компилирует встроенный язык 1С:Предприятия в промежуточный код, исполняемый интерпретатором.

     

Большое спасибо Саше за его проект!  (Был(а) на сайте инфостарт: 30.06.2020 и удален)

 
 История версий:

09.08.23 - Версия 1.2.6.2:

Разбор:

  • Заменены токены "Истина" и "Ложь" на "Булево" и "ДатаВремя" на "Дата".

Форматтер:

  • Убраны лишние пробелы при форматировании кода в переключателе "Многострочный".

Компилятор:

  • Доработаны некоторые конструкции аннотаций методов при компиляции кода.
     
    Пример кода 

    &Перед("Метод1")
    &После("Метод1")
    Процедура Расш_Метод1()

Прочее:

  • Добавлен вывод времени (разбор, форматтер, компилятор).

10.05.23 - Версия 1.2.5.1:

Компилятор:

  • Добавлены аннотации методов.

18.04.23 - Версия 1.2.4.1:

Разбор:

  • Изменены местами токены "Async/Асинх" и "Await/Ждать".

Компилятор:

  • Добавлен тип параметра "Число" с унарным минусом.
  • Упразднен флажок "Форматировать компилятор".

11.04.23 - Версия 1.2.3.1:

Разбор:

  • Исправлена ошибка при разборе некоторых конструкций "Ждать".
     
     Пример кода

    Асинх Процедура ВыполнитьКод(Код)
        Результат = Ждать (Код);
    КонецПроцедуры

Форматтер:

  • Скорректировано форматирование некоторых конструкций "Ждать", "Выполнить" и "ВызватьИсключение".
     
     Пример кода

    Выполнить Код;

  • Убраны табуляции в выражении препроцессора.
     
     Пример кода

     #Если     (        Не     Клиент И     (    Не     НаКлиенте)) Тогда

Компилятор:

  • Доработан оператор "Ждать".
  • Скорректирован пустой тип параметра.
  • Исправлена ошибка при компиляции некоторых конструкций "Новый".
     
     Пример кода

     Результат = Новый (Код);

     

29.03.23 - Версия 1.2.2.1:

Компилятор:

  • Добавлены операторы "Асинх" и "Ждать".

11.03.23 - Версия 1.2.1.1:

Компилятор:

  • Добавлен мобильный компилятор.
  • Добавлен тип параметра Null.

Форматтер:

  • Исправлено форматирование чисел.

21.02.23 - Версия 1.1.5.1:

Компилятор:

  • Добавлены метки оператора "Перейти".

10.02.23 - Версия 1.1.4.6:

Компилятор:

  • Скорректированы флаги переменных и параметры методов.

02.02.23 - Версия 1.1.3.4:

Компилятор:

  • Скорректированы аргументы операторов "ДобавитьОбработчик" и "УдалитьОбработчик".

25.01.23 - Версия 1.1.2.3:

Компилятор:

  • Добавлены операторы "ДобавитьОбработчик" и "УдалитьОбработчик".

18.01.23 - Версия 1.1.1.2:

Форматтер:

  • Скорректированы переносы строк(многострочный-однострочный).
  • Исправлена ошибка при переводе текста "операторы (Асинх, Ждать)" с английского на русский.

17.01.23 - Версия 1.1.0.1:

Разбор:

  • Добавлены операторы "Асинх" и "Ждать".

Форматтер:

  • Добавлены операторы "Асинх" и "Ждать".
  • Добавлен перевод текста (символы препроцессора Клиент, НаКлиенте, Сервер и т.д.) на русский или английский язык.
  • Добавлен флажок "Исправлять регистр ключевых слов".

16.01.23 - Версия 1.0.4.1:

Форматтер:

  • Исправлена ошибка при переводе текста "булевы операции (и, или, не)" в выражении препроцессора.

14.01.23 - Версия 1.0.4.0:

Форматтер:

  • Добавлен перевод текста (ключевые слова, директивы, аннотации и инструкции препроцессора) на русский или английский язык.
  • Добавлены операторы "ДобавитьОбработчик" и "УдалитьОбработчик".
  • Добавлены инструкции препроцессора "Вставка", "КонецВставки", "Удаление", "КонецУдаления" для расширения.
  • Добавлены аннотации "Перед", "После", "Вместо", "ИзменениеИКонтроль" для расширения.
  • Добавлен форматтер кода (однострочный).

Компилятор:

  • Добавлен флажок "Форматировать компилятор".

29.12.22 - Версия 1.0.3.0:

Форматтер:

  • Добавлен форматтер кода (многострочный).

04.12.22 - Версия 1.0.2.0:

  • Добавлена возможность форматировать исходный код 1С.

30.11.22 - Версия 1.0.1.0:

  • Добавлена возможность разобрать исходный код 1С на составляющие.
  • Добавлена возможность компилировать исходный код 1С в байт-код 1С.

 

парсировщик разбор форматтер компилятор транспилятор

См. также

INFOSTART TECH EVENT 2023, 11-13 октября, Санкт-Петербург

Инструментарий разработчика Мобильная разработка DevOps и автоматизация разработки Администрирование СУБД Мероприятия Россия Платные (руб)

XIII конференция по управлению и технологиям автоматизации учета на платформе 1С:Предприятие, которая пройдет в Санкт-Петербурге и соберет 1500 участников из разных регионов России и мира.

5100 руб.

09.12.2022    30068    5    0    

406

Онлайн-интенсив "DevOps для 1С". с 4 сентября по 17 октября 2023 г.

Инструментарий разработчика DevOps и автоматизация разработки DevOps для 1С Платные (руб)

Данный онлайн-курс (интенсив) предусматривает изучение процессов, инструментов и методик DevOps, их применение при разработке на платформе 1С. 

20.06.2023    9640    0    Infostart    2    

120

SALE! %

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

12000 10000 руб.

02.09.2020    93036    474    379    

530

SALE! 25%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

3600 2700 руб.

14.01.2013    170002    1049    0    

789

Автоматизация труда программиста. Библиотека прикладных функций

Инструментарий разработчика Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Конфигурации 1cv8 Платные (руб)

Программист - это человек, непрерывно принимающий решения. Написание кода не является процессом принятия решения - это всего лишь трансляция ваших желаний. Если вас периодически тяготит написание сотен строк кода ради решения задач, то прошу обратить внимание. Данный продукт позволит существенно сократить время на рутинные операции при разработке. За счет библиотечной реализации сокращается объём кода, а его читаемость повышается. К библиотеке прилагается документация API и шаблоны кода для наиболее популярных методов.

4200 руб.

16.04.2021    12404    3    9    

9

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    96397    233    97    

283

Менеджер конфигураций 1С

Инструментарий разработчика Платные (руб)

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

1439 руб.

21.02.2023    5187    1    33    

14

Программное формирование существующих печатных форм

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Получение списка печатных форм, формирование выбранной печатной формы и сохранение ее в файл.

1 стартмани

17.12.2021    14030    39    RocKeR_13    5    

46