Exemplo n.º 1
0
        public void fillMedlog()
        {
            clsRest   objRest = new clsRest();
            string    retur   = objRest.HttpGet2(clsRest.urlBaseType.sync, "Medlog");
            XDocument xdoc    = XDocument.Parse(retur);
            var       list    = from medlog in xdoc.Descendants("Medlog") select medlog;
            int       antal   = list.Count();

            foreach (var medlog in list)
            {
                if ((medlog.Descendants("Nr").First().Value != null) && (medlog.Descendants("Nr").First().Value != "None") && (medlog.Descendants("Nr").First().Value.Length <= 4))
                {
                    var Nr       = medlog.Descendants("Nr").First().Value.Trim();
                    var Logdato  = medlog.Descendants("Logdato").First().Value.Trim();
                    var Akt_id   = medlog.Descendants("Akt_id").First().Value.Trim();
                    var Akt_dato = medlog.Descendants("Akt_dato").First().Value.Trim();

                    tblMedlogRow MedlogRow = (tblMedlogRow)tabletblMedlog.Rows.Add(
                        Nr,
                        Logdato,
                        Akt_id,
                        Akt_dato
                        );

                    MedlogRow.AcceptChanges();
                }
            }
        }
Exemplo n.º 2
0
        public void cvnMedlog()
        {
            string ModelName = "Medlog";
            var    qry       = from r in Program.dbData3060.TblMedlemLog select r;

            foreach (var r in qry)
            {
                clsRest        objRest    = new clsRest();
                XElement       xml        = new XElement(ModelName);
                Type           objectType = r.GetType();
                PropertyInfo[] properties = objectType.GetProperties();
                foreach (PropertyInfo property in properties)
                {
                    string Name = property.Name;
                    object Val  = property.GetValue(r, null);
                    //string NamePropertyType = property.GetValue(r, null).GetType().Name;
                    xml.Add(new XElement(Name, Val));
                    if (Name == "Id")
                    {
                        xml.Add(new XElement("Source_id", Val));
                        xml.Add(new XElement("Source", "Medlog"));
                    }
                }
                string strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
                string retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Convert", strxml);
                if (retur != "Status: 404")
                {
                    clsSQLite.insertStoreXML(Program.AppEngName, false, "sync/Convert", strxml, retur);
                }
            }
        }
Exemplo n.º 3
0
 public void saveMedlog()
 {
     foreach (tblMedlogRow l in tabletblMedlog.Rows)
     {
         clsRest  objRest = null;
         XElement xml     = null;
         string   retur   = null;
         string   strxml  = null;
         switch (l.RowState)
         {
         case DataRowState.Added:
             objRest = new clsRest();
             int Id = clsPbs.nextval("Medlogid");
             xml = new XElement("Medlog");
             xml.Add(new XElement("Id", Id));
             xml.Add(new XElement("Source_id", Id));
             xml.Add(new XElement("Source", "Medlog"));
             xml.Add(new XElement("Nr", l.Nr));
             xml.Add(new XElement("Logdato", l.Logdato));
             xml.Add(new XElement("Akt_id", l.Akt_id));
             xml.Add(new XElement("Akt_dato", l.Akt_dato));
             strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
             retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Medlog", strxml);
             l.AcceptChanges();
             break;
         }
     }
 }
Exemplo n.º 4
0
        public void save()
        {
            string ModelName = "Kreditor";
            var    qry       = from r in Program.memKreditor select r;

            foreach (var r in qry)
            {
                clsRest        objRest    = new clsRest();
                XElement       xml        = new XElement(ModelName);
                Type           objectType = r.GetType();
                PropertyInfo[] properties = objectType.GetProperties();
                foreach (PropertyInfo property in properties)
                {
                    string Name = property.Name;
                    object Val  = property.GetValue(r, null);
                    xml.Add(new XElement(Name, Val));
                }
                string strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
                string retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Convert", strxml);
                if (retur != "Status: 404")
                {
                    clsSQLite.insertStoreXML(Program.AppEngName, false, "sync/Convert", strxml, retur);
                }
            }
        }
Exemplo n.º 5
0
        public void cvnPbsfiles()
        {
            string ModelName = "Pbsfiles";
            var    qry       = from r in Program.dbData3060.Tblpbsfiles select r;

            foreach (var r in qry)
            {
                clsRest        objRest    = new clsRest();
                XElement       xml        = new XElement(ModelName);
                Type           objectType = r.GetType();
                PropertyInfo[] properties = objectType.GetProperties();
                foreach (PropertyInfo property in properties)
                {
                    string Name = property.Name;
                    object Val  = property.GetValue(r, null);
                    //string NamePropertyType = property.GetValue(r, null).GetType().Name;
                    xml.Add(new XElement(Name, Val));
                }
                string strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
                string retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Convert", strxml);
                if (retur != "Status: 404")
                {
                    clsSQLite.insertStoreXML(Program.AppEngName, false, "sync/Convert", strxml, retur);
                }

                var qry2 = from r2 in Program.dbData3060.Tblpbsfile
                           where r2.Pbsfilesid == r.Id
                           orderby r2.Seqnr ascending
                           select r2;
                string TilPBSFile = "";
                int    i          = 0;
                foreach (var rec_pbsfile in qry2)
                {
                    if (i++ > 0)
                    {
                        TilPBSFile += "\r\n";
                    }
                    TilPBSFile += rec_pbsfile.Data;
                }
                //char[] c_TilPBSFile = TilPBSFile.ToCharArray();
                //byte[] b_TilPBSFile = System.Text.Encoding.GetEncoding("windows-1252").GetBytes(c_TilPBSFile);
                XElement xml2 = new XElement("Pbsfile");
                xml2.Add(new XElement("Id", r.Id));
                xml2.Add(new XElement("Pbsfilesid", r.Id));
                xml2.Add(new XElement("Data", TilPBSFile));

                string strxml2 = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml2.ToString();
                string retur2  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Convert", strxml2);
                if (retur2 != "Status: 404")
                {
                    clsSQLite.insertStoreXML(Program.AppEngName, false, "sync/Convert", strxml2, retur2);
                }
            }
        }
Exemplo n.º 6
0
        public void savePerson()
        {
            foreach (tblPersonRow p in tabletblPerson.Rows)
            {
                clsRest  objRest = null;
                XElement xml     = null;
                string   retur   = null;
                string   strxml  = null;
                switch (p.RowState)
                {
                case DataRowState.Added:
                    objRest = new clsRest();
                    xml     = new XElement("Medlem", new XElement("Nr", p.Nr));
                    xml.Add(new XElement("Navn", p.Navn));
                    xml.Add(new XElement("Kaldenavn", p.Kaldenavn));
                    xml.Add(new XElement("Adresse", p.Adresse));
                    xml.Add(new XElement("Postnr", p.Postnr));
                    xml.Add(new XElement("Bynavn", p.Bynavn));
                    xml.Add(new XElement("Telefon", p.Telefon));
                    xml.Add(new XElement("Email", p.Email));
                    xml.Add(new XElement("Kon", p.Kon));
                    xml.Add(new XElement("FodtDato", ((DateTime)p.FodtDato).ToString("yyyy-MM-dd")));
                    xml.Add(new XElement("Bank", p.Bank));
                    strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
                    retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Medlem", strxml);
                    p.AcceptChanges();
                    break;

                case DataRowState.Deleted:
                    objRest = new clsRest();
                    retur   = objRest.HttpDelete2(clsRest.urlBaseType.sync, "Medlem/" + p.Nr);
                    p.AcceptChanges();
                    break;

                case DataRowState.Modified:
                    objRest = new clsRest();
                    xml     = new XElement("Medlem", new XElement("Nr", p.Nr));
                    xml.Add(new XElement("Navn", p.Navn));
                    xml.Add(new XElement("Kaldenavn", p.Kaldenavn));
                    xml.Add(new XElement("Adresse", p.Adresse));
                    xml.Add(new XElement("Postnr", p.Postnr));
                    xml.Add(new XElement("Bynavn", p.Bynavn));
                    xml.Add(new XElement("Telefon", p.Telefon));
                    xml.Add(new XElement("Email", p.Email));
                    xml.Add(new XElement("Kon", p.Kon));
                    xml.Add(new XElement("FodtDato", ((DateTime)p.FodtDato).ToString("yyyy-MM-dd")));
                    xml.Add(new XElement("Bank", p.Bank));
                    strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
                    retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Medlem", strxml);
                    p.AcceptChanges();
                    break;
                }
            }
        }
Exemplo n.º 7
0
        public static int nextval(string nrserienavn)
        {
            clsRest objRest   = new clsRest();
            string  strNextnr = objRest.HttpGet2(clsRest.urlBaseType.sync, "NrSerie/" + nrserienavn);

            try
            {
                return(int.Parse(strNextnr));
            }
            catch (System.InvalidOperationException)
            {
                return(0);
            }
        }
Exemplo n.º 8
0
        public void cvnPerson()
        {
            string ModelName     = "Person";
            var    qry_medlemmer = from h in Program.karMedlemmer
                                   join d1 in Program.dbData3060.TblMedlem on h.Nr equals d1.Nr into details1
                                   from x in details1.DefaultIfEmpty(new TblMedlem {
                Nr = -1, Kon = null, FodtDato = (DateTime?)null
            })
                                   //where x.Nr == -1
                                   select new
            {
                h.Nr,
                h.Navn,
                h.Kaldenavn,
                h.Adresse,
                h.Postnr,
                h.Bynavn,
                h.Telefon,
                h.Email,
                XNr      = x == null ? (int?)null : x.Nr,
                Kon      = x == null ? null : x.Kon,
                FodtDato = x == null ? (DateTime?)null : x.FodtDato,
                h.Bank
            };

            //var qry = from r in Program.dsMedlemGlobal.Kartotek.AsEnumerable()
            //          select new {r.Nr, r.Navn, r.Kaldenavn, r.Adresse, r.Postnr, r.Bynavn, r.Telefon, r.Email, r.FodtDato, r.Kon, r.Bank};

            foreach (var r in qry_medlemmer)
            {
                clsRest        objRest    = new clsRest();
                XElement       xml        = new XElement(ModelName);
                Type           objectType = r.GetType();
                PropertyInfo[] properties = objectType.GetProperties();
                foreach (PropertyInfo property in properties)
                {
                    string Name = property.Name;
                    object Val  = property.GetValue(r, null);
                    //string NamePropertyType = property.GetValue(r, null).GetType().Name;
                    xml.Add(new XElement(Name, Val));
                }
                string strxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xml.ToString();
                string retur  = objRest.HttpPost2(clsRest.urlBaseType.sync, "Convert", strxml);
                if (retur != "Status: 404")
                {
                    clsSQLite.insertStoreXML(Program.AppEngName, false, "sync/Convert", strxml, retur);
                }
            }
        }
Exemplo n.º 9
0
        public int OrderFaknrUpdate()
        {
            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "orderfaknrupdate");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status != "True")
            {
                var qry_fak = from h in xmldata.Descendants("Fak")
                              select new
                {
                    Key    = clsPassXmlDoc.attr_val_string(h, "Key"),
                    Id     = clsPassXmlDoc.attr_val_int(h, "Id"),
                    SFakID = clsPassXmlDoc.attr_val_int(h, "SFakID"),
                    SFaknr = clsPassXmlDoc.attr_val_int(h, "SFaknr"),
                };
                var qry = from k in Program.karFakturaer_s
                          where k.faknr > 0
                          join f in qry_fak on k.fakid equals f.SFakID
                          where f.SFaknr == null
                          select new
                {
                    f.Key,
                    f.Id,
                    SFaknr = k.faknr,
                };

                int AntalFakturaer = qry.Count();
                if (AntalFakturaer > 0)
                {
                    XElement SFaknrupdatexml = new XElement("SFaknrupdate");
                    foreach (var k in qry)
                    {
                        XElement fakxml = new XElement("Fak");
                        fakxml.Add(new XElement("Key", k.Key));
                        fakxml.Add(new XElement("Id", k.Id));
                        fakxml.Add(new XElement("SFaknr", k.SFaknr));
                        SFaknrupdatexml.Add(new XElement(fakxml));
                    }
                    string strSFaknrupdatexml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + SFaknrupdatexml.ToString();
                    string result             = objRest.HttpPost2(clsRest.urlBaseType.data, "orderfaknrupdate", strSFaknrupdatexml);
                }
                return(AntalFakturaer);
            }
            return(0);
        }
Exemplo n.º 10
0
        private void open()
        {
            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "infotekst");
            XDocument xdoc       = XDocument.Parse(strxmldata);
            var       list       = from infotekst in xdoc.Descendants("Infotekst") select infotekst;

            foreach (var infotekst in list)
            {
                recMemInfotekst rec = new recMemInfotekst();
                rec.Id   = (int)clsPassXmlDoc.attr_val_int(infotekst, "Id");
                rec.Navn = clsPassXmlDoc.attr_val_string(infotekst, "Navn");
                string Msgtext = clsPassXmlDoc.attr_val_string(infotekst, "Msgtext");
                rec.Msgtext = Msgtext.Replace(lf, crlf);
                this.Add(rec);
            }
        }
Exemplo n.º 11
0
        private void SendModtagPBSfilertoolStripMenuItem_Click(object sender, EventArgs e)
        {
            string bigString   = null;
            string smallString = null;

            clsSFTP objAppEngSFTP = new clsSFTP();

            //Send til PBS
            string  Status          = "True";
            int     AntalFilerSendt = 0;
            clsRest objRest         = new clsRest();

            while (Status == "True")
            {
                string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "tilpbs");
                XDocument xmldata    = XDocument.Parse(strxmldata);
                Status = xmldata.Descendants("Status").First().Value;
                if (Status == "True")
                {
                    bool bSendt = objAppEngSFTP.WriteTilSFtp(xmldata);
                    if (bSendt)
                    {
                        AntalFilerSendt++;
                    }
                }
            }

            //Modtag fra PBS
            int AntalFilerModtaget = objAppEngSFTP.ReadFraSFtp();

            bigString = String.Format("{0} filer sendt til PBS.\n{1} filer modtaget fra PBS", AntalFilerSendt, AntalFilerModtaget);
            DialogResult result = DotNetPerls.BetterDialog.ShowDialog(
                "Send/Modtag PBS filer",                               //titleString
                bigString,                                             //bigString
                smallString,                                           //smallString
                null,                                                  //leftButton
                "OK",                                                  //rightButton
                global::nsPuls3060.Properties.Resources.Message_info); //iconSet
        }
Exemplo n.º 12
0
        private void open()
        {
            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "kreditor");
            XDocument xdoc       = XDocument.Parse(strxmldata);
            var       list       = from kreditor in xdoc.Descendants("Kreditor") select kreditor;

            foreach (var kreditor in list)
            {
                recMemKreditor rec = new recMemKreditor();
                rec.Id                = (int)clsPassXmlDoc.attr_val_int(kreditor, "Id");
                rec.Datalevnr         = clsPassXmlDoc.attr_val_string(kreditor, "Datalevnr");
                rec.Datalevnavn       = clsPassXmlDoc.attr_val_string(kreditor, "Datalevnavn");
                rec.Pbsnr             = clsPassXmlDoc.attr_val_string(kreditor, "Pbsnr");
                rec.Delsystem         = clsPassXmlDoc.attr_val_string(kreditor, "Delsystem");
                rec.Regnr             = clsPassXmlDoc.attr_val_string(kreditor, "Regnr");
                rec.Kontonr           = clsPassXmlDoc.attr_val_string(kreditor, "Kontonr");
                rec.Debgrpnr          = clsPassXmlDoc.attr_val_string(kreditor, "Debgrpnr");
                rec.Sektionnr         = clsPassXmlDoc.attr_val_string(kreditor, "Sektionnr");
                rec.Transkodebetaling = clsPassXmlDoc.attr_val_string(kreditor, "Transkodebetaling");
                this.Add(rec);
            }
        }
Exemplo n.º 13
0
        public clsSFTP()
        {
            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "sftp/" + Program.sftpName);
            XDocument xdoc       = XDocument.Parse(strxmldata);

            string Status = xdoc.Descendants("Status").First().Value;

            if (Status != "True")
            {
                throw new Exception("Getting sftp-data for " + Program.sftpName + " failed.");
            }

            m_SftpId      = xdoc.Descendants("Id").First().Value;
            m_SftpNavn    = xdoc.Descendants("Navn").First().Value;
            m_Host        = xdoc.Descendants("Host").First().Value;
            m_Port        = xdoc.Descendants("Port").First().Value;
            m_Certificate = xdoc.Descendants("Certificate").First().Value;
            m_Pincode     = xdoc.Descendants("Pincode").First().Value;
            m_User        = xdoc.Descendants("User").First().Value;
            m_Outbound    = xdoc.Descendants("Outbound").First().Value;
            m_Inbound     = xdoc.Descendants("Inbound").First().Value;


            m_sftp = new SFtp();
            bool success = m_sftp.UnlockComponent("HAFSJOSSH_6pspJCMP1QnW");

            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }
            m_sftp.ConnectTimeoutMs = 60000;
            m_sftp.IdleTimeoutMs    = 55000;
            success = m_sftp.Connect(m_Host, int.Parse(m_Port));
            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }
            Chilkat.SshKey key = new Chilkat.SshKey();

            string privKey = m_Certificate;

            if (privKey == null)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            key.Password = m_Pincode;
            success      = key.FromOpenSshPrivateKey(privKey);
            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            success = m_sftp.AuthenticatePk(m_User, key);
            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            //  After authenticating, the SFTP subsystem must be initialized:
            success = m_sftp.InitializeSftp();
            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }
        }
Exemplo n.º 14
0
        public int ReadFraSFtp()
        {
            string homedir = m_sftp.RealPath(".", "");
            //  Open a directory on the server...
            string handle = m_sftp.OpenDir(m_Outbound);

            if (handle == null)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            //  Download the directory listing:
            Chilkat.SFtpDir dirListing = null;
            dirListing = m_sftp.ReadDir(handle);
            if (dirListing == null)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            Program.memPbsnetdir = null; //opret ny memPbsnetdir

            //  Iterate over the files.
            int i;
            int n = dirListing.NumFilesAndDirs;

            if (n > 0)
            {
                for (i = 0; i <= n - 1; i++)
                {
                    Chilkat.SFtpFile fileObj = null;
                    fileObj = dirListing.GetFileObject(i);
                    if (!fileObj.IsDirectory)
                    {
                        DateTime     testLastAccessTime = fileObj.LastAccessTime;
                        recPbsnetdir rec = new recPbsnetdir
                        {
                            Type     = 8,
                            Path     = dirListing.OriginalPath,
                            Filename = fileObj.Filename,
                            Size     = (int)fileObj.Size32,
                            Atime    = Unspecified2Utc(fileObj.LastAccessTime),
                            Mtime    = Unspecified2Utc(fileObj.LastModifiedTime),
                            Gid      = fileObj.Gid,
                            Uid      = fileObj.Uid,
                            Perm     = fileObj.Permissions.ToString()
                        };
                        Program.memPbsnetdir.Add(rec);
                    }
                }
            }

            //  Close the directory
            bool success = m_sftp.CloseHandle(handle);

            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            var leftqry_pbsnetdir = from h in Program.memPbsnetdir select h;

            int AntalFiler = leftqry_pbsnetdir.Count();

            if (leftqry_pbsnetdir.Count() > 0)
            {
                foreach (var rec_pbsnetdir in leftqry_pbsnetdir)
                {
                    //  Open a file on the server:
                    string fullpath   = rec_pbsnetdir.Path + "/" + rec_pbsnetdir.Filename;
                    string filehandle = m_sftp.OpenFile(fullpath, "readOnly", "openExisting");
                    if (filehandle == null)
                    {
                        throw new Exception(m_sftp.LastErrorText);
                    }

                    int numBytes = (int)rec_pbsnetdir.Size;
                    if (numBytes < 0)
                    {
                        throw new Exception(m_sftp.LastErrorText);
                    }

                    byte[] b_data = null;
                    b_data = m_sftp.ReadFileBytes(handle, numBytes);
                    if (b_data == null)
                    {
                        throw new Exception(m_sftp.LastErrorText);
                    }
                    sendAttachedFile(rec_pbsnetdir.Filename, b_data, false);
                    char[] c_data      = System.Text.Encoding.GetEncoding("windows-1252").GetString(b_data).ToCharArray();
                    string filecontens = new string(c_data);

                    string filecontens2 = filecontens.TrimEnd('\n');
                    string filecontens3 = filecontens2.TrimEnd('\r');
                    string filecontens4 = filecontens3.TrimEnd('\n');

                    XElement xmlPbsfilesAdd = new XElement("Pbsfiles");
                    xmlPbsfilesAdd.Add(new XElement("Type", rec_pbsnetdir.Type));
                    xmlPbsfilesAdd.Add(new XElement("Path", rec_pbsnetdir.Path));
                    xmlPbsfilesAdd.Add(new XElement("Filename", rec_pbsnetdir.Filename));
                    xmlPbsfilesAdd.Add(new XElement("Size", rec_pbsnetdir.Size));
                    xmlPbsfilesAdd.Add(new XElement("Atime", rec_pbsnetdir.Atime));
                    xmlPbsfilesAdd.Add(new XElement("Mtime", rec_pbsnetdir.Mtime));
                    xmlPbsfilesAdd.Add(new XElement("Transmittime", DateTime.Now));
                    xmlPbsfilesAdd.Add(new XElement("Data", filecontens4));
                    string strxmlPbsfilesAdd = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xmlPbsfilesAdd.ToString();

                    Guid id1 = clsSQLite.insertStoreXML(Program.AppEngName, false, Program.sftpName, strxmlPbsfilesAdd, "");

                    clsRest   objRest    = new clsRest();
                    string    strxmldata = objRest.HttpPost2(clsRest.urlBaseType.data, "frapbs", strxmlPbsfilesAdd);
                    XDocument xmldata    = XDocument.Parse(strxmldata);
                    string    Status     = xmldata.Descendants("Status").First().Value;
                    if (Status == "True")
                    {
                        clsSQLite.updateStoreXML(id1, true);
                    }

                    //  Close the file.
                    success = m_sftp.CloseHandle(filehandle);
                    if (success != true)
                    {
                        throw new Exception(m_sftp.LastErrorText);
                    }
                }
            }
            return(AntalFiler);
        }
