Esempio n. 1
0
        public frmEenmaligeRekening(DataAdapters da, tblLid lid)
        {
            Common(da);

            rekeningen = da.VulRekeningRecords();
            clbLeden.Items.Add(lid.VolledigeNaam, true);
            localLeden.Add(lid);
        }
Esempio n. 2
0
        public RekeningenLijst GetRekeningenbyLidnr(int LidNr)
        {
            List <tblRekening> objects = (from r in this where r.LidNr == LidNr && !r.Verstuurd select r).ToList();
            // Hoe zou je dit netjes kunnen doen?
            RekeningenLijst x = new RekeningenLijst();

            x.AddRange(objects);
            return(x);
        }
        public frmContributieAanmaken(DataAdapters da, tblParameters Param)
        {
            InitializeComponent();
            leden       = da.VulLedenLijst();
            rekeningen  = da.VulRekeningRecords();
            dataAdaptor = da;

//            param = new tblParameters();
            param          = Param;
            _windowState   = new PersistWindowState(this, @"Leden\ContributieAanmaken");
            reportFileName = param.LocationLogFiles + @"\" + param.ClubNameShort + "_Aangemaakte rekeningen.csv";

            dtpPeilDatum.Value            = param.ContributiePeilDatum;
            cboSelectieType.SelectedIndex = 0;
            clbLidTypes.Items.AddRange(tblLid.LidTypeDescriptions);
            clbLidTypes.Items.RemoveAt(2);


            txtCompBijdrageSen.Text = param.cCompBijdrageSen.ToEuroString();
            txtCompBijdrageJun.Text = param.cCompBijdrageJun.ToEuroString();
            txtBondsBijdrage.Text   = param.cBondsBijdrage.ToEuroString();
            txtSen.Text             = param.cSen.ToEuroString();
            txt65.Text                  = param.c65.ToEuroString();
            txtWlpPup.Text              = param.cWlpPup.ToEuroString();
            txtCadJun.Text              = param.cCadJun.ToEuroString();
            txtKostenRekening.Text      = param.cKostenRekening.ToEuroString();
            txtPercZwerf.Text           = param.cPercZwerf.ToString();
            txtPakketBedrag.Text        = param.cPakketBedrag.ToEuroString();
            txtOmschrijving.Text        = param.cOmschrijving;
            txtKortingVrijwilliger.Text = param.cKortingVrijwilliger.ToEuroString();


            //PersistControlValue.ReadControlValue(txtOmschrijving);
            //PersistControlValue.ReadControlValue(txtCompBijdrageSen);
            //PersistControlValue.ReadControlValue(txtCompBijdrageJun);
            //PersistControlValue.ReadControlValue(txtBondsBijdrage);
            //PersistControlValue.ReadControlValue(txtSen);
            //PersistControlValue.ReadControlValue(txt65);
            //PersistControlValue.ReadControlValue(txtWlpPup);
            //PersistControlValue.ReadControlValue(txtCadJun);
            //PersistControlValue.ReadControlValue(txtKostenRekening);
            //PersistControlValue.ReadControlValue(txtPercZwerf);
            //PersistControlValue.ReadControlValue(txtPakketBedrag);
            //PersistControlValue.ReadControlValue(txtKortingVrijwilliger);
        }
