Kişi bilgileri gizlidir. Logo çalışanları görebilir.

onDataGridQueryExecuted

  j-Platform/LPT

Browserların eventında bulunan onDataGridQueryExecuted'ı nasıl kullanabilirim?

 


onDataGridQueryExecuted event


Kişi bilgileri gizlidir. Logo çalışanları görebilir.

Bu event grid her dolduğunda elemanları üzerinde gezme, seçme işlemini yapmamıza olanak sağlıyor. Ancak bu işlemler grid initialize olmadan önce tamamlandığı için, onFocusGained metodunda grid üzerinde multiselectionlist'İn synchronize metodu çalıştırılmalı. 

Aşğıda ki örnek malzeme browser'ı uyarlandıktan sonra gridin ilgili eventlarına tanımlanan örnek metodları içermektedir.

public class MalzemeBrowHandler {

	public MalzemeBrowHandler() {
		// TODO Auto-generated constructor stub
	}
	
	boolean isFirstInit = true;
	boolean isLoading = false;
	private JLbsDataGridBase grid;
	
	public void onFocusGained(JLbsXUIControlEvent event)
	{
		if( grid != null && grid.getMultiSelectionList() != null )
			grid.getMultiSelectionList().synchronizeSelections();
	}

	public void onDataGridQueryExecuted(JLbsXUIDataGridEvent event)
	{
		if( isLoading )
		{
			IClientContext context = event.getClientContext();
			QueryBusinessObjects qbo = new QueryBusinessObjects();
			grid = event.getGrid();
			IQueryFactory queryFactory = 
            event.getClientContext().getQueryFactory();
	
			QueryParams queryParams = new QueryParams();
	
			try {
				queryFactory.first("MMQOItemBrowser", 
                queryParams, qbo, -1, false);
	
			} catch (QueryFactoryException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (SessionTimeoutException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (SessionReestablishedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			IMultiSelectionList multiSelectionList = 
            grid.getMultiSelectionList();
			for (int i = 0; i < qbo.size(); i++) {
				if (i % 2 == 0) {
	
					//grid.selectGridRow(i);
					
					//grid.getMultiSelectionList().selectRow(i);
	
					multiSelectionList.select(qbo.get(i));
	
				}
	
			}
			isLoading = false;
		}
	}

	public void onInitialize(JLbsXUIControlEvent event)
	{
		if( isFirstInit )
		{
			isLoading = true;
			isFirstInit = false;
		}
	}

}

 


25/11/15 11:00


Kişi bilgileri gizlidir. Logo çalışanları görebilir.

Bu event grid her dolduğunda elemanları üzerinde gezme, seçme işlemini yapmamıza olanak sağlıyor. Ancak bu işlemler grid initialize olmadan önce tamamlandığı için, onFocusGained metodunda grid üzerinde multiselectionlist'İn synchronize metodu çalıştırılmalı. 

Aşğıda ki örnek malzeme browser'ı uyarlandıktan sonra gridin ilgili eventlarına tanımlanan örnek metodları içermektedir.

public class MalzemeBrowHandler {

	public MalzemeBrowHandler() {
		// TODO Auto-generated constructor stub
	}
	
	boolean isFirstInit = true;
	boolean isLoading = false;
	private JLbsDataGridBase grid;
	
	public void onFocusGained(JLbsXUIControlEvent event)
	{
		if( grid != null && grid.getMultiSelectionList() != null )
			grid.getMultiSelectionList().synchronizeSelections();
	}

	public void onDataGridQueryExecuted(JLbsXUIDataGridEvent event)
	{
		if( isLoading )
		{
			IClientContext context = event.getClientContext();
			QueryBusinessObjects qbo = new QueryBusinessObjects();
			grid = event.getGrid();
			IQueryFactory queryFactory = 
            event.getClientContext().getQueryFactory();
	
			QueryParams queryParams = new QueryParams();
	
			try {
				queryFactory.first("MMQOItemBrowser", 
                queryParams, qbo, -1, false);
	
			} catch (QueryFactoryException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (SessionTimeoutException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (SessionReestablishedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			IMultiSelectionList multiSelectionList = 
            grid.getMultiSelectionList();
			for (int i = 0; i < qbo.size(); i++) {
				if (i % 2 == 0) {
	
					//grid.selectGridRow(i);
					
					//grid.getMultiSelectionList().selectRow(i);
	
					multiSelectionList.select(qbo.get(i));
	
				}
	
			}
			isLoading = false;
		}
	}

	public void onInitialize(JLbsXUIControlEvent event)
	{
		if( isFirstInit )
		{
			isLoading = true;
			isFirstInit = false;
		}
	}

}

 


25/11/15 11:00

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