Beispiel #1
0
        internal void Cargar()
        {
            try
            {
                GuardarDatos guardarDatos = new GuardarDatos();

                // Analisis Lab SGS
                if (dataSet.Tables[0].Rows[2][1].ToString().Trim().ToUpper().Contains("PEQUEÑA MINERÍA"))
                {
                    try
                    {
                        LblTitulos.Text = "Análisis Químico Pequeña Minería";
                        typeFile        = 0;
                        string value = string.Empty;
                        string idLab = dataSet.Tables[0].Rows[0][1].ToString().Trim();
                        for (int j = 9; j < dataSet.Tables[0].Rows.Count; j++)
                        {
                            string text = dataSet.Tables[0].Rows[j][0].ToString().Trim();
                            if (string.IsNullOrEmpty(value))
                            {
                                value = text;
                            }
                            else
                            {
                                if (!text.Contains(value))
                                {
                                    value = text;
                                }
                            }

                            NumberStyles style    = NumberStyles.AllowLeadingWhite | NumberStyles.AllowTrailingWhite | NumberStyles.AllowLeadingSign | NumberStyles.AllowTrailingSign | NumberStyles.AllowDecimalPoint | NumberStyles.AllowThousands | NumberStyles.AllowCurrencySymbol;
                            CultureInfo  provider = CultureInfo.CreateSpecificCulture("ES-CO");

                            try
                            {
                                if (!string.IsNullOrEmpty(text) && !text.ToUpper().Trim().Contains("BLANK_PREP") && !text.ToUpper().Trim().Contains("STD") && !text.ToUpper().Trim().Contains("STD") && !text.ToUpper().Trim().Contains("BLANK") &&
                                    !text.ToUpper().Trim().Contains("BLK BLANK"))
                                {
                                    decimal num  = 0m;
                                    decimal au   = 0m;
                                    decimal ag   = 0m;
                                    decimal peso = 0m;
                                    if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[j][2].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[j][2].ToString().Trim(), style, provider, out num))
                                    {
                                        num = decimal.Parse(dataSet.Tables[0].Rows[j][2].ToString().Trim());
                                    }
                                    if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[j][3].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[j][3].ToString(), style, provider, out au))
                                    {
                                        au = decimal.Parse(dataSet.Tables[0].Rows[j][3].ToString().Trim());
                                    }
                                    if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[j][4].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[j][4].ToString().Trim(), style, provider, out ag))
                                    {
                                        ag = decimal.Parse(dataSet.Tables[0].Rows[j][4].ToString().Trim());
                                    }
                                    if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[j][5].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[j][5].ToString().Trim(), style, provider, out peso))
                                    {
                                        peso = decimal.Parse(dataSet.Tables[0].Rows[j][5].ToString().Trim());
                                    }
                                    SqlParameter[] array = GuardarDatos.Parametros_DetalleExcelPM("", text, num, au, ag, peso, "1", idLab, CmbTipoIngreso.Text);
                                    guardarDatos.Numerico("Sp_Moficiar_AnaQuiPM", array);
                                    if (num > decimal.Zero)
                                    {
                                        array = GuardarDatos.Parametros_ToneladaSeca(text, num);
                                        guardarDatos.Numerico("Sp_Moficiar_ToneladasSeca_MuestreoPM", array);
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show("Sello:" + text + " EX:" + ex.Message, "selloControl");
                                throw;
                            }
                        }
                        MessageBox.Show("Importacion Finalizada", "DB Metal", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    }
                    catch (Exception ex2)
                    {
                        MessageBox.Show(ex2.Message);
                    }
                }

                if (CmbTipoIngreso.Text == "Reclamos")
                {
                    if (dataSet.Tables[0].Columns[0].ToString().Trim().ToUpper().Contains("INFORME DE RECLAMOS"))
                    {
                        LblTitulos.Text = "INFORME DE RECLAMOS";
                        typeFile        = 2;
                        for (int k = 44; k < dataSet.Tables[0].Rows.Count; k++)
                        {
                            string selloControl = dataSet.Tables[0].Rows[k][0].ToString().Replace(" ", "");
                            if (string.IsNullOrEmpty(selloControl))
                            {
                                break;
                            }
                            decimal humedad = 0m;
                            if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][3].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[k][3].ToString().Trim(), out humedad))
                            {
                                humedad = decimal.Parse(dataSet.Tables[0].Rows[k][3].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][3].ToString().Length - 1));
                            }
                            SqlParameter[] pparametros = GuardarDatos.Parametros_DetalleExcelHumedad("", selloControl, humedad, "1");
                            guardarDatos.Numerico("Sp_Moficiar_AnaQuiHum", pparametros);
                        }
                        MessageBox.Show("Importacion Finalizada");
                    }

                    if (dataSet.Tables[0].Columns[0].ToString().Trim().ToUpper().Contains("ACTLABS"))
                    {
                        LblTitulos.Text = "ACTLABS Colombia S.A.S.";
                        typeFile        = 2;

                        string IdLab = dataSet.Tables[0].Rows[1][1].ToString();

                        for (int k = 12; k < dataSet.Tables[0].Rows.Count; k++)
                        {
                            string selloControl = dataSet.Tables[0].Rows[k][0].ToString().Replace(" ", "");
                            if (string.IsNullOrEmpty(selloControl))
                            {
                                break;
                            }

                            decimal au   = 0;
                            decimal ag   = 0;
                            decimal peso = 0;

                            if (string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][1].ToString().Trim()))
                            {
                                if (string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][2].ToString().Trim()))
                                {
                                    if (string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][3].ToString().Trim()))
                                    {
                                        if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][11].ToString().Trim()))
                                        {
                                            if (!decimal.TryParse(dataSet.Tables[0].Rows[k][11].ToString().Trim(), out au))
                                            {
                                                au = decimal.Parse(dataSet.Tables[0].Rows[k][11].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][11].ToString().Length - 1));
                                            }
                                        }
                                    }
                                    else
                                    {
                                        if (!decimal.TryParse(dataSet.Tables[0].Rows[k][3].ToString().Trim(), out au))
                                        {
                                            au = decimal.Parse(dataSet.Tables[0].Rows[k][3].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][3].ToString().Length - 1));
                                        }
                                    }
                                }
                                else
                                {
                                    if (!decimal.TryParse(dataSet.Tables[0].Rows[k][2].ToString().Trim(), out au))
                                    {
                                        au = decimal.Parse(dataSet.Tables[0].Rows[k][2].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][2].ToString().Length - 1));
                                    }
                                }
                            }
                            else
                            {
                                /* Modificado Alvaro Araujo 06/06/2019 */
                                string valorEntrada = string.Empty;
                                if (dataSet.Tables[0].Rows[k][1].ToString().Contains("<"))
                                {
                                    valorEntrada = dataSet.Tables[0].Rows[k][1].ToString();
                                    var resultante     = valorEntrada.Trim(new Char[] { ' ', '<' });
                                    var valorCambio    = (Convert.ToDouble(resultante) / 2);
                                    var valoreRedondeo = Math.Round(valorCambio * 1000);
                                    au = Convert.ToDecimal(valoreRedondeo / 1000);
                                }
                                else if (dataSet.Tables[0].Rows[k][1].ToString().Contains(">"))
                                {
                                    valorEntrada = dataSet.Tables[0].Rows[k][1].ToString();
                                    var resultante = valorEntrada.Trim(new Char[] { ' ', '>' });

                                    if (Convert.ToDouble(resultante) == 5.001)
                                    {
                                        if (string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][2].ToString().Trim()))
                                        {
                                            if (string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][3].ToString().Trim()))
                                            {
                                                if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][11].ToString().Trim()))
                                                {
                                                    if (!decimal.TryParse(dataSet.Tables[0].Rows[k][11].ToString().Trim(), out au))
                                                    {
                                                        au = decimal.Parse(dataSet.Tables[0].Rows[k][11].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][11].ToString().Length - 1));
                                                    }
                                                }
                                            }
                                            else
                                            {
                                                if (!decimal.TryParse(dataSet.Tables[0].Rows[k][3].ToString().Trim(), out au))
                                                {
                                                    au = decimal.Parse(dataSet.Tables[0].Rows[k][3].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][3].ToString().Length - 1));
                                                }
                                            }
                                        }
                                        else
                                        {
                                            if (!decimal.TryParse(dataSet.Tables[0].Rows[k][2].ToString().Trim(), out au))
                                            {
                                                au = decimal.Parse(dataSet.Tables[0].Rows[k][2].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][2].ToString().Length - 1));
                                            }
                                        }
                                    }
                                    else
                                    {
                                        var valorCambio = (Convert.ToDouble(resultante) + 0.001);
                                        au = Convert.ToDecimal(valorCambio);
                                    }
                                }
                                else
                                {
                                    if (!decimal.TryParse(dataSet.Tables[0].Rows[k][1].ToString().Trim(), out au))
                                    {
                                        au = decimal.Parse(dataSet.Tables[0].Rows[k][1].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][2].ToString().Length - 1));
                                    }
                                }
                            }


                            if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[k][12].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[k][12].ToString().Trim(), out peso))
                            {
                                peso = decimal.Parse(dataSet.Tables[0].Rows[k][12].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[k][12].ToString().Length - 1));
                            }

                            ag = au;

                            SqlParameter[] pparametros = GuardarDatos.CargaReclamosActLab(selloControl, IdLab, 0, au, ag, peso, CmbTipoIngreso.Text.ToString(), "1");
                            guardarDatos.Numerico("Sp_Moficiar_ReclamosActlabs", pparametros);
                        }
                        MessageBox.Show("Importacion Finalizada");

                        /* ***************************************************************************************  */
                    }
                }
                else
                {
                    if (dataSet.Tables[0].Rows[15][3].ToString().Trim().ToUpper().Contains("HUM"))
                    {
                        LblTitulos.Text = "Humedad Laboratorio Zandor";
                        typeFile        = 2;
                        for (int l = 45; l < dataSet.Tables[0].Rows.Count; l++)
                        {
                            string text3 = dataSet.Tables[0].Rows[l][0].ToString().Replace(" ", "");
                            if (string.IsNullOrEmpty(text3))
                            {
                                break;
                            }
                            decimal humedad2 = 0m;
                            if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[l][3].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[l][3].ToString().Trim(), out humedad2))
                            {
                                humedad2 = decimal.Parse(dataSet.Tables[0].Rows[l][3].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[l][3].ToString().Length - 1));
                            }
                            SqlParameter[] pparametros2 = GuardarDatos.Parametros_DetalleExcelHumedad("", text3, humedad2, "1");
                            guardarDatos.Numerico("Sp_Moficiar_AnaQuiHum", pparametros2);
                        }
                        MessageBox.Show("Importacion Finalizada");
                    }

                    // Renalisis y Retalla
                    if (dataSet.Tables[0].Rows[0][0].ToString().Trim().ToUpper().Contains("LABORATORIO") && dataSet.Tables[0].Rows[1][0].ToString().Trim().ToUpper().Contains("REPORTE DE ANÁLISIS QUÍMICO"))
                    {
                        LblTitulos.Text = "Reporte de Análisis Químico";
                        typeFile        = 1;
                        for (int m = 45; m < dataSet.Tables[0].Rows.Count; m++)
                        {
                            string text4 = dataSet.Tables[0].Rows[m][0].ToString().Replace(" ", "");

                            if (!text4.ToUpper().Contains("DUPLIC"))
                            {
                                if (text4.Contains("+") || text4.Contains("-"))
                                {
                                    int length = text4.IndexOf("(");
                                    text4 = text4.Substring(0, length);

                                    if (dataSet.Tables[0].Rows[m][0].ToString().Contains("-"))
                                    {
                                        text4 += "A";
                                    }

                                    if (string.IsNullOrEmpty(text4))
                                    {
                                        break;
                                    }
                                }

                                decimal au2  = 0m;
                                decimal augr = 0m;
                                decimal peso = 0;
                                if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[m][1].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[m][1].ToString().Trim(), out au2))
                                {
                                    au2 = decimal.Parse(dataSet.Tables[0].Rows[m][1].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[m][1].ToString().Length - 1));
                                }

                                if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[m][2].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[m][2].ToString().Trim(), out augr))
                                {
                                    augr = decimal.Parse(dataSet.Tables[0].Rows[m][2].ToString().Trim().Substring(1, dataSet.Tables[0].Rows[m][2].ToString().Length - 1));
                                }

                                if (!string.IsNullOrEmpty(dataSet.Tables[0].Rows[m][2].ToString().Trim()) && !decimal.TryParse(dataSet.Tables[0].Rows[m][2].ToString().Trim(), out peso))
                                {
                                    peso = decimal.Parse(dataSet.Tables[0].Rows[m][2].ToString().Trim().Substring(0, dataSet.Tables[0].Rows[m][2].ToString().Length));
                                }

                                SqlParameter[] pparametros3 = GuardarDatos.Parametros_DetalleExcelZandor("", text4, au2, augr, peso, "1", CmbTipoIngreso.Text.ToString());
                                guardarDatos.Numerico("Sp_Moficiar_AnaQuiZandor", pparametros3);
                            }
                        }
                        MessageBox.Show("Importacion Finalizada", "DB Metal", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
            catch (Exception ex3)
            {
                MessageBox.Show(ex3.Message, "Mensaje de Execpción", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }