|
||
|
Заголовок: Re: Экспорт НН в XML Прислано пользователем Denis, Dnepropetrovsk на 05.03.12 в 11:03:42 По трудоемкости создать сразу XML-файл будет не намного сложнее чем такой текстовый. Проблема кодировки выходного файла решается простой подпрограммой (можно не только в windows-1251 но в принципе и в любую другую кодировку перевести). |
||
|
Заголовок: Re: Экспорт НН в XML Прислано пользователем Boris, Kiev. на 05.03.12 в 14:19:46 on 03/05/12 в 12:43:49, alushta wrote:
Не очень понятно, какой смысл в том, что сначала средствами ФБП делается болванка, а затем её же обрабатывать с целью получения тем же средством связанного результирующего текстового xml-формата. Чего Вам не хватает для прямой генерации резудьтирующего XML-файла? |
||
|
Заголовок: Re: Экспорт НН в XML Прислано пользователем alushta на 05.03.12 в 14:26:13 Я думал что здесь мы будем предлагать, а тут пошло обсуждение что да как, вместо, того чтобы предложить конкретно лучше моего Поэтому я удалил свое предложение... |
||
|
Заголовок: Re: Экспорт НН в XML Прислано пользователем Denis, Dnepropetrovsk на 11.06.12 в 09:39:03 Рабочая заготовка для экспорта НН в XML для m.e.doc (проверено вместе с Alushta): ***************************XML*** ax='d:\buh\medoc\NN\111.xml' xml-файл \>file ax printstr [win '<?xml version="1.0" encoding="windows-1251"?>']+[ch 13]+[ch 10] to file ax printstr [win '<ZVIT>'] to file ax *Дата создания НН if DC<10 XX='0'+[intsn DC];else XX=[intsn DC];endif if MC<10 XX=XX+'.0'+[intsn MC]+'.'+[intsn YC];else XX=XX+'.'+[intsn MC]+'.'+[intsn YC];endif printstr [win '<TRANSPORT><CREATEDATE>'+XX+'</CREATEDATE><VERSION>3.0</VERSION></TRANSPORT>'] to file ax *Код ЕДРПОУ предприятия вставить!!! XX='xxxxxxxx' if XX=0 XX=' ';endif printstr [win '<ORG><FIELDS><EDRPOU>'+XX+'</EDRPOU></FIELDS>'] to file ax *Начало документа + первый день периода (месяца) документа if MC<10 XX='01.0'+[intsn MC]+'.'+[intsn YC];else XX='01.'+[intsn MC]+'.'+[intsn YC];endif printstr [win '<CARD><FIELDS><PERTYPE>0</PERTYPE><PERDATE>'+XX+'</PERDATE><CHARCODE>J1201003</CHARCODE><DOCID>1</DOCID></FIELDS><DOCUMENT>'] to file ax *Код ЕДРПОУ покупателя XX='xxxxxxxx' if XX=0 XX=' ';endif printstr [win '<ROW TAB="0" LINE="0" NAME="EDR_POK"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Код ЕДРПОУ предприятия XX='xxxxxxxx' if XX=0 XX=' ';endif printstr [win '<ROW TAB="0" LINE="0" NAME="FIRM_EDRPOU"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Код ИНН предприятия XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="FIRM_INN"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Наименование предприятия XX='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="FIRM_NAME"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Телефон предприятия XX='xxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="FIRM_PHON"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Свидетельство про регистрацию XX='xxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="FIRM_SRPNDS"><VALUE>'+XX+'</VALUE></ROW>'] to file ax ****Адрес Предприятия XX='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' if XX=0 XX=' ';endif printstr [win '<ROW TAB="0" LINE="0" NAME="FIRM_ADR"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Оригинал printstr [win '<ROW TAB="0" LINE="0" NAME="N1"><VALUE>X</VALUE></ROW>'] to file ax *Имя выписавшего налоговую XX='xxxxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N10"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Дата выписки HH if DC<10 XX='0'+[intsn DC];else XX=[intsn DC];endif if MC<10 XX=XX+'.0'+[intsn MC]+'.'+[intsn YC];else XX=XX+'.'+[intsn MC]+'.'+[intsn YC];endif printstr [win '<ROW TAB="0" LINE="0" NAME="N11"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Номер налоговой XX='xxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N2_11"><VALUE>'+XX+'</VALUE></ROW>'] to file ax printstr [win '<ROW TAB="0" LINE="0" NAME="N2_1"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Наименование покупателя XX='xxxxxxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N3"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *ИНН покупателя XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N4"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Адрес покупателя XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N5"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Телефон покупателя XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N6"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Свидетельство про регистрацию покупателя XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N7"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Вид договора XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N8"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Номер договора XX='xxxxxxxxxxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N81"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Дата договора XX='xx.xx.xxxx' printstr [win '<ROW TAB="0" LINE="0" NAME="N82"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Форма оплаты XX='оплата з поточного рахунку' printstr [win '<ROW TAB="0" LINE="0" NAME="N9"><VALUE>'+XX+'</VALUE></ROW>'] to file ax В переменную XX нужно просто подставлять нужный значения... Проверить корректность xml-файла очень просто. Файл должен открываться браузером без ошибок. |
||
|
Заголовок: Re: Экспорт НН в XML Прислано пользователем Denis, Dnepropetrovsk на 11.06.12 в 09:39:22 продолжение: ***Строка HH для XML **Нумерация с 0 а не с 1 *i - порядковый номер строки НН *Дата отгрузки XX='xx.xx.xxxx' printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_A12"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Наименование товара XX='xxxxxxxxxxxxxx' printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_A13"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Единица измерения XX='xxxxx' printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_A14"><VALUE>'+XX+'</VALUE></ROW>'] to file ax *Количество if XX='грн.' printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_51">послуга<VALUE></VALUE></ROW>'] to file ax else XX=1 printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_A15"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax endif *Цена без НДС XX=1 printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_A16"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax *Обсяги постачання без урахування ПДВ (ставка 20%): XX=1 printstr [win '<ROW TAB="1" LINE="'+[intsn i-1]+'" NAME="TAB1_A17"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax ****************** ***Итоги накладной и закрытие XML *Усього по роздiлу I (колонка 7 <20%>) XX=1 printstr [win '<ROW TAB="0" LINE="0" NAME="A5_7"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax *Усього по роздiлу I (колонка 11 <Загальна сума коштiв, що пiдлягає сплатi>) XX=1 printstr [win '<ROW TAB="0" LINE="0" NAME="A5_11"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax *III ПДВ (колонка 7 <20%> ) XX=0.2 printstr [win '<ROW TAB="0" LINE="0" NAME="A6_7"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax *III ПДВ (колонка 11 <Загальна сума коштiв, що пiдлягає сплатi>) XX=0.2 printstr [win '<ROW TAB="0" LINE="0" NAME="A6_11"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax *Загальна сума з ПДВ (20% вiдсоткiв) XX=1.2 printstr [win '<ROW TAB="0" LINE="0" NAME="A7_7"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax *Загальна сума коштiв з ПДВ XX=1.2 printstr [win '<ROW TAB="0" LINE="0" NAME="A7_11"><VALUE>'+[strip [sn XX,14,2]+'</VALUE></ROW>'] to file ax printstr [win '</DOCUMENT></CARD></ORG></ZVIT>'] to file ax ********************************** |
||
|
Заголовок: Re: Экспорт НН в XML Прислано пользователем alushta на 11.06.12 в 11:56:40 Большое спасибо Денису за этот пример. Я думаю что вопрос создания файлов XML средствами ФБП рассмотрен полностью |
||
|
Powered by YaBB 1 Gold - SP 1.3.2! Forum software copyright й 2000-2004 Yet another Bulletin Board |