gifts2017

Библиотека стандартных подсистем (БСП) с префиксами к объектам метаданных

Опубликовал Егор Ермаков (mentos) в раздел Программирование - Инструментарий

Многие из тех, кто внедрял подсистемы БСП в УПП и в другие типовые конфигурации, потеряли немало времени из-за проблемы одинаковых имен объектов метаданных в типовой конфигурации и БСП.  Я углядел в этом вселенскую несправедливость и тайный заговор, ведь если представить - сколько сотен человеко-часов потеряно в этом мире из-за того, что в «1С» решили, что «БСП – это основа» и поэтому ей не нужны префиксы – мне неприятно подумать.  Ведь это же «библиотека». Ну как так...

Поэтому у меня возникла идея добавить объектам БСП заслуженный ими префикс «БСП_». Так я и сделал.

Не знаю как «1С» может отнестись к этой публикации, поэтому выкладываю только CFU,  чтобы получить «БСП с префиксами» нужно иметь оригинальную версию БСП полученную с сайта users.v8.1c.ru или ИТС (или ещё каким-либо легальным способом).

Поэтому рекомендованный план внедрения такой:

  1. Устанавливаем оригинальную БСП
  2. Обновляем её до «БСП _»
  3. Создаем поставку этой конфигурации и уже её подключаем к нашей конфигурации

Файлы:

  1. 1.2.2.3_1.0.0.2.cfu – основана на версии БСП 1.2.2.3
    1. Обновиться можно с оригинальной версии БСП 1.2.2.3
  2. 2.0.1.6_1.0.0.4.cfu  – основана на версии БСП 2.0.1.6 (ознакомительная версия)
    1. Обновиться можно с оригинальных версий БСП 1.2.2.3 и 2.0.1.6
    2. Эта версия тестировалась меньше, зато избавилась от многих «болезней» (добавление префиксов к объектам не требующих этого: формам объектов, элементам формы, внутренним переменным, функциям и т.д.)

Известные проблемы:

  1. Для планов обмена «ОбменВнешнимиЗаданиями» и «ОбменВнешнимиЗаданиямиС1СДокументооборот» существуют макеты «ПравилаОбмена» и «ПравилаРегистрации» до правильного редактирования которых у меня так и не дошли руки.

Пока я обновлял 1.2.2.3 на 2.0.1.6, вышла версия 2.0.1.9, где вновь изменилось огромное количество объектов и самым частым изменением стало: изменение комментариев. Поэтому следующее обновление я скорее всего буду делать после официального выход версии 2.0.

Надеюсь, кому-нибудь потраченное мной время позволит сэкономить своё.

Спасибо за внимание!

PS:

Пишите ошибки - буду править :)

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
2.0.1.6_1.0.0.4.cfu
.cfu 5,08Mb
18.03.12
40
.cfu 5,08Mb 40 Скачать
1.2.2.3_1.0.0.2.cfu
.cfu 4,01Mb
18.03.12
14
.cfu 4,01Mb 14 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Алексей Прилепский (IamAlexy) 19.03.12 00:39
Предлагал разработчикам БСП префиксы ввести еще на осенних конференциях.. сказали что принципиально по идеологическим соображениям этого делать не будут...

основная причина в том что бсп это ОСНОВА для будущих решений, то что сейчас оную встраивают - это личные проблемы встраивателей.. в будущем БСП по сути будет составлять основу приложений, по этому префиксы ей в принципе не нужны
unknownDaemon; +1 1 Ответить
2. Сергей Ожерельев (Поручик) 19.03.12 01:52
Я бы тоже не стал использовать эту работу именно по этим же соображениям, плюс вопрос обновлений.
3. Максим Зудин (kasper076) 19.03.12 08:10
А можно ли через выгрузку/загрузку текстов модулей добавить префиксы?
4. Евгений Сосна (pumbaE) 19.03.12 12:12
(3) kasper076, ты только модули исправишь. А наименования объектов?
5. Максим Зудин (kasper076) 19.03.12 12:32
(4) pumbaE, ну вот про это я и спрашивал. Т.е. присвоение префиксов ИД объектом возможно только в ручном режиме? Пичалька.
6. Евгений Сосна (pumbaE) 19.03.12 12:34
(5) kasper076, нет можно еще и v8unpack разобрать, проийтись и поменять наименования и потом обратно собрать.
7. Максим Зудин (kasper076) 19.03.12 14:05
(6) pumbaE, я сейчас порыл инет на эту тему. Нашел что Enterprise-integrator вроде как может решить эту задачу.
8. Егор Ермаков (mentos) 19.03.12 14:37
(1) IamAlexy,
"в будущем" - да. но когда это будущее наступит? когда текущие клиенты на доработанных УПП будут готовы пройти новый цикл внедрения чтобы перейти на УПП 2.0, которое само ещё года через полтора только выйдет? :(
9. Егор Ермаков (mentos) 19.03.12 14:46
(2) Поручик,
согласен, что вопрос обновлений - очень "неприятный" в решении поставить эту модификацию библиотеки.

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

но при этом обновления я всё же буду стараться делать, как минимум при официальном выходе БСП 2 и дальше в зависимости от того какому количеству людей эта тема будет интересна.
10. Егор Ермаков (mentos) 19.03.12 14:49
(7) kasper076, (6) pumbaE,
при автоматическом переименовании объектов есть ещё проблема, когда имя объекта метаданных генерируется манипуляциями со строчками. а в БСП этого "добра" хватает.
11. Егор Ермаков (mentos) 19.03.12 14:52
так же если честно не знаю может ли v8unpack показывать запросы динамических списков на форме.
12. Евгений Сосна (pumbaE) 19.03.12 18:47
(11) mentos, кусок из разобранной упр. формы с дин. списком из запросом.
{0,25,"QueryText",
{"S","ВЫБРАТЬ
	Валюты.ПометкаУдаления,
	Валюты.Код,
	Валюты.Наименование,
	Валюты.НаименованиеПолное,
	КурсыВалют.Курс,
	ВЫБОР 
		КОГДА КурсыВалют.Кратность = 1 ТОГДА
			"" ""
		Иначе
			""руб. за""
	Конец Как РубЗа,
	ВЫБОР 
		КОГДА КурсыВалют.Кратность = 1 ТОГДА
			"" ""
		Иначе
			КурсыВалют.Кратность
	Конец Как Кратность,
	ВЫБОР 
		КОГДА КурсыВалют.Кратность = 1 ТОГДА
			"" ""
		Иначе
			Валюты.Наименование
	Конец Как КраткоеНаименование
ИЗ
	Справочник.Валюты как Валюты
ЛЕВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ	
	РегистрСведений.КурсыВалют.СрезПоследних(&КонецПериода) КАК КурсыВалют
ПО Валюты.Ссылка = КурсыВалют.Валюта"},"MainTable",
{"#",fc01b5df-97fe-449b-83d4-218a090e681e,1d6b8425-360c-4ab1-9bab-cc9a3b590bb2},"MainTableCategory",
{"N",1},"DynamicalDataSelection",
{"B",0},"ManualQuery",
{"B",1},"FiledsMapItemId0",
{"N",1},"FiledsMapItemName0",
{"S","Code"},"FiledsMapItemId1",
{"N",3},"FiledsMapItemName1",
{"S","Description"},"FiledsMapItemId2",
{"N",4},"FiledsMapItemName2",
{"S","DeletionMark"},"FiledsMapItemId3",
{"N",5},"FiledsMapItemName3",
{"S","НаименованиеПолное"},"FiledsMapItemId4",
{"N",6},"FiledsMapItemName4",
{"S","ПараметрыПрописиНаРусском"},"FiledsMapItemId5",
{"N",7},"FiledsMapItemName5",
{"S","Period"},"FiledsMapItemId6",
{"N",8},"FiledsMapItemName6",
{"S","Кратность"},"FiledsMapItemId7",
{"N",9},"FiledsMapItemName7",
{"S","Курс"},"FiledsMapItemId8",
{"N",11},"FiledsMapItemName8",
{"S","РубЗа"},"FiledsMapItemId9",
{"N",12},"FiledsMapItemName9",
{"S","КраткоеНаименование"}
},
...Показать Скрыть
13. Роман Ершов (MRAK) 21.03.12 20:59
это на один раз. И огрести кучу проблем с обновлением БСП
14. Егор Ермаков (mentos) 21.03.12 21:11
(13) MRAK, с некой вероятностью обновления от меня выходить всё же будут. а вот самому внедрять БСП в УПП, это скорее всего действительно на 1 раз, ибо проблемы такие же, но ты их на себя берёшь :)
15. Егор Ермаков (mentos) 21.03.12 21:12
а вообще никого не принуждаю и даже не агитирую использовать эту конфигурацию.
просто надеюсь, что найдутся люди, которым она поможет сэкономить время и нервы.
16. Сергей Старых (tormozit) 22.03.12 01:22
Я лично считаю оптимальным использование суффиксов вместо префиксов. Код писать заметно быстрее с подсказкой, выбирать объекты метаданных удобнее и т.д.
mikhailv; l_oleg; okulus; kalach2002; baton_pk; buzzzard; Totoro; +7 Ответить
17. Dimon (klel) 23.03.12 20:33
Большое спасибо за информацию очень полезна =)
18. Доржи Балбаров (Angeros) 27.09.12 07:23
Думал что БСП в основе всех новых конфиг... а нет.
19. Сергей Ожерельев (Поручик) 27.09.12 10:45
(18) А где нет? УТ 11, УНФ, Розница 2, БП 3.0., Документооборот. Часть функционала есть в БП 2.0, будет в УТ 10.3.19.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа