DFEX

DFEX (DocFlow EXchange) - модуль, предназначенный для обмена документами между канцеляриями, расположенными на одном или нескольких экземплярах ARTA Synergy.

Описание

Определения

Организация — это структурное подразделение, ведущее собственную канцелярию. В орг. структуре одного экземпляра ARTA Synergy может быть одна или несколько организаций. Предполагается, что если на одном сервере должно присутствовать несколько организаций, то для каждой из них настраиваются журналы входящих и исходящих документов и на эти журналы даются права сотрудникам канцелярии соответствующих организаций.

Группа организаций — это именованное объединение нескольких организаций, находящихся на одном и/или разных серверах ARTA Synergy.

Получателем документа может выступать как организация, так и группа организаций, отправителем — одна организация.

Правила взаимодействия

В используемых формах обязательно должно присутствовать поле To, ссылающееся на значение поля Name справочника ExtDtiOrganization. Кроме того, в формах может использоваться поле Subject, значение которого будет записано в краткое содержание входящего документа получателя.

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

Правила указания кода передаваемых типов документов зависят от расположения взаимодействующих организаций:

1. Организации расположены на одном экземпляре AS, каждая организация имеет только один журнал входящих и один журнал исходящих документов, участвующих в обмене.

Код типа документа должен быть указан равным значению поля DocTypeCode справочника ExtDtiOrganization.

2. Каждая организация находится на выделенном сервере, используется два и более журнала для входящих документов.

Строка, соответствующая коду документа, должна быть указана в данных формы таким образом:

<DocDataType>DocAnswer</DocDataType>

Значением DocDataType является не сам код типа документа, а его часть. В таблице ниже описано соответствие DocDataType и кода типа документа.

DocDataType Код типа документа

DocAnswer

ExtDtiInDocAnswer

DocInc

ExtDtiInDocInc

Ограничения

Модуль DF-EX использует формы старого образца, расположенные в Хранилище и опубликованные через Административное приложение.

Примечание 1. У администратора AS должны быть все права на папку, в которой расположены используемые формы.

Примечание 2. Публикация форм и разрешение на их создание в Хранилище производится в Административном приложении - Хранилище - Формы (илл. «Административное приложение - Формы»):

Рисунок 15.1. Административное приложение - Формы

Административное приложение - Формы

Пример используемой формы

Данные

<asf:document  
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"   
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xmlns:asf="http://www.arta.kz/xml/ns/asform"  
    asf:id="${fid()}"  
    asf:code="${fc()}"  
    asf:version="${fv()}"  
    asf:name="${fn()}"  
    asf:oid="${foid()}"
>
  <Subject/>
  <tos>
     <To/>
  </tos>
</asf:document>

Модель

<xf:bind nodeset="${p()}Subject" type="xs:string"/>
<xf:bind nodeset="${p()}tos/To" type="xs:string"/>
<xf:instance id="dicExtDtiOrganization" src="generic-dictionary-instance? 
    code=ExtDtiOrganization&amp;sort=Name"/>

Зависимости

<style type="text/css">
   @namespace xf url("http://www.w3.org/2002/xforms");
   /* The default field width for all inputs */
   .xforms-value {
      width: 300px
   }
</style>

Тело

<table>
<tr>
<td>${t("Тема")}</td>
<td><xf:input ref="${p()}Subject"/></td>
</tr>
</table>
<table style="height:50px">
<xf:repeat id="repeat" nodeset="tos" appearance="compact"> 
  <tr style="height:100px">
    <td>${t("Кому")}</td>
    <td>
      <xf:select1 ref="To"  selection="closed" incremental="true">
        <xf:itemset nodeset="instance('dicExtDtiOrganization')/items/item">
          <xf:label ref="Name"/>
          <xf:value ref="Id"/>
        </xf:itemset>
      </xf:select1>
       <xf:trigger>
        <xf:label>X</xf:label>
        <xf:delete nodeset="." at="1" ev:event="DOMActivate" if="count(//tos) > 1"/>
      </xf:trigger> 
    </td>
  </tr>
</xf:repeat>
</table>
<table>
<tr>
    <td></td>
    <td>
         <xf:trigger>
           <xf:label>Добавить адресат</xf:label> 
             <xf:action ev:event="DOMActivate"> 
                 <xf:insert nodeset="tos" position="after" at="last()"/>                
                 <xf:setvalue ref="tos[last()]/To"></xf:setvalue> 
             </xf:action> 
     </xf:trigger>
     </td>
  </tr>
</table>