Beispiel #1
0
        public void save(Caf cafmodel)
        {
            try
            {
                SQLiteConnection sqliteConn = new SQLiteConnection();
                sqliteConn = new ConnectDb().ConnectSqlite();

                string sql = "INSERT INTO caf("
                             + "cafxml, fecha, \"tipoDte\", \"dirCaf\", \"folioInicial\", \"folioFinal\",\"rutEmpresa\",\"nomXml\")"
                             + " VALUES ('"
                             + cafmodel.cafxml + "','"
                             + cafmodel.fecha + "','"
                             + cafmodel.tipoDte + "','"
                             + cafmodel.dirCaf + "',"
                             + cafmodel.folioInicial + ","
                             + cafmodel.folioFinal + ",'"
                             + cafmodel.rutEmpresa + "','"
                             + cafmodel.nomXml + "'"
                             + ");";
                SQLiteCommand command = new SQLiteCommand(sql, sqliteConn);
                command.ExecuteNonQuery();
                sqliteConn.Close();
            }
            catch (SQLiteException ex)
            {
                throw new Exception("Error" + ex.Message);
            }
        }
Beispiel #2
0
 private void button1_Click(object sender, EventArgs e)
 {
     openFileDialog1.ShowDialog();
     openFileDialog1.FileName.ToString();
     caf = caf.xmlToCaf(openFileDialog1.FileName.ToString());
     labelRutEmpresa.Text = caf.rutEmpresa;
     labelFchCaf.Text     = caf.fecha.ToString("yyyy-MM-dd");
     labelFolioIni.Text   = caf.folioInicial.ToString();
     labelFolioFinal.Text = caf.folioFinal.ToString();
     labelTipoDte.Text    = caf.tipoDte;
 }
Beispiel #3
0
        public void actDataG()
        {
            dataGridView1.Rows.Clear();
            DataTable dt = new Caf().getCafs();

            foreach (DataRow row in dt.Rows)
            {
                Int32 n = this.dataGridView1.Rows.Add();

                dataGridView1.Rows[n].Cells[0].Value = row["id"].ToString();
                dataGridView1.Rows[n].Cells[1].Value = row["rutEmpresa"].ToString();
                dataGridView1.Rows[n].Cells[2].Value = row["tipoDte"].ToString();
                dataGridView1.Rows[n].Cells[3].Value = row["folioInicial"].ToString();
                dataGridView1.Rows[n].Cells[4].Value = row["folioFinal"].ToString();
                dataGridView1.Rows[n].Cells[5].Value = Convert.ToDateTime(row["fecha"].ToString()).ToString("yyyy-MM-dd");
                dataGridView1.Rows[n].Cells[6].Value = "  Edita  ";
            }
        }
