Краткое руководство по внесению изменений в конфигурацию

0. sapervodichka 3588 13.01.20 16:07 Сейчас в теме
Кратко описаны основополагающие моменты при старте групповой разработки конфигурации несколькими программистами. Полезно для проектной документации как требование к разработчикам или сопровождающей компании.

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Indgo 13.01.20 16:13 Сейчас в теме
Ничего не понял, но очень интересно.
Лайк, первый буду
// + [Компания], [Программист] [Дата изменений]

// Задача: [Номер тех.задания или заявки], [Краткое описание изменений]

// Было:

// [закомментированный старый код]

// Стало:

[новый код]

// - [Компания], [Программист] [Дата изменений]



Например:

// + 1С, Иванов И.И. 07.01.2020

// Задача: Ф-037, Заполнение реквизитов формы по новому алгоритму

// Было:

// ПриЧтенииСозданииНаСервере();

// Стало:

ВАШПРЕФИКС_ПриЧтенииСозданииНаСервере();

// - 1С, Иванов И.И. 07.01.2020
Показать

может молодешь так будет писать, я как то по старике. Написал дату автор и досвидос, все кто не умеет писать код идите учитесь
Neuroproton; vladimir_makarov; Bell; +3 1 Ответить
2. user705522_constantin_h 27 13.01.20 16:21 Сейчас в теме
(1)А потом через полтора года смотришь и думаешь: нафига я это делал. Я не так пространно, но в общем комментирую что было и пишу: зачем изменял.
vladimir_makarov; Дмитрий74Чел; _LYNX; serega9507585993; +4 Ответить
4. qwed557 30 13.01.20 16:38 Сейчас в теме
(2) фио и номер задачи, зачем описывать что то , если можно в таск-менеджере по номеру посмотреть и всю переписку и постановку задачи, зачем захламлять описанием?
wowik; dimisa; AlexK_2012; Bassgood; +4 Ответить
6. user705522_constantin_h 27 13.01.20 16:43 Сейчас в теме
(4)У меня нет таск-менеджера, я непосредственно всё в конфигурации, обработках и ВПФ пишу.
Дмитрий74Чел; +1 Ответить
11. Indgo 13.01.20 17:37 Сейчас в теме
(2) Если код хороший, то в него не лезут
30. Дмитрий74Чел 195 16.01.20 15:32 Сейчас в теме
(11) хотелки пользователей безграничны и чудны
narutouzumaki_13; +1 Ответить
31. Indgo 16.01.20 17:09 Сейчас в теме
(30)даже не говорите:
- То им бигтейсти
- то рябчики по буржуйский
- то икра не черная,
- то соус перчит, то во рту горчит
34. V.Nikonov 119 23.01.20 15:50 Сейчас в теме
(30) Да и Окружающая Среда постоянно меняется. Вот Зиму долго ждали... Снег выпал в Новогодние праздники и растаял...

А если серьёзнее, то конфигурацию могут править множество доработчиков (некоторые уволились уже, и не расспросишь). Если не ведется журнал доработок с фиксацией ТЗ, то единственным местом смысла доработки будет комментарий. Поэтому лучше писать смысл исправления кода.
kosmo0; Yakud3a; +2 Ответить
3. sapervodichka 3588 13.01.20 16:21 Сейчас в теме
5. user774630 13.01.20 16:38 Сейчас в теме
(1) проблема не в том, чтобы понять, что делает код. Проблема в том, чтобы потом понять - ЗАЧЕМ код это делает.
dreamcreal; narutouzumaki_13; smit1c; Дмитрий74Чел; _LYNX; +5 Ответить
7. dammit666 15 13.01.20 16:48 Сейчас в теме
(1)При оформлении кода пользуюсь публикацией https://infostart.ru/public/647048/
МимохожийОднако; ABudnikov; +2 Ответить
10. sapervodichka 3588 13.01.20 17:22 Сейчас в теме
(7) норм вещь, только большая
8. awk 716 13.01.20 17:03 Сейчас в теме
Прочитал, плюсанул. Ну и критика:

Общие требования к написанию кода:
1,2 - Невыполнимо на более-менее нетривиальной задаче
5 - На каком железе и объеме данных? Как это спрогнозировать на этапе разработки?
6 - Это не всегда верно, бизнес-задачи бывают разные.
8 - А если я пишу с нуля?

Работа с хранилищем конфигурации
По моему надо переписать:

Разработка ведется с использованием СКВ, таких как хранилище 1С, git, svn и т.д.

(Ну а дальше подпунктом)
Работа с хранилищем 1С.
Показать
PLAstic; sapervodichka; +2 Ответить
9. sapervodichka 3588 13.01.20 17:09 Сейчас в теме
(8) ну как есть... до git ещё многие не дошагали, я только читаю, на практике, применять не удается, т.к. есть особенности работы в организации, когда руководители проектов тебя особо не слушают, а за инициативу можно и по шапке схлопотать
12. Indgo 13.01.20 17:48 Сейчас в теме
(9) Можно еще писать всякие приколы:
1. Парнь - если ты нашел до - этой строки - я знал что задача ипически сложная и каюсь, что писал каумнокод.
2. Если ты набрел на эту срочку и нашел тут ошибку.. то ты убер крут. Исправь баги и ты выйдешь на новый уровень матрицы.
3. Или так - медленно работает перепиши - все через запросы!
4. Или так - не нравится мой код - иди в баню!
5. Парень тебе обещали 300 тысяч за этот проект - имей в виду до тебя тут 10 прогеров кинули.
itriot11; wowik; json; Capitullo; acanta; qazaz2; +6 Ответить
13. capitan 1682 13.01.20 18:34 Сейчас в теме
Вспоминается...
Самый бесполезный лайфхак - ставить крестик на руке, чтобы не забыть! БЛИН!!! НЕ ЗАБЫТЬ ЧТО?!
Я бы еще добавил пункт - периодическая ревизия доработок.
И внесение в комментарий поля - это новый функционал или исправление ошибок
Если часто меняются главбухи - то через пол-года можно смело все зачищать и если никто не вспомнит - так и оставить
Alex17; fomix; +2 Ответить
14. vkm1980 5 13.01.20 19:49 Сейчас в теме
Комментарии старого когда это зло, Если конфигурация разрабатывается с нуля то репозиторий Вам в помощь для того, чтобы понять кто что изменил/добавил. Программный код должен быть самодокументированным. Комментириев вообще должно быть минимум, и главное они должны быть только в самых не очевидных местах. Представьте что Вы раскомментируете программный код по прошествии например года, а некоторых объектов то уже и нет в конфигурации.
frying; sashocq; Bell; +3 Ответить
15. Cерый 16 13.01.20 19:52 Сейчас в теме
Не нужно комментировать изменение, если код не типовой. Комментарий должны быть только для изменений относительно типового кода. При изменении ранее измененного куска кода необходимо изменить только дату изменения в комментарии - разделяю https://infostart.ru/public/647048/ (любое изменение кода обязательно должно быть прокомментировано), предлагаю аргументировать Вашу позицию
sapervodichka; +1 Ответить
23. sapervodichka 3588 13.01.20 22:42 Сейчас в теме
16. metmetmet 79 13.01.20 20:25 Сейчас в теме
Любые изменения конфигурации должны быть максимально реализованы с помощью Расширений конфигураций

Как много возникает различных расширений в рамках одного проекта?
Какими правилами руководствуетесь при принятии решения о доработке существующего расширения или создании нового? Легко искать доработки, если расширений много?
17. sapervodichka 3588 13.01.20 20:32 Сейчас в теме
(16) Например, Пищевое производство: Основная конфигурация ERP + Основное расширение Пищевка + Дополнительное расширение интеграция с УАТ + Доп расширение интеграция с EDI + Доп расширение Интеграция с внутренней системой.(4 расширения)
18. sapervodichka 3588 13.01.20 20:33 Сейчас в теме
(16) Легко ли искать доработки, если расширений много... если хорошо документировать, то легко.
19. metmetmet 79 13.01.20 20:46 Сейчас в теме
При доработке типового функционала
в расширении сложнее анализировать новые изменения в типовой конфигурации по сравнению с доработкой самой конфигурации, не так ли?
20. sapervodichka 3588 13.01.20 20:52 Сейчас в теме
(19) нет, не так ли. Зависит от того как документировать доработки. И в расширении мы формы объектов не меняем (даже зачастую не перетаскиваем), все выводим динамически, а фишки расширений &После и &Вместо дают классные плюшки при обновлении.
21. sapervodichka 3588 13.01.20 20:57 Сейчас в теме
(20) (направление я уловил) Я не против и просто конфигурацию менять, там можно тоже всё аккуратненько делать, сохраняя обновляемость. Можно и так и ч/з расширения. Например, в ЕРП пока нельзя делать регистры накопления в расширении и с некоторыми типами объектов, есть проблемы доработки в связи с не включенной пока совместимость с 8.3.13. Её вроде в ЕРП хотят в 2020 году в ЕРП включить. Поэтому расширения в ЕРП ещё не совсем взлетают.
26. Kindman1980 81 15.01.20 14:54 Сейчас в теме
(21) у меня кстати были проблемы с реквизитами в расширении. Была такая проблема с журналом банковские выписки в бухглтерии и с поступлением безналичных денежных средств. Реквизиты сначала были в расширении, но потом для исправления нужно было ТИИ делать при отключенном расширении, в результате пришлось дублировать реквизит в конфигурацию, делать обработку по переносу данных. Понял что в расширении я пока только визуально-интерфейсную часть оставлю и не более.
Дмитрий74Чел; +1 Ответить
22. metmetmet 79 13.01.20 21:09 Сейчас в теме
(20) Не претендую на последнюю инстанцию, но при обновлении конфигурации есть очень удобный механизм тройного сравнения, чего нет при реализации доработок с помощью расширений.
kolya_tlt; max_zhilin; mevgenym; sapervodichka; +4 Ответить
36. kolya_tlt 24 05.03.20 09:28 Сейчас в теме
(22)
танцию, но при обновлении конфигурации есть очень удобный механизм тройного сравнения, чего нет при реализации доработок с помощью расширений.

