Solution PlusCONSULTING

ABAP Geliştirme ve entegrasyon

Standardın bittiği yerden devam eden kod.

ABAP tarafını dışarıya vermiyoruz; kendi ekibimizde yazıyoruz. Ağırlığı da tek bir sistemin içinde kalan geliştirmeler değil, SAP'yi çevresindeki dünyaya bağlayan işler oluşturuyor.

Bir geliştirme, onu yazan kişi projeden ayrıldıktan sonra da anlaşılabiliyorsa iyi geliştirmedir.

Gelen taleplerin çoğu aslında iki soruyla başlıyor: bunu standart SAP zaten yapıyor mu, yapıyorsa neden kullanılmıyor? Cevap “yapmıyor” olduğunda kod yazıyoruz; “kullanılmıyor” olduğunda önce süreci konuşuyoruz.

Bugün hiçbir ERP tek başına çalışmıyor. Yanında bir üretim yürütme sistemi, bir laboratuvar yazılımı, bir depo uygulaması, bir e-fatura sağlayıcısı, bir banka arayüzü ya da şirketin kendi yazdığı bir uygulama duruyor. İşin zor kısmı da nadiren ABAP oluyor: asıl mesele bu iki dünya arasındaki mutabakat. Hangi olayda hangi kayıt oluşacak, hata durumunda ne olacak, iki taraf çeliştiğinde hangisi doğruyu söylüyor.

Yazdığımız her nesne adlandırma standardına uyar, başında ne yaptığı ve neden yazıldığı yazar, taşıma isteğiyle birlikte teslim edilir. Kritik mantığı koda gömmek yerine tabloya alırız; böylece bir parametre değiştiğinde kimsenin geliştiriciye ihtiyacı olmaz.

Yetkinlikler

ABAP tarafında yaptığımız işler

DEV Uygulama geliştirme

Rapor, ekran ve form geliştirme

Kullanıcının her sabah açtığı raporlar, veri giriş ekranları, baskı çıktıları ve gece çalışan arka plan işleri. Geliştirmeyi, işi yapan kişinin gerçekte nasıl çalıştığına göre kurguluyoruz; ekranı teknik bir gerekliliğin değil, bir iş akışının parçası olarak tasarlıyoruz.

Nesne yönelimli yaklaşımla klasik yapılardan hangisinin uygun olduğuna, sistemin mevcut kod tabanına ve müşteri ekibinin devralma kapasitesine bakarak karar veriyoruz.

Liste ve etkileşimli raporlarEkran ve diyalog programlarıBaskı ve belge çıktılarıArka plan işleriYetki kontrolleriNesne yönelimli ABAP
EXT Genişletme

Standardın genişletilmesi

Standart akışa müdahale ederken doğru noktayı seçmek, çoğu zaman kodun kendisinden daha önemli. Yanlış noktadan yapılan bir müdahale ilk sürüm yükseltmede kırılır; doğru noktadan yapılanı yıllarca kimse fark etmez.

Değişebilecek her kuralı koda gömmek yerine bakımı yapılabilir bir tabloya taşıyoruz. Şirket, ülke ya da ürün grubu bazında farklılaşan kurallar bu sayede geliştirici gerektirmeden yönetilebiliyor.

Genişletme noktalarıOlay tabanlı müdahaleTablo ile parametrik kontrolBakım ekranlarıSürüm yükseltmeye dayanıklı tasarım
INT SAP tarafı

SAP sistemleri arasında entegrasyon

Aynı grubun farklı SAP sistemleri, ayrı tüzel kişilikler ya da geçiş dönemindeki eski ve yeni sistemler arasında veri akışı kurulması. Ana veri eşitleme, belge aktarımı ve mutabakat raporları bu işin standart parçaları.

Kurduğumuz her akış izlenebilir oluyor: hangi kaydın ne zaman gittiği, hangisinin hata aldığı ve hatanın nasıl tekrar işleneceği en baştan tasarlanıyor. Sessizce kaybolan kayıt, bir arayüzün yapabileceği en pahalı hatadır.

Belge ve ana veri aktarımıUzak fonksiyon çağrılarıStandart arayüz nesneleriAra katman üzerinden akışMutabakat raporlarıYeniden işleme mekanizmaları
NON SAP dışı sistemler