Beispiel #4
0
        public Documento lectura(String fileJson, bool moveFile, String dirOrigen)
        {
            Documento doc      = new Documento();
            fileAdmin file     = new fileAdmin();
            String    fileName = String.Empty;

            if (dirOrigen == "")
            {
                dirOrigen = @"C:\AdmToFebosFiles\files";
            }


            if (fileJson == "")
            {
                fileName = file.nextFile(dirOrigen, "*.json");
            }
            else
            {
                fileName = dirOrigen + fileJson;
            }


            if (fileName != null)
            {
                StreamReader objReader = new StreamReader(fileName, System.Text.Encoding.Default, true);
                objReader.ToString();
                String data = objReader.ReadToEnd();

                DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(Documento));

                MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data));

                try
                {
                    doc = (Documento)js.ReadObject(ms);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    MessageBox.Show("Error de lectura JSON" + e.Message);
                }

                // Datos del Emisor
                // Cargo datos en laclase Documento desde sqlite

                if (doc.RUTEmisor == null)
                {
                    try
                    {
                        SQLiteConnection myConn = new SQLiteConnection(strConn);
                        myConn.Open();

                        string           sql     = "select * from empresa";
                        SQLiteCommand    command = new SQLiteCommand(sql, myConn);
                        SQLiteDataReader reader  = command.ExecuteReader();
                        while (reader.Read())
                        {
                            doc.RUTEmisor         = reader["RutEmisor"].ToString();
                            doc.RznSoc            = reader["RznSoc"].ToString();
                            doc.GiroEmis          = reader["GiroEmis"].ToString();
                            doc.Telefono          = reader["Telefono"].ToString();
                            doc.CorreoEmisor      = reader["CorreoEmisor"].ToString();
                            doc.Acteco            = Convert.ToInt32(reader["Acteco"]);
                            doc.CdgSIISucur       = Convert.ToInt32(reader["CdgSIISucur"]);
                            doc.DirMatriz         = reader["DirMatriz"].ToString();
                            doc.CmnaOrigen        = reader["CmnaOrigen"].ToString();
                            doc.CiudadOrigen      = reader["CiudadOrigen"].ToString();
                            doc.DirOrigen         = reader["DirOrigen"].ToString();
                            doc.NombreCertificado = reader["NomCertificado"].ToString();
                            doc.SucurEmisor       = reader["SucurEmisor"].ToString();
                            doc.FchResol          = reader["FchResol"].ToString();
                            doc.RutEnvia          = reader["RutCertificado"].ToString();
                            doc.NumResol          = reader["NumResol"].ToString();
                            doc.CondEntrega       = reader["CondEntrega"].ToString();
                        }
                        myConn.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("ERROR: {0}", e.ToString());
                    }
                }
                else
                {
                    try
                    {
                        SQLiteConnection myConn = new SQLiteConnection(strConn);
                        myConn.Open();

                        string           sql     = "select * from empresa where empresa.RutEmisor = '" + doc.RUTEmisor.ToString() + "'";
                        SQLiteCommand    command = new SQLiteCommand(sql, myConn);
                        SQLiteDataReader reader  = command.ExecuteReader();
                        while (reader.Read())
                        {
                            doc.Telefono          = reader["Telefono"].ToString();
                            doc.CorreoEmisor      = reader["CorreoEmisor"].ToString();
                            doc.Acteco            = Convert.ToInt32(reader["Acteco"]);
                            doc.DirRegionalSII    = reader["sucurSII"].ToString();
                            doc.DirMatriz         = reader["DirMatriz"].ToString();
                            doc.NombreCertificado = reader["NomCertificado"].ToString();
                            doc.SucurEmisor       = reader["SucurEmisor"].ToString();
                            doc.FchResol          = reader["FchResol"].ToString();
                            doc.RutEnvia          = reader["RutCertificado"].ToString();
                            doc.NumResol          = reader["NumResol"].ToString();
                            doc.CondEntrega       = reader["CondEntrega"].ToString();
                        }

                        myConn.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("ERROR: {0}", e.ToString());
                    }
                }

                objReader.Close();
                ms.Close();
                if (moveFile)
                {
                    file.mvFile(fileName, dirOrigen, "C:/AdmToFebosFiles/fileProcess/");
                }

                Caf caf = new Caf();

                if (!caf.isValid(doc))
                {
                    doc = null;
                }

                if (fileJson == "")
                {
                    doc.fileName = fileName;
                }
                else
                {
                    doc.fileName = fileJson;
                }
                return(doc);
            }
            else
            {
                return(null);
            }
        }
