Миграция Pos Type Msch Load#
Локальный скрипт модуля MCT. Используется для служебной настройки, миграции, очистки или восстановления данных, связанных с объектами модуля.
Место применения: Сервис > Инструменты > Выполнить JEXL-скрипт
Внимание
Скрипт привязан к объектам конкретного модуля и требует проверки на целевой базе. Перед запуском проверьте идентификаторы, SQL-запросы, API-классы и условия обработки.
Тип: JEXL-скрипт
Btk_Pkg.setRWSharedUOWEditType();
var idvObjectType = Btk_ObjectTypeApi.findByMnemoCode("workstructure");
var ropOT = Btk_ObjectTypeApi.load(idvObjectType);
var idvOTDet = Btk_ObjectTypeTabApi.register(idvObjectType, "Mct_WsProductManuf", "Изготовляемые МСЧ", "gtk-Mct_WsProductManufAvi", "List_idWorkStructure", 1B, 90B, 18B, null, null, null, null);
//ТКМСЧ
var idvTkMsch = Mct_PosTypeApi.register("ТКМСЧ", "Техкомплект МСЧ", null, 0B);
//регистрируем доступных потомков
Mct_PosChildAvailApi.register(idvTkMsch, Mct_PosTypeApi.findByMnemoCode("ПК"), null);
//регистрация закладок
var idvDetTK = Mct_TypePosApplicApi.register(idvTkMsch, idvObjectType);
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "card"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_Link"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_TechReference"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_WorkSructureRoom"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_Labor"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_WorkStructureGdsList"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "ActionRef"));
Mct_TypePosApplicTabApi.register(idvDetTK, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "note"));
commit();
//Запуск МСЧ
var idvLoadMsch = Mct_PosTypeApi.register("ЗМСЧ", "Запуск МСЧ", null, 0B);
//регистрируем доступных потомков
Mct_PosChildAvailApi.register(idvLoadMsch, Mct_PosTypeApi.findByMnemoCode("ТКМСЧ"), null);
Mct_PosChildAvailApi.register(idvLoadMsch, Mct_PosTypeApi.findByMnemoCode("ГТК"), null);
//регистрация закладок
var idvDetLoad = Mct_TypePosApplicApi.register(idvLoadMsch, idvObjectType);
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "card"));
Mct_TypePosApplicTabApi.register(idvDetLoad, idvOTDet);
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "ActionRef"));
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mes_WorkOrder"));
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_Labor"));
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_TechReference"));
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_WorkSructureRoom"));
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "Mct_Link"));
Mct_TypePosApplicTabApi.register(idvDetLoad, Btk_ObjectTypeTabApi.findByMnemoCode(ropOT, "note"));
commit();
//регистрируем потомка "Запуск МСЧ" для Технологический этап
var idvBigAction = Mct_PosTypeApi.findByMnemoCode("BigAction");
Mct_PosChildAvailApi.register(idvBigAction, idvLoadMsch, null);
commit();
//регистрируем потомка "Запуск МСЧ" для ПУГ
var idvPug = Mct_PosTypeApi.findByMnemoCode("Pug");
Mct_PosChildAvailApi.register(idvPug, idvLoadMsch, null);
commit();