SELECT cm.es_mov, cm.nota_fisc as ComissaoNota, dtoc(cm.data_mov) as ComissaoData, cm.total_nota as ComissaoNotaValor, cm.grupo as ComissaoGrupo, cm.referencia ComissaoReferencia, (cpl.tot_item - cpl.desc_item + cpl.frete_it) * iif(cm.es_mov='S',1,-1) as ComissaoItemValorTotal, cm.valor_mov as ComissaoITemValorUnit, cm.qtd_mov as ComissaoItemQtd, iif(((cm.valor_mov - iif(cpl.prc_custo==0,cp.pu_mat,cpl.prc_custo)) * 100) / cm.valor_mov <0,0,((cm.valor_mov - iif(cpl.prc_custo==0.00,cp.pu_mat,cpl.prc_custo)) * 100) / cm.valor_mov) as ComissaoItemPercLucro, IIF(EMPTY(vd.perc_vend), IIF(EMPTY(cp.comissao), NVL(tc.comissao, 0), cp.comissao), vd.perc_vend) as ComissaoItemPercComissao, ROUND(((cm.tot_prod * IIF(EMPTY(vd.perc_vend), IIF(EMPTY(cp.comissao), NVL(tc.comissao, 0), cp.comissao), vd.perc_vend)) / 100), 2) * iif(cm.es_mov='S',1,-1) as ComissaoItemValorComissao, cp.descricao as ComissaoItemDescricao, vd.cod_vend as ComissaoItemVendedor, IIF(!EMPTY(vd.nome), PADR(ALLTRIM(VD.NOME),30,SPACE(1)), PADR(ALLTRIM(VD.COD_VEND),30,SPACE(1))) as ComissaoVendedorNome, cl.codigo as ComissaoClienteCodigo, cl.razao_soc as ComissaoRazaoSocial, ' / / ' as ComissaoDataPagamento FROM cadmov cm INNER JOIN cadmat cp ON cm.grupo = cp.grupo AND cm.referencia = cp.referencia INNER JOIN cplmov cpl ON cm.es_mov = cpl.es_mov AND cm.nota_fisc = cpl.nota_fisc AND cm.tipo_oper = cpl.tipo_oper AND cm.grupo = cpl.grupo AND cm.referencia = cpl.referencia AND cm.seq = cpl.sequencia INNER JOIN vendedor vd ON cm.cod_vend = vd.cod_vend INNER JOIN clientes cl ON cm.cli_for = cl.codigo INNER JOIN tipos tp ON cm.tipo_oper = tp.tipo LEFT JOIN tcomissao tc ON BETWEEN(ROUND(((cm.valor_mov - iif(cpl.prc_custo=0,cp.pu_mat,cpl.prc_custo)) * 100) / cm.valor_mov, 2), tc.lucroini, tc.lucrofim) WHERE cm.tipo_oper # 'CAN' AND tp.ind_comiss = 'S'