Professional Documents
Culture Documents
Ne yapıyor ne yapıyor?
Evet, kabul etmek gerekiyor ki biraz fazla teknik bir giriş oldu. Şimdi aynı paragrafı
daha anlaşılır bir şekilde tekrar kaleme alalım.
SAP bünyesinde kullanılan program ve fonksiyonlar, ABAP adı verilen bir dil ile
yazılır. Ne var ki, ABAP ile yapılabilecekler SAP’nin sunduğu olanaklar ile
kısıtlanmıştır. Örneğin, ABAP ile Finans modülüne muhasebe kaydı atacak veya
İnsan Kaynakları bünyesinde elemanların aylık maaşlarını listeleyecek programlar
yazmak mümkündür, ancak bir Web sitesi veya SAP dışında çalışacak bir Windows
uygulaması yazılamaz. SAP ve Abap ile ilgili daha fazla bilgi için
http://www.sap.com adresine göz atmanızı öneririm.
Peki, ya SAP’de depoladığımız verileri Web, WAP, Office, vs gibi farklı ortamlarda
da kullanmak istiyorsak? Hatta bunun da ötesinde, firmamıza Web üzerinden gelen
siparişleri direkt olarak SAP’ye kaydetmek istiyor da olabiliriz. SAP, bu gibi talepleri
karşılamak için müşterilerine “Connector” adını verdiği çeşitli ürünleri ücretsiz
sunuyor. Connector aracılığıyla oluşturduğumuz kütüphaneyi (mesela) ASP
projemize dahil ettiğimizde, Server.CreateObject gibi basit komutlarla SAP
datasına erişebilir ve SAP’yi güncelleyebiliriz.
Bugüne kadar piyasaya Java Connector, DCom Connector, Business Connector gibi
birçok Connector sürülmüştür.
Peki .NET Connector Nedir?
SAP’nin yeni ürünü olan SAP .Net Connector, aynı fonksiyonaliteyi .NET
uygulamalarında direkt olarak kullanabilmemizi sağlıyor. Bu şekilde SAP ile
etkileşim içinde çalışan Windows uygulamaları, Web siteleri, Web servisleri, Crystal
Reports raporları, vs yazmak oldukça rahat bir hale geliyor. Aynı araç, bunun yanı
sıra ABAP programları içerisinden .Net fonksiyonlarını çağırmak da mümkün kılıyor.
Kısaca, .NET’in getirmiş olduğu yenilik ve kolaylıkların arasında artık SAP erişimi de
yer alıyor.
SAP Tarafı
Örnek sistemimizi kurmaya, SAP bünyesinde oluşturacağımız bir fonksiyon ile
başlayacağız. Verilen malzeme koduna tekamül eden malzemenin ayrıntılı
bilgilerini geri döndüren bir fonksiyon yazacağımızı varsayalım.
function zkknetmara.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" VALUE(XMATNR) LIKE MARA-MATNR
*" TABLES
*" XMARA STRUCTURE MARA
*"----------------------------------------------------------------------
tables: mara.
endfunction.
Gördüğünüz gibi, örneğimizi oldukça basit tuttuk. Şimdi CTRL+F3 tuşlarına basarak
fonksiyonu üretin.
Bu şekilde, SAP’deki işimiz bitmiş oluyor. Artık Visual Studio .NET’e geçebiliriz.
Visual Studio Tarafı
Visual Studio içerisinde, File Æ New
menüsüne tıklayalım ve C# Projeleri
bölümündeki “Windows Application”
seçeneğini işaretleyip “OK” düğmesine
tıklayalım.
SAP.Connector.SAPLogonDestination myDest;
SAP.Connector.SAPConnection myConn;
SAPProxy1 myProx;
MARATable xMara;
System.Data.DataTable dMara;
try
{
// Destination yaratalim
myDest = new SAP.Connector.SAPLogonDestination();
myDest.DestinationName = "SAP 4.0B";
myDest.Client = 010;
myDest.Username = "sap*";
myDest.Password = "06071992";
// Baglantimizi acalim
myConn.Open();
Sonuç
SAP .NET Connector sayesinde, .NET platformu üzerinde SAP ile interaktif çalışan
uygulamalar geliştirmek mümkün. Örnek olarak Web sitenizde SAP’den çekeceğiniz
verileri rapor halinde sergileyebilir, SAP’ye erişen Windows uygulamaları yazabilir
veya anlaşmalı olduğunuz firma/bayilerin esnek B2B uygulamaları geliştirmesini
sağlayacak Web Service’ler hazırlayabilirsiniz.