Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Вниз

Пример создания XML файла   Найти похожие ветки 

 
ancot   (2006-02-10 20:35) [0]

Всем доброго вечера. Есть у меня программа по расчету зарплаты, в ней формируется форма 2 НДФЛ в виде текстого файла. С 2005 года этот файл формируется в формате XML .
С XML столкнулся впервые. Пока только подключил uses MSXML2_TLB. Может кто подскажет простейший пример создания XML файла и как добавить в него значения.


 
ancot   (2006-02-10 20:44) [1]

Файл я все таки создал, но соответственно пустой:
 xml := CoFreeThreadedDOMDocument.Create;
 xml.async := false;
 xml.save(fl_name);


 
palva ©   (2006-02-10 23:02) [2]

Ну теперь надо данными заполнить. Типа так:

uses MSXML_TLB;

procedure TForm1.FormCreate(Sender: TObject);
var
 d: TDomDocument;
 e, c: IXmlDomElement;
 i: Integer;
begin
 d := TDomDocument.Create(nil);
 e := d.createElement("ROOT");
 c := d.createElement("ITEM");
 e.text := "text1";
 for i := 1 to 10 do begin
   c := d.createElement("ITEM");
   c.text := "item" + IntToStr(i);
   e.appendChild(c);
 end;
 d.documentElement := e;
 d.save("fl_name.xml");
end;


 
palva ©   (2006-02-10 23:40) [3]

А вообще лучше сделать с другого конца, чтобы русская Windows 1251 поддеживалась.
procedure TForm1.FormCreate(Sender: TObject);
var
 d: TDomDocument;
 e, c: IXmlDomElement;
 i: Integer;
begin
 d := TDomDocument.Create(nil);
 d.loadXML("<?xml version="1.0" encoding="Windows-1251"?><ROOT></ROOT>");
 e := d.documentElement;
 for i := 1 to 10 do begin
   c := d.createElement("ITEM");
   c.text := "&#242;&#229;&#234;&#241;&#242;" + IntToStr(i);
   e.appendChild(c);
 end;
 d.save("fl_name.xml");
end;


 
palva ©   (2006-02-10 23:42) [4]

Ну вот, опять проблема с русскими буквами! Ну вы поняли.


 
Defunct ©   (2006-02-10 23:47) [5]

> palva

Проблем с русским шрифтом не будет если копировать из Delphi с выбранной  русской раскладкой.


 
palva ©   (2006-02-11 09:54) [6]

Defunct ©   (10.02.06 23:47) [5]
Спасибо, попробую.


 
antoxa2005   (2006-02-12 09:51) [7]

А может быть обратиться в ... и спросить а какого каждый год новые программы, стандатры и форматы, а результат НУЛЕВОЙ?


 
ancot   (2006-02-15 23:32) [8]

Всем спасибо все давно получилось. Осталась одна проблема: в моем xml файле вторая строка выглядит так
<НДФЛ2 noNamespaceSchemaLocation="ДОХОД_2НДФЛ_01.xsd">
(это я сделал с при помощи    
d.loadXML("<?xml version="1.0" encoding="windows-1251"?<НДФЛ2></НДФЛ2>");
e := d.documentElement;
e.setAttribute("noNamespaceSchemaLocation", "ДОХОД_2НДФЛ_01.xsd");
) а в оригинале должно быть <НДФЛ2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ДОХОД_2НДФЛ_01.xsd"> причем кусок текста (xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance") при просмотре подсвечивается красным цветом. Что я забыл ? (в 1С для создания этой строки используется код: хмлКорень.УстановитьПространствоИмен("http://www.w3.org/2001/XMLSchema-instance", "xsi")("http://www.w3.org/2001/XMLSchema-instance", "xsi");



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.047 c
11-1122376775
RA
2005-07-26 15:19
2006.03.19
Для чего это "Can not change font ..."?


8-1127408887
SergProger
2005-09-22 21:08
2006.03.19
Еквалайзер в проигрывателе


9-1124125200
Dgt
2005-08-15 21:00
2006.03.19
Glscene &amp; Gl_Ext_Separate_Specular_color


15-1140625915
Desdechado
2006-02-22 19:31
2006.03.19
Ресурсы-файлокачалки


15-1140903519
DillerXX
2006-02-26 00:38
2006.03.19
Посмотрите что я творил ;)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский