Счет-фактура XML

Практические советы по работе с FileMaker, типичные задачи и их решения. У вас вопрос? Пишите сюда.
Ответить
Vadim
Сообщения: 15
Зарегистрирован: 12 сен 2017, 04:18
Откуда: Ростов на Дону

Счет-фактура XML

Сообщение Vadim » 30 дек 2021, 09:23

Доброго дня, форумчане!
Возникла задача импортировать в FileMaker документы электронного документооборота. В частности счет фактуру версия 5.02
При импорте FileMaker просит предоставить документ Таблицы стилей XSL который я не смог найти.
Возможно кто-то уже решал эту задачу?
Буду благодарен за любой тычок носом.
Спасибо.

andrey volkov
Сообщения: 338
Зарегистрирован: 11 сен 2017, 13:42
Откуда: Санкт-Петербург

Re: Счет-фактура XML

Сообщение andrey volkov » 31 дек 2021, 06:54

попробуйте парсить XML вручную, тем более, что счет-фактура в файлмекер попадет в две разные таблицы, а не в одну.

в соседней ветке описаны первые шаги.

ну или можно прочитать про формат XSLT и попытаться самостоятельно делать шаблоны XSL
https://www.bluefeathergroup.com/blog/f ... le-sheets/

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

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

Аватара пользователя
Nicolai Kant
Сообщения: 21
Зарегистрирован: 19 авг 2020, 19:16

Re: Счет-фактура XML

Сообщение Nicolai Kant » 31 дек 2021, 15:19

XSLT сам по себе очень хороший навык, но если это не вариант, вы можете попытаться найти веб-разработчика на время, они как правило знают XSLT.

Вы также можете попробовать опубликовать на stackoverflow или community форуме FileMaker.

Если начнете учить XSLT и будут проблемы с кодом, спрашивайте здесь

Alexei Sytch
Сообщения: 106
Зарегистрирован: 21 сен 2017, 18:48
Откуда: Минск

Re: Счет-фактура XML

Сообщение Alexei Sytch » 12 янв 2022, 21:16

https://jensteich.de/universal-xslt/
Здесь можно взять универсальный xlst , который позволит импортировать xml в FileMaker. Но он не раскладывает по полям и таблицам, только загружает значения и полный путь к значению. Дальше все равно надо скриптом. Это как альтернатива парсингу

Vadim
Сообщения: 15
Зарегистрирован: 12 сен 2017, 04:18
Откуда: Ростов на Дону

Re: Счет-фактура XML

Сообщение Vadim » 19 янв 2022, 10:44

Спасибо за ответы, почему то не получал уведомления, шапку Счета- фактуры успешно импортирую с помощью своего XSL шаблона, теперь воюю с табличной частью

andrey volkov
Сообщения: 338
Зарегистрирован: 11 сен 2017, 13:42
Откуда: Санкт-Петербург

Re: Счет-фактура XML

Сообщение andrey volkov » 20 янв 2022, 12:37

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

Тогда будет видно, к чему стремиться надо. Но возможно я сейчас какие-то совсем уж очевидные вещи пишу :)

Vadim
Сообщения: 15
Зарегистрирован: 12 сен 2017, 04:18
Откуда: Ростов на Дону

Re: Счет-фактура XML

Сообщение Vadim » 24 янв 2022, 10:17

Еще раз, спасибо всем откликнувшимся. В общем завершил импорт в FM.
Вот ссылка на описание форматаhttp://www.consultant.ru/document/cons_ ... 4a4ed427e/
Это шаблон для импорта шапки СФ

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no" />
<xsl:template match="/">
<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
    <METADATA>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ИдФайл" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ВерсПрог" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ВерсФорм" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвУчДокОбор_ИдОтпр" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвУчДокОбор_ИдПол" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвОЭДОтпр_НаимОрг" TYPE="TEXT"/>      
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвОЭДОтпр_ИННЮЛ" TYPE="TEXT"/>    
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвОЭДОтпр_ИдЭДО" TYPE="TEXT"/>    
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_КНД" TYPE="TEXT"/>   
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_ПоФактХЖ" TYPE="TEXT"/>   
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_НаимДокОпр" TYPE="TEXT"/>   
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_ДатаИнфПр" TYPE="DATE"/>   
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_ВремИнфПр" TYPE="TEXT"/>                       
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_НаимЭконСубСост" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Документ_Функция" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвСчФакт_НомерСчФ" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвСчФакт_ДатаСчФ" TYPE="DATE"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвСчФакт_КодОКВ" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_НаимОрг" TYPE="TEXT"/>        
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_ИННЮЛ" TYPE="TEXT"/>              
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_КПП" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_ИННФЛ" TYPE="TEXT"/>      
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_СвГосРегИП" TYPE="TEXT"/>                               
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_Фамилия" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_Имя" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_Отчество" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Индекс" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_КодРегион" TYPE="TEXT"/>        
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Район" TYPE="TEXT"/>         
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Город" TYPE="TEXT"/>    
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_НаселПункт" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Улица" TYPE="TEXT"/>      
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Дом" TYPE="TEXT"/>    
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Корпус" TYPE="TEXT"/>    
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_АдрРФ_Кварт" TYPE="TEXT"/>    
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_Контакт_Тлф" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПрод_Контакт_ЭлПочта" TYPE="TEXT"/>                 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="БанкРекв_НомерСчета" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="БанкРекв_НаимБанк" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="БанкРекв_БИК" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="БанкРекв_КорСчет" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СуммаПРД" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НомерПРД" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ДатаПРД" TYPE="DATE"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_НаимОрг" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_ИННЮЛ" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_КПП" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Индекс" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_КодРегион" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Район" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_НаселПункт" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Город" TYPE="TEXT"/>        
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Улица" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Дом" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Корпус" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_АдрРФ_Кварт" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_БанкРекв_НомерСчета" TYPE="TEXT"/>  
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_БанкРекв_НаимБанк" TYPE="TEXT"/>  
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_БанкРекв_БИК" TYPE="TEXT"/>  
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СвПокуп_БанкРекв_КорСчет" TYPE="TEXT"/>     
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НаимОКВ" TYPE="TEXT"/>  
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НаимОсн" TYPE="TEXT"/>       
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КурсВал" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ВсегоОпл_СтТовБезНДСВсего" TYPE="NUMBER"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ВсегоОпл_СтТовУчНалВсего" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ВсегоОпл_СумНал" TYPE="NUMBER"/>             
  </METADATA>
  <RESULTSET>

     <ROW>
              <COL><DATA><xsl:value-of select="Файл/@ИдФайл"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/@ВерсПрог"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/@ВерсФорм"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/СвУчДокОбор/@ИдОтпр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/СвУчДокОбор/@ИдПол"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/СвУчДокОбор/СвОЭДОтпр/@НаимОрг"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/СвУчДокОбор/СвОЭДОтпр/@ИННЮЛ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/СвУчДокОбор/СвОЭДОтпр/@ИдЭДО"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@КНД"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@ПоФактХЖ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@НаимДокОпр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@ДатаИнфПр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@ВремИнфПр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@НаимЭконСубСост"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/@Функция"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/@НомерСчФ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/@ДатаСчФ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/@КодОКВ"/></DATA></COL>             
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвЮЛУч/@НаимОрг"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвЮЛУч/@ИННЮЛ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвЮЛУч/@КПП"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвИП/@ИННФЛ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвИП/@СвГосРегИП"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвИП/ФИО/@Фамилия"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвИП/ФИО/@Имя"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/ИдСв/СвИП/ФИО/@Отчество"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Индекс"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@КодРегион"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Район"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Город"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@НаселПункт"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Улица"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Дом"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Корпус"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Адрес/АдрРФ/@Кварт"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Контакт/@Тлф"/></DATA></COL>              
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/Контакт/@ЭлПочта"/></DATA></COL>               
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/БанкРекв/@НомерСчета"/></DATA></COL>                     
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/БанкРекв/СвБанк/@НаимБанк"/></DATA></COL>                  
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/БанкРекв/СвБанк/@БИК"/></DATA></COL>                 
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПрод/БанкРекв/СвБанк/@КорСчет"/></DATA></COL>                 
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПРД/@СуммаПРД"/></DATA></COL>                 
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПРД/@НомерПРД"/></DATA></COL>                           
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПРД/@ДатаПРД"/></DATA></COL>                   
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/ИдСв/СвЮЛУч/@НаимОрг"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/ИдСв/СвЮЛУч/@ИННЮЛ"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/ИдСв/СвЮЛУч/@КПП"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Индекс"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@КодРегион"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Район"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@НаселПункт"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Город"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Улица"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Дом"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Корпус"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/Адрес/АдрРФ/@Кварт"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/БанкРекв/@НомерСчета"/></DATA></COL>                     
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/БанкРекв/СвБанк/@НаимБанк"/></DATA></COL>                  
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/БанкРекв/СвБанк/@БИК"/></DATA></COL>                 
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/СвПокуп/БанкРекв/СвБанк/@КорСчет"/></DATA></COL>                 
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/ДопСвФХЖ1/@НаимОКВ"/></DATA></COL>                  
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/ДопСвФХЖ1/@НаимОсн"/></DATA></COL>                 
              <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/ДопСвФХЖ1/@КурсВал"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/ТаблСчФакт/ВсегоОпл/@СтТовБезНДСВсего"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/ТаблСчФакт/ВсегоОпл/@СтТовУчНалВсего"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Файл/Документ/ТаблСчФакт/ВсегоОпл/СумНалВсего/СумНал"/></DATA></COL>
    </ROW>	  
        
      </RESULTSET>
 </FMPXMLRESULT>
 </xsl:template>