Esempio n. 4
0
        public frmAankondiging(DataAdapters da, tblParameters xParam)
        {
            InitializeComponent();
            param = xParam;
            verstuurdeRekeningenReport = param.LocationLogFiles + @"\" + param.ClubNameShort + @"_Verstuurde rekeningen.csv";
            EmailLogFile = param.LocationLogFiles + @"\" + param.ClubNameShort + "_Mail_Logfile.txt";
            if (!File.Exists(EmailLogFile))
            {
                File.Create(EmailLogFile);
            }
            rekeningen  = da.VulRekeningRecords();
            leden       = da.VulLedenLijst();
            dataAdaptor = da;

            _windowState = new PersistWindowState(this, @"Leden\Aankondiging");

            chkLogEmail.Checked       = param.LogEmail;
            ckbDoNotSendEmail.Checked = param.DoNotSendEmail;


            foreach (Leden.Net.tblRekening rekening in rekeningen)
            {
                if (rekening.Verstuurd)
                {
                    continue;
                }
                if (rekening.Lid.IsIncasso)
                {
                    selectedInc.Add(rekening);
                    sumTotaalInc += rekening.TotaalBedrag;
                    nbrTxtInc++;
                }
                if (rekening.Lid.IsRekening)
                {
                    selectedRek.Add(rekening);
                    sumTotaalRek += rekening.TotaalBedrag;
                    nbrTxtRek++;
                }
            }
            dtpIncassoDatum.Value = DateTime.Now.AddDays(10);
            lblMessage.Text       = "Aantal: " + nbrTxtInc.ToString() + " - Bedrag: " + sumTotaalInc.ToEuroString();
            lblMessageRek.Text    = "Aantal: " + nbrTxtRek.ToString() + " - Bedrag: " + sumTotaalRek.ToEuroString();
        }
Esempio n. 5
0
        public frmEenmaligeRekening(DataAdapters da, LedenLijst l)
        {
            LedenLijst leden;

            Common(da);

            rekeningen = da.VulRekeningRecords();
            leden      = l;

            foreach (tblLid lid in leden)
            {
                if (!lid.Gemerkt)
                {
                    continue;
                }
                clbLeden.Items.Add(lid.VolledigeNaam);
                localLeden.Add(lid);
            }
        }
Esempio n. 6
0
        public static tblRekening CreateRekeningRecord(tblLid lid, RekeningenLijst rekeningen)
        {
            tblRekening rekening = new tblRekening();

            try
            {
                for (int i = 0; i < rekeningen.Count; i++)
                {
                    if (rekeningen[i].RekeningSeqNr > rekening.RekeningSeqNr &&
                        rekeningen[i].LidNr == lid.LidNr)
                    {
                        rekening.RekeningSeqNr = rekeningen[i].RekeningSeqNr;
                    }
                }
                rekening.RekeningSeqNr++;
                rekening.Lid   = lid;
                rekening.LidNr = lid.LidNr;
            }
            catch (Exception ex)
            {
                GuiRoutines.ShowMessage(ex);
            }
            return(rekening);
        }
        public frmRekeningOverzicht2(DataAdapters da, object l)
        {
            InitializeComponent();
            param        = new tblParameters();
            dataAdaptor  = da;
            _windowState = new PersistWindowState(this, @"Leden\RekeningOverzicht");
            PersistControlValue.ReadControlValue(txtStornoKosten);
            rduStornoBrief.Checked = true;
            SetChangeMode(false);


            cboTypeRekening.Items.AddRange(tblRekening.RekeningTypeDescriptions);

            InitializeDataListView(olvRekeningen);

            #region Create Columns
            OLVColumn dlvc00 = new OLVColumn("Nr", "RekeningSeqNr");
            OLVColumn dlvc01 = new OLVColumn("Datum", "AanmaakDatum");
            OLVColumn dlvc02 = new OLVColumn("Verstuurd", "Verstuurd");
            OLVColumn dlvc03 = new OLVColumn("Storno", "Gestorneerd");
            OLVColumn dlvc04 = new OLVColumn("Omschrijving", "Omschrijving");
            OLVColumn dlvc05 = new OLVColumn("Bedrag", "TotaalBedrag");

            dlvc00.Width = 30;
            dlvc01.Width = 70;
            dlvc02.Width = 30;
            dlvc03.Width = 30;
            dlvc04.Width = 300;
            dlvc05.Width = 60;

            dlvc00.UseInitialLetterForGroup = true;
            dlvc00.HeaderTextAlign          = System.Windows.Forms.HorizontalAlignment.Center;
            dlvc00.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
            //
            dlvc01.UseInitialLetterForGroup = true;
            dlvc01.AspectGetter             = delegate(object row)
            {
                return(((tblRekening)row).AanmaakDatum.ToShortDateString());
            };
            //
            dlvc02.UseInitialLetterForGroup = true;
            dlvc02.CheckBoxes   = false;
            dlvc02.IsEditable   = false;
            dlvc02.TextAlign    = System.Windows.Forms.HorizontalAlignment.Center;
            dlvc02.AspectGetter = delegate(object row)
            {
                if (((tblRekening)row).Verstuurd)
                {
                    return("Verstuurd");
                }
                return("");
            };
            dlvc02.Renderer = new MappedImageRenderer(new Object[] { "Verstuurd", Resources.tick16 });
            //
            dlvc03.UseInitialLetterForGroup = true;
            dlvc03.CheckBoxes   = true;
            dlvc03.IsEditable   = false;
            dlvc03.TextAlign    = System.Windows.Forms.HorizontalAlignment.Center;
            dlvc03.AspectGetter = delegate(object row)
            {
                if (((tblRekening)row).Gestorneerd)
                {
                    return("Gestorneerd");
                }
                return("");
            };
            dlvc03.Renderer = new MappedImageRenderer(new Object[] { "Gestorneerd", Resources.star16 });
            //
            dlvc04.UseInitialLetterForGroup = true;
            dlvc05.UseInitialLetterForGroup = true;
            dlvc05.AspectToStringFormat     = "{0:C}";
            dlvc05.TextAlign = HorizontalAlignment.Right;

            //dlvc16.CheckBoxes = true;
            //dlvc16.HeaderTextAlign = System.Windows.Forms.HorizontalAlignment.Center;
            //dlvc16.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
            //dlvc16.ToolTipText = "Is dit contact toegevoegd via Leden administratie?";

            olvRekeningen.Columns.Add(dlvc00);
            olvRekeningen.Columns.Add(dlvc01);
            olvRekeningen.Columns.Add(dlvc02);
            olvRekeningen.Columns.Add(dlvc03);
            olvRekeningen.Columns.Add(dlvc04);
            olvRekeningen.Columns.Add(dlvc05);

            #endregion

            rekeningen = da.VulRekeningRecords();

            ReportRoutines.CreateRekeningingenReport("Aangemaakte contributie rekeningen", rekeningen, @"D:\temp\zz.csv", true);


            if (l is tblLid)
            {
                leden = new LedenLijst();
                tblLid lid = (tblLid)l;
                leden.Add(lid);
                lboLeden.Items.Add(lid.VolledigeNaam);
            }
            if (l is LedenLijst)
            {
                leden = (LedenLijst)l;

                foreach (tblLid lid in leden)
                {
                    lboLeden.Items.Add(lid.VolledigeNaam);
                }
            }
            lboLeden.SelectedIndex = 0;
            olvRekeningen.SetObjects(rekeningen);
            lboLeden_SelectedIndexChanged(this, null);
            lboLeden.Focus();
        }
