-- Шаблон создан мастером бланков
-- 01.01.2012 17:26:04
--
БланкСШаблоном "Выгрузка картотек в XML";

Proc ВыгрузкаРеквизитов(Конт:record;Банк:record);
var OWA:I;
  OWA=OpenWorkArea("КОНТРАГЕНТ","","Ukey="+RecordToString(Конт));
  try
    if Records(OWA)>0:
      Раб.XML.Content[1]=GetFieldS(OWA,1,"ПОЛНИМЯ");
      Раб.XML.Content[2]=" ";
      Раб.XML.Content[3]=GetFieldS(OWA,1,"РПО_ПОЛНИМЯ2");
      Раб.XML.СоздатьТэг("NAME_UBP","",False);
      Раб.XML.СоздатьТэг("INN",GetFieldS(OWA,1,"ИНН"),False);
      Раб.XML.СоздатьТэг("KPP",GetFieldS(OWA,1,"КПП"),False);
      Раб.XML.СоздатьТэг("KOD_UBP",GetFieldS(OWA,1,"РПО_КБП"),False);
      Раб.XML.СоздатьТэг("TYPE_BU",GetFieldS(OWA,1,"РПО_ТИПУЧР"),False);
      Раб.XML.СоздатьТэг("OKPO",GetFieldS(OWA,1,"ОКПО"),False);

--      Раб.XML.ФормированиеТэга("self",if(GetFieldL(OWA,1,"Наше"),"1","0"),False,False,1);
--      Раб.XML.ФормированиеТэга("nerezident",Str(GetFieldI(OWA,1,"Статус")),False,False,1);
--      Раб.XML.ФормированиеТэга("lgot_status",Str(GetFieldI(OWA,1,"РПО_Статус")),False,False,1);
--      Раб.XML.ФормированиеТэга("isFL",Str(GetFieldI(OWA,1,"Тип")),False,False,1);
--      Раб.XML.ФормированиеТэга("shortname",GetFieldS(OWA,1,"КорИмя"),False,False,1);
--      Раб.XML.ФормированиеТэга("phone",GetFieldS(OWA,1,"ТЕЛЕФОН"),False,False,1);
--      Раб.XML.ФормированиеТэга("fax",GetFieldS(OWA,1,"ФАКС"),False,False,1);
--      Раб.XML.ФормированиеТэга("email",GetFieldS(OWA,1,"EMAIL"),False,False,1);
--      Раб.XML.ФормированиеТэга("jur_addr",GetFieldS(OWA,1,"ЮРАДРЕС"),False,False,1);
--      Раб.XML.ФормированиеТэга("post_addr",GetFieldS(OWA,1,"ПОЧТАДРЕС"),False,False,1);
--      Раб.XML.ФормированиеТэга("fakt_addr",GetFieldS(OWA,1,"ФАКТАДРЕС"),False,False,1);
--      Раб.XML.ФормированиеТэга("okonh",GetFieldS(OWA,1,"ОКОНХ"),False,False,1);
--      Раб.XML.ФормированиеТэга("okato",GetFieldS(OWA,1,"ОКАТО"),False,False,1);
--      Раб.XML.ФормированиеТэга("sign",GetFieldS(OWA,1,"ПРИЗНАК"),False,False,1);
--      Раб.XML.ФормированиеТэга("regdok",GetFieldS(OWA,1,"РЕГИСТРДОК"),False,False,1);
--      Раб.XML.ФормированиеТэга("www",GetFieldS(OWA,1,"WWW"),False,False,1);
--      Раб.XML.ФормированиеТэга("fio_kontakt",GetFieldS(OWA,1,"ФИОКОНТ"),False,False,1);
--      Раб.XML.ФормированиеТэга("dolg_kontakt",GetFieldS(OWA,1,"ДОЛЖНКОНТ"),False,False,1);
--      Раб.XML.ФормированиеТэга("tel_kontakt",GetFieldS(OWA,1,"ТЕЛКОНТ"),False,False,1);
--      Раб.XML.ФормированиеТэга("opf",GetFieldS(OWA,1,"ОПФ"),False,False,1);
--      Раб.XML.ФормированиеТэга("oksm",GetFieldS(OWA,1,"РПО_ОКСМ"),False,False,1);
--      Раб.XML.ФормированиеТэга("strana",GetFieldS(OWA,1,"РПО_СТРАНА"),False,False,1);
--      Раб.XML.ФормированиеТэга("nppo",GetFieldS(OWA,1,"РПО_НППО"),False,False,1);
--      Раб.XML.ФормированиеТэга("ppp",GetFieldS(OWA,1,"РПО_ППП"),False,False,1);
--      Раб.XML.ФормированиеТэга("comment",GetFieldS(OWA,1,"РПО_ПРИМЕЧАНИЕ"),False,False,1);
--      Раб.XML.ФормированиеТэга("form_sobstv",GetFieldS(OWA,1,"ФСОБСТВ"),False,False,1);
    fi;
  finally
    CloseWorkArea(OWA);
  end;
  OWA=OpenWorkArea("БАНК_СЧЕТА","","Ukey="+RecordToString(Банк));
  try
    if Records(OWA)>0:
      Раб.XML.СоздатьТэг("CNAME",GetFieldS(OWA,1,"БАНКИМЯ"),False);
      Раб.XML.СоздатьТэг("BUDG_LEVEL",GetFieldS(OWA,1,"РПО_КОДБЮДЖ"),False);
      Раб.XML.СоздатьТэг("KOD_TOFK",GetFieldS(OWA,1,"РПО_ОФК_КОД"),False);
      Раб.XML.Content[1]=GetFieldS(OWA,1,"РПО_ОФК_ИМЯ");
      Раб.XML.Content[2]=" ";
      Раб.XML.Content[3]=GetFieldS(OWA,1,"РПО_ОФК_ИМЯ2");
      Раб.XML.СоздатьТэг("NAME_TOFK","",False);
      Раб.XML.СоздатьТэг("OKPO_TOFK",GetFieldS(OWA,1,"РПО_ОФК_ОКПО"),False);
      Раб.XML.СоздатьТэг("BS",GetFieldS(OWA,1,"РСЧЕТ"),False);
      Раб.XML.СоздатьТэг("BIC",GetFieldS(OWA,1,"БИК"),False);
      Раб.XML.СоздатьТэг("NAME_BIC",GetFieldS(OWA,1,"БАНК"),False);
      Раб.XML.СоздатьТэг("CITY_BIC",GetFieldS(OWA,1,"ГОРОД"),False);
      Раб.XML.СоздатьТэг("BS_KS",GetFieldS(OWA,1,"КСЧЕТ"),False);
      Раб.XML.СоздатьТэг("LS",GetFieldS(OWA,1,"РПО_ЛСЧЕТ"),False);
      Раб.XML.СоздатьТэг("INN_TOFK",GetFieldS(OWA,1,"РПО_БАНК_ИНН"),False);
      Раб.XML.СоздатьТэг("FILIAL_BIC",GetFieldS(OWA,1,"РПО_ФИЛИАЛ"),False);
      Раб.XML.Content[1]=GetFieldS(OWA,1,"РПО_НАИМБЮДЖ");
      Раб.XML.Content[2]=" ";
      Раб.XML.Content[3]=GetFieldS(OWA,1,"РПО_НАИМБЮДЖ2");
      Раб.XML.СоздатьТэг("NAME_BUDG","",False);
      Раб.XML.Content[1]=GetFieldS(OWA,1,"РПО_ФО_НАИМ1") ;
      Раб.XML.Content[2]=" ";
      Раб.XML.Content[3]=GetFieldS(OWA,1,"РПО_ФО_НАИМ2");
      Раб.XML.СоздатьТэг("NAME_UBP_FO","",False);
      Раб.XML.СоздатьТэг("OKPO_FO",GetFieldS(OWA,1,"РПО_ФО_ОКПО"),False);
      Раб.XML.СоздатьТэг("LS_FO",GetFieldS(OWA,1,"РПО_ФО_ЛСЧЕТ"),False);

