Günümüz iş dünyasında, ERP sistemlerinin izole birer veri tabanı olarak kalması artık imkansız. E-ticaret platformları, CRM yazılımları, mobil uygulamalar ve özel B2B/B2C portalları, operasyonun kesintisiz yürümesi için ERP sisteminizle anlık olarak konuşmak zorunda.
Logo ERP ekosisteminde (Tiger 3, Tiger 3 Enterprise, Go 3) veri transferi denildiğinde akla ilk gelen yöntem geleneksel Logo Objects (LObjects.dll) COM kütüphanesi olsa da, modern mimarilerde yerini artık çok daha esnek, hızlı ve platform bağımsız bir çözüme bırakıyor: Logo REST Servis.
Bu makalede, Logo REST Servis’in ne olduğunu, neden tercih edilmesi gerektiğini ve başarılı bir entegrasyon için mimari açıdan nelere dikkat etmeniz gerektiğini ele alacağız.
Logo REST Servis Nedir?
Logo REST Servis, Logo ERP platformlarının veritabanı katmanı ile dış dünyadaki uygulamalar arasında güvenli bir köprü görevi gören, HTTP protokolü üzerinden çalışan modern bir API arayüzüdür.
Arka planda yine Logo’nun iş kurallarını (business rules) işleten Logo Objects nesne mimarisini kullanır; ancak geliştiriciye bu karmaşık dll yapılarını sunmak yerine, standart JSON veya XML formatında veri alıp gönderebileceği temiz endpoint'ler (uç noktalar) sağlar.
Neden Logo REST Servis? (Avantajları Nelerdir?)
1. Platform Bağımsızlık
Geleneksel COM nesneleri (.dll) sizi Windows ortamına ve .NET Framework framework bağımlılıklarına mecbur bırakır. Logo REST Servis ise standart HTTP istekleri (GET, POST, PUT, DELETE) ile çalıştığı için entegrasyonu yazdığınız dilin veya işletim sisteminin bir önemi kalmaz. İster .NET 8 / .NET Core ile kurumsal bir backend geliştirin, ister Flutter ile bir mobil uygulama yazın, isterseniz de Node.js veya PHP kullanın; REST API'ye her yerden kolayca erişebilirsiniz.
2. İş Kurallarının Korunması (Data Integrity)
Entegrasyon yaparken doğrudan SQL tabanına (örn: LG_FFF_DD_INVOICE) INSERT atmak, ERP sisteminin veri bütünlüğünü bozabilecek en tehlikeli yöntemdir. REST Servis üzerinden bir fatura, sipariş veya malzeme kartı kaydettiğinizde, Logo’nun kendi içindeki tüm validasyonlar (cari hesap kontrolü, stok bakiye kontrolleri, zorunlu alanlar vb.) otomatik olarak tetiklenir. Hatalı bir işlemde servis size anlamlı bir hata mesajı döner ve veritabanının kirlenmesini engeller.
3. Kolay Dağıtım ve Ölçeklenebilirlik
İstemci (Client) makinelerine tek tek dll kaydetmek (regsvr32), versiyon uyumsuzluklarıyla uğraşmak geçmişte kaldı. REST Servis sunucu tarafında bir kez ayağa kaldırılır ve tüm dış sistemler tek bir URL üzerinden merkezileştirilmiş bu servise istek atar.
Logo REST Servis Mimari Yapısı ve İstek Tipleri
Logo REST API, standart CRUD (Create, Read, Update, Delete) işlemlerini HTTP metotları ile eşleştirir. En sık kullanılan endpoint yapıları ve işlevleri şunlardır:
POST /api/v1/cards/... veya data/...: Yeni bir kayıt (Malzeme Kartı, Cari Hesap, Sipariş, Fatura vb.) oluşturmak için kullanılır. İstek gövdesinde (Body) JSON formatında veri gönderilir.
GET /api/v1/data/.../{id}: Belirli bir kaydın detayını veya sysxref (Logicalref) bilgisini çekmek için kullanılır.
PUT /api/v1/data/...: Mevcut bir kaydı güncellemek için tetiklenir.
DELETE /api/v1/data/.../{id}: İlgili kaydı Logo kurallarına uygun şekilde siler (Eğer hareket görmüşse servisten silinemez uyarısı döner).
Kimlik Doğrulama (Authentication)
Güvenlik amacıyla Logo REST Servis, OAuth 2.0 veya Basic Authentication protokollerini destekler. Servisi kullanmadan önce Logo tarafında tanımlanmış olan entegratör kullanıcı bilgileriyle bir access_token alınır ve sonraki tüm isteklere bu token Authorization: Bearer <token> olarak eklenir.
Başarılı Bir Entegrasyon İçin Altın Kurallar
Logo REST Servis kullanırken performanslı ve hatasız bir sistem kurmak istiyorsanız şu mimari pratikleri göz önünde bulundurmalısınız:
Toplu İşlemlerde (Bulk) Kuyruk Mimarisi Kullanın: E-ticaret siparişleri gibi anlık ve yoğun veri akışının olduğu senaryolarda, gelen her isteği direkt eşzamanlı (senkron) olarak REST Servise basmak yerine bir kuyruk (Queue) yapısına (örn: RabbitMQ) alın. Logobot veya servis o an meşgulse entegrasyonunuz yarıda kalmaz, kuyruktan sırayla işlenir.
Raporlama İçin REST Servisi Zorlamayın: REST Servis, transactional (kayıt atma, güncelleme) işlemler için harikadır. Ancak binlerce satırlık büyük raporlar çekecekseniz, servisi yormak yerine Logo veri tabanından (Read-Only Replica veya optimize edilmiş SQL View'lar üzerinden) doğrudan veri okumak çok daha performanslı olacaktır.
Loglama ve Hata Yönetimi: Servisten dönen Hata Kodu ve Açıklama (Error Description) alanlarını mutlaka kendi veritabanınızda loglayın. Logo Objects tarafında takılan bir kaydın (örn: "Stok yetersiz", "Döviz kuru bulunamadı") sebebini anlamanın tek yolu bu dönen yanıtları doğru analiz etmektir.
Sonuç
Logo REST Servis, Logo ERP altyapısını modern web ve mobil dünyasına bağlayan en güçlü halkadır. Geliştiricileri Windows bağımlılığından kurtarırken, işletmelere de güvenli, ölçeklenebilir ve esnek bir entegrasyon yeteneği kazandırır. Doğru bir mimari kurgu ve temiz bir kod yapısıyla, Logo REST Servis mimarisi sayesinde işletmenizin tüm yazılımlarını tek bir orkestra gibi birbiriyle konuşturabilirsiniz.
Bir Yorum Bırakın