示例#1
0
        public TList_PrecoCommodities SelectProdCotacao(string Cd_produto, DateTime?Dt_movimento)
        {
            StringBuilder sql = new StringBuilder();

            sql.AppendLine("select a.cd_produto, a.ds_produto, ");
            sql.AppendLine("Sg_unidade = isnull((select top 1 y.sigla_unidade ");
            sql.AppendLine("                    from tb_gro_precocommodities x ");
            sql.AppendLine("                    inner join tb_est_unidade y ");
            sql.AppendLine("                    on x.cd_unidade = y.cd_unidade ");
            sql.AppendLine("                    where a.cd_produto = x.cd_produto ");
            if (Dt_movimento.HasValue)
            {
                sql.AppendLine("                    and convert(datetime, floor(convert(decimal(30,10), x.dt_preco))) <= '" + Dt_movimento.Value.ToString("yyyyMMdd") + "'");
            }
            sql.AppendLine("                    order by x.dt_preco desc), ''), ");
            sql.AppendLine("vl_precocompra = isnull((select top 1 x.vl_precocompra ");
            sql.AppendLine("                        from tb_gro_precocommodities x ");
            sql.AppendLine("                        where a.cd_produto = x.cd_produto ");
            if (Dt_movimento.HasValue)
            {
                sql.AppendLine("                    and convert(datetime, floor(convert(decimal(30,10), x.dt_preco))) <= '" + Dt_movimento.Value.ToString("yyyyMMdd") + "'");
            }
            sql.AppendLine("                        order by x.dt_preco desc), 0), ");
            sql.AppendLine("vl_precovenda = isnull((select top 1 x.vl_precovenda ");
            sql.AppendLine("                        from tb_gro_precocommodities x ");
            sql.AppendLine("                        where a.cd_produto = x.cd_produto ");
            if (Dt_movimento.HasValue)
            {
                sql.AppendLine("                    and convert(datetime, floor(convert(decimal(30,10), x.dt_preco))) <= '" + Dt_movimento.Value.ToString("yyyyMMdd") + "'");
            }
            sql.AppendLine("                        order by x.dt_preco desc), 0), ");
            sql.AppendLine("dt_preco = isnull((select top 1 x.dt_preco ");
            sql.AppendLine("                        from tb_gro_precocommodities x ");
            sql.AppendLine("                        where a.cd_produto = x.cd_produto ");
            if (Dt_movimento.HasValue)
            {
                sql.AppendLine("                    and convert(datetime, floor(convert(decimal(30,10), x.dt_preco))) <= '" + Dt_movimento.Value.ToString("yyyyMMdd") + "'");
            }
            sql.AppendLine("                        order by x.dt_preco desc), 0), ");
            sql.AppendLine("cd_unidade = isnull((select top 1 x.cd_unidade ");
            sql.AppendLine("                        from tb_gro_precocommodities x ");
            sql.AppendLine("                        where a.cd_produto = x.cd_produto ");
            if (Dt_movimento.HasValue)
            {
                sql.AppendLine("                    and convert(datetime, floor(convert(decimal(30,10), x.dt_preco))) <= '" + Dt_movimento.Value.ToString("yyyyMMdd") + "'");
            }
            sql.AppendLine("                        order by x.dt_preco desc), 0) ");

            sql.AppendLine("from tb_est_produto a ");
            sql.AppendLine("inner join tb_est_tpproduto b ");
            sql.AppendLine("on a.tp_produto = b.tp_produto ");

            sql.AppendLine("where isnull(a.st_registro, 'A') <> 'C' ");
            sql.AppendLine("and isnull(b.st_commodities, 'N') = 'S'");

            if (!string.IsNullOrEmpty(Cd_produto))
            {
                sql.AppendLine("and a.cd_produto = '" + Cd_produto.Trim() + "'");
            }

            TList_PrecoCommodities lista = new TList_PrecoCommodities();
            bool podeFecharBco           = false;

            if (Banco_Dados == null)
            {
                podeFecharBco = CriarBanco_Dados(false);
            }
            SqlDataReader reader = ExecutarBusca(sql.ToString());

            try
            {
                while (reader.Read())
                {
                    TRegistro_PrecoCommodities reg = new TRegistro_PrecoCommodities();
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_produto")))
                    {
                        reg.Cd_produto = reader.GetString(reader.GetOrdinal("cd_produto"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ds_produto")))
                    {
                        reg.Ds_produto = reader.GetString(reader.GetOrdinal("ds_produto"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("Sg_unidade")))
                    {
                        reg.Sg_unidade = reader.GetString(reader.GetOrdinal("Sg_unidade"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("vl_precocompra")))
                    {
                        reg.Vl_precocompra = reader.GetDecimal(reader.GetOrdinal("vl_precocompra"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("vl_precovenda")))
                    {
                        reg.Vl_precovenda = reader.GetDecimal(reader.GetOrdinal("vl_precovenda"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("dt_preco")))
                    {
                        reg.Dt_preco = reader.GetDateTime(reader.GetOrdinal("dt_preco"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_unidade")))
                    {
                        reg.Cd_unidade = reader.GetString(reader.GetOrdinal("cd_unidade"));
                    }

                    lista.Add(reg);
                }
            }
            finally
            {
                reader.Close();
                reader.Dispose();
                if (podeFecharBco)
                {
                    deletarBanco_Dados();
                }
            }
            return(lista);
        }
示例#2
0
        public TList_PrecoCommodities Select(TpBusca[] vBusca, int vTop, string vNM_Campo, string vOrder)
        {
            TList_PrecoCommodities lista = new TList_PrecoCommodities();
            bool podeFecharBco           = false;

            if (Banco_Dados == null)
            {
                podeFecharBco = CriarBanco_Dados(false);
            }
            SqlDataReader reader = ExecutarBusca(SqlCodeBusca(vBusca, Convert.ToInt16(vTop), vNM_Campo, vOrder));

            try
            {
                while (reader.Read())
                {
                    TRegistro_PrecoCommodities reg = new TRegistro_PrecoCommodities();
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_produto")))
                    {
                        reg.Cd_produto = reader.GetString(reader.GetOrdinal("cd_produto"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ds_produto")))
                    {
                        reg.Ds_produto = reader.GetString(reader.GetOrdinal("ds_produto"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_unidadeProd")))
                    {
                        reg.Cd_unidadeProd = reader.GetString(reader.GetOrdinal("cd_unidadeProd"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ds_unidadeProd")))
                    {
                        reg.Ds_unidadeProd = reader.GetString(reader.GetOrdinal("ds_unidadeProd"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("sg_unidadeProd")))
                    {
                        reg.Sg_unidadeProd = reader.GetString(reader.GetOrdinal("sg_unidadeProd"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_unidade")))
                    {
                        reg.Cd_unidade = reader.GetString(reader.GetOrdinal("cd_unidade"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ds_unidade")))
                    {
                        reg.Ds_unidade = reader.GetString(reader.GetOrdinal("ds_unidade"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("sigla_unidade")))
                    {
                        reg.Sg_unidade = reader.GetString(reader.GetOrdinal("sigla_unidade"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("id_preco")))
                    {
                        reg.Id_preco = reader.GetDecimal(reader.GetOrdinal("id_preco"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("dt_preco")))
                    {
                        reg.Dt_preco = reader.GetDateTime(reader.GetOrdinal("dt_preco"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("vl_precocompra")))
                    {
                        reg.Vl_precocompra = reader.GetDecimal(reader.GetOrdinal("vl_precocompra"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("vl_precovenda")))
                    {
                        reg.Vl_precovenda = reader.GetDecimal(reader.GetOrdinal("vl_precovenda"));
                    }

                    lista.Add(reg);
                }
            }
            finally
            {
                reader.Close();
                reader.Dispose();
                if (podeFecharBco)
                {
                    this.deletarBanco_Dados();
                }
            }
            return(lista);
        }