|
Куда поместить общий код из двух расширений? программистище, elka302, Климов Сергей, probably, Кукуев, Telcher, АнализДанных, PLUT, Rulan87, laeg, zelenprog, Amra, dmt, Максимка_Космонавтом, zenik, lexx256, ttk, d_Fyodor, U4Me2, Обработка, SleepyHead, ads55, Web00001, DemonShinji2, Mafiozaa, ivanov-i-i, Тындр, AAA
| ☑ | ||
---|---|---|---|---|
0
zelenprog
02.10.24
✎
12:20
|
Добрый день!
Не так давно сделал расширение, назовем его Расширение1. В нем есть несколько общих модулей. Затем начал делать второе расширение - Расширение2. Функционально это расширение не имеет ничего общего с первым расширением. Но многие методы из общих модулей Расширения1 можно было бы использовать и в Расширении2. Дублировать код не хочется. Снимать с поддержки типовую конфигурацию тоже не хочется. Что можно сделать? Куда можно вынести общие модули (или отдельные методы) из Расширения1, чтобы их можно было использовать в Расширении2? |
|||
1
Telcher
02.10.24
✎
12:22
|
(0) В расширение 3
|
|||
2
zelenprog
02.10.24
✎
12:24
|
(1) А как потом использовать код из Расширения3 в других расширениях (в Расширении1 и в Расширении2)?
Вроде как они не "видят" друг друга. |
|||
3
Обработка
02.10.24
✎
12:33
|
(2) Слово "вроде" тут меня смущает.
|
|||
4
zelenprog
02.10.24
✎
12:43
|
(3) "Вроде" обозначает, что я попробовал - и сходу не получилось.
Но, Ваше смущение навело меня на размышления. И я попробовал еще раз. И все получилось! Спасибо. |
|||
5
PR
02.10.24
✎
12:49
|
(0) Общие модули (или отдельные методы), как и все остальное, из Расширения2 можно вынести в Расширение1, а Расширение2 можно вынести на помойку
|
|||
6
PR
02.10.24
✎
12:50
|
+(5) Особенно с учетом квалификации ТС, написавшего (2)
|
|||
7
Галахад
02.10.24
✎
12:58
|
Так не работает?
ОМ = Вычислить("ОМ1"); ОМ.СделатьХорошо(); |
|||
8
PR
02.10.24
✎
12:58
|
(7) Даже так работает
ОМ1.СделатьХорошо(); |
|||
9
Галахад
02.10.24
✎
13:01
|
(8) Вроде при компиляции должно упасть.
|
|||
10
osa1C
02.10.24
✎
13:05
|
(9) Оно ругнется, но работать будет
|
|||
11
zelenprog
02.10.24
✎
13:07
|
(8),(10) Подтверждаю: работает. И не ругается.
Недостаток только в том, что "Перейти к определению" не срабатывает. |
|||
12
PR
02.10.24
✎
13:11
|
(9) При какой, нахрен, компиляции?
1С ничего не компилирует, 1С интерпретирует на лету, перевод в байт-код не считается |
|||
13
PR
02.10.24
✎
13:12
|
(10) Ругнется только синтакс-контроль, на него начхать
|
|||
14
PR
02.10.24
✎
13:12
|
(11) Удивительно, да?
|
|||
15
zelenprog
02.10.24
✎
13:22
|
(13) Синтакс-контроль тоже не ругается.
(5) >> Общие модули (или отдельные методы), как и все остальное, из Расширения2 можно вынести в Расширение1, а Расширение2 можно вынести на помойку. Нет, это плохой подход. Так Расширение1 неимоверно распухнет. Удобнее вести разработку нескольких расширений, у каждого из которых свой функционал. Причем каждое расширение связано со своим Хранилищем. (6) >> Особенно с учетом квалификации ТС Квалификацию наработаем. Но чтобы наработать квалификацию - надо делать "правильно", и не искать обходных путей. |
|||
16
dmt
02.10.24
✎
13:24
|
(0) делай одно расширение, если они будут работать вместе и все равно зависимость появляется
или дублируй код, если они должны работать по отдельности |
|||
17
zelenprog
02.10.24
✎
13:24
|
Кстати, сразу еще вопрос про использование расширениями друг друга...
Можно ли команду из Расширения2 разместить в подсистеме (в разделе) Расширения1? |
|||
18
dmt
02.10.24
✎
13:26
|
(15) ты пробовал? каждый раз при входе 20 раз подключаешься к 20ти расширениям и 20 раз получаешь изменения из хранилища?
|
|||
19
dmt
02.10.24
✎
13:26
|
(17) 🤦♂️
|
|||
20
zelenprog
02.10.24
✎
13:33
|
(16) >> или дублируй код, если они должны работать по отдельности
Да, они должны работать по отдельности. Но дублировать код плохо. Лучше уж тогда сделать типа "Расширение_Основное", которое содержит общий код, и "Расширение1" + "Расширение2", у которых разный функционал, и которые используют общие модули Расширения_Основного. >> ... все равно зависимость появляется Зависимость дело неизбежное. Любая программа на любом языке состоит из разных модулей, которые зависят друг от друга. Будь это C# или 1С. Главное правильно разделить эти зависимости. Должны соблюдаться SRP, LSP, ... |
|||
21
PR
02.10.24
✎
13:32
|
(17) Пиздец
|
|||
22
Галахад
02.10.24
✎
13:34
|
Каждый учится на своих ошибках. Нафиг учиться на чужих. ))
|
|||
23
PR
02.10.24
✎
13:35
|
(22) Не, по ходу ТС ничему не учится
Упоротый говнокодер детектед |
|||
24
maxab72
02.10.24
✎
13:39
|
"Лучше уж тогда сделать типа "Расширение_Основное", которое содержит общий код, и "Расширение1" + "Расширение2", у которых разный функционал, и которые используют общие модули Расширения_Основного."
А потом кому-то для 25-ого объекта в 130-ом расширении потребовалось чуток поправить процедурку, которую зачем-то вызывают из раширения_основного... |
|||
25
Мультук
02.10.24
✎
13:39
|
Почему то вспоминается тема, где автор команду в интерфейсе видит, а какое из многочисленных расширений её добавляет уже не помнит. И найти не может :-)
|
|||
26
zelenprog
02.10.24
✎
13:39
|
(22) Так вот чтобы не делать ошибок, поэтому я и спрашиваю совета у более "квалифицированных" коллег.
Про ошибки по вопросу использования одним расширением другого расширения тут пока еще никто не упоминал. Если в этом вопросе есть какие-то "подводные" камни - пожалуйста, объясните. |
|||
27
zelenprog
02.10.24
✎
13:43
|
(24),(25) >> А потом кому-то для 25-ого объекта в 130-ом расширении потребовалось чуток поправить процедурку ...
>> ... автор команду в интерфейсе видит, а какое из многочисленных расширений её добавляет уже не помнит ... Так ведь это проблема проектирования, а не расширений. Если программа спроектирована плохо - там и без расширений все будет запутано и ничего работать не будет при малейших изменениях. А если спроектирована хорошо, то и 130 расширений будут работать слаженно, и изменения не будут приводить к ошибкам. |
|||
28
maxab72
02.10.24
✎
13:46
|
(27) если у вас все спроектировано идеально, то в чем вопрос?
|
|||
29
zelenprog
02.10.24
✎
13:52
|
(23) >> Не, по ходу ТС ничему не учится
>> Упоротый говнокодер детектед Аргументируй. Без аргументов - это болтовня и желание самоутвердиться. Ты не мог сделать выводов о моем коде, так как вопросов о коде не было. С таким же успехом я могу в твою сторону написать тоже самое. |
|||
30
zelenprog
02.10.24
✎
14:02
|
(28) >> если у вас все спроектировано идеально, то в чем вопрос?
Оно еще не спроектировано, пока еще находится в процессе проектирования. Но чтобы грамотно спроектировать, надо знать какие возможности есть у платформы в плане "связывания" модулей (модуль в широком смысле). Вот с этим и был связан вопрос - какие есть возможности у платформы, чтобы из одного модуля (расширения) использовать другой модуль. |
|||
31
bolder
02.10.24
✎
14:08
|
(30) Ну не видят расширения друг друга.И отказ от синтакс контроля не приветствую.Не нужно так делать.Удобства разработчика выше ценятся, чем возможность налепить "на авось".
Если у вас появились "золотые" методы,которые вы используете в разных расширениях,делайте их отдельным модулем расширения, без заимстврвания кода основной конфигурации, разными версиями.А если "золотые" методы заимствуют типовой код - то налицо ошибка в проектировании расширения1 и расширения2. |
|||
32
zelenprog
02.10.24
✎
14:06
|
(31) >> Ну не видят расширения друг друга.
Правильней сказать, что расширения видят друг друга, но ограниченно (не "полноценно"). (31) >> И отказ от синтакс контроля не приветствую. Согласен. Есть над чем подумать. |
|||
33
PLUT
02.10.24
✎
14:13
|
недавно франч доработку свою в виде расширения прислал (погромисту так было удобнее)
два дня протратил, чтобы весь этот бред аккуратно перенести в пофигурацию, а расширение "вынести на помойку" © PR такого насмотрелся :) не ругайте погромистов - они погромируют как умеют |
|||
34
PLUT
02.10.24
✎
14:31
|
ТС-у для расширения кругозора навскидку:
https://infostart.ru/1c/articles/1960294/ https://infostart.ru/1c/articles/1211271/ вот еще конвертатор для удобства https://github.com/best-tech/cfe2cf |
|||
35
maxab72
02.10.24
✎
14:27
|
(32) представьте себе, что у вас есть два расширения, первое с типом адаптация, а второе - дополнение. Второе будет видеть методы первого, а первое второго нет.
А если оба с типом адаптация, то первое то будет видеть метод первого, то нет и наоборот. Поэтому идея выносить что-то в "общее расширение" крайне сомнительная. |
|||
36
AAA
02.10.24
✎
14:38
|
Древние лудисты ломали станки. Современные - переносят функционал из расширений в основную конфу
(33)можете хотя бы кратко пояснить почему стали это делать, иначе не усматривается ничего, кроме Вашей нелюбви к расширениям. Я не фанат расширений, как и не фанат 1с вообще, но интересно чем одно зло стало предпочтительнее другого. |
|||
37
Wern
02.10.24
✎
14:39
|
Дорабатываем сейчас конфигурацию там 28 расширений и это жесть. Учитывая что для поиска по расширениям нужно их все открыть, вечный квест а найди где внесли какие то реквизиты или поправили код. А когда накатывается обновление конфигурации и часть расширений отваливается. И когда за разные расширения отвечают разные люди, а то и разные организации. И в тех местах где эти расширения используют друг друга это жесть в квадрате. Или вот сегодня на продуктиве документ реализации перестал проводится. Надо на тесте проверить и я сижу и убиваю кучу времени обновляя каждое расширение на тесте версией с продуктива.
|
|||
38
PLUT
02.10.24
✎
14:49
|
(36) коротенько:
куча лишних заимствованных объектов пофигурации, которые впоследствии не используются (на вырост наверное) куча кода закомментирована, есть неспользуемые куски кода (ну я реfuckторинг кода не делал, не было желания погружаться...) вишенка на торте - &Вместо закоментированы простыни запросов из типового кода и следом новый код запроса творчески доработанный и с костылями и еще вдобавок причесанный (как потом это дерьмо поддерживать?) два дня протратил в основном на сравнение текстов запросов и расстановку комментариев //{неизвестный го.внокодер начало ... //неизвестный го.внокодер кончало} ну и естественно весь шлак ненужный вынес на помойку :) перенес то, что действительно используется |
|||
39
AAA
02.10.24
✎
14:47
|
(37)как минимум - составьте список добавленных реквизитов, чтобы не открывать расширения каждый раз. У Вас просто недокументированная доработка. Причем тут расширения
|
|||
40
AAA
02.10.24
✎
14:55
|
(38)Есть обычный для 1с запрос, примерно на 1500 строк. Его нужно поправить. И как Вы правите? просто грубо ножом в тексте? Изменился типовой запрос, Вы глазами ищете отличия и пропускаете. А "Вставить" и "Удалить" хотя бы ловит эту ситуацию. Лично я пока не увидел причины по которой Вы переносите все обратно.
"Вместо" бывают почти равны исходному тексту, но это 1С делает такие коды размером с гектар. "Вместо" с "ПродолжитьВызов" бывает очень кстати. Главный плюс расширения - это обновление. Часто оно значительно проще. Но со своими тараканами |
|||
41
PLUT
02.10.24
✎
14:57
|
(40) причина банальная - поддержка
плюс расширения - это костылик вставить временный (патчи в терминологии 1С) на этом плюсы заканчиваются |
|||
42
AAA
02.10.24
✎
14:58
|
(36)не факт, что прежний говнокодер. Возможно его подход не совпал с Вашим. Следующий назовет Вас говнокодером. Но про расширения так почти ничего и нет, в основном про говнокодера
|
|||
43
AAA
02.10.24
✎
15:01
|
Причина похоже религиозная )
|
|||
44
PLUT
02.10.24
✎
15:03
|
(40) да о чем спорить? я вас не агитирую. Расширяйте на здоровье
— Я тебе не верю! — А я тебя ни}{уя и не убеждаю… Это факт… ©Большой Куш(спиздили) когда пофигурация на поддержке и фирма 1С повышает версию дикпика (ДП, LTS раньше называлось), то очень легко обновлять с использованием внешних программ Очевидно, что самый сложный этап в обновлении конфигурации - сравнение программных модулей и анализ произведенных доработок. Поэтому использование расширений очевидно - необходимо по максимуму перенести программный код из основной конфигурации в конфигурацию расширений. Для этого существует несколько аннотаций: &Перед, &После, &Вместо и &Вместо (с контролем). В рамках нашей концепции рекомендуется использовать лишь две из них: &Перед и &После. Переносимый в расширения код должен компилироваться и правильно отрабатывать после каждого обновления. Код прописанный До или После типового метода обычно не подвергается критическим ошибкам - он носит, по большей части, дополняющий характер.
в ж.пу эти концепции |
|||
45
AAA
02.10.24
✎
15:07
|
(44)я и не спорю. Просто всегда настораживает категоричность в суждениях
|
|||
46
Мультук
02.10.24
✎
15:10
|
(44)
>> он носит, по большей части, дополняющий характер А потом 1С хер@к и удаляет функции, модули рефакторит И машет рукой расширениям P.S. Обновил ЗУП РегистрСведений.НастройкиТранспортаОбмена превратился в Справочник.НастройкиТранспортаСообщенийОбмена Зачем? Что плохого было в регистре? Чем справочник кошернее ? |
|||
47
PLUT
02.10.24
✎
15:10
|
(40)
Вы глазами ищете отличия и пропускаете. А "Вставить" и "Удалить" хотя бы ловит эту ситуацию. Лично я пока не увидел причины по которой Вы переносите все обратно.
не нужно ничего глазами искать и пропускать внешние программулины kdiff/p4merge сами всю работу делают, нужно только конфликты глянуть и принять решение по каждому |
|||
48
dmt
02.10.24
✎
15:10
|
(37) просто спроектировано не очень 🤣 а так было бы супер
|
|||
49
dmt
02.10.24
✎
15:15
|
(39) мелковато. Надо выучить наизусть код 28 расширений, тогда и открывать не надо, и документация не понадобится
|
|||
50
zelenprog
02.10.24
✎
15:17
|
(35) >> представьте себе, что у вас есть два расширения, первое с типом адаптация, а второе - дополнение.
>> Второе будет видеть методы первого, а первое второго нет. >> А если оба с типом адаптация, то первое то будет видеть метод первого, то нет и наоборот. Если это действительно так, то это печально. Я когда в (11) писал, что работает, я проверял на двух расширениях, оба имеют назначение "Дополнение". |
|||
51
zelenprog
02.10.24
✎
15:22
|
(49) >> Надо выучить наизусть код 28 расширений, тогда и открывать не надо, и документация не понадобится
Другого варианта нету: либо четкая документация и разумное проектирование, либо надо знать все "хитрости" наизусть. Либо долго сидеть в отладчике, чтобы узнать эти "хитрости", если код незнакомый. Требуют же некоторые работодатели знания БСП. А какая разница - знать БСП или знать конкретное расширение\модуль, которые используются в конфигурации? |
|||
52
PLUT
02.10.24
✎
15:22
|
(43) причина скорее всего в здравом смысле
почитайте хотя бы еще раз до просветления (37) 28* расширений и расширение расширением погоняет и про своих тараканов в (40) Главный плюс расширения - это обновление. Часто оно значительно проще. Но со своими тараканами |
|||
53
PR
02.10.24
✎
15:24
|
(26) Более квалифицированных коллег ты посылаешь нафиг с их мнением
Так что не нужно тут ля ля |
|||
54
PR
02.10.24
✎
15:26
|
(29) Тебе уже аргументировали
Куча связанных задач в разных расширениях — это говнокод Потому что общие алгоритмы, общие объекты и вообще каша, кто там что где менял и что в результате всего этого вермута должно быть Но ты же у нас самый умный, у тебя свое мнение, ну вот и развлекайся |
|||
55
AAA
02.10.24
✎
15:26
|
(52)здравый смысл - это так, как делаете Вы. Все остальное - нездравый и говнокодерство. Что тут обсуждать, кроме деклараций. Ну не любите расширения - не любите. Я тоже не люблю. Но не отвергаю. Вот и вся разница.
|
|||
56
PLUT
02.10.24
✎
15:32
|
(55) не люблю бестолковой работой заниматься
расширения использую исключительно только поставить временный костыль (пока пофигурацию продуктива нельзя обновить, а пользователи страдают) ну и патчи типовые от 1С, которые они иногда прям очень много выкладывают патчи эти протухают (удаляются), когда версия изменяется у типовой (но появляются новые) и да, конфа продуктива подключена к хренилищу. все доработки и изменения - через хренилище пофигурации и ни одного хренилища для расширений :) ибо нех.й |
|||
57
PR
02.10.24
✎
15:30
|
(45) Категоричность касается в основном использования нескольких расширений, по одному для каждой задачи
|
|||
58
maxab72
02.10.24
✎
15:38
|
(46) а релизов через 20 снова сделают регистром сведений...
|
|||
59
PLUT
02.10.24
✎
15:41
|
Расширение 1С – возможность доработки типовой конфигурации с сохранением типовой поддержки
что я делаю не так, если у нас конфигурация с сохранением типовой поддержки и есть возможность дорабатывать без расширений? ну конечно, без расширений никуда, когда абоненты и прочие фреши со смузи Расширения незаменимы тогда, когда прикладное решение работает в режиме разделения данных. Например, в модели сервиса. Один из абонентов хочет иметь пару дополнительных отчётов. В то время как остальные абоненты хотят работать с неизмененной типовой конфигурацией.
то время как остальные абоненты хотят работать -я бы сказал "вынуждены", а не хотят :) |
|||
60
zelenprog
02.10.24
✎
15:52
|
(54) >> Тебе уже аргументировали
В этой теме не могли что-то аргументировать насчет говнокода, так как мы даже не обсуждали этот вопрос. Взаимозависимости модулей - это вопрос проектирования\архитектуры, а не кода. >> Куча связанных задач в разных расширениях — это говнокод А где есть куча связанных задач в разных расширениях? У меня? С чего ты это взял? Я несколько раз написал - функциональность (то есть решаемые задачи) расширений разная. То что эти расширения должны вызывать некие общие методы - это не признак говнокода. Допустим, во всех расширениях вызывается метод "СтрЗаменить(...)" - это что сразу все расширения стали говнокодом? Это нормально, и даже хорошо - группировать и выносить методы в какой-то отдельный модуль, если эти методы связаны по смыслу и вызываются из других модулей. Например, та же БСП. Не зря же многие методы вынесены в платформу 1С. Они для того и вынесены в одно общее "место", чтобы ими могли пользоваться все другие модули. У меня такая же ситуация. Есть много "наших" методов, которые нужны в разных расширениях. Например, есть функция "ПодготовитьИмяПользователяВКорпоративномФормате()", который используется во всех сообщениях во всех наших расширениях для вывода сообщений пользователям. Глупо в каждом расширении иметь копию этого метода. Соответственно, хорошо бы этот метод куда-то вынести так, чтобы он был доступен во всех расширениях. Если платформа позволяет это сделать - прекрасно - это лучший вариант. Если платформа не позволяет этого сделать - это плохо, но придется с этим смириться, деваться некуда. Но какое это отношение имеет к говнокоду? Это вообще никаким боком к коду не относится. >> Более квалифицированных коллег ты посылаешь нафиг с их мнением Это кого же я послал? Наоборот - я всех всегда внимательно слушаю. А иначе как можно выбрать какой-то вариант? Надо выслушать несколько мнений, обдумать, попробовать. |
|||
61
Dmitrii
02.10.24
✎
15:49
|
(40) >> Главный плюс расширения - это обновление.
Это скорее главный минус. В случае изменения в очередном обновлении некоего модуля фактически невозможно предсказать - как поведёт себя расширение. Есть только два способа - полноценное тестирование со всеми вариантами входящих данных, во всех возможных вариантах использования (клиент, сервер, вебклиент, интерактивная работа пользователя, автоматизированная работа обработко и т.д. и т.п.). Либо глазками проверять каждый метод в расширении и много думать - как оно будет работать с учётом тех изменений, которые сделал вендор. И это только верхушечка айсберга. Потому что бывает, что вендор меняет полностью логику некоторых подсистем. Создаёт новый программный интерфейс. И при этом оставляет часть старого. Типа для совместимости. В реальности те процедуры и функции, которые Вы в своём расширении доработали фактически больше ниоткуда не вызываются. Синтакс-контроль и проверка применимости расширения проходятся на ура. А потом, спустя полгода, прибегает экономист из планово-экономического с глазами по 5 рублей и криками, что у него в данных за последние полгода полная каша. Начинаем разбираться и выясняется интересное. Уже полгода Ваше расширение тупо не используется и хитрое дозаполнение нужных экономисту реквизитов, регистров и т.п. при проведении каких-то документов не происходит. А на этих реквизитах вся логика закрытия периода доработана. Конечно похожие косяки могут быть и при доработке в самой конфигурации. Однако в случае доработок внутри конфы при трёхстороннем сравнении во время обычного обновления до 90% таких финтов можно увидеть глазами. В случае расширения такого не увидишь никогда. А если у Вас с десяток расширений.... И часть объектов расширены в разных расширениях.... И расширения эти писались разными людьми и в разное время и с разным уровнем документирования (от полного до "ни строчки коментов")... Это просто сказка. Расширения - это не панацея. Это инструмент, которым надо уметь пользоваться. Пользоваться очень аккуратно и осторожно, помня о его довольно значительных ограничениях. По сути PLUT прав в (41): "плюс расширения - это костылик вставить временный (патчи в терминологии 1С). На этом плюсы заканчиваются". Подписываюсь под каждым словом. Единственное что можно добавить к этому это в случаях использования БСП: - Подсистема подключаемых команд (печати, заполнения и т.п.) - Подсистема дополнительных отчетов, обработок и печатных форм (то что раньше делалось через внешние отчеты и обработки). Тут тоже предпочтительнее расширения, чем вмешательство в конфу или использование устаревших внешних отчетов и обработок. |
|||
62
PR
02.10.24
✎
16:01
|
(60) ЧТД
|
|||
63
PLUT
02.10.24
✎
16:27
|
(55) а вы жалуетесь или хвастаетесь :)
а мы покупаем или продаём? погромисту из франча расширение удобно, т.к. ему нужно вставить свой код согласно задаче/ТЗ и "нате вам, тестируйте". чтобы его в хренилище пустили - это ж надо NDA, учетку в AD, учетку в хренилище... ну или тестовый контур отдельный разворачивать без подключения к хренилищу... погромисту "в штате" - расширение не удобно, поэтому все сторонние доработки из расширений переношу в пофигурацию |
|||
64
osa1C
02.10.24
✎
17:27
|
(60)
Например, есть функция "ПодготовитьИмяПользователяВКорпоративномФормате()", который используется во всех сообщениях Начнем с того, что если эта функция есть, то ее вообще глупо в расширение тянуть |
|||
65
Web00001
02.10.24
✎
18:52
|
(61)>Создаёт новый программный интерфейс. И при этом оставляет часть старого. Типа для совместимости.
Если в названии области написано, что это программный интерфейс, другого интерфейса для этой функциональности не будет. В этом вся суть интерфейсов. Ты можешь опираться на то, что он не изменится. >Однако в случае доработок внутри конфы при трёхстороннем сравнении во время обычного обновления до 90% таких финтов можно увидеть глазами Можно увидеть. А можно и не увидеть. 90% это цифра с потолка, на самом деле 50% - или увидишь или нет. Как повезет. Рассчитывать я бы на это не стал. К примеру есть метод1 который вызывает метод2(который ты изменил) который вызывает метод3 который реализует нужный тебе функционал. Вендор изменит метод1. Ты с чистой совестью при обновлении перенесешь изменения в метод2. Но он перестанет вызываться и метод1 будет вызывать метод4. Сравнение не покажет ничего(ты же не изменял метод1). Расширения не панацея. Изменять конфигурацию не панацея. Ничто не панацея, только сама панацея - панацея. Перед установкой не поленись уж, прочти патчноут. Что там ставишь то и не затрагивает ли это доработанный функционал. А если затрагивает протестируй после обновления как работают твои доработки. >Единственное что можно добавить к этому это в случаях использования БСП В случае с БСП там почти на каждый чих есть переопределяемые модули. В которые можно писать. что угодно - вендор туда писать не будет точно. |
|||
66
Web00001
02.10.24
✎
18:55
|
(46)>Обновил ЗУП РегистрСведений.НастройкиТранспортаОбмена превратился в Справочник.НастройкиТранспортаСообщенийОбмена
Ну скорее всего непосредственно ЗУП здесь наверное даже и не при чем. Скорее всего, это обновилось БСП. Оно отвечает за обмены данными. И разрабы ЗУПа даже не заметили регистр там или справочник, потому, что используют для работы с транспортами функции из интерфейсного раздела модуля "ОбменДанными". А ты конечно заметил. Потому, что читаешь данные напрямую. Ты и кадровые данные в ЗУП берешь из регистров\справочников а не из представлений? Тогда у тебя впереди еще много таких разочарований. |
|||
67
Тындр
03.10.24
✎
04:39
|
(0) Гусары, молчать!
|
|||
68
zelenprog
03.10.24
✎
08:45
|
(64)
>> Например, есть функция "ПодготовитьИмяПользователяВКорпоративномФормате()", который используется во всех сообщениях
Начнем с того, что если эта функция есть, то ее вообще глупо в расширение тянуть А куда ее лучше поместить, если не в расширение? Я то не против. Главное, чтобы такие "общие" методы можно было выделить в какой-то отдельный "логический блок" кода. И при этом желательно не снимать с поддержки типовую конфигурацию. Просто платформа 1С для этого предоставляет очень скудные возможности. Похоже, что расширение - это единственная из таких возможностей. Разве нет? Какие еще есть варианты? |
|||
69
Климов Сергей
03.10.24
✎
09:18
|
(68) Ну, таки включить возможность изменения в конфигурации. Никакие объекты с поддержки не снимать, добавлять только свои общие модули (или другие объекты). А работу с ними выносить в расширения типовых объектов.
Время обновления конфигурации увеличится примерно вдвое :-( |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |