Git + 1С. Часть 2. Реализация Git workflow в 1С-разработке по шагам

Публикация № 901547

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

В этой части мы рассмотрим наиболее распространённую схему workflow при групповой разработке с использованием Git. Как приступить к доработке по поставленной задаче; исправить ошибку, обнаруженную на этапе тестирования; отправить свой код на слияние в предстоящий релиз; и т.д. Постараемся охватить большинство задач, составляющих основной цикл разработки

Часть 1. Как подключиться к команде разработки и начать использовать Git

 
 Содержание

Часть 2. Реализация Git workflow в 1С-разработке по шагам (эта статья)

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

Начало работы над задачей

Работу по каждой задаче следует выполнять в отдельных ветках, называемых "фича". По соглашению в команде, имя фичи содержит, как правило, номер задачи из трекера. Например, у нас принят шаблон: feature9999. Фича начинается в основном стволе разработки (обычно это ветка develop) и сливается в него по окончании разработки.

Прежде чем начать работу над задачей, актуализируем состояние своего локального репозитория, ведь с тех пор, как мы делали это последний раз, могли появиться новые коммиты наших коллег. Для этого сделаем текущей ветку develop, перейдя на неё, и выполним получение изменений.

Переход на ветку develop и получение изменений

 
 cmd
 
 SourceTree

В списке веток выполняем двойной щелчок по ветке develop. Активная ветка выделяется полужирным начертанием и появляется колечко слева от имени.

Для получения изменений в текущую ветку нажимаем кнопку "Получить" и в открывшемся окне нажимаем ОК (ничего в нём не меняем):

На этом рисунке также видно, что SourceTree любезно информирует о наличии новых трёх коммитов в текущей ветке (возле кнопки "Получить" и рядом с именем ветки). Кроме того, видно, что в неактивной ветке master также есть один не полученный коммит.

При необходимости взять в работу еще одну фичу, приостановив работу над предыдущей, следует проделать эту последовательность еще раз. Но перед этим сделайте коммит в первой фиче (хотя, Git и так вас предупредит, если обнаружит не зафиксированные изменения). Таким образом, у разработчика может быть несколько незакрытых фич, между которыми он переключается в процессе работы, переходя с одной ветки на другую (точно так же, как мы в начале делали активной ветку develop).

Более того, разработчик может в рамках своей фичи создавать собственные суб-ветки и целые деревья, если это необходимо, чтобы, например, реализовать параллельно несколько идей в решаемой задаче или решить ее несколькими способами и сравнить результат. Главное, чтобы в конечном итоге на слияние в develop был отправлен тот единственный рабочий вариант, который должен уйти в рабочую версию.

Процесс жизнедеятельности задачи

Фиксация изменений

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

Напомню, что в процессе коммита изменённые файлы проходят через несколько состояний: сначала они индексируются (или собираются "в очередь" на фиксацию, add), затем производится коммит (commit) проиндексированных изменений в локальный репозиторий, и в конце выполняется отправка (push) изменений в удалённый репозиторий. Некоторые инструменты по работе с Git делают несколько или все эти операции одновременно, так что для разработчика процесс происходит быстро и не напряжно. Но в целом положение дел с вашими файлами именно такое.

 
 cmd
 
 SouceTree

О появлении новых изменений в SourceTree сигнализирует надпись "Незакоммиченные изменения" в продолжении текущей ветки, при этом в списке "Файлы не в индексе" появится перечень всех изменённых файлов. Нажмите "Индексировать всё" (или выделите нужные для фиксации файлы и нажмите "Индексировать выделенное").

Проиндексированные файлы отправляем в коммит кнопкой "Закоммитить" в верхнем левом углу. Программа попросит внести комментарий к изменениям, после чего нажатие другой кнопки "Закоммитить", уже внизу справа, приведёт собственно к фиксации коммита.

При этом, если установить флажок "Сразу отправлять изменения в origin", то коммит будет отправлен в удалённый репозиторий, и ваша фича синхронизируется с локальной версией.

