AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.01.2016, 11:18   #1  
Karpa_S is offline
Karpa_S
Участник
 
57 / 10 (1) +
Регистрация: 24.05.2015
Адрес: Киев
Кнопки на риббоне.
Добрый день.
Нуждаюсь в совете.
На сущности несколько форм. На каждой из форм нужно скрыть практически все системные кнопки (это сделал через Ribbon Workbench). Но так же нужно на каждую форму поместить ряд кнопок (для каждой формы свои).
Я сделал путем того что на каждую кнопку повесил Enable Rule в котором я проверяю id формы и в зависимости от этого скрываю или показываю кнопки.
Но код получается однотипным и большим. Может кто-то знает более краткий путь отобразить нужные кнопки на нужной форме.

Спасибо.
Старый 11.01.2016, 11:43   #2  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
На вашем месте я бы придумал какую нибудь конфигурацию и код, который эту конфигурацию сможет читать и понимать. Таким образом вам потребуется написать код только один раз, а при появлении новых кнопок и форм - просто расширять конфигурацию. Что то вроде следующего:

Код:
var config = [
	{
		FormId: "Identifier of form 1",
		VisibleButtons: ["Button1", "Button2"]
	},
	{
		FormId: "Identifier of form 2",
		VisibleButtons: ["Button1", "Button3"]
	}
];

function isButtonVisibleOnForm(FormId, ButtonId){
	for(var i = 0; i < config.length; i++){
		if (config[i].FormId == FormId){
			var formConfig = config[i];

			for (var j = 0; j < formConfig.VisibleButtons.length; j++){
				if (formConfig.VisibleButtons[j] == ButtonId){
					return true;
				}
			}
		}
	}

	return false;
}
А по поводу использования - думаю и так понятно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Старый 11.01.2016, 11:54   #3  
Karpa_S is offline
Karpa_S
Участник
 
57 / 10 (1) +
Регистрация: 24.05.2015
Адрес: Киев
Я об этом думал. Только не совсем могу понять на что тогда завесить этот скрипт. Если завешивать его отдельно на каждую кнопку то скрипт выполнится столько же раз, сколько и кнопок. А правило указывается для каждой кнопки отдельно.
Старый 11.01.2016, 12:00   #4  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от Karpa_S Посмотреть сообщение
Только не совсем могу понять на что тогда завесить этот скрипт.
Конкретно этот скрипт - ни на что не навешивается. На каждый рул потребуется повесить просто вызов этого скрипта. Чтото вроде:

isButtonVisibleOnForm("Form1", "Button1");

Цитата:
Сообщение от Karpa_S Посмотреть сообщение
Если завешивать его отдельно на каждую кнопку то скрипт выполнится столько же раз, сколько и кнопок. А правило указывается для каждой кнопки отдельно.
Именно так. По другому никак не получится.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
За это сообщение автора поблагодарили: Karpa_S (1).
Старый 11.01.2016, 13:29   #5  
Karpa_S is offline
Karpa_S
Участник
 
57 / 10 (1) +
Регистрация: 24.05.2015
Адрес: Киев
Спасибо, так и попробую!
Старый 13.01.2016, 10:24   #6  
spectr is offline
spectr
Участник
Аватар для spectr
MCBMSS
Лучший по профессии 2014
 
287 / 70 (3) ++++
Регистрация: 19.10.2011
Адрес: Киев
А я посоветую создать в риббоне секцию для каждой формы и скрывать ее это на много проще и быстрее
За это сообщение автора поблагодарили: Karpa_S (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
DisplayRule для кнопки на риббоне CRM 2015 vasya-serega Dynamics CRM: Разработка 1 09.04.2015 08:31
Как мне с помощью JS сделать имитацию кнопки Назначить? GetLucky Dynamics CRM: Разработка 2 20.05.2014 11:42
Программное изменение видимости кнопки на Ribbon vasya-serega Dynamics CRM: Разработка 6 13.05.2013 18:53
Скрытие кнопки в Iframe Camena Dynamics CRM: Разработка 2 17.07.2010 15:23
Пользовательские кнопки на панели инструментов tatra Dynamics CRM: Разработка 2 05.06.2008 17:54
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:03.