Merhaba
Ax 2012 ‘yi incelerken SysLookupMultiSelectCtrl isminde bir sınıfla karşılaştım . Bu sınıf sayesinde lookuplarda çoklu kayıt seçilebiliyor.
Öncelikle lookupta görmek istediğiniz veri için bir query hazırlamalısınız. AOT de ki query düğümünü kullanarak yapabileceğiniz gibi kodla da oluşturabilirsiniz.
Biz CustTable için bir query hazırlayalım. Ayrıca tasarımında sadece stringEdit (adı CustAccount olsun ) bir alan olan form yapalım.
Bu aşamadan sonra forma kod yazmamız gerekiyor. Eklememiz gereken kodlar :
public class FormRun extends ObjectRun { SysLookupMultiSelectCtrl cust<em>MultiSelectCtrl ; } public void init() { super(); custMultiSelectCtrl = SysLookupMultiSelectCtrl::construct(element, CustAccount, querystr(FDCustTableForm)); } public int task(int _taskId) { #task int ret; ret = super(_taskId); if (ret && _taskId == #TaskSave) { custMultiSelectCtrl.get(); } return ret; }
Bu kodlar ekledikten sonra formu açtığınızda lookupta çoklu seçim yapabilirsiniz. Yaptığınız çoklu satır seçimi “;” karakteriyle ayrılarak stringEdit alanına yazılır.
custMultiSelectCtrl .get(); metoduyla dönen veri container olduğu için kolayca kullanılabilir.
Ayrıca “tutorial_LookupMultiSelectGrid” formunda da güzel bir örneği mevcut.
Faydalı ve pratik bir özellik olmuş. Ben kendi adıma çok beğendim.
Selamlar.