Excel Datasından Nasıl XML yapılabilir (Vakka)

Excel, Word, Access, Power Point programlarıyla ilgili ipuçları ve bilgi paylaşım alanıdır.
Cevapla
Kullanıcı avatarı
velociraptor
Yottabyte3
Yottabyte3
Mesajlar: 27808
Kayıt: 14 Mar 2006, 02:33
cinsiyet: Erkek

Excel Datasından Nasıl XML yapılabilir (Vakka)

Mesaj gönderen velociraptor » 21 Eyl 2007, 00:35

Soru:
Günlerdir bir konuyla basım dertte. Önbüro programından aldıgım tüm müsteri bilgilerini excele sorunsuzca aktarabiliyorum sütünlarda düzgün görünüyorlar. Ancak sorunum bu excel dosyasını nasıl XML halinde kayıt edebilirim ? Örnegin bu dosyayı direkt olarak " Farklı Kaydet " den XML verisi olarak kaydetmek istedigimde " Eslestrime bulunamadı , XML biçiminde kaydedilemez " gibi bir hata alıyorum.. Ne yapmam gerekir ? Bir bilgi yada açıklamalı bildiginiz bir link varmı ? Interneti epey arastırdım ama tam istedigim gibi açıklama bulamadım... Asagıda örnek resmi gönderiyorum , mesela böyle bir tablomuz var , bunu XML datası halinde kayıt etmem gerekiyor :

Resim

Cevap:
Excel'de XML dönüsümleri XML Schema adı verilen XML Taslagına göre olusturuluyor. Bu XML Taslagı içinde hangi bilgilerin, XML'in hangi bölümüne yazıldıgı belirtiliyor kısaca:

Kod: Tümünü seç

<?xml version="1.0" encoding="ISO-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="shiporder">
<xs:complexType>
  <xs:sequence>
   <xs:element name="orderperson" type="xs:string"/>
   <xs:element name="shipto">
    <xs:complexType>
     <xs:sequence>
      <xs:element name="name" type="xs:string"/>
      <xs:element name="address" type="xs:string"/>
      <xs:element name="city" type="xs:string"/>
      <xs:element name="country" type="xs:string"/>
     </xs:sequence>
    </xs:complexType>
   </xs:element>
   <xs:element name="item" maxOccurs="unbounded">
    <xs:complexType>
     <xs:sequence>
      <xs:element name="title" type="xs:string"/>
      <xs:element name="note" type="xs:string" minOccurs="0"/>
      <xs:element name="quantity" type="xs:positiveInteger"/>
      <xs:element name="price" type="xs:decimal"/>
     </xs:sequence>
    </xs:complexType>
   </xs:element>
  </xs:sequence>
  <xs:attribute name="orderid" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>

</xs:schema>
xsd formatında kaydedilen bu taslak, Excel'deki XML Source penceresi açılarak, ekleniyor. Daha sonra Excel'in bu taslaktan aldıgı veri alanları, Excel'deki veriler ile eslestirmek gerekiyor. En son adımda ise Export seçenegi ile XML dosyasına aktarılabilir. Bu islem aslında burada yazıldıgı kadar kolay ve düzgün sekilde ilerlemiyor. Excel bu konuda çok da basarılı degil, bunu Microsoft'ta farketmis olacak ki konuyla ilgili bir egitim videosuhazırlamıslar.

Geçenlerde Excel 2007'de aynı konu bana lazım oldu, baktım çok is açıyor basıma, söyle bir çözüm buldum. Softsilver Transformer isimli program Excel dosyası dahil 4-5 kaynaktan aldıgı veriyi, gene program içinde belirledigi taslak dogrultusunda XML'e çevirebiliyor. Hızlı bir çözüm arayanlar için ideal olabilir.

ALINTIDIR
Knowledge determines destiny, And ye shall know the Truth and the Truth shall make you free



Cevapla