именно поэтому не используем их, так как на этапе обновления не известно сломаются ли расширения или нет.
24. comol 4344 13.01.20 23:05 Сейчас в теме
На дворе стоял 2020-й.... на инфостарте продолжали появляться статьи про правильный авторский комментарий :(((((((((((((((((((
frying; sashocq; kolya_tlt; +3 Ответить
27. SuhoffGV 15.01.20 17:07 Сейчас в теме
(24) каждое десятилетие кэш базовых знаний обнуляется. Приходится обновлять
28. comol 4344 15.01.20 17:11 Сейчас в теме
(27) я к тому что гитом надо уметь пользоваться... Blame view. Не надо авторские комментарии писать
sashocq; sapervodichka; +2 Ответить
29. sapervodichka 3588 15.01.20 17:16 Сейчас в теме
(28) если надо, значит будем =)
37. kolya_tlt 24 05.03.20 09:29 Сейчас в теме
(24) к сожалению, это так :( до гита в массах нам еще лет 5
25. Kindman1980 81 15.01.20 14:50 Сейчас в теме
Мне кстати понравилось использовать не префикс, а постфикс, на крайняк начинать название с подчеркивания. Тогда с сортировкой попроще. С постфиксом делали в Почте России на проекте.
max_zhilin; MaxTolya; Дмитрий74Чел; +3 Ответить
32. DoubleT 6 17.01.20 09:57 Сейчас в теме
Спасибо за статью, подскажите, а какие есть методы комментирования запросов в динамическом списке?
33. sapervodichka 3588 17.01.20 10:04 Сейчас в теме
(32) Переопределяете в ПриСозданииНаСервере() текст запроса динамического списка Список.ТекстЗапроса = "...новый ваш текст запроса..." или если нужно изменить кусочек запроса Список.ТекстЗапроса = СтрЗаменить(Список.ТекстЗапроса, "ИскомыйТекст", "НовыйТекст").
triviumfan; +1 Ответить
35. kolya_tlt 24 05.03.20 09:26 Сейчас в теме
по поводу изменения ролей в целом согласен, но есть одно НО. Стоит упомянуть, что нужно взвесить изменять типовую роль или создавать новую. Сделайте поиск по конфигурации по ключевому слову РольДоступна(" в ERP и удивитесь, что создав новую роль копирование вам придётся изменять типовую конфигурацию. Самый яркий пример с ролью ЗачетОплаты
38. MishaD 14 05.03.20 09:50 Сейчас в теме
За несколько лет изменений в одной обработке авторских комментариев стало в половину кода. Читаемость резко упала.
39. maxx 906 05.03.20 20:34 Сейчас в теме
А элементы БСП являются типовыми в составе той же Бухгатерии? В них можно вносить изменения? Не нужно же рядом свои такие же подписки, определяемые типы со свои префиксом лепить?
40. PLAstic 253 06.03.20 17:32 Сейчас в теме
п.8 имеет исключение. Если объект не типовой, а добавленный в процессе разработки, то вынесение его изменений в расширения добавит сумятицы. Это итак наш документ, пусть он будет "цельный", описанный одной сущностью.
41. kosmo0 97 12.03.20 11:27 Сейчас в теме
"Не нужно комментировать изменение, если код не типовой. Комментарий должны быть только для изменений относительно типового кода. При изменении ранее измененного куска кода необходимо изменить только дату изменения в комментарии."


При "изменении ранее измененного" НА СРЕДНЮЮ ПЕРСПЕКТИВУ в комментариях всегда оставляю даты прошлых изменений. Иначе возможна ситуация когда приходят через полгода-год и говорят - вот два года назад так работало, а сейчас совсем не правильно (например документ который с каким-то видом операции проводится раз в два-три года). Если не помнить об предыдущих изменениях либо изменения делались совсем другим человеком, то найти ошибку будет очень трудно - нет информации что два года назад код был иным. Конечно если покопать, то все можно найти, но время и лишние усилия потеряны. У вас есть лишнее время - замечательно. если его нет - все совсем не замечательно.

Следующее замечание относится к ситуациям если изменения не делаются "по серьезному", то есть без "[Номер тех.задания или заявки]". Бывали случаи когда изменения продавливаются вопреки аргументам программиста (вроде мы тебя выслушали, но сделай как мы сказали). Можно потратить массу времени на уговоры и аргументацию, а можно в комментарии написать - указание главбуха Петровой. И случись что - всегда можете сказать "а я предупреждал". Но, хотелось бы предупредить, что такое работает только в более-менее адекватных организациях. В ином случае (юные падованы 1с) пишите служебную записку с своими предупреждениями и аргументами и фиксируйте их в документообороте (это банальное прикрытие своей задницы официальной бумажкой).
Оставьте свое сообщение
Вопросы с вознаграждением