| 
 
  
	| связка между двух операций 
 
 |  
	
		| Предыдущая тема :: Следующая тема |  
		| Автор | Сообщение |  
		| брат666 Участник со стажем
 
 
 Вступление в Клуб: 20.02.2014
 
 | 
			
				|  Чт Фев 20, 2014 20:00   связка между двух операций |   |  
				| Полезность: Нет оценки 
 |  
				| помогите плз, надо создать связку между двух операций PLAN_OPER и FACT_OPER в выборке. если не сложно киньте скрипт . за ранее благодарю |  |  
		|  |  
		| Random Эксперт
 
 
 Вступление в Клуб: 27.06.2011
 
 | 
			
				|  Пт Фев 21, 2014 07:30   Re: связка между двух операций |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | брат666 пишет: |  	  | помогите плз, надо создать связку между двух операций PLAN_OPER и FACT_OPER в выборке. если не сложно киньте скрипт . за ранее благодарю | 
 
 Критерии какие?
 
 Есть массив "Факт.операции к плановым", может это то, что ты ищешь?
 |  |  
		|  |  
		| брат666 Участник со стажем
 
 
 Вступление в Клуб: 20.02.2014
 
 | 
			
				|  Пт Фев 21, 2014 08:25   Re: связка между двух операций |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | Random пишет: |  	  |  	  | брат666 пишет: |  	  | помогите плз, надо создать связку между двух операций PLAN_OPER и FACT_OPER в выборке. если не сложно киньте скрипт . за ранее благодарю | 
 
 Критерии какие?
 
 Есть массив "Факт.операции к плановым", может это то, что ты ищешь?
 | 
 
 
 да, я и об этом хотел спрашивать. вот уменя в "Факт.операции к плановым" че то с датами не то. короче, я хочу через план. операций выйти на факт. опер. и выводить дату факт операций. (дата гашение кредита)
 |  |  
		|  |  
		| Random Эксперт
 
 
 Вступление в Клуб: 27.06.2011
 
 | 
			
				|  Пт Фев 21, 2014 08:51   Re: связка между двух операций |   |  
				| Полезность: 1 
 |  
				|  	  | брат666 пишет: |  	  | да, я и об этом хотел спрашивать. вот уменя в "Факт.операции к плановым" че то с датами не то. короче, я хочу через план. операций выйти на факт. опер. и выводить дату факт операций. (дата гашение кредита) | 
 
  	  | Код: |  	  | select * from z#pr_cred cr
 , z#plan_oper p
 , z#FACT_PLAN_OPER fp
 , z#fact_oper f
 
 where cr.c_LIST_PLAN_PAY = p.collection_id -- соединение кредитов с плановыми операциями
 and fp.collection_id = p.c_fact_opers -- от плановых операций переходим к массиву исполнявших эту операцию фактических
 and f.id = fp.c_FACT -- переходим по ссылке к факт.операции
 
 | 
 
 или в терминах PL+:
 
  	  | Код: |  	  | select x(
 
 x -- это кредит
 , x.[LIST_PLAN_PAY].[SUMMA] -- сумма плановой операции
 , x.[LIST_PLAN_PAY].[FACT_OPERS].[SUM] -- сумма, которую исполняла факт.операция для плановой операции
 , x.[LIST_PLAN_PAY].[FACT_OPERS].[FACT].[SUMMA] -- вся сумма факт.операции
 
 ) in ::[PR_CRED]
 
 | 
 |  |  
		|  |  
		| брат666 Участник со стажем
 
 
 Вступление в Клуб: 20.02.2014
 
 | 
			
				|  Пт Фев 21, 2014 10:27   Re: связка между двух операций |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | Random пишет: |  	  |  	  | брат666 пишет: |  	  | да, я и об этом хотел спрашивать. вот уменя в "Факт.операции к плановым" че то с датами не то. короче, я хочу через план. операций выйти на факт. опер. и выводить дату факт операций. (дата гашение кредита) | 
 
  	  | Код: |  	  | select * from z#pr_cred cr
 , z#plan_oper p
 , z#FACT_PLAN_OPER fp
 , z#fact_oper f
 
 where cr.c_LIST_PLAN_PAY = p.collection_id -- соединение кредитов с плановыми операциями
 and fp.collection_id = p.c_fact_opers -- от плановых операций переходим к массиву исполнявших эту операцию фактических
 and f.id = fp.c_FACT -- переходим по ссылке к факт.операции
 
 | 
 
 или в терминах PL+:
 
  	  | Код: |  	  | select x(
 
 x -- это кредит
 , x.[LIST_PLAN_PAY].[SUMMA] -- сумма плановой операции
 , x.[LIST_PLAN_PAY].[FACT_OPERS].[SUM] -- сумма, которую исполняла факт.операция для плановой операции
 , x.[LIST_PLAN_PAY].[FACT_OPERS].[FACT].[SUMMA] -- вся сумма факт.операции
 
 ) in ::[PR_CRED]
 
 | 
 | 
 
 
 
 select  cr (   cr.[list_plan_pay].fact_opers.fact.date           : DT )
 in ::[PR_CRED], (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) all
 where cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 
 уменя FACT_PLAN_OPER не правильно составлено, ну в смысле даты там не совпадают с FACT_OPER и поэтому код не сработал праильно
  |  |  
		|  |  
		| брат666 Участник со стажем
 
 
 Вступление в Клуб: 20.02.2014
 
 | 
			
				|  Пт Фев 21, 2014 11:35   Re: связка между двух операций |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | брат666 пишет: |  	  |  	  | Random пишет: |  	  |  	  | брат666 пишет: |  	  | да, я и об этом хотел спрашивать. вот уменя в "Факт.операции к плановым" че то с датами не то. короче, я хочу через план. операций выйти на факт. опер. и выводить дату факт операций. (дата гашение кредита) | 
 
  	  | Код: |  	  | select * from z#pr_cred cr
 , z#plan_oper p
 , z#FACT_PLAN_OPER fp
 , z#fact_oper f
 
 where cr.c_LIST_PLAN_PAY = p.collection_id -- соединение кредитов с плановыми операциями
 and fp.collection_id = p.c_fact_opers -- от плановых операций переходим к массиву исполнявших эту операцию фактических
 and f.id = fp.c_FACT -- переходим по ссылке к факт.операции
 
 | 
 
 или в терминах PL+:
 
  	  | Код: |  	  | select x(
 
 x -- это кредит
 , x.[LIST_PLAN_PAY].[SUMMA] -- сумма плановой операции
 , x.[LIST_PLAN_PAY].[FACT_OPERS].[SUM] -- сумма, которую исполняла факт.операция для плановой операции
 , x.[LIST_PLAN_PAY].[FACT_OPERS].[FACT].[SUMMA] -- вся сумма факт.операции
 
 ) in ::[PR_CRED]
 
 | 
 | 
 
 
 
 select  cr (   cr.[list_plan_pay].fact_opers.fact.date           : DT )
 in ::[PR_CRED], (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) all
 where cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 
 уменя FACT_PLAN_OPER не правильно составлено, ну в смысле даты там не совпадают с FACT_OPER и поэтому код не сработал праильно
  | 
 
 
 спасибо вам огромное, уменя еще вопросы будут к вам если не возражаете )
 |  |  
		|  |  
		| Random Эксперт
 
 
 Вступление в Клуб: 27.06.2011
 
 | 
			
				|  Пт Фев 21, 2014 11:56   Re: связка между двух операций |   |  
				| Полезность: 1 
 |  
				|  	  | брат666 пишет: |  	  | select  cr (   cr.[list_plan_pay].fact_opers.fact.date           : DT ) in ::[PR_CRED], (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) all
 where cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 
 уменя FACT_PLAN_OPER не правильно составлено, ну в смысле даты там не совпадают с FACT_OPER и поэтому код не сработал праильно
  | 
 
 Ой-ой, полегче!
 Указывая cr.[list_plan_pay].fact_opers.fact.date           : DT ты уже выполнил связку со всеми нужными таблицами, присоединять явно в области in [] уже нет необходимости!
 
  	  | Код: |  	  | select  cr (   cr.[list_plan_pay].fact_opers.fact.date           : DT ) in ::[PR_CRED]
 /* это уже лишее
 , (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) */
 
 all
 where
 /* вместо этого нужно написать
 cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in
 */
 cr = p_IdKR
 and cr.[list_plan_pay].fact_opers.fact.oper.codе in
 ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 
 | 
 |  |  
		|  |  
		| брат666 Участник со стажем
 
 
 Вступление в Клуб: 20.02.2014
 
 | 
			
				|  Пт Фев 21, 2014 13:23   Re: связка между двух операций |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | Random пишет: |  	  |  	  | брат666 пишет: |  	  | select  cr (   cr.[list_plan_pay].fact_opers.fact.date           : DT ) in ::[PR_CRED], (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) all
 where cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 
 уменя FACT_PLAN_OPER не правильно составлено, ну в смысле даты там не совпадают с FACT_OPER и поэтому код не сработал праильно
  | 
 
 
 
 Ой-ой, полегче!
 Указывая cr.[list_plan_pay].fact_opers.fact.date           : DT ты уже выполнил связку со всеми нужными таблицами, присоединять явно в области in [] уже нет необходимости!
 
  	  | Код: |  	  | select  cr (   cr.[list_plan_pay].fact_opers.fact.date           : DT ) in ::[PR_CRED]
 /* это уже лишее
 , (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) */
 
 all
 where
 /* вместо этого нужно написать
 cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in
 */
 cr = p_IdKR
 and cr.[list_plan_pay].fact_opers.fact.oper.codе in
 ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 
 | 
 | 
 
 
 
  	  | Код: |  	  | select distinct cr (  f.date      : ct  ) in ::[PR_CRED], (::[FACT_OPER] all : f), (::[PLAN_OPER] all : p),(::[FACT_PLAN_OPER] all :fp ) all
 where cr.[LIST_PLAN_PAY] = p%collection and cr%id = p_IdKR  and fp%collection=p.FACT_OPERS and f=fp.FACT and
 f.[OPER].CODE in ('GASHENIE_KRED','GASHEN_ZADOLJ_KR','GASH_UCHT_PRC_112')
 order by f.date
 | 
 
 я пробовал обеих, но результата нето. т.е даты FACT_OPER не совпадают датами  FACT_PLAN_OPER. надо другой способ найти
  |  |  
		|  |  
		|  |  
  
	| 
 
 | Вы не можете начинать темы Вы не можете отвечать на сообщения
 Вы не можете редактировать свои сообщения
 Вы не можете удалять свои сообщения
 Вы не можете голосовать в опросах
 
 |  |