Forum
Merhaba Arkadaşlar.
ASP.net üzerinden Geliştirdiğim B2B Sistemini Netsis Yazılımına Entegre Ettim. Veri Aktarımını Yazdığım Ara Bir Program Vasıtasıyla Verileri Birbirlerine Entegre Ediyorum. Çalışma ve Test Aşamalarını Başarıyla Tamamladım.
Fakat Şöyle Bir Durumla Karşılaştım.
Netsis Muhasebe Programında Yaklaşık 8000 Adet Kayıt Bulunmaktadır.
B2B Veri Veritabanında Stok Kartlarını Tutacak 4 Adet Tablom Var. Örnek Vermek Gerekirse "Stok Kart Bilgisi, Stok Kategori, Stok Fiyatı, Stok Resim" Dolayısı İle Her Tabloya 8000 Kayıt Yaptırıyorum 8000* 4 =32000 kayıt yapıyor.
bu sadece Stok Kartları İçin Geçerli, Fatura ve Müşteri Hesap Ekstresi de Aynı Sayı Hemen Hemen;
Aktarım İşlemlerini Direkt Olarak SQL Üzerinden Yapıyorum. Kayıt Yöntemi Olarak "stored procedure" kullanıyorum.
Ortalama 8000*4=32000 kaydı 15 dakikada Yapıyor.
İşleyiş Belirli Zaman Dilimlerinde Otomatik Devam Edecek. Örnek 15 dakikada bir bu işlemler tekrar edecek. Kayıt Esnasında Sorgulama yapılıyor stok kartı mevcutsa güncellemesini yapıyor ve devam ediyor.
Nerede Sorun Yaşayabilirim!
B2B Entegre Olacağından Yapılan Satışlar 15 dakikada 1 güncelleneceğin den stok durumunu takip etmek sıkıntı olacak.
Sormak İstediğim?
İlgili İşlemi XML Üzerinden Yapsam Daha Hızlı Sonuç Alırmıyım?
Böyle Entegre Bir Sistem İçin En Uygun Yöntem Nedir ?
Fikir ve Bilgilerinizden Yararlanmak İstiyorum. Teşekkürler.
Merhaba,
Sanırım verilerini belli sürede kendi veritabanınıza alıyorsunuz. Peki bunu neden netsis üzerinden bir entegrasyonla direk netsis veritabanındaki bilgileri okuyarak yapmadığınızı merak ettim.
Merhaba;
Tam Olarak Ne Demek İstediğinizi Anlayamadım?
Belli süre ile netsisteki verileri kendi oluşturduğunuz bir veritabanınamı alıyorsunuz?
Evet;
Netsiste İşlenen Giriş, Çıkış Faturalarını ve Tahsilatları , B2B deki Veri Tabanına Uyarlayarak. Aktarıyorum.
Bu İşlemi de Yazdığım Ara Bir Program Vasıtası İle Yapıyorum.
Xml Entegre Yönetiminide Kulandım.
Netsiste bulunan verileri Xml'e Dönüştürerek Site Yönetiminden İçeri Aktarma İşlemini Gerçekleştirdiğimde Aktarım Süresi Hemen Hemen Direkt SQL İle Aynı Oldu.
Sürekli kendi veritabanınıza verileri kaydederek sonsuz döngü yaratmış oluyorsunuz aslında. En iyi çözüm belirli bir süreden sonra bir tarafı bırakmak. Eğer yazılımınızı alan kişi Netsis'i bırakmak istemiyor ise ki genelde tüm kayıtları Netsis üzerinde oluyor siz sadece gerekli id'leri (stok kart id'si, fatura veya irsaliye id'si gibi) kendinizde tutarak işlem yapın. En sağlıklı yöntem bu çünkü. Kenan'ın da dediği gibi stok bilgilerini direk Netsis üzerinden okuyun. Netopenx ile rahatlıkla yapabilirsiniz bunu.
Benimde klasik asp ile geliştirdiğim b2b uygulamam var.Stok, cari ,fatura, kasa, çek senet gibi bilgilerin entegrasyonu için replication kullanıyorum.+ bir fayfa olarak da kritik verilerde anlık yedeğin bulunmuş oluyor.
B2B den gelen siparişlerin sisteme entegrasyonu noktasında ise b2b den gelen siparişi netopenx ile netsise aktarıyorum.
Selamlar,
Tablolardaki ortalama kolon sayısı, doluluk oranı, hücrelerde tutulan veriler ve tipleri nelerdir. Bana 32000 kayıt için 15 dakika çok uzun gibi geldi.
İyi Çalışmalar Dilerim,
Merhaba,
Benim önerim şu şekilde olacak.
Bu tarz aktarımlarda bütün veri üzerinde uğraşmak işlemi yavaşlatır.
Netsis'in yaptığı veri işlemlerini loglayıp B2B ye uygulayan bir programın olsa daha iyi olabilir.
Netsis tarafında istediğin tablolarda TRIGGER kullanabilirsin.
TRIGGER INSERT UPDATE DELETE SELECT durumlarına göre istediğin veriyi B2B Veritabanına aktaran yada güncelleyen Parametrik SP ler ile anında aktarım yapabilirsin aynı aktarımı B2B veritabanındaki tablolarada uygulayabilirsin.
Eğer sistemler birbirinden tamamen ayrı ise Netsis tarafından bir Web Servis ile verileri alarak B2B veritabanını güncelleyebilirsin.
Senin yazdığın ara programın senaryoların ne şekilde?
N Tabloda yeni kayıtlar B Tablosuna ekle
N Tablosundaki değerleri B Tablosuna güncelle
N tablosunda olmayan kayıtları B tablosundan sil
B Tabloda yeni kayıtlar N Tablosuna ekle
B Tablosundaki değerleri N Tablosuna güncelle
B tablosunda olmayan kayıtları N tablosundan sil
Gibi ise sorun yaşayacağını düşünmüyorum.