Logo Objects Nedir? Logo Entegrasyonuna Teknik Giriş
Logo Objects Nedir? Logo Entegrasyonuna Teknik Giriş
Logo Objects Nedir ve Neden Direkt SQL Yerine Kullanılmalı?
Logo Objects, Logo'nun uzun süredir kullanılan resmi uyarlama ve entegrasyon aracıdır. COM teknolojisiyle çalışır. Ekleme, değiştirme ve silme işlemlerini yapar; aktarım sırasında XML katmanı üzerinden haberleşir.
Direkt SQL INSERT'in Eksiklikleri
Logo veritabanına doğrudan INSERT ile yazmak teknik olarak mümkündür ve tam da bu yüzden risklidir:
- Kontroller çalışmaz: Cari doğrulaması, stok bakiye kontrolü ve zorunlu alan kontrolleri atlanır.
- İlişkiyi siz kurarsınız: Fiş başlığı ile satırları arasındaki bağı elle kurmanız gerekir. Logo'da dönem bağımlı tablolar
LG_[firma]_[dönem]_kalıbıyla adlandırılır; stok fişi başlığı STFICHE, satırları STLINE tablosunda durur. - Hata anlamsızdır: Veritabanı bir kısıt hatası döner, hangi iş kuralının çiğnendiğini söylemez.
- Sürüme duyarlıdır: Sürümlerle birlikte tablolara yeni alanlar eklenir. Tabloya doğrudan yazan kod bu değişiklikten ilk etkilenen olur.
Logo Objects'in Sağladıkları
- Veri modeline uygun kayıt: Kayıt Logo'nun beklediği yapıda oluşur.
- İlişki kendiliğinden kurulur: Fişe eklenen satırlar, fiş kaydedildiğinde başlıkla ilişkilendirilir.
- İki tür hata yakalanır: İş mantığı hataları (örneğin stok bakiyesinin eksiye düşmesi) ve veritabanı hataları (örneğin tekil alana mükerrer değer).
- Sorumluluk üründe kalır: Obje katmanı kullanıldığında veri bütünlüğünü korumak ürünün işidir. Tabloya doğrudan yazıldığında bu sorumluluk entegrasyonu yazana geçer.
Örnek senaryo: günde yüzlerce siparişi Logo'ya aktaran bir firmada, doğrudan SQL kullanıldığında fiş numarası çakışması yaşanabilir. Kayıt Logo Objects üzerinden oluşturulduğunda numaralandırma Logo'nun kendi mantığıyla yürür.
.NET Projesinde Logo Objects Nasıl Eklenir?
Logo Objects, .NET projelerine COM referansı olarak eklenir. Kullanılan kütüphane UnityObjects'tir.
Adım 1: COM Referansı Ekleme
Logo'nun kurulu olduğu makinede UnityObjects kütüphanesi COM bileşeni olarak kayıtlıdır. Visual Studio'da projeye COM referansı olarak eklendiğinde, .NET tarafında kullanılacak sarmalayıcı kütüphane kendiliğinden üretilir.
Bunun iki sonucu var. Entegrasyon uygulaması, Logo bileşenlerinin kayıtlı olduğu bir Windows makinesinde çalışır. Uygulamanın derlendiği sürüm ile çalıştığı makinedeki Logo sürümü de birbirini tutmalıdır.
Adım 2: Oturum Açma
Uygulama önce Logo'ya oturum açar. Oturum açılırken kullanıcı, firma ve dönem bilgisi verilir. Dönem numarasını koda sabit yazmayın; yıl döndüğünde yeni dönem açılır ve sabit yazılmış numara eski döneme işaret etmeye devam eder.
Adım 3: Kayıt Oluşturma
Akış kabaca şöyledir: ilgili kayıt tipi için yeni bir veri nesnesi istenir, alanlar doldurulur, satırlar eklenir ve kayıt gönderilir. Gönderim başarısız olursa Logo Objects hata kodunu ve açıklamasını döndürür.
Bu yazıda bilerek örnek kod vermiyoruz. Nesne tipleri ve alan adları sürüme göre değişebilir; kopyalanan bir örnek sizin sürümünüzde çalışmayabilir. Doğru alan listesi, kurulumunuzdaki Logo Objects dokümanından ve örnek projelerinden alınır.
XML Haberleşme Katmanı ve Veri Akışı
Logo Objects, aktarım sırasında XML katmanı üzerinden haberleşir. Akış şöyle özetlenebilir:
- Uygulama, veri nesnesinin alanlarını doldurur.
- Logo Objects bu veriyi XML'e çevirir.
- Logo kendi kurallarını çalıştırır ve kaydı veritabanına yazar.
- Sonuç, başarı ya da hata bilgisiyle geri döner.
Bu yapının entegrasyon açısından bir sonucu var: sürümlerle birlikte veritabanına yeni alanlar eklenir ve bunların XML karşılıkları ayrıca üretilir. Yani entegrasyonun gördüğü alan kümesi sürümle birlikte değişir. Sürüm notlarını izlemeyen bir entegrasyon, yeni alanları hiç görmeden çalışmaya devam eder.
Run-Time Lisans Zorunluluğu ve Bayi Süreci
Logo Objects bir run-time lisansı gerektirir. Lisans yoksa nesnelere giriş yapılamaz, yani entegrasyon hiç başlamaz. Bu yüzden lisans durumu, projenin ilk teyit edilecek maddesidir.
Lisans Nasıl Alınır?
Run-time lisansı Logo Çözüm Ortağı kanalından temin edilir. Pratikte izlenecek yol:
- Yetkili bayinize Logo Objects kullanılacağını bildirin.
- Kurulumunuzda lisansın mevcut olup olmadığını teyit ettirin.
- Eksikse temin sürecini bayiniz üzerinden başlatın.
Lisansın bedeli ve teslim süresi konusunda bağlayıcı bilgi yetkili bayinizdedir.
Yalnızca Okuma Yapılacaksa
Rapor, panel ve analiz gibi yalnızca veri okunan işlerde Logo Objects'e hiç ihtiyaç duyulmayabilir. Veri doğrudan SQL ile, tercihen salt okunur bir kopyadan okunabilir. Logo Objects, kayıt oluşturulacağı ya da değiştirileceği zaman gerekir.
Logo Objects ve ERP Sürüm Uyumu
Temel kural şudur: Logo Objects ile ERP çalıştırılabilir dosyalarının sürümleri birbirini tutmalıdır. Sürümler ayrıştığında entegrasyon uygulaması Logo'ya bağlanamaz.
Üretici destek kaynaklarında tekrar eden iki durum var:
- Yeniden kayıt gerekmesi: Yeni sürümden sonra COM bileşenlerinin yeniden kaydedilmesi gerekir. Eskimiş ara dosyalar yüzünden bağlantı açılmaz; çözüm, kaydın yeni sürümle yeniden yapılması ve projenin yeniden derlenmesidir.
- Terminal makinelerde hata: Ana makinede sorun yokken terminallerde kütüphane kayıt hatası alınabilir.
Sürüm Kontrolü Nasıl Yapılır?
Logo sürümünü programın kendi "Hakkında" ekranından öğrenebilirsiniz. Entegrasyonun derlendiği kütüphanenin sürümü bununla karşılaştırılır.
Örnek senaryo: test sunucusundaki Logo güncel, canlı sunucudaki bir sürüm geride. Entegrasyon test ortamında sorunsuz çalışır, canlıya alındığında bağlanamaz. Çözüm, iki ortamı aynı sürüme getirmek ve uygulamayı o sürümle derlemektir.
Logo Objects ile Entegrasyon: Pratik Öneriler
1. Test İçin Ayrı Firma Kullanın
Yazma işlemlerini canlı firmada denemeyin. Test için ayrı bir firma tanımlayın ve geliştirme boyunca kayıtları oraya gönderin.
2. Hataları Kayıt Altına Alın
Başarısız her gönderimde hata kodunu, açıklamasını, zamanı ve gönderilen kaydı saklayın. Sessizce kaybolan kayıt, entegrasyondaki en sinsi sorundur.
3. Doğrudan SQL ile Logo Objects'i Karıştırmayın
Aynı kayıt üzerinde hem obje katmanıyla hem doğrudan SQL ile işlem yapmayın. Okuma SQL ile, yazma Logo Objects ile yapılır.
4. Kodları Göndermeden Önce Doğrulayın
Stok kodunun ve cari kodun Logo'da tanımlı olup olmadığını göndermeden önce bir okuma sorgusuyla kontrol edin. Reddedilecek kaydı baştan yakalarsınız.
5. Mükerrer Kaydı Önleyin
Ağ kesintisinden sonra aynı sipariş ikinci kez gönderilirse iki fiş oluşmamalıdır. Kaynak sistemdeki sipariş numarasını saklayın ve göndermeden önce kontrol edin.
6. Yoğun Akışta Kuyruk Kullanın
Logo kapalıyken ya da bakımdayken kaynak sistem durmamalıdır. Kayıtlar kuyruğa alınır, bağlantı geldiğinde sırayla işlenir.
Sıkça Sorulan Sorular
Logo Objects lisansı ne kadar sürede temin edilir?
Süre bayinize ve lisans türüne göre değişir; kesin bilgi yetkili bayinizden alınır. Lisans temini proje takviminin başına yazılmalıdır, çünkü lisans olmadan geliştirme test edilemez.
Lisanssız ortamda test yapabilir miyim?
Logo Objects ile kayıt oluşturmayı test edemezsiniz; lisans olmadan nesnelere giriş yapılamaz. Yalnızca okuma gerektiren bölümler SQL üzerinden test edilebilir. Test lisansı konusunu bayinize sorun.
Logo Objects yerine REST API yok mu?
Var. Logo REST Servis, Logo Objects'in yeteneklerini HTTP üzerinden sunar. Kendi kurulum dosyasıyla kurulur, varsayılan olarak 32001 portundan yayın yapar, kimlik doğrulamayı OAuth token ile yapar ve Swagger arayüzüyle gelir.
Ancak REST Servis her Logo ürününde bulunmaz. Yetkili çözüm ortağı dokümanlarına göre Tiger 3, Tiger 3 Enterprise ve Wings serisi destekleniyor; GO 3 ve GO Plus desteklenmeyenler arasında sayılıyor. GO kullanan kurulumlarda yol Logo Objects'tir. REST için gereken kimlik bilgileri de Logo Çözüm Ortağı kanalından verilir. Hangisinin sizde kullanılabileceği kurulumda teyit edilir.
Sürüm uyumsuzluğu durumunda nasıl hareket edilmeli?
Önce canlı ortamdaki Logo sürümünü belirleyin. Entegrasyonu o sürümle derleyin ve test ortamını aynı sürüme getirin. Logo yükseltmesi planlandığında entegrasyonu da takvime ekleyin; yükseltmeden sonra COM bileşenlerinin yeniden kaydı ve yeniden derleme gerekebilir.
Logo Objects ile hangi kayıtlar oluşturulabilir?
Fatura, sipariş, stok fişi, cari hareket gibi temel kayıt türleri obje katmanı üzerinden yönetilir. Hangi kayıt tiplerinin sizin sürümünüzde desteklendiği Logo Objects dokümanından teyit edilir.
D'Cloud Software Logo entegrasyon projelerinde hangi hizmetleri veriyor?
Logo bayisi ya da çözüm ortağı değiliz; bağımsız bir yazılım firmasıyız. Lisans, kurulum ve Logo desteği yetkili bayinizde kalır. Bizim yaptığımız iş:
- E-ticaret, depo, üretim ya da bayi portalı gibi sistemlerden Logo'ya veri aktaran yazılımı geliştirmek
- Hata kaydı, yeniden deneme ve kuyruk mekanizmasını kurmak
- Lisans ve arayüz teyidini yetkili bayinizle birlikte yürütmek
- Yükseltme öncesi kontrol turu yapmak
- Teslim sonrası 15 gün ücretsiz hata düzeltme
Bedel, kapsam ve lisans durumu netleştikten sonra sabit fiyat olarak sözleşmeye yazılır.
Sonuç: Logo Entegrasyonunda Profesyonel Yaklaşım
Logo'ya kayıt yazmanın iki resmi yolu var: Logo Objects ve, destekleyen ürünlerde, Logo REST Servis. İkisi de kaydı Logo'nun kendi kontrollerinden geçirir. Doğrudan SQL ise yalnızca okuma için uygundur.
Özetle:
- Logo Objects, .NET projesine COM referansı olarak eklenir.
- Run-time lisansı olmadan çalışmaz; lisans yetkili bayi kanalından temin edilir.
- Logo Objects ile ERP sürümü birbirini tutmalıdır.
- Yazma işlemleri ayrı bir test firmasında denenir.
- Hatalar kayıt altına alınır, mükerrer kayıt baştan önlenir.
Kurulumunuzu birlikte değerlendirmek için iletişim formu ya da WhatsApp üzerinden ücretsiz keşif görüşmesi talep edebilirsiniz.
Doğuhan Bulut
Kurucu & CTO
Full-stack mimari ve ürün stratejisi. Next.js ve bulut altyapılarında 10+ yıl deneyim.
ERP geçişinizi planlayalım
Logo, Netsis, Mikro, SAP veya custom: mevcut süreçleri haritalandırıp doğru sistemde karar verelim. 30 dk ücretsiz keşif.
Ücretsiz keşif alAylık dijital özet bültenimiz
Ayda 1 e-posta — yeni teknoloji, KOBİ + KVKK güncellemeleri, vaka çalışmaları. Spam yok, istediğiniz an çıkış.
İlgili Yazılar
Business Central API v2.0 ile Entegrasyon: Limitler, OAuth ve Webhook
Microsoft, Business Central için önerilen arayüzü, istek limitlerini ve webhook akışını yayımlamış durumda. Bu yazı o bilgileri bir entegrasyon planına çeviriyor: arayüz seçimi, kimlik doğrulama, kapasite hesabı ve abonelik yenileme.
Devamını okuDİA Web Servisi ile Entegrasyon: Oturum, Kontör ve Çağrı Planı
DİA bulutta çalışır ve entegrasyon web servis üzerinden kurulur. Her çağrı kontör tükettiği için tasarım çağrı planıyla başlar. Oturum yönetimi, kontör hesabı ve hazırlık listesi bu yazıda.
Devamını okuWolvox Verisini Excel'e ve Rapor Paneline Bağlamak: Firebird, MS SQL ve ODBC
Wolvox'ta veriyi okumanın yolunu üretici kendi bilgi bankasında anlatıyor. Bu yazı Firebird ve MS SQL ayrımını, Excel'in nerede yetip nerede yetmediğini ve yazma tarafında neden farklı davranıldığını anlatıyor.
Devamını oku