Exemplo n.º 15
0
        private void getBetalingsForslag()
        {
            int AntalKreditorer = 0;
            int AntalForslag    = 0;

            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "overforsel");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status != "True")
            {
                return;
            }
            var qry_overforsel = from h in xmldata.Descendants("Overforsel")
                                 select new clsOverfor
            {
                SFakID = clsPassXmlDoc.attr_val_int(h, "SFakID"),
            };

            var qry_Kreditor = from h in Program.karFakturaer_k
                               where h.saldo > 0
                               join m in Program.karMedlemmer on h.kreditornr.ToString() equals m.Krdktonr
                                   where Program.ValidatekBank(m.Bank)
                               join f in qry_overforsel on h.fakid equals f.SFakID into overforsel
                               from f in overforsel.DefaultIfEmpty(new clsOverfor
            {
                SFakID = null
            })
                               where f.SFakID == null
                               select new
            {
                h.fakid,
                m.Nr,
                m.Navn,
                m.Adresse,
                m.Postnr,
                m.Bank,
                h.faknr,
                h.saldo,
            };

            this.lvwKreditor.Items.Clear();
            this.lvwKrdFaktura.Items.Clear();

            var antal = qry_Kreditor.Count();

            this.pgmForslag.Show();
            this.pgmForslag.Maximum          = antal;
            this.pgmForslag.Minimum          = 0;
            this.pgmForslag.Value            = 0;
            this.pgmForslag.Step             = 1;
            this.pgmForslag.Visible          = true;
            this.Label_Forslagstekst.Visible = false;
            this.cmdBetal.Visible            = false;

            pgmForslag.PerformStep();

            foreach (var m in qry_Kreditor)
            {
                AntalKreditorer++;

                AntalForslag++;

                ListViewItem it = lvwKreditor.Items.Add(m.fakid.ToString(), m.Navn, 0);
                //it.Tag = m;
                it.SubItems.Add(m.Nr.ToString());
                it.SubItems.Add(m.Adresse);
                it.SubItems.Add(m.Postnr);
                it.SubItems.Add(m.faknr.ToString());
                it.SubItems.Add((((decimal)m.saldo) / 100).ToString());
                it.SubItems.Add(m.Bank);
                pgmForslag.PerformStep();
            }
            this.lvwKreditor.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);

            if (AntalForslag == 0)
            {
                this.Label_Forslagstekst.Text    = "Der er ingen forslag";
                this.Label_Forslagstekst.Visible = true;
                this.cmdBetal.Visible            = false;
            }
            else
            {
                this.Label_Forslagstekst.Visible = false;
                this.cmdBetal.Visible            = false;
            }
            this.pgmForslag.Visible = false;
        }
Exemplo n.º 16
0
        private void ecxelPoster()
        {
            DateTime pReadDate  = DateTime.Now;
            string   pSheetName = "Poster";

            Excel.Application oXL = null;;
            Excel._Workbook   oWB;
            Excel._Worksheet  oSheetPoster;
            Excel._Worksheet  oSheetRegnskab;
            Excel.Window      oWindow;
            Excel.Range       oRng;

            var    rec_regnskab = Program.qryAktivRegnskab();
            string SaveAs       = rec_regnskab.Eksportmappe + pSheetName + pReadDate.ToString("_yyyyMMdd_hhmmss") + ".xls";


            var JournalPoster = from h in Program.karPosteringer
                                join d1 in Program.karKontoplan on h.Konto equals d1.Kontonr into details1
                                from x in details1.DefaultIfEmpty()
                                orderby h.Nr
                                select new clsJournalposter
            {
                ds    = (x.Type == "Drift") ? "D" : "S",
                k     = IUAP(x.Type, x.DK),
                Konto = h.Konto.ToString() + "-" + x.Kontonavn,
                Dato  = h.Dato,
                Bilag = h.Bilag,
                Nr    = h.Nr,
                Id    = h.Id,
                Tekst = h.Tekst,
                Beløb = h.Bruttobeløb,
            };

            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "personlist");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status != "True")
            {
                return;
            }
            var MedlemmerAll = from h in xmldata.Descendants("Person")
                               orderby clsPassXmlDoc.attr_val_int(h, "Nr")
                               select new clsMedlemExternAll
            {
                Nr        = clsPassXmlDoc.attr_val_int(h, "Nr"),
                Navn      = clsPassXmlDoc.attr_val_string(h, "Navn"),
                Kaldenavn = clsPassXmlDoc.attr_val_string(h, "Kaldenavn"),
                Adresse   = clsPassXmlDoc.attr_val_string(h, "Adresse"),
                Postnr    = clsPassXmlDoc.attr_val_string(h, "Postnr"),
                Bynavn    = clsPassXmlDoc.attr_val_string(h, "Bynavn"),
                Telefon   = clsPassXmlDoc.attr_val_string(h, "Telefon"),
                Email     = clsPassXmlDoc.attr_val_string(h, "Email"),
                Kon       = clsPassXmlDoc.attr_val_string(h, "Kon"),
                FodtDato  = clsPassXmlDoc.attr_val_date(h, "FodtDato"),
                erMedlem  = (clsPassXmlDoc.attr_val_bool(h, "erMedlem")) ? 1 : 0,
                erPBS     = (clsPassXmlDoc.attr_val_bool(h, "Tilmeldtpbs")) ? 1 : 0,
            };


            var erMedlem = from h in MedlemmerAll
                           where h.erMedlem == 1
                           select h;


            using (new ExcelUILanguageHelper())
            {
                try
                {
                    //Start Excel and get Application object.
                    oXL         = new Excel.Application();
                    oXL.Visible = false;
                    //oXL.Visible = true; //For debug

                    //Get a new workbook.

                    oWB          = oXL.Workbooks.Add((Missing.Value));
                    oSheetPoster = (Excel._Worksheet)oWB.ActiveSheet;
                    oWindow      = oXL.ActiveWindow;

                    if (pSheetName.Length > 0)
                    {
                        oSheetPoster.Name = pSheetName.Substring(0, pSheetName.Length > 34 ? 34 : pSheetName.Length);
                    }
                    int row = 1;
                    this.MainformProgressBar.Value   = 0;
                    this.MainformProgressBar.Minimum = 0;
                    this.MainformProgressBar.Maximum = (from h in Program.karPosteringer select h).Count();
                    this.MainformProgressBar.Step    = 1;
                    this.MainformProgressBar.Visible = true;
                    foreach (clsJournalposter m in JournalPoster)
                    {
                        this.MainformProgressBar.PerformStep();
                        row++;
                        Type           objectType = m.GetType();
                        PropertyInfo[] properties = objectType.GetProperties();
                        int            col        = 0;
                        foreach (PropertyInfo property in properties)
                        {
                            col++;
                            string Name = property.Name;
                            //string NamePropertyType = property.GetValue(m, null).GetType().ToString();
                            oSheetPoster.Cells[row, col] = property.GetValue(m, null);
                            if (row == 2)
                            {
                                object[] CustomAttributes = property.GetCustomAttributes(false);
                                foreach (var att in CustomAttributes)
                                {
                                    Type tp = att.GetType();
                                    if (tp.ToString() == "nsPuls3060.Fieldattr")
                                    {
                                        Fieldattr attr    = (Fieldattr)att;
                                        string    heading = attr.Heading;
                                        oSheetPoster.Cells[1, col] = heading;
                                    }
                                }
                            }
                        }
                    }

                    oRng                     = (Excel.Range)oSheetPoster.Rows[1, Missing.Value];
                    oRng.Font.Name           = "Arial";
                    oRng.Font.Size           = 12;
                    oRng.Font.Strikethrough  = false;
                    oRng.Font.Superscript    = false;
                    oRng.Font.Subscript      = false;
                    oRng.Font.OutlineFont    = false;
                    oRng.Font.Shadow         = false;
                    oRng.Font.Bold           = true;
                    oRng.HorizontalAlignment = Excel.Constants.xlCenter;
                    oRng.VerticalAlignment   = Excel.Constants.xlBottom;
                    oRng.WrapText            = false;
                    oRng.Orientation         = 0;
                    oRng.AddIndent           = false;
                    oRng.IndentLevel         = 0;
                    oRng.ShrinkToFit         = false;
                    oRng.MergeCells          = false;

                    string BottomRight = "D" + row.ToString();
                    oRng = oSheetPoster.get_Range("D2", BottomRight);
                    oRng.NumberFormat = "dd-mm-yyyy";

                    oSheetPoster.Cells.EntireColumn.AutoFit();

                    oWindow.SplitRow    = 1;
                    oWindow.FreezePanes = true;

                    oSheetPoster.get_Range("A1", Missing.Value).Select();


                    oSheetRegnskab = (Excel._Worksheet)oWB.Worksheets.Add(System.Type.Missing, System.Type.Missing, System.Type.Missing, System.Type.Missing);
                    oRng           = oSheetRegnskab.get_Range("C2", Missing.Value);
                    oRng.Formula   = "Antal medlemmer: " + erMedlem.Count().ToString();

                    //oXL.Visible = true; //For debug

                    PivotField _pvtField = null;
                    PivotTable _pivot    = oSheetPoster.PivotTableWizard(
                        XlPivotTableSourceType.xlDatabase,                                            //SourceType
                        oSheetPoster.get_Range(oSheetPoster.Cells[1, 1], oSheetPoster.Cells[row, 9]), //SourceData
                        oSheetRegnskab.get_Range("A3", Missing.Value),                                //TableDestination
                        "PivotTable1",                                                                //TableName
                        System.Type.Missing,                                                          //RowGrand
                        System.Type.Missing,                                                          //CollumnGrand
                        System.Type.Missing,                                                          //SaveData
                        System.Type.Missing,                                                          //HasAutoformat
                        System.Type.Missing,                                                          //AutoPage
                        System.Type.Missing,                                                          //Reserved
                        System.Type.Missing,                                                          //BackgroundQuery
                        System.Type.Missing,                                                          //OptimizeCache
                        System.Type.Missing,                                                          //PageFieldOrder
                        System.Type.Missing,                                                          //PageFieldWrapCount
                        System.Type.Missing,                                                          //ReadData
                        System.Type.Missing);                                                         //Connection

                    _pvtField             = (PivotField)_pivot.PivotFields("ds");
                    _pvtField.Orientation = XlPivotFieldOrientation.xlRowField;

                    _pvtField             = (PivotField)_pivot.PivotFields("k");
                    _pvtField.Orientation = XlPivotFieldOrientation.xlRowField;

                    _pvtField             = (PivotField)_pivot.PivotFields("Konto");
                    _pvtField.Orientation = XlPivotFieldOrientation.xlRowField;

                    _pvtField             = (PivotField)_pivot.PivotFields("Dato");
                    _pvtField.Orientation = XlPivotFieldOrientation.xlColumnField;

                    _pvtField              = (PivotField)_pivot.PivotFields("Beløb");
                    _pvtField.Orientation  = XlPivotFieldOrientation.xlDataField;
                    _pvtField.Function     = XlConsolidationFunction.xlSum;
                    _pvtField.NumberFormat = "#,##0";

                    oSheetRegnskab.Name = "Regnskab";
                    oRng = oSheetRegnskab.get_Range("D3", Missing.Value);
                    oRng.Select();
                    bool[] Periods = { false, false, false, false, true, false, false };
                    oRng.Group(true, true, Missing.Value, Periods);

                    oRng = oSheetRegnskab.get_Range("D4", "P4");
                    oRng.HorizontalAlignment = Excel.XlHAlign.xlHAlignRight;

                    oSheetRegnskab.PageSetup.LeftHeader         = "&14Regnskab Puls 3060";
                    oSheetRegnskab.PageSetup.CenterHeader       = "";
                    oSheetRegnskab.PageSetup.RightHeader        = "&P af &N";
                    oSheetRegnskab.PageSetup.LeftFooter         = "&Z&F";
                    oSheetRegnskab.PageSetup.CenterFooter       = "";
                    oSheetRegnskab.PageSetup.RightFooter        = "&D&T";
                    oSheetRegnskab.PageSetup.LeftMargin         = oXL.InchesToPoints(0.75);
                    oSheetRegnskab.PageSetup.RightMargin        = oXL.InchesToPoints(0.75);
                    oSheetRegnskab.PageSetup.TopMargin          = oXL.InchesToPoints(1);
                    oSheetRegnskab.PageSetup.BottomMargin       = oXL.InchesToPoints(1);
                    oSheetRegnskab.PageSetup.HeaderMargin       = oXL.InchesToPoints(0.5);
                    oSheetRegnskab.PageSetup.FooterMargin       = oXL.InchesToPoints(0.5);
                    oSheetRegnskab.PageSetup.PrintHeadings      = false;
                    oSheetRegnskab.PageSetup.PrintGridlines     = true;
                    oSheetRegnskab.PageSetup.CenterHorizontally = false;
                    oSheetRegnskab.PageSetup.CenterVertically   = false;
                    oSheetRegnskab.PageSetup.Orientation        = XlPageOrientation.xlLandscape;
                    oSheetRegnskab.PageSetup.Draft           = false;
                    oSheetRegnskab.PageSetup.PaperSize       = XlPaperSize.xlPaperA4;
                    oSheetRegnskab.PageSetup.FirstPageNumber = 1;
                    oSheetRegnskab.PageSetup.Order           = XlOrder.xlDownThenOver;
                    oSheetRegnskab.PageSetup.BlackAndWhite   = false;
                    oSheetRegnskab.PageSetup.Zoom            = 100;
                    oSheetRegnskab.PageSetup.PrintErrors     = XlPrintErrors.xlPrintErrorsDisplayed;

                    oWB.ShowPivotTableFieldList = false;

                    for (var i = oWB.Worksheets.Count; i > 0; i--)
                    {
                        Excel._Worksheet oSheetWrk = (Excel._Worksheet)oWB.Worksheets.get_Item(i);
                        if ((oSheetWrk.Name != "Regnskab") && (oSheetWrk.Name != "Poster"))
                        {
                            oSheetWrk.Delete();
                        }
                    }

                    oSheetRegnskab.get_Range("A1", Missing.Value).Select();

                    oWB.SaveAs(SaveAs, Excel.XlFileFormat.xlWorkbookNormal, "", "", false, false, Excel.XlSaveAsAccessMode.xlExclusive, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
                    oWB.Saved   = true;
                    oXL.Visible = true;
                    this.MainformProgressBar.Visible = false;

                    this.sendPoster(SaveAs);


                    //oXL.Quit();
                    //oXL = null;
                }
                catch (Exception theException)
                {
                    String errorMessage;
                    errorMessage = "Error: ";
                    errorMessage = String.Concat(errorMessage, theException.Message);
                    errorMessage = String.Concat(errorMessage, " Line: ");
                    errorMessage = String.Concat(errorMessage, theException.Source);

                    MessageBox.Show(errorMessage, "Error");
                }
            }
        }
