{~CreateDoc75
  создает документ 75 класса на основе блока IK.ZR

  aXmlED75 - описание создаваемого эд 11го
  aXmlZR - узел из входного файла

  результат:
    =true - эд aXmlED5 создан
    =false - эд aXmlED5 не создан.

  exchange #3062
    перенос функционала проверки кбк в строках сюда.}
function CreateDoc75(aXmlED75, aXmlZR, aXmlIK: Variant): Boolean;
var
  i: Integer;
  Fio, Dolzhnost: String;
  XmlOrg, XmlAcc, Permission, Kbk: Variant;
  xBudgetID: string;
  xXmlED75Lines: Variant;
  xXmlED75Line: Variant;
  xXmlZRNode: Variant;
begin

    try
      Result := False;

      xBudgetID := aXmlED75.getAttribute('F_BUDGET_ID');

      // exchange #3062 - перенос проверки строк ZRST в создание эд
      // проверка выполняется уже после того, как в логе указано
      // какой эд создается.
      if NOT CheckKBK_All_ZRST( aXmlZR, xBudgetID)
        then EXIT;

      aXmlED75.setAttribute('action', 'insert');
      aXmlED75.setAttribute('BUDGET_ID', xBudgetID);//aXmlED75.getAttribute('F_BUDGET_ID'));
      aXmlED75.setAttribute('GUID_FK', aXmlED75.getAttribute('FOREIGN_KEY'));
      aXmlED75.setAttribute('DOC_DATE', DateTimeToXml(StrToDate(aXmlED75.getAttribute('DOC_DATE'))));
      if aXmlZR.getAttribute('ORDER_PL') <> '0' then
        aXmlED75.setAttribute('QUEUE_KIND', aXmlZR.getAttribute('ORDER_PL'))
      else
        aXmlED75.setAttribute('QUEUE_KIND', GetQueueKind);
      //Exchange#2239
      if aXmlED75.getAttribute('QUEUE_KIND') = '=' then
        aXmlED75.setAttribute('QUEUE_KIND', '6');
      aXmlED75.setAttribute('LIMITING_DATE', aXmlZR.getAttribute('DATE_ISP'));
      if aXmlED75.getAttribute('LIMITING_DATE') <> '' then
        aXmlED75.setAttribute('LIMITING_DATE',
          DateTimeToXml(StrToDate(aXmlED75.getAttribute('LIMITING_DATE'))));
      aXmlED75.setAttribute('EXTSTATUS_ID', 0);
      aXmlED75.setAttribute('FK_FLAG', 1);
      aXmlED75.setAttribute('SIGN_VOLUME', aXmlZR.getAttribute('TYPE'));
      aXmlED75.setAttribute('TAXCODE_PP', aXmlZR.getAttribute('INN_UBP'));
      aXmlED75.setAttribute('KPP_PP', aXmlZR.getAttribute('KPP_UBP'));
      aXmlED75.setAttribute('AMOUNT', 0);
      aXmlED75.setAttribute('PAYKIND', PayKindSetAsAzk(aXmlZR.getAttribute('VID_PL')));
      aXmlED75.setAttribute('ADVANCE_PAYMENT', aXmlZR.getAttribute('TYPE_AP'));
      // определяем плательщика
      WriteLog('Заполнение данных плательщика', True);
      aXmlED75.setAttribute('PAY_TAXCODE', aXmlIK.getAttribute('INN_UBP'));
      aXmlED75.setAttribute('PAY_KPP', aXmlIK.getAttribute('KPP_UBP'));
      aXmlED75.setAttribute('PAY_NAME', aXmlIK.getAttribute('NAME_UBP_PUBP'));
      WriteLog('Поиск референса плательщика по ИНН и КПП', True);
      aXmlED75.setAttribute('PAY_ID', '');
      //поиск референса плательщика
      if Trim(aXmlIK.getAttribute('INN_UBP')) <> '' then
      begin
        XmlOrg := GetOrgByTaxKpp(aXmlIK.getAttribute('INN_UBP'),
          aXmlIK.getAttribute('KPP_UBP'), '', '', False, aXmlED75);
        if not ((XmlOrg.documentElement.childNodes.Length = 1)
          and HasOrgRole(XmlOrg.documentElement.childNodes.Item[0].getAttribute('ID'), '0')
          and IsActual(XmlOrg.documentElement.childNodes.Item[0].getAttribute('ID'),
            aXmlED75.getAttribute('BUDGET_ID'))) then
        begin
          WriteLog('Не удалось найти референс плательщика по ИНН и КПП. Поиск' +
            ' референса плательщика по ИНН, КПП и коду организации');
          //Exchange#2093
          XmlOrg := GetOrgByTaxKppBudgIdCode(aXmlIK.getAttribute('INN_UBP'),
            aXmlIK.getAttribute('KPP_UBP'), aXmlED75.getAttribute('BUDGET_ID'),
            aXmlIK.getAttribute('KOD_UBP_PUBP'), '0');
        end;
        if XmlOrg.documentElement.childNodes.Length = 1 then
        begin
          XmlOrg := XmlOrg.documentElement.childNodes.Item[0];
          aXmlED75.setAttribute('PAY_ID', XmlOrg.getAttribute('ID'));
          //чтобы не ломать общий поиск разрешения, записываем референс в шапку
          aXmlED75.setAttribute('ORG_ID', aXmlED75.getAttribute('PAY_ID'));
          WriteLog('Найден плательщик с референсом: ' + XmlOrg.getAttribute('ID'));
          // определяем счет для плательщика
          if aXmlIK.getAttribute('LS_UBP') = '' then
          begin
            WriteInfo('Не создан - не определен счет плательщика');
            Result := False;
            Exit;
          end
          else begin
            XmlAcc := GetAccAllRekByOrgIdAccNum(aXmlED75.getAttribute('PAY_ID'),
              aXmlIK.getAttribute('LS_UBP'), '5', '0');
            if XmlAcc.documentElement.childNodes.Length = 1 then
            begin
              XmlAcc := XmlAcc.documentElement.childNodes.Item[0];
              aXmlED75.setAttribute('PAY_ACC_ID', XmlAcc.getAttribute('ID'));
              //Заполняем данные по счету плательщика
              aXmlED75.setAttribute('PAY_ACCOUNT', aXmlIK.getAttribute('LS_UBP'));
              //чтобы не ломать общий поиск разрешения, записываем референс в шапку
              aXmlED75.setAttribute('ORGACCOUNT_ID',aXmlED75.getAttribute('PAY_ACC_ID'));
              aXmlED75.setAttribute('PAY_OFK_NAME', XmlAcc.getAttribute('OFK_DESCRIPTION'));
              aXmlED75.setAttribute('PAY_UFK_NAME', XmlAcc.getAttribute('UFK_DESCRIPTION'));
              aXmlED75.setAttribute('PAY_UFK_ACCOUNT', XmlAcc.getAttribute('SPECUFK_ACCOUNT_NUMBER'));
              aXmlED75.setAttribute('PAY_UFK_ACC_ID', XmlAcc.getAttribute('SPECUFK_ACC_ID'));
              aXmlED75.setAttribute('PAY_BIC', XmlAcc.getAttribute('SPECBIC'));
              aXmlED75.setAttribute('PAY_B_NAME', XmlAcc.getAttribute('SPECB_NAME'));
              aXmlED75.setAttribute('PAY_CORACCOUNT', XmlAcc.getAttribute('SPECCORACCOUNT'));
              // определяем бланк расходов
              aXmlED75.setAttribute('ESTIMATE_ID', GetEstimateIdSs(aXmlED75.getAttribute('BUDGET_ID'),
                aXmlED75.getAttribute('PAY_ID'), aXmlED75.getAttribute('ORGACCOUNT_ID')));
              if aXmlED75.getAttribute('ESTIMATE_ID') = '' then begin
                WriteInfo('Не создан - не определен бланк расходов плательщика');
                Result := False;
                Exit;
              end;
            end
            else begin
              WriteInfo('Не создан - не определен референс счета плательщика');
              Result := False;
              Exit;
            end;
          end;
        end
        else begin
          WriteInfo('Не создан - не определен референс плательщика');
          Result := False;
          Exit;
        end;
      end
      else begin
        WriteInfo('Не создан - не определен референс плательщика');
        Result := False;
        Exit;
      end;
      //блок получатель
      WriteLog('Заполнение данных получателя', True);
      aXmlED75.setAttribute('REC_TAXCODE', aXmlZR.getAttribute('INN_RCP'));
      aXmlED75.setAttribute('REC_KPP', aXmlZR.getAttribute('KPP_RCP'));
      aXmlED75.setAttribute('REC_NAME', aXmlZR.getAttribute('NAME_RCP'));
      WriteLog('Поиск референса получателя по ИНН и КПП', True);
      aXmlED75.setAttribute('REC_ID', '');
      if ((IsSysparamOn('org.require_taxcode') and (aXmlED75.getAttribute('REC_TAXCODE') = ''))
        or (IsSysparamOn('org.require_kpp') and (aXmlED75.getAttribute('REC_KPP') = ''))) then
      begin
        WriteInfo('Не создан - не заполнены ИНН или КПП контрагента');
        Result := False;
        Exit;
      end
      else begin
        if aXmlED75.getAttribute('REC_TAXCODE') <> '' then
        begin
          XmlOrg := GetOrgByTaxKpp(aXmlZR.getAttribute('INN_RCP'),
            aXmlZR.getAttribute('KPP_RCP'), '', '', False, aXmlED75);
          if (XmlOrg.documentElement.childNodes.Length = 1) and
            IsActual(XmlOrg.documentElement.childNodes.Item[0].getAttribute('ID'),
              aXmlED75.getAttribute('BUDGET_ID')) then
          begin
            XmlOrg := XmlOrg.documentElement.childNodes.Item[0];
            aXmlED75.setAttribute('REC_ID', XmlOrg.getAttribute('ID'));
            WriteLog('Найден получатель с референсом: ' + XmlOrg.getAttribute('ID'));
          end
          else
            WriteLog('Референс получателя не опеределен', True);
        end
        else begin
          WriteLog('Референс получателя не опеределен', True);
          if (not IsSysparamOn('org.permit_empty_taxcode')) then
          begin
            WriteInfo('Не создан - не заполнен ИНН контрагента и настройка "Позволять ' +
              'указывать в ЭД организацию-контрагент не из справочника без ИНН" выключена');
            Result := False;
            Exit;
          end;
        end;
      end;
      // заполняем поля по счету блока получатель
      if aXmlZR.getAttribute('LS_UBP_RCP') <> '' then
      begin
        aXmlED75.setAttribute('REC_ACCOUNT', aXmlZR.getAttribute('LS_UBP_RCP'));
        if aXmlED75.getAttribute('REC_ID') <> '' then
        begin
          WriteLog('Поиск референса счета получателя', True);
          XmlAcc := GetAccAllRekByOrgIdAccNum(aXmlED75.getAttribute('REC_ID'),
            aXmlED75.getAttribute('REC_ACCOUNT'), '5, 9');
          if XmlAcc.documentElement.childNodes.Length = 1 then
          begin
            XmlAcc := XmlAcc.documentElement.childNodes.Item[0];
            aXmlED75.setAttribute('REC_ACC_ID', XmlAcc.getAttribute('ID'));
            aXmlED75.setAttribute('REC_OFK_NAME', XmlAcc.getAttribute('OFK_DESCRIPTION'));
            aXmlED75.setAttribute('REC_UFK_NAME', XmlAcc.getAttribute('UFK_DESCRIPTION'));
            aXmlED75.setAttribute('REC_UFK_ACCOUNT', XmlAcc.getAttribute('UFK_ACCOUNT_NUMBER'));
            aXmlED75.setAttribute('REC_UFK_ACC_ID', XmlAcc.getAttribute('UFK_ACC_ID'));
            WriteLog('Найден счет получателя с референсом: ' + XmlAcc.getAttribute('ID'));
          end
          else
            WriteLog('Референс счета получателя не опеределен', True);
        end;
      end
      else begin
        aXmlED75.setAttribute('REC_ACCOUNT', aXmlZR.getAttribute('BS_RCP'));
        if aXmlED75.getAttribute('REC_ID') <> '' then
        begin
          WriteLog('Поиск референса счета получателя', True);
          XmlAcc := QueryXml(sqlAccByOrgId + ' and Account_Number = ? and OrgAccType_Id in (2, 3)',
            [aXmlED75.getAttribute('REC_ID'), aXmlED75.getAttribute('REC_ACCOUNT')]);
          if XmlAcc.documentElement.childNodes.Length = 1 then
          begin
            XmlAcc := XmlAcc.documentElement.childNodes.Item[0];
            aXmlED75.setAttribute('REC_ACC_ID', XmlAcc.getAttribute('ID'));
            WriteLog('Найден счет получателя с референсом: ' + XmlAcc.getAttribute('ID'));
          end
          else
            WriteLog('Референс счета получателя не опеределен', True);
        end;
      end;
      aXmlED75.setAttribute('REC_BIC', aXmlZR.getAttribute('BIC_RCP'));
      aXmlED75.setAttribute('REC_B_NAME', aXmlZR.getAttribute('NAME_BIC_RCP'));
      aXmlED75.setAttribute('REC_CORACCOUNT', aXmlZR.getAttribute('KS_BIC_RCP'));
      aXmlED75.setAttribute('DESCRIPTION', aXmlZR.getAttribute('PURPOSE'));
      //заполняем идентификатор
      // exchange #3062 - унификация кода
      if NOT FillDepartamentalinfo_ImpIK_ZR(aXmlED75, aXmlZR)
        then EXIT;
        {
      aXmlED75.setAttribute('AUTHOR_ID', Get_Author_Id(aXmlZR.getAttribute('PAYSTATUS')));
      //Exchange #771, если KDOH не пусто, а AUTHOR_ID пусто, то AUTHOR_ID заполняем нулем.
      if (aXmlED75.getAttribute('AUTHOR_ID') = '') and (aXmlZR.getAttribute('KDOH') <> '') then
        aXmlED75.setAttribute('AUTHOR_ID', 0);
      if aXmlED75.getAttribute('AUTHOR_ID') <> '' then
      begin
        // exchange #2791 - проверка КБК в ид.платежа
        // если проверка =false - не создаем эд.
        // при этом ошибку указываем в журнале info
        if NOT DoCheck_2791_LoadKBK0_PI_BUDGET_CODE( aXmlZR.getAttribute('KDOH'))
          then begin
            Result := False;
            EXIT;
          end;

        aXmlED75.setAttribute('PI_ANAL_KIND', GetPi_Anal_Kind(
          Copy(aXmlZR.getAttribute('KDOH'), 18, 3)));
        aXmlED75.setAttribute('PI_BUDGET_CODE', aXmlZR.getAttribute('KDOH'));
        aXmlED75.setAttribute('PAY_OKATO', aXmlZR.getAttribute('OKATO'));
        aXmlED75.setAttribute('GROUND_ID', GetGrnd_Ground_Id(aXmlZR.getAttribute('OSN_PL')));
        aXmlED75.setAttribute('TAXPERIOD', aXmlZR.getAttribute('NAL_PER'));
        aXmlED75.setAttribute('GRND_DOC_NUMBER', aXmlZR.getAttribute('NOM_DOK'));
        aXmlED75.setAttribute('GRND_DOC_DATE', aXmlZR.getAttribute('DATE_DOK'));
        aXmlED75.setAttribute('PAYTYPE_ID', GetGrnd_PayType_Id(aXmlZR.getAttribute('TYPE_PL')));
      end
      else begin
        aXmlED75.setAttribute('PI_BUDGET_CODE', '');
        aXmlED75.setAttribute('PAY_OKATO', '');
        aXmlED75.setAttribute('TAXPERIOD', '');
        aXmlED75.setAttribute('GRND_DOC_NUMBER', '');
        aXmlED75.setAttribute('GRND_DOC_DATE', '');
      end;
      }
      //заполняем закладку "ответственные лица и чек"
      // exchange #2549
      // выборка ответственных лиц с флагом актуальности
      GetRespersonEx(aXmlED75.getAttribute('PAY_ID'),'-2' , Fio, Dolzhnost);
      aXmlED75.setAttribute('BOSS_FIO', Fio);
      aXmlED75.setAttribute('BOSS_POST', Dolzhnost);
      // exchange #2549
      // выборка ответственных лиц с флагом актуальности
      GetRespersonEx(aXmlED75.getAttribute('PAY_ID'),'-3' , Fio, Dolzhnost);
      aXmlED75.setAttribute('BUHGALT_FIO', Fio);
      aXmlED75.setAttribute('BUHGALT_POST', Dolzhnost);
      aXmlED75.setAttribute('SIGN_DATE', aXmlED75.getAttribute('DOC_DATE'));
      //Exchange#2005 изменение формирования вкладки  документа-основания

      xXmlED75Lines := aXmlED75.appendChild(
                          aXmlED75.ownerDocument.createElement('GROUND_DOC'));
      for i := 0 to aXmlZR.ChildNodes.Length - 1 do begin
        xXmlZRNode := aXmlZR.ChildNodes.Item[i];
        if xXmlZRNode.NodeName = 'ZROSN' then begin

          xXmlED75Line := xXmlED75Lines.appendChild(
                            aXmlED75.ownerDocument.createElement('GROUND_DOC'));
          xXmlED75Line.setAttribute('KIND', xXmlZRNode.getAttribute('VID_OSN'));
          xXmlED75Line.setAttribute('DOC_NUMBER', xXmlZRNode.getAttribute('NOM_OSN'));
          xXmlED75Line.setAttribute('DOC_DATE', xXmlZRNode.getAttribute('DATE_OSN'));
          if xXmlED75Line.getAttribute('DOC_DATE') <> '' then
            xXmlED75Line.setAttribute('DOC_DATE',
              DateTimeToXml(StrToDate(xXmlED75Line.getAttribute('DOC_DATE'))));
          xXmlED75Line.setAttribute('DESCRIPTION', xXmlZRNode.getAttribute('OSN'));
