Azure Logic Apps'te iş akışlarını kullanarak iş ortakları arasında B2B iletileri alışverişi
Şunlar için geçerlidir: Azure Logic Apps (Tüketim + Standart)
Ticari ortakları ve anlaşmaları tanımlayan bir tümleştirme hesabınız olduğunda, Azure Logic Apps'i kullanarak ticari ortaklar arasında ileti alışverişinde bulunan otomatik bir işletmeden işletmeye (B2B) iş akışı oluşturabilirsiniz. İş akışınız AS2, X12, EDIFACT ve RosettaNet gibi endüstri standardı protokolleri destekleyen bağlayıcıları kullanabilir. Ayrıca Azure Logic Apps'te outlook, SQL Server ve Salesforce Office 365 gibi diğer bağlayıcılar tarafından sağlanan işlemleri de ekleyebilirsiniz.
Bu makalede , İstek tetikleyicisi kullanarak HTTP istekleri alabilen, AS2 Kod Çözme ve Kodunu Çöz X12 eylemlerini kullanarak ileti içeriğinin kodunu çözebilen ve Yanıt eylemini kullanarak yanıt döndürebilen örnek bir mantıksal uygulama iş akışının nasıl oluşturulacağı gösterilmektedir. Örnek, Azure portal iş akışı tasarımcısını kullanır, ancak Visual Studio'da iş akışı tasarımcısı için benzer adımları izleyebilirsiniz.
Logic Apps'i yeni kullanıyorsanız Azure Logic Apps nedir? B2B kurumsal tümleştirmesi hakkında daha fazla bilgi için Bkz. Azure Logic Apps ile B2B kurumsal tümleştirme iş akışları.
Önkoşullar
Bir Azure hesabı ve aboneliği Henüz aboneliğiniz yoksa ücretsiz bir Azure hesabına kaydolun.
Kurumsal tümleştirme ve B2B iş akışlarınızda kullanmak üzere ticari ortaklar, sözleşmeler, sertifikalar vb. gibi yapıtları tanımlayıp depoladığınız bir tümleştirme hesabı kaynağı . Bu kaynağın aşağıdaki gereksinimleri karşılaması gerekir:
Mantıksal uygulama kaynağınızla aynı Azure aboneliğiyle ilişkilendirilir.
Mantıksal uygulama kaynağınızla aynı konumda veya Azure bölgesinde bulunur.
Logic App (Tüketim) kaynak türünü kullanıyorsanız, iş akışınızda yapıtları kullanabilmeniz için tümleştirme hesabınızın mantıksal uygulama kaynağınıza bir bağlantı olması gerekir.
Mantıksal Uygulama (Standart) kaynak türünü kullanıyorsanız tümleştirme hesabınızın mantıksal uygulama kaynağınıza yönelik bir bağlantıya ihtiyacı yoktur, ancak yine de AS2, X12 veya EDIFACT işlemlerinin yanı sıra iş ortakları, sözleşmeler ve sertifikalar gibi diğer yapıtları depolamak için gereklidir. Tümleştirme hesabınızın aynı Azure aboneliğini kullanma ve mantıksal uygulama kaynağınızla aynı konumda mevcut olması gibi diğer gereksinimleri karşılaması gerekir.
Not
Şu anda yalnızca Logic App (Tüketim) kaynak türü RosettaNet işlemlerini desteklemektedir. Mantıksal Uygulama (Standart) kaynak türü RosettaNet işlemlerini içermez.
Tümleştirme hesabınızda en az iki ticari ortak . Her iki iş ortağının tanımları as2, X12, EDIFACT veya RosettaNet olan aynı iş kimliği niteleyicisini kullanmalıdır.
Bu iş akışında kullandığınız iş ortakları için bir AS2 sözleşmesi ve X12 sözleşmesi . Her sözleşme için bir konak iş ortağı ve bir konuk iş ortağı gerekir.
İstek tetikleyicisini ve ardından aşağıdaki eylemleri ekleyebileceğiniz boş iş akışına sahip bir mantıksal uygulama kaynağı:
İstek tetikleyicisini ekleme
Bu örnekte iş akışını başlatmak için İstek tetikleyicisini ekleyin.
Azure portal iş akışı tasarımcısında mantıksal uygulama kaynağınızı ve boş iş akışınızı açın.
Tasarımcı arama kutusunun altında, seçili değilse Tümü'ne tıklayın. Arama kutusuna
when a http request
yazın. HTTP isteği alındığında adlı İstek tetikleyicisini seçin.Tetikleyicide İstek gövdesi JSON Şeması kutusunu boş bırakın.
Bunun nedeni tetikleyicinin düz dosya biçiminde bir X12 iletisi almasıdır.
İşiniz bittiğinde tasarımcı araç çubuğunda Kaydet'i seçin.
Bu adım, daha sonra mantıksal uygulama iş akışını tetikleyen bir istek göndermek için kullandığınız HTTP POST URL'sini oluşturur.
Daha sonra kullanmak üzere URL'yi kopyalayın ve kaydedin.
Kod çözme AS2 eylemini ekleme
Şimdi bu örnek için AS2 ve X12 eylemlerini kullanan B2B eylemlerini ekleyin.
Tetikleyicinin altında Yeni adım'ı seçin.
İpucu
İstek tetikleyicisi ayrıntılarını gizlemek için tetikleyicinin başlık çubuğunu seçin.
İşlem seçin arama kutusunun altında, seçili değilse Tümü'ne tıklayın. Arama kutusuna yazın
as2
ve AS2 Kod Çözme'yi seçin.Eylemin Kod çözme iletisi özelliğine AS2 eyleminin kodunu çözmesini istediğiniz girişi girin. Bu, İstek tetikleyicisinin
body
çıkışıdır. Dinamik içerik listesinden veya bir ifade olarak seçerek bu içeriği eylemin girişi olarak belirtmenin birden çok yolunuz vardır:Kullanılabilir tetikleyici çıkışlarını gösteren listeden seçim yapmak için Kod çözme iletisi kutusunun içine tıklayın. Dinamik içerik listesi göründükten sonra HTTP isteği alındığında bölümünde Gövde özelliği değeri'ni seçin, örneğin:
İpucu
Hiçbir tetikleyici çıkışı görünmüyorsa, dinamik özellik listesinde, HTTP isteği alındığında altında Daha fazlası'nı seçin.
Tetikleyicinin
body
çıkışına başvuran bir ifade girmek için, Kod çözme iletisi kutusunun içine tıklayın. Dinamik içerik listesi göründükten sonra İfade'yi seçin. İfade düzenleyicisinde aşağıdaki ifadeyi girin ve Tamam'ı seçin:triggerOutputs()['body']
Alternatif olarak, Kodu çözmek için ileti kutusuna doğrudan aşağıdaki ifadeyi girin:
@triggerBody()
İfade , Gövde belirtecine çözümür.
Eylemin İleti üst bilgileri özelliğine, İstek tetikleyicisinin çıkışında
headers
yer alan AS2 eylemi için gereken üst bilgileri girin.Tetikleyicinin
headers
çıkışına başvuran bir ifade girmek için İleti üst bilgilerini metin moduna geçir'i seçin.İleti üst bilgileri kutusunun içine tıklayın. Dinamik içerik listesi göründükten sonra İfade'yi seçin. İfade düzenleyicisinde aşağıdaki ifadeyi girin ve Tamam'ı seçin:
triggerOutputs()['Headers']
AS2 Kod Çözme eyleminde ifade artık belirteç olarak görünür:
Headers belirtecine çözümlenmesi için ifade belirtecini almak için tasarımcı ile kod görünümü arasında geçiş yapın. Bu adımdan sonra AS2 Kod Çözme eylemi şu örneğe benzer:
Yanıt eylemini ileti alındı bilgisi olarak ekleme
ticari ortağına iletinin alındığını bildirmek için Koşul ve Yanıt eylemlerini kullanarak AS2 İleti Bırakma Bildirimi (MDN) içeren bir yanıt döndürebilirsiniz. AS2 eyleminden hemen sonra bu eylemleri ekleyerek, AS2 eylemi başarılı olursa mantıksal uygulama iş akışı işlemeye devam edebilir. Aksi takdirde AS2 eylemi başarısız olursa mantıksal uygulama iş akışı işlemeyi durdurur.
AS2 Kod Çözme eyleminin altında Yeni adım'ı seçin.
İşlem seçin arama kutusunun altında, önceden seçili değilse Yerleşik'i seçin. Arama kutusuna
condition
yazın. Koşul eylemini seçin.Şimdi koşulun karşılanıp karşılanmadığını belirleyen yollar da dahil olmak üzere koşul şekli görüntülenir.
Şimdi değerlendirilecek koşulu belirtin. Değer seçin kutusuna aşağıdaki ifadeyi girin:
@body('AS2_Decode')?['AS2Message']?['MdnExpected']
Ortadaki kutuda, karşılaştırma işleminin olarak
is equal to
ayarlandığından emin olun. Sağ taraftaki kutuya değeriniExpected
girin.Mantıksal uygulama iş akışınızı kaydedin. İfadenin bu belirteç olarak çözümlenmesi için tasarımcı ile kod görünümü arasında geçiş yapın.
Şimdi AS2 Kod Çözme eyleminin başarılı olup olmadığına bağlı olarak döndürülecek yanıtları belirtin.
AS2 Kod Çözme eyleminin başarılı olması durumunda Doğru şekilde Eylem ekle'yi seçin. İşlem seçin arama kutusuna yazın
response
ve Yanıt'ı seçin.AS2 Kodunu Çözme eyleminin çıkışından AS2 MDN'sine erişmek için aşağıdaki ifadeleri belirtin:
Yanıt eyleminin Headers özelliğine aşağıdaki ifadeyi girin:
@body('AS2_Decode')?['OutgoingMdn']?['OutboundHeaders']
Yanıt eyleminin Body özelliğine aşağıdaki ifadeyi girin:
@body('AS2_Decode')?['OutgoingMdn']?['Content']
Belirteç olarak çözümlenmesi gereken ifadeleri almak için tasarımcı ile kod görünümü arasında geçiş yapın:
AS2 Kod Çözme eyleminin başarısız olması durumunda False şeklinde Eylem ekle'yi seçin. İşlem seçin arama kutusuna yazın
response
ve Yanıt'ı seçin. yanıt eylemini istediğiniz durumu ve hatayı döndürecek şekilde ayarlayın.
Mantıksal uygulama iş akışınızı kaydedin.
Kod çözme X12 ileti eylemini ekleme
Şimdi X12 kodunu çöz ileti eylemini ekleyin.
Yanıt eyleminin altında Eylem ekle'yi seçin.
İşlem seçin altında, arama kutusuna yazın
x12 decode
ve X12 iletisinin kodunu çöz'e tıklayın.X12 eylemi sizden bağlantı bilgilerini isterse bağlantının adını belirtin, kullanmak istediğiniz tümleştirme hesabını seçin ve ardından Oluştur'u seçin.
Şimdi X12 eylemi için girişi belirtin. Bu örnek, ileti içeriği olan AS2 eyleminin çıkışını kullanır, ancak bu içeriğin JSON nesne biçiminde olduğunu ve base64 ile kodlandığını unutmayın. Bu nedenle, bu içeriği bir dizeye dönüştürmeniz gerekir.
X12 Düz dosya kodunu çözme iletisi kutusuna AS2 çıkışını dönüştürmek için aşağıdaki ifadeyi girin:
@base64ToString(body('AS2_Decode')?['AS2Message']?['Content'])
Mantıksal uygulama iş akışınızı kaydedin. İfadenin bu belirteç olarak çözümlenmesi için tasarımcı ile kod görünümü arasında geçiş yapın.
Mantıksal uygulama iş akışınızı kaydedin.
Örneğin, bu mantıksal uygulama iş akışı için ek adımlara ihtiyacınız varsa, ileti içeriğinin kodunu çözmek ve bu içeriğin JSON nesne biçiminde çıkışını almak için mantıksal uygulama iş akışınıza gerekli eylemleri eklemeye devam edin.
Artık B2B mantıksal uygulama iş akışınızı ayarlamayı bitirdiniz. Gerçek bir dünya uygulamasında kodu çözülen X12 verilerini bir iş kolu (LOB) uygulamasında veya veri deposunda depolamak isteyebilirsiniz. Örneğin, aşağıdaki belgeleri gözden geçirin:
Kendi LOB uygulamalarınızı bağlamak ve mantıksal uygulamanızda bu API'leri kullanmak için daha fazla eylem ekleyebilir veya özel API'ler yazabilirsiniz.