Exemplo n.º 17
0
        private void getKontingentForslag()
        {
            DateTime KontingentFradato = DateTime.MinValue;
            DateTime KontingentTildato = DateTime.MinValue;
            bool     tilmeldtpbs       = false;
            bool     indmeldelse       = false;
            int      AntalMedlemmer    = 0;
            int      AntalForslag      = 0;
            double   dkontingent;
            int      ikontingent;

            this.lvwMedlem.Items.Clear();
            this.lvwKontingent.Items.Clear();

            var antal = 2;

            this.pgmForslag.Show();
            this.pgmForslag.Maximum          = antal;
            this.pgmForslag.Minimum          = 0;
            this.pgmForslag.Value            = 0;
            this.pgmForslag.Step             = 1;
            this.pgmForslag.Visible          = true;
            this.Label_Forslagstekst.Visible = false;
            this.cmdFakturer.Visible         = false;
            this.DelsystemBSH.Visible        = false;

            pgmForslag.PerformStep();

            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "kontingentforslag");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status == "True")
            {
                var list = from forslag in xmldata.Descendants("KontingentForslag") select forslag;
                antal = list.Count();

                foreach (var forslag in list)
                {
                    AntalMedlemmer++;
                    tilmeldtpbs = false;
                    indmeldelse = false;

                    var wNr      = forslag.Descendants("Nr").First().Value.Trim();
                    var wNavn    = forslag.Descendants("Navn").First().Value.Trim();
                    var wAdresse = forslag.Descendants("Adresse").First().Value.Trim();
                    var wPostnr  = forslag.Descendants("Postnr").First().Value.Trim();
                    KontingentFradato = DateTime.Parse(forslag.Descendants("KontingentFradato").First().Value.Trim());
                    tilmeldtpbs       = (forslag.Descendants("Indmeldelse").First().Value.Trim() == "True") ? true : false;
                    tilmeldtpbs       = (forslag.Descendants("Tilmeldtpbs").First().Value.Trim() == "True") ? true : false;



                    AntalForslag++;
                    //tilmeldtpbs = clsPbs.gettilmeldtpbs(m.Nr);
                    switch (KontingentFradato.Month)
                    {
                    case 1:
                    case 2:
                    case 3:
                    case 4:
                    case 5:
                    case 6:
                        KontingentTildato = new DateTime(KontingentFradato.Year, 12, 31);
                        if (indmeldelse)
                        {
                            dkontingent = double.Parse(this.AarskontingentPbs.Text);
                        }
                        else
                        {
                            dkontingent = (tilmeldtpbs) ? double.Parse(this.AarskontingentPbs.Text) : double.Parse(this.Aarskontingent.Text);
                        }
                        break;

                    default:
                        KontingentTildato = new DateTime(KontingentFradato.Year + 1, 12, 31);
                        if (indmeldelse)
                        {
                            dkontingent = double.Parse(this.AarskontingentPbs.Text) * 3 / 2;
                        }
                        else
                        {
                            dkontingent = (tilmeldtpbs) ? double.Parse(this.AarskontingentPbs.Text) * 3 / 2 : double.Parse(this.Aarskontingent.Text) * 3 / 2;
                        }
                        break;
                    }
                    ikontingent = (int)dkontingent;

                    ListViewItem it = lvwKontingent.Items.Add(wNr, wNavn, 0);
                    //it.Tag = m;
                    it.SubItems.Add(wNr);
                    it.SubItems.Add(wAdresse);
                    it.SubItems.Add(wPostnr);
                    it.SubItems.Add(string.Format("{0:dd-MM-yyy}", KontingentFradato));
                    it.SubItems.Add(ikontingent.ToString());
                    it.SubItems.Add(string.Format("{0:dd-MM-yyy}", KontingentTildato));
                    it.SubItems.Add((indmeldelse) ? "J" : "N");
                    it.SubItems.Add((tilmeldtpbs) ? "J" : "N");

                    pgmForslag.PerformStep();
                }
                this.lvwKontingent.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
            }
            if (AntalForslag == 0)
            {
                this.Label_Forslagstekst.Text    = "Der er ingen forslag";
                this.Label_Forslagstekst.Visible = true;
                this.cmdFakturer.Visible         = false;
                this.DelsystemBSH.Visible        = false;
            }
            else
            {
                this.Label_Forslagstekst.Visible = false;
                this.cmdFakturer.Visible         = true;
                this.DelsystemBSH.Visible        = true;
            }
            this.pgmForslag.Visible = false;
        }
