Ивирсин Максим

39
Рейтинг

Mavin
Максим Ивирсин



  •   Регистрация: 16.03.2009 (15 лет назад)

  •   Был(а) на сайте: сегодня в 08:10

Друзья
  • Андрей А
Подписчики 4

Рейтинг 39

Сортировка метаданных с учетом префиксов

Статья Программист Платформа 1С v8.3 Конфигурации 1cv8 Windows Бесплатно (free) Нет файла Механизмы платформы 1С

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

18.09.2012    10397    Mavin    5       

15

Обработка для сравнения-объединения ролей

Инструменты и обработки Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m) Внешняя обработка (ert,epf) Инструментарий разработчика

Типовой функционал сравнения-объединения конфигураций в плане Ролей дает очень скудный функционал. Данная обработка позволяет упростить процедуру обновления Ролей.

1 стартмани

11.02.2012    16256    196    Mavin    26       

24

Комментарии

DevЗащита разработок от копирования (Обычная и Управляемая форма)#64 31.03.16 12:40
(63) да, это рабочий вариант будет.
DevЗащита разработок от копирования (Обычная и Управляемая форма)#61 31.03.16 11:45
(60) Тогда еще один тест, который также не проходила обработка "Обфускация кода 1С". После обфускации модуля обработки, она становится нерабочей.
Тут речь идет о комментариях в тексте запроса. Сразу отмечу, что удаление комментариев не будет являться решением, поскольку иногда их добавляют с той целью, чтобы потом эти комментарии заменить на что-то нужное с помощью СтрЗаменить.

Прикрепленные файлы:

ТестОбфускации.epf
DevЗащита разработок от копирования (Обычная и Управляемая форма)#28 30.03.16 8:54
(27) Теперь обработка выдала результат:
Функция Процедура1() Экспорт x34f5fdf9d4054708942e4b249b39edc8 = \1\2\3; Возврат x34f5fdf9d4054708942e4b249b39edc8; КонецФункции
который естественно не компилируются, поскольку \1\2\3 это явно не строка. Причем вместо \1\2\3 должно стоять все тот же текст "//" (шифрованием не пользовался).
DevЗащита разработок от копирования (Обычная и Управляемая форма)#26 30.03.16 8:34
(25) причина думаю точно не в имени функции (это я для примера так сделал), а скорей всего в том, что в комментарии такой слэш есть "//". Причем, если оставить только одну функцию, то результат корректный.
DevЗащита разработок от копирования (Обычная и Управляемая форма)#24 30.03.16 8:13
Сам я долго уже пользуюсь обработкой "Обфускация кода 1С" и она вполне удовлетворяла меня. Правда иногда приходилось код немного подстроить под обработку, чтобы после обфускации без ошибок компилировался. Решил проверить тот самый код на этой обработке, но оказалось что обработка выдала некорректный результат. Методом исключения, ошибку можно увидеть например на таком коде:

Функция Процедура1() Экспорт

Текст = "//";

Возврат Текст;

КонецФункции

Функция Процедура2() Экспорт

Текст = "//";

Возврат Текст;

КонецФункции
UtilsУбираем окно - "обновить версию конфигурации"#8 29.07.15 9:04
Все тоже самое, но без обработки: Все функции - Константы - Дата текущей версии и ставим любую будущую дату.
DevОбработка для сравнения-объединения ролей#26 18.11.14 18:49
(25) В дереве сравнения колонки расположены в следующем порядке: типовая старая, доработанная, типовая новая. Брать данные естественно подразумевается либо из доработанной, либо из новой типовой. Назначение галочки примерно такое же как назначение галочки в диалоге сравнения-объединения - галочки нет, берем из 2-й колонки (доработанная); галочка есть, берем из 3-й колонки. По-умолчанию галочки устанавливаются в зависимости от того, в какой конфигурации было изменение. Если для какого-то узла было двойное изменение, то в данном случае ячейка в колонке Узел закрасится сиреневым цветом и плюс к этому аналогично закрасятся ячейки - родители. Тем самым если после сравнения ячейка корня дерева не закрашена сиреневым, то не присутствует узлов с двойным изменением и тем самым можно сразу автоматически формировать итоговый файл.
DevОбработка для сравнения-объединения ролей#22 03.07.14 7:50
(21) KapasMordorov, Насколько понимаю, ваша обработка помогает более наглядно проанализировать какую-то роль, чтобы потом вручную можно было ее доработать. Для целей обновления ее тоже конечно можно использовать, но вот все найденные различия тогда вам придется переносить вручную.
С помощью моей обработки обновление можно практически делать в автоматическом режиме. Руками приходится вмешиваться совсем редко, причем делается это тоже в самой обработке и достаточно просто.
DevОбработка для сравнения-объединения ролей#20 02.07.14 20:37
(19)
Цитата
Затем чтобы заменять фрагменты MRG в ролях(в закладке "Шаблоны" И "Ограничение доступа к данным"). Ну или чтобы выгружать файлы конфигурации в определенную папку, а обработкой брать из этой папки файлы, анализировать их и потом грузить их обратно.
Так вроде бы вопрос был про обработку на управляемых формах, а не про ее использование. Про управляемые формы еще раз повторю, что смысла в ней никакого нет.
Цитата
В типовой что-то поменялось по сравнению моей конфигурацией, мне нужно быстро объединить роли с приоритетом новой конфигурации поставщика.
Вот тут то вам как раз и нужно знать данные старой типовой конфигурации. Ведь типовое объединение ролей с приоритетом каким-нибудь тоже осуществляется на основании того, что известны данные всех 3-х конфигураций.
DevОбработка для сравнения-объединения ролей#18 30.06.14 13:19
(17) 1. А зачем это нужно? Тут ведь нет привязки к конфигурации, в которой запускается обработка. Можно всегда создать пустую конфигурацию и запустить ее в обычном приложении. Да и вообще, любую конфигурацию можно будет запустить в обычном приложении.
2. Я так понимаю, вам это нужно либо чтобы посмотреть различия в двух ролях, либо в доработанную что-то вернуть из типовой. Мне же обработка нужна была именно для целей обновления конфигураций. И если роль в типовой никак не поменялась, то мы можем спокойно взять нашу доработанную роль.