Xml Dosyası düzenleme ve yine xml formatında kaydetme

Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Herkese kolay gelsin,

Xml dosyasında değişiklik yapılıp tekrar xml dosyası olarak keydeden var mıdır?


örnek xml dosyası
https://yadi.sk/d/87GjmKnO2f_BVQ
 
Son düzenleme:

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Yapılır ama XML dosyasında istediğiniz değişiklikler nedir, belirtmemişiniz.

.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Dosya BaBs dosyası ben bunu exdelde düzenleyip direk xml olarak kaydetmeye çalışıyorum.
Eski yüklemelerden örnek alıp Xml kaynaklarını eşleştirdim fakat olumsuz.
Örnek düzeltme için ise
ba>
<siraNo>1</siraNo>
<unvan>TARIM ÜRN.GIDA NAK.İNŞ.TUR.SAN.VE TİC.LTD.ŞTİ.</unvan>
<ulke>052</ulke>
<vkno>001000000</vkno>
<belgeSayisi>1</belgeSayisi>
<malHizmetBedeli>15508</malHizmetBedeli>
</ba>
Bu bölümü çoğaltmak istiyorum. 2-3-4-5 ...şeklinde
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Bahsettiğiniz BaBs dosyası nedir bilmiyorum ama, dediğiniz şey yapılır.

Bahsettiğiniz çoğaltma işleminde kullanılacak veriler nerden alınacak ? Bunun için herhalde Excel'de bir tablonuz vardır, onu da eklerseniz iyi olur.

Bir diğer konu da; XML dosyasındaki "BA" bölümü hariç, diğer kısımlar aynı mı kalacak, yoksa onlarda da değişiklik olacak mı?

.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Bahsettiğiniz BaBs dosyası nedir bilmiyorum ama, dediğiniz şey yapılır.
Bahsettiğiniz çoğaltma işleminde kullanılacak veriler nerden alınacak ? Bunun için herhalde Excel'de bir tablonuz vardır, onu da eklerseniz iyi olur.
Burada liste mevcut.

Bir diğer konu da; XML dosyasındaki "BA" bölümü hariç, diğer kısımlar aynı mı kalacak, yoksa onlarda da değişiklik olacak mı?

<toplamAlimBedeli>15508</toplamAlimBedeli>
Diğer yerler sabit ama onları da değiştirebilir yapabilirsek daha kullanışlı olur.

.
 
Son düzenleme:
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
#5 nolu mesajda dosyaları güncelledim. Xml + Xlsx
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Siz cevap yazarken ben kendime göre bir örnek Excel dosyasında tablo yapmıştım. Sizin daha önce göndermiş olduğunuz XML dosyasını SablonXML.xml olarak adlandırdım ve kodları buna göre düzenledim. Bu arada, 5 No'lu mesajınızda belirttiğiniz toplam bedel de güncellenmiş XML dosyasında yer alıyor.

Ekli dosyaları bilgisayarda bir klasöre yerleştirdikten sonra, Excel dosyasını açın ve sayfadaki butona tıklayın. Excel tablosundaki verilere göre size güncellenmiş yeni bir XML dosyası oluşturulacaktır.

********************************************************
Not: Dosyanın son hali 62No'lu mesajın ekindedir.
********************************************************

.
 

Ekli dosyalar

Son düzenleme:

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,269
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
vkno isimli element, alım yapılan gerçek kişi olduğunda tckimlikno olur. Programın doğru çalışması için daha somut bir şablon gerekirdi.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Haluk bey çok teşekkür ederim.

Anladığım kadarıyla şablon üzerinden değişiklik yapıyoruz.

Fakat birkaç aksaklık var. Onları detaylı test edip tekrar yazcağım.
Şimdilik tespit ettiklerim:
- Örnek Excel dosyasında D ve E sütunundaki verilerde değişiklik olabiliyor. (tcno-vergino)
- güncellemede ilk satıs değişmiyor onun üzerine yazıyor.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
vkno isimli element, alım yapılan gerçek kişi olduğunda tckimlikno olur. Programın doğru çalışması için daha somut bir şablon gerekirdi.
Evet haklısınız o ihtimali atlamışım. Daha farklı bir dosya beklentim vardı belki kendim bir-iki değişiklikle hallederim diye düşünmüştüm.

Hani Xml'i excelde açtığımızda tablo olarak görünüyor ,orada birkaç düzenelem yapıp farklı kaydet ile çözeriz diye :)
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Dediğim gibi; BA-BS dediğiniz olaydan anlamadığım için ben sadece sizin verdiğiniz bilgilere göre kod yazıyorum.

Yukarıdaki mesajlardan sonra son gelişmelere göre revize dosya 7 No'lu mesaja eklenmiştir.

.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
NoB =Range("B" & Rows.Count).End(xlUp).Row

Burada 255 satırdan sonrası için "overflow" hatası geliyor.

Ek olarak ihtimal dosya bitince fadası olacağına inandığım için ;
Bu alanın da değiştirilebilir olarak yapabilirmiyiz?

Kod:
<beyanname kodVer="FORMBA_6" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FORMBA_6.xsd" >
    <genel>
        <idari>
            <vdKodu>006271</vdKodu>
            <donem>
                <tip>aylik</tip>
                <yil>2018</yil>
                <ay>8</ay>
            </donem>
        </idari>
        <mukellef>
            <vergiNo>4200000000</vergiNo>
            <soyadi>AAAAAAA</soyadi>
            <adi>TİC.TAAH.LTD.ŞTİ.</adi>
            <ticSicilNo>12345</ticSicilNo>
            <eposta>muhasebe@citygross.com.tr</eposta>
            <alanKodu>312</alanKodu>
            <telNo>1234567</telNo>
        </mukellef>
        <hsv sifat="kendisi">
            <vergiNo>4200000000</vergiNo>
            <soyadi>AAAAAAA</soyadi>
            <adi>TİC.TAAH.LTD.ŞTİ.</adi>
            <ticSicilNo>12345</ticSicilNo>
            <eposta>acar6783@yandex.com</eposta>
            <alanKodu>312</alanKodu>
            <telNo>1234567</telNo>
        </hsv>
        <duzenleyen>
            <vergiNo>4200000000</vergiNo>
            <soyadi>AAAAAAA</soyadi>
            <adi>TİC.TAAH.LTD.ŞTİ.</adi>
            <ticSicilNo>12345</ticSicilNo>
            <eposta>acar6783@yandex.com</eposta>
            <alanKodu>312</alanKodu>
            <telNo>1234567</telNo>
        </duzenleyen>
        <gonderen>
            <vergiNo>4200000000</vergiNo>
            <soyadi>GÜLMAR GIDA SANAYİ </soyadi>
            <adi>TİC.TAAH.LTD.ŞTİ.</adi>
            <ticSicilNo>12345</ticSicilNo>
            <eposta>acar6783@yandex.com</eposta>
            <alanKodu>312</alanKodu>
            <telNo>1234567</telNo>
        </gonderen>
    </genel>
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
NoB =Range("B" & Rows.Count).End(xlUp).Row

Burada 255 satırdan sonrası için "overflow" hatası geliyor.

Siz 4-5 adet fatura deyince ben de ona göre hazırlamıştım kodu. Söz konusu "overflow" hatası almamak için kodun en üstündeki;

Kod:
NoB As Byte

kısmını, aşağıdaki gibi değiştirin.


Kod:
NoB As integer

.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Çok teşekkür ederim . Bir iki değişiklikle biraz yoluna girdi.

Ek olarak bu işlemi dediğim gibi şablon gerekmeksizin yapma ihtimalimiz var mıdır?
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Şablonsuz da olur, ama daha fazla kod yazmak lazım.

Şablon kullanmak sizin için çok sorun olmaz diye düşünüyorum.

.
 
Katılım
6 Temmuz 2008
Mesajlar
1,875
Excel Vers. ve Dili
OFFİCE 2010- TÜRKÇE
Altın Üyelik Bitiş Tarihi
22-12-2019
Şablonsuz olmasının avantajı daha çok olacağını düşünüyorum.
Vergi dairesinin şablonu değiştirme ihtimaline istinaden daha kullanışlı olur .
Tabi programın genele hitap etmesi için 12'nolu mesajda belirttiğim alanların da değiştirilebilir olması daha iyi oalcaktır.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Şablon olarak kullanılan XML dosyasındaki tüm alanların, ekli Excel dosyasında kullanıcı tarafından girilen verilerle güncellenmesine ilişkin revize dosya ektedir.

Daha önce olduğu gibi bu kez de, SablonXML.xml dosyası ve Excel dosyası aynı klasörde olmalıdır.

Dosyanın linki:

(.... Silindi....)

.
 

Ekli dosyalar

Son düzenleme:

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Ekli dosyada bu kez, şablon kullanılmadan Excel'deki verilere göre söz konusu XML dosyası hazırlanmaktadır.

Dosya biraz zahmetli oldu, umarım işinize yarar.

Dosyanın harici linki:

(... Silindi ....)


Not1: Bugün saat 17:00'den sonra dosyaya ait harici link silinecektir. "Altın Üye" olanlar, dosyaya erişim sağlayabilecektir.

Not2: Dosyanın son hali 62No'lu mesajın ekindedir.

.
 

Ekli dosyalar

Son düzenleme:

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,598
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
@Haluk bey efsanevi paylaşımlara devam ediyorsunuz.
Elinize sağlık.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,310
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Teşekkür ederim Erdem Bey.

.
 
Üst