Exemple #1
0
        /// <summary>
        /// Inicia uma nova instância da classe <see cref="ListaDto"/>.
        /// </summary>
        /// <param name="trocaDevolucao">O objeto com os dados da troca/devolução do banco de dados.</param>
        internal ListaDto(TrocaDevolucao trocaDevolucao)
        {
            this.Id          = (int)trocaDevolucao.IdTrocaDevolucao;
            this.IdPedido    = (int?)trocaDevolucao.IdPedido;
            this.Funcionario = trocaDevolucao.NomeFunc;
            this.Loja        = trocaDevolucao.Loja;
            this.Cliente     = new IdNomeDto
            {
                Id   = (int)trocaDevolucao.IdCliente,
                Nome = trocaDevolucao.NomeCliente,
            };

            this.Tipo = trocaDevolucao.DescrTipo;
            this.DataTrocaDevolucao   = trocaDevolucao.DataTroca;
            this.DataErro             = trocaDevolucao.DataErro;
            this.CreditoGerado        = trocaDevolucao.CreditoGerado;
            this.ValorExcedente       = trocaDevolucao.ValorExcedente;
            this.Situacao             = trocaDevolucao.DescrSituacao;
            this.OrigemTrocaDevolucao = trocaDevolucao.DescrOrigemTrocaDevolucao;
            this.Setor           = trocaDevolucao.Setor;
            this.Descricao       = trocaDevolucao.Descricao;
            this.Observacao      = trocaDevolucao.Obs;
            this.UsuarioCadastro = trocaDevolucao.NomeUsuCad;
            this.Permissoes      = new PermissoesDto
            {
                Editar        = trocaDevolucao.EditEnabled,
                Cancelar      = trocaDevolucao.CancelEnabled,
                LogAlteracoes = LogAlteracaoDAO.Instance.TemRegistro(LogAlteracao.TabelaAlteracao.TrocaDev, trocaDevolucao.IdTrocaDevolucao, null),
            };
        }
Exemple #2
0
        private void MimCaftrinDevolucao_Click(object sender, EventArgs e)
        {
            bool open = false;

            foreach (Form form in this.MdiChildren)
            {
                if (form is TrocaDevolucao)
                {
                    form.BringToFront();
                    open = true;
                }
            }
            if (!open)
            {
                Form tela = new TrocaDevolucao();
                tela.MdiParent = this;
                tela.Show();
            }
        }
Exemple #3
0
        protected void btnConfirmar_Click(object sender, EventArgs e)
        {
            TrocaDevolucao trocaDev = TrocaDevolucaoDAO.Instance.GetElementByPrimaryKey(Glass.Conversoes.StrParaUint(Request["IdTrocaDev"]));

            // Concatena a observação da troca já existente com o motivo do cancelamento
            string motivo = "Motivo do Cancelamento: " + txtMotivo.Text;

            trocaDev.Obs = !String.IsNullOrEmpty(trocaDev.Obs) ? trocaDev.Obs + " " + motivo : motivo;

            // Se o tamanho do campo Obs exceder 300 caracteres, salva apenas os 300 primeiros, descartando o restante
            trocaDev.Obs = trocaDev.Obs.Length > 300 ? trocaDev.Obs.Substring(0, 300) : trocaDev.Obs;

            try
            {
                TrocaDevolucaoDAO.Instance.Cancelar(trocaDev.IdTrocaDevolucao, trocaDev.Obs, ctrlDataEstorno.Data);
            }
            catch (Exception ex)
            {
                Glass.MensagemAlerta.ErrorMsg(null, ex, Page);
                return;
            }

            ClientScript.RegisterClientScriptBlock(this.GetType(), "ok", "window.opener.redirectUrl(window.opener.location.href);closeWindow();", true);
        }
