Постановка задачи
Инструмент
note
Информация |
---|
Классификатор связей
Реализация
| ||
Изменения применяться на новом документе, после сброса дропкэша http://<host>:<port>/cm5div6/api/dropcache dropcache |
Поиск описания связи
- Открыть клиент админки админки http://<host>:<port>/cm5div6/BusinessUniverse.html
- Перейти в раздел Классификаторы\Классификатор связей\Описание связей
- Открыть фильтр, ввести параметры поиска:
- тип исходного конченого приложения = "Заседания"
- тип конечного исходного приложения = "Организационно-распорядительные документы"
- тип обратной связи = "ИсполнениеВо исполнение"
Редактирование описания связи
- Открыть описание связи на редактирование
Скопировать формулу заголовка/информацию о документе в текстовый редактор, пропустить через online-форматирование
Блок кода language js title Формула вычисления заголовка документа linenumbers true collapse true var result; var versmeetingType = ctx.get('Cm6$SubjectType'); vers = vers.size() > 0 ? vers.get(0) : ''; if (vers != '') { var subj = ctx.get('title'); subj = subj.size() > 0 ? subj.get(0) : ''; result = subj; } else { result = ctx.get('Subject'); result = resultresult = meetingType.size() > 0 ? resultmeetingType.get(0) : ''; ctx.setResult(result); } Заседание'; ctx.setResult(result);
Блок кода language js title Формула вычисления информации о целевом документе linenumbers true collapse true var complect = ctx.get('Complect'); complect = complect.size() > 0 ? complect.get(0) : ''; var complect2 = complect != '' ? complect.substring(complect.lastIndexOf('%') + 1) : ''; var OutDateresult; var eventDate = ctx.get('OutDateEventDate'); OutDateresult = OutDate.size() > 0 ? OutDate.get(0) : ''; var Date; if (session.equalsArrays(session.createArray(complect, complect2), session.createArray("InputDocs", "InputDocsPrev"))) { Date = ctx.get('Rdate'); Date = Date'Заседание от ' + (eventDate.size() > 0 ? DateeventDate.get(0) : ''; } else if (session.equalsArrays(session.createArray(complect, complect2), session.createArray("InternalDocs", "InternalDocsPrev", "Missions", "MissionsPrev"))) { Date = OutDate; } else if (session.equalsArrays(session.createArray(complect, complect2), session.createArray("Tasks"))) { Date = ctx.get('ResDate'); Date = Date.size() > 0 ? Date.get(0) : ''; } else if (session.equalsArrays(session.createArray(complect, complect2), session.createArray("ContractsLite"))) { Date ctx.setResult(result);
Далее отредактировать код в текстовом редакторе Notepad++ или в среде разработки IDEA/Eclipse
Блок кода language js title Формула вычисления заголовка документа linenumbers true collapse true var subject; var meetingType = ctx.get('Date'); Date = Date.size() > 0 ? Date.get(0) : ''; } else { Date = ctx.get('Rdate'); Date = Date.size() > 0 ? Date.get(0) : ''; }Type'); var Form = ctx.get('Form'); Form = Form.size() > 0 ? Form.get(0) : ''; var OutNumber = ctx.get('OutNumber'); OutNumber = OutNumber.size() > 0 ? OutNumber.get(0) : ''; var Type; var Number; if ("spismopoint".equals(Form)) { Type = "СП "; } else if ("resolution".equals(Form)) { Type = "Поручение "; } else if ("Dog".equals(Form)) { Type subject = ctx.get('dogtypepointText'); Typesubject = Typesubject.size() > 0 ? Typesubject.get(0) : ''; } else if ("AddAgr".equals(Form)) { Typesubject = "ДС "; } else if ("DocDogovor".equals(Form)) { Type = "Документ по договору "; } else if ("Finance".equals(Form)) { Type = "Финдокумент "; } else { Type = ctx.get('reqtype'); Type = Type.meetingType.size() > 0 ? TypemeetingType.get(0) : 'Заседание'; } if ("spismo".equals(Form)) { Number = OutNumber; } else if (session.equalsArrays(session.createArray(complect, complect2), session.createArray("InputDocs", "InputDocsPrev"))) { var rprist = ctx.get('rprist'); var RNumbervar result = subject; ctx.setResult(result);
Блок кода language js title Формула вычисления информации о целевом документе linenumbers true collapse true var docInfo; var eventDate = ctx.get('RNumberEventDate'); var rfinForm = ctx.get('rfinForm'); rpristForm = rpristForm.size() > 0 ? rprist.get(0) : ''; RNumber = RNumber.size() > 0 ? RNumber.get(0) : ''; rfin = rfin.size() > 0 ? rfinForm.get(0) : ''; Number = rprist + RNumber + rfin; } else if ("Financepoint".equals(Form)) { Number = ctx.get("Number"); Number = Number.size() > 0 ? Number.get(0) : ''; Date = ctx.get("Date"); Date = Date.size() > 0 ? Date.get(0) : docInfo = ''; } else { var rpristdocInfo = ctx.get('rprist'); var RNumber = ctx.get('RNumber'); var rfin = ctx.get('rfin'); rprist = rprist'Заседание от ' + (eventDate.size() > 0 ? rpristeventDate.get(0) : ''; RNumber = RNumber.size() > 0 ? RNumber.get(0) : ''; rfin = rfin.size() > 0 ? rfin.get(0) : ''; Number = rprist + RNumber + rfin; } Date = Date == '' ? "" : Date.toString(); var result = Type + " " + Number + " от " + DatedocInfo; ctx.setResult(result);
- Далее редактируется кодВставить код, сохранить изменения
Проверка изменений
Сделать dropcache
- Повторно выполнить сценарий
- Аналогично сделать правку для описание связи "В ответ на"