Esempio n. 8
0
        public frmIncassoInhoud2(DataAdapters da)
        {
            #region Initialize
            InitializeComponent();
            _windowState = new PersistWindowState(this, @"Leden\IncassoInhoud");

            RekeningenLijst r = da.VulRekeningRecords();
            param = new tblParameters();

            var reks = from rek in r where !rek.Verstuurd && rek.Lid.IsIncasso orderby rek.AanmaakDatum select rek;
            // het gebruik van rekeningen geeft een cast error! Daarom maar reks
            //  weer een mooie Linq. Alleen de OrderBy heeft waarschijnlijk ruzie met grouping van OLV

            InitializeDataListView(olvVCard);

            #endregion

            #region Create Columns
            OLVColumn colNaam   = new OLVColumn("Naam", "Naam");
            OLVColumn colDatum  = new OLVColumn("Datum", "Datum");
            OLVColumn dlvc03    = new OLVColumn("Omschrijving", "Omschrijving");
            OLVColumn colBedrag = new OLVColumn("Bedrag", "TotaalBedrag");
            OLVColumn colSeq    = new OLVColumn("IncSeq", "Inc Seq");
            OLVColumn colType   = new OLVColumn("Type", "TypeRekening");

            colNaam.Width   = 170;
            colBedrag.Width = 70;
            dlvc03.Width    = 210;
            colDatum.Width  = 90;
            colSeq.Width    = 50;
            colType.Width   = 90;

            colNaam.UseInitialLetterForGroup   = true;
            colBedrag.UseInitialLetterForGroup = true;
            colBedrag.AspectToStringFormat     = "{0:C}";
            colBedrag.TextAlign = HorizontalAlignment.Right;
            // dlvc03.UseInitialLetterForGroup = true;
            colDatum.Sortable  = true;
            colDatum.TextAlign = HorizontalAlignment.Right;
            colDatum.UseInitialLetterForGroup = true;
            colSeq.UseInitialLetterForGroup   = true;
            colType.UseInitialLetterForGroup  = true;

            olvVCard.Columns.Add(colType);
            olvVCard.Columns.Add(colNaam);
            olvVCard.Columns.Add(colSeq);
            olvVCard.Columns.Add(dlvc03);
            olvVCard.Columns.Add(colBedrag);
            olvVCard.Columns.Add(colDatum);

            colType.AspectGetter = delegate(object row)
            {
                if (((tblRekening)row).TypeRekening == 0)
                {
                    return("Contributie");
                }
                return("Overig");
            };

            colNaam.AspectGetter = delegate(object row)
            {
                tblLid lid = ((tblRekening)row).Lid;
                if (lid != null)
                {
                    return(lid.VolledigeNaam);
                }
                return(string.Empty);
            };


            colSeq.AspectGetter = delegate(object row)
            {
                tblLid lid = ((tblRekening)row).Lid;
                if (lid != null)
                {
                    if (lid.Geincasseerd)
                    {
                        return("RCUR");
                    }
                    else
                    {
                        return("FRST");
                    }
                }
                return(string.Empty);
            };

            colDatum.AspectGetter = delegate(object row)
            {
                return(((tblRekening)row).AanmaakDatum.ToShortDateString());
            };

            #endregion
            olvVCard.SecondarySortColumn = colDatum;
            olvVCard.SetObjects(reks);
        }
        private void cmdMaakRekeningen_Click(object sender, EventArgs e)
        {
            localRekeningen = new RekeningenLijst();
            foreach (tblLid lid in leden)
            {
                bool berekenen = false;
                decContributieBedrag = 0;
                if (lid.Opgezegd)
                {
                    continue;
                }
                if (lid.IsLidContVrij)
                {
                    continue;
                }
                //fout//
                tblRekening rekening = tblRekening.CreateRekeningRecord(lid, rekeningen);
                switch (cboSelectieType.SelectedIndex)
                {
                case 0:     // Alle leden
                    if ((clbLidTypes.CheckedItems.Contains(clbLidTypes.Items[0]) && lid.IsLidNormaal) ||
                        (clbLidTypes.CheckedItems.Contains(clbLidTypes.Items[1]) && lid.IsLidZwerf) ||
                        (clbLidTypes.CheckedItems.Contains(clbLidTypes.Items[2]) && lid.IsLidPakket))
                    {
                        berekenen = true;
                    }
                    ;
                    break;

                case 1:     //Gemerkte leden
                    if (lid.Gemerkt)
                    {
                        berekenen = true;
                    }
                    ;
                    break;

                default: break;
                }

                if (berekenen)
                {
                    rekening.ContributieBedrag = CalculateTotaalBedrag(lid);

                    // als een lid halverwege het seizoen lid wordt dan berekenen we de contributie per maand.
                    // we doen dit niet voor pakket leden.

                    if (ckbRelatief.Checked && lid.LidType != tblLid.constLidPakket)
                    {
                        // bereken eerst het aantal maanden tussen peildatum en inschrijfdatum.
                        var dateSpan = DateTimeSpan.CompareDates(lid.LidVanaf, dtpPeilDatum.Value);

                        // stel berekende maanden is 4 dan krijgt het lid 4 maanden korting.
                        int     aantalMaanden = dateSpan.Months + 1; // +1 omdat we vanaf de eerst volgende maand berekenen.
                        decimal korting       = decimal.Round((decContributieBedrag * aantalMaanden) / 6, 2);
                        rekening.Korting      += korting;
                        rekening.TotaalBedrag -= korting;
                    }

                    if (!lid.IsLidPakket && lid.VastBedrag == 0)
                    {
                        rekening.Korting      += lid.Korting;
                        rekening.TotaalBedrag -= lid.Korting;

                        if (lid.CompGerechtigd)
                        {
                            string cat = DateRoutines.LeeftijdCategorieContributie(lid.GeboorteDatum, dtpPeilDatum.Value);
                            if (cat == tblLid.constPupil || cat == tblLid.constJunior)
                            {
                                rekening.CompetitieBijdrage = txtCompBijdrageJun.ToFromDecimal;
                            }
                            else
                            {
                                rekening.CompetitieBijdrage = txtCompBijdrageSen.ToFromDecimal;
                            }
                            rekening.TotaalBedrag += rekening.CompetitieBijdrage;
                        }

                        if (lid.LidBond)
                        {
                            rekening.Bondsbijdrage = decimal.Round((txtBondsBijdrage.ToFromDecimal / 2), 2);
                            rekening.TotaalBedrag += rekening.Bondsbijdrage;
                        }

                        if (lid.IsRekening || lid.IsZelfBetaler)
                        {
                            rekening.ExtraBedrag   = txtKostenRekening.ToFromDecimal;
                            rekening.TotaalBedrag += rekening.ExtraBedrag;
                        }
                        // Ik ga hier de bijdrage voor taak uitrekenen
                        // regeling toepassen && geen vaste taak && taak niet uitgevoerd  of
                        // regeling toepassen && afkopen

                        if (rekening.Lid.Is_SEN1_65_SEN)
                        {
                            if (rekening.Lid.VrijwillgersRegelingIsVanToepassing)
                            {
                                rekening.BedragKortingVrijwilliger = 0;
                                if (rekening.Lid.VrijwillgersVasteTaak)
                                {
                                    rekening.BedragKortingVrijwilliger = txtKortingVrijwilliger.ToFromDecimal;
                                    if (lid.LidType == tblLid.constLidZwerflid)
                                    {
                                        rekening.BedragKortingVrijwilliger = (rekening.BedragKortingVrijwilliger * Convert.ToInt32(txtPercZwerf.Text)) / 100;
                                    }
                                }
                            }
                            else
                            {
                                rekening.BedragKortingVrijwilliger = txtKortingVrijwilliger.ToFromDecimal;
                            }
                        }
                        else
                        {
                            rekening.BedragKortingVrijwilliger = 0;
                        }
                    }
                    rekening.TotaalBedrag  -= rekening.BedragKortingVrijwilliger;
                    rekening.TotaalBedrag  += rekening.ContributieBedrag;
                    rekening.Omschrijving   = txtOmschrijving.Text + " " + lid.NetteNaam;
                    rekening.IBAN           = param.IBAN;
                    rekening.BIC            = param.BIC;
                    rekening.AanmaakDatum   = DateTime.Now;
                    rekening.PeilDatum      = dtpPeilDatum.Value;
                    rekening.TypeRekening   = 0;
                    rekening.Verstuurd      = false;
                    rekening.VerstuurdDatum = DateTime.Now;

                    if (rekening.TotaalBedrag != 0)
                    {
                        localRekeningen.Add(rekening);
                    }
                }
            }
            ReportRoutines.CreateRekeningingenReport("Aangemaakte contributie rekeningen", localRekeningen, reportFileName, true);
            MessageBox.Show(localRekeningen.Count.ToString() + " rekeningen aangemaakt.\nZie " + reportFileName, "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
Esempio n. 10
0
        /// <summary>
        /// Schrijft aangemaakte rekeningen aan het einde van een file.
        /// </summary>
        /// <param name="titel"></param>
        /// <param name="rekeningen"></param>
        /// <param name="outputfile"></param>
        /// <param name="append">Append or new file</param>
        public static void CreateRekeningingenReport(string titel, RekeningenLijst rekeningen, string outputfile, bool append)
        {
            StreamWriter sw = new StreamWriter(outputfile, append);

            sw.WriteLine(titel + "    *** " + DateTime.Today.ToShortDateString() + " ***");
            decimal       amtTotal              = 0;
            decimal       amtKorting            = 0;
            decimal       amtCompetitieBijdrage = 0;
            decimal       amtContributieBedrag  = 0;
            decimal       amtBondsbijdrage      = 0;
            decimal       amtExtraBedrag        = 0;
            decimal       amtAfkoopTaak         = 0;
            List <string> columns = new List <string>();

            columns.Add("Lidnr");
            columns.Add("Naam");
            columns.Add("LB");
            columns.Add("CG");
            columns.Add("Leeftijd");
            columns.Add("LidType");
            columns.Add("BetaalWijze");
            columns.Add("RekType");
            columns.Add("TotBedrag");
            columns.Add("ContBedrag");
            columns.Add("Korting");
            columns.Add("CompBijdr");
            columns.Add("Bondsbijdr");
            columns.Add("ExtraBedr");
            columns.Add("Taakafkoop");
            columns.Add("Omschrijving");
            columns.Add("Verstuurd");
            columns.Add("IBAN");
            columns.Add("BIC");
            columns.Add("U-Pas");


            sw.WriteLine(String.Join(";", columns.ToArray()));

            foreach (tblRekening rekening in rekeningen)
            {
                columns.Clear();

                columns.Add(rekening.Lid.LidNr.ToString());
                columns.Add(rekening.Lid.VolledigeNaam);
                columns.Add(rekening.Lid.LidBond ? "J" : "N");
                columns.Add(rekening.Lid.CompGerechtigd ? "J" : "N");
                columns.Add(DateRoutines.LeeftijdCategorieContributie(rekening.Lid.GeboorteDatum, rekening.PeilDatum));
                columns.Add(rekening.Lid.LidType);
                columns.Add(rekening.Lid.BetaalWijze);

                columns.Add(rekening.TypeRekening.ToString());
                columns.Add(rekening.TotaalBedrag.ToCSVString());
                if (rekening.IsContributie)
                {
                    columns.Add(rekening.ContributieBedrag.ToCSVString());
                    columns.Add(rekening.Korting.ToCSVString());
                    columns.Add(rekening.CompetitieBijdrage.ToCSVString());
                    columns.Add(rekening.Bondsbijdrage.ToCSVString());
                    columns.Add(rekening.ExtraBedrag.ToCSVString());
                    columns.Add(rekening.BedragKortingVrijwilliger.ToCSVString());
                }
                else
                {
                    columns.Add(string.Empty);
                    columns.Add(string.Empty);
                    columns.Add(string.Empty);
                    columns.Add(string.Empty);
                    columns.Add(string.Empty);
                    columns.Add(string.Empty);
                }
                columns.Add(rekening.Omschrijving);
                columns.Add(rekening.Verstuurd ?  "J" : "N");
                columns.Add(rekening.IBAN);
                columns.Add(rekening.BIC);
                columns.Add(rekening.Lid.U_PasNr);

                amtTotal              += rekening.TotaalBedrag;
                amtKorting            += rekening.Korting;
                amtCompetitieBijdrage += rekening.CompetitieBijdrage;
                amtContributieBedrag  += rekening.ContributieBedrag;
                amtBondsbijdrage      += rekening.Bondsbijdrage;
                amtExtraBedrag        += rekening.ExtraBedrag;
                amtAfkoopTaak         += rekening.BedragKortingVrijwilliger;
                sw.WriteLine(String.Join(";", columns.ToArray()));
            }

            columns.Clear();
            columns.Add("Totaal bestand");
            columns.Add(string.Empty);
            columns.Add(string.Empty);
            columns.Add(string.Empty);
            columns.Add(string.Empty);
            columns.Add(string.Empty);
            columns.Add(string.Empty);
            columns.Add(amtTotal.ToCSVString());
            columns.Add(amtContributieBedrag.ToCSVString());
            columns.Add(amtKorting.ToCSVString());
            columns.Add(amtCompetitieBijdrage.ToCSVString());
            columns.Add(amtBondsbijdrage.ToCSVString());
            columns.Add(amtExtraBedrag.ToCSVString());
            columns.Add(amtAfkoopTaak.ToCSVString());

            sw.WriteLine(String.Join(";", columns.ToArray()));

            sw.Close();
        }