Форум пользователей Visio
http://visio.getbb.ru/

Защита имён мастеров
http://visio.getbb.ru/viewtopic.php?f=3&t=695
Страница 1 из 1

Автор:  Светлана [ 16 дек 2014, 14:55 ]
Заголовок сообщения:  Защита имён мастеров

Вопрос о защите ИМЁН мастеров от изменения, т.е. нужно, чтобы пользователь не смог изменить ИМЯ мастера. Это нужно потому, что в макросе обработки мастер распознаётся по имени. Поменяется имя мастера –макрос не «узнает» элемент.
Может быть, есть возможность (но я её не знаю) распознавать мастера в наборе по индексу мастера в наборе?
Или, как вариант, спрятать от «обычного пользователя» ИМЯ мастера в таблице ShapeSheet? Например, в ячейке секции User-definered Cells?
Вариант «спрятать» лучше тем, что не ущемляются возможности пользователя.

Автор:  Гость [ 16 дек 2014, 15:03 ]
Заголовок сообщения:  Re: Защита имён мастеров

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

Автор:  Surrogate [ 16 дек 2014, 15:09 ]
Заголовок сообщения:  Re: Защита имён мастеров

Светлана писал(а):
Может быть, есть возможность (но я её не знаю) распознавать мастера в наборе по индексу мастера в наборе?
думаю тут можно использовать Master.UniqueID Property

Автор:  Surrogate [ 16 дек 2014, 15:29 ]
Заголовок сообщения:  Re: Защита имён мастеров

MSDN в Master.Index Property писал(а):
Most collections are indexed starting with 1 rather than zero (0), so the index of the first element is 1, the index of the second element is 2, and so forth. The index of the last element in a collection is the same as the value of that collection's Count property. You can iterate through a collection by using these index values. Adding objects to or deleting objects from a collection can change the index values of other objects in the collection.
так что пользоваться индексами не лучший вариант. я заметил, что нумерация индексов в мастеров может различаться от файла к файлу. так первый мастер в наборе имеет номер 2, следующий 4. третий номер пропущен.
в другом файле есть мастера с индексами 2,3, 5 и тд.
правда с UniqueID надо вести какой-то учет, кому какой UniqueID соответствует :)

Автор:  Tumanov [ 16 дек 2014, 16:37 ]
Заголовок сообщения:  Re: Защита имён мастеров

Более логичным представляется - защитить от записи весь трафарет. Файл только для чтения. И объявить пользователю, что в случае снятия защиты, он принимает всю ответственность на себя.

Автор:  Surrogate [ 16 дек 2014, 16:51 ]
Заголовок сообщения:  Re: Защита имён мастеров

мне одно интересно, где вы таких пользователей берете у которых есть желание лезть в трафарет ?

Автор:  9rey [ 16 дек 2014, 18:13 ]
Заголовок сообщения:  Re: Защита имён мастеров

ребята, вы че, какие шейпшиты?
в макросе распознавать мастеры по NameU (он не меняется) а не по Name (его пользователь пусть меняет).

Автор:  Surrogate [ 16 дек 2014, 18:41 ]
Заголовок сообщения:  Re: Защита имён мастеров

Гость писал(а):
имя мастера в шейпшите и не видно. вы какие именно права пользователя имеете в виду ?
анонимоус какбэ намекнул, что имя мастера через шейпшит не поменяешь :)

Автор:  Светлана [ 16 дек 2014, 20:26 ]
Заголовок сообщения:  Re: Защита имён мастеров

Ответ 9rey
Огромное спасибо, «респект и уважуха» за NameU!
Ответ Туманову:
Дело в том, что тут такие пользователи, что им надо дать ещё и возможность вносить в трафарет своих мастеров и удалять те мастера, что им не надо.
Спасибо всем!

Автор:  Tumanov [ 16 дек 2014, 20:35 ]
Заголовок сообщения:  Re: Защита имён мастеров