Exemple #4
0
        public void DesvinculaDepositoNaoIdentificado(GDASession sessao, Pedido pedido, LiberarPedido liberarPedido, Acerto acerto,
                                                      ContasReceber contaR, Obra obra, Sinal sinal, TrocaDevolucao trocaDevolucao, DevolucaoPagto devolucaoPagamento,
                                                      uint acertoCheque)
        {
            uint?idPedido         = pedido != null ? pedido.IdPedido : (uint?)null;
            uint?idLiberarPedido  = liberarPedido != null ? liberarPedido.IdLiberarPedido : (uint?)null;
            uint?idAcerto         = acerto != null ? acerto.IdAcerto : (uint?)null;
            uint?idContaR         = contaR != null ? contaR.IdContaR : (uint?)null;
            uint?idObra           = obra != null ? obra.IdObra : (uint?)null;
            uint?idSinal          = sinal != null ? sinal.IdSinal : (uint?)null;
            uint?idTrocaDevolucao = trocaDevolucao != null ? trocaDevolucao.IdTrocaDevolucao : (uint?)null;
            uint?idDevolucaoPagto = devolucaoPagamento != null ? devolucaoPagamento.IdDevolucaoPagto : (uint?)null;
            uint?idAcertoCheque   = acertoCheque > 0 ? acertoCheque : (uint?)null;

            if (!idPedido.HasValue && !idLiberarPedido.HasValue && !idAcerto.HasValue && !idContaR.HasValue && !idObra.HasValue && !idSinal.HasValue &&
                !idTrocaDevolucao.HasValue && !idDevolucaoPagto.HasValue && !idAcertoCheque.HasValue)
            {
                throw new Exception("Nenhuma conta para desvincular informada.");
            }

            string depositos = GetIdsForDesvincular(sessao, idPedido, idLiberarPedido, idAcerto, idContaR, idObra, idSinal, idTrocaDevolucao,
                                                    idDevolucaoPagto, idAcertoCheque);

            if (string.IsNullOrEmpty(depositos))
            {
                return;
            }

            string sql = @"UPDATE deposito_nao_identificado
                           SET idPedido=null, idLiberarPedido=null, idAcerto=null, idContaR=null, idObra=null, idSinal=null,
                               idTrocaDevolucao=null, idDevolucaoPagto=null, idAcertoCheque=null, situacao=" + (int)DepositoNaoIdentificado.SituacaoEnum.Ativo + @"
                           WHERE idDepositoNaoIdentificado in (" + depositos + ")";

            objPersistence.ExecuteCommand(sessao, sql);
        }
Exemple #5
0
        /// <summary>
        /// Faz o vinculo do deposito.
        /// </summary>
        public void VinculaDepositoNaoIdentificado(GDASession sessao, uint idDepositoNaoIdentificado, Pedido pedido, LiberarPedido liberarPedido, Acerto acerto,
                                                   ContasReceber contaR, Obra obra, Sinal sinal, TrocaDevolucao trocaDevolucao, uint?idDevolucaoPagto, uint?idAcertoCheque)
        {
            uint?idPedido         = pedido != null && pedido.IdPedido > 0 ? pedido.IdPedido : (uint?)null;
            uint?idLiberarPedido  = liberarPedido != null ? liberarPedido.IdLiberarPedido : (uint?)null;
            uint?idAcerto         = acerto != null ? acerto.IdAcerto : (uint?)null;
            uint?idContaR         = contaR != null ? contaR.IdContaR : (uint?)null;
            uint?idObra           = obra != null ? obra.IdObra : (uint?)null;
            uint?idSinal          = sinal != null ? sinal.IdSinal : (uint?)null;
            uint?idTrocaDevolucao = trocaDevolucao != null ? trocaDevolucao.IdTrocaDevolucao : (uint?)null;

            if (idDepositoNaoIdentificado == 0)
            {
                throw new Exception("Depósito não informado.");
            }

            if (!idPedido.HasValue && !idLiberarPedido.HasValue && !idAcerto.HasValue && !idContaR.HasValue && !idObra.HasValue && !idSinal.HasValue &&
                !idTrocaDevolucao.HasValue && !idDevolucaoPagto.HasValue && !idAcertoCheque.HasValue)
            {
                throw new Exception("Nenhuma conta para vínculo informada.");
            }

            DepositoNaoIdentificado dni = GetElement(sessao, idDepositoNaoIdentificado);

            if (dni == null)
            {
                throw new Exception("Depósito não encontrado.");
            }

            /* Chamado 56553. */
            if (dni.Situacao != DepositoNaoIdentificado.SituacaoEnum.Ativo)
            {
                throw new Exception("Para que o DNI seja vinculado a um recebimento, ele deve estar na situação Ativo.");
            }

            dni.IdPedido         = idPedido;
            dni.IdLiberarPedido  = idLiberarPedido;
            dni.IdAcerto         = idAcerto;
            dni.IdContaR         = idContaR;
            dni.IdObra           = idObra;
            dni.IdSinal          = idSinal;
            dni.IdTrocaDevolucao = idTrocaDevolucao;
            dni.IdDevolucaoPagto = idDevolucaoPagto;
            dni.IdAcertoCheque   = idAcertoCheque;
            dni.Situacao         = !idDevolucaoPagto.HasValue ? DepositoNaoIdentificado.SituacaoEnum.EmUso : DepositoNaoIdentificado.SituacaoEnum.Ativo;

            Update(sessao, dni);

            uint?idCliente = null;

            // Atualiza o cliente do DNI
            if (idPedido > 0)
            {
                idCliente = pedido.IdCli;
            }
            else if (idLiberarPedido > 0)
            {
                idCliente = liberarPedido.IdCliente;
            }
            else if (idAcerto > 0)
            {
                idCliente = acerto.IdCli;
            }
            else if (idContaR > 0)
            {
                idCliente = contaR.IdCliente;
            }
            else if (idObra > 0)
            {
                idCliente = obra.IdCliente;
            }
            else if (idSinal > 0)
            {
                idCliente = sinal.IdCliente;
            }
            else if (idTrocaDevolucao > 0)
            {
                idCliente = trocaDevolucao.IdCliente;
            }

            if (idCliente > 0)
            {
                objPersistence.ExecuteCommand(sessao, "Update mov_banco Set idCliente=" + idCliente + " Where idDepositoNaoIdentificado=" + dni.IdDepositoNaoIdentificado);
            }
        }
