Миграция Object Type Proc Oper

Миграция Object Type Proc Oper#

Локальный скрипт модуля MCT. Используется для служебной настройки, миграции, очистки или восстановления данных, связанных с объектами модуля.

Место применения: Сервис > Инструменты > Выполнить JEXL-скрипт

Внимание

Скрипт привязан к объектам конкретного модуля и требует проверки на целевой базе. Перед запуском проверьте идентификаторы, SQL-запросы, API-классы и условия обработки.

Тип: JEXL-скрипт

sql(`
select 
		mot.id as "idObjectType"
		,ot.sCaption as "sCaption"
	from btk_ObjectType ot
	left join mct_objectType mot on ot.id = mot.idbtkobjecttype
	where ot.idrefclass = (select id from btk_class where sname = 'Mct_Specification')
 `).foreach(function(r){
@begin{
	println(r.sCaption);
	Mct_ObjectTypeProcOperApi.register(idpMctObjectType = r.idObjectType,
      spSystemName = "recalcNormPerUnit",
      spCaption = "Пересчитать нормы расхода на ед.",
      npImage = 122B,
      npOrder = 90B,
      spApplicationMethod = "Mct_SpecificationVerPosApi().recalcNormPerUnit()",
	  bpIsActive = 1B);
  }
@exception
function(exp){
	println("[JEXL Exception] " + exp.getCause());
}end;
}) ;
commit();
sql(`
	select id as "idProcOper"
	from Mct_ObjectTypeProcOper
	where ssystemname = 'validateAllPos'
 `).foreach(function(r){
@begin{
	var ropProcOper = Mct_ObjectTypeProcOperApi.load(r.idProcOper);
	Mct_ObjectTypeProcOperApi.setnOrder(ropProcOper, 999B);
  }
@exception
function(exp){
	println("[JEXL Exception] " + exp.getCause());
}end;
}) ;
commit();