Beispiel #5
0
        public Documento lectura(String fileJson, bool moveFile, String dirOrigen)
        {
            Documento doc = new Documento();
            fileAdmin file = new fileAdmin();
            String fileName = String.Empty;

            if (dirOrigen == "")
            {
                dirOrigen = @"C:\AdmToFebosFiles\files";
            }

            if (fileJson == "")
            {
                fileName = file.nextFile(dirOrigen, "*.json");
            }
            else
            {
                fileName = dirOrigen + fileJson;
            }

            if (fileName != null)
            {
                StreamReader objReader = new StreamReader(fileName,System.Text.Encoding.Default,true);
                objReader.ToString();
                String data = objReader.ReadToEnd();

                DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(Documento));

                MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data));

                try
                {
                    doc = (Documento)js.ReadObject(ms);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    MessageBox.Show("Error de lectura JSON"+ e.Message);
                }

                // Datos del Emisor
                // Cargo datos en laclase Documento desde sqlite

                if (doc.RUTEmisor == null)
                {
                    try
                    {

                        SQLiteConnection myConn = new SQLiteConnection(strConn);
                        myConn.Open();

                        string sql = "select * from empresa";
                        SQLiteCommand command = new SQLiteCommand(sql, myConn);
                        SQLiteDataReader reader = command.ExecuteReader();
                        while (reader.Read())
                        {

                            doc.RUTEmisor = reader["RutEmisor"].ToString();
                            doc.RznSoc = reader["RznSoc"].ToString();
                            doc.GiroEmis = reader["GiroEmis"].ToString();
                            doc.Telefono = reader["Telefono"].ToString();
                            doc.CorreoEmisor = reader["CorreoEmisor"].ToString();
                            doc.Acteco = Convert.ToInt32(reader["Acteco"]);
                            doc.CdgSIISucur = Convert.ToInt32(reader["CdgSIISucur"]);
                            doc.DirMatriz = reader["DirMatriz"].ToString();
                            doc.CmnaOrigen = reader["CmnaOrigen"].ToString();
                            doc.CiudadOrigen = reader["CiudadOrigen"].ToString();
                            doc.DirOrigen = reader["DirOrigen"].ToString();
                            doc.NombreCertificado = reader["NomCertificado"].ToString();
                            doc.SucurEmisor = reader["SucurEmisor"].ToString();
                            doc.FchResol = reader["FchResol"].ToString();
                            doc.RutEnvia = reader["RutCertificado"].ToString();
                            doc.NumResol = reader["NumResol"].ToString();
                            doc.CondEntrega = reader["CondEntrega"].ToString();

                        }
                        myConn.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("ERROR: {0}", e.ToString());
                    }
                }
                else
                {
                    try
                    {

                        SQLiteConnection myConn = new SQLiteConnection(strConn);
                        myConn.Open();

                        string sql = "select * from empresa where empresa.RutEmisor = '"+ doc.RUTEmisor.ToString() +"'";
                        SQLiteCommand command = new SQLiteCommand(sql, myConn);
                        SQLiteDataReader reader = command.ExecuteReader();
                        while (reader.Read())
                        {

                            doc.Telefono = reader["Telefono"].ToString();
                            doc.CorreoEmisor = reader["CorreoEmisor"].ToString();
                            doc.Acteco = Convert.ToInt32(reader["Acteco"]);
                            doc.DirRegionalSII = reader["sucurSII"].ToString();
                            doc.DirMatriz = reader["DirMatriz"].ToString();
                            doc.NombreCertificado = reader["NomCertificado"].ToString();
                            doc.SucurEmisor = reader["SucurEmisor"].ToString();
                            doc.FchResol = reader["FchResol"].ToString();
                            doc.RutEnvia = reader["RutCertificado"].ToString();
                            doc.NumResol = reader["NumResol"].ToString();
                            doc.CondEntrega = reader["CondEntrega"].ToString();
                        }

                        myConn.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("ERROR: {0}", e.ToString());
                    }
               }

                objReader.Close();
                ms.Close();
                if (moveFile)
                {
                    file.mvFile(fileName, dirOrigen, "C:/AdmToFebosFiles/fileProcess/");
                }

                Caf caf = new Caf();

                if(!caf.isValid(doc))
                {
                    doc = null;
                }

                if (fileJson == "")
                {
                    doc.fileName = fileName;
                }
                else
                {
                    doc.fileName = fileJson;
                }
                return doc;
            }
            else
            {
                return null;
            }
        }
