Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT
- SF1.F1_FILIAL AS FILIAL,
- TO_CHAR(TO_DATE(SF1.F1_EMISSAO,'yyyymmdd'),'dd/mm/yyyy') AS DATA,
- SF1.F1_DOC AS NF_COMP,
- SF1.F1_SERIE AS SR_COMP,
- SF1.F1_FORNECE
- || '-'
- || SUBSTR(SA2.A2_NOME,1,25) AS FORNECEDOR,
- TRIM(SD1.D1_COD) AS PRODUTO,
- SD1.D1_VUNIT AS VLR_UNIT,
- SD1.D1_QUANT AS QTD,
- SD1.D1_VUNIT * SD1.D1_QUANT AS TT,
- SF1.F1_DESCONT AS DESCONT,
- SF1.F1_VALBRUT - SF1.F1_DESCONT AS TT_NF,
- COALESCE( (
- SELECT
- MAX(SF1X.F1_SERIE)
- FROM
- %TABLE:SF1% SF1X
- WHERE
- SF1X.F1_DOC = SF1.F1_XNFRET
- AND SF1X.F1_FILIAL = SF1.F1_FILIAL
- AND SF1X.F1_SERIE = SF1.F1_XSFRET
- AND SF1X.%NotDel%
- ),'-') AS SR_FRETE,
- COALESCE( (
- SELECT
- MAX(SF1X.F1_DOC)
- FROM
- %TABLE:SF1% SF1X
- WHERE
- SF1X.F1_DOC = SF1.F1_XNFRET
- AND SF1X.F1_FILIAL = SF1.F1_FILIAL
- AND SF1X.F1_SERIE = SF1.F1_XSFRET
- AND SF1X.%NotDel%
- ),'Sem Frete') AS NR_FRETE,
- SUBSTR( (COALESCE( (
- SELECT
- MAX(SF1X.F1_VALBRUT)
- FROM
- %TABLE:SF1% SF1X
- WHERE
- SF1X.F1_DOC = SF1.F1_XNFRET
- AND SF1X.F1_FILIAL = SF1.F1_FILIAL
- AND SF1X.F1_SERIE = SF1.F1_XSFRET
- AND SF1X.%NotDel%
- ),0) / (
- SELECT
- SUM(SD1.D1_QUANT)
- FROM
- %TABLE:SD1% XD1
- WHERE
- XD1.D1_FILIAL = SD1.D1_FILIAL
- AND XD1.D1_DOC = SD1.D1_DOC
- AND XD1.D1_SERIE = SD1.D1_SERIE
- AND XD1.%NotDel%
- ) ) * SD1.D1_QUANT,1,4) AS VL_FRETE,
- ( SD1.D1_VUNIT * SD1.D1_QUANT ) + SUBSTR( (COALESCE( (
- SELECT
- MAX(SF1X.F1_VALBRUT)
- FROM
- %TABLE:SF1% SF1X
- WHERE
- SF1X.F1_DOC = SF1.F1_XNFRET
- AND SF1X.F1_FILIAL = SF1.F1_FILIAL
- AND SF1X.F1_SERIE = SF1.F1_XSFRET
- AND SF1X.%NotDel%
- ),0) / (
- SELECT
- SUM(SD1.D1_QUANT)
- FROM
- %TABLE:SD1% XD1
- WHERE
- XD1.D1_FILIAL = SD1.D1_FILIAL
- AND XD1.D1_DOC = SD1.D1_DOC
- AND XD1.D1_SERIE = SD1.D1_SERIE
- AND XD1.%NotDel%
- ) ) * SD1.D1_QUANT,1,4) AS VL_TOTAL,
- TRIM(SD2.D2_SERIE) AS SR_VEND,
- TRIM(SD2.D2_DOC) AS NF_VEND,
- SD2.D2_CLIENTE
- || '-'
- || SUBSTR(SA1.A1_NOME,1,25) AS CLIENTE,
- SD2.D2_QUANT AS QTD_VND,
- SD2.D2_PRCVEN AS VALOR,
- SD2.D2_QUANT * SD2.D2_PRCVEN AS TOTAL_VEND,
- SUBSTR( ( ( (SD2.D2_QUANT * SD2.D2_PRCVEN) / ( (SD1.D1_VUNIT * SD1.D1_QUANT) + SUBSTR( (COALESCE( (
- SELECT
- MAX(SF1X.F1_VALBRUT)
- FROM
- %TABLE:SF1% SF1X
- WHERE
- SF1X.F1_DOC = SF1.F1_XNFRET
- AND SF1X.F1_FILIAL = SF1.F1_FILIAL
- AND SF1X.F1_SERIE = SF1.F1_XSFRET
- AND SF1X.%NotDel%
- ),0) / (
- SELECT
- SUM(SD1.D1_QUANT)
- FROM
- SD1010 XD1
- WHERE
- XD1.D1_FILIAL = SD1.D1_FILIAL
- AND XD1.D1_DOC = SD1.D1_DOC
- AND XD1.D1_SERIE = SD1.D1_SERIE
- AND XD1.%NotDel%
- ) ) * SD1.D1_QUANT,1,4) ) ) - 1) * 100,1,5) AS MKP
- FROM
- SF1010 SF1
- INNER JOIN %TABLE:SD1% SD1 ON SF1.F1_FILIAL = SD1.D1_FILIAL
- AND SF1.F1_DOC = SD1.D1_DOC
- AND SF1.F1_SERIE = SD1.D1_SERIE
- AND SD1.%NotDel%
- INNER JOIN %TABLE:SA2% SA2 ON SA2.A2_COD = SF1.F1_FORNECE
- AND SA2.A2_LOJA = SF1.F1_LOJA
- AND SA2.%NotDel%
- INNER JOIN %TABLE:SD2% SD2 ON SD2.D2_DOC = SF1.F1_XNVEND
- AND SD2.D2_FILIAL = SF1.F1_FILIAL
- AND SD2.D2_SERIE = SF1.F1_XSVEND
- AND SD2.D2_COD = SD1.D1_COD
- AND SD2.%NotDel%
- INNER JOIN %TABLE:SF2% SF2 ON SF2.F2_DOC = SF1.F1_XNVEND
- AND SF2.F2_FILIAL = SF1.F1_FILIAL
- AND SF2.F2_SERIE = SF1.F1_XSVEND
- AND SF2.%NotDel%
- INNER JOIN %TABLE:SA1% SA1 ON SA1.A1_COD = SD2.D2_CLIENTE
- AND SA1.A1_LOJA = SD2.D2_LOJA
- AND SA1.%NotDel%
- WHERE
- SF1.F1_XMCF = 'T'
- AND SF1.F1_XVINC = 'F'
- AND SF1.%NotDel%
- AND SD1.D1_FILIAL BETWEEN %EXP:MV_PAR01% AND %EXP:MV_PAR02%
- AND SD1.D1_EMISSAO BETWEEN %EXP:MV_PAR03% AND %EXP:MV_PAR04%
- AND SD1.D1_DTDIGIT BETWEEN %EXP:MV_PAR05% AND %EXP:MV_PAR06%
- ORDER BY 1,2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement