ERP entegrasyonu
VidiStock ürün, satış, stok ve satınalma verisini ERP’nizden otomatik alabilir. Bağlantı yalnızca okur; ERP’nize hiçbir şey yazmaz.
Nasıl çalışır?
Bölüm başlığı “Nasıl çalışır?”Ağınızdaki bir bilgisayara VidiStock Bağlayıcı adlı küçük bir servis kurulur. Bağlayıcı veriyi okuyup VidiStock’a gönderir. Bağlantıyı her zaman bağlayıcı başlatır; güvenlik duvarınızda içeri doğru port açmanız gerekmez.
Netsis, Logo ve Mikro: bağlayıcı ERP tablolarına girmez. ERP veritabanında vidistock adlı ayrı bir şemaya kurulan okuma nesnelerinden (view ya da procedure) okur. Bağlayıcının SQL kullanıcısının yalnızca bu şemada yetkisi vardır, ERP tablolarına hiçbir yetkisi yoktur.
- Hangi verinin nasıl okunacağı bu nesnelerde yazılıdır. Fatura mı irsaliye mi okunacağı, hangi şubenin alınacağı ve kampanya satışının nasıl işaretlendiği bunlara örnektir.
- Nesneleri kurulumda entegrasyoncu kurar. Örnek betiklerden başlar ve firmanın ERP kullanımına göre uyarlar.
- ERP’de bir değişiklik olursa yalnızca bu nesneler düzenlenir; VidiStock’ta bir şey değişmez.
DİA: bulutta çalıştığı için bağlayıcı DİA’yı web servisinden okur. İnternete çıkabilen herhangi bir bilgisayarda çalışabilir.
Kurulum adımları
Bölüm başlığı “Kurulum adımları”Yönetim → Entegrasyonlar sayfası yalnızca yöneticiye açıktır.
-
ERP seçimi: Kullandığınız ERP’yi seçin.
-
Bağlayıcı: Anahtar üret deyin ve anahtarı kopyalayın; yalnızca bir kez gösterilir. Bağlayıcıyı kurup ayar dosyasına VidiStock adresini ve anahtarı yazın. Bir dakika içinde “Bağlayıcı çevrimiçi” rozeti görünür.
-
Okuma nesneleri (Netsis, Logo, Mikro): Sayfadaki Örnek betikleri indir ile betikleri alın ve veritabanı yöneticinizle şu sırayla ERP veritabanında çalıştırın:
00-sema-ve-yetki.sql:vidistockşemasını ve yalnızca bu şemada yetkisi olan SQL kullanıcısını açar.views.sqlya daprocedures.sql: okuma nesnelerini kurar. Önce dosyadakiUYARLAYINişaretli yerleri firmaya göre düzenleyin.- Her veri türü için view ya da procedure seçebilirsiniz; ikisi karışık da kullanılabilir.
-
Bağlantı: ERP veritabanının sunucusunu, adını ve 3. adımdaki SQL kullanıcısını girin. Her veri türü için kurduğunuz nesnenin türünü (view ya da procedure) seçip Kaydet ve bağlantıyı sına deyin. Sınama şunları denetler:
- her nesnenin varlığı ve türü;
- nesnelerin döndürdüğü kolonlar;
- kullanıcının yetkisi.
DİA’da bunların yerine sunucu kodu, DİA kullanıcısı, API anahtarı ve firma kodu girilir.
-
Kapsam ve takvim: Hangi verilerin, hangi sıklıkla alınacağını ve depo eşlemesini ayarlayın.
-
Etkinleştirin ve Şimdi eşitle deyin.
Okuma nesneleri
Bölüm başlığı “Okuma nesneleri”Nesneler vidistock.<Ad> biçimindedir; şema adı Entegrasyonlar sayfasından değiştirilebilir.
Kolon kuralları:
- Kolonlar adla eşlenir; büyük-küçük harf ve sıra önemli değildir.
- Fazla kolonlar yok sayılır.
- Eksik isteğe bağlı kolon boş sayılır.
| Nesne | Zorunlu kolonlar | İsteğe bağlı kolonlar |
|---|---|---|
Warehouses (depolar) |
Code |
Name |
Products (ürünler) |
Code, Name |
Unit, Category, SupplierCode, SupplierName, LeadTimeDays, Cost, Price, CostCurrencyNo, PriceCurrencyNo, ürün özellikleri |
Sales (satışlar) |
ProductCode, Date, SalesQty |
WarehouseCode, CustomerCode, CustomerName, ReturnQty, CampaignQty |
Stock (stok) |
ProductCode, OnHand |
WarehouseCode, OnOrder |
Suppliers (tedarikçiler) |
Code |
Name |
Deliveries (satınalma siparişleri) |
SupplierCode, ProductCode, OrderDate, OrderedQty |
OrderNo, DueDate, ReceivedDate, ReceivedQty, UnitPrice, CurrencyNo, WarehouseCode, Closed |
Transfers (depolar arası transferler) |
Date, ProductCode, FromWarehouse, ToWarehouse, Qty |
DocumentNo |
Tarih süzgeci ve parametreler:
- View’da tarih süzgecini bağlayıcı uygular:
- satış ve transferde
Date, okunan aralıkta olmalıdır; - satınalmada
OrderDate, satınalma geçmişinin başlangıcından sonra olmalıdır.
- satış ve transferde
- Procedure aynı süzgeci kendi parametreleriyle yapar:
- satış ve transferde
@From date, @To date(iki gün dahil); - stok, tedarikçi ve satınalmada
@PurchasingFrom date.
- satış ve transferde
Toplama ve dönüşümler:
- Satış ve transfer satır düzeyinde dönebilir; VidiStock gün, ürün ve depo bazında toplar.
- Miktarlar ana birimde olmalıdır.
CampaignQty: satışın kampanya olarak işaretli kısmıdır. Bu kısım temel talep tahmininden çıkarılır ve kampanyaların etkisi ondan öğrenilir.
Kolonların ayrıntılı anlamı örnek betiklerle birlikte gelen README.md dosyasındadır.
Ayarlar
Bölüm başlığı “Ayarlar”| Ayar | Açıklama |
|---|---|
| Şema | Okuma nesnelerinin bulunduğu şema (varsayılan vidistock). Değişirse satış geçmişi bir sonraki eşitlemede baştan okunur. |
| Okuma nesneleri | Her veri türü için view ya da procedure. Varsayılan yoktur; açık olan her veri türü için seçilmeden entegrasyon etkinleştirilemez. Transferler için “Okunmaz” seçilebilir. Satışların nesne türü değişirse satış geçmişi baştan okunur. |
| Geçmiş başlangıcı | İlk eşitlemede satışın okunacağı ilk tarih. En az iki yıl önerilir. |
| Yenileme penceresi | Her eşitlemede yeniden okunan son gün sayısı. ERP’de sonradan düzeltilen veya silinen belgeler bu pencere içindeyse VidiStock’a yansır. |
| Takvim | Her gün belirli saatte, belirli aralıkla veya yalnızca elle. |
| Satış kaynağı (DİA) | Satış miktarının fatura mı irsaliye mi hareketlerinden okunacağı. Netsis, Logo ve Mikro’da bu seçim satış nesnesinin içindedir. |
| Kampanya satışları (DİA) | Kampanya satışını satış satırının bir alanında işaretliyorsanız alanın adı ve değeri (varsayılan K). Netsis, Logo ve Mikro’da kampanya satışı satış nesnesinin CampaignQty kolonundan okunur. |
| Depo eşlemesi | ERP’deki her deponun VidiStock’taki karşılığı. Eşlenmeyen deponun verisi alınmaz; hurda ve fire depolarını eşlemeyin. |
ERP’ye özgü notlar
Bölüm başlığı “ERP’ye özgü notlar”- Netsis:
- Örnek betikler satışı satış faturasından okur; müşteri iade faturalarını (alış türünde giriş, hareket türü
LveM) iade sayar. Şube süzgeci yoktur; gerekiyorsa satış nesnesine eklenir. - Netsis veritabanları çoğunlukla Latin1 harmanlamalıdır ama metni Türkçe kod sayfasıyla yazar. Betiklerdeki
vidistock.TRKfonksiyonu adlardaki İ, ı, Ş, ş, Ğ, ğ harflerini düzeltir. - Netsis kodları harfe duyarsız karşılaştırır (
51011Pile51011paynıdır); VidiStock da birebir eşleşmeyen kodu, yalnızca tek ürüne uyuyorsa harfe bakmadan eşler.
- Örnek betikler satışı satış faturasından okur; müşteri iade faturalarını (alış türünde giriş, hareket türü
- Logo Tiger / Go:
- Tablolar firma ve dönem numarası taşır. Firma numarası ve satış kaynağı örnek betiklerin başındaki ayar bölümündedir.
- Hareketler firmanın tüm dönemlerinden, stok ve son fiyatlar en son dönemden okunur.
views.sqlview’ları kurulduğu andaki dönemlerle oluşturur; yeni dönem açılınca betiği yeniden çalıştırın.procedures.sqldönemleri her okumada kendiliğinden bulur.
- Mikro: Stok bakiyesi hareketlerin toplamından hesaplanır; çok büyük veritabanlarında stok okuması uzun sürebilir.
- DİA:
- Web servisi için ayrı bir DİA kullanıcısı açın; aynı kullanıcıyla DİA’da çalışan kişinin oturumu düşebilir.
- Her eşitleme DİA kontörünüzden harcar; çoğu firma için günde bir eşitleme yeterlidir.
- Ürün maliyeti, satış fiyatı ve temin süresi DİA’dan alınmaz.
Siparişler, teslimatlar ve transferler
Bölüm başlığı “Siparişler, teslimatlar ve transferler”Satınalma siparişleri, mal kabulleri ve depolar arası transferler ERP’de yapılır. VidiStock bunları yalnızca okur ve önerileriyle karşılaştırır (Öneri uyumu); aynı işlem VidiStock’ta ikinci kez girilmez.
- Siparişler ve teslimatlar satınalma kapsamı açıksa okunur.
- Siparişin deposu da alınır ve öneriyle depo bazında eşleştirmede kullanılır.
- Deposu eşlenmemiş bir ERP deposu olan sipariş yine alınır; deposu boş bırakılır.
- DİA’da depo okunabildiğinde alınır.
- Son 400 günün siparişleri ve tarihinden bağımsız olarak hâlâ açık olanlar okunur. Kısmen teslim alınmış kalem açık kalır, kalan miktar beklenir.
- ERP’de kapatılan sipariş (
Closed; Netsis’teKAPATILMIS): kısmen teslim alınmışsa Alış Siparişleri sayfasında Eksik kapatıldı olur ve ERP’de yeniden açılırsa açılır; hiç teslim alınmadan kapatılmışsa VidiStock’a alınmaz.
- Transferler stok kapsamı açıksa okunur; iki deposu da eşlenmiş olanlar alınır. Yenileme penceresi kadar geriye yeniden okunur; ilk eşitlemede son 400 gün. Örnek betiklerde transferler şöyle bulunur:
- Mikro: depolar arası sevk hareketleri (çıkış ve giriş deposu aynı satırda).
- Logo: ambar fişleri; fişin ambar çıkış satırı okunur.
- Netsis: aynı fiş numarasında bir depodan çıkış ve başka depoya giriş hareketi.
- DİA: bu sürümde okunmaz; transferleri İçe Aktarma’daki transfer dosyasıyla yükleyin.
İlk eşitlemeden sonra
Bölüm başlığı “İlk eşitlemeden sonra”Birkaç üründe geçen ayın satışını ve depo bakiyesini ERP raporunuzla karşılaştırın. Fark görürseniz:
- Netsis, Logo, Mikro: ilgili okuma nesnesini düzeltin; sorgu ERP veritabanında olduğu için SQL Server Management Studio’da doğrudan çalıştırıp sınayabilirsiniz.
- DİA: entegrasyonu kapatıp destek ekibine bildirin.
Dövizli fiyatlar
Bölüm başlığı “Dövizli fiyatlar”ERP’deki döviz tipi numarası, Ayarlar sayfasındaki para birimi sıra numarasıyla eşleştirilir; 0 her zaman Türk lirasıdır. Numaralar farklıysa Ayarlar’da kendi ERP’nizdeki numaraları girin. ERP aynı para birimini başka bir numarayla da kullanıyorsa (Netsis’in döviz tanımında Türk lirasının 6 olması gibi) o numarayı para biriminin Diğer ERP numaraları alanına yazın. Netsis’in döviz tanımları sistem veritabanındaki KUR tablosundadır (SIRA = döviz tipi).
- Ürünler:
ProductsnesnesindekiCostCurrencyNovePriceCurrencyNodoluysa fiyat o para birimiyle, 0 ise Türk lirasıyla alınır. Boşsa ürünün mevcut para birimi korunur.- Netsis örnek betiği stok kartındaki döviz tipini ve dövizli fiyatı okur.
- Logo ve Mikro örnekleri döviz okumaz.
- Tanımsız numara: ERP’den gelen numara Ayarlar’da tanımlı değilse satır reddedilmez; kayıt Türk lirası sayılır ve eşitleme geçmişinde numara başına bir uyarı (kaç satırda geçtiğiyle) görünür. Numarayı tanımladıktan sonraki eşitlemede düzelir.
- Satınalma siparişleri: Sipariş ERP’de hangi para birimindeyse VidiStock’ta da o para birimiyle görünür (
DeliveriesnesnesindekiUnitPriceveCurrencyNo). Örnek betiklerde döviz şöyle bulunur:- Netsis: sipariş satırındaki döviz tipi ve dövizli fiyat.
- Mikro: siparişin döviz cinsi.
- Logo: satırın işlem dövizi ve kuru; yerel fiyat kura bölünür. Logo’nun döviz numaraları farklıdır (ör. euro 20); Ayarlar’da sıra numaralarını buna göre girin.
- DİA: Ürün kartı fiyatları yerel para biriminde okunur. Sipariş para birimi henüz okunmaz; DİA siparişleri TL kabul edilir.
Ürün özellikleri
Bölüm başlığı “Ürün özellikleri”Ayarlar sayfasında bir özelliğin ERP alanı doldurulursa, bağlayıcı o alanı okur ve değeri ürüne yazar.
- Netsis, Logo, Mikro: ERP alanı,
Productsnesnesinin ek bir kolonunun adıdır. Örnek betiklerde bunlar vardır: NetsisKOD_1veKOD_2, LogoSPECODE, Mikrosto_marka_kodu. Başka bir alan gerekiyorsa nesneye kolon olarak eklenir; ayrı bir tablodaki değer de nesneye katılarak okunabilir. - Bulunamayan kolon bağlantı sınamasında “isteğe bağlı kolon bulunamadı” olarak görünür; eşitleme durmaz, o özellik boş kalır. Alan adı yalnızca harf, rakam ve alt çizgiden oluşabilir.
- Çok değerli özellikte ERP’deki değer virgülle ayrılır.
- ERP’den beslenen özellik her eşitlemede ERP’deki değerle yeniden yazılır; ürün sayfasında elle yapılan değişiklik kalıcı olmaz.
- DİA henüz desteklenmez.
Bağlayıcı sürümü
Bölüm başlığı “Bağlayıcı sürümü”Okuma nesnelerinden okuma, bağlayıcının 2.0 sürümüyle gelir. Daha eski bağlayıcı ERP tablolarını doğrudan okurdu. Eski bağlayıcı kuruluysa:
- Entegrasyonlar sayfası güncelleme uyarısı gösterir;
- bağlayıcı güncellenene kadar ona ayar ve komut gönderilmez.

