public DataTable BuscaString(string produto, string data, string lote, string lote2, int ajuste, int saida) { DAORegistro dao = new DAORegistro(cx); try { if (data == string.Empty && lote2 == string.Empty) { return(dao.LocalizaPorString(produto, data, lote, ajuste, saida)); } else if (lote2 != string.Empty) { return(dao.Localiza2Lotes(produto, data, lote, lote2, ajuste, saida)); } else { return(dao.LocalizaPorString(produto, Convert.ToDateTime(data).ToString("yyyy-MM-dd 00:00:00"), lote, ajuste, saida)); } } catch { MessageBox.Show("Dados nao encontrados!", "Operação Invalida", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(null); } }
} //RETORNA UM PRODUTO COM SEU ESTOQUE ATUAL public Queue <ModelCalculaLotes> CalculaLotes(int cod_produto) { DAOLotes lote = new DAOLotes(cx); DAORegistro registro = new DAORegistro(cx); Queue <ModelCalculaLotes> filaAux = new Queue <ModelCalculaLotes>(); filaLotes = lote.LocalizarLotes(cod_produto); //SAIDAS DOS PRODUTOS filaRegistros = registro.LocalizarRegistro(cod_produto); //ENTRADAS DOS PRODUTOS foreach (var item in filaRegistros) { foreach (var item2 in filaLotes) { item.Id_lote = item2.Id_lote; if (item2.lote.Equals(item.lote)) { item.total += item2.quantidade; } } if (item.total < item.quantidade) { item.restante = item.quantidade - item.total; filaAux.Enqueue(item); } } return(filaAux); }
private void button3_Click(object sender, EventArgs e) { //int cod = 994; DAOKpi daok = new DAOKpi(); DAORegistro daor = new DAORegistro(); for (int i = 986; i >= 970; i--) { DataTable dt = daok.ObtenerKPI(i); Kpi kpi = new Kpi(); foreach (DataRow rw in dt.Rows) { kpi.IndCod_KPIDivision = i + 2; kpi.Ind_KPIDivision = rw[1].ToString(); kpi.Ind_KPIDivisionAbrev = rw[2].ToString(); kpi.Ind_KPIDivisionEstado = rw[3].ToString(); kpi.Ind_KPIDivisionCodUni = rw[4].ToString(); kpi.Ind_KPITipoData = rw[5].ToString(); kpi.Ind_SLA = (decimal)Decimal.Parse(rw[6].ToString()); kpi.IndCod_KPIGen = (int)Int32.Parse(rw[7].ToString()); kpi.Cod_sociedad = (int)Int32.Parse(rw[8].ToString()); kpi.Ind_KPIDivisionTipo = rw[9].ToString(); kpi.Uni_falla = (decimal)Decimal.Parse(rw[10].ToString()); kpi.Tas_multa = (decimal)Decimal.Parse(rw[11].ToString()); } daok.insertKPICompleto(kpi); daor.updateRegistros(i, i + 2); daok.deleteKPI(i); } MessageBox.Show("Fin"); }
private void button2_Click(object sender, EventArgs e) { List <Registro> newregistros = new List <Registro>(); DAORegistro dao = new DAORegistro(); foreach (DataGridViewRow row in dataGridView1.Rows) { Registro nuevo = new Registro(); nuevo.Fecha_registro = dateTimePicker1.Value; nuevo.Periodo_registro = dateTimePicker1.Value.ToString("yyyyMM"); nuevo.IndCod_KPIDivision = (int)Int32.Parse(row.Cells[0].Value.ToString()); nuevo.Valor_registro = calcularValorRegistro(row.Cells[4].Value.ToString()); if (nuevo.Valor_registro != null) { nuevo.Valor_penalidad = calcularPenalidad(nuevo); } dao.insertRegistro(nuevo); } MessageBox.Show("Termino!"); this.Close(); }
private void button2_Click(object sender, EventArgs e) { List <Registro> newregistros = new List <Registro>(); DAORegistro dao = new DAORegistro(); foreach (DataGridViewRow row in dataGridView1.Rows) { Registro nuevo = new Registro(); nuevo.Fecha_registro = dateTimePicker1.Value; nuevo.Periodo_registro = dateTimePicker1.Value.ToString("yyyyMM"); nuevo.IndCod_KPIDivision = (int)Int32.Parse(row.Cells[0].Value.ToString()); nuevo.Valor_registro = calcularValorRegistro(row.Cells[4].Value.ToString()); dao.insertRegistro(nuevo); } DAOKpi daok = new DAOKpi(); DataTable dti = daok.ListarSLAGMDBinarios("Informe"); DataTable dtr = daok.ListarSLAGMDBinarios("Reunión"); foreach (DataRow rw in dti.Rows) { Registro nuevo = new Registro(); nuevo.Fecha_registro = dateTimePicker1.Value; nuevo.Periodo_registro = dateTimePicker1.Value.ToString("yyyyMM"); nuevo.IndCod_KPIDivision = (int)Int32.Parse(rw[0].ToString()); if (checkBox1.Checked) { nuevo.Valor_registro = 1; } else { nuevo.Valor_registro = 0; } dao.insertRegistro(nuevo); } foreach (DataRow rw in dtr.Rows) { Registro nuevo = new Registro(); nuevo.Fecha_registro = dateTimePicker1.Value; nuevo.Periodo_registro = dateTimePicker1.Value.ToString("yyyyMM"); nuevo.IndCod_KPIDivision = (int)Int32.Parse(rw[0].ToString()); if (checkBox2.Checked) { nuevo.Valor_registro = 1; } else { nuevo.Valor_registro = 0; } dao.insertRegistro(nuevo); } MessageBox.Show("Termino!"); this.Close(); }
public int Update(int id, Registro registro) { int result = 0; daoRegistro = new DAORegistro(); result = daoRegistro.Update(id, registro); return(result); }
public int calcularConsecutivos(Kpi kpi) { DAORegistro daoregistro = new DAORegistro(); DataTable dtregistro = daoregistro.MostrarRegistroxKPI(kpi.IndCod_KPIDivision.Value); List <Registro> listaregistro = new List <Registro>(); foreach (DataRow rw in dtregistro.Rows) { Registro reg = new Registro(); reg.Fecha_registro = DateTime.ParseExact(rw[0].ToString(), "yyyy-MM-dd HH:mm:ss", null); reg.Periodo_registro = rw[1].ToString(); reg.IndCod_KPIDivision = (int)Int32.Parse(rw[2].ToString()); if (!rw[3].ToString().Equals("")) { reg.Valor_registro = (decimal)Decimal.Parse(rw[3].ToString()); } if (!rw[4].ToString().Equals("")) { reg.Valor_penalidad = (decimal)Decimal.Parse(rw[4].ToString()); } listaregistro.Add(reg); } int meses = 0; for (int i = listaregistro.Count - 1; i >= 0; i--) { if (kpi.Ind_KPIDivisionTipo.Equals("Porcentaje")) { if (listaregistro[i].Valor_registro < kpi.Ind_SLA) { break; } } else { if (listaregistro[i].Valor_registro > kpi.Ind_SLA) { break; } } meses++; } return(meses); }
} //RETORNA UMA LISTA COM TODOS OS PRODUTOS E SEU ESTOQUE ATUAL public static double CalculaEstoque(int id) { double aux = 0, aux2 = 0; //LISTA PARA OS REGISTROS List <ModelRegistro> lista = new List <ModelRegistro>(); DAORegistro dao = new DAORegistro(cx); ModelRegistro registro = new ModelRegistro(); lista.Clear(); aux = 0; aux2 = 0; DataTable estoque = dao.LocalizaRegistros(id); //LOOP PARA JOGAR O DATATABLE EM UMA LISTA foreach (DataRow item in estoque.Rows) { registro = new ModelRegistro(); registro.Id_produto = Convert.ToInt32(item["Fk_produto"].ToString()); registro.qtd_produto = Convert.ToDouble(item["qtd_produto"].ToString()); registro.tipo_operacao = int.Parse(item["tipo_operacao"].ToString()); lista.Add(registro); } //FIM LOOP //LOOP PARA SEPARAR A ENTRADA E SAIDA E FAZAER O CALCULO DE CADA UM foreach (var item in lista) { if (item.tipo_operacao == 0) //SE FOR ENTRADA { aux = aux + item.qtd_produto; } if (item.tipo_operacao == 1) //SE FOR SAIDA { aux2 = aux2 + item.qtd_produto; } } return(aux - aux2); //FIM DO LOOP } //RETORNA UM PRODUTO COM SEU ESTOQUE ATUAL
public static List <ModelProduto> BuscaDados(int ope, string valor) { try { double aux = 0, aux2 = 0; //LISTA PARA OS REGISTROS List <ModelRegistro> listaRegistro = new List <ModelRegistro>(); ModelRegistro registro; DAORegistro dao = new DAORegistro(cx); ModelProduto modProduto; DAOProduto produto = new DAOProduto(cx); List <ModelProduto> Lista = new List <ModelProduto>(); DataTable TabelaProdutos; TabelaProdutos = produto.LocalizaDadosParaCalcularEstoque(ope, valor); //LOOP PARA JOGAR O DATATABLE EM UMA LISTA foreach (DataRow item in TabelaProdutos.Rows) { modProduto = new ModelProduto(); modProduto.Id_produto = Convert.ToInt32(item["ID PRODUTO"].ToString()); modProduto.DscProduto = item["PRODUTO"].ToString(); modProduto.qtd_minimo = Convert.ToInt32(item["QTD.MINIMO"].ToString()); Lista.Add(modProduto); } //LOOP PARA FAZER O CALCULO DE TODOS OS PRODUTOS foreach (var lisProdutos in Lista) { listaRegistro.Clear(); aux = 0; aux2 = 0; DataTable estoque = dao.LocalizaRegistros(lisProdutos.Id_produto); //LOOP PARA JOGAR O DATATABLE EM UMA LISTA foreach (DataRow item in estoque.Rows) { registro = new ModelRegistro(); registro.Id_produto = Convert.ToInt32(item["Fk_produto"].ToString()); registro.qtd_produto = Convert.ToDouble(item["qtd_produto"].ToString()); registro.tipo_operacao = int.Parse(item["tipo_operacao"].ToString()); listaRegistro.Add(registro); } //estoque.Clear(); //FIM LOOP //LOOP PARA SEPARAR A ENTRADA E SAIDA E FAZAER O CALCULO DE CADA UM foreach (var item2 in listaRegistro) { if (item2.tipo_operacao == 0)//SE FOR ENTRADA { aux = aux + item2.qtd_produto; } if (item2.tipo_operacao == 1)//SE FOR SAIDA { aux2 = aux2 + item2.qtd_produto; } } lisProdutos.qtd_estoque = aux - aux2; //FIM DO LOOP } return(Lista); } catch { return(null); } } //RETORNA UMA LISTA COM TODOS OS PRODUTOS E SEU ESTOQUE ATUAL
private void button1_Click(object sender, EventArgs e) { //List<Registro> listaregistro = new List<Registro>(); MessageBox.Show("Comenzamos La Carga, solo tiene que tener columnas CD, Sede, Empresa y Valor Actual. El excel solo debe tener una hoja."); DAOKpi daok = new DAOKpi(); DAORegistro daor = new DAORegistro(); string Chosen_File = ""; openFileDialog1.Title = "Ingresa la Solicitud"; openFileDialog1.FileName = ""; openFileDialog1.Filter = "Archivos Excel *.xls|*.xls*"; openFileDialog1.ShowDialog(); Chosen_File = openFileDialog1.FileName; Excel.Application xlApp; Excel.Workbook xlWorkBook; if (Chosen_File == "") { MessageBox.Show("No ha Seleccionado ningun Archivo"); } else { //Sentencias Excel object misValue = System.Reflection.Missing.Value; xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Open(Chosen_File, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); int lastRow = -1; foreach (Excel.Worksheet element in xlWorkBook.Worksheets) { lastRow = element.UsedRange.Rows.Count; Excel.Range rango = (Excel.Range)element.get_Range("A2", "D" + lastRow); for (int row = 1; row <= rango.Rows.Count; row++) { Registro reg = new Registro(); //reg.Fecha_registro = monthCalendar1.SelectionStart; reg.Fecha_registro = dateTimePicker1.Value; reg.Periodo_registro = reg.Fecha_registro.Value.ToString("yyyyMM"); reg.IndCod_KPIDivision = daok.ObtenerKPICodxUnicode(rango.Cells[row, 1].Value2.ToString()); if (reg.IndCod_KPIDivision == -1) { MessageBox.Show("El CD " + rango.Cells[row, 1].Value2.ToString() + " no esta registrado"); } else { reg.Valor_registro = (decimal)decimal.Parse(rango.Cells[row, 4].Value2.ToString()); daor.insertRegistro(reg); } } break; } MessageBox.Show("Terminado!"); xlWorkBook.Close(false, misValue, misValue); xlApp.Quit(); releaseObject(xlWorkBook); releaseObject(xlApp); } }
private void button1_Click(object sender, EventArgs e) { DAOKpi daokpi = new DAOKpi(); DAORegistro daoregistro = new DAORegistro(); DataTable dtkpi = daokpi.ListarSLAIBM(); List <Kpi> listakpi = new List <Kpi>(); foreach (DataRow rw in dtkpi.Rows) { Kpi kpi = new Kpi(); kpi.IndCod_KPIDivision = (int)Int32.Parse(rw[0].ToString()); kpi.Ind_KPIDivision = rw[1].ToString(); kpi.Ind_KPIDivisionAbrev = rw[2].ToString(); kpi.Ind_KPIDivisionEstado = rw[3].ToString(); kpi.Ind_KPIDivisionCodUni = rw[4].ToString(); kpi.Ind_KPITipoData = rw[5].ToString(); kpi.Ind_SLA = (decimal)Decimal.Parse(rw[6].ToString()); kpi.IndCod_KPIGen = (int)Int32.Parse(rw[7].ToString()); kpi.Cod_sociedad = (int)Int32.Parse(rw[8].ToString()); kpi.Ind_KPIDivisionTipo = rw[9].ToString(); kpi.Uni_falla = (decimal)Decimal.Parse(rw[10].ToString()); kpi.Tas_multa = (decimal)Decimal.Parse(rw[11].ToString()); listakpi.Add(kpi); } foreach (Kpi k in listakpi) { DataTable dtregistro = daoregistro.MostrarRegistroxKPI(k.IndCod_KPIDivision.Value); List <Registro> listaregistro = new List <Registro>(); foreach (DataRow rw in dtregistro.Rows) { Registro reg = new Registro(); reg.Fecha_registro = DateTime.ParseExact(rw[0].ToString(), "yyyy-MM-dd HH:mm:ss", null); reg.Periodo_registro = rw[1].ToString(); reg.IndCod_KPIDivision = (int)Int32.Parse(rw[2].ToString()); if (!rw[3].ToString().Equals("")) { reg.Valor_registro = (decimal)Decimal.Parse(rw[3].ToString()); } if (!rw[4].ToString().Equals("")) { reg.Valor_penalidad = (decimal)Decimal.Parse(rw[4].ToString()); } if (reg.Valor_registro != null) { int consecutivos = calcularConsecutivos(listaregistro, k.Ind_SLA.Value, k.Ind_KPIDivisionTipo); decimal tasareduccion = 0.5M; if (consecutivos < 9) { tasareduccion = (consecutivos * 1.0M / 9) * 0.5M; } listaregistro.Add(reg); decimal falla = calcularFalla(reg, k); decimal crediFalla = falla * k.Tas_multa.Value; decimal penalidad = crediFalla * (1M - tasareduccion); reg.Valor_penalidad = penalidad; daoregistro.updateRegistro(reg); } } } MessageBox.Show("FIN"); }
public DataTable LocalizarDadosCarga(int valor) { DAORegistro dao = new DAORegistro(cx); return(dao.LocalizarDadosCarga(valor)); }
public DataTable BuscaInt(int valor) { DAORegistro dao = new DAORegistro(cx); return(dao.LocalizaPorInt(valor)); }
private void btnGuardarSLATel_Click(object sender, EventArgs e) { int indServicio = 0; List <Registro> registros = new List <Registro>(); DAOKpi daok = new DAOKpi(); foreach (DataGridViewRow row in dataGridView1.Rows) { switch (indServicio) { case 0: for (int i = 0; i < sociedades.Count; i++) { int codKPI = daok.ObtenerKPICodEmpresa(sociedades[i], 21); Registro reg = new Registro(); reg.Fecha_registro = mescarga; reg.IndCod_KPIDivision = codKPI; reg.Periodo_registro = reg.Fecha_registro.Value.ToString("yyyyMM"); reg.Valor_penalidad = 0; reg.Valor_registro = (decimal)Decimal.Parse(row.Cells[i + 1].Value.ToString()) / 100M; registros.Add(reg); } break; case 1: for (int i = 0; i < sociedades.Count; i++) { if (i != 3) { int codKPI = daok.ObtenerKPICodEmpresa(sociedades[i], 25); Registro reg = new Registro(); reg.Fecha_registro = mescarga; reg.IndCod_KPIDivision = codKPI; reg.Periodo_registro = reg.Fecha_registro.Value.ToString("yyyyMM"); reg.Valor_penalidad = 0; reg.Valor_registro = (decimal)Decimal.Parse(row.Cells[i + 1].Value.ToString()) / 100M; registros.Add(reg); } } break; case 2: Registro r = new Registro(); r.Fecha_registro = mescarga; r.IndCod_KPIDivision = 565; r.Periodo_registro = r.Fecha_registro.Value.ToString("yyyyMM"); r.Valor_penalidad = 0; r.Valor_registro = (decimal)Decimal.Parse(row.Cells[1].Value.ToString()) / 100M; registros.Add(r); break; case 3: Registro rc = new Registro(); rc.Fecha_registro = mescarga; rc.IndCod_KPIDivision = 573; rc.Periodo_registro = rc.Fecha_registro.Value.ToString("yyyyMM"); rc.Valor_penalidad = 0; rc.Valor_registro = (decimal)Decimal.Parse(row.Cells[3].Value.ToString()) / 100M; registros.Add(rc); break; } indServicio++; } Registro regis = registros[0]; DAORegistro daor = new DAORegistro(); foreach (Registro r in registros) { daor.insertRegistro(r); } MessageBox.Show("Se cargo los SLAs!"); }