Регистрация  |  Вход

Включаем все галки на Profile/Permission Set

Поделитесь скриптом чтобы включать все галочки когда FLS настраиваешь
Поделитесь скриптом чтобы включать все галочки когда FLS настраиваешь :smile:
Dmitry Shnyrev
Поделитесь скриптом чтобы включать все галочки когда FLS настраиваешь

Могу скинуть кусок кода на JS, который это делает. У меня это встроенная фишка в IDE:)
[quote="Dmitry Shnyrev"]Поделитесь скриптом чтобы включать все галочки когда FLS настраиваешь :smile:[/quote]

Могу скинуть кусок кода на JS, который это делает. У меня это встроенная фишка в IDE:)
wilder
Могу скинуть кусок кода на JS, который это делает. У меня это встроенная фишка в IDE:)
Да, я как раз на кусок кода JS и рассчитывал. Скидывай сюда если не жалко что все увидят.
[quote="wilder"]Могу скинуть кусок кода на JS, который это делает. У меня это встроенная фишка в IDE:)[/quote]
Да, я как раз на кусок кода JS и рассчитывал. Скидывай сюда если не жалко что все увидят.
Dmitry Shnyrev
wilder
Могу скинуть кусок кода на JS, который это делает. У меня это встроенная фишка в IDE:)
Да, я как раз на кусок кода JS и рассчитывал. Скидывай сюда если не жалко что все увидят.

let fPerm = new RegExp('<fieldPermissions>\s*?<editable>(true|false)</editable>\s*?<field>.+?</field>\s*?<readable>(true|false)</readable>\s*?</fieldPermissions>', 'gi');
		let oPerm = new RegExp('<objectPermissions>\s*?<allowCreate>.+?</allowCreate>\s*?<allowDelete>.+?</allowDelete>\s*?<allowEdit>.+?</allowEdit>\s*?<allowRead>.+?</allowRead>\s*?<modifyAllRecords>.+?</modifyAllRecords>\s*?<object>.*?</object>\s*?<viewAllRecords>.+?</viewAllRecords>\s*?</objectPermissions>', 'gi');
		let fName = new RegExp('<fullName>(.+?)</fullName>', '');
		let fullName = '';

		let updProfileTmp = this.metaItem.source.replace(/\n/g, '');
		updProfileTmp = updProfileTmp.replace(fName, function(m, p1, offset, string) {
			fullName = p1;
			return m;
		});
		let updProfile = '';
		updProfileTmp = updProfileTmp.replace(fPerm, function(m, offset, string) {
			updProfile += m.replace(/false/gi, 'true');
			return "";
		});

		updProfileTmp = updProfileTmp.replace(oPerm, function(m, offset, string) {
			updProfile += m.replace(/false/gi, 'true');
			return "";
		});

На выходе получаешь пропатченный xml

Будут вопросы, пиши
[quote="Dmitry Shnyrev"][quote="wilder"]Могу скинуть кусок кода на JS, который это делает. У меня это встроенная фишка в IDE:)[/quote]
Да, я как раз на кусок кода JS и рассчитывал. Скидывай сюда если не жалко что все увидят.[/quote]

[code]
                let fPerm = new RegExp('<fieldPermissions>\\s*?<editable>(true|false)</editable>\\s*?<field>.+?</field>\\s*?<readable>(true|false)</readable>\\s*?</fieldPermissions>', 'gi');
		let oPerm = new RegExp('<objectPermissions>\\s*?<allowCreate>.+?</allowCreate>\\s*?<allowDelete>.+?</allowDelete>\\s*?<allowEdit>.+?</allowEdit>\\s*?<allowRead>.+?</allowRead>\\s*?<modifyAllRecords>.+?</modifyAllRecords>\\s*?<object>.*?</object>\\s*?<viewAllRecords>.+?</viewAllRecords>\\s*?</objectPermissions>', 'gi');
		let fName = new RegExp('<fullName>(.+?)</fullName>', '');
		let fullName = '';

		let updProfileTmp = this.metaItem.source.replace(/\n/g, '');
		updProfileTmp = updProfileTmp.replace(fName, function(m, p1, offset, string) {
			fullName = p1;
			return m;
		});
		let updProfile = '';
		updProfileTmp = updProfileTmp.replace(fPerm, function(m, offset, string) {
			updProfile += m.replace(/false/gi, 'true');
			return "";
		});

		updProfileTmp = updProfileTmp.replace(oPerm, function(m, offset, string) {
			updProfile += m.replace(/false/gi, 'true');
			return "";
		});[/code]

