Re: Права на просмотр Где используется параметр

Есть ли способ дать рядовому пользователю права на просмотр (без возможности править) справочника параметров, в т.ч. на Где используется параметр?

Re: Права на просмотр Где используется параметр

По-моему, нет. Можно отключить права на работу со справочником параметров вообще. Можно отключить на функции где используется параметр и замена параметра.
Дело в том, что не предусматривается, что рядовой пользователь вообще должен работать со справочником параметров. Увидеть он его может (при добавлении параметра его можно выбрать из справочника), но лучше организовать работу пользователей с параметрами через карточки и/или используя скрипты.

А для чего Вам это нужно?

Re: Права на просмотр Где используется параметр

Как раз для скрипта...
Необходимо (т.е. я поставлен перед фактом - надо) за пять-десять секунд пробежаться по всем номенклатурным позициям почти что во всех справочниках. Нужно отыскать позицию с определенным значением привязанного параметра...
Последовательная проверка каждой номенклатуры и ее параметров занимает около часа: создание объекта (переход на параметры) происходит довольно долго...
А вот если взять нужный параметр и посмотреть, где он используется, и все его значения... Беда в том, что только ведущий справочника параметров может запускать такой скрипт, у остальных не хватает прав... а добавить их не получается.

Re: Права на просмотр Где используется параметр

А вот этот пунктик в справке смотрели?

ITcs_Application.SingleNmkFromUniquePar (PropertyGet)

--------------------------------------------------------------------------------

Получить номенклатуру по значению уникального параметра

Синтаксис:

objectvariable.SingleNmkFromUniquePar( ParCode, ParValue )

objectvariable - ITcs_Application

ParCode - уникальный код параметра

ParValue - значение уникального параметра

Возвращает: указатель на SingleNomenclature

Re: Права на просмотр Где используется параметр

Смотрели. 
Параметр должен быть уникальным. А у нас куча повторений.
А еще там, кажется, появляется ограничение на использование параметра в других справочниках. Т.е. чтобы использовать функцию, нужно поставить галочку уникальности у параметра, что ограничит его использование в других справочниках (если меня не обманули).
Если в последнем я заблуждаюсь, то это выход: могу стукнуть кулаком по столу и сказать - убирайте повторения, и все будет работать...
Однако, как насчет прав? Администратор - интерфейс для работы с данными, который, возможно, просто не раскрывает всех возможностей настройки...
Была еще мысль: в скриптах TDMS можно запускать команды с расширенными правами... в TCS, похоже, этого нет?

Re: Права на просмотр Где используется параметр

hitrov писал(а):
Необходимо (т.е. я поставлен перед фактом - надо) за пять-десять секунд пробежаться по всем номенклатурным позициям почти что во всех справочниках. Нужно отыскать позицию с определенным значением привязанного параметра...


нравятся мне такие постановки задачи..... :? 
надо - значит надо. А зачем? - так никто и не сказал... Это к тому, что может проблема то не в этом совсем месте...
Все-таки, интресно, для чего это нужно в смысле физического смысла данного действия.

Re: Права на просмотр Где используется параметр

Вот это:


Sub FormMacro_ForumTest(TCSActiveModule)

Dim Nmks
Dim NmkSearch
Dim id

Dim Str, I
Set Str =  TCSApp.CreateStrings
I = Str.Add( "MASSA%=%2.03" )

Set NmkSearch = TCSApp.SimpleNomenclaturesSearching(26,Str)

id = NmkSearch.ShowModal("Найденная номенклатура:")

Set Str = Nothing


End Sub

Подробнее здесь: ITcs_Application2.SimpleNomenclaturesSearching (PropertyGet) 




А еще там, кажется, появляется ограничение на использование параметра в других справочниках. Т.е. чтобы использовать функцию, нужно поставить галочку уникальности у параметра, что ограничит его использование в других справочниках (если меня не обманули).


Использование в каких "других" справочниках? В других номенклатурных справочниках?

Чего-то не помню, чтобы было такое ограничение.

Re: Права на просмотр Где используется параметр

SimpleNomenclaturesSearching не заметил. Попробую. Спасибо.

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

Re: Права на просмотр Где используется параметр

hitrov писал(а):
Иначе зачем я складываю обозначение и наименование, перевожу в верхний регистр, заменяю по возможности латинские буквы на русские и убираю все остальные символы?


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

А может попроще как-то можно? Справочники классифицировать, например, чтобы в одной ветке слишком много позиций не было (глазами повторяющиеся будет лучше видно). И еще периодически, предварительно отсортировав по применяемости, просматривать позиции с подозрительно маленькой применяемостью (больше вероятность, что ошибочные). И т.п. "оргмерами" обойтись может получится?

Re: Права на просмотр Где используется параметр

SimpleNomenclaturesSearching не работает что-то. Пробовал разные параметры и значения - ничего не находит. 
Приведенный выше пример ForumTest нормально отрабатывал?

Что касается самого решения, то все (кроме заказчика) понимают его нежизнеспособность. Просто нужно сделать.

Re: Права на просмотр Где используется параметр

Сложный вопрос, зачем Вы это делаете


Чтобы отследить оригинальность по обозначению, даже если используются латинские аналоги русских букв и наоборот, т.к. старое фоксовое изобретение на заводе могло это делать... В общем вместо того чтобы навести порядок у себя, требуют от нас ... МАРАЗМ.

Re: Права на просмотр Где используется параметр

Приведенный выше пример ForumTest нормально отрабатывал?


Отрабатывал нормально, правда на моей базе ;)
GUID параметра заведите свой и идентификатор класса, в котором есть хотя одна номенклатура с этим параметром, может в этом дело?

Re: Права на просмотр Где используется параметр

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

У нас тут временно притормозили это направление, так что упираться рогом уже не надо. Хотя интересно, что же у меня с SimpleNomenclaturesSearching.

Re: Права на просмотр Где используется параметр

Возвратился к проблеме... выяснил, что SimpleNomenclaturesSearching работает только с числовыми параметрами. Придется искать другие пути, а в связи с SimpleNomenclaturesSearching хотелось бы прояснить (просто в качестве обратной связи): необходимость именно числового параметра - это незадокументированная особенность функции (потому что в хэлпе ничего про это нет) или ошибка?