--      Раб.XML.ФормированиеТэга("val",GetFieldS(OWA,1,"ВАЛЮТА"),False,False,1);
--      Раб.XML.ФормированиеТэга("bank_filial",GetFieldS(OWA,1,"РПО_ФИЛИАЛ"),False,False,1);
--      Раб.XML.ФормированиеТэга("fo_codefo",GetFieldS(OWA,1,"РПО_ФО_КОД"),False,False,1);



--      Раб.XML.ФормированиеТэга("banktype",STR(GetFieldI(OWA,1,"РПО_ТИПСЧЕТА")),False,False,1);

--      Раб.XML.ФормированиеТэга("bank_kpp",GetFieldS(OWA,1,"РПО_БАНК_КПП"),False,False,1);
    fi;
  finally
    CloseWorkArea(OWA);
  end;
--  РПО_ИНН_БАНКА :BOOLEAN; --Показывать ИНН банка или контрагента

end;

--  ФАМИЛИЯФЛ    :STRING;     -- Фамилия физического лица
--  ИМЯФЛ        :STRING;     -- Имя физического лица
--  ОТЧЕСТВОФЛ   :STRING;     -- Отчество физического лица
--  ПОСТАВЩИК    :BOOLEAN;    -- Признак поставщика
--  ПОКУПАТЕЛЬ   :BOOLEAN;    -- Признак покупателя
--  УЧРЕДИТЕЛЬ   :BOOLEAN;    -- Признак учредителя
--  ДИК          :BOOLEAN;    -- Признак Дебитора или кредитора
--  МОЛ          :BOOLEAN;    -- Признак материально ответственного лица
--  РУКОВОДИТЕЛЬ :СОТРУДНИКИ;  -- Руководитель предприятия
--  БУХГАЛТЕР    :СОТРУДНИКИ;  -- Бухгалтер предприятия
--  КАССИР       :СОТРУДНИКИ;  -- Кассир предприятия
--  УЧРЕДИТЕЛИ   :STRING;     -- Учредители
--  ОТРАСЛЬ      :STRING;     -- Отрасль
--  МРЕГИСТР     :STRING;     -- Месяц регистрации
--  ГРЕГИСТР     :STRING;     -- Год регистрации
--  ВИДДЕЯТ      :STRING;     -- Вид регистрации
--  КБК          :STRING;     -- Код бюджетной классификации
--  ДАТАВЫД      :DATE;       -- Дата выдачи паспорта
--  СЕРПАСП      :STRING;     -- Серия паспорта
--  НОМПАСП      :STRING;     -- Номер паспорта
--  КЕМВЫДАН     :STRING;     -- Кем выдан паспорт
--  ЮРЕСП        :STRING;     -- Республика в составе РФ, край, область
--  ЮРАЙОН       :STRING;     -- Район
--  ЮГОРОД       :STRING;     -- Город (село)
--  ЮРЕГИОН      :STRING;     -- Код региона
--  ЮДОМ         :STRING;     -- Дом
--  ЮКОРПУС      :STRING;     -- Корпус
--  ЮКВАРТИРА    :STRING;     -- Квартира
--  ЮПОЧТИНДЕКС  :STRING;     -- Почтовый индекс
--  ИСПОЛНИТЕЛЬ  :STRING;     -- Исполнитель
--  ТЕЛИСП       :STRING;     -- Телефон исполнителя
--  БИК          :STRING;     -- БИК
--  НАИМНАЛОГОВОЙ:STRING;     -- Наименование налоговой инспекции
--  КОДНАЛОГОВОЙ :STRING;     -- Код налоговой инспекции
--  ОКУД         :STRING;     -- формы документа по ОКУД
--  СОАТО        :STRING;     -- территории по СОАТО
--  ОКДП         :STRING;     -- ОКДП
--  КОПФ         :STRING;     -- КОПФ
--  КФС          :STRING;     -- КФС
--  СТАТОРГ      :STRING;     -- Статистический орган
--  АДРЕССТАТОРГ :STRING;     -- Адрес стат. органа
--  МИН          :STRING;     -- Министерство, главное управление:
--  КОДМИН       :STRING;     -- Код министерства по СООГУ:
--  МГО          :STRING;     -- МГО, ассоциация и др. хоз.объединение:
--  КОДМГО       :STRING;     -- Код МГО, концерна, ассоциации по ОКПО:
--  ВОРГ         :STRING;     -- Вышестоящий орган
--  АДРВОРГ      :STRING;     -- Адрес органа
--  ОКПОВОРГ     :STRING;     -- Код ОКПО вышестоящего органа
--  ОКОНХДЕЯТ    :STRING;     -- Коды ОКОНХ прочей деятельности
--  РЕГКОДПЕНС   :STRING;     -- Рег. код в пенсионном фонде
--  РЕГКОДСОЦ    :STRING;     -- Рег. код в фонде соцстрахования
--  РЕГКОДЗАН    :STRING;     -- Рег. год в Фонде занятости
--  РЕГКОДМЕД    :STRING;     -- Рег. код в фонде обязательного медицинского страхования
--  ФИОРУК       :STRING;     -- ФИО руководителя
--  ДОЛЖНРУК     :STRING;     -- Должность руководителя
--  ТЕЛРУК       :STRING;     -- Телефон руководителя
--  ФИОКАСС      :STRING;     -- ФИО кассира
--  ДОЛЖНКАСС    :STRING;             -- Должность кассира
--  ТЕЛКАСС      :STRING;     -- Телефон кассира
--  ФИОБУХ       :STRING;     -- ФИО бухгалтера
--  ДОЛЖНБУХ     :STRING;     -- Должность бухгалтера
--  ТЕЛБУХ       :STRING;     -- Телефон бухгалтера
--  РПО_ПБС            :BOOLEAN; --Получатель бюджетных средств
--  РПО_УМОЛЧАНИЕ      :BOOLEAN; --Реквизит по умолчанию
--  РПО_ТИПДОКУМ       :STRING; --Тип документа физического лица
--  РПО_ПОДЧИНЕН       :КОНТРАГЕНТ;
--  РПО_ПРИЗНРЕОРГ     :INTEGER; --Признак реорганизации
--  РПО_РБС_КОД_РЕОРГ  :STRING(5); --код распорядителя средств в ведении которого находиться получатель, участвующий в реорганизации
--  РПО_РБС_ИМЯ_РЕОРГ1 :STRING; --полное наименование распорядителя в непосредственном ведении которого находиться получатель по реорганизации (начало)
--  РПО_РБС_ИМЯ_РЕОРГ2 :STRING; --полное наименование распорядителя в непосредственном ведении которого находиться получатель по реорганизации (продолжение)
--  РПО_ПБС_КОД_РЕОРГ  :STRING(5); --код получателя средств по реорганизации
--  РПО_ПБС_ИМЯ_РЕОРГ1 :STRING; --полное наименование получателя средств по реорганизации (начало)
--  РПО_ПБС_ИМЯ_РЕОРГ2 :STRING; --полное наименование получателя средств по реорганизации (продолжение)
--  РПО_ТОФК_КОД_РБС   :STRING(4); --код ТОФК, в котором обслуживается распорядитель