Exemplo n.º 18
0
        public int BogforIndBetalinger()
        {
            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "bogforindbetalinger");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status != "True")
            {
                int saveBetid = 0;
                var qry_bet   = from h in xmldata.Descendants("BogforIndBetalinger")
                                select new
                {
                    Frapbsid = clsPassXmlDoc.attr_val_int(h, "Frapbsid"),
                    Betid    = (int)clsPassXmlDoc.attr_val_int(h, "Betid"),
                    Fakid    = clsPassXmlDoc.attr_val_int(h, "Fakid"),
                    Betlinid = clsPassXmlDoc.attr_val_int(h, "Betlinid"),
                    Nr       = clsPassXmlDoc.attr_val_int(h, "Nr"),
                    Leverancespecifikation  = clsPassXmlDoc.attr_val_string(h, "Leverancespecifikation"),
                    GruppeIndbetalingsbelob = (decimal)clsPassXmlDoc.attr_val_double(h, "GruppeIndbetalingsbelob"),
                    Betalingsdato           = clsPassXmlDoc.attr_val_date(h, "Betalingsdato"),
                    Indbetalingsdato        = clsPassXmlDoc.attr_val_date(h, "Indbetalingsdato"),
                    Indbetalingsbelob       = (decimal)clsPassXmlDoc.attr_val_double(h, "Indbetalingsbelob"),
                    SFakID = (int)clsPassXmlDoc.attr_val_int(h, "SFakID"),
                    SFaknr = clsPassXmlDoc.attr_val_int(h, "SFaknr"),
                };
                var bogf = from s in Program.karFakturaer_s
                           //where s.saldo != 0
                           join f in qry_bet on s.fakid equals f.SFakID
                           where f.SFaknr != null
                           join m in Program.karMedlemmer on f.Nr equals m.Nr
                           orderby f.Frapbsid, f.Betid, f.Betlinid
                    select new
                {
                    f.Frapbsid,
                    f.Leverancespecifikation,
                    f.Betid,
                    f.GruppeIndbetalingsbelob,
                    f.Betlinid,
                    f.Fakid,
                    f.Betalingsdato,
                    f.Indbetalingsdato,
                    m.Navn,
                    f.Indbetalingsbelob,
                    f.SFaknr
                };
                int AntalBetalinger = bogf.Count();
                if (bogf.Count() > 0)
                {
                    DateTime nu    = DateTime.Now;
                    DateTime ToDay = new DateTime(nu.Year, nu.Month, nu.Day);;

                    int BS1_SidsteNr = 0;
                    try
                    {
                        recStatus rec_Status = (from s in Program.karStatus where s.key == "BS1_SidsteNr" select s).First();
                        BS1_SidsteNr = int.Parse(rec_Status.value);
                    }
                    catch (System.InvalidOperationException)
                    {
                    }

                    Program.karKladde = null;

                    XElement SummabogfortUpdatexml = new XElement("SummabogfortUpdate");
                    foreach (var b in bogf)
                    {
                        if (saveBetid != b.Betid) // ny gruppe
                        {
                            saveBetid = b.Betid;
                            recKladde gkl = new recKladde
                            {
                                Dato             = ToDay, //(b.Betalingsdato > b.Indbetalingsdato) ? (DateTime)b.Betalingsdato : (DateTime)b.Indbetalingsdato,
                                Bilag            = ++BS1_SidsteNr,
                                Tekst            = "Indbetalingskort K 81131945-" + ((DateTime)b.Indbetalingsdato).Day + "." + ((DateTime)b.Indbetalingsdato).Month,
                                Afstemningskonto = "Bank",
                                Belob            = b.GruppeIndbetalingsbelob,
                                Kontonr          = null,
                                Faknr            = null
                            };
                            Program.karKladde.Add(gkl);

                            XElement betxml = new XElement("Bet");
                            betxml.Add(new XElement("Id", b.Betid));
                            betxml.Add(new XElement("Summabogfort", true));
                            SummabogfortUpdatexml.Add(new XElement(betxml));
                        }

                        recKladde kl = new recKladde
                        {
                            Dato             = ToDay, //(b.Betalingsdato > b.Indbetalingsdato) ? (DateTime)b.Betalingsdato : (DateTime)b.Indbetalingsdato,
                            Bilag            = BS1_SidsteNr,
                            Tekst            = "F" + b.SFaknr + " " + b.Navn,
                            Afstemningskonto = null,
                            Belob            = b.Indbetalingsbelob,
                            Kontonr          = 56100,
                            Faknr            = b.SFaknr
                        };
                        Program.karKladde.Add(kl);
                    }
                    string strSummabogfortUpdatexml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + SummabogfortUpdatexml.ToString();
                    string result = objRest.HttpPost2(clsRest.urlBaseType.data, "bogforindbetalinger", strSummabogfortUpdatexml);

                    Program.karStatus.save();
                    Program.karKladde.save();
                }
                return(AntalBetalinger);
            }
            return(0);
        }
Exemplo n.º 19
0
        private void cmdBetal_Click(object sender, EventArgs e)
        {
            string  TilPBSFilename = "Unknown";
            int     imax;
            string  keyval;
            int     Nr;
            int     faknr;
            decimal advisbelob;
            string  Bank;

            if ((this.cmdBetal.Text == "Afslut"))
            {
                this.Close();
            }
            this.cmdForslag.Visible = false;
            this.cmdCancel.Visible  = false;
            imax = lvwKrdFaktura.Items.Count;
            this.pgmBetal.Maximum = (imax * 4);
            this.pgmBetal.Minimum = 0;
            this.pgmBetal.Value   = 0;
            this.pgmBetal.Visible = true;
            if ((imax == 0))
            {
                this.Label_Betaltekst.Text    = "Der ikke noget at betale";
                this.Label_Betaltekst.Visible = true;
            }
            else
            {
                XElement headxml = new XElement("TempBetalforslag");
                headxml.Add(new XElement("Betalingsdato", DateTime.Now));

                var i = 0;
                foreach (ListViewItem lvi in lvwKrdFaktura.Items)
                {
                    this.pgmBetal.Value = ++i;
                    keyval     = lvi.Name;
                    Nr         = int.Parse(lvi.SubItems[1].Text);
                    faknr      = int.Parse(lvi.SubItems[4].Text);
                    advisbelob = decimal.Parse(lvi.SubItems[5].Text);
                    Bank       = lvi.SubItems[6].Text;

                    XElement linxml = new XElement("TempBetalforslaglinie");
                    linxml.Add(new XElement("Nr", Nr));
                    linxml.Add(new XElement("Fakid", int.Parse(keyval)));
                    linxml.Add(new XElement("Advisbelob", (decimal)advisbelob));
                    linxml.Add(new XElement("Bankregnr", Bank.Substring(0, 4)));
                    linxml.Add(new XElement("Bankkontonr", Bank.Substring(5, 10)));
                    linxml.Add(new XElement("Faknr", faknr));
                    headxml.Add(new XElement(linxml));
                }
                clsRest   objRest    = new clsRest();
                string    strheadxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + headxml.ToString();
                string    result     = objRest.HttpPost2(clsRest.urlBaseType.data, "overforsel", strheadxml);
                XDocument xmldata    = XDocument.Parse(result);
                string    Status     = xmldata.Descendants("Status").First().Value;
                this.pgmBetal.Value = imax * 2;
                if (Status == "True")
                {
                    this.pgmBetal.Value = (imax * 3);
                    int lobnr       = int.Parse(xmldata.Descendants("Lobnr").First().Value);
                    int antal       = int.Parse(xmldata.Descendants("Antal").First().Value);
                    int sendqueueid = int.Parse(xmldata.Descendants("Sendqueueid").First().Value);

                    string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "tilpbs/" + sendqueueid.ToString());
                    XDocument xmldata2   = XDocument.Parse(strxmldata);
                    string    Status2    = xmldata2.Descendants("Status").First().Value;
                    if (Status2 == "True")
                    {
                        clsSFTP objAppEngSFTP = new clsSFTP();
                        bool    bSendt        = objAppEngSFTP.WriteTilSFtp(xmldata2);
                        if (bSendt)
                        {
                            overfoersel_mail(lobnr);
                        }
                        objAppEngSFTP.DisconnectSFtp();
                        objAppEngSFTP = null;
                    }
                    clsSumma objSumma = new clsSumma();
                    objSumma.BogforUdBetalinger(lobnr);
                }
                this.pgmBetal.Value           = (imax * 4);
                cmdBetal.Text                 = "Afslut";
                this.Label_Betaltekst.Text    = ("Leverance til PBS i filen " + TilPBSFilename);
                this.Label_Betaltekst.Visible = true;
                this.pgmBetal.Visible         = false;
            }
        }
Exemplo n.º 20
0
        public int Order2Summa()
        {
            var rec_regnskab = Program.qryAktivRegnskab();

            if (rec_regnskab.Afsluttet == true)
            {
                return(0);
            }

            DateTime?Startdato = rec_regnskab.Start;
            DateTime?Slutdato  = rec_regnskab.S**t;

            if (rec_regnskab.DatoLaas != null)
            {
                if (rec_regnskab.DatoLaas > Startdato)
                {
                    Startdato = rec_regnskab.DatoLaas;
                }
            }
            int       AntalOrdre = 0;
            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "order2summa");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status != "True")
            {
                return(AntalOrdre);
            }

            var qry_ord = from forslag in xmldata.Descendants("Fak") select forslag;

            AntalOrdre = qry_ord.Count();

            if (AntalOrdre > 0)
            {
                DateTime nu    = DateTime.Now;
                DateTime ToDay = new DateTime(nu.Year, nu.Month, nu.Day);;
                int      SidsteSFakID;
                int      SidsteRec_no;
                try
                {
                    SidsteSFakID = (from f in Program.karFakturaer_s select f.fakid).Max();
                }
                catch (System.InvalidOperationException)
                {
                    SidsteSFakID = 0;
                }
                try
                {
                    SidsteRec_no = (from f in Program.karFakturaer_s select f.rec_no).Max();
                }
                catch (System.InvalidOperationException)
                {
                    SidsteRec_no = 0;
                }
                Program.karFakturastr_s   = null;
                Program.karFakturavarer_s = null;

                XElement SFakIDupdatexml = new XElement("SFakIDupdate");

                foreach (var o in qry_ord)
                {
                    string Key    = o.Descendants("Key").First().Value;
                    string strval = o.Descendants("Id").First().Value;
                    int    Id     = int.Parse(strval);
                    strval = o.Descendants("Nr").First().Value;
                    int Nr = int.Parse(strval);
                    strval = o.Descendants("Advisbelob").First().Value;
                    double Advisbelob = double.Parse(strval.Replace('.', ','));
                    strval = o.Descendants("Pbsfaknr").First().Value;
                    int Pbsfaknr = int.Parse(strval);
                    strval = o.Descendants("Vnr").First().Value;
                    int Vnr = int.Parse(strval);
                    strval = o.Descendants("Bogfkonto").First().Value;
                    int Bogfkonto = int.Parse(strval);

                    SidsteSFakID++;
                    SidsteRec_no++;
                    int orebelob = (int)Advisbelob * 100;

                    ordtype_s ord = new ordtype_s
                                    (
                        SidsteSFakID,        //fakid
                        ToDay,               //(o.Betalingsdato > o.Indbetalingsdato) ? (DateTime)o.Betalingsdato : (DateTime)o.Indbetalingsdato, //dato
                        ToDay,               //(DateTime)o.Betalingsdato, //forfaldsdato
                        orebelob,            //fakbeløb i øre
                        (int)Nr2Debktonr(Nr) //debitornr
                                    );
                    recFakturaer_s rec = new recFakturaer_s {
                        rec_no = SidsteRec_no, rec_data = ord
                    };
                    Program.karFakturaer_s.Add(rec);

                    var             m_rec            = (from m in Program.karMedlemmer where m.Nr == Nr select m).First();
                    recFakturastr_s rec_Fakturastr_s = new recFakturastr_s
                    {
                        Fakid   = SidsteSFakID.ToString(),
                        Navn    = m_rec.Navn,
                        Adresse = m_rec.Adresse,
                        Postnr  = m_rec.Postnr,
                        Bynavn  = m_rec.Bynavn,
                        Faknr   = (int)Pbsfaknr,
                        Email   = m_rec.Email
                    };
                    Program.karFakturastr_s.Add(rec_Fakturastr_s);

                    recFakturavarer_s rec_Fakturavarer_s = new recFakturavarer_s
                    {
                        Fakid        = SidsteSFakID.ToString(),
                        Varenr       = (int)Vnr,
                        VareTekst    = "Puls 3060 kontingent",
                        Bogfkonto    = (int)Bogfkonto,
                        Antal        = 1,
                        Fakturabelob = (double)Advisbelob
                    };
                    Program.karFakturavarer_s.Add(rec_Fakturavarer_s);

                    try
                    {
                        XElement fakxml = new XElement("Fak");
                        fakxml.Add(new XElement("Key", Key));
                        fakxml.Add(new XElement("Id", Id));
                        fakxml.Add(new XElement("SFakID", SidsteSFakID));
                        SFakIDupdatexml.Add(new XElement(fakxml));
                    }
                    catch (System.InvalidOperationException)
                    {
                        throw;
                    }
                }
                string strSFakIDupdatexml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + SFakIDupdatexml.ToString();
                string result             = objRest.HttpPost2(clsRest.urlBaseType.data, "order2summa", strSFakIDupdatexml);

                Program.karFakturaer_s.save();
                Program.karFakturastr_s.save();
                Program.karFakturavarer_s.save();

                try
                {
                    recStatus rec_Status = (from s in Program.karStatus where s.key == "SidsteSFakID" select s).First();
                    rec_Status.value = SidsteSFakID.ToString();
                }
                catch (System.InvalidOperationException)
                {
                    recStatus rec_Status = new recStatus
                    {
                        key   = "SidsteSFakID",
                        value = SidsteSFakID.ToString()
                    };
                    Program.karStatus.Add(rec_Status);
                }
                Program.karStatus.save();
            }
            return(AntalOrdre);
        }