Если же флажок снят, то коммит будет зафиксирован только в локальном репозитории. Это может быть удобно, если в процессе разработки вы предпочитаете часто коммититься, но не торопитесь делиться с коллегами не работающим кодом. В этом случае, возле имени ветки и около кнопки "Отправить" появится информация о количестве коммитов, готовых к отправке из локального репозитория в удалённый.

Что мы получили в результате коммита:

  1. Ветка фичи продвинулась на одну позицию, обрела комментарий об изменениях в данной точке, и теперь выделена жирным шрифтом, что показывает ее текущее положение;
  2. Подробное описание коммита в развёрнутом виде;
  3. Перечень файлов, подвергшиеся изменению. Да, их тут чуть больше, чем мы индексировали, т.к. сработал precommit1c, но об этом чуть позже;
  4. Построчное описание изменений текущего (выделенного) файла.

Теперь, чтобы отправить наши локальные изменения в удалённый репозиторий, нажмём кнопку "Отправить", и в открывшемся окне (ничего в нём не меняя) еще раз нажимаем "Отправить".

В этом простом примере заодно было показано, как работает Precommit1c: в момент коммита он автоматически раскладывает внешнюю обработку на исходные файлы и бережно раскладывает их в папке src с учётом иерархии. И то же самое он будет делать и с расширениями конфигурации, если вы ведёте разработку с их использованием.

Тут я хотел продемонстрировать еще одно преимущество работы с Git: ваш рабочий каталог - это сам git-репозиторий. Не нужно куда-то отдельно копировать обработку, чтобы потом что-то делать для фиксации версии. Достаточно сохранить ее прямо в репозитории, а всю грязную работу Git и Precommit1c выполнят за вас. Главное - правильно указать в начале текущую рабочую ветку.

Отмена изменений и других последствий невнимательности

В процессе работы много чего приходится отменять, отказывать и еще как-то заметать следы своих косяков, еще до того, как ваши труды полетят в продакшен, то есть пока вы возитесь в своём локальном репозитории.

Отказ от индексирования изменений

Лично моя - самая частая ошибка :) Сначала индексируешь всё (удобно ведь одной кнопкой), а потом вспоминаешь, что не всё-то и надо было. Или вдруг вспоминаешь, что нужно было часть текущих изменений зафиксировать отдельным коммитом. Убираем файл из области индексирования:

 
 cmd
 
 SourceTree

 Для удаления файла из индекса предусмотрены две кнопки "Убрать всё из индекса" и "Убрать из индекса выделенное"

Игнорирование файлов, файл .gitignore

Файл .gitignore (именно так, с точкой и без расширения) и механизм игнорирования позволяют отключить от версионирования часть файлов из вашего репозитория. Это очень удобно, когда, например:

  • В локальном репозитории есть файл с локальными настройками или сведениями о состоянии проекта, но его смысл теряется при переходе к удалённому репозиторию. Такие файлы полезны только при работе на локальной машине, но их не надо коммитить. Пример такого файла - файл VERSION, необходимый при работе с gitsync;
  • В локальном репозитории вы храните дополнительные рабочие файлы проекта, которые нужны только вам, но их не нужно версионировать и делать достоянием всей команды. У меня в репозитории с правилами обмена таковыми являются файлы с описанием структуры конфигураций. Они лежат в одном месте со всем, что связано с обменами, но при этом не мешают другим разработчикам.

Файл .gitignore располагается в корневом директории репозитория, а по своей структуре - это текстовый файл, в каждой строке которого содержится имя файла, маска файла или путь к каталогу, содержимое которого следует игнорировать системе Git. В дальнейшем, при изменении таких файлов они никак не будут влиять на состояние репозитория (не появится незакоммиченных изменений).

Если вы работаете с Git из консоли, то этот файл следует создать и настроить вручную.

 
 SourceTree

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

Следует отметить, что сам файл .gitignore тоже коммитится и версионируется. Это может сбить с толку новичка, когда, например, после получения изменений из develop система вдруг перестаёт видеть часть файлов разработчика. Или при создании новой фичи не действует игнорирование, которое только что настраивал, но настройка осталась в другой фиче, которая еще не слита в develop.