proc ВыгрузкаУвед(Ukey:Record);
var OWA,OA,N:I;
  OWA=OpenWorkArea("РПО_УВЕДОМ_УТОЧ_ПЛАТ","","Ukey="+recordToString(Ukey));
  try
    Раб.XML.СоздатьТэг("UCH_TB",if(GetFieldL(OWA,1,"УЧИТЫВАТЬ"),"1","0"),False);
    Раб.XML.СоздатьТэг("NOM_UK",GetFieldS(OWA,1,"НОМЕРДОК"),False);
    Раб.XML.СоздатьТэг("DATE_UK",DateToString(GetFieldD(OWA,1,"ДатаДОК")),False);
      Раб.XML.ДобАттр("Kont_Ukey",RecordToString(GetFieldR(OWA,1,"РЕКВ")));
      Раб.XML.ДобАттр("Bank_Ukey",RecordToString(GetFieldR(OWA,1,"БАНК")));
      Раб.XML.ОткрытьТэгBuf("NUBP",False);
      ВыгрузкаРеквизитов(GetFieldR(OWA,1,"РЕКВ"),GetFieldR(OWA,1,"БАНК"));
      РАБ.XML.ЗакрытьТэг;

    Раб.XML.СоздатьТэг("NAME_RUK",GetFieldS(OWA,1,"ФИОРУК"),False);
    Раб.XML.СоздатьТэг("DOL_RUK",GetFieldS(OWA,1,"ДОЛЖНРУК"),False);
    Раб.XML.СоздатьТэг("DOL_ISP",GetFieldS(OWA,1,"ДОЛЖНИСП"),False);
    Раб.XML.СоздатьТэг("NAME_ISP",GetFieldS(OWA,1,"ФИОИСП"),False);
    Раб.XML.СоздатьТэг("TEL_ISP",GetFieldS(OWA,1,"ТЕЛИСП"),False);
    Раб.XML.СоздатьТэг("DATE_POD",DateToString(GetFieldD(OWA,1,"ДАТАПОДПИСИ")),False);
    Раб.XML.СоздатьТэг("NAME_GRS",GetFieldS(OWA,1,"ГРБС"),False);
    Раб.XML.СоздатьТэг("GLAVA_GRS",GetFieldS(OWA,1,"ГЛАВА"),False);
    Раб.XML.СоздатьТэг("FUND_SOURCE",GetFieldS(OWA,1,"ДОК_ИСТ"),False);
    Раб.XML.СоздатьТэг("NOM_ZF",GetFieldS(OWA,1,"ЗАПРОСНОМ"),False);
    Раб.XML.СоздатьТэг("DATE_ZF",DateToString(GetFieldD(OWA,1,"ЗАПРОСДАТ")),False);
    Раб.XML.СоздатьТэг("CNAME_PL",GetFieldS(OWA,1,"ПЛАТ_БАНКИМЯ"),False);
    Раб.XML.СоздатьТэг("INN_PL",GetFieldS(OWA,1,"ПЛАТ_ИНН"),False);
    Раб.XML.СоздатьТэг("KPP_PL",GetFieldS(OWA,1,"ПЛАТ_КПП"),False);
    Раб.XML.СоздатьТэг("PASP",GetFieldS(OWA,1,"ПЛАТ_ПАСПОРТ"),False);
    Раб.XML.СоздатьТэг("BS_PL",GetFieldS(OWA,1,"ПЛАТБАНК_РСЧЕТ"),False);

