Ejemplo n.º 1
0
 public decimal ConvertUnid(string vCD_Unid_Orig,
                            string vCD_Unid_Dest,
                            decimal vVl_Orig)
 {
     if (string.IsNullOrEmpty(vCD_Unid_Dest) || string.IsNullOrEmpty(vCD_Unid_Orig))
     {
         return(decimal.Zero);
     }
     if (vCD_Unid_Orig != vCD_Unid_Dest)
     {
         TList_CadConvUnidade lConvUnid = Select(
             new TpBusca[]
         {
             new TpBusca()
             {
                 vNM_Campo = "a.cd_unidade_orig",
                 vOperador = "=",
                 vVL_Busca = "'" + vCD_Unid_Orig.Trim() + "'"
             },
             new TpBusca()
             {
                 vNM_Campo = "a.cd_unidade_dest",
                 vOperador = "=",
                 vVL_Busca = "'" + vCD_Unid_Dest.Trim() + "'"
             }
         }, 0, string.Empty);
         if (lConvUnid.Count > 0)
         {
             if (vCD_Unid_Dest.Trim().Equals(string.Empty))
             {
                 throw new Exception("ERRO: Conversão de Unidade destino Inválida ou vazia !");
             }
             if (vCD_Unid_Orig.Trim().Equals(string.Empty))
             {
                 throw new Exception("ERRO: Conversão de Unidade origem Inválida ou vazia !");
             }
             if (lConvUnid[0].ST_Fator.Trim() == "*")
             {
                 return(vVl_Orig * lConvUnid[0].VL_Indice);
             }
             else if (lConvUnid[0].ST_Fator.Trim() == "/")
             {
                 return(vVl_Orig / lConvUnid[0].VL_Indice);
             }
             else
             {
                 throw new Exception("ERRO: Conversão de Unidades operador de conversão cadastrado para a unidade é inválido !");
             }
         }
         else
         {
             throw new Exception("ERRO: Não foi encontrado nenhuma conversão de unidade para un orig: " + vCD_Unid_Orig + " e dest: " + vCD_Unid_Dest + "!");
         }
     }
     else
     {
         return(vVl_Orig);
     }
 }
Ejemplo n.º 2
0
        public TList_CadConvUnidade Select(TpBusca[] vBusca, Int32 vTop, string vNM_Campo)
        {
            TList_CadConvUnidade lista = new TList_CadConvUnidade();
            bool podeFecharBco         = false;

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

            try
            {
                while (reader.Read())
                {
                    TRegistro_CadConvUnidade reg = new TRegistro_CadConvUnidade();
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_unidade_orig")))
                    {
                        reg.CD_Unidade_Orig = reader.GetString(reader.GetOrdinal("cd_unidade_orig"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("cd_unidade_dest")))
                    {
                        reg.CD_Unidade_Dest = reader.GetString(reader.GetOrdinal("cd_unidade_dest"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("st_fator")))
                    {
                        reg.ST_Fator = reader.GetString(reader.GetOrdinal("st_fator"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("vl_indice")))
                    {
                        reg.VL_Indice = reader.GetDecimal(reader.GetOrdinal("vl_indice"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("st_registro")))
                    {
                        reg.ST_Registro = reader.GetString(reader.GetOrdinal("st_registro"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ds_unidade_orig")))
                    {
                        reg.DS_Unidade_Orig = reader.GetString(reader.GetOrdinal("ds_unidade_orig"));
                    }
                    if (!reader.IsDBNull(reader.GetOrdinal("ds_unidade_dest")))
                    {
                        reg.DS_Unidade_Dest = reader.GetString(reader.GetOrdinal("ds_unidade_dest"));
                    }
                    lista.Add(reg);
                }
            }
            finally
            {
                reader.Close();
                reader.Dispose();
                if (podeFecharBco)
                {
                    this.deletarBanco_Dados();
                }
            }
            return(lista);
        }