Visual studio ile sap projesi oluşturduğumuzda hali hazırda aşağıdaki gibi kodlar gelmektedir.
Item event yapısı bize SAP ’nin eventleri yakalayabilmemizi sağlayan metodlarını içerir.
SBO_Application_ItemEvent metodu ile Buton click eventlerini yakalayabiliriz.
Kod örneğinde görüldüğü üzere
1. BubbleEvent = true;
Bu, olayın işleyişini kontrol etmek için kullanılan bir bayraktır. Eğer BubbleEvent değeri false olarak ayarlanırsa, SAP Business One olayın gerçekleşmesini engeller.
2. if (pVal.FormType == 133 && pVal.ItemUID == “1”)
pVal.FormType == 133: Bu koşul, hangi form üzerinde işlem yapıldığını kontrol eder. Form tipi 133 olan bir formda bu kod çalışacaktır. SAP Business One’da 133 genellikle “Fatura Girişi” formuna karşılık gelir.
pVal.ItemUID == “1”: Bu koşul, “1” ID’sine sahip bir butonun tıklanıp tıklanmadığını kontrol eder. Genelde “1”, “Kaydet” veya “Ekle” gibi temel işlemler için kullanılan bir butondur.
3. if (pVal.BeforeAction == true)
Bu koşul, olayın öncesinde mi yoksa sonrasında mı gerçekleştiğini kontrol eder. Eğer pVal.BeforeAction == true ise, bu kod tıklama işleminden önce devreye girer.
4. Form ve Alanlara Erişim
var form = Application.SBO_Application.Forms.ActiveForm;
Şu an aktif olan formu alır ve işlem yapmak için form değişkenine atar.
var toplamString = ((SAPbouiCOM.EditText)(form.Items.Item(“29”)).Specific).Value.ToString();
Formdaki “29” ID’li alanın değerini alır.
Bu alan genellikle toplam tutar veya para ile ilgili bir veri içeren bir metin kutusudur.
Alınan değer bir string olarak saklanır.