/// <summary> /// Preenche um objeto List com informações sobre a proposta que está sendo trabalhada. /// </summary> /// <returns>Objeto List do tipo String com informações da atual proposta na base de dados mobile.</returns> /// <remarks> /// O list contém as seguintes informações /// list.Add(dr["CodProp"].ToString()); /// list.Add(dr["NumProp"].ToString()); /// list.Add(dr["nomeCLIENTE"].ToString()); /// list.Add(dr["qtdPECAS"].ToString()); /// list.Add(dr["qtdITENS"].ToString()); /// </remarks> public List <String> fillInformacoesProposta() { List <String> list = new List <String>(); sql01 = new StringBuilder(); sql01.Append("SELECT PROP.codigoPROPOSTA AS CodProp, PROP.numeroPROPOSTA as NumProp, PROP.razaoclientePROPOSTA AS nomeCLIENTE, "); sql01.Append("SUM(ITEMPROP.quantidadeITEMPROPOSTA) AS qtdPECAS, "); sql01.Append("COUNT(*) AS qtdITENS,PROP.volumesPROPOSTA AS qtdVOLUMES "); sql01.Append("FROM tb0001_Propostas AS PROP "); sql01.Append("INNER JOIN tb0002_ItensProposta AS ITEMPROP ON PROP.codigoPROPOSTA = ITEMPROP.propostaITEMPROPOSTA "); sql01.Append("GROUP BY PROP.codigoPROPOSTA, PROP.numeroPROPOSTA, PROP.razaoclientePROPOSTA,PROP.volumesPROPOSTA"); sql01.ToString(); SqlCeDataReader dr = CeSqlServerConn.fillDataReaderCe(sql01.ToString()); if ((dr.FieldCount > 0)) { while ((dr.Read())) { list.Add(dr["CodProp"].ToString()); list.Add(dr["NumProp"].ToString()); list.Add(dr["nomeCLIENTE"].ToString()); list.Add(dr["qtdPECAS"].ToString()); list.Add(dr["qtdITENS"].ToString()); list.Add(dr["qtdVOLUMES"].ToString()); } } SqlServerConn.closeConn(); return(list); }
/// <summary> /// Recupera a proposta TOP 1 e devolve um objeto do tipo Proposta com as informações resultantes. /// </summary> /// <returns>Objeto do tipo Proposta</returns> public Proposta fillTop1PropostaServidor() { sql01 = new StringBuilder(); sql01.Append("SELECT TOP (1) codigoPROPOSTA,numeroPROPOSTA,dataLIBERACAOPROPOSTA,"); sql01.Append("clientePROPOSTA,razaoEMPRESA,volumesPROPOSTA,codigoPICKINGMOBILE,isinterrompidoPICKINGMOBILE"); sql01.Append(" FROM vwMobile_tb1601_Proposta "); //sql01.Append(" ORDER BY Prioridade ASC,dataLIBERACAOPROPOSTA ASC "); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); while ((dr.Read())) { objProposta = new Proposta(Convert.ToInt64(dr["codigoPROPOSTA"]), (string)dr["numeroPROPOSTA"], (string)dr["dataLIBERACAOPROPOSTA"], Convert.ToInt32(dr["clientePROPOSTA"]), (string)dr["razaoEMPRESA"], Convert.ToInt32(dr["volumesPROPOSTA"]), Convert.ToInt32(dr["codigoPICKINGMOBILE"]), Convert.ToBoolean(dr["isinterrompidoPICKINGMOBILE"])); if (objProposta.IsInterrompido) { objProposta.IsInterrompido = false; } } dr.Close(); SqlServerConn.closeConn(); return(objProposta); }
/// <summary> /// Preenche um objeto do tipo Proposta com todas as suas informações inclusive os itens e detalhes sobre os mesmos /// </summary> /// <returns>Objeto do tipo Proposta</returns> public Proposta fillProposta() { Proposta objProposta = null; List <ProdutoProposta> listProd = new List <ProdutoProposta>(); sql01 = new StringBuilder(); sql01.Append(" SELECT TB_PROP.codigoPROPOSTA, TB_PROP.numeroPROPOSTA, TB_PROP.dataliberacaoPROPOSTA,TB_PROP.clientePROPOSTA, TB_PROP.razaoclientePROPOSTA,TB_PROP.volumesPROPOSTA,TB_PROP.codigopickingmobilePROPOSTA"); sql01.Append(" TB_ITEMPROPOP.codigoITEMPROPOSTA, TB_ITEMPROPOP.propostaITEMPROPOSTA, TB_ITEMPROPOP.quantidadeITEMPROPOSTA, TB_ITEMPROPOP.statusseparadoITEMPROPOSTA,"); sql01.Append(" TB_ITEMPROPOP.lotereservaITEMPROPOSTA, TB_ITEMPROPOP.localloteITEMPROPOSTA, TB_ITEMPROPOP.codigoprodutoITEMPROPOSTA,"); sql01.Append(" TB_PROD.ean13PRODUTO, TB_PROD.partnumberPRODUTO,TB_PROD.descricaoPRODUTO, TB_PROD.identificacaolotePRODUTO, TB_PROD.codigolotePRODUTO, TB_PROD.codigolocalPRODUTO,"); sql01.Append(" TB_PROD.nomelocalPRODUTO"); sql01.Append(" FROM tb0001_Propostas AS TB_PROP "); sql01.Append(" INNER JOIN tb0002_ItensProposta AS TB_ITEMPROPOP ON TB_PROP.codigoPROPOSTA = TB_ITEMPROPOP.propostaITEMPROPOSTA"); sql01.Append(" INNER JOIN tb0003_Produtos AS TB_PROD ON TB_ITEMPROPOP.codigoprodutoITEMPROPOSTA = TB_PROD.codigoPRODUTO"); sql01.Append(" WHERE TB_ITEMPROPOP.statusseparadoITEMPROPOSTA = 0"); sql01.Append(" ORDER BY TB_PROD.nomelocalPRODUTO ASC"); SqlCeDataReader dr = CeSqlServerConn.fillDataReaderCe(sql01.ToString()); int i = 0; if ((dr != null)) { while ((dr.Read())) { i++; if (i == 1) { int statusOrdemSeparacao = Convert.ToInt32(dr["ordemseparacaoimpressaPROPOSTA"]); objProposta = new Proposta(Convert.ToInt64(dr["codigoPROPOSTA"]), (string)dr["numeroPROPOSTA"], (string)dr["dataLIBERACAOPROPOSTA"], Convert.ToInt32(dr["clientePROPOSTA"]), (string)dr["razaoclientePROPOSTA"], Convert.ToInt32(dr["volumesPROPOSTA"]), Convert.ToInt32(dr["codigopickingmobilePROPOSTA"])); } int statusSeparadoItem = Convert.ToInt32(dr["statusseparadoITEMPROPOSTA"]); ProdutoProposta objProdProp = new ProdutoProposta(Convert.ToInt32(dr["codigoITEMPROPOSTA"]), Convert.ToInt32(objProposta.Codigo), Convert.ToDouble(dr["quantidadeITEMPROPOSTA"]), (ProdutoProposta.statusSeparado)statusSeparadoItem, Convert.ToInt32(dr["lotereservaITEMPROPOSTA"]), Convert.ToInt32(dr["codigoprodutoITEMPROPOSTA"]), (string)dr["ean13PRODUTO"], (string)dr["partnumberPRODUTO"], (string)dr["descricaoPRODUTO"], (string)dr["nomelocalPRODUTO"], Convert.ToInt32(dr["codigolotePRODUTO"]), (string)dr["identificacaolotePRODUTO"]); listProd.Add(objProdProp); } objProposta = new Proposta(objProposta, listProd); } SqlServerConn.closeConn(); return(objProposta); }
/// <summary> /// Preenche um objeto list com objetos da classe Produto /// </summary> /// <param name="codigoProposta"></param> /// <returns>Lista de Produtos</returns> public IEnumerable <Produto> fillListProduto(Int32 codigoProposta) { Produto objProd = new Produto(); List <Produto> listProduto = new List <Produto>(); try { sql01 = new StringBuilder(); sql01.Append("SELECT codigoPRODUTO,partnumberPRODUTO,nomePRODUTO,ean13PRODUTO,codigolotePRODUTO,identificacaolotePRODUTO,dbo.fn1211_LocaisLoteProduto(codigoPRODUTO,codigolotePRODUTO) AS nomelocalPRODUTO,pesobrutoPRODUTO"); sql01.AppendFormat(" FROM dbo.fn0003_informacoesProdutos({0})", codigoProposta); sql01.Append(" GROUP BY codigoPRODUTO,partnumberPRODUTO,nomePRODUTO,ean13PRODUTO,codigolotePRODUTO,identificacaolotePRODUTO,dbo.fn1211_LocaisLoteProduto(codigoPRODUTO,codigolotePRODUTO),pesobrutoPRODUTO"); sql01.Append(" ORDER BY nomelocalPRODUTO ASC"); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); while ((dr.Read())) { objProd = new Produto(Convert.ToInt32(dr["codigoPRODUTO"]), (String)dr["ean13PRODUTO"], (String)dr["partnumberPRODUTO"], (String)dr["nomePRODUTO"], (String)dr["nomelocalPRODUTO"], Convert.ToInt64(dr["codigolotePRODUTO"]), (String)dr["identificacaolotePRODUTO"], Convert.ToDouble(dr["pesobrutoPRODUTO"]) ); //Carrega a lista de itens que será retornada ao fim do procedimento. listProduto.Add(objProd); } if (listProduto == null || listProduto.Count == 0) { throw new TitaniumColector.Classes.Exceptions.SqlQueryExceptions("Query não retornou Valor."); } dr.Close(); SqlServerConn.closeConn(); return(listProduto); } catch (SqlQueryExceptions queryEx) { SqlServerConn.closeConn(); StringBuilder sb = new StringBuilder(); sb.AppendFormat("Não foi possível obter informações sobre a proposta {0}", codigoProposta); sb.Append("\nError :" + queryEx.Message); sb.Append("\nFavor contate o administrador do sistema."); MainConfig.errorMessage(sb.ToString(), "Carga Base Mobile."); return(listProduto = null); } catch (Exception) { throw; } }
public List <EmbalagemProduto> cargaEmbalagensProduto(int codigoProposta) { sql01 = new StringBuilder(); List <EmbalagemProduto> listaEmbalagens = new List <EmbalagemProduto>(); try { sql01.Append(" SELECT codigoEMBALAGEMPRODUTO,COALESCE(nomeEMBALAGEMPRODUTO,'ND') AS nomeEMBALAGEMPRODUTO,produtoEMBALAGEMPRODUTO,quantidadeEMBALAGEMPRODUTO,padraoEMBALAGEMPRODUTO,COALESCE(embalagemEMBALAGEMPRODUTO,0) AS embalagemEMBALAGEMPRODUTO,COALESCE(codigobarrasEMBALAGEMPRODUTO,'0000000000000') AS codigobarrasEMBALAGEMPRODUTO "); sql01.Append(" FROM tb0504_Embalagens_Produtos"); sql01.Append(" INNER JOIN tb0501_Produtos ON codigoPRODUTO = produtoEMBALAGEMPRODUTO"); sql01.Append(" WHERE produtoEMBALAGEMPRODUTO IN("); sql01.Append(" SELECT produtoRESERVA AS codigoPRODUTO"); sql01.Append(" FROM tb1206_Reservas (NOLOCK)"); sql01.Append(" INNER JOIN tb1602_Itens_Proposta (NOLOCK) ON codigoITEMPROPOSTA = docRESERVA"); sql01.Append(" INNER JOIN tb0501_Produtos (NOLOCK) ON produtoITEMPROPOSTA = codigoPRODUTO"); sql01.AppendFormat(" WHERE propostaITEMPROPOSTA = {0}", codigoProposta); sql01.Append(" AND tipodocRESERVA = 1602 "); sql01.Append(" AND statusITEMPROPOSTA = 3"); sql01.Append(" AND separadoITEMPROPOSTA = 0"); sql01.Append(" GROUP BY produtoRESERVA"); sql01.Append(" )"); sql01.Append(" AND lixeiraPRODUTO = 0"); sql01.Append(" ORDER BY produtoEMBALAGEMPRODUTO"); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); while ((dr.Read())) { { embalagem = new EmbalagemProduto(Convert.ToInt32(dr["codigoEMBALAGEMPRODUTO"]), (string)dr["nomeEMBALAGEMPRODUTO"], (EmbalagemProduto.PadraoEmbalagem)dr["padraoEMBALAGEMPRODUTO"] , Convert.ToInt32(dr["produtoEMBALAGEMPRODUTO"]), Convert.ToDouble(dr["quantidadeEMBALAGEMPRODUTO"]) , Convert.ToInt32(dr["embalagemEMBALAGEMPRODUTO"]) , (string)dr["codigobarrasEMBALAGEMPRODUTO"]); listaEmbalagens.Add(embalagem); } } dr.Close(); SqlServerConn.closeConn(); if (listaEmbalagens.Count == 0) { throw new SqlQueryExceptions("Não foi possível recuperar informações sobre embalagens para esta proposta : " + codigoProposta); } embalagem = null; return(listaEmbalagens); } catch (Exception ex) { throw ex; } }
public void registrarAcesso(Usuario.statusLogin tipodeAcao) { Int64 retorno = 0; this.StatusLogin = tipodeAcao; Sql01 = new StringBuilder(); switch (tipodeAcao) { case statusLogin.LOGADO: Sql01.Length = 0; //Insere o acesso e inicia a transação Sql01.Append("INSERT INTO tb0207_Acessos (usuarioACESSO, maquinaACESSO)"); Sql01.Append(" VALUES (" + this.Codigo + ",'" + MainConfig.HostName + "')"); SqlServerConn.execCommandSql(Sql01.ToString()); break; case statusLogin.NAOLOGADO: Sql01.Length = 0; Sql01.Append("UPDATE tb0207_Acessos"); Sql01.Append(" SET encerradoACESSO = 1,horaencerramentoACESSO = getdate(),duracaoACESSO = DATEDIFF(MINUTE,horaaberturaACESSO,getDATE())"); Sql01.AppendFormat(" WHERE codigoACESSO = {0}", MainConfig.UserOn.CodigoAcesso); SqlServerConn.execCommandSql(Sql01.ToString()); //return 0; break; default: break; } //Recupera o código do acesso Sql01.Length = 0; Sql01.Append("SELECT MAX(codigoACESSO) AS novoACESSO"); Sql01.Append(" FROM tb0207_Acessos"); System.Data.SqlClient.SqlDataReader dr = SqlServerConn.fillDataReader(Sql01.ToString()); if ((dr.FieldCount > 0)) { while ((dr.Read())) { retorno = (Int32)dr["novoACESSO"]; } } SqlServerConn.closeConn(); dr.Close(); this.CodigoAcesso = retorno; //return retorno; }
/// <summary> /// Efetua carga na base mobile tb0001_Propostas com informações sobre a /// proposta top1 atualmente liberada no picking /// </summary> /// <param name="cat">Gatinho do método. </param> /// <remarks>Após realizar a consulta realiza a carga dos dados na base mobile tabela TB0001_Propostas</remarks> public void insertTop1PropostaServidor(String cat) { sql01 = new StringBuilder(); sql01.Append("SELECT codigoPROPOSTA,numeroPROPOSTA,dataLIBERACAOPROPOSTA,"); sql01.Append("clientePROPOSTA,razaoEMPRESA,volumesPROPOSTA"); sql01.Append(" FROM vwMobile_tb1601_Proposta "); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); if ((dr.FieldCount > 0)) { while ((dr.Read())) { this.insertProposta(Convert.ToInt64(dr["codigoPROPOSTA"]), (string)dr["numeroPROPOSTA"], (string)dr["dataLIBERACAOPROPOSTA"], Convert.ToInt32(dr["clientePROPOSTA"]), (string)dr["razaoEMPRESA"], Convert.ToInt32(dr["volumesPROPOSTA"]), MainConfig.CodigoUsuarioLogado); } } dr.Close(); SqlServerConn.closeConn(); }
public String recuperarLocalEstoqueProduto(int produto, int lote) { string nomesLocais = ""; sql01 = new StringBuilder(); sql01.Append(" SELECT nomeLOCAL "); sql01.Append(" FROM tb1205_Lotes "); sql01.Append(" INNER JOIN tb1212_Lotes_Locais ON codigoLOTE = loteLOTELOCAL "); sql01.Append(" INNER JOIN tb1211_Locais ON codigoLOCAL = localLOTELOCAL "); sql01.AppendFormat(" WHERE produtoLOTE ={0} AND codigoLOTE = {1} ", produto, lote); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); while ((dr.Read())) { nomesLocais += dr["nomeLOCAL"]; } dr.Close(); SqlServerConn.closeConn(); return(nomesLocais); }
/// <summary> /// Carrega uma List com objetos da classe ItemProposta preenchida com dados sobre os itens de uma determinada Proposta /// </summary> /// <param name="codigoProposta">Código da proposta da qual serão recuperados os itens.</param> /// <returns>List do tipo ProdutoProposta </returns> public IEnumerable <ProdutoProposta> fillListItensProposta(int codigoProposta) { Produto objItemProposta = null; List <ProdutoProposta> listItensProposta = new List <ProdutoProposta>(); try { sql01 = new StringBuilder(); sql01.Append(" SELECT codigoITEMPROPOSTA,propostaITEMPROPOSTA,"); sql01.Append(" produtoRESERVA AS codigoPRODUTO,"); sql01.Append(" nomePRODUTO,partnumberPRODUTO,ean13PRODUTO,"); sql01.Append(" SUM(quantidadeRESERVA) AS QtdITEMRESERVA,pesobrutoPRODUTO"); sql01.Append(" ,dbo.fn1211_LotesReservaProduto(produtoRESERVA,propostaITEMPROPOSTA) AS lotesRESERVA"); sql01.Append(" ,dbo.fn1211_LocaisLoteProduto(produtoRESERVA,dbo.fn1211_LotesReservaProduto(produtoRESERVA,propostaITEMPROPOSTA)) AS nomesLocaisLOTES "); sql01.Append(" FROM tb1206_Reservas (NOLOCK) "); sql01.Append(" INNER JOIN tb1602_Itens_Proposta (NOLOCK) ON codigoITEMPROPOSTA = docRESERVA "); sql01.Append(" INNER JOIN tb0501_Produtos (NOLOCK) ON produtoITEMPROPOSTA = codigoPRODUTO "); sql01.AppendFormat(" WHERE propostaITEMPROPOSTA = {0} ", codigoProposta); sql01.Append(" AND tipodocRESERVA = 1602"); sql01.Append(" AND statusITEMPROPOSTA = 3"); sql01.Append(" AND separadoITEMPROPOSTA = 0"); sql01.Append(" GROUP BY codigoITEMPROPOSTA,propostaITEMPROPOSTA,ean13PRODUTO,produtoRESERVA,nomePRODUTO,partnumberPRODUTO,pesobrutoPRODUTO"); sql01.Append(" ORDER BY codigoPRODUTO"); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); while ((dr.Read())) { { objItemProposta = new ProdutoProposta(Convert.ToInt32(dr["codigoITEMPROPOSTA"]), Convert.ToInt32(dr["propostaITEMPROPOSTA"]), Convert.ToDouble(dr["QtdITEMRESERVA"]), ProdutoProposta.statusSeparado.NAOSEPARADO, (string)dr["lotesRESERVA"], (string)dr["nomesLocaisLOTES"], Convert.ToInt32(dr["codigoPRODUTO"]), (string)dr["ean13PRODUTO"], (string)dr["partnumberPRODUTO"], (string)(dr["nomePRODUTO"]), Convert.ToDouble(dr["pesobrutoPRODUTO"])); //Carrega a lista de itens que será retornada ao fim do procedimento. listItensProposta.Add((ProdutoProposta)objItemProposta); } } dr.Close(); SqlServerConn.closeConn(); if (listItensProposta.Count == 0) { throw new SqlQueryExceptions("MÉTODO : fillListItensProposta()\nMOTIVO: Não foi possível recuperar informações sobre os itens da proposta " + codigoProposta); } return(listItensProposta); } catch (SqlException ex) { throw new Exception("fillListItensProposta()\n-->" + ex.Message); } }
/// <summary> /// Carrega uma List com objetos da classe ItemProposta preenchida com dados sobre os itens de uma determinada Proposta /// </summary> /// <param name="codigoProposta">Código da proposta da qual serão recuperados os itens.</param> /// <returns>List do tipo ItemProposta </returns> public IEnumerable <ProdutoProposta> fillListItensProposta(int codigoProposta) { ProdutoProposta objItemProposta = null; List <ProdutoProposta> listItensProposta = new List <ProdutoProposta>(); try { sql01 = new StringBuilder(); ///ALTERADO EM CRITERIO DE TESTES PARA RETORNAR MAIS INFORMAÇOES SOBRE O PRODUTO DA PROPOSTA /// //sql01.Append("SELECT codigoITEMPROPOSTA,propostaITEMPROPOSTA,produtoRESERVA AS codigoPRODUTO,nomePRODUTO,partnumberPRODUTO,"); //sql01.Append("ean13PRODUTO,SUM(quantidadeRESERVA) AS QTD"); //sql01.Append(" FROM tb1206_Reservas (NOLOCK) "); //sql01.Append("INNER JOIN tb1602_Itens_Proposta (NOLOCK) ON codigoITEMPROPOSTA = docRESERVA "); //sql01.Append("INNER JOIN tb0501_Produtos (NOLOCK) ON produtoITEMPROPOSTA = codigoPRODUTO "); //sql01.Append("LEFT JOIN tb1212_Lotes_Locais (NOLOCK) ON loteRESERVA = loteLOTELOCAL "); //sql01.Append("LEFT JOIN tb1211_Locais ON codigoLOCAL = localLOTELOCAL "); //sql01.AppendFormat("WHERE propostaITEMPROPOSTA = {0} ", codigoProposta); //sql01.Append("AND tipodocRESERVA = 1602 "); //sql01.Append("AND statusITEMPROPOSTA = 3 "); //sql01.Append("AND separadoITEMPROPOSTA = 0 "); //sql01.Append("GROUP BY codigoITEMPROPOSTA,propostaITEMPROPOSTA,ean13PRODUTO,produtoRESERVA,produtoITEMPROPOSTA,"); //sql01.Append("nomePRODUTO,partnumberPRODUTO"); sql01.Append(" SELECT codigoITEMPROPOSTA,propostaITEMPROPOSTA,"); sql01.Append(" produtoRESERVA AS codigoPRODUTO,"); sql01.Append(" nomePRODUTO,partnumberPRODUTO,ean13PRODUTO,"); sql01.Append(" SUM(quantidadeRESERVA) AS QTD,pesobrutoPRODUTO,SUM(quantidadeRESERVA) * pesobrutoPRODUTO AS pesobrutototalPRODUTO"); sql01.Append(" ,dbo.fn1211_LotesReservaProduto(produtoRESERVA,propostaITEMPROPOSTA) AS lotesRESERVA,"); sql01.Append(" DBO.fn1211_LocaisLoteProduto(produtoRESERVA,dbo.fn1211_LotesReservaProduto(produtoRESERVA,propostaITEMPROPOSTA)) AS nomesLocaisLOTES "); sql01.Append(" FROM tb1206_Reservas (NOLOCK) "); sql01.Append(" INNER JOIN tb1602_Itens_Proposta (NOLOCK) ON codigoITEMPROPOSTA = docRESERVA "); sql01.Append(" INNER JOIN tb0501_Produtos (NOLOCK) ON produtoITEMPROPOSTA = codigoPRODUTO "); sql01.AppendFormat(" WHERE propostaITEMPROPOSTA = {0} ", codigoProposta); sql01.Append(" AND tipodocRESERVA = 1602"); sql01.Append(" AND statusITEMPROPOSTA = 3"); sql01.Append(" AND separadoITEMPROPOSTA = 0"); sql01.Append(" GROUP BY codigoITEMPROPOSTA,propostaITEMPROPOSTA,ean13PRODUTO,produtoRESERVA,nomePRODUTO,partnumberPRODUTO,pesobrutoPRODUTO"); sql01.Append(" ORDER BY codigoPRODUTO"); SqlDataReader dr = SqlServerConn.fillDataReader(sql01.ToString()); while ((dr.Read())) { { objItemProposta = new ProdutoProposta(Convert.ToInt32(dr["codigoITEMPROPOSTA"]), Convert.ToInt32(dr["propostaITEMPROPOSTA"]), Convert.ToDouble(dr["QTD"]), ProdutoProposta.statusSeparado.NAOSEPARADO, (string)dr["lotesRESERVA"], (string)dr["nomesLocaisLOTES"], Convert.ToInt32(dr["codigoPRODUTO"]), (string)dr["ean13PRODUTO"], (string)dr["partnumberPRODUTO"], (string)(dr["nomePRODUTO"]), Convert.ToDouble(dr["pesobrutoPRODUTO"])); //Carrega a lista de itens que será retornada ao fim do procedimento. listItensProposta.Add(objItemProposta); } } dr.Close(); SqlServerConn.closeConn(); if (listItensProposta.Count == 0) { throw new SqlQueryExceptions("Não foi possível recuperar informações sobre os itens da proposta " + codigoProposta); } return(listItensProposta); } catch (SqlQueryExceptions ex) { throw ex; } catch (SqlException ex) { throw ex; } }