Exemplo n.º 21
0
        private void getRykkerForslag()
        {
            int    AntalForslag = 0;
            string Status       = "False";
            IEnumerable <clsqry_medlemmer> qry_medlemmer;

            if (this.RykketTidligere.Checked)
            {
                clsRest   objRest    = new clsRest();
                string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "tidligererykker");
                XDocument xmldata    = XDocument.Parse(strxmldata);
                Status        = xmldata.Descendants("Status").First().Value;
                qry_medlemmer = from h in xmldata.Descendants("RykkerForslag")
                                orderby clsPassXmlDoc.attr_val_int(h, "Nr")
                                select new clsqry_medlemmer
                {
                    Nr            = clsPassXmlDoc.attr_val_int(h, "Nr"),
                    Navn          = clsPassXmlDoc.attr_val_string(h, "Navn"),
                    Adresse       = clsPassXmlDoc.attr_val_string(h, "Adresse"),
                    Postnr        = clsPassXmlDoc.attr_val_string(h, "Postnr"),
                    Betalingsdato = clsPassXmlDoc.attr_val_date(h, "Betalingsdato"),
                    Advisbelob    = (decimal)clsPassXmlDoc.attr_val_double(h, "Advisbelob"),
                    Faknr         = clsPassXmlDoc.attr_val_int(h, "Faknr")
                };
            }
            else
            {
                clsRest   objRest    = new clsRest();
                string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "rykkerforslag");
                XDocument xmldata    = XDocument.Parse(strxmldata);
                Status        = xmldata.Descendants("Status").First().Value;
                qry_medlemmer = from h in xmldata.Descendants("RykkerForslag")
                                orderby clsPassXmlDoc.attr_val_int(h, "Nr")
                                select new clsqry_medlemmer
                {
                    Nr            = clsPassXmlDoc.attr_val_int(h, "Nr"),
                    Navn          = clsPassXmlDoc.attr_val_string(h, "Navn"),
                    Adresse       = clsPassXmlDoc.attr_val_string(h, "Adresse"),
                    Postnr        = clsPassXmlDoc.attr_val_string(h, "Postnr"),
                    Betalingsdato = clsPassXmlDoc.attr_val_date(h, "Betalingsdato"),
                    Advisbelob    = (decimal)clsPassXmlDoc.attr_val_double(h, "Advisbelob"),
                    Faknr         = clsPassXmlDoc.attr_val_int(h, "Faknr")
                };
            }

            var antal = qry_medlemmer.Count();

            this.lvwMedlem.Items.Clear();
            this.lvwRykker.Items.Clear();
            this.pgmForslag.Show();
            this.pgmForslag.Maximum          = antal;
            this.pgmForslag.Minimum          = 0;
            this.pgmForslag.Value            = 0;
            this.pgmForslag.Step             = 1;
            this.pgmForslag.Visible          = true;
            this.Label_Forslagstekst.Visible = false;
            this.cmdRykkere.Visible          = false;
            this.DelsystemBSH.Visible        = false;

            pgmForslag.PerformStep();

            foreach (var m in qry_medlemmer)
            {
                AntalForslag++;
                ListViewItem it = lvwMedlem.Items.Add(m.Nr.ToString(), m.Navn, 0);
                //it.Tag = m;
                it.SubItems.Add(m.Nr.ToString());
                it.SubItems.Add(m.Adresse);
                it.SubItems.Add(m.Postnr);
                it.SubItems.Add(string.Format("{0:yyyy-MM-dd}", m.Betalingsdato));
                it.SubItems.Add(m.Advisbelob.ToString());
                it.SubItems.Add(m.Faknr.ToString());
                pgmForslag.PerformStep();
            }
            this.lvwMedlem.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);

            if (AntalForslag == 0)
            {
                this.Label_Forslagstekst.Text    = "Der er ingen forslag";
                this.Label_Forslagstekst.Visible = true;
                this.cmdRykkere.Visible          = false;
                this.DelsystemBSH.Visible        = false;
            }
            else
            {
                this.Label_Forslagstekst.Visible = false;
                //this.cmdRykkere.Visible = true;
                //this.DelsystemBSH.Visible = true;
            }
            this.pgmForslag.Visible = false;
        }
Exemplo n.º 22
0
        private void cmdRykkere_Click(object sender, EventArgs e)
        {
            string TilPBSFilename;
            int    imax;
            string keyval;
            int    faknr;
            double advisbelob;

            if ((this.cmdRykkere.Text == "Afslut"))
            {
                this.Close();
            }
            this.cmdForslag.Visible = false;
            this.cmdCancel.Visible  = false;
            imax = lvwRykker.Items.Count;
            this.pgmRykker.Maximum = (imax * 4);
            this.pgmRykker.Minimum = 0;
            this.pgmRykker.Value   = 0;
            this.pgmRykker.Visible = true;

            if ((imax == 0))
            {
                this.Label_Rykkertekst.Text    = "Der ikke noget at rykkere";
                this.Label_Rykkertekst.Visible = true;
            }
            else
            {
                XElement headxml = new XElement("TempRykkerforslag");
                headxml.Add(new XElement("Betalingsdato", clsUtil.bankdageplus(DateTime.Today, 5)));
                headxml.Add(new XElement("Bsh", this.DelsystemBSH.Checked));

                var i = 0;
                foreach (ListViewItem lvi in lvwRykker.Items)
                {
                    this.pgmRykker.Value = ++i;
                    keyval     = lvi.Name;
                    advisbelob = double.Parse(lvi.SubItems[5].Text);
                    faknr      = int.Parse(lvi.SubItems[6].Text);

                    XElement linxml = new XElement("TempRykkerforslaglinie");
                    linxml.Add(new XElement("Nr", int.Parse(keyval)));
                    linxml.Add(new XElement("Advisbelob", (decimal)advisbelob));
                    linxml.Add(new XElement("Faknr", faknr));
                    headxml.Add(new XElement(linxml));
                }
                clsRest   objRest    = new clsRest();
                string    strheadxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + headxml.ToString();
                string    strxmldata = objRest.HttpPost2(clsRest.urlBaseType.data, "pbs601", strheadxml);
                XDocument xmldata    = XDocument.Parse(strxmldata);
                string    Status     = xmldata.Descendants("Status").First().Value;
                if (Status == "True")
                {
                    if (this.DelsystemBSH.Checked) //RYKKERE med Indbetalingskort
                    {
                        //objPbs601.faktura_og_rykker_601_action(m_lobnr, fakType.fdrykker);
                        //this.pgmRykker.Value = (imax * 3);
                        //clsSFTP objSFTP = new clsSFTP();
                        //objSFTP.WriteTilSFtp(m_lobnr);
                        //objSFTP.DisconnectSFtp();
                        //objSFTP = null;
                    }
                    else //RYKKERE som emails
                    {
                        var qry_email = from rykkeremail in xmldata.Descendants("RykkerEmail")
                                        select new
                        {
                            Navn  = clsPassXmlDoc.attr_val_string(rykkeremail, "Navn"),
                            Email = clsPassXmlDoc.attr_val_string(rykkeremail, "Email"),
                            Emne  = clsPassXmlDoc.attr_val_string(rykkeremail, "Emne"),
                            Tekst = clsPassXmlDoc.attr_val_string(rykkeremail, "Tekst"),
                        };
                        foreach (var rykkeremail in qry_email)
                        {
                            sendRykkerEmail(rykkeremail.Navn, rykkeremail.Email, rykkeremail.Emne, rykkeremail.Tekst);
                        }
                    }
                    this.pgmRykker.Value = (imax * 3);
                }
            }

            this.pgmRykker.Value = (imax * 4);
            cmdRykkere.Text      = "Afslut";

            TilPBSFilename = "PBSNotFound.lst";
            this.Label_Rykkertekst.Text    = ("Leverance til PBS er gemt i filen " + TilPBSFilename);
            this.Label_Rykkertekst.Visible = true;
            this.pgmRykker.Visible         = false;
        }
