Лайфхак: исходники внешних обработок и отчетов 1С - это просто.

Программирование - Инструментарий

29
Важно: статья далеко на любителя всяких таких git'ов, gitlab'ов и oscript'ов.

Как упомянул в кратком описании, статья действительно для тех "кто в теме", НО если есть интерес, то начать советую с этого вебинара, а дальше в комментариях к этой статье.

Исходная ситуация

Вы храните свой проект (внешний отчет или обработку 1С) где-то в облаке (gitlab или github или bitbucket не суть) и вам не нравится, что среди исходников проекта "отсвечивает" *.epf или *.erf. Если это ваша ситуация, имеет смысл обратить внимание на скрипты конвертации внешних отчетов и обработок 1С в исходники и обратно.

Подготовка

  1. Установить oscript.
  2. Установить платформу 1С не ниже 8.3.10.
  3. Склонировать себе каталог-проект скриптов конвертации.
  4. Скопировать скрипты из каталога скриптов конвертации в каталог своего проекта:

  1. Скопировать *.bat файлы из каталога Exemple каталога скриптов конвертации в каталог своего проекта:

*.epf и *.erf*.xml и *.bsl

  1. Сохранить свою, например, обработку в каталог проекта:

  1. Запустить Decompile.bat, чтобы разобрать внешнюю обработку на исходники.

  1. Добавить в .gitignore файл fileversion и *.epf, чтобы иметь только исходники в своем проекте.

  1. git push...

*.xml и *.bsl → *.epf и *.erf

  1. git clone... или git pull...
  2. Запустить Compile.bat, чтобы собрать (обновить) внешнюю обработку из исходников.

Готово!

29

См. также

Комментарии
Сортировка: Древо
1. Aphanas 125 22.06.18 21:39 Сейчас в теме
Конфигуратор же вроде уже давно умеет так собирать и разбирать
2. new_user 276 22.06.18 22:52 Сейчас в теме
(1) верно! но эти скрипты "мониторят" изменения обработок (отчетов), и позволяют массово разобрать на исходники только изменившиеся обработки (отчеты).
3. Infactum 259 25.06.18 10:54 Сейчас в теме
А что про хуки не написали? Руками скрипты запускать это как-то несерьезно совсем.
4. Pr-Mex 111 25.06.18 23:53 Сейчас в теме
(3) Вы какие хуки имеете ввиду?
Например, если epf в .gitignore, тогда её изменение не будет ничего тригерить. И хук ничего не поймает.
5. Infactum 259 26.06.18 09:29 Сейчас в теме
(4) Ваша правда, про .gitignore забыл.
6. BESL 28.06.18 11:35 Сейчас в теме
Не разберутся обычные формы, поэтому лучше использовать precommit4onec + удобная установка в репозиторий одной командой precommit4onec install <Путь к репозиторию>
7. AntonSm 28.06.18 12:25 Сейчас в теме
(6) в precommit1c есть очень удобная команда - precommit1c --git-precommit - которая разбирает файлы, помещенные в индекс, без коммита. Я в этом случае смотрю, что сделано, и легко могу написать подробный комментарий к коммиту, ничего не забыв.
В precommit4onec есть подобная команда?
8. BESL 28.06.18 13:44 Сейчас в теме
(7)Да.
precommit4onec precommit <Путь к репозиторию>

Из описания на gitHub :
"Указанным продуктом пользовались долгое время, он очень хорош, но потребность в развитии и невозможность реализации некоторых сценариев работы в публичной версии сподвигли к реализации нового решения."
9. artbear 1054 05.07.18 12:14 Сейчас в теме
Да, в указанном в статье варианте
+ есть проблема с обычными формами.
+ Нет использования хуков
+ не очень понятно, как ведется анализ необходимости
+ и т.п.

ИМХО проще использовать мощнейший функционала vanessa-runner с 2-мя командами - compileepf и decompileepf.

+ Разбирает как упр.формы, так и обычные формы,
+ Пользуется штатным механизмом 1С.
+ Умеет работать и с файловыми базами, и с серверными
+ Разбирает только обновленные файлы
+ есть куча настроек для упрощения запуска
+ супер-полезный комбайн автоматизации 1С
+ есть огромная куча других полезных команд - обновление, расширения, тестирование, сборка/разборка всего и вся и т.п.
+ Используется в куче компаний
+ Крайне активно дорабатывается

очень рекомендую использовать

github.com/silverbulleters/vanessa-runner
Оставьте свое сообщение