Exemple #6
0
 /// <summary>
 /// (APAGAR: quando alterar para utilizar transação)
 /// </summary>
 public void VinculaDepositoNaoIdentificado(uint idDepositoNaoIdentificado, Pedido pedido, LiberarPedido liberarPedido, Acerto acerto,
                                            ContasReceber contaR, Obra obra, Sinal sinal, TrocaDevolucao trocaDevolucao, uint?idDevolucaoPagto, uint?idAcertoCheque)
 {
     VinculaDepositoNaoIdentificado(null, idDepositoNaoIdentificado, pedido, liberarPedido, acerto,
                                    contaR, obra, sinal, trocaDevolucao, idDevolucaoPagto, idAcertoCheque);
 }
Exemple #7
0
 /// <summary>
 /// Cria o Log de Cancelamento para a troca/devolução.
 /// </summary>
 /// <param name="session"></param>
 /// <param name="trocaDevolucao"></param>
 /// <param name="motivo"></param>
 /// <param name="manual"></param>
 public void LogTrocaDevolucao(GDASession session, TrocaDevolucao trocaDevolucao, string motivo, bool manual)
 {
     InserirLog(session, UserInfo.GetUserInfo.CodUser, LogCancelamento.TabelaCancelamento.TrocaDevolucao,
                trocaDevolucao.IdTrocaDevolucao, trocaDevolucao, motivo, manual);
 }