На выходе получаешь пропатченный xml

Будут вопросы, пиши
wilder
На выходе получаешь пропатченный xml
Не, я ожидал чего-для браузера, для UI.
Насколько я понимаю у тебя это для метадаты.

Решил немного поковыряться в теме, давно хотел да вот выдался наконец-то повод.
Давно хотел использовать что-то на подобии js скриптов для браузера которые можно легко вызвать. С экстеншеном под хром дела имел, но опять ковыряться было лень, хотелось реально чего-то простого. И представьте такое простое есть Google Chrome Javascript Snippets

https://developer.chrome.com/docs/devtoo ... nippets/

И вот что получилось замутить.



Скрипт предельнейше простой (простой копипаст, даже есть куда оптимизировать, но пока лень). Тут вся загвоздка в том что эти страницы в Salesforce Lightning UI выводятся внутри ифрейма и если запускать скрипт сразу после загрузки страницы то нихера не получится из-за cross-origin frame. НО это решается крайне просто - в Console Tab надо выбрать контекст (синим на скрине подсвечено vfFRameId_.... вместо Top по умолчанию - это и есть наш iframe с настройками). А дальше просто Run для сниппета и Profit! Галочки выбраны.

Но, для меня это скорее двойная победа. Как бы была полезна эта фича раньше, когда приходилось девелопить сложные UI на ангуляре и заполнять кучу разных форм. Мутить какой-нибудь Selenium или экстеншен было крайне лень. А вот такой простой способ намутить простенький сниппет было бы само то. Чувствую эта штука станет моей любимой в ходе разработки.
[quote="wilder"]На выходе получаешь пропатченный xml[/quote]
Не, я ожидал чего-для браузера, для UI. 
Насколько я понимаю у тебя это для метадаты. 

Решил немного поковыряться в теме, давно хотел да вот выдался наконец-то повод.
Давно хотел использовать что-то на подобии js скриптов для браузера которые можно легко вызвать. С экстеншеном под хром дела имел, но опять ковыряться было лень, хотелось реально чего-то простого. И представьте такое простое есть :party: Google Chrome Javascript Snippets

https://developer.chrome.com/docs/devtools/javascript/snippets/

И вот что получилось замутить.

[img]https://i.ibb.co/pvKL9XB/image.png[/img]

Скрипт предельнейше простой (простой копипаст, даже есть куда оптимизировать, но пока лень). Тут вся загвоздка в том что эти страницы в Salesforce Lightning UI выводятся внутри ифрейма и если запускать скрипт сразу после загрузки страницы то нихера не получится из-за cross-origin frame. НО это решается крайне просто - в Console Tab надо выбрать контекст (синим на скрине подсвечено [b]vfFRameId_....[/b] вместо Top по умолчанию - это и есть наш iframe с настройками). А дальше просто Run для сниппета и Profit! Галочки выбраны.

Но, для меня это скорее двойная победа. Как бы была полезна эта фича раньше, когда приходилось девелопить сложные UI на ангуляре и заполнять кучу разных форм. Мутить какой-нибудь Selenium или экстеншен было крайне лень. А вот такой простой способ намутить простенький сниппет было бы само то. Чувствую эта штука станет моей любимой в ходе разработки.