| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Фильтрация в Lookup-форме
			 
			
			Необходимо фильтровать по номенклатуру по какому-либо условию. Чтобы это реализовать, я в InventTable переопределял метод ExecuteQuery. При открытии формы InventTable - все работало. 
		
		
		
		
		
		
		
	Теперь необходимо, чтобы эта фильтрация работала и Lookup-формах, появляющихся например при создании закупки или заказа. Как это реализовать ? Из прочтения http://www.axforum.info/forums/showt...hlight=Lookup, я понял, что надо перекрывать метод lookup() в поле Gridа. Но вот что в нем писать ???? Подскажите пожалуйста.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 сибиряк 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Попробуй так -  
		
		
		
		
		
		
			перекрой lookup <b> public void lookup() { SysTableLookup sysTableLookup = sysTableLookup::newParameters(tableNum(InventTable), this); query query = new query(); queryBuildDatasource qbds; ; sysTableLookup.addLookupfield(fieldNum(InventTable, ItemId),true); qbds = query.addDataSource(tablenum(InventTable)); qbds.addRange(fieldNum(InventTable,itemid)).value("14*"); sysTableLookup.parmQuery(query); sysTableLookup.performFormLookup(); } </b> только не забудь убрать super() 
				__________________ 
		
		
		
		
	С уважением, Вячеслав.  | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Спасибо. Это мне помогло. Но появилась новая задача - необходимо в выпадающем LookUp устанавливать определенную ширину поля.  
		
		
		
		
		
		
		
	Метод sysTableLookup.addLookupfield(fieldNum(InventTable, ItemId),true); возвращает void, то есть практически ничего. Каким образом можно установить ширину поля в выпадающем списке ?  | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			используй заранее созданные формы для lookup'a. 
		
		
		
		
		
		
		
	help. ключевое слово "Lookup"  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			используй заранее созданные формы для lookup'a.
		
	 
То есть, если я хочу всего лишь изменить ширину поля в LookUp мне надо создавать свою форму. А попроще нельзя ?  | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			да, тобой. 
		
		
		
		
		
		
		
	Куда ж проще? Уверяю, что это гораздо проще, чем программировать вручную. Вдобавок появляется масса новых возможностей. См. LedgerTableLookup, BankAccountTableLookup и прочие формы с суффиксом lookup.  | 
| 
	
 |