Beispiel #6
0
        public Documento lectura(string fileJson, bool moveFile, string dirOrigen)
        {
            Documento doc      = new Documento();
            fileAdmin file     = new fileAdmin();
            string    fileName = String.Empty;

            if (dirOrigen == "")
            {
                dirOrigen = @"" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/file";
            }


            if (fileJson == "")
            {
                fileName = file.nextFile(dirOrigen, "*.json");
            }
            else
            {
                fileName = dirOrigen + fileJson;
            }


            if (fileName != null)
            {
                StreamReader objReader = new StreamReader(fileName, Encoding.Default, true);
                objReader.ToString();
                //Leo el json hasta el final
                string data = objReader.ReadToEnd();

                DataContractJsonSerializer js = new DataContractJsonSerializer(typeof(Documento));

                MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(data));

                try
                {
                    doc = (Documento)js.ReadObject(ms);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    MessageBox.Show("Error de lectura JSON" + e.Message);
                }

                // Datos del Emisor
                // Cargo datos en laclase Documento desde sqlite

                if (doc.RUTEmisor == null)
                {
                    try
                    {
                        SQLiteConnection myConn = new SQLiteConnection(strConn);
                        myConn.Open();

                        string           sql     = "select * from empresa";
                        SQLiteCommand    command = new SQLiteCommand(sql, myConn);
                        SQLiteDataReader reader  = command.ExecuteReader();
                        while (reader.Read())
                        {
                            if (doc.TipoDTE == 30)
                            {
                                doc.TipoDTE = 33;
                            }
                            doc.RUTEmisor         = reader["RutEmisor"].ToString();
                            doc.RznSoc            = reader["RznSoc"].ToString();
                            doc.GiroEmis          = reader["GiroEmis"].ToString();
                            doc.Telefono          = reader["Telefono"].ToString();
                            doc.CorreoEmisor      = reader["CorreoEmisor"].ToString();
                            doc.Acteco            = Convert.ToInt32(reader["Acteco"]);
                            doc.CdgSIISucur       = Convert.ToInt32(reader["CdgSIISucur"]);
                            doc.DirMatriz         = reader["DirMatriz"].ToString();
                            doc.CmnaOrigen        = reader["CmnaOrigen"].ToString();
                            doc.CiudadOrigen      = reader["CiudadOrigen"].ToString();
                            doc.DirOrigen         = reader["DirOrigen"].ToString();
                            doc.NombreCertificado = reader["NomCertificado"].ToString();
                            doc.SucurEmisor       = reader["SucurEmisor"].ToString();
                            doc.FchResol          = reader["FchResol"].ToString();
                            doc.RutEnvia          = reader["RutCertificado"].ToString();
                            doc.NumResol          = reader["NumResol"].ToString();
                            doc.CondEntrega       = reader["CondEntrega"].ToString();
                            doc.PrnMtoNeto        = reader["PrnMtoNeto"].ToString();
                            doc.PrnTwoCopy        = reader["PrnTwoCopy"].ToString();
                            doc.DirRegionalSII    = reader["sucurSII"].ToString();
                            if (doc.TipoDTE == 30 && doc.NumResol == "0")
                            {
                                doc.TipoDTE = 33;
                            }
                        }
                        myConn.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("ERROR: {0}", e.ToString());
                    }
                }
                else
                {
                    try
                    {
                        SQLiteConnection myConn = new SQLiteConnection(strConn);
                        myConn.Open();

                        string           sql     = "select * from empresa where empresa.RutEmisor = '" + doc.RUTEmisor.ToString() + "'";
                        SQLiteCommand    command = new SQLiteCommand(sql, myConn);
                        SQLiteDataReader reader  = command.ExecuteReader();
                        while (reader.Read())
                        {
                            doc.Telefono          = reader["Telefono"].ToString();
                            doc.CorreoEmisor      = reader["CorreoEmisor"].ToString();
                            doc.Acteco            = Convert.ToInt32(reader["Acteco"]);
                            doc.DirRegionalSII    = reader["sucurSII"].ToString();
                            doc.DirMatriz         = reader["DirMatriz"].ToString();
                            doc.NombreCertificado = reader["NomCertificado"].ToString();
                            doc.SucurEmisor       = reader["SucurEmisor"].ToString();
                            doc.FchResol          = reader["FchResol"].ToString();
                            doc.RutEnvia          = reader["RutCertificado"].ToString();
                            doc.NumResol          = reader["NumResol"].ToString();
                            doc.CondEntrega       = reader["CondEntrega"].ToString();
                            doc.PrnMtoNeto        = reader["PrnMtoNeto"].ToString();
                            doc.PrnTwoCopy        = reader["PrnTwoCopy"].ToString();
                            if (doc.TipoDTE == 30 && doc.NumResol == "0")
                            {
                                doc.TipoDTE = 33;
                            }
                        }

                        myConn.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("ERROR: {0}", e.ToString());
                    }
                }

                objReader.Close();
                ms.Close();
                if (moveFile)
                {
                    file.mvFile(fileName, dirOrigen, "" + Microsoft.Win32.Registry.GetValue(@"HKEY_CURRENT_USER\Iat", "unidadIat", null).ToString() + ":/IatFiles/fileProcess/");
                }

                Caf caf = new Caf();

                if (!caf.isValid(doc))
                {
                    doc = null;
                }

                if (fileJson == "")
                {
                    doc.fileName = fileName;
                }
                else
                {
                    doc.fileName = fileJson;
                }

                foreach (var dsc in doc.dscRcgGlobal)
                {
                    string valor = dsc.ValorDR.ToString("N2", CultureInfo.CreateSpecificCulture("es-ES"));
                    valor       = valor.Replace(",", ".");
                    dsc.ValorDR = Convert.ToDecimal(valor);
                }
                return(doc);
            }
            else
            {
                return(null);
            }
        }
