Yorumları: 229
Konuları: 42
Kayıt Tarihi: 05-08-2019
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 1.168
Programcı
Merhabalar Hayırlı Akşamlar,
Delphi ile Sap Bapi & Rfc entegrasyonları yapan
bu konuda tecrübesi olan arkadaşımız varmı bilgi paylaşabilecek.
Sorsaydı Bilirdi Sormuyor ki Bilsin.
Bilseydi Sorardı Bilmiyor ki Sorsun.
Yorumları: 150
Konuları: 1
Kayıt Tarihi: 31-08-2016
Rep Puanı: 5.510
Üstad
Daha önce birkaç firmaya replikasyon aracı yazmıştım. Sap kurulumu yapılmış pc de program files içerisinde wdtfuncs.ocx olarak kendi activex i mevcuttur.
Bunu delphide import edip kullanabilirsiniz. Table yapıları string grid gibi çalışır.
Örnek bir çağrım ;
procedure Kontrol;
var
Funct: variant;
begin
Funct := FSAPFunctions.Add('Kontrol_Function');
try
Funct.Exports('AnyValue').Value := 'CHECKED';
if not Funct.Call then
raise Exception.CreateFmt('%s: %s', [Funct.Name, Funct.Exception]);
finally
FSAPFunctions.Remove(1);
end;
end;
Ayakkabıyı sefaletten
Çok sonraları tanıdım
Öyle ufuklarda mı olurmuş Allah'ım
Giyer giyer koşardım
Toprağın dostluğundan
Oyuncaklar yaptım çamurdan
Tenimin rengini aldım topraktan
Sen bakma esmerliğim sonradan...
Yorumları: 229
Konuları: 42
Kayıt Tarihi: 05-08-2019
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 1.168
Programcı
(03-09-2020, Saat: 18:36)QuAdR Adlı Kullanıcıdan Alıntı: Daha önce birkaç firmaya replikasyon aracı yazmıştım. Sap kurulumu yapılmış pc de program files içerisinde wdtfuncs.ocx olarak kendi activex i mevcuttur.
Bunu delphide import edip kullanabilirsiniz. Table yapıları string grid gibi çalışır.
Örnek bir çağrım ;
procedure Kontrol;
var
Funct: variant;
begin
Funct := FSAPFunctions.Add('Kontrol_Function');
try
Funct.Exports('AnyValue').Value := 'CHECKED';
if not Funct.Call then
raise Exception.CreateFmt('%s: %s', [Funct.Name, Funct.Exception]);
finally
FSAPFunctions.Remove(1);
end;
end;
Teşekkür ederim yanıtınız için.
Ben SAPLogonControl nesnesi ile connect olamadım bir türlü.
Henüz nesne create edilir edilmez patlıyor.
sistemimde sap kurulu ve kullanıyorum acaba birşeyler eksik register etmekmi veya aktif etmek mi gerekiyor.
daha ilk satırda nesneyi oluşturuken patlıyor belirgin bir mesaj da vermiyor.
procedure TForm1.SAPLogonControl1Click(Sender: TObject);
var Connection :variant;
begin
Connection:= SAPLogOnControl1.NewConnection;
if Connection.LogOn(0,false) = true then
begin
showmessage('Logged On.');
end
else
begin
ShowMessage('Erron on LogOn.');
end;
end;
Sorsaydı Bilirdi Sormuyor ki Bilsin.
Bilseydi Sorardı Bilmiyor ki Sorsun.
Yorumları: 229
Konuları: 42
Kayıt Tarihi: 05-08-2019
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 1.168
Programcı
(03-09-2020, Saat: 20:57)pro_imaj Adlı Kullanıcıdan Alıntı: (03-09-2020, Saat: 20:43)bydelphi Adlı Kullanıcıdan Alıntı: Teşekkür ederim yanıtınız için.
Ben SAPLogonControl nesnesi ile connect olamadım bir türlü.
Henüz nesne create edilir edilmez patlıyor.
sistemimde sap kurulu ve kullanıyorum acaba birşeyler eksik register etmekmi veya aktif etmek mi gerekiyor.
daha ilk satırda nesneyi oluşturuken patlıyor belirgin bir mesaj da vermiyor.
procedure TForm1.SAPLogonControl1Click(Sender: TObject);
var Connection :variant;
begin
Connection:= SAPLogOnControl1.NewConnection;
if Connection.LogOn(0,false) = true then
begin
showmessage('Logged On.');
end
else
begin
ShowMessage('Erron on LogOn.');
end;
end;
Merhaba,
Bilgisayarımda SAP Gui kurulu olmadığı için ilgili ocx adını hatırlayamadım fakat şöyle ilerleyebilirsiniz.
*SAP hangi sürümü kullanıyorsunuz?
Genel cevap olarak delphi tarafında;
Component => New Component tarafında SAP nesnelerinden SAPFunctionsOCX_TLB, SAPLogonCtrl_TLB karşılık gelenleri import edin.
SAPLogonControl1 := createoleobject('SAP.LogonControl.1');
SAPFunctions1 := TSAPFunctions.Create(Application);
Yukarıdaki işlemlerin altına SAP GUI giriş bilgileriniz yazıp bağlantı sağlamanız gerekiyor en son ise ilgili fonksiyonu çağırabilirsiniz.
İyi çalışmalar.
Sap versiyonumuz 7.53.
Örnek için teşekkürler bi deneyelim.
Sorsaydı Bilirdi Sormuyor ki Bilsin.
Bilseydi Sorardı Bilmiyor ki Sorsun.
Yorumları: 150
Konuları: 1
Kayıt Tarihi: 31-08-2016
Rep Puanı: 5.510
Üstad
Logon ve logoff metodları. Activex için yol aşağıdaki gibidir.
// ************************************************************************ //
// Type Lib: C:\PROGRAM FILES\SAP\FRONTEND\CONTROLS\WDTFUNCS.OCX (1)
// LIBID: {5B076C00-2F26-11CF-9AE5-0800096E19F4}
// LCID: 0
// Helpfile:
// DepndLst:
// (1) v2.0 stdole, (C:\WINDOWS\SYSTEM\STDOLE2.TLB)
// (2) v4.0 StdVCL, (C:\WINDOWS\SYSTEM\stdvcl40.dll)
// Errors:
// Hint: TypeInfo 'Function' changed to 'Function_'
// Hint: TypeInfo 'Exports' changed to 'Exports_'
// Hint: Member 'Type' of 'IStructure' changed to 'Type_'
// Hint: Member 'Function' of 'IStructure' changed to 'Function_'
// Hint: Member 'Exports' of 'IFunction' changed to 'Exports_'
// Hint: Member 'Function' of 'IParameter' changed to 'Function_'
// Hint: Member 'Type' of 'IParameter' changed to 'Type_'
// ************************************************************************ //
//Sap genel ayarları
//SAPServer=127.0.0.1
//SAPClient=400
//SAPLanguage=TR
//SAPUser=Username
//SAPPassword=Password
//SAPSN=2
//SAPLogLevel=9
FSAPLogonControl: TSAPLogonControl;
FSAPFunctions: TSAPFunctions;
FConnection: variant;
procedure TfrmMain.LogonToSAP;
begin
FConnection := FSAPLogonControl.NewConnection;
FConnection.ApplicationServer := FSAPApplicationServer;
FConnection.Language := FSAPLanguage;
FConnection.SystemNumber := FSAPSystemNumber;
FConnection.Client := FSAPClient;
FConnection.User := FSAPUser;
FConnection.Password := FSAPPassword;
LogFmt('SAP bağlantısı kuruluyor...(Kullanıcı : %s - Server : %s)',
[FSAPUser, FSAPApplicationServer]);
if not FConnection.Logon(0, True) then
begin
Log('SAP bağlantı hatası');
Abort;
end
else
begin
Log('Bağlantı kuruldu.');
end;
FSAPFunctions.LogLevel := FSAPLogLevel;
FSAPFunctions.Connection := FConnection;
end;
procedure TfrmMain.LogoffFromSAP;
begin
Log('SAP bağlantısı kesiliyor...');
try
FSAPFunctions.Connection := UnAssigned;
FConnection.LogOff;
finally
FConnection := null;
end;
end;
Ayakkabıyı sefaletten
Çok sonraları tanıdım
Öyle ufuklarda mı olurmuş Allah'ım
Giyer giyer koşardım
Toprağın dostluğundan
Oyuncaklar yaptım çamurdan
Tenimin rengini aldım topraktan
Sen bakma esmerliğim sonradan...