Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

​Контрактники...

18.02.20 15:05
Re: ​Контрактники...
 
Murr_0001 местный житель
Murr_0001
в ответ Murr_0001 17.02.20 15:42, Последний раз изменено 18.02.20 15:05 (Murr_0001)

А мы перевели...


SELECT
ak.KOPF_FIRMA "site",
CASE ak.KUNR WHEN 0 THEN SUBSTR(aa.NAME,1,20) ELSE SUBSTR(ka.KU_NAME,1,20) END
"customerName",
CASE ak.AUF_OFF WHEN 0 THEN 'IN' ELSE 'CN' END "doc",
COALESCE(zk.ZK_RE_NR,-1) "documentNo",
COALESCE(zk.ZK_RE_BETRAG,0) "docValue",
COALESCE(zk.ZK_STEUER,0) "docVAT",
ROUND(ak.AUF_ENERGY_WGHT,3) "engy rate",
SUM(at.RG_ANZ) "qty",
ROUND(SUM(ak.AUF_ENERGY_WGHT*AP_WGHT_ENSRCH*at.RG_ANZ),2)
"engy",
ROUND(SUM(ap.SUM_NETTO*at.RG_ANZ),2) "net",
ak.KOPF_WA_MULTI "exch rate",
ak.KOPF_WA_CODE "curr",
ROUND(SUM(ak.AUF_ENERGY_WGHT*AP_WGHT_ENSRCH*at.RG_ANZ/ak.KOPF_WA_MULTI),2)
"localCurrencyEngy",
ROUND(SUM(ap.SUM_NETTO*at.RG_ANZ/ak.KOPF_WA_MULTI),2)
"localCurrencyNet"


FROM AUF_KOPF ak, AUF_POS ap, AUF_STAT at, ZAHL_KON zk, KUST_ADR ka, AUF_ADR aa
WHERE
FROM AUF_KOPF ak


INNER JOIN AUF_POS ap ON
ak.AUF_NR = ap.AUF_NR
AND ak.AUF_OFF IN (0,5)
INNER JOIN AUF_STAT at ON
AND ak.AUF_NR = at.AUF_NR
AND ap.AUF_POS = at.AUF_POS
AND ap.VARIANTE = at.VARIANTE
AND TO_CHAR(at.RG_NR) = REPLACE(TRANSLATE(zk.ZK_RE_NR,
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/*-+=!£$€%^&*()_?\|.,:;@{}[]#~ "',
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'),'X',NULL)
AND at.RG_NR > 0
AND at.RG_DAT BETWEEN <#= StartDate #> AND
<#= FinishDate #>
INNER JOIN ZAHL_KON zk ON
zk.ZK_HISTORY = 0
AND CASE ak.KUNR WHEN 0 THEN ak.KUNR_PSEUDO ELSE ak.KUNR END = zk.ZK_KU_LIEF_NR
LEFT JOIN KUST_ADR ka ON
AND ak.KUNR = ka.KU_NR
AND 0 = ka.KU_ADR_ART
AND 0 = ka.KU_VK_EK
AND ak.AUF_NR = aa.AUF_NR
AND 0 = ADR_ART


GROUP BY ak.KOPF_FIRMA,
CASE ak.KUNR WHEN 0 THEN SUBSTR(aa.NAME,1,20) ELSE SUBSTR(ka.KU_NAME,1,20) END,
CASE ak.AUF_OFF WHEN 0 THEN 'IN' ELSE 'CN' END,
COALESCE(zk.ZK_RE_NR,-1),
COALESCE(zk.ZK_RE_BETRAG,0),
COALESCE(zk.ZK_STEUER,0),
ak.AUF_ENERGY_WGHT,
ak.KOPF_WA_MULTI,
ak.KOPF_WA_CODE



И самое смешное - именно для этой выборки имеется написанный тест...

 

Перейти на