SELECT	e.nome AS empresa,
	UPPER(u.nome) AS usuario_operador,
	fr.denominacao AS forma_recebimento,
	lv.titulo AS titulo_tipo_movimento,
	mnt.data_comprovante AS data_comprovante,
	SUM(mnt.valor_movimento) AS valor_movimento,
	mnt.observacao
FROM	movimento_numerario_terminal AS mnt
	INNER JOIN movimento_venda_terminal AS mvt ON (mvt.id_movimento_venda_terminal = mnt.id_movimento_venda_terminal)
	INNER JOIN forma_recebimento AS fr ON (fr.id_forma_recebimento = mnt.id_forma_recebimento)
	INNER JOIN sis_empresa AS e ON (e.id_empresa = mvt.id_empresa)
	INNER JOIN sis_usuario AS u ON (u.id_usuario = mvt.id_usuario)
	LEFT OUTER JOIN sis_opcao_lista_valor AS lv ON (lv.id = mnt.tipo_movimento AND lv.id_lista_valor = 'BFDDF9F1E7A448FB8D15E1C5855BB7B8')
WHERE	mvt.id_empresa IN (:IdEmpresaMultSlc)AND
	DATE(mnt.data_comprovante) BETWEEN :DataInicial AND :DataFinal
AND	(:IdFormaRecebimento = -1 OR mnt.id_forma_recebimento = :IdFormaRecebimento)
AND	(:IdUsuarioOperador = -1 OR mvt.id_usuario = :IdUsuarioOperador)
AND	(:ListaTipoMovimento2 = -1 OR mnt.tipo_movimento = :ListaTipoMovimento2)
AND	mnt.cancelado = 'N'
GROUP BY e.nome,
	u.nome,
	fr.denominacao,
	lv.titulo,
	mnt.observacao,
	mnt.data_comprovante
ORDER BY e.nome,
	usuario_operador,
	forma_recebimento,
	data_comprovante