//          aXmlED75 := aXmlED75.parentNode;
        end;
//        aXmlZR := aXmlZR.parentNode;
      end;//for//
//      aXmlED75 := aXmlED75.ownerDocument.documentElement;

      aXmlED75.setAttribute('CODE_GRBS', aXmlZR.selectSingleNode('ZRST').getAttribute('KADMD_CODE'));
      aXmlED75.setAttribute('ORG_GRBS', '');
      Kbk := QueryXml('Select Kl.* From Kadm_lines Kl Left Join kadm K on K.Id = Kl.master_id' +
        ' Where Kl.Budget_Id = ? and K.Code = ? order by Kl.Begin_Date desc', [aXmlED75.getAttribute('BUDGET_ID'),
        aXmlZR.selectSingleNode('ZRST').getAttribute('KADMD_CODE')]);
      Kbk := Kbk.ChildNodes.Item[0];
      if Kbk.ChildNodes.Length = 1 then
        aXmlED75.setAttribute('ORG_GRBS', Kbk.ChildNodes.item[0].getAttribute('DESCRIPTION'))
      else begin
        for i := 0 to Kbk.ChildNodes.Length -1 do
        begin
          Kbk := Kbk.ChildNodes.item[i];
          if Kbk.getAttribute('END_DATE') = '' then
            aXmlED75.setAttribute('ORG_GRBS', Kbk.getAttribute('DESCRIPTION'))
          else if (Work_Date >= XmlToDateTime(Kbk.getAttribute('BEGIN_DATE'))) and
            (Work_Date <= XmlToDateTime(Kbk.getAttribute('END_DATE'))) then
            aXmlED75.setAttribute('ORG_GRBS', Kbk.getAttribute('DESCRIPTION'));
          Kbk := Kbk.parentNode;
        end;
        if aXmlED75.getAttribute('ORG_GRBS') = '' then
          aXmlED75.setAttribute('ORG_GRBS', Kbk.selectSingleNode('ROW').getAttribute('DESCRIPTION'));
      end;
      //заполнение строк документа
      aXmlED75 := aXmlED75.appendChild(aXmlED75.ownerDocument.createElement('LINES'));
      for i := 0 to aXmlZR.ChildNodes.Length - 1 do
      begin
        aXmlZR := aXmlZR.ChildNodes.Item[i];
        if aXmlZR.NodeName = 'ZRST' then
        begin
          //ищем разрешение для данной строки
          Permission := GetPermissionDoh(aXmlED75.parentNode, aXmlZR, True);
          if VarIsNull(Permission) then
          begin
            WriteInfo('Не создан - не определено разрешение на открытие лс');
            aXmlZR := aXmlZR.parentNode.parentNode;
            Exit;
          end;
          aXmlED75 := aXmlED75.appendChild(aXmlED75.ownerDocument.createElement('LINE'));
          aXmlED75.setAttribute('FUNDSOURCE_ID',  Permission.getAttribute('FUNDSOURCE_ID'));
          aXmlED75.setAttribute('RECIPIENT_ID', Permission.getAttribute('RECIPIENT_ID'));
          aXmlED75.setAttribute('ESTIMATE_ID', Permission.getAttribute('ESTIMATE_ID'));
          aXmlED75.setAttribute('RECEIVER_ID', Permission.getAttribute('RECEIVER_ID'));
          aXmlED75.setAttribute('PAYER_ID', Permission.getAttribute('PAYER_ID'));
          aXmlED75.setAttribute('TERRITORY_ID', Permission.getAttribute('TERRITORY_ID'));
          //АЦК не проставляет ID счета УФК в однострочных доках
          aXmlED75.setAttribute('PAY_UFK_ACC_ID', aXmlED75.parentNode.parentNode.getAttribute('PAY_UFK_ACC_ID'));
          aXmlED75.setAttribute('SIGN_VOLUME', aXmlED75.parentNode.parentNode.getAttribute('SIGN_VOLUME'));
          aXmlED75.setAttribute('TAXCODE_PP', aXmlED75.parentNode.parentNode.getAttribute('TAXCODE_PP'));
          aXmlED75.setAttribute('KPP_PP', aXmlED75.parentNode.parentNode.getAttribute('KPP_PP'));
          if aXmlZR.parentNode.getAttribute('TYPE') = 2 then
            aXmlED75.setAttribute('AMOUNT', Format('%0.2f', [StrToCurrDef(aXmlZR.parentNode.getAttribute('SUM_V'), 0)]))
          else
            aXmlED75.setAttribute('AMOUNT', Format('%0.2f', [StrToCurrDef(aXmlZR.getAttribute('SUM_V_KBK'), 0)]));
          aXmlED75.setAttribute('FK_FLAG', aXmlED75.parentNode.parentNode.getAttribute('FK_FLAG'));
          aXmlED75.setAttribute('DESCRIPTION_LINES', aXmlZR.getAttribute('PURPOSE_KBK'));
          aXmlED75.setAttribute('PERMISSIONLINE_ID', Permission.getAttribute('PERMISSIONLINE_ID'));
          aXmlED75.setAttribute('KFSR_CODE', Permission.getAttribute('KFSR_CODE'));
          aXmlED75.setAttribute('KCSR_CODE', Permission.getAttribute('KCSR_CODE'));
          aXmlED75.setAttribute('KVR_CODE', Permission.getAttribute('KVR_CODE'));
          // exchange #3062 - удален косгу
          // поле копируется при наличии
          CopyNodeAttributeEx( aXmlED75, 'KESR_CODE', aXmlZR, 'KESR_CODE');
    //        aXmlED75.setAttribute('KESR_CODE', Permission.getAttribute('KESR_CODE'));
          aXmlED75.setAttribute('KADMR_CODE', Permission.getAttribute('KADMR_CODE'));
          aXmlED75.setAttribute('KDR_CODE', Permission.getAttribute('KDR_CODE'));
          aXmlED75.setAttribute('KDE_CODE', Permission.getAttribute('KDE_CODE'));
          aXmlED75.setAttribute('KDF_CODE', Permission.getAttribute('KDF_CODE'));
          aXmlED75.setAttribute('FSR_ID', Permission.getAttribute('FSR_ID'));
          aXmlED75.setAttribute('KADMD_CODE', aXmlZR.getAttribute('KADMD_CODE'));
          aXmlED75.setAttribute('KD_CODE', aXmlZR.getAttribute('KD_CODE'));
          // exchange #3062 - удален косгу
          // поле копируется при наличии
          CopyNodeAttributeEx( aXmlED75, 'KESD_CODE', aXmlZR, 'KESD_CODE');
    //        aXmlED75.setAttribute('KESD_CODE', aXmlZR.getAttribute('KESD_CODE'));
          aXmlED75.setAttribute('KDD_CODE', Permission.getAttribute('KDD_CODE'));
          aXmlED75.setAttribute('KDT_CODE', Permission.getAttribute('KDT_CODE'));
          aXmlED75.setAttribute('FSD_ID', Permission.getAttribute('FSD_ID'));
          aXmlED75 := aXmlED75.parentNode;
        end;
        aXmlZR := aXmlZR.parentNode;
      end;

      aXmlZR := aXmlZR.ownerDocument.documentElement;
      aXmlED75 := aXmlED75.ownerDocument;
      Result := True;

      except
        ExceptionProc( 'CreateDoc75');
    end;

end;

begin
end.
