public void RetornoDWHistoricoCompraProdutoMes(int ano, int trimestre) { DataTable dtHistoricoCompraProduto = RepositoryService.HistoricoComprasProdutoMes.ListarPor(ano.ToString(), trimestre.ToString()); foreach (DataRow item in dtHistoricoCompraProduto.Rows) { int productNumber = 0; if (!Int32.TryParse(item["CD_item"].ToString(), out productNumber)) { continue; } Product produto = RepositoryService.Produto.ObterPor(item["CD_item"].ToString()); if (produto == null) { continue; } HistoricoDeComprasPorProdutoMes historicoCompraProdutoMes = RepositoryService.HistoricoComprasProdutoMes .ObterPor(trimestre, ano, produto.ID.Value, (int)item["CD_Mes"]); if (historicoCompraProdutoMes != null) { historicoCompraProdutoMes.Valor = decimal.Parse(item["Valor"].ToString()); historicoCompraProdutoMes.quantidade = decimal.Parse(item["Qtd"].ToString()); HistoricoDeComprasPorProduto hCompraProduto = RepositoryService.HistoricoComprasProduto .ObterPor(historicoCompraProdutoMes.trimestre, historicoCompraProdutoMes.ano, historicoCompraProdutoMes.produto.Id); if (hCompraProduto != null) { historicoCompraProdutoMes.HistoricoProduto = new Lookup(hCompraProduto.ID.Value, ""); } RepositoryService.HistoricoComprasProdutoMes.Update(historicoCompraProdutoMes); } else { HistoricoDeComprasPorProdutoMes hsCompProdutoMes = new HistoricoDeComprasPorProdutoMes(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline); hsCompProdutoMes.produto = new Lookup(produto.ID.Value, ""); hsCompProdutoMes.quantidade = decimal.Parse(item["Qtd"].ToString()); hsCompProdutoMes.Valor = decimal.Parse(item["Valor"].ToString()); hsCompProdutoMes.mes = int.Parse(item["CD_Mes"].ToString()); hsCompProdutoMes.ano = ano; hsCompProdutoMes.trimestre = trimestre; hsCompProdutoMes.Nome = produto.Codigo.ToString() + " - " + Helper.ConverterMesEnumParaExtenso(item["CD_Mes"].ToString()) + " - " + ano; RepositoryService.HistoricoComprasProdutoMes.Create(hsCompProdutoMes); } } }
public void RetornoDWHistoricoCompraProduto(int ano, int trimestre) { DataTable dtHistoricoCompraProduto = RepositoryService.HistoricoComprasProduto.ListarPor(ano.ToString(), trimestre.ToString()); foreach (DataRow item in dtHistoricoCompraProduto.Rows) { int productNumber = 0; if (!Int32.TryParse(item["CD_item"].ToString(), out productNumber)) { continue; } Product produto = RepositoryService.Produto.ObterPor(item["CD_item"].ToString()); if (produto == null) { continue; } HistoricoDeComprasPorProduto historicoCompraProduto = RepositoryService.HistoricoComprasProduto.ObterPor(trimestre, ano, produto.ID.Value); if (historicoCompraProduto != null) { historicoCompraProduto.Valor = decimal.Parse(item["Valor"].ToString()); historicoCompraProduto.quantidade = decimal.Parse(item["Qtd"].ToString()); if (produto.UnidadeNegocio != null && produto.SubfamiliaProduto != null && produto.Segmento != null && produto.FamiliaProduto != null) { HistoricoComprasSubfamilia hSubFamilia = RepositoryService.HistoricoComprasSubFamilia .ObterPor(produto.UnidadeNegocio.Id, produto.SubfamiliaProduto.Id, produto.Segmento.Id, produto.FamiliaProduto.Id, ano, trimestre); if (hSubFamilia != null) { historicoCompraProduto.SubFamilia = new Lookup(hSubFamilia.ID.Value, ""); } } RepositoryService.HistoricoComprasProduto.Update(historicoCompraProduto); } else { HistoricoDeComprasPorProduto hsCompProduto = new HistoricoDeComprasPorProduto(this.RepositoryService.NomeDaOrganizacao, this.RepositoryService.IsOffline); hsCompProduto.produto = new Lookup(produto.ID.Value, ""); hsCompProduto.quantidade = decimal.Parse(item["Qtd"].ToString()); hsCompProduto.Valor = decimal.Parse(item["Valor"].ToString()); hsCompProduto.ano = ano; hsCompProduto.trimestre = trimestre; hsCompProduto.Nome = produto.Codigo.ToString() + " - " + ano; if (produto.UnidadeNegocio != null && produto.SubfamiliaProduto != null && produto.Segmento != null && produto.FamiliaProduto != null) { HistoricoComprasSubfamilia hSubFamilia = RepositoryService.HistoricoComprasSubFamilia .ObterPor(produto.UnidadeNegocio.Id, produto.SubfamiliaProduto.Id, produto.Segmento.Id, produto.FamiliaProduto.Id, ano, trimestre); if (hSubFamilia != null) { hsCompProduto.SubFamilia = new Lookup(hSubFamilia.ID.Value, ""); } } RepositoryService.HistoricoComprasProduto.Create(hsCompProduto); } } }