| Предыдущая тема :: Следующая тема | 
	
	
		| Автор | Сообщение | 
	
		| gens Участник со стажем
 
 
 Вступление в Клуб: 21.06.2011
 
 | 
			
				|  Ср Окт 26, 2011 07:29   Вызов операции из другой операции |   |  
				| Полезность: Нет оценки 
 |  
				| Добрый день. 
 Пытаюсь вызвать из одной операции, вторую операцию.
 К примеру:
 
  	  | Код: |  	  | stdio.put_line_buf('<% PLPCALL [NEW#AUTO] %>'); | 
 
 Но операция не вызывается. Правильно вызываю? Возможно нужно доп. условия для вызова?
 |  | 
	
		|  | 
	
		| vtar Эксперт
 
 
 Вступление в Клуб: 20.03.2009
 
 | 
			
				|  Ср Окт 26, 2011 08:03   Re: Вызов операции из другой операции |   |  
				| Полезность: 1 
 |  
				|  	  | gens пишет: |  	  |  	  | Код: |  	  | stdio.put_line_buf('<% PLPCALL [NEW#AUTO] %>'); | 
 ?
 | 
 Посмотрите примеры PLPCALL, поиск  в администраторе словаря рулит
 
  	  | Код: |  	  | stdio.put_line_buf('<% PLPCALL [код ТБП].[NEW#AUTO] %>'); | 
 Дополнительные свойства - [v] выводит команды в буффер сессии
 |  | 
	
		|  | 
	
		| gens Участник со стажем
 
 
 Вступление в Клуб: 21.06.2011
 
 | 
			
				|  Ср Окт 26, 2011 11:02    |   |  
				| Полезность: Нет оценки 
 |  
				| Получилось! Спасибо. 
 
  	  | Код: |  	  | stdio.put_line_buf('<% PLPCALL [CR_RISK_GR].[NEW#AUTO](StartDate => '''||to_char(P_DATE_CLOSE, 'DD/MM/YYYY')||''', %PARAM%.RiskGroup => %VAR%.P_GR, P_PRC_RESERV => '''||P_PRC||''', P_RESUME => '''||P_MEMO||''') %>'); | 
 
 Вопрос сейчас в другом.
 При попытке вызова над ПОС-ом ТБП(SIM_LOAN_PORT) этой операции я пытаюсь в массив "Историй групп риска" прописать эти значения.
 По логике, я безлико вызываю конструктор. Как описать работу NEW#AUTO, что-бы это было аналогично, если бы зашел в масиив и заполнил его.
 Нашел параметр "P_PROD", может как-то через него?
 |  | 
	
		|  | 
	
		| vtar Эксперт
 
 
 Вступление в Клуб: 20.03.2009
 
 | 
			
				|  Ср Окт 26, 2011 11:17    |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | gens пишет: |  	  | При попытке вызова над ПОС-ом ТБП(SIM_LOAN_PORT) этой операции я пытаюсь в массив "Историй групп риска" прописать эти значения. 
 | 
 
 Мне кажется, надо "танцевать" от портфеля SIM_LOAN_PORT, если задача в том чтобы добавить новое значение в массив GR_RISK_HIST нужного экземпляра ( %ID ) SIM_LOAN_PORT, то PLPCALL использовать излишне.
 |  | 
	
		|  | 
	
		| gens Участник со стажем
 
 
 Вступление в Клуб: 21.06.2011
 
 | 
			
				|  Ср Окт 26, 2011 12:02    |   |  
				| Полезность: Нет оценки 
 |  
				| Есть желание сделать списочную операцию, которая для множества портфелей проставляла бы одинаковые значения в их массивы. |  | 
	
		|  | 
	
		| vtar Эксперт
 
 
 Вступление в Клуб: 20.03.2009
 
 | 
			
				|  Ср Окт 26, 2011 12:47    |   |  
				| Полезность: 1 
 |  
				|  	  | Код: |  	  | date_beg    date;
 gr_val      ref [CRED_RISK];
 
 begin
 date_beg := to_date('26.10.2011','dd.mm.yyyy');
 gr_val    := ::[CRED_RISK]([GROUP_NUM]='1');
 
 for x in this.first..this.last
 loop
 this(x).[GR_RISK_HIST].[NEW#AUTO](date_beg, null, gr_val, gr_val, null, null );
 end loop;
 
 end;
 
 | 
 |  | 
	
		|  | 
	
		| gens Участник со стажем
 
 
 Вступление в Клуб: 21.06.2011
 
 | 
			
				|  Ср Окт 26, 2011 13:47    |   |  
				| Полезность: Нет оценки 
 |  
				| Мы сами усложняем себе жизнь, ведь действительно так можно. Почем мне в говолу этот PLPCALL попал...
 
 Спасибо! Тема закрыта.
 |  | 
	
		|  | 
	
		|  |