| 
	 | 
| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Чудеса DAX 2012
			 
			
			День был тяжелый, я наверное чего-то не понимаю. Встретил вот такое чудо в форме projUnpostedTransactionsListPage, метод ProcessButton.clicked(); 
		
		
		
		
		
		
			X++: select prodJournalTable where prodJournalBOM.ProjTransId == projUnpostedTransView.TransId && prodJournalTable.JournalId == prodJournalRouteProj.JournalId; 
				__________________ 
		
		
		
		
	The 50-50-90 rule: Any time you have a 50-50 chance of getting something right, there’s a 90% probability you’ll get it wrong.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 NavAx 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Прекрасно будет работать. 
		
		
		
		
		
		
			В этом контексте projUnpostedTransView.TransId вернет литерал (константу), которая и будет передана в запрос. 
				__________________ 
		
		
		
		
	Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...  
			 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			В запросе используются 3 табличных буфера - prodJournalTable, prodJournalBOM и prodJournalRouteProj (на момент выполнения запроса они все пустые).  
		
		
		
		
		
		
			Как будут сформированы связи между ними - автоматически по табличным relation?? По условиям в разделе where - полный запрос не построить. p.s. prodJournalTable.getSQLStatement() вернул пустую строку 
				__________________ 
		
		
		
		
		
			The 50-50-90 rule: Any time you have a 50-50 chance of getting something right, there’s a 90% probability you’ll get it wrong. Последний раз редактировалось shogel; 16.08.2011 в 18:25.  | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Да, именно так. Только абсурдность ситуации в том что prodJournalBOM не инициализирован  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			И я боюсь, что это не чудо. Сейчас насчитал еще 4 таких запроса. Вот такой вот "Zero Bug Release".
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	The 50-50-90 rule: Any time you have a 50-50 chance of getting something right, there’s a 90% probability you’ll get it wrong.  | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 MCTS 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Проверил для релиза 6.0.947.61. ситуация такая же. 
		
		
		
		
		
		
		
	P.S.: Думаю ситуация будет похожа на пословицу: Чем дальше в лес, тем толще партизаны. Ждём SP10, пока очень сыро.  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: shogel (1). | |
| 
			
			 | 
		#7 | 
| 
			
			 NavAx 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Я тут вижу как минимум одну связку: prodJournalTable.JournalId == prodJournalRouteProj.JournalId; 
		
		
		
		
		
		
			Видимо, есть еще какой-то контекст, но из приводимых выдержек пока непонятно в чем дело. 
				__________________ 
		
		
		
		
	Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...  
			 | 
| 
	
 | 
| 
			
			 | 
		#8 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			В том то и чудо, что это не выдержки - это полный текст запроса. Вот так выглядит сам метод : 
		
		
		
		
		
		
			X++: void clicked() { Args menuArgs = new Args(); MenuFunction menuFunction; ProdJournalRouteProj prodJournalRouteProj; ProdJournalTable prodJournalTable; ProdJournalBOM prodJournalBOM; menuArgs.caller(element); switch (projUnpostedTransView.UnionAllBranchId) { case 8: //projProdJournalBOMUnpostedView select prodJournalTable where prodJournalBOM.ProjTransId == projUnpostedTransView.TransId && prodJournalTable.JournalId == prodJournalRouteProj.JournalId; menuArgs.record(prodJournalTable); menuFunction = new MenuFunction(menuitemDisplayStr(ProdJournalTableAll), MenuItemType::Display); break; } menuFunction.run(menuArgs); } 
				__________________ 
		
		
		
		
	The 50-50-90 rule: Any time you have a 50-50 chance of getting something right, there’s a 90% probability you’ll get it wrong.  | 
| 
	
 | 
| 
			
			 | 
		#9 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			мне кажется будет работать как  
		
		
		
		
		
		
		
	if (prodJournalBOM.ProjTransId == projUnpostedTransView.TransId) select prodJournalTable where prodJournalTable.JournalId == prodJournalRouteProj.JournalId; Особых чудет то нет  | 
| 
	
 | 
| Теги | 
| ax2012, bug, select, ошибка | 
| 
	
	 | 
	
		
  |