FireBird Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
파이어버드 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
IBPhoenix
FireBird Main site
볼랜드포럼 광고 모집

FireBird Q&A
[1559] [답변] 사소한 곳에...
아폴론 [] 1555 읽음    2005-09-21 13:06
TR201F 에서 견적서 내용 조회용 스토어드 프로시져

create procedure SEL_TR120T_201
(
  krno varchar(10)
)
returns
(
  CODE varchar(4),
  TNO  varchar(2),
  HMNM varchar(20),
  GBDT varchar(10),
  NEYG varchar(40),
  DNKA numeric,
  SRNG numeric,
  AMNT numeric,
  SUYL decimal(3,2)
)
as
begin
  /* Procedure Text */
  for
    select
      cast(a.gb_hmcd as varchar(4)) CODE,
      cast(a.gb_hmno as varchar(2)) TNO,
      cast(b.cd_des2 as varchar(20)) HMNM,
      cast(a.gb_date as varchar(10)) GBDT,
      cast(a.gb_desc as varchar(40)) NEYG,
      cast(a.gb_dnka as numeric) DNKA,
      cast(a.gb_srng as numeric) SRNG,
      cast(a.gb_amnt as numeric) AMNT,
      cast(a.gb_suyl as decimal(3,2)) SUYL
    from tr120t a
         left outer join tr010t  b on b.cd_iden = '3' and a.gb_hmcd = b.cd_code
    where a.gb_krno = :krno
     --into :CODE, :TNO, :HMNM, :GBDT, :NEYG, :DNKA, :SRNG, :AMNT,:SUYL ==>요거 필요없음
    union all
    select
      cast('' as varchar(4)) CODE,
      cast('' as varchar(2)) TNO,
      cast('' as varchar(20)) HMNM,
      cast('' as varchar(10)) GBDT,
      cast('[합   계]' as varchar(40)) NEYG,
      cast(0 as numeric) DNKA,
      cast(0 as numeric) SRNG,
      cast(sum(gb_amnt) as numeric) AMNT,
      cast(0 as decimal(3,2)) SUYL
    from tr120t
    where gb_krno = :krno
     into :CODE, :TNO, :HMNM, :GBDT, :NEYG, :DNKA, :SRNG, :AMNT,:SUYL
  do
  suspend;
end

이상한점??
for ~ do 문장은 루프를 돌린다는데요...
저위 union all 다음은 합계만 내면 되는 문장 이거든요... 궂이 루프를 돌리지 않아도 될 텐데요...
방법을 모르겠습니다.

고수님들  맞게 된 문장 인가요?

+ -

관련 글 리스트
1558 [질문] FireBird 프로시져 만들기 아폴론 1854 2005/09/21
1559     [답변] 사소한 곳에... 아폴론 1555 2005/09/21
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.