• Forumu şuan da Ziyaretçi olarak görüntülüyorsunuz. Forum ziyaretçileri tüm konu ve bağlantıları görüntüleyemez ve kaynaklara erişimi yoktur. Eğer üye iseniz buradan üye girişi yapın ya da burayı tıklayarak şimdi üye olun.
  • Ubden® Topluluk Projelerine, Aracılığınızla Destek Vermektedir.

    Topluluk projelerine katkı yapmak ve topluğumuza ulaşan genç girişimcilere destek olmak için Buradaki  bağlantıdan işlem kanallarına ulaşabilirsiniz.

    Desteklerinizle 9.000 kişilik bir ekosistem olduk ve büyümeye devam ediyoruz. Desteğiniz için teşekkürler.

SAP Integration Suite’te Header, Property ve Exchange Nedir?

  • Konbuyu başlatan Kübra Taşcı Kardaş
  • Başlangıç tarihi
K

Kübra Taşcı Kardaş

Misafir
Misafir
SAP Integration Suite kullanırken, mesaj akışı sırasında sık sık karşılaşılan kafa karıştırıcı bir konu vardır: Header, Property ve Exchange. Bu üç kavram birbirine benzer gibi görünse de, doğru kullanılmadığında iFlow’larda beklenmedik hatalara veya veri kayıplarına yol açabilir. Bu blogda, bu kavramların farklarına, kullanım alanlarına ve en sık yapılan hatalara değineceğiz.

1.Kavramların Temelleri​


Header:

  • Mesajın teknik üst bilgisini taşır.
  • Genellikle adapter’lar arası veri iletmek için kullanılır.

Örnek: HTTP header’ları, SOAP header’ları gibi.

  • Mesaj ile birlikte taşınır, yani adapter’lar arasında geçebilir.

Property:

  • Integration Flow içinde taşınan veri öğesi.
  • Local Property: Sadece tanımlandığı iFlow veya subflow içinde geçerlidir.
  • Global Property: Subflow’lar ve route’lar arasında da taşınabilir.
  • İş akışı boyunca değer saklamak ve paylaşmak için idealdir.

Exchange:

  • Bir mesajın ve metadata’nın tamamını kapsayan container’dır.
  • Header ve Property’leri içerir.
  • iFlow’daki tüm adımlar Exchange üzerinden mesaj iletir.
Header,Property,Exchange

2.Kullanım Senaryoları ve Yaygın Hatalar​


Senaryolar

  1. Adapter’dan gelen özel bir header’ı iFlow içinde okumak ve işlemek.
  2. Bir subflow’a veri geçirmek için property kullanmak.
  3. Exchange context ile tüm mesaj ve metadata’yı bir script step’te işlemek.

Yaygın Hatalar

  1. Header’dan property okumaya çalışmak:

// Yanlış kullanım

def value = message.getProperty("HTTP_Header_Name") // Header değil Property

  1. Local property’yi subflow’ta kullanmak:
    • Local property sadece oluşturulduğu scope’ta geçerlidir. Subflow’ta erişmeye çalışmak null döndürür.
  2. Exchange context’i yanlış anlamak:
    • Exchange, mesaj ve metadata’yı kapsar. Sadece mesajı değiştirmek header veya property’i etkilemeyebilir.

3.Pratik Öneriler​

  • Değerleri nerede saklamalı?
    • Adapter’dan gelen değerler → Header
    • iFlow içi hesaplamalar veya flag’ler → Local Property
    • Subflow’lar arası veri paylaşımı → Global Property
  • Script veya Mapping adımlarında dikkat:
    • message.getHeaders() ve message.getProperties() arasındaki farkı bilin.

4.Örnek: Subflow’a Global Property ile Veri Aktarımı​


// Parent iFlow’da

def message = exchange.getMessage()

message.setProperty("CustomerID", "12345", true) // true = global property

exchange.setMessage(message)

// Subflow’da

def subMessage = exchange.getMessage()

def customerId = subMessage.getProperty("CustomerID")

println("Customer ID: " + customerId) // 12345

Bu örnek, global property kullanarak bir subflow’a veri geçmenin en güvenli yolunu gösteriyor.

5.Sonuç​


SAP Integration Suite’te Header, Property ve Exchange arasındaki farkları bilmek, iFlow’larınızda veri kaybını önler ve hata ayıklamayı kolaylaştırır. Özetle:

  • Header: Adapter’lar arası taşınan teknik veri.
  • Property: iFlow veya subflow içi değer saklama ve paylaşma.
  • Exchange: Mesaj ve metadata’yı kapsayan container.

Bu bağlantıyı görüntüleyebilmek için kayıt olmalı zaten üyeyseniz üye girişi yapmalısınız.
 
Üst