Поэтому рекомендую при любых изменениях .gitignore сразу же сливать его в основной ствол разработки. А еще лучше - договоритесь с коллегами, что именно будете игнорировать, и настройте файл заранее.

Отмена изменений в индексе

Если изменяется файл, который уже версионируется в проекте, то есть возможность отменить текущие изменения и вернуться к его исходному состоянию (к состоянию предыдущего коммита).

 
 cmd
 
 SourceTree

 Изменённый файл отмечается значком с тремя точками, для таких файлов в контекстном меню доступна команда "Отменить"

Кроме того, ряд операций с изменениями (помещение в индекс, удаление из индекса, обращение коммита) можно производить не только над файлом в целом, но и на отдельных блоках изменений и даже с отдельными строками кода. Для этого в окне изменений справа от списка файлов предусмотрены соотвествующие кнопки над каждых блоком. Если выделить отдельные строки кода, то кнопка над блоком примет вид в соответствии с вашими действиями.

Внимание! Не все операции с выделенными строками возможны. Зачастую система требует, чтобы выделенные строки составляли непрерывный диапазон. А в операции с не подряд идущими строками (как на картинке) может быть отказано.

P.S. Отменяется выделение строки одинарным щелчком по ней же.

Просмотр изменений

Сравнение разных версий файлов и просмотр изменений - одна из ключевых задач, ради которых используется Git. Консольная команда git log использует большое число дополнительных параметров, благодаря которым можно получить практически любой отчёт по истории изменений.

 
 cmd
 
 SourceTree

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

Для просмотра всех изменений одного файла, достаточно найти его в списке коммита и в контекстном меню выбрать первый пункт "Журнал для выбранного":

Откроется окно журнала для выбранного файла, с перечнем всех коммитов, в рамках которых был изменён этот файл:

И тут встаёт ожидаемый вопрос: а если в текущем коммите нет файла, историю которого я хочу посмотреть? Или я вообще уже забыл, в каком коммите он последний раз изменялся? В этом случае просто воспользуйтесь командой git blame.

Да, да, я немного лукавил, когда говорил, что при использовании графической GUI-оболочки вы можете полностью отказаться от командной строки :)). Ни одна GUI не способна охватить весь спектр возможностей Git. И время от времени вы будете прибегать к помощи терминала. Он даже штатно вызывается из SourceTree в меню "Действия - Открыть в терминале...".

Еще один приём, который удобно применять при код-ревью - это просмотр изменений между двумя релизными коммитами. Если выделить первый коммит и, зажав клавишу Ctrl, выделить второй, то будут отображены все изменения, произведённые между этими двумя фиксациями:

О других методах отладки в Git можно почитать здесь.

Слияние готовой фичи в develop

Когда работа над задачей завершена, готовый код объединяется с общей веткой разработки develop. Этот процесс называют слиянием, или merge в терминах Git.

Смержить изменения можно тремя способами: а) Выполнить merge локально, и результат слияния отправить в origin; б) Выполнить запрос на слияние (pull-request) в общий репозиторий разработки; в) Выполнить pull-request из своего fork в авторский репозиторий. О последнем варианте есть отличная статья Антона Иванова, рекомендую к прочтению. В ней же описаны и основные приёмы работы с запросами на слияние.

Сразу стоит остановиться на моменте, который сбивает с толку многих новичков: "Из какой ветки в какую принимается код, когда я выполняю merge?". Ответ прост: значение имеет то, на какой ветке feature1 вы сейчас находитесь. А при выполнении команды, скажем, git merge feature2, вы принимаете к себе новый код. То есть, feature2 вливается в feature1.

Вариант 1. Локальный merge

 
 cmd
 
 SourceTree

Двойным щелчком на названии ветки делаем активной ту, в которую будем сливать код. В панели инструментов главного окна нажимаем кнопку "Слияние":

Откроется дополнительное окно для выбора коммита, из которого следует взять код для слияния. Выделяем нужный и щёлкаем "ОК". (Чтобы спозиционироваться на последнем коммите заранее известной ветки, бывает удобно воспользоваться кнопкой "Перейти на" в верхнем правом углу).