-- ЗНАК_ИСХ        :Integer; --Знак+1 (т.е. 0-сторно, 1 - не проводить, 2-начисление)
    OA=OpenArray(OWA,1,"ДОК_ИСХ","");
    try
      for n=1..Records(OA) do
         Раб.XML.ОткрытьТэг("UKPP","");
         Раб.XML.СоздатьТэг("LINE_NOM",Str(GetFieldI(OA,n,"N")),False);
         Раб.XML.СоздатьТэг("GUID",GetFieldS(OA,n,"ФК_GUID"),False);
         Раб.XML.СоздатьТэг("KOD_DOC",GetFieldS(OA,n,"ТИП"),False);
         Раб.XML.СоздатьТэг("NAME_PP",GetFieldS(OA,n,"НАИМ"),False);
         Раб.XML.СоздатьТэг("NOM_PP",GetFieldS(OA,n,"НОМ"),False);
         Раб.XML.СоздатьТэг("DATE_PP",DateToString(GetFieldD(OA,n,"ДАТ")),False);

--         Раб.XML.ДобАттр("Ukey",RecordToString(GetFieldR(OA,n,"РЕКВП")));
--         Раб.XML.ФормированиеТэга("kont","",False,False,2);
--         Раб.XML.ДобАттр("Ukey",RecordToString(GetFieldR(OA,n,"БАНКП")));
--         Раб.XML.ФормированиеТэга("kontbank","",False,False,2);

         Раб.XML.СоздатьТэг("CNAME_PP",GetFieldS(OA,n,"БАНКИМЯ"),False);
         Раб.XML.СоздатьТэг("INN_PP",GetFieldS(OA,n,"ИНН"),False);
         Раб.XML.СоздатьТэг("KPP_PP",GetFieldS(OA,n,"КПП"),False);
         Раб.XML.СоздатьТэг("OKATO",GetFieldS(OA,n,"ОКАТО"),False);