SAP dışındaki uygulamalarla entegrasyon

İşin ağırlık merkezi burası. SAP'yi üretim yürütme sistemleri, laboratuvar yazılımları, depo ve lojistik uygulamaları, e-fatura sağlayıcıları, banka arayüzleri, e-ticaret platformları, raporlama araçları ve şirketin kendi geliştirdiği uygulamalarla konuşturuyoruz.

Bağlantıyı kurmadan önce sözleşmeyi yazıyoruz: hangi olay hangi kaydı doğuruyor, alanlar nasıl eşleşiyor, karşı taraf cevap vermediğinde ne oluyor, tekrar gönderim ne zaman güvenli. Bu soruların cevabı yazılı değilken kurulan bir bağlantı, ilk kesintide iş süreçlerini durduruyor.

Teknik tarafta servis tabanlı bağlantı, dosya ve klasör üzerinden aktarım, veritabanı bağlantısı ve mesaj kuyruğu seçenekleri arasında karşı sistemin gerçekte neyi yapabildiğine bakarak karar veriyoruz. Kimlik doğrulama, şifreleme ve kayıt tutma her zaman kapsamın içinde.

Web servisleri (REST ve SOAP)Servis yayınlama ve tüketmeDosya ve FTP tabanlı aktarımVeritabanı bağlantılarıMesaj kuyruklarıAlan eşleştirme ve dönüşümHata yönetimi ve tekrar gönderimKimlik doğrulama ve güvenlikİzleme ve loglama
MIG Veri

Veri aktarımı ve toplu işlem

Sisteme veri girmenin de kendine ait bir mühendisliği var. Tek seferlik göçlerde de her gece koşan yüklemelerde de aynı üç şeyi arıyoruz: doğrulama, kısmi başarının yönetimi ve baştan tekrar çalıştırılabilirlik.

Ham veriyi geldiği gibi yüklemek yerine önce doğruluk kontrollerinden geçiriyoruz. Hatalı kaydı sisteme hiç sokmamak, sonradan temizlemekten her zaman ucuz.

Toplu veri yüklemeDoğrulama kurallarıHata raporlamaTekrar çalıştırılabilir tasarımDönüşüm mantığıYükleme sonrası mutabakat
PRF Performans ve kalite

Performans iyileştirme ve devir

Yıllardır çalışan sistemlerde en sık gelen iş bu: gece penceresine sığmayan işler, dakikalarca açılmayan ekranlar, veri büyüdükçe yavaşlayan raporlar. Koda dokunmadan önce ölçüyoruz; ölçüm yapılmadan yapılan iyileştirme tahminden ibarettir.

Kodu ister biz yazmış olalım ister devralmış, başka bir ekibin sürdürebileceği durumda bırakıyoruz. Kod incelemesi, adlandırma standardı ve belgeleme bizim için ek hizmet değil, işin kendisi.

Ölçüm ve profillemeSorgu ve veri erişimi optimizasyonuBellek ve tablo kullanımıKod incelemesiStatik kod kontrolüBelgeleme ve devirTaşıma yönetimi

Ortam

Çalıştığımız sürümler ve teknolojiler

ABAP geliştirmeyi sürecin geri kalanından ayrı düşünmüyoruz. Kodun dokunduğu iş akışını bilmek, geliştirmenin doğru yerde durmasını sağlıyor.

  • SAP S/4HANA
  • SAP ECC
  • ABAP 7.40 ve üzeri
  • Nesne yönelimli ABAP
  • Web servisleri (REST / SOAP)
  • OData servisleri
  • Standart arayüz nesneleri
  • Uzak fonksiyon çağrıları
  • Ara katman ve entegrasyon platformları
  • Dosya ve FTP aktarımı
  • Veritabanı bağlantıları
  • Baskı ve form teknolojileri
  • Toplu veri yükleme araçları
  • Arka plan iş yönetimi
  • Statik kod kontrolü
  • Taşıma ve sürüm yönetimi

İletişim

Bağlanmayan iki sisteminiz mi var?

Mevcut bir entegrasyonun neden koptuğunu ya da bir programın neden yavaşladığını incelememizi isteyebilirsiniz. Genelde bu, sıfırdan yazmaktan ucuza geliyor.