Если не было конфликтов слияния, то код принимается в родительскую ветку и выполняется локальный коммит. Теперь остаётся только отправить новую версию файла в удалённый репозиторий с помощью кнопки "Отправить".

Вариант 2. Создание запроса на слияние

Pull request, или запрос на слияние, отличается от простого слияния тем, что изменения никогда не принимаются сразу. При каждом таком запросе сливаемые ветки переходят в особое состояние, когда ожидают решения архитектора/тимлида о принятии новой версии. Работа эта (и создание запроса, и ответ на него) выполняется на сайте git-сервиса. Для всех сервисов процесс очень похож, приведу пример для GitHub.

На странице проекта нажимаем кнопку "New pull request"

Далее, выбираем исходную и целевую ветки слияния. При этом название запроса автоматически будет подставлено из комментария коммита. При необходимости можно указать подробный комментарий к запросу. Нажимаем кнопку "Create pull request", и запрос готов.

После проверки нового кода, владелец проекта нажмёт кнопку "Merge pull request", после чего изменения будут приняты в родительскую ветку.

Вместо заключения. О чём договариваемся в команде

  1. Выбор модели ветвления;
  2. Правила именования фич;
  3. Частота выполнения коммитов в процессе работы;
  4. На какой версии платформы работает вся команда? Важный момент, поскольку от релиза к релизу платформа может немного менять формат выгрузки конфигурации в файлы, да и в самих файлах содержится информация о версии платформы, которой они были созданы. При нарушении этой договорённости, коммиты отдельных сотрудников будут вызывать такое количество изменений, что польза самого использования Git сойдёт на "нет". Пропишите это в Readme к своему репозиторию (как, собственно, и все остальные правила вашей команды);
  5. Именование коммитов. Хорошая статья на эту тему - здесь;
  6. Состав файла .gitignore.

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Vladimir Litvinenko 1969 29.01.19 01:06 Сейчас в теме
для начала предстоит решить, какую модель ветвления вы будете использовать

По сравнению и применимости моделей ветвления (точнее воркфлоу) хотел бы поделиться ссылками на лучшие публикации, которые встречал по этой теме. Они правда на английском. C сайта Atlassian, где вообще очень много хороших методических материалов:

Модель с одной веткой и общее сравнение моделей: https://www.atlassian.com/git/tutorials/comparing-workflows
Модель фича-бранчей: https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow
Гитфлоу: https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
Форки и пул-реквесты: https://www.atlassian.com/git/tutorials/comparing-workflows/forking-workflow


P.S.: Из прошлой публикации https://infostart.ru/public/864097 пропала информация о том, что будет отдельная статья про применение Visual Studio Code при разработке на 1С. Надеялся, что выйдет. Больше нет в планах её публиковать?
JohnyDeath; eeeio; zeegin; +3 Ответить
3. stas_ganiev 29.01.19 03:44 Сейчас в теме
(1) Может и будет)) Просто не хочется обещать, вдруг опять что-то пойдёт не так...
2. drmaxart 77 29.01.19 01:07 Сейчас в теме
Большое спасибо за статью! Давно ожидали продолжения 1-й части!
stas_ganiev; +1 Ответить
4. zeegin 45 29.01.19 05:23 Сейчас в теме
При активном использовании CI/CD можно избежать использование веток develop, release и hotfix совсем.

Это то, что рекомендуется в вариантах github flow и gitlab flow.
stas_ganiev; +1 Ответить
5. kalyaka 531 29.01.19 08:38 Сейчас в теме
(4) пожалуйста дайте ссылку на рекомендацию или поясните как тогда работать с хотфиксами и планированием релизов?

Думаю над организацией релизного управления и у меня пока классическое понимание: планирование релиза, сборка, тестирование, выпуск в продукт, исправление ошибок хотфиксами. При этом хотфиксы не идут в ветку develop, а при очередном релизе затираются нормальным решением.
6. zeegin 45 29.01.19 08:59 Сейчас в теме
(5) суть DevOps а в том, что у тебя был бы в мастере код всегда готовый к релизу. Любой комит может быть релизом. Фактическим релизом становится тот, на который ты повесишь тег.

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