--         Раб.XML.ФормированиеТэга("kont_lschet",GetFieldS(OA,n,"ЛСЧЕТ"),False,False,1);
--         Раб.XML.ФормированиеТэга("source",GetFieldS(OA,n,"ИСТ"),False,False,1);

         if GetFieldS(OA,n,"ТИПКБК")="10": Раб.XML.СоздатьТэг("TYPE_KBK","КД",False);
           |GetFieldS(OA,n,"ТИПКБК")="20": Раб.XML.СоздатьТэг("TYPE_KBK","ФКР",False);
           |GetFieldS(OA,n,"ТИПКБК")="31": Раб.XML.СоздатьТэг("TYPE_KBK","КИВФ",False);
           |GetFieldS(OA,n,"ТИПКБК")="32": Раб.XML.СоздатьТэг("TYPE_KBK","КИВНФ",False);
         fi;
         Раб.XML.СоздатьТэг("KBK",GetFieldS(OA,n,"КБК"),False);
         Раб.XML.СоздатьТэг("SUM_PP",Str(GetFieldN(OA,n,"СУМ"),2),False);
         Раб.XML.СоздатьТэг("ADD_KLASS",GetFieldS(OA,n,"ДОПКЛ"),False);
         Раб.XML.СоздатьТэг("PURPOSE",GetFieldS(OA,n,"НАЗНПЛ"),False);
         Раб.XML.СоздатьТэг("NOTE",GetFieldS(OA,n,"ПРИМЕЧ"),False);
         Раб.XML.СоздатьТэг("NOM_ZR",GetFieldS(OA,n,"ЗАЯВ_КР_НОМ"),False);
         Раб.XML.СоздатьТэг("DATE_ZR",DateToString(GetFieldD(OA,n,"ЗАЯВ_КР_ДАТ")),False);
--         Раб.XML.ФормированиеТэга("deb",GetFieldS(OA,n,"СЧДЕБ"),False,False,1);
--         Раб.XML.ФормированиеТэга("cre",GetFieldS(OA,n,"СЧКРЕ"),False,False,1);
--         Раб.XML.ФормированиеТэга("ana",GetFieldS(OA,n,"ПРИЗН"),False,False,1);
         РАБ.XML.ЗакрытьТэг;
      od;
    finally
      CloseWorkArea(OA);
    end;

    OA=OpenArray(OWA,1,"ДОК_ИЗМ","");
    try
      for n=1..Records(OA) do
         Раб.XML.ОткрытьТэг("UKPP_N","");
         Раб.XML.СоздатьТэг("LINE_NOM",Str(GetFieldI(OA,n,"N")),False);

         Раб.XML.СоздатьТэг("CNAME_NUBP",GetFieldS(OA,n,"БАНКИМЯ"),False);
         Раб.XML.СоздатьТэг("INN_NUBP",GetFieldS(OA,n,"ИНН"),False);
         Раб.XML.СоздатьТэг("KPP_NUBP",GetFieldS(OA,n,"КПП"),False);
         Раб.XML.СоздатьТэг("OKATO",GetFieldS(OA,n,"ОКАТО"),False);
         Раб.XML.СоздатьТэг("LS_UBP",GetFieldS(OA,n,"ЛСЧЕТ"),False);
         Раб.XML.СоздатьТэг("FUND_SOURCE",GetFieldS(OA,n,"ИСТ"),False);

         if GetFieldS(OA,n,"ТИПКБК")="10": Раб.XML.СоздатьТэг("TYPE_KBK","КД",False);
           |GetFieldS(OA,n,"ТИПКБК")="20": Раб.XML.СоздатьТэг("TYPE_KBK","ФКР",False);
           |GetFieldS(OA,n,"ТИПКБК")="31": Раб.XML.СоздатьТэг("TYPE_KBK","КИВФ",False);
           |GetFieldS(OA,n,"ТИПКБК")="32": Раб.XML.СоздатьТэг("TYPE_KBK","КИВНФ",False);
         fi;
         Раб.XML.СоздатьТэг("KBK",GetFieldS(OA,n,"КБК"),False);
         Раб.XML.СоздатьТэг("SUM",Str(GetFieldN(OA,n,"СУМ"),2),False);
         Раб.XML.СоздатьТэг("ADD_KLASS",GetFieldS(OA,n,"ДОПКЛ"),False);
         Раб.XML.СоздатьТэг("PURPOSE",GetFieldS(OA,n,"НАЗНПЛ"),False);
         Раб.XML.СоздатьТэг("NOTE",GetFieldS(OA,n,"ПРИМЕЧ"),False);
         РАБ.XML.ЗакрытьТэг;
      od;
    finally
      CloseWorkArea(OA);
    end;
  finally
    CloseWorkArea(OWA);
  end;
end;

