Xml Data Binding de NameSpace Eklemek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
emrahgs
Üye
Mesajlar: 114
Kayıt: 08 Tem 2008 06:25
Konum: Antalya

Xml Data Binding de NameSpace Eklemek

Mesaj gönderen emrahgs »

EFatura Uygulamasında Xml Oluşturmak İçin XmlDataBinding i Kullanıyorum
Ama sh:,cbc:cac gibi taglar alanların önünde çıkmıyor

Kod: Tümünü seç

  X_IXMLStandardBusinessDocumentType:=NewStandardBusinessDocument;
  X_IXMLStandardBusinessDocumentType.DeclareNamespace('ef','http://www.efatura.gov.tr/package-namespace');
  X_IXMLStandardBusinessDocumentHeaderType:=X_IXMLStandardBusinessDocumentType.StandardBusinessDocumentHeader;
  X_IXMLStandardBusinessDocumentHeaderType.HeaderVersion:='1.2';
  X_IXMLStandardBusinessDocumentHeaderType.Sender.Identifier:='222222';
  XMLDocument1.LoadFromXML(X_IXMLStandardBusinessDocumentType.XML);
  XMLDocument1.SaveToFile('d:\denemed.xml');

Kod: Tümünü seç

<?xml version="1.0"?>

-<StandardBusinessDocument xmlns:ef="http://www.efatura.gov.tr/package-namespace" xmlns="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader">


-<StandardBusinessDocumentHeader>

<HeaderVersion>199</HeaderVersion>


-<Sender>

<Identifier>199</Identifier>

</Sender>

</StandardBusinessDocumentHeader>

</StandardBusinessDocument>

Kod: Tümünü seç

<?xml version="1.0"?>

-<sh:StandardBusinessDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sh="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:ef="http://www.efatura.gov.tr/package-namespace">


-<sh:StandardBusinessDocumentHeader>

<sh:HeaderVersion>1.2</sh:HeaderVersion>


-<sh:Sender>

<sh:Identifier>urn:mail:defaultgb@bilnex.com</sh:Identifier>


-<sh:ContactInformation>

<sh:Contact>1234567803</sh:Contact>

<sh:ContactTypeIdentifier>VKN_TCKN</sh:ContactTypeIdentifier>

</sh:ContactInformation>

</sh:Sender>
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: Xml Data Binding de NameSpace Eklemek

Mesaj gönderen mkysoft »

Namespace'lerin olması yeterli, prefix olması şart değil. Delphi'de malasef xml işlemleri sıkıntılı. UBL'in xsd'sinden class yaratırsanız daha kolay olacaktır.
emrahgs
Üye
Mesajlar: 114
Kayıt: 08 Tem 2008 06:25
Konum: Antalya

Re: Xml Data Binding de NameSpace Eklemek

Mesaj gönderen emrahgs »

Yaptım Hocam
Bunun Bir Yöntemi Yoksa En Son Böyle kendim Yazacam

Kod: Tümünü seç

function TXMLStandardBusinessDocumentType.Get_StandardBusinessDocumentHeader: IXMLStandardBusinessDocumentHeaderType;
begin
  Result := ChildNodes['xs:StandardBusinessDocumentHeader'] as IXMLStandardBusinessDocumentHeaderType;
end;

function TXMLStandardBusinessDocumentType.Get_Package: IXMLPackageType;
begin
  Result := ChildNodes['xs:Package'] as IXMLPackageType;
end;
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: Xml Data Binding de NameSpace Eklemek

Mesaj gönderen mkysoft »

XML Data Binding Wizard ile denediniz mi?
http://docwiki.embarcadero.com/RADStudi ... ing_Wizard
emrahgs
Üye
Mesajlar: 114
Kayıt: 08 Tem 2008 06:25
Konum: Antalya

Re: Xml Data Binding de NameSpace Eklemek

Mesaj gönderen emrahgs »

denedim hocam onunla yapıyorum zaten , şema için gösterdiğin xml de bu taglar var fakat benim oluşturduğum xml de çıkmıyo
emrahgs
Üye
Mesajlar: 114
Kayıt: 08 Tem 2008 06:25
Konum: Antalya

Re: Xml Data Binding de NameSpace Eklemek

Mesaj gönderen emrahgs »

Henüz Bir Sonuca Ulaşamadım. Bunu Daha Önce Yaşayan Arkadaşlar varsa Yardımcı Olabilir mi?
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: Xml Data Binding de NameSpace Eklemek

Mesaj gönderen sabanakman »

İyi günler. Etraflıca inceleme fırsatım olmadı ama NativeXML ile büyükçe bir XML'i gayet hızlı bir biçimce açabildim. Henüz inceliyorum :) . İncelemem tam da şu ana denk geldi, benim de daha fazla bilgim bulunmamaktadır ama nesnelerden oluşan yapısı kullanım kolaylığı sağlıyor gibi :mrgreen: .

-Burada bulunan https://github.com/kattunga/NativeXml/t ... /nativexml ve https://github.com/kattunga/NativeXml/t ... er/general klasörlerinden açık kaynak kod olan güncel dosyalara ulaşabilirsiniz. İyi çalışmalar.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Cevapla