@Dieter

Da die Summe über ein Feld in Datei C gebildet werden soll, geht das so leider nicht

Meine Lösung:

Code:
with 
   krt (krtkpl, krtrec) 
    as (select krtkpl, krtrec from krt001
          where KRTSTY = :STYLE 
             AND KRTCOL = :COLOUR 
             AND KRTSIZ = :SIZE 
          union
          select krtkpl, krtrec from krthst
          where KRTSTY = :STYLE 
             AND KRTCOL = :COLOUR 
             AND KRTSIZ = :SIZE 
         )

, krtkom as (select kkhvcn, kkhpal, kkhsts, kkhbch
                     from krtkomh
                    where kkhpal in (select krtkpl from krt)
                  )

SELECT 
B.TRFSCN, B.TRFSDT, A.KKHVCN, A.KKHPAL, A.KKHSTS, 
B.TRFRCN, B.TRFRDT, DECIMAL(SUM(C.KRTREC), 7, 0) 

FROM KRT C
        , krtkom A 
        , TRFHDR B 

where C.KRTKPL = A.KKHPAL 
    and A.KKHBCH = B.TRFBCH 

GROUP BY 
B.TRFSCN, B.TRFSDT, A.KKHVCN, A.KKHPAL, A.KKHSTS, 
B.TRFRCN, B.TRFRDT