Proc ВыгрузкаПП(Ukey:Record);
var OWA,OA,N:I;
  OWA=OpenWorkArea("ПОРУЧ","","Ukey="+recordToString(Ukey));
  try
    if Records(OWA)>0:
      Раб.XML.ФормированиеТэга("DATE",DateToString(GetFieldD(OWA,1,"ДАТА")),False,False,1);
      Раб.XML.ФормированиеТэга("NOM",GetFieldS(OWA,1,"НОМЕРБУМ"),False,False,1);
      Раб.XML.ФормированиеТэга("UCH_TB",if(GetFieldL(OWA,1,"РПО_Учитывать"),"1","0"),False,False,1);
      Раб.XML.ДобАттр("Kont_Ukey",RecordToString(GetFieldR(OWA,1,"РЕКВ")));
      Раб.XML.ДобАттр("Bank_Ukey",RecordToString(GetFieldR(OWA,1,"БАНК")));
      Раб.XML.ОткрытьТэгBuf("PAY",False);
      ВыгрузкаРеквизитов(GetFieldR(OWA,1,"РЕКВ"),GetFieldR(OWA,1,"БАНК"));
      РАБ.XML.ЗакрытьТэг;
      Раб.XML.ДобАттр("Kont_Ukey",RecordToString(GetFieldR(OWA,1,"РЕКВП")));
      Раб.XML.ДобАттр("Bank_Ukey",RecordToString(GetFieldR(OWA,1,"БАНКП")));
      Раб.XML.ОткрытьТэгBuf("RCP",False);
      ВыгрузкаРеквизитов(GetFieldR(OWA,1,"РЕКВП"),GetFieldR(OWA,1,"БАНКП"));
      РАБ.XML.ЗакрытьТэг;

      Раб.XML.ФормированиеТэга("SUM",Str(GetFieldN(OWA,1,"СУММА"),2),False,False,1);
--      Раб.XML.ФормированиеТэга("sumnds",Str(GetFieldN(OWA,1,"НДС"),2),False,False,1);
      if GetFieldS(OWA,1,"ВИДПЛ") = '':
        Раб.XML.ФормированиеТэга("VID_PL","0",False,False,1);
       else
        Раб.XML.ФормированиеТэга("VID_PL",GetFieldS(OWA,1,"ВИДПЛ"),False,False,1);
      fi;
      Раб.XML.ФормированиеТэга("VID_OPER",GetFieldS(OWA,1,"ВИДОП"),False,False,1);
      Раб.XML.ФормированиеТэга("DATE_PAY",DateToString(GetFieldD(OWA,1,"ДАТАД")),False,False,1);
      Раб.XML.ФормированиеТэга("ORDER_PAY",GetFieldS(OWA,1,"ДАТАО"),False,False,1);

      Раб.XML.Content[1]=GetFieldS(OWA,1,"Т") ;
      Раб.XML.Content[2]=" ";
      Раб.XML.Content[3]=GetFieldS(OWA,1,"РПО_Т1");
      Раб.XML.Content[4]=" ";
      Раб.XML.Content[5]=GetFieldS(OWA,1,"РПО_Т2");
      Раб.XML.Content[6]=" ";
      Раб.XML.Content[7]=GetFieldS(OWA,1,"РПО_Т3");
      Раб.XML.Content[8]=" ";
      Раб.XML.Content[9]=GetFieldS(OWA,1,"РПО_Т4");
      Раб.XML.ФормированиеТэга("PURPOSE","",False,False,1);


--      Раб.XML.ФормированиеТэга("nazncode",GetFieldS(OWA,1,"НАЗ"),False,False,1);
      Раб.XML.СоздатьТэг("PRINT_KPP", if(GetFieldL(OWA,1,"БЮДЖЕТ"),"1","0"),False);
      Раб.XML.СоздатьТэг("PAYSTATUS", GetFieldS(OWA,1,"П1"),False);
      Раб.XML.СоздатьТэг("KBK",       GetFieldS(OWA,1,"П2"),False);
      Раб.XML.СоздатьТэг("OKATO",     GetFieldS(OWA,1,"П3"),False);
      Раб.XML.СоздатьТэг("OSNPLAT",   GetFieldS(OWA,1,"П4"),False);
      Раб.XML.СоздатьТэг("NAL_PER",   GetFieldS(OWA,1,"П5"),False);
      Раб.XML.СоздатьТэг("NUM_DOK",   GetFieldS(OWA,1,"П6"),False);
      Раб.XML.СоздатьТэг("DATE_DOK",  GetFieldS(OWA,1,"П7"),False);
      Раб.XML.СоздатьТэг("TYPE_PL",   GetFieldS(OWA,1,"П8"),False);
      Раб.XML.СоздатьТэг("UIN",   GetFieldS(OWA,1,"П22"),False);
