| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Ax2012 SysOperation наследование контрактов.
			 
			
			Возникла необходимость наследовать контракты для вызова функций через SysOperation. 
		
		
		
		
		
		
		
	В некоторых случаях наследование проходит нормально. Поля задекларированные как атрибуты в базовых классах нормально отображаются в диалоге для контрактов-наследников. Но иногда случается страшное и контракты-предки перестают отображаться в диалогах потомков. Может быть кто-нибудь знает причину такого поведения и как его можно полечить? Кэши сбрасывал, перезагружался, делал инкрементрую компиляцию контрактов, контроллеров и сервисов. Ничего не помогает. Если вызывать сервисы по отдельности для каждого из предков, то диалог нормально генерится. Может быть я не знаю какой-нибудь волшебный атрибут для наследования контрактов? Пример: Базовый контракт не имеет полей. Контракт-период - имеет два поля дат с по. Контракт-наследник - в диалоге должен иметь поля периода и добавлять свои поля. Сейчас в диалоге отображаются только поля наследника.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Попробуйте запустить сброс SysGlobalObjectCache на сервере (т.е. не на клиенте - это можно сделать специально обученным пунктом меню для джоба).
		 
		
		
		
		
		
		
		
	 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Еще раз наступил на эти грабли. 
		
		
		
		
		
		
		
	Ответа пока что нет. При наследовании контракта почему-то в диалоге не отображаются поля предка. Как-нибудь сделаю тестовый проектик. Полный рабочий проект выгружать смысла нет, слишком много лишнего.  | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Так ведь если пример под рукой - можно протрассировать и понять. 
		
		
		
		
		
		
		
	А рестарт аоса помогает ?  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Не помогает ничего, ни рестарт аоса, ни чистка кешей ни глобальная компиляция. А насчет протрассировать... можно, конечно. но это выкинуть кучу времени без гарантии нахождения результата. я работаю не на М$, а на себя. мне проще тупо скопировать несколько методов. пресловутый копипаст, который обсуждается сча активно, чем копать сисоперайшнфреймвок. ....... будет свободная минутка, сделаю тестовый пример. кому заняться нечем, ради интереса может покопать...  | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Banned 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
Нет там влияния SysOperationServiceController.initializeFromArgs() или около того? P.S. .getDataContractObject(..) может еще. Последний раз редактировалось ax_mct; 26.06.2017 в 21:55.  | 
| 
	
 | 
| Теги | 
| sysoperation framework | 
| 
	
	 | 
	
		
  |