public List<Embalagem> cargaEmbalagensProduto(int codigoProposta) { sql01 = new StringBuilder(); List<Embalagem> listaEmbalagens = new List<Embalagem>(); 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 Embalagem(Convert.ToInt32(dr["codigoEMBALAGEMPRODUTO"]), (string)dr["nomeEMBALAGEMPRODUTO"], Convert.ToInt32(dr["produtoEMBALAGEMPRODUTO"]), Convert.ToDouble(dr["quantidadeEMBALAGEMPRODUTO"]), (Embalagem.PadraoEmbalagem)dr["padraoEMBALAGEMPRODUTO"], 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 List<Embalagem> carregarEmbalagensProduto(Produto produto) { Embalagem objEmbalagem = null; List<Embalagem> listaEmbalagens = new List<Embalagem>(); sql01 = new StringBuilder(); sql01.Append(" SELECT TB_PROP.codigoPROPOSTA, TB_EMB.codigoEMBALAGEM, TB_EMB.nomeEMBALAGEM, TB_EMB.produtoEMBALAGEM, TB_EMB.quantidadeEMBALAGEM, TB_EMB.padraoEMBALAGEM, "); sql01.Append(" TB_EMB.embalagemEMBALAGEM, TB_EMB.ean13EMBALAGEM, TB_PROP.numeroPROPOSTA, TB_PROP.codigopickingmobilePROPOSTA, COUNT(*) AS TLINHAS"); sql01.Append(" FROM tb0002_ItensProposta AS TB_ITEM INNER JOIN"); sql01.Append(" tb0001_Propostas AS TB_PROP ON TB_ITEM.propostaITEMPROPOSTA = TB_PROP.codigoPROPOSTA INNER JOIN"); sql01.Append(" tb0005_Embalagens AS TB_EMB ON TB_ITEM.codigoprodutoITEMPROPOSTA = TB_EMB.produtoEMBALAGEM"); sql01.Append(" GROUP BY TB_PROP.codigoPROPOSTA, TB_EMB.codigoEMBALAGEM, TB_EMB.nomeEMBALAGEM, TB_EMB.produtoEMBALAGEM, TB_EMB.quantidadeEMBALAGEM, TB_EMB.padraoEMBALAGEM, "); sql01.Append(" TB_EMB.embalagemEMBALAGEM, TB_EMB.ean13EMBALAGEM, TB_PROP.numeroPROPOSTA, TB_PROP.codigopickingmobilePROPOSTA"); sql01.AppendFormat(" HAVING (TB_EMB.produtoEMBALAGEM = {0})", produto.CodigoProduto); SqlCeDataReader dr = CeSqlServerConn.fillDataReaderCe(sql01.ToString()); while ((dr.Read())) { objEmbalagem = new Embalagem(Convert.ToInt32(dr["codigoEMBALAGEM"]), (string)dr["nomeEMBALAGEM"], Convert.ToInt32(dr["produtoEMBALAGEM"]), Convert.ToDouble(dr["quantidadeEMBALAGEM"]) , (Embalagem.PadraoEmbalagem)Convert.ToInt32(dr["padraoEMBALAGEM"]), Convert.ToInt32(dr["embalagemEMBALAGEM"]), (string)dr["ean13EMBALAGEM"]); listaEmbalagens.Add(objEmbalagem); } return listaEmbalagens; }