</xsl:stylesheet>
а это шаблон для импорта табличной части

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no" />
<xsl:template match="/">
<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
    <METADATA>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НомСтр" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НаимТов" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ОКЕИ_Тов" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КолТов" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ЦенаТов" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СтТовБезНДС" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НалСт" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СтТовУчНал" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СумАкциз" TYPE="NUMBER"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="БезАкциз" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СумНал" TYPE="NUMBER"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КодПроисх" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НомерТД" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КрНаимСтрПр" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ПрТовРаб" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ДопПризн" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НаимЕдИзм" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КрНаимСтрПр" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ХарактерТов" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="СортТов" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="АртикулТов" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КодТов" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КодКат" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КодВидТов" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НомТовПрослеж" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ЕдИзмПрослеж" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="НаимЕдИзмПрослеж" TYPE="TEXT"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="КолВЕдПрослеж" TYPE="NUMBER"/> 
        <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="ДопПрослеж" TYPE="TEXT"/> 
  </METADATA>
  <RESULTSET>

	<xsl:for-each select="Файл/Документ/ТаблСчФакт/СведТов">     
         <ROW>
              <COL><DATA><xsl:value-of select="@НомСтр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@НаимТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@ОКЕИ_Тов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@КолТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@ЦенаТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@СтТовБезНДС"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@НалСт"/></DATA></COL>
              <COL><DATA><xsl:value-of select="@СтТовУчНал"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Акциз/СумАкциз"/></DATA></COL>
              <COL><DATA><xsl:value-of select="Акциз/БезАкциз"/></DATA></COL>
              <COL><DATA><xsl:value-of select="СумНал/СумНал"/></DATA></COL>
              <COL><DATA><xsl:value-of select="СвТД/@КодПроисх"/></DATA></COL>
              <COL><DATA><xsl:value-of select="СвТД/@НомерТД"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@КрНаимСтрПр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@ПрТовРаб"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@ДопПризн"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@НаимЕдИзм"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@КрНаимСтрПр"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@ХарактерТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@СортТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@АртикулТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@КодТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@КодКат"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/@КодВидТов"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/СведПрослеж/@НомТовПрослеж"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/СведПрослеж/@ЕдИзмПрослеж"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/СведПрослеж/@НаимЕдИзмПрослеж"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/СведПрослеж/@КолВЕдПрослеж"/></DATA></COL>
              <COL><DATA><xsl:value-of select="ДопСведТов/СведПрослеж/@ДопПрослеж"/></DATA></COL>
          </ROW>	
     </xsl:for-each>   
      
   </RESULTSET>
 </FMPXMLRESULT>
 </xsl:template>
</xsl:stylesheet>
Сразу скажу импортирую только что нужно для нас, есть некоторые поля которые не забираю, но файлы можно доработать по желанию.
Всем пока!

Vadim
Сообщения: 15
Зарегистрирован: 12 сен 2017, 04:18
Откуда: Ростов на Дону

Re: Счет-фактура XML

Сообщение Vadim » 28 янв 2022, 12:48

И снова здравствуйте!
Возникла еще одна неувязка, Счет-фактура может содержать несколько повторяющихся строк в информационном поле Пример

Код: Выделить всё

 
 <ИнфПолФХЖ1>
        <ТекстИнф Значен="КомпьютерИнжиниринг_СчФ" Идентиф="ИдВизуализации"/>
        <ТекстИнф Значен="27.01.2022" Идентиф="ОснованиеДата"/>
        <ТекстИнф Значен="26" Идентиф="ОснованиеНомер"/>
        <ТекстИнф Значен="Подключение (установка, адаптация, сопровождение и др.) экземпляра на период до 30.06.2022" Идентиф="СтрокаПечати"/>
 </ИнфПолФХЖ1>
По сути это repeating я попробовал описать эти поля как Repeating и импортировать в них, но не вышло.

Код: Выделить всё

    
    <METADATA>    
        <FIELD EMPTYOK="YES" MAXREPEAT="5" NAME="ИнфПолФХЖ1_Идентиф" TYPE="TEXT"/>
        <FIELD EMPTYOK="YES" MAXREPEAT="5" NAME="ИнфПолФХЖ1_Значен" TYPE="TEXT"/>    
     </METADATA>
     <RESULTSET>
          <ROW>
               <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/ИнфПолФХЖ1/ТекстИнф/@Идентиф"/></DATA></COL>
               <COL><DATA><xsl:value-of select="Файл/Документ/СвСчФакт/ИнфПолФХЖ1/ТекстИнф/@Значен"/></DATA></COL>
           </ROW>
      </RESULTSET>
не вышло. :( Импортируется только первая строка
Может знаете способ?

Vadim
Сообщения: 15
Зарегистрирован: 12 сен 2017, 04:18
Откуда: Ростов на Дону

Re: Счет-фактура XML

Сообщение Vadim » 28 янв 2022, 13:40

You are able to export repeating field data from your FileMaker solution to an XML file but when attempting to import the XML file into the same FileMaker solution, FileMaker only imports the first value of the repeating field, ignoring all the other repetitions and the data in those repetitions.

https://support.claris.com/s/answerview ... uage=en_US

Жаль :cry:

Ответить