--      Раб.XML.ФормированиеТэга("bo",GetFieldS(OWA,1,"НомерБО"),False,False,1);
      ---
      if GetFieldI(OWA,1,"ver")>0:
         OA=OpenArray(OWA,1,"РПО_ПОЗИЦИИ","");
         try
           for n=1..Records(OA) do
              Раб.XML.ОткрытьТэг("PPST","");
              Раб.XML.ФормированиеТэга("nn",Str(n),False,False,1);
              Раб.XML.ФормированиеТэга("KOD_FIN",GetFieldS(OA,n,"ИСТ"),False,False,1);
              if GetFieldI(OWA,1,"БЕЗКБК")=-1:Раб.XML.ФормированиеТэга("TYPE_KBK","",False,False,1);
                else
              if GetFieldS(OA,n,"ТИПКБК")="10": Раб.XML.ФормированиеТэга("TYPE_KBK","КД",False,False,1);
                |GetFieldS(OA,n,"ТИПКБК")="20": Раб.XML.ФормированиеТэга("TYPE_KBK","ФКР",False,False,1);
                |GetFieldS(OA,n,"ТИПКБК")="31": Раб.XML.ФормированиеТэга("TYPE_KBK","КИВФ",False,False,1);
                |GetFieldS(OA,n,"ТИПКБК")="32": Раб.XML.ФормированиеТэга("TYPE_KBK","КИВНФ",False,False,1);
                |True:Раб.XML.ФормированиеТэга("TYPE_KBK","",False,False,1);
              fi;
              fi;


              if GetFieldI(OWA,1,"БЕЗКБК")=-1:
                 Раб.XML.ФормированиеТэга("KBK","",False,False,1);
                |GetFieldI(OWA,1,"БЕЗКБК")=0:
                 Раб.XML.ФормированиеТэга("KBK",GetFieldS(OA,n,"КБК"),False,False,1);
                |GetFieldI(OWA,1,"БЕЗКБК")=1:
                 Раб.XML.ФормированиеТэга("KBK",SUBSTR(GetFieldS(OA,n,"КБК"),1,3)+"00000000000000"+SUBSTR(GetFieldS(OA,n,"КБК"),18,3),False,False,1);
                |GetFieldI(OWA,1,"БЕЗКБК")=2:
                 Раб.XML.ФормированиеТэга("KBK","00000000000000000"+SUBSTR(GetFieldS(OA,n,"КБК"),18,3),False,False,1);
                |GetFieldI(OWA,1,"БЕЗКБК")=3:
                 Раб.XML.ФормированиеТэга("KBK","00000000000000000000",False,False,1);
              fi;
              Раб.XML.ФормированиеТэга("CODECP","",False,False,1);
              Раб.XML.ФормированиеТэга("ADD_KLASS",GetFieldS(OA,n,"ДопКл"),False,False,1);
              Раб.XML.ФормированиеТэга("SUM",Str(GetFieldN(OA,n,"СУМ"),2),False,False,1);
              Раб.XML.ФормированиеТэга("REZERV",GetFieldS(OA,n,"ХФП"),False,False,1);

              Раб.XML.ФормированиеТэга("MES_FIN",GetFieldS(OA,n,"МЕСФИН"),False,False,1);
              Раб.XML.ФормированиеТэга("NUM_BO",GetFieldS(OWA,1,"НомерБО"),False,False,1);--для совместимости со старыми форматами???
              РАБ.XML.ЗакрытьТэг; --PPST
           od;
         finally
           CloseWorkArea(OA);
         end;

        else
         OA=OpenArray(OWA,1,"РПО_СТРОКИ_БК","");
         try
           for n=1..Records(OA) do
              Раб.XML.ОткрытьТэг("PPST","");
              Раб.XML.ФормированиеТэга("nn",Str(n),False,False,1);
              if GetFieldS(OA,n,"КОДЭК")<>"":
                Раб.XML.ФормированиеТэга("TYPE_KBK","ФКР",False,False,1);
                Раб.XML.ФормированиеТэга("KBK",GetFieldS(OA,n,"КОДГЛАВЫ")+GetFieldS(OA,n,"КОДПРД")+GetFieldS(OA,n,"КОДЦСТ")+GetFieldS(OA,n,"КОДВР")+GetFieldS(OA,n,"КОДЦП")+GetFieldS(OA,n,"КОДЭК"),False,False,1);
               |GetFieldS(OA,n,"КОДКД")<>"":
                Раб.XML.ФормированиеТэга("TYPE_KBK","КД",False,False,1);
                Раб.XML.ФормированиеТэга("KBK",GetFieldS(OA,n,"КОДКД"),False,False,1);
               |GetFieldS(OA,n,"КОДКИВНФ")<>"":
                Раб.XML.ФормированиеТэга("TYPE_KBK","КИВНФ",False,False,1);
                Раб.XML.ФормированиеТэга("KBK",GetFieldS(OA,n,"КОДКИВНФ"),False,False,1);
               |GetFieldS(OA,n,"КОДКИВФ")<>"":
                Раб.XML.ФормированиеТэга("TYPE_KBK","КИВФ",False,False,1);
                Раб.XML.ФормированиеТэга("KBK",GetFieldS(OA,n,"КОДКИВФ"),False,False,1);
               |True:
                Раб.XML.ФормированиеТэга("TYPE_KBK","",False,False,1);
                Раб.XML.ФормированиеТэга("KBK","",False,False,1);
              fi;
              Раб.XML.ФормированиеТэга("MES_FIN",GetFieldS(OA,n,"МЕСФИН"),False,False,1);
              Раб.XML.ФормированиеТэга("SUM",Str(GetFieldN(OA,n,"СУМ"),2),False,False,1);
              Раб.XML.ФормированиеТэга("REZERV",GetFieldS(OA,n,"ХФП"),False,False,1);
              Раб.XML.ФормированиеТэга("ADD_KLASS",GetFieldS(OA,n,"ДОПКЛАСС"),False,False,1);
              Раб.XML.ФормированиеТэга("KOD_FIN",GetFieldS(OA,n,"КИФ"),False,False,1);--source
              Раб.XML.ФормированиеТэга("CODECP",GetFieldS(OA,n,"КОДЦП"),False,False,1);
              Раб.XML.ФормированиеТэга("NUM_BO",GetFieldS(OA,n,"НОМБО"),False,False,1);
              РАБ.XML.ЗакрытьТэг;--PPST

           od;
         finally
           CloseWorkArea(OA);
         end;
      fi;
    fi;
  finally
    CloseWorkArea(OWA);
  end;
end;