Exemple #8
0
 /// <summary>
 /// Cria o Log de Cancelamento para a troca/devolução.
 /// </summary>
 /// <param name="trocaDevolucao"></param>
 /// <param name="motivo"></param>
 /// <param name="manual"></param>
 public void LogTrocaDevolucao(TrocaDevolucao trocaDevolucao, string motivo, bool manual)
 {
     LogTrocaDevolucao(null, trocaDevolucao, motivo, manual);
 }
        /// <summary>
        /// Faz o vinculo do deposito.
        /// </summary>
        public void VincularCartaoNaoIdentificado(GDASession sessao, uint idCartaoNaoIdentificado, Pedido pedido, LiberarPedido liberarPedido, Acerto acerto,
                                                  ContasReceber contaR, Obra obra, Sinal sinal, TrocaDevolucao trocaDevolucao, uint?idDevolucaoPagto, uint?idAcertoCheque)
        {
            int?idPedido         = pedido != null && pedido.IdPedido > 0 ? (int)pedido.IdPedido : (int?)null;
            int?idLiberarPedido  = liberarPedido != null ? (int)liberarPedido.IdLiberarPedido : (int?)null;
            int?idAcerto         = acerto != null ? (int)acerto.IdAcerto : (int?)null;
            int?idContaR         = contaR != null ? (int)contaR.IdContaR : (int?)null;
            int?idObra           = obra != null ? (int)obra.IdObra : (int?)null;
            int?idSinal          = sinal != null ? (int)sinal.IdSinal : (int?)null;
            int?idTrocaDevolucao = trocaDevolucao != null ? (int)trocaDevolucao.IdTrocaDevolucao : (int?)null;

            if (idCartaoNaoIdentificado == 0)
            {
                throw new Exception("Cartão não identificado não informado.");
            }

            if (!idPedido.HasValue && !idLiberarPedido.HasValue && !idAcerto.HasValue && !idContaR.HasValue && !idObra.HasValue && !idSinal.HasValue &&
                !idTrocaDevolucao.HasValue && !idDevolucaoPagto.HasValue && !idAcertoCheque.HasValue)
            {
                throw new Exception("Nenhuma conta para vínculo informada.");
            }

            var cni = GetElement(sessao, idCartaoNaoIdentificado);

            if (cni == null)
            {
                throw new Exception("Cartão não identificado não encontrado.");
            }

            cni.IdPedido         = idPedido;
            cni.IdLiberarPedido  = idLiberarPedido;
            cni.IdAcerto         = idAcerto;
            cni.IdContaR         = idContaR;
            cni.IdObra           = idObra;
            cni.IdSinal          = idSinal;
            cni.IdTrocaDevolucao = idTrocaDevolucao;
            cni.IdDevolucaoPagto = (int?)idDevolucaoPagto;
            cni.IdAcertoCheque   = (int?)idAcertoCheque;
            cni.Situacao         = !idDevolucaoPagto.HasValue ? SituacaoCartaoNaoIdentificado.EmUso : SituacaoCartaoNaoIdentificado.Ativo;

            Update(sessao, cni);

            uint?idCliente = null;

            // Atualiza o cliente do DNI
            if (idPedido > 0)
            {
                idCliente = pedido.IdCli;
            }
            else if (idLiberarPedido > 0)
            {
                idCliente = liberarPedido.IdCliente;
            }
            else if (idAcerto > 0)
            {
                idCliente = acerto.IdCli;
            }
            else if (idContaR > 0)
            {
                idCliente = contaR.IdCliente;
            }
            else if (idObra > 0)
            {
                idCliente = obra.IdCliente;
            }
            else if (idSinal > 0)
            {
                idCliente = sinal.IdCliente;
            }
            else if (idTrocaDevolucao > 0)
            {
                idCliente = trocaDevolucao.IdCliente;
            }

            var contas = ContasReceberDAO.Instance.RecuperarContaspeloIdCartaoNaoIdentificado(sessao, cni.IdCartaoNaoIdentificado);

            foreach (var item in contas)
            {
                item.IdCliente        = idCliente.GetValueOrDefault();
                item.IdPedido         = (uint?)idPedido;
                item.IdLiberarPedido  = (uint?)idLiberarPedido;
                item.IdAcerto         = (uint?)idAcerto;
                item.IdContaRRef      = idContaR;
                item.IdObra           = (uint?)idObra;
                item.IdSinal          = (uint?)idSinal;
                item.IdTrocaDevolucao = (uint?)idTrocaDevolucao;
                item.IdDevolucaoPagto = idDevolucaoPagto;
                item.IdAcertoCheque   = idAcertoCheque;

                ContasReceberDAO.Instance.Update(sessao, item);
            }

            var cxDiario = CaixaDiarioDAO.Instance.ObterMovimentacoesPorCartaoNaoIdentificado(sessao, cni.IdCartaoNaoIdentificado);

            foreach (var item in cxDiario)
            {
                item.IdCliente        = idCliente.GetValueOrDefault();
                item.IdPedido         = (uint?)idPedido;
                item.IdLiberarPedido  = (uint?)idLiberarPedido;
                item.IdAcerto         = (uint?)idAcerto;
                item.IdContaR         = (uint?)idContaR;
                item.IdObra           = (uint?)idObra;
                item.IdSinal          = (uint?)idSinal;
                item.IdTrocaDevolucao = (uint?)idTrocaDevolucao;
                item.IdDevolucaoPagto = idDevolucaoPagto;
                item.IdAcertoCheque   = idAcertoCheque;

                CaixaDiarioDAO.Instance.Update(sessao, item);
            }

            var cxGeral = CaixaGeralDAO.Instance.ObterMovimentacoesPorCartaoNaoIdentificado(sessao, cni.IdCartaoNaoIdentificado);

            foreach (var item in cxGeral)
            {
                item.IdCliente        = idCliente.GetValueOrDefault();
                item.IdPedido         = (uint?)idPedido;
                item.IdLiberarPedido  = (uint?)idLiberarPedido;
                item.IdAcerto         = (uint?)idAcerto;
                item.IdContaR         = (uint?)idContaR;
                item.IdObra           = (uint?)idObra;
                item.IdSinal          = (uint?)idSinal;
                item.IdTrocaDevolucao = (uint?)idTrocaDevolucao;
                item.IdDevolucaoPagto = idDevolucaoPagto;
                item.IdAcertoCheque   = idAcertoCheque;

                CaixaGeralDAO.Instance.Update(sessao, item);
            }

            var movs = MovBancoDAO.Instance.ObterMovimentacoesPorCartaoNaoIdentificado(sessao, cni.IdCartaoNaoIdentificado);

            foreach (var item in movs)
            {
                item.IdCliente        = idCliente.GetValueOrDefault();
                item.IdPedido         = (uint?)idPedido;
                item.IdLiberarPedido  = (uint?)idLiberarPedido;
                item.IdAcerto         = (uint?)idAcerto;
                item.IdContaR         = (uint?)idContaR;
                item.IdObra           = (uint?)idObra;
                item.IdSinal          = (uint?)idSinal;
                item.IdTrocaDevolucao = (uint?)idTrocaDevolucao;
                item.IdDevolucaoPagto = idDevolucaoPagto;
                item.IdAcertoCheque   = idAcertoCheque;

                MovBancoDAO.Instance.Update(sessao, item);
            }
        }
Exemple #10
0
        private string Sql(GDASession session, uint idTrocaDevolucao, uint idPedido, int tipo, int situacao, uint idCliente, string nomeCliente, string idsFuncionario,
                           string idsFuncionarioAssociadoCliente, uint idProduto, string dataIni, string dataFim, bool selecionar, bool rptPerdasExternas,
                           int idOrigemTrocaDevolucao, uint idTipoPerda, int idSetor)
        {
            string criterio = "";
            string campos   = selecionar ? @"pt.*, td.idCliente, (pp.qtde-coalesce((select sum(qtde) from produto_trocado pt1 inner join troca_devolucao td1 on 
                (pt1.idTrocaDevolucao=td1.idTrocaDevolucao) where pt1.idProdPed=pt.idProdPed and td1.situacao<>" +
                              (int)TrocaDevolucao.SituacaoTrocaDev.Cancelada + @"),0)) as qtdeProd, p.codInterno, p.descricao as descrProduto, p.custoCompra as custoCompraProduto,
                ep.codInterno as codProcesso, um.codigo as unidade, ea.codInterno as codAplicacao, p.idGrupoProd, p.idSubgrupoProd, '$$$' as criterio" +
                              (rptPerdasExternas ? @", td.idPedido, fpe.nome as nomeConferente, td.descricao as descrTrocaDev, td.idFunc as idFuncTrocaDev, 
                ftd.nome as nomeFuncTrocaDev, c.IdFunc AS IdFuncionarioAssociadoCliente, fc.Nome AS NomeFuncionarioAssociadoCliente" : "") : "count(*)";

            string sql = @"
                select " + campos + @"
                from produto_trocado pt
                    left join troca_devolucao td on (pt.idTrocaDevolucao=td.idTrocaDevolucao)
                    left join produtos_pedido pp on (pt.idProdPed=pp.idProdPed)
                    left join produto p on (pt.idProd=p.idProd)
                    Left Join unidade_medida um On (p.idUnidadeMedida=um.idUnidadeMedida) 
                    left join etiqueta_processo ep on (pt.idProcesso=ep.idProcesso)
                    left join etiqueta_aplicacao ea on (pt.idAplicacao=ea.idAplicacao)" +
                         (rptPerdasExternas ? @"
                    left join pedido_espelho pe on (pp.idPedido=pe.idPedido)
                    left join funcionario fpe on (pe.idFuncConf=fpe.idFunc)
                    left join funcionario ftd on (td.idFunc=ftd.idFunc)
                    left join cliente c on (td.idCliente=c.id_Cli)
                    left join funcionario fc on (c.IdFunc=fc.IdFunc)" : "") + @"
                where 1";

            if (idTrocaDevolucao > 0)
            {
                sql      += " and pt.idTrocaDevolucao=" + idTrocaDevolucao;
                criterio += "Troca/devolução: " + idTrocaDevolucao + "    ";
            }

            if (!String.IsNullOrEmpty(dataIni))
            {
                sql      += " and td.dataTroca>=?dataIni";
                criterio += (!String.IsNullOrEmpty(dataFim) ? "Período: de " + dataIni : "Período: a partir de " + dataIni) + "    ";
            }

            if (!String.IsNullOrEmpty(dataFim))
            {
                sql      += " and td.dataTroca<=?dataFim";
                criterio += (!String.IsNullOrEmpty(dataIni) ? " até " + dataFim : "Período: até " + dataFim) + "    ";
            }

            if (idOrigemTrocaDevolucao > 0)
            {
                sql      += " AND td.IdOrigemTrocaDevolucao = " + idOrigemTrocaDevolucao;
                criterio += "Origem: " + OrigemTrocaDescontoDAO.Instance.ObtemDescricao(session, (uint)idOrigemTrocaDevolucao) + " ";
            }

            if (rptPerdasExternas)
            {
                TrocaDevolucao temp = new TrocaDevolucao();

                if (idPedido > 0)
                {
                    sql      += " and td.idPedido=" + idPedido;
                    criterio += "Pedido: " + idPedido + "    ";
                }

                if (tipo > 0)
                {
                    sql      += " and td.tipo=" + tipo;
                    temp.Tipo = tipo;
                    criterio += "Tipo: " + temp.DescrTipo + "    ";
                }

                if (situacao > 0)
                {
                    sql          += " and td.situacao=" + situacao;
                    temp.Situacao = situacao;
                    criterio     += "Situação: " + temp.DescrSituacao + "    ";
                }

                if (idCliente > 0)
                {
                    sql      += " and td.idCliente=" + idCliente;
                    criterio += "Cliente: " + ClienteDAO.Instance.GetNome(session, idCliente) + "    ";
                }
                else if (!String.IsNullOrEmpty(nomeCliente))
                {
                    string ids = ClienteDAO.Instance.GetIds(session, null, nomeCliente, null, 0, null, null, null, null, 0);
                    sql      += " And c.id_Cli in (" + ids + ")";
                    criterio += "Cliente: " + nomeCliente + "    ";
                }

                if (!String.IsNullOrEmpty(idsFuncionario) && idsFuncionario != "0")
                {
                    sql += " and td.idFunc IN (" + idsFuncionario + ")";
                    var criterioFunc = String.Empty;

                    foreach (var id in idsFuncionario.Split(','))
                    {
                        criterioFunc += FuncionarioDAO.Instance.GetNome(session, Glass.Conversoes.StrParaUint(id)) + "    ";
                    }

                    criterio += "Funcionário: " + criterioFunc;
                }

                if (!String.IsNullOrEmpty(idsFuncionarioAssociadoCliente) && idsFuncionarioAssociadoCliente != "0")
                {
                    sql += " and c.idFunc IN (" + idsFuncionarioAssociadoCliente + ")";
                    var criterioFunc = String.Empty;

                    foreach (var id in idsFuncionarioAssociadoCliente.Split(','))
                    {
                        criterioFunc += FuncionarioDAO.Instance.GetNome(session, Glass.Conversoes.StrParaUint(id)) + "    ";
                    }

                    criterio += "Funcionário Assoc. Cli.: " + criterioFunc;
                }

                if (idProduto > 0)
                {
                    sql      += " and pt.idProd=" + idProduto;
                    criterio += "Produto: " + ProdutoDAO.Instance.GetElement(session, idProduto).Descricao + "    ";
                }

                if (idTipoPerda > 0)
                {
                    sql      += " AND td.idTipoPerda = " + idTipoPerda;
                    criterio += "Tipo Perda: " + TipoPerdaDAO.Instance.GetNome(idTipoPerda) + "  ";
                }

                if (idSetor > 0)
                {
                    sql      += " AND td.idSetor = " + idSetor;
                    criterio += "Setor: " + SetorDAO.Instance.ObtemNomeSetor((uint)idSetor) + "  ";
                }
            }

            return(sql.Replace("$$$", criterio));
        }