Esempio n. 1
0
        public JogadorDto ConvertRsToObject(Recordset rs)
        {
            Ca020Dto obj = null;

            try
            {
                if (KRecordSet.IsValid(rs))
                {
                    if (rs.RecordCount == 1)
                    {
                        obj = new JogadorDto()
                        {
                            IdJogador                = Convert.ToDouble(rs.Fields["IDJOGADOR"].Value),
                            Nome                     = rs.Fields["NOME"].Value.Trim(),
                            Sobrenome                = rs.Fields["SOBRENOME"].Value.Trim(),
                            Posicao                  = rs.Fields["POSICAO"].Value.Trim(),
                            Idade                    = Convert.ToByte(rs.Fields["IDADE"].Value),
                            Genero                   = Convert.ToChar(rs.Fields["CDEQPTIC"].Value),
                            Altura                   = Convert.Tofloat(rs.Fields["ALTURA"].Value),
                            Peso                     = Convert.Tofloat(rs.Fields["PESO"].Value),
                            GolsMarcados             = Convert.toInt(rs.Fields["GOLSMARCADOS"].Value),
                            NumeroDeJogos            = Convert.toInt(rs.Fields["NUMERODEJOGOS"].Value),
                            QuantidadeCartaoAmarelo  = Convert.toInt(rs.Fields["QUANTIDADECARTAOAMARERLO"].Value),
                            QuantidadeCartaoVermelho = Convert.toInt(rs.Fields["QUANTIDADECARTAOVERMELHO"].Value),
                            QuantidadeExpulsao       = Convert.toInt(rs.Fields["QUANTIDADEEXPULSAO"].Value),
                        };
                    }
                    else if (rs.RecordCount > 1)
                    {
                        throw new DataException("RecordSet passado como parâmetro tem mais de um registro.");
                    }
                }
            }
            catch (KarstenException ke)
            {
                throw new DataException("Ocorreu um erro ao converter RecordSet em objeto.", ke);
            }
            finally
            {
                rs.Close();
                if (!IsParameter)
                {
                    Cn.Close();
                }
            }

            return(obj);
        }
Esempio n. 2
0
        public ADODB.Recordset DefaultSelect(Ca020Dto filtro)
        {
            var sqlSelect = String.Empty;

            try
            {
                Cn.Open();
                sqlSelect  = "SELECT ";
                sqlSelect += "IDJOGADOR AS IDJOGADOR";
                sqlSelect += "NOME AS NOME";
                sqlSelect += "SOBRENOME AS SOBRENOME";
                sqlSelect += "POSICAO AS POSICAO";
                sqlSelect += "IDADE AS IDADE";
                sqlSelect += "CHAR(GENERO) AS GENERO";
                sqlSelect += "ALTURA AS ALTURA";
                sqlSelect += "PESO AS PESO";
                sqlSelect += "GOLSMARCADOS AS GOLSMARCADOS";
                sqlSelect += "NUMERODEJOGOS AS NUMERODEJOGOS";
                sqlSelect += "QUANTIDADECARTAOAMARELO AS QUANTIDADECARTAOAMARELO";
                sqlSelect += "QUANTIDADECARTAOVERMELHO AS QUANTIDADECARTAOVERMELHO";
                sqlSelect += "QUANTIDADEEXPULSAO AS QUANTIDADEEXPULSAO";

                sqlSelect += " FROM TabelaJogador ";

                if (filtro.IdJogador != 0)
                {
                    sqlSelect += " WHERE IDJOGADOR = " + KConvert.ConvDB2(filtro.IdJogador);
                }
                if (!String.IsNullOrWhiteSpace(filtro.Nome))
                {
                    sqlSelect += "  AND NOME  = " + KConvert.ConvDB2(filtro.Nome);
                }

                if (!String.IsNullOrWhiteSpace(filtro.Sobrenome))
                {
                    sqlSelect += "  AND SOBRENOME  >= " + KConvert.ConvDB2(filtro.Sobrenome);
                }

                if (!String.IsNullOrWhiteSpace(filtro.Posicao))
                {
                    sqlSelect += "  AND  Posicao <= " + KConvert.ConvDB2(filtro.Posicao);
                }

                if (!String.IsNullOrWhiteSpace(filtro.Idade))
                {
                    sqlSelect += "  AND Idade  = " + KConvert.ConvDB2(filtro.Idade);
                }

                if (!String.IsNullOrWhiteSpace(filtro.Genero))
                {
                    sqlSelect += "  AND Geneto  = " + KConvert.ConvDB2(filtro.Genero);
                }
                if (filtro.Altura != 0)
                {
                    sqlSelect += " AND Altura = " + KConvert.ConvDB2(filtro.Altura);
                }
                if (filtro.Peso != 0)
                {
                    sqlSelect += " AND Peso = " + KConvert.ConvDB2(filtro.Peso);
                }
                if (filtro.GolsMarcados != 0)
                {
                    sqlSelect += " AND GolsMarcados = " + KConvert.ConvDB2(filtro.GolsMarcados);
                }

                if (!String.IsNullOrWhiteSpace(filtro.NumeroDeJogos))
                {
                    sqlSelect += " AND NumeroDeJogos = " + KConvert.ConvDB2(filtro.NumeroDeJogos);
                }
                if (!String.IsNullOrWhiteSpace(filtro.QuantidadeCartaoAmarelo))
                {
                    sqlSelect += " AND QuantidadeCartaoAmarelo = " + KConvert.ConvDB2(filtro.QuantidadeCartaoAmarelo);
                }
                if (!String.IsNullOrWhiteSpace(filtro.QuantidadeCartaoVermelho))
                {
                    sqlSelect += " AND QuantidadeCartaoVermelho = " + KConvert.ConvDB2(filtro.QuantidadeCartaoVermelho);
                }
                if (!String.IsNullOrWhiteSpace(filtro.QuantidadeExpulsao))
                {
                    sqlSelect += " AND QuantidadeExpulsao = " + KConvert.ConvDB2(filtro.QuantidadeExpulsao);
                }

                sqlSelect += " WITH UR ";

                return(KRecordSet.Open(sqlSelect, Cn));
            }
            catch (Exception ex)
            {
                throw new SQLException(Cn.activeConnection.Errors, sqlSelect, ex);
            }
        }