private void cmdBuscar_Click(object sender, EventArgs e) { this.cmdBorrarDatos_Click(this, new EventArgs()); this.documentosWord = new Dictionary<int, Word.Document>(); this.documentos_guardados = new Dictionary<Word.Document, bool>(); this.RegistroGuardado = false; BackgroundWorker checarPDFs = new BackgroundWorker(); BackgroundWorker bg_matarProcesos = new BackgroundWorker(); bg_matarProcesos.DoWork += new DoWorkEventHandler(matarProcesosInicio); checarPDFs.DoWork += new DoWorkEventHandler(checarPDFs_DoWork); checarPDFs.RunWorkerAsync(); bg_matarProcesos.RunWorkerAsync(); lista_bgwReporteConcentrado = new List<BackgroundWorker>(); diccionario_relaciones_usadas = new Dictionary<string, string>(); lista_bgwInsertarEnPlantillas = new List<BackgroundWorker>(); lista_bgwBaseDeDatos = new List<BackgroundWorker>(); this.MsjColorEtqMostrado = false; vp = new VistasPrevias(); this.Cursor = Cursors.WaitCursor; //cambiamos el cursor a un cursor de espera if (gb_CamposAdicionales.Controls.Count > 0) //si el groupbox de campos adicionales contiene controles, tenemos que borrarlos para el siguiente registro. { gb_CamposAdicionales.Controls.Clear(); //borramos controle gb_CamposAdicionales.Height = 100; //reseteamos altura gb_CamposAdicionales.Width = 100; //reseteamos anchura } etq = new Etiqueta_C(""); //nueva instracia de Etiqueta etq con la nueva clave de prodcto (buscar en ESPECIFICACIONES.xls) ObtenerEtiquetaDefault(); lblTipoEtiqueta.Text = etq.TipoEtiqueta.ToString(); lblVariacionEtiqueta.Text = etq.VariacionEtiqueta.ToString(); columnasPorUsar = new List<string>(); //inicializamos una nueva lista de las columnas que usa esa etiqueta etq.Embarque = ""; columnasPorUsar = etq.obtenerCampos(etq.TipoEtiqueta, etq.VariacionEtiqueta); //llenamos la lista con la función 'Etiqueta.obtenerCampos(int tipo, int var)' this.crearCamposAdicionales(); //se hace llamado al método que crea textboxes, labels, datetimepickers, etc., dependiendo de lo que necesite la etiqueta en cuestión etq.txtSSSAPO = ""; etq.UnidadesCorte = ""; gb_CamposAdicionales.Visible = true; //mostramos el grupbox if (cmbEmbarqueFijo.Items.Count == 0) this.llenarCmbEmbarque(); this.Cursor = Cursors.Default; //regresamos el cursor al default SendKeys.Send("{TAB}"); }
public bool pasarPrimerosDatos_rpt7(Etiqueta_C etq) { this.ExcelApp = new Excel.Application(); this.ExcelApp.DisplayAlerts = false; this.Reporte = this.ExcelApp.Workbooks.Open(@rutas.RutaDeReportes + "\\CONCENTRADO_PESOS_7.xls"); this.Hoja = (Excel.Worksheet)this.Reporte.Worksheets.get_Item(1); this.Hoja.Name = "Pesos"; string clave = ""; if (string.IsNullOrEmpty(etq.VarClaveProducto)) clave = ""; else if (etq.VarClaveProducto == "") clave = ""; else { if (etq.VarClaveProducto[0] == '.' || etq.VarClaveProducto[0] == '-') clave = etq.VarClaveProducto.Remove(0, 1); else clave = etq.VarClaveProducto; } this.Hoja.Cells[10, 19] = clave; this.Hoja.Cells[6, 4] = etq.Cliente; this.Hoja.Cells[4, 25] = etq.FechaReporte.ToString("dd/MM/yyyy"); this.Hoja.Cells[6, 24] = etq.PedidoPMM; this.Hoja.Cells[10, 5] = etq.PedidoCliente; if (etq.PropiedadesVarios) this.Hoja.Cells[8, 5] = "VARIOS"; else this.Hoja.Cells[8, 5] = etq.Material + " " + etq.Calibre + " " + etq.Color + " " + etq.Corte; this.Hoja.Cells[8, 24] = etq.CantidadCajas; this.Hoja.Cells[52, 19] = etq.UnidadPesos; this.Hoja.Cells[52, 22] = etq.UnidadPesos; this.Hoja.Cells[52, 27] = etq.UnidadPesos; if (etq.CantidadCajas <= 38) this.NumeroPaginas = 1; else if (etq.CantidadCajas > 39 && etq.CantidadCajas <= 86) this.NumeroPaginas = 2; else if (etq.CantidadCajas > 86 && etq.CantidadCajas <= 134) this.NumeroPaginas = 3; if (this.NumeroPaginas > 1) this.copiarEncabezadosYTotales_Rpt_7(); return true; }
private void LimpiarCampos() { CamposYaFueronRelacionados = false; btnEditarTotalCajas.Visible = false; if(dgv_PesosLotes.ColumnCount > 0) dgv_PesosLotes.Columns[0].ReadOnly = true; chkPedidoCompleto.Checked = true; gb_CamposAdicionales.Visible = false; lblFechaEntrega.Visible = false; dtpFechaEntrega.Visible = false; dtpFechaEntrega.Value = DateTime.Now; chkMuestra.Visible = false; chkMuestra.Checked = false; gb_PesoLote.Visible = false; if (ControlesBloqueados != null) ControlesBloqueados.Clear(); gb_CamposAdicionales.Controls.Clear(); lblVariacionEtiqueta.Text = ""; lblTipoEtiqueta.Text = ""; foreach (Control txt in gb_DatosGenerales.Controls.OfType<TextBox>()) txt.Text = ""; foreach (Control txt in this.Controls.OfType<TextBox>()) txt.Text = ""; foreach (Control pnl in gb_DatosGenerales.Controls.OfType<Panel>()) foreach (Control lbl in pnl.Controls.OfType<Label>()) lbl.Text = ""; foreach (Control btn in this.Controls.OfType<Button>()) if (btn.Name == "cmdSiguiente") btn.Dispose(); else if (btn.Name == "cmdRestart") btn.Dispose(); foreach (Control pb in this.Controls.OfType<PictureBox>()) { if (!pb.Name.Equals("imgLOGO")) pb.Dispose(); } cmdTerminar.Enabled = false; cmdConcentradoPesos.Enabled = false; cmdTerminar.Visible = false; cmdConcentradoPesos.Visible = false; lbl_Unidades.Visible = false; panelPesoNeto.Visible = false; lblInfoPesosNetos.Visible = false; lblSumaPesosNetos.Text = ""; dgv_PesosLotes.RowCount = 1; dgv_PesosLotes.ColumnCount = 1; dgv_PesosLotes.Visible = false; dgv_PesosLotes.Enabled = true; this.ReporteCreado = false; this.RegistroGuardado = false; cmdContinuarConLotes.Visible = true; chkPESOSIGUALES.Visible = false; chkPESOSIGUALES.Checked = false; txt_CantidadEtiquetas.Clear(); txtPedido.Clear(); txtPrefijo.Clear(); try { if (File.Exists(this.FinalOutputPath_Etq)) File.Delete(this.FinalOutputPath_Etq); } catch { } try { if (File.Exists(this.FinalOutputPath_Rpt)) File.Delete(this.FinalOutputPath_Rpt); } catch { } pnColor1.BackColor = SystemColors.Control; pnColor2.BackColor = SystemColors.Control; pnColor1.Controls.Clear(); pnColor2.Controls.Clear(); pnColor1.Visible = true; pnColor2.Visible = true; cmdCopiarPesos.Visible = false; this.ULTIMO_ID = 0; this.GuardadoEnBD = false; rpt = null; rpt_2 = null; rpt_3 = null; this.DialogNoPalletShown = false; if (etq != null) { if (etq.HayEtqsMultiples) { cmdContinuarConLotes.Click -= cmdContinuarConLotes_EtqsMultiples_Click; cmdContinuarConLotes.Click += new EventHandler(cmdContinuarConLotes_Click); dgv_PesosLotes.CellEndEdit -= dgv_PesosLotes_CellEndEdit_EtqsMultiples; dgv_PesosLotes.CellEndEdit += new DataGridViewCellEventHandler(dgv_PesosLotes_CellEndEdit); dgv_PesosLotes.KeyDown -= dgv_PesosLotes_KeyDown_EtqsMultiples; dgv_PesosLotes.KeyDown += new KeyEventHandler(dgv_PesosLotes_KeyDown); ListaEtiquetasMultiples.Clear(); } etq = null; } gb_DatosGenerales.Focus(); txt_IntroClavProd.Select(); txt_IntroClavProd.Focus(); }
private void cmdBuscar_Click(object sender, EventArgs e) { string temp = txt_IntroClavProd.Text; this.cmdBorrarDatos_Click(this, new EventArgs()); numeracionEspecial = false; txt_IntroClavProd.Text = temp; this.documentosWord = new Dictionary<int, Word.Document>(); this.RegistroGuardado = false; BackgroundWorker checarPDFs = new BackgroundWorker(); BackgroundWorker bg_matarProcesos = new BackgroundWorker(); bg_matarProcesos.DoWork += new DoWorkEventHandler(matarProcesosInicio); checarPDFs.DoWork += new DoWorkEventHandler(checarPDFs_DoWork); checarPDFs.RunWorkerAsync(); bg_matarProcesos.RunWorkerAsync(); lista_bgwReporteConcentrado = new List<BackgroundWorker>(); diccionario_relaciones_usadas = new Dictionary<string, string>(); lista_bgwInsertarEnPlantillas = new List<BackgroundWorker>(); lista_bgwBaseDeDatos = new List<BackgroundWorker>(); this.MsjColorEtqMostrado = false; this.EsCarrete = false; if (txt_IntroClavProd.Text == "") return; else txt_IntroClavProd.Text = txt_IntroClavProd.Text.ToUpper(); vp = new VistasPrevias(); this.Cursor = Cursors.WaitCursor; //cambiamos el cursor a un cursor de espera if (gb_CamposAdicionales.Controls.Count > 0) //si el groupbox de campos adicionales contiene controles, tenemos que borrarlos para el siguiente registro. { gb_CamposAdicionales.Controls.Clear(); //borramos controle gb_CamposAdicionales.Height = 100; //reseteamos altura gb_CamposAdicionales.Width = 100; //reseteamos anchura } etq = new Etiqueta_C(txt_IntroClavProd.Text); //nueva instracia de Etiqueta etq con la nueva clave de prodcto (buscar en ESPECIFICACIONES.xls) List<string> columnasPorUsar = new List<string>(); //inicializamos una nueva lista de las columnas que usa esa etiqueta etq.Embarque = ""; if (!ObtenerDatosGenerales()) //si se obtiene un valor falso, la clave no existe { this.LimpiarCampos(); //limpiamos textboxes y groupboxes this.Cursor = Cursors.Default; //regresamos el cursor al default return; //exit } else //si es verdadero el booleano que regresa 'ObtenerDatosGenerales()' { if (!etq.HayEtqsMultiples) columnasPorUsar = etq.obtenerCampos(etq.TipoEtiqueta, etq.VariacionEtiqueta); //llenamos la lista con la función 'Etiqueta.obtenerCampos(int tipo, int var)' else { List<string> tempCampos = new List<string>(); CampoBcd_TipoCod = new Dictionary<string, int>(); ListaEtiquetasMultiples = new List<Etiqueta_C.Estructura_etqMultiple>(); Etiqueta_C.Estructura_etqMultiple etqMult; int c = 0; foreach (string s in etq.TiposVariaciones.Split(',')) { etqMult = new Etiqueta_C.Estructura_etqMultiple(); string[] tempTipoVar = s.Trim().Split('_'); int tempTipo = int.Parse(tempTipoVar[0]); int tempVar = int.Parse(tempTipoVar[1]); etqMult.tipoEtq = tempTipo; etqMult.varEtq = tempVar; etqMult.tipoCodBarra = 0; etqMult.etqsPorHoja = 0; etq.ObtenerTipoCodigoYEtqPorHoja(tempTipo, tempVar, ref etqMult.tipoCodBarra,ref etqMult.etqsPorHoja); ListaEtiquetasMultiples.Add(etqMult); tempCampos = etq.obtenerCampos(tempTipo, tempVar); foreach (string bcd in tempCampos) { if (bcd.StartsWith("bcd")) { if (!CampoBcd_TipoCod.ContainsKey(bcd)) CampoBcd_TipoCod.Add(bcd, etqMult.tipoCodBarra); } } foreach (string st in tempCampos) columnasPorUsar.Add(st); c++; } cmdContinuarConLotes.Click -= cmdContinuarConLotes_Click; cmdContinuarConLotes.Click += new EventHandler(cmdContinuarConLotes_EtqsMultiples_Click); } if (reg == null) etq.ObtenerUltimaOrdenDeCompra(); this.CrearCamposAdicionales(columnasPorUsar);//se hace llamado al método que crea textboxes, labels, datetimepickers, etc., dependiendo de lo que necesite la etiqueta en cuestión etq.txtSSSAPO = ""; etq.UnidadesCorte = ""; gb_CamposAdicionales.Visible = true; //mostramos el grupbox lblFechaEntrega.Visible = true; dtpFechaEntrega.Visible = true; chkMuestra.Visible = true; if (etq.ColorEtiquetaCaja != "") { if (etq.ColorEtiquetaCaja.Contains(',')) //son etiquetas multiples { string[] tempcolor = etq.ColorEtiquetaCaja.Split(','); string color1 = tempcolor[0], color2 = tempcolor[1]; pnColor1.BackColor = DiccionarioColores[color1]; pnColor2.BackColor = DiccionarioColores[color2]; } else if (etq.ColorEtiquetaCaja.Contains("_")) { pnColor1.Visible = false; pnColor2.Visible = false; string[] splits = etq.ColorEtiquetaCaja.ToUpper().Split('_'); string colorEtiqueta = splits[0]; string colorPunto = splits[1]; this.DibujarPuntoDeColor(colorPunto, colorEtiqueta); } else if (DiccionarioColores.ContainsKey(etq.ColorEtiquetaCaja.ToUpper())) { pnColor1.BackColor = DiccionarioColores[etq.ColorEtiquetaCaja]; pnColor2.BackColor = DiccionarioColores[etq.ColorEtiquetaCaja]; } } } if (cmbEmbarqueFijo.Items.Count == 0) this.llenarCmbEmbarque(); ChecarNumeracionEspecial(); this.Cursor = Cursors.Default; //regresamos el cursor al default SendKeys.Send("{TAB}"); }
private void tb3_cmdAccion_Click(object sender, EventArgs e) { bool errores = false; tb3_cmdAccion.Enabled = false; tb3_txtTipo.Enabled = false; tb3_txtVar.Enabled = false; tb3_cmdBuscar.Enabled = false; tb3_gbFalta.Visible = false; tb3_listFaltantes.Items.Clear(); tb3_dgv.RowCount = 0; tb3_dgv.ColumnCount = 0; if (tb3_lbl_existeEnBd.ForeColor != Color.Green || tb3_lbl_existeEnWord.ForeColor != Color.Green) { MessageBox.Show("Para verificar la compatibilidad, es necesario que exista tanto la plantilla de Word " + "como el registro en la base de datos.", "Elementos Insuficientes", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } this.Cursor = Cursors.WaitCursor; etq = new Etiqueta_C(); int tipo = int.Parse(tb3_txtTipo.Text); int var = int.Parse(tb3_txtVar.Text); string path = @RutaDePlantillas + "\\Etq_" + tipo + "_" + var + ".docx"; List<string> camposEnBD = etq.obtenerCampos(tipo, var); List<string> camposEnWord = new List<string>(); Word.Application app = new Word.Application(); Word.Document doc = app.Documents.Open(path); app.Visible = false; foreach (Word.Shape sh in doc.Shapes) { if (sh.Type.ToString() == "msoTextBox" || sh.Type.ToString() == "msoPicture") { if (!sh.Name.Contains("C1") && !sh.Name.Contains("C2")) camposEnWord.Add(sh.Name); } } doc.SaveAs2(@RutaDeTemp + "tempDoc.docx"); doc.Saved = true; ((Microsoft.Office.Interop.Word._Document)doc).Close(); ((Microsoft.Office.Interop.Word._Application)app).Quit(); File.Delete(@RutaDeTemp + "tempDoc.docx"); this.Cursor = Cursors.Default; camposEnBD.Sort(); camposEnWord.Sort(); this.crearDataGridViewTab3(camposEnWord, camposEnBD, tb3_dgv); this.crearDataGridViewTab3_2(camposEnWord, camposEnBD, tb3_dgv2); foreach (DataGridViewRow row in tb3_dgv.Rows) { if (row.Cells[0].Style.BackColor == Color.Red || row.Cells[1].Style.BackColor == Color.Red) errores = true; } foreach (DataGridViewRow row in tb3_dgv2.Rows) { if (row.Cells[0].Style.BackColor == Color.Red || row.Cells[1].Style.BackColor == Color.Red) errores = true; } if (!errores) { tb3_lblResultado.Text = "Existe compatibilidad entre la plantilla y la base de datos."; tb3_lblResultado.ForeColor = Color.Green; } else { tb3_lblResultado.Text = "Existen campos incorrectos. Favor de tomar las acciones correspondientes."; tb3_lblResultado.ForeColor = Color.Red; } tb3_lblResultado.Visible = true; }
private void tb2_cmdBuscarPlantilla_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(tb2_txtVar.Text) || string.IsNullOrEmpty(tb2_txtTipo.Text)) { MessageBox.Show("Favor de introducir tipo de etiqueta y variación de la misma.", "Campo Vacío", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } this.Cursor = Cursors.WaitCursor; int tipo = int.Parse(tb2_txtTipo.Text); int var = int.Parse(tb2_txtVar.Text); etq = new Etiqueta_C(); List<string> todosLosCampos; if (etq.obtenerTodosLosCamposDeBD()) todosLosCampos = etq.TodosLosCampos; else return; string tipocod = "", etqxhoja = "", loteProd = "", loteDesp = ""; int idioma = 0; List<string> camposUsados = etq.obtenerCampos(tipo, var); etq.Obtener_Idioma_Codigo_EtqPorHoja(tipo, var, ref tipocod, ref idioma, ref etqxhoja); if (camposUsados.Count == 0) { this.Cursor = Cursors.Default; if (MessageBox.Show("El registro de etiqueta tipo " + tipo + " y variación " + var + " no existe en la base de datos. \n¿Desea crearlo en este momento?" , "Nuevo Registro", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) { //pasar a crear etiqueta } else { return; } } else { this.creaDataGridView_tb2(todosLosCampos, camposUsados, tb2_dgv); this.AgregarItemsAComboBoxes(tipocod, etqxhoja, idioma.ToString()); if (this.obtenerNombresLotes(tipo, var, ref loteProd, ref loteDesp)) { tb2_txtLoteDesp.Text = loteDesp; tb2_txtLoteProd.Text = loteProd; } } this.Cursor = Cursors.Default; }
private void tb1_cmdBuscar_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(tb1_txtVar.Text) || string.IsNullOrEmpty(tb1_txtTipo.Text)) { MessageBox.Show("Favor de introducir tipo de etiqueta y variación de la misma.", "Campo Vacío", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } this.Cursor = Cursors.WaitCursor; int tipo = int.Parse(tb1_txtTipo.Text); int var = int.Parse(tb1_txtVar.Text); etq = new Etiqueta_C(); if (etq.checarSiExisteRegistro(tipo, var)) { if (MessageBox.Show("El registro de etiqueta tipo " + tipo + " y variación " + var + " ya existe. \n¿Desea editarlo en este momento?" , "Registro Duplicado", MessageBoxButtons.YesNo, MessageBoxIcon.Error) == DialogResult.Yes) { this.tb1_reset(); tabControl1.SelectedTab = tb2_EditarEtiqueta; tb2_txtTipo.Text = tipo.ToString(); tb2_txtVar.Text = var.ToString(); this.Cursor = Cursors.Default; return; } else { this.Cursor = Cursors.Default; this.tb1_reset(); return; } } List<string> todosLosCampos; if (etq.obtenerTodosLosCamposDeBD()) todosLosCampos = etq.TodosLosCampos; else return; this.creaDataGridView_tb1(todosLosCampos, tb1_dgv); tb1_pn_adicionales.Enabled = true; tb1_cmdNuevoCampo.Enabled = true; this.Cursor = Cursors.Default; }