Имя: Пароль:
1C
1C 7.7
v7: Настройка шрифтов 1С 7.7
0 tyoma_xp
 
10.10.11
16:04
Добрый день. Помогите, пожалуйста, в решении такой проблемы.

Нужно запретить изменения шрифтов и стилей с помощью меню "Сервис-параметры-интерфейс" для группы юзеров при работе в терминальной 1С.
Толи запретить правку файла, который за это отвечает, толи просто запретить вызов этого меню.
1 Kreont
 
10.10.11
16:06
А доступно обяснить не получается?
П.С. Хорошо Вам, я наоборот, не могу своих так далеко заходить в меню  научить :)))
2 filh
 
10.10.11
16:07
(0) отключи меню "Сервис"
3 tyoma_xp
 
10.10.11
16:14
Каким образом отключить меню Сервис? Параметры - это системная команда, стандартным конфигурированием интернейсов вроде как не получится?

Объясняю доступно. Юзер не должен изменить тип и размер шрифта внутри 1С.
4 andrewks
 
10.10.11
16:24
(3)
Каким образом отключить меню Сервис?
ты не поверишь! © в Конфигураторе, в редакторе интерфейса \ правка меню
5 filh
 
10.10.11
16:28
(4) не, останется Параметры.
(3) formex кажись умеет или правь dll
6 filh
 
10.10.11
16:30
++5
ВидимостьМеню / VisibleMenu
Синтаксис: ВидимостьМеню(ИмяПунктаМеню, ФлагВидимости)
Параметры:
•    ИмяПунктаМеню - тип: Строка. Имя пункта меню или подменю в полном виде. Примером полного вида служит представление в список значений, возвращаемый методом ПолучитьМеню / GetMenu.
•    ФлагВидимости - тип: Число. Флаг видимости пункта меню:
o    1 - пункт меню становится видимым;
o    0 - пункту меню скрывается.
Возвращает:
Описание: Устанавливает видимость пункта меню или подменю по имени. Дейстивя метода распространяется как на главное меню программы, так и на все контекстные меню. Если между двумя разделителями в меню нет ни одного видимого пункта, то один из разделителей так же скрывается.
7 tyoma_xp
 
10.10.11
17:02
спасибо. пошел учить formex. только если так сделать - никто не сможет изменить параметры в базе, даже админы. я прав?
8 filh
 
10.10.11
17:03
(7) Да, это целиком уберет пункт "Сервис".
9 filh
 
10.10.11
17:07
+8 вот тебе скрытие меню "Сервис"

   Попытка
       Окна = СоздатьОбъект("Окна");
   Исключение
       ЗагрузитьВнешнююКомпоненту("formex.dll");
   КонецПопытки;
   Окна = СоздатьОбъект("Окна");
   Окна.ВидимостьМеню("&Сервис", 0);

а это увидишь какие есть менюшки

   Окна = СоздатьОбъект("Окна");
   меню = СоздатьОбъект("СписокЗначений");
   меню = Окна.ПолучитьМеню();
   а="";
   меню.ВыбратьЗначение(а);
10 tyoma_xp
 
13.10.11
12:50
т.е. нужно скрывать все меню или можно только подменю Параметры? И можно применить условие ВидимостьМеню (0) для скажем какой-то конкретной группы пользователей.
11 cabat
 
14.10.11
09:56
(0) как вариант - я решил эту проблему путем принудительной установки правильного шрифта при запуске 1С - для этого использовал V7AppProfile (http://infostart.ru/public/20644/)
12 filh
 
14.10.11
10:00
(10) читай внимательней:
ИмяПунктаМеню - тип: Строка. Имя пункта меню или подменю в полном виде.
13 filh
 
14.10.11
10:16
+12
для тебя будет

   Попытка
       Окна = СоздатьОбъект("Окна");
   Исключение
       ЗагрузитьВнешнююКомпоненту("formex.dll");
   КонецПопытки;
   Окна = СоздатьОбъект("Окна");
   Окна.ВидимостьМеню("Па&раметры...", 0);
14 filh
 
14.10.11
10:17
А условие сам напиши.
Если Пользователь = "Петров" Тогда
   Скрыть = 0;
ну и т.д.
15 tyoma_xp
 
14.10.11
17:28
ну условие эт понятно, а за код спасибо) работает