proc ВыгрузкаСведСубс(Ukey:Record);
var OWA,OA,N:I;
  OWA=OpenWorkArea("РПО_СВЕД_СУБС","","Ukey="+recordToString(Ukey));
  try
    Раб.XML.СоздатьТэг("DATE_SUBS",DateToString(GetFieldD(OWA,1,"ДатаДОК")),False);
    Раб.XML.СоздатьТэг("DATE_PREVIOUS",DateToString(GetFieldD(OWA,1,"ДатаПре")),False);
    Раб.XML.СоздатьТэг("TYPE","1",False); -- санкционирование АУ/БУ (с ГУП мы не работаем)
    Раб.XML.СоздатьТэг("GOD_SUBS",GetFieldS(OWA,1,"Год"),False);
    Раб.XML.СоздатьТэг("UCH_TB",if(GetFieldL(OWA,1,"УЧИТЫВАТЬ"),"1","0"),False);
      Раб.XML.ОткрытьТэгBuf("KLIENT",False);
      ВыгрузкаРеквизитов(GetFieldR(OWA,1,"УЧР"),GetFieldR(OWA,1,"УЧР_БАНК"));
      РАБ.XML.ЗакрытьТэг;
    Раб.XML.СоздатьТэг("NAME_BUD",GetFieldS(OWA,1,"НАИМБЮДЖ"),False);
    Раб.XML.СоздатьТэг("OKATO",GetFieldS(OWA,1,"ОКАТО"),False);
    Раб.XML.СоздатьТэг("NAME_UCHR",GetFieldS(OWA,1,"Учредитель"),False);
    Раб.XML.СоздатьТэг("GLAVA_UCHR",GetFieldS(OWA,1,"ГЛАВА"),False);

    Раб.XML.СоздатьТэг("NAME_RUK_FES",GetFieldS(OWA,1,"ФИОБУХ"),False);
    Раб.XML.СоздатьТэг("NAME_RUK",GetFieldS(OWA,1,"ФИОРУК"),False);
    Раб.XML.СоздатьТэг("DOL_ISP",GetFieldS(OWA,1,"ДОЛЖНИСП"),False);
    Раб.XML.СоздатьТэг("FIO_ISP",GetFieldS(OWA,1,"ФИОИСП"),False);
    Раб.XML.СоздатьТэг("TEL_ISP",GetFieldS(OWA,1,"ТЕЛИСП"),False);
    Раб.XML.СоздатьТэг("DATE_POD",DateToString(GetFieldD(OWA,1,"ДАТАПОДП")),False);

    Раб.XML.СоздатьТэг("DOL_SIG",GetFieldS(OWA,1,"ДолжнУтв"),False);
    Раб.XML.СоздатьТэг("FIO_SIG",GetFieldS(OWA,1,"ФИОУтв"),False);
    Раб.XML.СоздатьТэг("ORG_SIG",GetFieldS(OWA,1,"УтвОрг"),False);
    Раб.XML.СоздатьТэг("DATE_SIG",DateToString(GetFieldD(OWA,1,"ДатаУтв")),False);
--  Утверждено    :Boolean;
    Раб.XML.СоздатьТэг("SUM_OST",Str(GetFieldN(OWA,1,"СУМОСТНАЧ"),2),False);
    OA=OpenArray(OWA,1,"ПОЗИЦИИ","");
    try
      for n=1..Records(OA) do
         Раб.XML.ОткрытьТэг("TSSUBS","");

         Раб.XML.Content[1]=GetFieldS(OA,n,"Наим");
         Раб.XML.Content[2]=" ";
         Раб.XML.Content[3]=GetFieldS(OA,n,"Наим1");
         Раб.XML.Content[4]=" ";
         Раб.XML.Content[5]=GetFieldS(OA,n,"Наим2");
         Раб.XML.Content[6]=" ";
         Раб.XML.Content[7]=GetFieldS(OA,n,"Наим3");
         Раб.XML.Content[8]=" ";
         Раб.XML.СоздатьТэг("NAME_SUBS","",False);

         Раб.XML.СоздатьТэг("CODE_SUBS",GetFieldS(OA,n,"Код"),False);
         Раб.XML.СоздатьТэг("KBK_R",GetFieldS(OA,n,"КОСГУ"),False);
         Раб.XML.СоздатьТэг("ADD_KLASS",GetFieldS(OA,n,"КодПредГод"),False);

         Раб.XML.СоздатьТэг("SUM_PERMIT_OST",Str(GetFieldN(OA,n,"СумПредГод"),2),False);
         Раб.XML.СоздатьТэг("SUM_PLAN_POST",Str(GetFieldN(OA,n,"СумПост"),2),False);
         Раб.XML.СоздатьТэг("SUM_PLAN_VIP",Str(GetFieldN(OA,n,"СумВыпл"),2),False);

         Раб.XML.СоздатьТэг("KOD_SUM_DZ",GetFieldS(OA,n,"КодВДеб"),False);
         Раб.XML.СоздатьТэг("SUM_DZ",Str(GetFieldN(OA,n,"СумВДеб"),2),False);
         РАБ.XML.ЗакрытьТэг;
      od;
    finally
      CloseWorkArea(OA);
    end;
  finally
    CloseWorkArea(OWA);
  end;
end;



Конец