Для гитхаб флоу это так, в гитлаб флоу рекомендуется еще и деливери делать отдельными ветками типа с мастера можно отмерджить в ветеупрепрод где стейдж окружение и тесты уже не покомитные продукта, а скопом все окружение как копия прода, а с препрода можно отмерджить в прод.
serge_grand; JohnyDeath; stas_ganiev; +3 Ответить
7. chea06 132 31.01.19 12:50 Сейчас в теме
> git add FileName
> git commit -m "my comment" -a


использование параметра -a в команде commit делает бессмысленной вышеуказанную команду "git add FileName", потому как добавляет автоматом все изменения в индекс, а вы судя по всему хотели в индексе видеть только FileName
stas_ganiev; +1 Ответить
8. exzanimo 30.03.19 22:03 Сейчас в теме
Интересно увидеть 3 часть :)
SirYozha; +1 Ответить
11. N!ghtmare 25.04.19 20:35 Сейчас в теме
(8)
Согласен.
(0)
Самое интересное начинается при деплое. Собрать cf из Гита(если соберётся) и ...
12. ellavs 679 26.04.19 07:53 Сейчас в теме
(11)
Собрать cf из Гита(если соберётся)

Работаю с EDT, там конфигурация из исходников вроде нормально собирается. Т.е. работа происходит изначально с исходниками, из которых при каждом тестовом запуске собирается конфигурация.
9. kasper076 49 16.04.19 14:03 Сейчас в теме
(0) Как работаете с ветками? Под каждую ветку заводите отдельную базу? Используете инкрементальные выгрузку и загрузку из/в конфигуратор? Как осуществляете переход между ветками, в которых созданы новые объекты?
14. stas_ganiev 26.04.19 19:25 Сейчас в теме
(9)Под разные конфигурации следует создавать отдельные репозитории. Ветки репозитория - это истории жизни разных версий одного проекта, но никак не разные проекты.
Переход между ветками - обычным образом. Какие у вас с этим сложности?
15. kasper076 49 06.05.19 09:57 Сейчас в теме
(14) Ветки создаются под каждую задачу. Но если в рамках задачи создается новый объект конфигурации, то как быть тут? В одной ветке объект есть, в других нет.
16. stas_ganiev 06.05.19 10:07 Сейчас в теме
(15)Тут следует поступать так же, как и в хранилище: добавляем объект и сразу вливаем его в основной ствол, предварительно сделав минимальные необходимые настройки. Ветку фичи при этом не закрываем и продолжаем в ней работать.
Другой вариант (без помещения в основной ствол): те, кому нужен новый объект, мержится от вашей фичи напрямую к себе. Потом уже не важно, кто первый смержить объект в дев, это уже легко разруливается гитом.
17. kasper076 49 06.05.19 12:40 Сейчас в теме
(16) В итоге нужно обновлять все свои ветки, чтобы данный объект был в них, либо заводить под базу с новым объектом отдельную базу. Так?
18. kasper076 49 06.05.19 13:52 Сейчас в теме
(17)
заводить под *ветку с новым
10. kasper076 49 16.04.19 14:03 Сейчас в теме
13. NNomad 26.04.19 11:33 Сейчас в теме
Подскажите, пожалуйста, может кто сталкивался с проблемой различия кодировок в именах файлов и их содержимым?
Использую стандартную функцию Конфигурация->Выгрузить конфигурацию в файлы.
При изменении настроек кодировок в SourseTree корректно работает что-то одно.
Поведение программы видно на скриншотах.
Прикрепленные файлы:
19. strange2007 142 23.01.20 08:15 Сейчас в теме
Вот прям чувствую, что GIT прикольная штука, но не могу придумать, где ж она поможет в реальной жизни((((
Честное слово, уже много раз думал
20. stas_ganiev 1137 23.01.20 08:23 Сейчас в теме
(19)При разработке правил обмена очень здорово помогает. Давно версионируем правила, не раз помогало в спорных ситуациях и при расследовании инцидентов. Плюс, не надо тыркать друг друга и объяснять тестировщикам и внедрецам, откуда какие правила брать, - каждый просто берет их из нужной ветки.
Также, на прошлом месте работы у нас был весь проект в Git: расширения конфы + внешние отчеты и обработки. Удобно тем, что всё причастное к конфигурации лежит в одном месте, а в истории версий релизов фиксируются все измененные файлы. Не возникает вопроса, где какая обработка у кого лежит
21. strange2007 142 23.01.20 08:56 Сейчас в теме
(20) Спасибо. Правила обмена, это идеальный пример. Правда спасибо.

С обработками тоже правы. Сам с этим сталкиваюсь, что фигпойми, что за набор инструментов и где их все собирать по серверам-компам.

В общем для себя немного прояснил. Но мне кажется, если поменять методику, то git и в этих случаях не понадобится и использовать будет удобней.
22. stas_ganiev 1137 23.01.20 10:15 Сейчас в теме
(21)Предложите такую методику, и сообщество скажет вам "Спасибо!" :)
23. strange2007 142 23.01.20 10:28 Сейчас в теме
(22) С удовольствием, но я слишком слаб и немощен. С 2009 года всем рассказываю про клёвости, а люди просто не понимают и выбирают путь трудный и тернистый. Самое простое - нафига плодить кучу того, что надо потом в git пихать, если лучше привести к нормальности БП предприятия и не напрягаться? Тем более писанина так или иначе приводит к позорному закидыванию помидорами, потому что команда закапывается в писанине. И не важно на сколько она структуирована.
Увы, это подтверждал на многих предприятиях
I_r_a; acanta; stas_ganiev; +3 Ответить
24. stas_ganiev 1137 23.01.20 10:39 Сейчас в теме
(23)Если надумаете внедрять правила обмена с Гитом, то обратите внимание на это: https://infostart.ru/public/632457/
strange2007; +1 Ответить
25. strange2007 142 23.01.20 10:59 Сейчас в теме
(24) Спасибо. Это честное спасибо.

Но пока что я и дальше буду работать по старинке:
- Все обмены делать так, что бы в них надо было лазить один-два раза в год и только для очень мелких доработок
- К КД2 (тройку то я не знаю) подпускать только того, кто сможет внятно объяснить как конвертировать субконто.
- Не подпускать к обмену на 1.2 км любого человека, который начинает работу со слов: "ада! что тут за фигня написана? ща исправлю мигом"
Оставьте свое сообщение

См. также

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Опыт внедрения/разработки продуктов 1С

Статья no Нет файла v8 1cv8.cf Россия Бесплатно (free) Управление проектом

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

16.01.2020    4061    BraunAlex    11       

Проблемы интеграции 1С: ERP с негибкой системой производственного учета

Статья no Нет файла v8 ERP2 Бесплатно (free) Обмен данными 1С Управление проектом

Данная статья описывает трудности интеграции 1С: ERP с негибкой внешней системой производственного учета. Статья поможет консультантам/менеджерам проектов обойти стороной те грабли, с которыми познакомились мы.

14.01.2020    1804    user1042803    5       

Онлайн-курс "Подготовка к экзамену 1С:Эксперт и 1С:Профессионал по технологическим вопросам" с 7 по 24 апреля 2020 г. Промо

На курсе вы получите практические навыки решения задач производительности 1С, в том числе характерных для высоконагруженных информационных систем (более 1000 пользователей). Подготовка к экзамену – только одна из составляющих курса. 70% слушателей приходят за знаниями, которые позволят расти и зарабатывать, делать сложные задачи на крупных проектах.

16450 рублей

EDT + УТ 11.4 + БП 3.0 + Расширения. Часть 02

Статья Программист Нет файла v8 Бесплатно (free) EDT

Продолжение "путевых заметок" про EDT...

09.01.2020    3488    abc120000    29       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

EDT 1.16. Первые 20 часов работы

Статья Программист Нет файла v8 Россия Бесплатно (free) EDT

Первое знакомство с 1C:Enterprise Development Tools, версия 1.16.0.363.

25.12.2019    7652    abc120000    11       

Мониторим производительность с помощью 1С RAS

Статья Системный администратор Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика Производительность и оптимизация (HighLoad)

Подключаемся и анализируем данные через 1С RAS. Необходимо выполнить 5 пунктов и серьезный инструмент мониторинга будет у вас в руках.

19.12.2019    5524    ivanov660    12       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

Разбор любого JSON-объекта в соответствующую структуру

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Инструментарий разработчика WEB

Данная публикация предназначена разработчикам 1С, которым приходиться разбирать данные формата JSON. Выложенный пример кода создает объект типа Структура, полностью повторяющий структуру данных формата JSON.

13.11.2019    3447    user665435_al.windstorm    14       

Git для 1С-ника и другие технологии групповой разработки

Статья Программист Нет файла v8 1cv8.cf Россия Бесплатно (free) Инструментарий разработчика Git (GitHub, GitLab, BitBucket)

У многих специалистов в отношении Git сложились стереотипы, мешающие начать работу с этим прекрасным и удобным инструментом. Почему его не стоит бояться, и чем он может упростить жизнь 1С-никам, рассказал архитектор ГК «Невада» Станислав Ганиев.

28.10.2019    8366    stas_ganiev    16       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

INFOSTART MEETUP Kazan. 13 марта 2020 г. Промо

Инфостарт продолжает путешествие по России. Следующая остановка - Казань. Тема мероприятия - управление и технологии автоматизации учета на платформе "1С: Предприятие". Ждем всех: докладчиков и участников! Стоимость участия - 5 500 рублей. Цена действительна до 30.01.2020

5 500

FastCode - сервис поиска кода 1С

Инструменты и обработки Программист Архив с данными v8 Бесплатно (free) Инструментарий разработчика

Добавляйте свои шаблоны кода или ищите готовые шаблоны других разработчиков. Оставляйте отзывы и лайки, добавляйте понравившиеся фрагменты в свою библиотеку. Ищите по БСП или по общим модулям своей конфигурации.

10.09.2019    7056    m.bolsun    22       

Как мы разрабатываем в EDT

Статья Программист Нет файла v8 Бесплатно (free) EDT

EDT – это новая среда разработки, на которую сейчас перешли разработчики фирмы «1С». Однако до сих пор существует ряд «белых пятен», касающихся как теоретической, так и практической части применения этого инструмента. Про опыт перехода на разработку в EDT на конференции INFOSTART EVENT 2018 EDUCATION рассказал начальник сектора разработки в компании «Группа Полипластик» Владимир Крючков.

23.08.2019    8239    ivanov660    22       

Базовый курс по управлению ИТ-проектами. Курс проходит с 26 февраля по 22 апреля 2020 года. Промо

Отличительная черта курса - органичное сочетание трех вещей: 1.Теория проектного управления (PMI®+Agile Alliance+Российские ГОСТ+Методологии от 1С); 2. Опыт внедрения продуктов 1С (опыт франчайзи и успешных компаний + тренды Infostart Event и Agile Days); 3. Разбор реальных проблем и рекомендации экспертов по проектам слушателей. Мы будем фиксироваться на тех инструментах, которые реально оказываются полезными в практике руководителей проектов внедрения. Ведущая курса - Мария Темчина.

от 11000 рублей

Как внедрить 1С:Документооборот в условиях хаоса

Статья no Нет файла v8 ДО УУ Документооборот и делопроизводство Бесплатно (free) Управление проектом

Не всегда проекты можно внедрить по заранее спланированному алгоритму. Скорее, даже никогда проекты не удается выполнить по универсальному плану: в каждой конкретной ситуации есть свои сложности и свои проблемы. Опытом внедрения 1C:Документооборот в отсутствии описанных процессов и утвержденной структуры предприятия на конференции поделилась руководитель отдела автоматизации торговой сети РЕМИ Марина Лимонтова (г. Владивосток).

21.08.2019    9019    limm28    11       

Базовый курс по обмену данными в системе 1С:Предприятие. Онлайн-интенсив с 12 по 28 мая 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, обеспечивающих обмен данными между различными прикладными 1С-решениями и взаимодействие с другими информационными системами. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”.

5500 рублей

1С:EDT. Первые шаги… или есть ли альтернатива конфигуратору?

Статья Программист Нет файла v8 Windows Бесплатно (free) EDT

Заменить конфигуратор сложно, а в некоторых случаях невозможно, если, например, нужно оперативно подправить код непосредственно в рабочей конфигурации…

15.08.2019    14840    ellavs    96       

СКД - использование расширений языка запросов, секция ХАРАКТЕРИСТИКИ

Статья Программист Нет файла v8 v8::СКД Бесплатно (free) Инструментарий разработчика Практика программирования

Автоматическое и не автоматическое заполнение полей компоновки данных. Использование расширений языка запросов для СКД «{…}», секция ВЫБРАТЬ, секция ГДЕ, параметры виртуальных таблиц. Автоматизированное использование дополнительных данных в запросе: секция ХАРАКТЕРИСТИКИ.

17.07.2019    19527    ids79    27       

Новый раздел на Инфостарте - Electronic Software Distribution Промо

Инфостарт напоминает: на нашем сайте можно купить не только ПО, связанное с 1С. В нашем арсенале – ESD-лицензии на ПО от ведущих вендоров: Microsoft, Kaspersky, ESET, Dr.Web, Аскон и другие.

  • Низкие цены, без скрытых платежей и наценок
  • Оперативная отгрузка
  • Возможность оплаты с личного счета (кешбек, обмен стартмани на рубли и т.п.)
  • Покупки идут в накопления для получения скидочных карт лояльности Silver (5%) и Gold (10%)

Корпоративный мозг на 1С и Python

Статья Программист Руководитель проекта Нет файла v8 1cv8.cf Windows Бесплатно (free) Управление проектом

Перед вами краткая инструкция, как можно быстро начать digital-трансформацию компании с помощью нейронных сетей на 1С, а также с использованием, в качестве дополнения, ресурсов Python.

17.05.2019    20174    user995065    70       

Групповая обработка (Управляемая консоль отчетов)

Статья Программист Нет файла v8 v8::УФ v8::Запросы 1cv8.cf 1С:Франчайзи, автоматизация бизнеса Бесплатно (free) Обработка документов Инструментарий разработчика Обработка справочников

Статья предназначена тем, кто понимает, зачем нужна групповая обработка в консоли запросов. Рассматривается групповая обработка в консоли Управляемая консоль отчетов.

13.05.2019    5749    Evg-Lylyk    10       

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Где теряется эффективность?

Статья no Нет файла v8 1cv8.cf Бесплатно (free) Управление проектом Личная эффективность

Общее понятие об эффективности командной работы. Где она теряется, где ее ищут, и почему ничего не получается.

03.05.2019    5041    1c-intelligence    13       

Сдача регламентированной отчетности из программ 1С Промо

Сдача регламентированной отчетности из программ "1С" во все контролирующие органы без выгрузок и загрузок в другие программы. Для групп компаний действуют специальные предложения.

от 1500 руб.

Перенос и резервное копирование настроек конфигуратора

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Инструментарий разработчика

Удобный перенос между рабочими местами и резервное копирование настроек конфигуратора через подсистему "Инструменты разработчика".

14.04.2019    6896    tormozit    18       

Голосование за доклады на INFOSTART MEETUP Kazan - до 25 февраля. Промо

Выбирайте и голосуйте за самые интересные доклады! Лучшие из лучших попадут в окончательную программу казанского митапа. Оставить свой голос можно до 25 февраля 2020 года.

Особенности реального внедрения 1С:ТОИР

Статья no Нет файла v8 1cv8.cf Машиностроение и приборостроение Россия Бесплатно (free) Управление проектом Бухгалтерский учет

Часть 1. Учет объектов ремонта. Интеграция ТОИР с учетной системой. Планирование ремонтов.

29.03.2019    6962    Апрель-С    3       

Как добавить типовую форму для СКД (для начинающих) (1С 8.3, управляемые формы)

Статья Программист Стажер Нет файла v8 v8::УФ v8::СКД Бесплатно (free) Инструментарий разработчика Работа с интерфейсом

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

25.03.2019    8638    ellavs    9