Beispiel #7
0
        // recupera caf desde xml

        public Caf xmlToCaf(string dirfile)
        {
            Caf         cafModel = new Caf();
            XmlDocument xDoc     = new XmlDocument();

            //La ruta del documento XML permite rutas relativas
            //respecto del ejecutable!
            try
            {
                xDoc.Load(@"" + dirfile + "");

                XmlNodeList lista = xDoc.GetElementsByTagName("AUTORIZACION");

                XmlNodeList lista1 = ((XmlElement)lista[0]).GetElementsByTagName("CAF");

                XmlNodeList lista2 = ((XmlElement)lista1[0]).GetElementsByTagName("DA");

                XmlNodeList lista3 = ((XmlElement)lista2[0]).GetElementsByTagName("RNG");

                foreach (XmlElement nodo in lista)
                {
                    int i = 0;

                    XmlNodeList rutCaf =
                        nodo.GetElementsByTagName("RE");

                    XmlNodeList rzSoc =
                        nodo.GetElementsByTagName("RS");

                    XmlNodeList tpoDte =
                        nodo.GetElementsByTagName("TD");

                    XmlNodeList folioIni =
                        nodo.GetElementsByTagName("D");

                    XmlNodeList folioFinal =
                        nodo.GetElementsByTagName("H");

                    XmlNodeList fechaCaf =
                        nodo.GetElementsByTagName("FA");

                    int      final    = Convert.ToInt32(folioFinal[i].InnerText);
                    int      inicial  = Convert.ToInt32(folioIni[i].InnerText);
                    int      tipoDte  = Convert.ToInt32(tpoDte[i].InnerText);
                    DateTime fechacaf = Convert.ToDateTime(fechaCaf[i].InnerText);
                    string   rut      = rutCaf[i].InnerText;

                    //Cargo el objeto
                    cafModel.tipoDte      = tipoDte.ToString();
                    cafModel.fecha        = fechacaf;
                    cafModel.folioInicial = inicial;
                    cafModel.folioFinal   = final;
                    cafModel.rutEmpresa   = rut;
                    cafModel.cafxml       = xDoc.InnerXml.ToString();
                }
            }
            catch (IOException ie)
            {
                throw new Exception("Error" + ie.Message);
            }


            return(cafModel);
        }