Exemplo n.º 23
0
        public void overfoersel_mail(int lobnr)
        {
            Chilkat.MailMan mailman = new Chilkat.MailMan();
            bool            success;

            success = mailman.UnlockComponent("HAFSJOMAILQ_9QYSMgP0oR1h");
            if (success != true)
            {
                throw new Exception(mailman.LastErrorText);
            }

            //  Use the GMail SMTP server
            mailman.SmtpHost = Program.Smtphost;
            mailman.SmtpPort = int.Parse(Program.Smtpport);
            mailman.SmtpSsl  = bool.Parse(Program.Smtpssl);

            //  Set the SMTP login/password.
            mailman.SmtpUsername = Program.Smtpuser;
            mailman.SmtpPassword = Program.Smtppasswd;

            XElement headxml = new XElement("OverforselMail");

            headxml.Add(new XElement("Lobnr", lobnr));
            clsRest   objRest    = new clsRest();
            string    strheadxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + headxml.ToString();
            string    result     = objRest.HttpPost2(clsRest.urlBaseType.data, "overforselmail", strheadxml);
            XDocument xmldata    = XDocument.Parse(result);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status == "True")
            {
                var qry_email = from overforselemail in xmldata.Descendants("OverforselEmail")
                                select new
                {
                    Navn  = clsPassXmlDoc.attr_val_string(overforselemail, "Navn"),
                    Email = clsPassXmlDoc.attr_val_string(overforselemail, "Email"),
                    Tekst = clsPassXmlDoc.attr_val_string(overforselemail, "Tekst"),
                };
                foreach (var msg in qry_email)
                {
                    //  Create a new email object
                    Chilkat.Email email = new Chilkat.Email();

#if (DEBUG)
                    email.Subject = "TEST Bankoverførsel fra Puls 3060: skal sendes til " + Program.MailToName + " " + Program.MailToAddr;
                    email.AddTo(Program.MailToName, Program.MailToAddr);
#else
                    email.Subject = "Bankoverførsel fra Puls 3060";
                    if (msg.Email.Length > 0)
                    {
                        email.AddTo(msg.Navn, msg.Email);
                        email.AddBcc(Program.MailToName, Program.MailToAddr);
                    }
                    else
                    {
                        email.Subject += ": skal sendes til " + msg.Navn;
                        email.AddTo(Program.MailToName, Program.MailToAddr);
                    }
#endif
                    email.Body    = msg.Tekst;
                    email.From    = Program.MailFrom;
                    email.ReplyTo = Program.MailReply;

                    success = mailman.SendEmail(email);
                    if (success != true)
                    {
                        throw new Exception(email.LastErrorText);
                    }
                }
            }
        }
Exemplo n.º 24
0
 public void NrSerieSetupAll()
 {
     clsRest objRest = new clsRest();
     string  retur   = objRest.HttpGet2(clsRest.urlBaseType.data, "nrseriesetupall");
 }
Exemplo n.º 25
0
        private void cmdFakturer_Click(object sender, EventArgs e)
        {
            string TilPBSFilename = "Unknown";
            //int AntalFakturaer;
            int      imax;
            string   keyval;
            DateTime fradato;
            DateTime tildato;
            bool     tilmeldtpbs;
            bool     indmeldelse;

            double advisbelob;

            if ((this.cmdFakturer.Text == "Afslut"))
            {
                this.Close();
            }
            this.cmdForslag.Visible = false;
            this.cmdCancel.Visible  = false;
            imax = lvwKontingent.Items.Count;
            this.pgmFaktura.Maximum = (imax * 4);
            this.pgmFaktura.Minimum = 0;
            this.pgmFaktura.Value   = 0;
            this.pgmFaktura.Visible = true;
            if ((imax == 0))
            {
                this.Label_Fakturatekst.Text    = "Der ikke noget at fakturere";
                this.Label_Fakturatekst.Visible = true;
            }
            else
            {
                XElement headxml = new XElement("TempKontforslag");
                headxml.Add(new XElement("Betalingsdato", clsUtil.bankdageplus(this.DatoKontingentForfald.Value, 0)));
                headxml.Add(new XElement("Bsh", this.DelsystemBSH.Checked));

                var i = 0;
                foreach (ListViewItem lvi in lvwKontingent.Items)
                {
                    this.pgmFaktura.Value = ++i;
                    keyval      = lvi.Name;
                    fradato     = DateTime.Parse(lvi.SubItems[4].Text);
                    advisbelob  = double.Parse(lvi.SubItems[5].Text);
                    tildato     = DateTime.Parse(lvi.SubItems[6].Text);
                    indmeldelse = (lvi.SubItems[7].Text == "J") ? true : false;
                    tilmeldtpbs = (lvi.SubItems[8].Text == "J") ? true : false;

                    XElement linxml = new XElement("TempKontforslaglinie");
                    linxml.Add(new XElement("Nr", int.Parse(keyval)));
                    linxml.Add(new XElement("Advisbelob", (decimal)advisbelob));
                    linxml.Add(new XElement("Fradato", fradato));
                    linxml.Add(new XElement("Tildato", tildato));
                    linxml.Add(new XElement("Indmeldelse", indmeldelse));
                    linxml.Add(new XElement("Tilmeldtpbs", tilmeldtpbs));
                    headxml.Add(new XElement(linxml));
                }
                clsRest objRest    = new clsRest();
                string  strheadxml = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + headxml.ToString();
                string  result     = objRest.HttpPost2(clsRest.urlBaseType.data, "pbs601", strheadxml);

                /*
                 * clsPbs601 objPbs601 = new clsPbs601();
                 * nsPuls3060.clsPbs601.SetLobnr += new nsPuls3060.clsPbs601.Pbs601DelegateHandler(On_clsPbs601_SetLobnr);
                 *
                 * AntalFakturaer = objPbs601.kontingent_fakturer_bs1();
                 * this.pgmFaktura.Value = imax * 2;
                 * if ((AntalFakturaer > 0))
                 * {
                 *  objPbs601.faktura_og_rykker_601_action(m_lobnr, fakType.fdfaktura);
                 *  this.pgmFaktura.Value = (imax * 3);
                 *  clsSFTP objSFTP = new clsSFTP();
                 *  TilPBSFilename = objSFTP.WriteTilSFtp(m_lobnr);
                 *  objSFTP.DisconnectSFtp();
                 *  objSFTP = null;
                 * }
                 */
                this.pgmFaktura.Value           = (imax * 4);
                cmdFakturer.Text                = "Afslut";
                this.DelsystemBSH.Visible       = false;
                this.Label_Fakturatekst.Text    = ("Leverance til PBS i filen " + TilPBSFilename);
                this.Label_Fakturatekst.Visible = true;
                this.pgmFaktura.Visible         = false;
            }
        }
Exemplo n.º 26
0
        public int BogforUdBetalinger(int lobnr)
        {
            int       AntalBetalinger = 0;
            clsRest   objRest         = new clsRest();
            string    strxmldata      = objRest.HttpGet2(clsRest.urlBaseType.data, "udbetaling2summa/" + lobnr.ToString());
            XDocument xmldata         = XDocument.Parse(strxmldata);
            string    Status2         = xmldata.Descendants("Status").First().Value;

            if (Status2 == "True")
            {
                var overforsel = from o in xmldata.Descendants("Overforsel")
                                 select new
                {
                    Id            = clsPassXmlDoc.attr_val_int(o, "Id"),
                    Nr            = clsPassXmlDoc.attr_val_int(o, "Nr"),
                    SFaknr        = clsPassXmlDoc.attr_val_int(o, "SFaknr"),
                    SFakID        = clsPassXmlDoc.attr_val_int(o, "SFakID"),
                    Tilpbsid      = clsPassXmlDoc.attr_val_int(o, "Tilpbsid"),
                    Betalingsdato = clsPassXmlDoc.attr_val_datetime(o, "Betalingsdato"),
                    Advisbelob    = (decimal)clsPassXmlDoc.attr_val_double(o, "Advisbelob"),
                };

                var bogf = from f in Program.karFakturaer_k
                           where f.saldo != 0
                           join o in overforsel on f.fakid equals o.SFakID
                           where o.Tilpbsid == lobnr
                           join m in Program.karMedlemmer on o.Nr equals m.Nr
                           orderby o.Betalingsdato ascending
                           select new
                {
                    Fakid = o.Id,
                    m.Navn,
                    o.SFaknr,
                    o.Betalingsdato,
                    o.Advisbelob
                };
                AntalBetalinger = bogf.Count();
                if (bogf.Count() > 0)
                {
                    int BS1_SidsteNr = 0;
                    try
                    {
                        recStatus rec_Status = (from s in Program.karStatus where s.key == "BS1_SidsteNr" select s).First();
                        BS1_SidsteNr = int.Parse(rec_Status.value);
                    }
                    catch (System.InvalidOperationException)
                    {
                    }

                    Program.karKladde = null;

                    foreach (var b in bogf)
                    {
                        recKladde gkl = new recKladde
                        {
                            Dato             = clsUtil.bankdageplus((DateTime)b.Betalingsdato, -1),
                            Bilag            = ++BS1_SidsteNr,
                            Tekst            = "Overførsel",
                            Afstemningskonto = "Bank",
                            Belob            = -b.Advisbelob,
                            Kontonr          = null,
                            Faknr            = null
                        };
                        Program.karKladde.Add(gkl);
                        recKladde kl = new recKladde
                        {
                            Dato             = clsUtil.bankdageplus((DateTime)b.Betalingsdato, -1),
                            Bilag            = BS1_SidsteNr,
                            Tekst            = "KF" + b.SFaknr + " " + b.Navn,
                            Afstemningskonto = null,
                            Belob            = -b.Advisbelob,
                            Kontonr          = 65100,
                            Faknr            = b.SFaknr
                        };
                        Program.karKladde.Add(kl);
                    }

                    Program.karStatus.save();
                    Program.karKladde.save();
                }
            }
            return(AntalBetalinger);
        }
Exemplo n.º 27
0
        private void excelNotPBS()
        {
            DateTime pReadDate  = DateTime.Now;
            string   pSheetName = "MedlemNotPBS";

            Excel.Application oXL = null;;
            Excel._Workbook   oWB;
            Excel._Worksheet  oSheet;
            Excel.Window      oWindow;
            Excel.Range       oRng;

            var    rec_regnskab = Program.qryAktivRegnskab();
            string SaveAs       = rec_regnskab.Eksportmappe + pSheetName + pReadDate.ToString("_yyyyMMdd_hhmmss") + ".xls";

            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpGet2(clsRest.urlBaseType.data, "personlist");
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status != "True")
            {
                return;
            }
            var MedlemmerAll = from h in xmldata.Descendants("Person")
                               orderby clsPassXmlDoc.attr_val_int(h, "Nr")
                               select new clsMedlemExternAll
            {
                Nr        = clsPassXmlDoc.attr_val_int(h, "Nr"),
                Navn      = clsPassXmlDoc.attr_val_string(h, "Navn"),
                Kaldenavn = clsPassXmlDoc.attr_val_string(h, "Kaldenavn"),
                Adresse   = clsPassXmlDoc.attr_val_string(h, "Adresse"),
                Postnr    = clsPassXmlDoc.attr_val_string(h, "Postnr"),
                Bynavn    = clsPassXmlDoc.attr_val_string(h, "Bynavn"),
                Telefon   = clsPassXmlDoc.attr_val_string(h, "Telefon"),
                Email     = clsPassXmlDoc.attr_val_string(h, "Email"),
                Kon       = clsPassXmlDoc.attr_val_string(h, "Kon"),
                FodtDato  = clsPassXmlDoc.attr_val_date(h, "FodtDato"),
                erMedlem  = (clsPassXmlDoc.attr_val_bool(h, "erMedlem")) ? 1 : 0,
                erPBS     = (clsPassXmlDoc.attr_val_bool(h, "Tilmeldtpbs")) ? 1 : 0,
            };


            var MedlemmerNotPBS = from h in MedlemmerAll
                                  where h.erMedlem == 1 && h.erPBS == 0
                                  select new clsMedlemNotPBS
            {
                Nr        = h.Nr,
                Navn      = h.Navn,
                Kaldenavn = h.Kaldenavn,
                Adresse   = h.Adresse,
                Postnr    = h.Postnr,
                Bynavn    = h.Bynavn,
                Telefon   = h.Telefon,
                Email     = h.Email,
                Kon       = h.Kon,
                PBSnr     = "03985644",
                Debgrnr   = "00001",
                Kundenr   = 032001610000000 + (int)h.Nr
            };

            using (new ExcelUILanguageHelper())
            {
                try
                {
                    //Start Excel and get Application object.
                    oXL         = new Excel.Application();
                    oXL.Visible = true;
                    //Get a new workbook.

                    oWB     = oXL.Workbooks.Add((Missing.Value));
                    oSheet  = (Excel._Worksheet)oWB.ActiveSheet;
                    oWindow = oXL.ActiveWindow;

                    if (pSheetName.Length > 0)
                    {
                        oSheet.Name = pSheetName.Substring(0, pSheetName.Length > 34 ? 34 : pSheetName.Length);
                    }
                    int row = 1;
                    this.MainformProgressBar.Value   = 0;
                    this.MainformProgressBar.Minimum = 0;
                    this.MainformProgressBar.Maximum = (from h in Program.karMedlemmer select h).Count();
                    this.MainformProgressBar.Step    = 1;
                    this.MainformProgressBar.Visible = true;
                    foreach (clsMedlemNotPBS m in MedlemmerNotPBS)
                    {
                        this.MainformProgressBar.PerformStep();
                        row++;
                        Type           objectType = m.GetType();
                        PropertyInfo[] properties = objectType.GetProperties();
                        int            col        = 0;
                        foreach (PropertyInfo property in properties)
                        {
                            col++;
                            string Name = property.Name;
                            //string NamePropertyType = property.GetValue(m, null).GetType().ToString();
                            oSheet.Cells[row, col] = property.GetValue(m, null);
                            if (row == 2)
                            {
                                object[] CustomAttributes = property.GetCustomAttributes(false);
                                foreach (var att in CustomAttributes)
                                {
                                    Type tp = att.GetType();
                                    if (tp.ToString() == "nsPuls3060.Fieldattr")
                                    {
                                        Fieldattr attr    = (Fieldattr)att;
                                        string    heading = attr.Heading;
                                        oSheet.Cells[1, col] = heading;
                                    }
                                }
                            }
                        }
                    }
                    oRng                     = (Excel.Range)oSheet.Rows[1, Missing.Value];
                    oRng.Font.Name           = "Arial";
                    oRng.Font.Size           = 12;
                    oRng.Font.Strikethrough  = false;
                    oRng.Font.Superscript    = false;
                    oRng.Font.Subscript      = false;
                    oRng.Font.OutlineFont    = false;
                    oRng.Font.Shadow         = false;
                    oRng.Font.Bold           = true;
                    oRng.HorizontalAlignment = Excel.Constants.xlCenter;
                    oRng.VerticalAlignment   = Excel.Constants.xlBottom;
                    oRng.WrapText            = false;
                    oRng.Orientation         = 0;
                    oRng.AddIndent           = false;
                    oRng.IndentLevel         = 0;
                    oRng.ShrinkToFit         = false;
                    oRng.MergeCells          = false;

                    string BottomRight = "L" + row.ToString();
                    oRng = oSheet.get_Range("L2", BottomRight);
                    oRng.NumberFormat = "##############";

                    oSheet.Cells.EntireColumn.AutoFit();

                    oWindow.SplitRow    = 1;
                    oWindow.SplitColumn = 2;
                    oWindow.FreezePanes = true;

                    oSheet.get_Range("A1", Missing.Value).Select();

                    for (var i = oWB.Worksheets.Count; i > 0; i--)
                    {
                        Excel._Worksheet oSheetWrk = (Excel._Worksheet)oWB.Worksheets.get_Item(i);
                        if (oSheetWrk.Name != "MedlemNotPBS")
                        {
                            oSheetWrk.Delete();
                        }
                    }


                    oWB.SaveAs(SaveAs, Excel.XlFileFormat.xlWorkbookNormal, "", "", false, false, Excel.XlSaveAsAccessMode.xlExclusive, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
                    oWB.Saved   = true;
                    oXL.Visible = true;
                    this.MainformProgressBar.Visible = false;

                    this.sendNotPBS(SaveAs);

                    //oXL.Quit();
                    //oXL = null;
                }
                catch (Exception theException)
                {
                    String errorMessage;
                    errorMessage = "Error: ";
                    errorMessage = String.Concat(errorMessage, theException.Message);
                    errorMessage = String.Concat(errorMessage, " Line: ");
                    errorMessage = String.Concat(errorMessage, theException.Source);

                    MessageBox.Show(errorMessage, "Error");
                }
            }
        }
Exemplo n.º 28
0
 public void reindexPerson()
 {
     clsRest objRest = new clsRest();
     string  retur   = objRest.HttpGet2(clsRest.urlBaseType.data, "reindex");
 }
Exemplo n.º 29
0
        public bool WriteTilSFtp(XDocument xdoc)
        {
            Guid id1 = clsSQLite.insertStoreXML(Program.sftpName, false, Program.AppEngName, xdoc.ToString(), "");

            m_SendqueueId      = xdoc.Descendants("Sendqueue").Descendants("Id").First().Value;
            m_PbsfileId        = xdoc.Descendants("Pbsfile").Descendants("Id").First().Value;
            m_TilPBSFilename   = xdoc.Descendants("Pbsfile").Descendants("TilPBSFilename").First().Value;
            m_Transmisionsdato = DateTime.Parse(xdoc.Descendants("Pbsfile").Descendants("Transmisionsdato").First().Value);
            m_SendData         = xdoc.Descendants("Pbsfile").Descendants("SendData").First().Value;

            bool   success;
            string TilPBSFilename = m_TilPBSFilename;
            string TilPBSFile     = m_SendData;

            char[] c_TilPBSFile = TilPBSFile.ToCharArray();
            byte[] b_TilPBSFile = System.Text.Encoding.GetEncoding("windows-1252").GetBytes(c_TilPBSFile);
            int    FilesSize    = b_TilPBSFile.Length;

            sendAttachedFile(TilPBSFilename, b_TilPBSFile, true);

            string fullpath = m_Inbound + "/" + TilPBSFilename;
            string handle   = m_sftp.OpenFile(fullpath, "writeOnly", "createTruncate");

            if (handle == null)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            success = m_sftp.WriteFileBytes(handle, b_TilPBSFile);
            if (!success)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            success = m_sftp.CloseHandle(handle);
            if (success != true)
            {
                throw new Exception(m_sftp.LastErrorText);
            }

            clsSQLite.updateStoreXML(id1, true);

            XElement xmlPbsfilesUpdate = new XElement("Pbsfiles");

            xmlPbsfilesUpdate.Add(new XElement("SendqueueId", m_SendqueueId));
            xmlPbsfilesUpdate.Add(new XElement("Id", m_PbsfileId));
            xmlPbsfilesUpdate.Add(new XElement("Type", 8));
            xmlPbsfilesUpdate.Add(new XElement("Path", m_Inbound));
            xmlPbsfilesUpdate.Add(new XElement("Filename", TilPBSFilename));
            xmlPbsfilesUpdate.Add(new XElement("Size", FilesSize));
            xmlPbsfilesUpdate.Add(new XElement("Atime", DateTime.Now));
            xmlPbsfilesUpdate.Add(new XElement("Mtime", DateTime.Now));
            xmlPbsfilesUpdate.Add(new XElement("Transmittime", m_Transmisionsdato));
            string strxmlPbsfilesUpdate = @"<?xml version=""1.0"" encoding=""utf-8"" ?> " + xmlPbsfilesUpdate.ToString();;

            Guid id2 = clsSQLite.insertStoreXML(Program.AppEngName, false, Program.sftpName, strxmlPbsfilesUpdate, "");

            clsRest   objRest    = new clsRest();
            string    strxmldata = objRest.HttpPost2(clsRest.urlBaseType.data, "tilpbs", strxmlPbsfilesUpdate);
            XDocument xmldata    = XDocument.Parse(strxmldata);
            string    Status     = xmldata.Descendants("Status").First().Value;

            if (Status == "True")
            {
                clsSQLite.updateStoreXML(id2, true);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 30
0
        public void fillPerson()
        {
            clsRest   objRest = new clsRest();
            string    retur   = objRest.HttpGet2(clsRest.urlBaseType.sync, "Medlem");
            XDocument xdoc    = XDocument.Parse(retur);
            var       list    = from person in xdoc.Descendants("Person") select person;
            int       antal   = list.Count();

            foreach (var person in list)
            {
                if ((person.Descendants("Nr").First().Value != null) && (person.Descendants("Nr").First().Value != "None"))
                {
                    var Nr        = person.Descendants("Nr").First().Value.Trim();
                    var Navn      = person.Descendants("Navn").First().Value.Trim();
                    var Kaldenavn = person.Descendants("Kaldenavn").First().Value.Trim();
                    var Adresse   = person.Descendants("Adresse").First().Value.Trim();
                    var Postnr    = person.Descendants("Postnr").First().Value.Trim();
                    var Bynavn    = person.Descendants("Bynavn").First().Value.Trim();
                    var Telefon   = person.Descendants("Telefon").First().Value.Trim();
                    if (Telefon == "None")
                    {
                        Telefon = "";
                    }
                    var Email = person.Descendants("Email").First().Value.Trim();
                    if (Email == "None")
                    {
                        Email = "";
                    }
                    var Kon      = person.Descendants("Kon").First().Value.Trim();
                    var FodtDato = person.Descendants("FodtDato").First().Value.Trim();
                    var Bank     = person.Descendants("Bank").First().Value.Trim();
                    if (Bank == "None")
                    {
                        Bank = "";
                    }

                    tblPersonRow PersonRow = (tblPersonRow)tabletblPerson.Rows.Add(
                        Nr,
                        Navn,
                        Kaldenavn,
                        Adresse,
                        Postnr,
                        Bynavn,
                        Telefon,
                        Email,
                        Kon,
                        FodtDato,
                        Bank
                        );

                    PersonRow.AcceptChanges();

                    tblSyncPersonRow SyncPersonRow = (tblSyncPersonRow)tabletblSyncPerson.Rows.Add(
                        Nr,
                        Navn,
                        Kaldenavn,
                        Adresse,
                        Postnr,
                        Bynavn,
                        Telefon,
                        Email,
                        Bank
                        );
                    SyncPersonRow.AcceptChanges();
                }
            }
        }