Uluç Karadeniz

LOD BeforeSave içerisinde yapılan değişiklik.

  Tiger/Logo Object Designer (LOD)

Merhaba,


İrsaliye girişi ekranında bazı kontroller yaptıktan sonra BeforSave eventi içerisinde "SetIntVal("LComboBox1", 2)" şeklinde combobox'a güncelleme yapmaktayım. Bu combobox'da STFICHE ile bağlantılı bir uyarlama tablosuna veri yazıp / okuyor. Yani Object Inspector'dan  FieldName olarak bu alana bağlandı. 


Eğer ki ben irsaliye eklerken bu combobox'u manuel değiştirirsem kayıt esnasında uyarlama tabloma satır olarak açıyor ancak yukarıdaki gibi BeforeSave eventi içerisinden SetIntVal olarak değiştirirsem uyarlama tablosuna herhangi bir satır yazmıyor. Ayrıca bu olay BeforSave eventi ile de sınırlı değil. Herhangi bir event içerisinde SetIntVal kullanarak comboyu değiştirirsem görsel olarak değişmiş oluyor ancak uyarlama tablosuna yine veri yazmıyor.


Özetlemek gerekirse STFICHE tablosuna bağlanan ve bir alanı da FieldName olarak comboboxa bağlanan bir uyarlama tablosu var. Combobox form üzerinden manuel değiştirilirse uyarlama tablosuna INSERT atıyor ancak kod olarak değiştirilmek istenirse INSERT atmıyor.


LOD SetIntVal


Burak Doğan

Merhaba;


BeforeSave de değeri tutup, AfterSave de işlem yapmayı denemiş miydiniz?


11/06/17 16:35


Uluç Karadeniz

Burak Bey merhaba,


Öneriniz için öncelikle teşekkür ederim , ancak değişen bir şey olmadı. Sorun hale devam ediyor.


12/06/17 10:22


Uluç Karadeniz

Bu arada SetntVal görsel olarak her ne kadar comboyu değiştirse de program tarafında hangi eventle olursa olsun bunu algılamıyor. Bir buton koyup ButtonClick eventine SetIntVal yazdım. Ardından da ComboChange eventine warn ekledim. 


Program yine butona basınca comboyu değiştirdi ancak warn çalışmadı , aynı şekilde manuel comboyu değiştirince warn çalışıyor. Yani sorun befor after save gibi eventlerde değil , SetIntVal ile combonun değiştiğini algılayamıyor oluşu. Ayrıca SetTextVal ile text üzerinden değiştirme de yaptım sonuç değişmedi.


Naci Bey help pls :) 



12/06/17 10:43


NaciO

Onaylanmış Cevap

Merhaba,


Set metodu sonrasında aşağıdaki gibi controldata güncellenmeli. Aynı durum programın bir alanını, örneğin arayüzde irsaliyedeki özel kodu set etmek isterseniz de aynı sıkıntı yaşanabilir. Çözüm aynı.


SetIntVal("LComboBox1", 2)
UpdateControlData("LComboBox1")




13/06/17 10:47


Uluç Karadeniz

Sorun çözülmüştür , teşekkürler Naci Bey.


13/06/17 11:02

Cevap vermek için giriş yapmanız gerekmektedir.