Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
details
Информация
СтатусОтображаемую информацию о связанных документахТаблица связейImage Removed
Подсказка

Конфигурация связей в системе происходит в корневом элементе link в файле link.pal.xml

Параметры

icon
СтатусcolourYellowtitleВ РАБОТЕАвторКомментарий
панель

На этой странице:

Оглавление

Описание

Через конфигурацию связей можно настроить:

  • Связь с объектом в модуле (Входящий документ, Договор, Исходящий документ и т.д.)
    Выбор связейImage RemovedСоздание связанного документаImage Removed
  • Выбор вариантов типов связей и их направление
    Выбор типов связейImage Removed
  • false

    Корневой элемент link. Пространство имен: <links xmlns="http://www.intertrust.ru/schema/palette/links">

    Информация
    iconfalse
    titleКраткое описание
    • связь между объектами модулей,
    • выбор типов связей
    • отображение информации о связанном документе
    Блок кода
    languagexml
    title
    Конфигурация
    Структура XML
    collapsetrue
    <?xml version='1.0' encoding='UTF-8'?>
    <links xmlns="http://www.intertrust.ru/schema/palette/links">
    	<link for-general-document="true">	             
    		<source doc-type="
    <Название
    {Название формы 
    объекта>
    объекта}">
    			<modue-id id="
    <ReplicaID>
    {ReplicaID модуля}"/>
        		<module ident="
    <Module 1>
    {Тип программы [1]}"/>
    			<module ident="
    <Module N>
    {Тип программы [2]}" complect="{Название комплекта}"/>
        	</source>
              
    	
    <target>
    	<target doc-type="{Название формы объекта}"> 
    			<modue-id id="
    <ReplicaID>
    {ReplicaID модуля}"/>
      
     
     
     
     
     
    		<module ident="
    <Module 2>
    {Тип программы [1]}"/>
    			<module ident="{Тип программы [2]}" complect="
    <Module
    {Название 
    N>
    комплекта}"/>
       
    		</target>
    
        	<get-doc way="byDocID" />
    
     		<link-types>
    			<link-type-ref ref="
    <Тип
    {Тип связи 
    1>
    [1]}" direction="from" back-ref="
    <Тип
    {Тип связи 
    2>
    [2]}" link-on="now" select="true"/>
     			<link-type-ref ref="
    <Тип
    {Тип связи 
    1>
    [3]}" direction="from" back-ref="
    <Тип
    {Тип связи 
    2>
    [4]}" link-on="now" select="true"/>
       	 	</link-types>
    
    		<calc-name lang="JavaScript">
    			<![CDATA[...]]>
        	</calc-name> 
    
        	<calc-doc-info lang="JavaScript">
        		<![CDATA[...]]>
        	</calc-doc-info>
    	</link>
    </links>


    attributes

    ПараметрыОписание

    for-general-document

    Указывается
    Определяет, что данная настройка связи, предназначена для основных объектов модуля.

    source/target

    source - отвечает за список модулей, от которых проставляется связь;  target - отвечает за список модулей, на которые проставляется связь.

    В данном параметре указывается список модулей, через тег module или module-id.

    Если в модуле содержится несколько объектов и для каждого объекта нужно настроить свой набор связей, то это делается через атрибут doc-type

    ПараметрыОписание

    manual

    Установка связи "вручную".  Используется только в target

    doc-type

    Указывается название

    Название формы объекта, с которым будет осуществляться связь. К примеру, для Документа по договору будет указан идентификатор DocDogovor,  а для Доп. соглашения - AddAgr

    Для связи основных объектов в модуле данный атрибут остается пустым. Такими являются: РКК, Договор, Заседание и т.д.

    module

    Для указания модуля

    Модуль, с которым устанавливается связь, используются атрибуты:

    • ident -
    тип программы (например: InputDocs, OutputDocs и т.д.) или *
    комплект, в котором находится модуль

    module-id

    Указывается реплика
    Реплика модуля, через атрибут id

    get-doc

    Указывается способ direction -

    Способ получения документа. Атрибут way определяет варианты:

    • byDocID  - по полю DocID в объекте
    • byId - по идентификатору документа

    В данном параметре указывается список типов связей, через тег link-type-ref

    Для указания типов связей используются следующие атрибуты:

    Параметры
  • ref - тип связи (вставить ссылку на тип связи) 
  • Описание
    ref

    Название типа связи

    direction

    направление связи. Варианты:

    from - от документа

    , to - на документ

    , without - без направления

    back-ref
    -

    обратный тип связи

    (вставить ссылку на тип связи)

    -

    событие, по которому проставляется связь. Варианты:

    now - сразу

    , registration - по факту регистрации

    select
    -
    выбор типа связи вручную. По умолчанию выключен.
    default
    -
    установка типа связи по умолчанию в колонке [1] таблицы связей

    calc-name

    Вычисляется название заголовка, который располагается в колонке [2] таблицы связей

    Блок кода
    languagexml
    titleПример
    collapse
    true
    <calc-name lang="JavaScript">
    <![CDATA[var result;
    
                var Form = ctx.get('Form');
                Form = Form.size() > 0 ? Form.get(0) : '';
    
                var context = ctx;
    
                if ("resolution".equals(Form)) {
                    var rkkDocId = ctx.get('RkkDocId');
                    rkkDocId = rkkDocId.size() > 0 ? rkkDocId.get(0) : '';
                    if (rkkDocId !== '') {
                        context = session.findByStrId(rkkDocId);
                    }
                }
    
                var vers = context.get('Cm6$Subject');
                vers = vers.size() > 0 ? vers.get(0) : '';
                if (vers != '') {
                    var subj = context.get('title');
                    subj = subj.size() > 0 ? subj.get(0) : '';
                    result = subj;
                } else {
                    result = context.get('Subject');
                    result = result.size() > 0 ? result.get(0) : '';
                }
                ctx.setResult(result);]]>
    </calc-name>


    calc-doc-info

    Вычисляется докинфо, который располагается в колонке [3] таблицы связей

    Блок кода
    languagexml
    titleПример
    collapse
    true
    <calc-doc-info lang="JavaScript">
                <![CDATA[var result;
    					var Reqtype = ctx.get('Reqtype');
    					var rprist = ctx.get('rprist');
    					var RNumber = ctx.get('RNumber');
    					var rfin = ctx.get('rfin');
    					var Outdate = ctx.get('Outdate');
    
    					Reqtype = Reqtype.size() > 0 ? 		Reqtype.get(0) : '';
    					rprist = rprist.size() > 0 ? rprist.get(0) : '';
    					RNumber = RNumber.size() > 0 ? RNumber.get(0) : '';
    					rfin = rfin.size() > 0 ? rfin.get(0) : '';
    					Outdate = Outdate.size() > 0 ? Outdate.get(0).toString() : '';
    
    					var result = Reqtype + " " + rprist + RNumber + rfin + " от " + Outdate;
    					ctx.setResult(result);]]>
    </calc-doc-info>


    calc-version-fix

    (!)

    Текущая версия документа в связях.

    Конфигурации

    Добавление связи в связываемый объект

    Для данной задачи требуется конфигурировать связи в две стороны: сначала от исходного модуля к конечному и наоборот. Если этого не сделать, то связь будет проставлена в одну сторону.

    Блок кода
    languagexml
    titleПример. Создание связи между ВхД и ИсхД
    collapsetrue
    <!--Этап 1. Связи входящего документа на исходящий документ -->
    <link for-general-document="true">
     	<get-doc way="byDocID"/>
    	<source>
    		<module ident="InputDocsPrev"/>
    		<module ident="InputDocs"/>
    	</source>
    	<target>
    		<module ident="OutputDocsPrev"/>
    		<module ident="OutputDocs"/>
    	</target>
    	<link-types>
    		<link-type-ref ref="BECAUSE" direction="to" back-ref="LINK_WITH" select="true" link-on="now"/>
    		<link-type-ref ref="LINK_WITH" direction="without" back-ref="LINK_WITH" select="true" link-on="now" default="true"/>
    		<link-type-ref ref="ADD" direction="to" back-ref="ADDED" select="true" link-on="now"/>
    		<link-type-ref ref="ADDED" direction="to" back-ref="ADD" select="true" link-on="now"/>
    	</link-types>
    	<calc-name lang="JavaScript"><![CDATA[...]]></calc-name>
    	<calc-doc-info lang="JavaScript"><![CDATA[...]]></calc-doc-info>
    </link>
    
    <!--Этап 2. Связи исходящего документа на входящий документ --> 
    <link for-general-document="true">
    	<get-doc way="byDocID"/>
    	<source>
    		<module ident="OutputDocs"/>
    		<module ident="OutputDocsPrev"/>
    	</source>
    	<target>
    		<module ident="InputDocsPrev"/>
    		<module ident="InputDocs"/>
    	</target>
    	<link-types>
    		<link-type-ref ref="BECAUSE_2" direction="from" back-ref="LINK_WITH" select="true" link-on="now"/>
    		<link-type-ref ref="ADD" direction="from" back-ref="ADDED" select="true" link-on="now"/>
    		<link-type-ref ref="ADDED" direction="from" back-ref="ADD" select="true" link-on="now"/>
    		<link-type-ref ref="LINK_WITH" direction="without" back-ref="LINK_WITH" select="true" link-on="now" default="true"/>
        </link-types>
        <calc-name lang="JavaScript"><![CDATA[...]]></calc-name>
       	<calc-doc-info lang="JavaScript"><![CDATA[...]]></calc-doc-info>
    </link>

    Создание связанного объекта из панели действий

    Система позволяет создать новый связанный объект из исходного объекта. 

    Данная операция запускается через панель действий по кнопке "Создать\Связанный документ\<Модуль>\<Тип связи>". Меню формируется динамически, на базе сконфигурированых связей.

    <Модуль> и <Тип связи> вычисляются на базе конечной конфигурации [Этап 2]. Выбранный тип связи автоматически проставится в документ.

    Блок кода
    languagexml
    titleПример. Создание связи "В ответ на"
    collapsetrue
    <!--Этап 1. Связи входящего документа на исходящий документ --> <link for-general-document="true"> <get-doc way="byDocID"/> <source> <module ident="InputDocsPrev"/> <module ident="InputDocs"/> </source> <target> <module ident="OutputDocsPrev"/> <module ident="OutputDocs"/> </target> <link-types> <link-type-ref ref="AT" direction="to" back-ref="FROM" link-on="now"/> </link-types> <calc-name lang="JavaScript"><![CDATA[...]]></calc-name> <calc-doc-info lang="JavaScript"><![CDATA[...]]></calc-doc-info> </link> <!--Этап 2. Связи исходящего документа на входящий документ --> <link for-general-document="true"> <get-doc way="byDocID"/> <source> <module ident="OutputDocs"/> <module ident="OutputDocsPrev"/> </source> <target> <module ident="InputDocsPrev"/> <module ident="InputDocs"/> </target> <link-types> <link-type-ref ref="FROM" direction="from" back-ref="AT" select="true" link-on="now"/> </link-types> <calc-name lang="JavaScript"><![CDATA[...]]></calc-name> <calc-doc-info lang="JavaScript"><![CDATA[...]]></calc-doc-info> </link>
    Примечание
    iconfalse

    Механизм разрабатывался для отображения версиий документов в связях, но реальное применение не найдено 

    Свойства страницы
    Статус

    Статус
    colourGreen
    titleДоработка

    Комментарий


    панель

    Теги и атрибуты

    Оглавление