Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Оцените скорость загрузки страниц сайта

Реактивная
Быстрая
Нормальная
Неважная
Медленная
Черепашья


Результаты
Другие опросы

Всего голосов: 971
Комментарии: 4


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Статьи и обзоры



Защита интелектуальной собственности для 1С:8

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

Итак для начала вы создали отчет, обработку или документ который конечно же является шедевром и те ноу хау которые вы там воплотили, не хочется по каким либо причинам, моральным или материальным, делится с клиентом.

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

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

2) Но ведь от этого она не теряет свой функционал и рабочие свойства, мне могут сказать что работа выполнена плохо и денег мы вам не дадим. Ну что ж, в свой запороленый модуль я вставил такой код:

//СИСТЕМА ЗАЩИТЫ

Код
Функция ПрекратитьРаботу()

ПрекратитьРаботу = ?(ВосстановитьЗначение("ПрекратитьРаботу123456789")=
Неопределено,Ложь,
Истина);
Если ТекущаяДата()>'20071231' или ПрекратитьРаботу Тогда
СохранитьЗначение("ПрекратитьРаботу123456789",Истина);
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;
КонецФункции


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

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

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

Можно использовать такой код :

Код
ДвоичныеДанные = Документы.[ваш документ ].ПолучитьМакет("Макет");
ВременнаяОбработка = ПолучитьИмяВременногоФайла("epf");
ДвоичныеДанные.Записать(ВременнаяОбработка);
НашаСекретнаяОбработка = ВнешниеОбработки.Создать(ВременнаяОбработка);

И теперь обращаясь к нашим любимым процедурам через созданную и закрытую обработку, мы не имеем проблем с обновлением.

Источник публикации



Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



Статьи и обзоры Программирование Защита интелектуальной собственности для 8 Иногда возникает необходимость защитить свое творение представлен разработанный мною подход дорогие читатели на ваше суждение понимание данная статья посвещена конфигурированию версии Итак для начала вы создали отчет обработку или документ который конечно же является шедевром те ноу хау которые там воплотили не хочется по каким либо причинам моральным материальным делится клиентом Разработчики