| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Как заставить query добавленный в run time отобразится в диалоговом окне SSRS отчета?
			 
			
			Почему query добавленный в параметры таким образом, не отображается в диалоговом окне SSRS отчета? 
		
		
		
		
		
		
		
	X++: SrsReportRunController reportRun = new SrsReportRunController(); MyContract dataContract; Map queryContracts; reportRun.parmReportName(ssrsReportStr(MyReport, PrecisionDesign)); reportRun.parmLoadFromSysLastValue(true); reportRun.parmShowDialog(true); queryContracts = reportRun.parmReportContract().parmQueryContracts(); if (!queryContracts) { queryContracts = new Map(Types::String, Types::Class); queryContracts.insert('VendTable', new Query(queryStr(VendTableListPage))); reportRun.parmReportContract().parmQueryContracts(queryContracts); } reportRun.startOperation();  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Надо делать так 
		
		
		
		
		
		
			X++: reportRun.parmReportContract().parmQueryContracts().insert(reportRun.getFirstQueryContractKey(), new Query(queryStr(VendTableListPage))); Таким образом устанавливается запрос, который будет использоваться при генерации отчета без вызова диалога. Если же вам надо изменить запрос, который отображается в диалоге, то надо идти через DataContract Примерно так X++: SysOperationQueryDataContractInfo contract; ... contract = reportRun.getDataContractInfoObject(reportRun.getFirstQueryContractKey()); contract.parmQuery(new Query(queryStr(VendTableListPage))); reportRun.startOperation(); 
				__________________ 
		
		
		
		
	Axapta v.3.0 sp5 kr2  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: trud (2), Morpheus (3), kitty (1), gl00mie (3), Jorj (1). | |
| 
	
	 | 
	
		
  |