Цитата:
Дело в том, что тут такие пользователи, что им надо дать ещё и возможность вносить в трафарет своих мастеров и удалять те мастера, что им не надо.

А если они удалят тот, к которому Вы по NameU будете обращаться? Тоже не очень красиво получится.

Автор:  Светлана [ 17 дек 2014, 12:25 ]
Заголовок сообщения:  Re: Защита имён мастеров

Для Туманова
Этот макрос – звено большой программы. Средствами же Visio решается только вопрос отрисовки некоторой схемы.
На вход макроса поступают список трафаретов и список мастеров в них, которые необходимо использовать при отрисовке схемы по определённому алгоритму. В случае не нахождения мастера выдаётся (и прорисовывается) соответствующее обозначение. Но т.к. сами трафареты доступны обычному пользователю, у которого может появиться желание менять всё (хотя описаны конкретные рамки), то надо от таких «продвинутых» защищаться.
Благодарю Вас за проявленный интерес.

Автор:  Surrogate [ 17 дек 2014, 12:34 ]
Заголовок сообщения:  Re: Защита имён мастеров

Светлана писал(а):
На вход макроса поступают список трафаретов и список мастеров в них, которые необходимо использовать при отрисовке схемы по определённому алгоритму. В случае не нахождения мастера выдаётся (и прорисовывается) соответствующее обозначение.
это вполне разумно!
Светлана писал(а):
Но т.к. сами трафареты доступны обычному пользователю, у которого может появиться желание менять всё (хотя описаны конкретные рамки), то надо от таких «продвинутых» защищаться.
а это партизанщина какая-то дичайшая. из-за которой на выходе будет, не то что ожидалось
я ходил на курсы автокада. нам препод рассказывал, что он работал в конторе, у них были разработаны шаблоны и вся компания работала по этим шаблонам. а если кто-то продвинутый менял шаблон в своем документе, его штрафовали за нарушение технологического процесса.

Автор:  Светлана [ 17 дек 2014, 16:50 ]
Заголовок сообщения:  Re: Защита имён мастеров

Как мне нравится наказание в виде штрафа! Да ещё бы в пользу разработчика!

Автор:  Surrogate [ 17 дек 2014, 17:07 ]
Заголовок сообщения:  Re: Защита имён мастеров

зачем писать макросы и тем более большую программу, которая должна строить определенную схему. когда конечный пользователь может менять содержимое мастера, его имя ?
например программа должна отрисовать деталь, с круглыми отверстиями в определенных местах. а какому-то дяде Васе вздумалось сместить отверстия и сделать их треугольными !
как вы думаете эта деталь потом куда-нибудь подойдет ?
Светлана писал(а):
Дело в том, что тут такие пользователи, что им надо дать ещё и возможность вносить в трафарет своих мастеров и удалять те мастера, что им не надо.

в чем заключаются функции этих исполнителей: запускать при необходимости и наличии неких исходных данных вашу чудо-программу ?

Автор:  Tumanov [ 17 дек 2014, 19:47 ]
Заголовок сообщения:  Re: Защита имён мастеров

Цитата:
я ходил на курсы автокада. нам препод рассказывал, что он работал в конторе, у них были разработаны шаблоны и вся компания работала по этим шаблонам. а если кто-то продвинутый менял шаблон в своем документе, его штрафовали за нарушение технологического процесса.

Цитата:
Как мне нравится наказание в виде штрафа! Да ещё бы в пользу разработчика!

А я согласен с Surrogate. Дело, конечно, не в наказаниях. Но пользователь должен понимать - хочешь работать по своим правилам - принимай всю ответственность на себя. И не только на данный момент, но и далее, когда ты уже забудешь, что там искорежил, а нужно будет быстро поправить.
Воспитывать надо пользователей.
Если какое-то изменение обосновано, то его надо проводить централизовано. Для всех, а не на локальной машине.

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/