Ejemplo n.º 1
0
        public void AddNyKladde(Tblbilag recBilag, Tblbankkonto recBankkonto)
        {
            var qry = from k in recBilag.Tblkladder
                      select new Tblwkladder
            {
                Tekst            = k.Tekst,
                Afstemningskonto = k.Afstemningskonto,
                Belob            = k.Belob,
                Konto            = k.Konto,
                Momskode         = k.Momskode,
                Faktura          = k.Faktura
            };
            int antal = qry.Count();

            int bilagnr = 0;

            try
            {
                bilagnr = (from b in ((IList <Tblwbilag>) this.tblwbilagBindingSource.List) select b.Bilag).Max();
                bilagnr++;
            }
            catch
            {
                bilagnr = Program.karStatus.BS1_NæsteNr();
            }

            DateTime BankDato;

            try
            {
                BankDato = (DateTime)recBankkonto.Dato;
            }
            catch
            {
                BankDato = DateTime.Today;
            }

            Tblwbilag recwBilag = new Tblwbilag
            {
                Bilag = bilagnr,
                Dato  = BankDato
            };

            if (!ReducerBilag(recwBilag, recBilag, recBankkonto))
            {
                foreach (var k in qry)
                {
                    recwBilag.Tblwkladder.Add(k);
                }
                this.tblwbilagBindingSource.Add(recwBilag);
            }
            this.tblwbilagBindingSource.MoveLast();
        }
Ejemplo n.º 2
0
        public static void Bilagsudskrift(bool bDialog)
        {
            Tblbilag[] Bilag;
            var        qry = from b in Program.dbDataTransSumma.Tblbilag
                             where b.Udskriv == true &&
                             b.Tbltrans.Count() > 0
                             select b;
            int count = qry.Count();
            int iMax  = 99999;

            if (count > iMax)
            {
                Bilag = new Tblbilag[iMax];
            }
            else
            {
                Bilag = new Tblbilag[count];
            }

            int i = 0;

            foreach (var b in qry)
            {
                Bilag[i++] = b;
                b.Udskriv  = false;
                if (i >= iMax)
                {
                    break;
                }
            }

            PrintDialog dialog = new PrintDialog();

            if (bDialog)
            {
                if (dialog.ShowDialog() != true)
                {
                    return;
                }
            }
            var paginator = new BilagsudskriftPaginator(Bilag, new Size(dialog.PrintableAreaWidth, dialog.PrintableAreaHeight));

            dialog.PrintDocument(paginator, "Bilagsudskrift");
            Program.dbDataTransSumma.SubmitChanges();
        }
Ejemplo n.º 3
0
        private void cmdKopier_Click(object sender, EventArgs e)
        {
            FrmMain      frmMain      = this.ParentForm as FrmMain;
            Tblbankkonto recBankkonto = null;

            try
            {
                FrmBankkontoudtog frmBankkontoudtog = frmMain.GetChild("Bank kontoudtog") as FrmBankkontoudtog;
                recBankkonto = frmBankkontoudtog.GetrecBankkonto();
            }
            catch { }

            try
            {
                FrmNyekladder frmNyekladder = frmMain.GetChild("Nye kladder") as FrmNyekladder;
                Tblbilag      recBilag      = this.tblbilagBindingSource.Current as Tblbilag;
                frmNyekladder.AddNyKladde(recBilag, recBankkonto);
            }
            catch { }
        }
Ejemplo n.º 4
0
        public void ImportPosteringsjournal()
        {
            var leftqry_Posteringsjournal =
                from h in Program.karPosteringsjournal
                join d1 in Program.dbHafsjoldData.Tblbilag on new { h.Rid, h.Bilag } equals new { d1.Rid, d1.Bilag } into details
            from d1 in details.DefaultIfEmpty(new Tblbilag {
                Pid = 0, Rid = (int?)null, Bilag = (int?)null, Dato = (DateTime?)null, Udskriv = (bool?)null
            })
            where d1.Bilag == null
            select h;

            var qry_nyebilag =
                from p in leftqry_Posteringsjournal
                group p by new { p.Rid, p.Dato, p.Bilag } into g
                select new { RDB = g.Key, Antal = g.Count() };



            int AntalBilag = qry_nyebilag.Count();

            if (AntalBilag > 0)
            {
                foreach (var rec_nyebilag in qry_nyebilag)
                {
                    Tblbilag m_rec_bilag = new Tblbilag
                    {
                        Rid     = rec_nyebilag.RDB.Rid,
                        Bilag   = rec_nyebilag.RDB.Bilag,
                        Dato    = rec_nyebilag.RDB.Dato,
                        Udskriv = true
                    };
                    Program.dbHafsjoldData.Tblbilag.InsertOnSubmit(m_rec_bilag);
                }
                Program.dbHafsjoldData.SubmitChanges();
            }

            var qry_nyetrans1 =
                from h in Program.karPosteringsjournal
                join d1 in Program.dbHafsjoldData.Tblbilag on new { h.Rid, h.Bilag } equals new { d1.Rid, d1.Bilag } into details
            from d1 in details.DefaultIfEmpty(new Tblbilag {
                Pid = 0, Rid = (int?)null, Bilag = (int?)null, Dato = (DateTime?)null, Udskriv = (bool?)null
            })
            where d1.Bilag != null
            select new Tbltrans
            {
                Skjul     = (bool?)false,
                Bilagpid  = d1.Pid,
                Tekst     = h.Tekst,
                Kontonr   = h.Konto,
                Kontonavn = h.Kontonavn,
                Moms      = h.Moms,
                Debet     = (h.Bruttobeløb > 0) ? h.Bruttobeløb : (decimal?)null,
                Kredit    = (h.Bruttobeløb < 0) ? -h.Bruttobeløb : (decimal?)null,
                Id        = h.Id,
                Nr        = h.Nr,
                Belob     = h.Bruttobeløb,
                Afstem    = (int?)null
            };

            var qry_nyetrans2 =
                from h in qry_nyetrans1
                join d1 in Program.dbHafsjoldData.Tbltrans on new { h.Bilagpid, h.Id } equals new { d1.Bilagpid, d1.Id } into details
            from d1 in details.DefaultIfEmpty(new Tbltrans {
                Pid = 0, Skjul = (bool?)false, Bilagpid = (int?)null, Tekst = null, Kontonr = (int?)null, Kontonavn = null, Moms = (decimal?)null, Debet = (decimal?)null, Kredit = (decimal?)null, Id = (int?)null, Nr = (int?)null, Belob = (decimal?)null, Afstem = (int?)null
            })
            where d1.Bilagpid == null
            select h;
            int AntalTrans = qry_nyetrans2.Count();

            if (AntalTrans > 0)
            {
                foreach (Tbltrans rec_nyetrans in qry_nyetrans2)
                {
                    Program.dbHafsjoldData.Tbltrans.InsertOnSubmit(rec_nyetrans);
                }
                Program.dbHafsjoldData.SubmitChanges();
            }
        }
Ejemplo n.º 5
0
        public void ImportKladder()
        {
            var leftqry_Kladder =
                from h in Program.karKladder
                join d1 in Program.dbHafsjoldData.Tblbilag on new { h.Rid, h.Bilag } equals new { d1.Rid, d1.Bilag } into details
            from d1 in details.DefaultIfEmpty(new Tblbilag {
                Pid = 0, Rid = (int?)null, Bilag = (int?)null, Dato = (DateTime?)null, Udskriv = (bool?)null
            })
            where d1.Bilag == null
            select h;

            var qry_nyebilag =
                from p in leftqry_Kladder
                group p by new { p.Rid, p.Dato, p.Bilag } into g
                select new { RDB = g.Key, Antal = g.Count() };



            int AntalBilag = qry_nyebilag.Count();

            if (AntalBilag > 0)
            {
                foreach (var rec_nyebilag in qry_nyebilag)
                {
                    Tblbilag m_rec_bilag = new Tblbilag
                    {
                        Rid     = rec_nyebilag.RDB.Rid,
                        Bilag   = rec_nyebilag.RDB.Bilag,
                        Dato    = rec_nyebilag.RDB.Dato,
                        Udskriv = true
                    };
                    Program.dbHafsjoldData.Tblbilag.InsertOnSubmit(m_rec_bilag);
                }
                Program.dbHafsjoldData.SubmitChanges();
            }

            var qry_nyekladder1 =
                from h in Program.karKladder
                join d1 in Program.dbHafsjoldData.Tblbilag on new { h.Rid, h.Bilag } equals new { d1.Rid, d1.Bilag } into details
            from d1 in details.DefaultIfEmpty(new Tblbilag {
                Pid = 0, Rid = (int?)null, Bilag = (int?)null, Dato = (DateTime?)null, Udskriv = (bool?)null
            })
            where d1.Bilag != null
            select new Tblkladder
            {
                Bilagpid         = d1.Pid,
                Tekst            = h.Tekst,
                Afstemningskonto = h.Afstemningskonto,
                Belob            = h.Belob,
                Konto            = h.Konto,
                Momskode         = h.MomsKode,
                Faktura          = h.Faknr,
                Id = h.Id
            };
            var qry_nyekladder2 =
                from h in qry_nyekladder1
                join d1 in Program.dbHafsjoldData.Tblkladder on new { h.Bilagpid, h.Id } equals new { d1.Bilagpid, d1.Id } into details
            from d1 in details.DefaultIfEmpty(new Tblkladder {
                Pid = 0, Bilagpid = (int?)null, Tekst = null, Afstemningskonto = null, Belob = (decimal?)null, Konto = (int?)null, Momskode = null, Faktura = (int?)null, Id = (int?)null
            })
            where d1.Bilagpid == null
            select h;
            int AntalTrans = qry_nyekladder2.Count();

            if (AntalTrans > 0)
            {
                foreach (Tblkladder rec_nyekladder in qry_nyekladder2)
                {
                    Program.dbHafsjoldData.Tblkladder.InsertOnSubmit(rec_nyekladder);
                }
                Program.dbHafsjoldData.SubmitChanges();
            }
        }
Ejemplo n.º 6
0
        private void importerTransaktionerToolStripMenuItem_Click(object sender, EventArgs e)
        {
            int?     lastBilag      = null;
            string   Kontonavn      = null;
            Tblbilag recBilag       = null;
            var      qryPosteringer = from p in Program.karPosteringer
                                      join b in Program.dbDataTransSumma.Tbltrans on new { p.Regnskabid, p.Id, p.Nr } equals new { b.Regnskabid, b.Id, b.Nr } into tbltrans
            from b in tbltrans.DefaultIfEmpty(new Tbltrans {
                Pid = 0, Regnskabid = null, Id = null, Nr = null
            })
            where b.Pid == 0
            orderby p.Regnskabid, p.Bilag, p.Id, p.Nr
            select p;
            int antal = qryPosteringer.Count();

            foreach (var p in qryPosteringer)
            {
                if ((!(p.Bilag == null)) && (lastBilag != p.Bilag))
                {
                    try
                    {
                        recBilag = (from b in Program.dbDataTransSumma.Tblbilag
                                    where b.Regnskabid == p.Regnskabid && b.Bilag == p.Bilag
                                    select b).First();
                    }
                    catch
                    {
                        recBilag = new Tblbilag
                        {
                            Regnskabid = p.Regnskabid,
                            Bilag      = p.Bilag,
                            Dato       = p.Dato,
                            Udskriv    = true,
                        };
                        Program.dbDataTransSumma.Tblbilag.InsertOnSubmit(recBilag);
                    }
                }

                try
                {
                    Kontonavn = (from b in Program.karKontoplan where b.Kontonr == p.Konto select b.Kontonavn).First();
                }
                catch
                {
                    Kontonavn = null;
                }

                Tbltrans recTrans = new Tbltrans
                {
                    Regnskabid = p.Regnskabid,
                    Tekst      = p.Tekst,
                    Kontonr    = p.Konto,
                    Kontonavn  = Kontonavn,
                    Id         = p.Id,
                    Nr         = p.Nr,
                    Belob      = p.Nettobeløb + p.Momsbeløb,
                    Moms       = p.Momsbeløb,
                    Debet      = (p.Nettobeløb >= 0) ? p.Nettobeløb : (decimal?)null,
                    Kredit     = (p.Nettobeløb < 0) ? -p.Nettobeløb : (decimal?)null,
                };
                Program.dbDataTransSumma.Tbltrans.InsertOnSubmit(recTrans);
                if (!(p.Bilag == 0))
                {
                    recBilag.Tbltrans.Add(recTrans);
                }
                lastBilag = p.Bilag;
            }
            Program.dbDataTransSumma.SubmitChanges();


            lastBilag = 0;
            var qryKladder = from k in Program.karKladder
                             join b in Program.dbDataTransSumma.Tblkladder on new { k.Regnskabid, k.Id } equals new { b.Regnskabid, b.Id } into tblkladder
            from b in tblkladder.DefaultIfEmpty(new Tblkladder {
                Pid = 0, Regnskabid = null, Id = null
            })
            where b.Pid == 0
            orderby k.Regnskabid, k.Bilag, k.Id
            select k;

            antal = qryKladder.Count();
            foreach (var k in qryKladder)
            {
                if ((!(k.Bilag == null)) && (lastBilag != k.Bilag))
                {
                    try
                    {
                        recBilag = (from b in Program.dbDataTransSumma.Tblbilag
                                    where b.Regnskabid == k.Regnskabid && b.Bilag == k.Bilag
                                    select b).First();
                    }
                    catch
                    {
                        recBilag = new Tblbilag
                        {
                            Regnskabid = k.Regnskabid,
                            Bilag      = k.Bilag,
                            Dato       = k.Dato,
                            Udskriv    = true,
                        };
                        Program.dbDataTransSumma.Tblbilag.InsertOnSubmit(recBilag);
                    }
                }

                Tblkladder recKladder = new Tblkladder
                {
                    Regnskabid       = k.Regnskabid,
                    Tekst            = k.Tekst,
                    Afstemningskonto = k.Afstemningskonto,
                    Belob            = k.Belob,
                    Konto            = k.Konto,
                    Momskode         = k.Momskode,
                    Faktura          = k.Faktura,
                    Id = k.Id,
                };
                Program.dbDataTransSumma.Tblkladder.InsertOnSubmit(recKladder);
                if (!(k.Bilag == 0))
                {
                    recBilag.Tblkladder.Add(recKladder);
                }
                lastBilag = k.Bilag;
            }
            Program.dbDataTransSumma.SubmitChanges();
        }
Ejemplo n.º 7
0
        private bool ReducerBilag(Tblwbilag recwBilag, Tblbilag recBilag, Tblbankkonto recBankkonto)
        {
            bool    IsFound_BankKontoudtog = (recBankkonto != null);
            decimal BankBelob       = 0;
            decimal MomsBelob       = 0;
            decimal AndenKontoBelob = 0;
            int?    AndenKontoKonto = null;
            string  AndenKontoTekst = "";
            string  AndenKontoMomskode;
            string  AndenKontoAfstemningskonto = "";
            string  MK          = "";
            bool    bBankKonto  = false;
            bool    bMomsKonto  = false;
            bool    bAndenKonto = false;
            bool    bAfstem     = false;
            bool    bMomskode   = false;

            int AntalLinier = recBilag.Tblkladder.Count;

            if (AntalLinier <= 3)
            {
                foreach (Tblkladder recKladder in recBilag.Tblkladder)
                {
                    if ((recKladder.Afstemningskonto != null) && (recKladder.Afstemningskonto != ""))
                    {
                        bAfstem = true;
                    }

                    if (recKladder.Konto != null)
                    {
                        switch (recKladder.Konto)
                        {
                        case 58000:
                            bBankKonto = true;
                            BankBelob  = (decimal)recKladder.Belob;
                            break;

                        case 66100:
                            bMomsKonto = true;
                            MomsBelob  = (decimal)recKladder.Belob;
                            MK         = "S25";
                            break;

                        case 66200:
                            bMomsKonto = true;
                            MomsBelob  = (decimal)recKladder.Belob;
                            MK         = "K25";
                            break;

                        default:
                            bAndenKonto     = true;
                            AndenKontoBelob = (decimal)recKladder.Belob;
                            AndenKontoTekst = recKladder.Tekst;
                            AndenKontoKonto = (int)recKladder.Konto;
                            if ((recKladder.Afstemningskonto != null) && (recKladder.Afstemningskonto != ""))
                            {
                                AndenKontoAfstemningskonto = recKladder.Afstemningskonto;
                            }
                            if ((recKladder.Momskode != null) && (recKladder.Momskode != ""))
                            {
                                AndenKontoMomskode = recKladder.Momskode;
                            }
                            break;
                        }
                    }

                    if ((recKladder.Momskode != null) && (recKladder.Momskode != ""))
                    {
                        bMomskode = true;
                    }
                }

                if ((AntalLinier == 3) &&
                    (bBankKonto) &&
                    (bMomsKonto) &&
                    (bAndenKonto) &&
                    (!bAfstem) &&
                    (!bMomskode))
                {
                    decimal MomsBelobDif = -MomsBelob + (AndenKontoBelob * decimal.Parse(" 0,25"));
                    if ((MomsBelobDif > -decimal.Parse(" 0,01")) &&
                        (MomsBelobDif < decimal.Parse(" 0,01")))
                    {
                        Tblwkladder recWkladder = new Tblwkladder
                        {
                            Tekst            = AndenKontoTekst,
                            Afstemningskonto = "Bank",
                            Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : BankBelob,
                            Konto            = AndenKontoKonto,
                            Momskode         = MK
                        };
                        recwBilag.Tblwkladder.Add(recWkladder);
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }
                }

                if ((AntalLinier == 2) &&
                    (bBankKonto) &&
                    (!bMomsKonto) &&
                    (bAndenKonto) &&
                    (!bAfstem) &&
                    (!bMomskode))
                {
                    Tblwkladder recWkladder = new Tblwkladder
                    {
                        Tekst            = AndenKontoTekst,
                        Afstemningskonto = "Bank",
                        Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : BankBelob,
                        Konto            = AndenKontoKonto
                    };
                    recwBilag.Tblwkladder.Add(recWkladder);
                    this.tblwbilagBindingSource.Add(recwBilag);
                    return(true);
                }

                if ((AntalLinier == 1) &&
                    (!bBankKonto) &&
                    (bAndenKonto) &&
                    (bAfstem))
                {
                    Tblwkladder recWkladder = new Tblwkladder
                    {
                        Tekst            = AndenKontoTekst,
                        Afstemningskonto = AndenKontoAfstemningskonto,
                        Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : BankBelob,
                        Konto            = AndenKontoKonto,
                        Momskode         = MK
                    };
                    recwBilag.Tblwkladder.Add(recWkladder);
                    this.tblwbilagBindingSource.Add(recwBilag);
                    return(true);
                }
            }
            return(false);
        }
Ejemplo n.º 8
0
        public override DocumentPage GetPage(int pageNumber)
        {
            Tblbilag Bilag       = null;
            int      wpageNumber = 0;

            for (int i = 0; i < _BilagPages.Length; i++)
            {
                if ((pageNumber >= wpageNumber) && (pageNumber < wpageNumber + _BilagPages[i]))
                {
                    Bilag = new Tblbilag
                    {
                        Pid        = _Bilag[i].Pid,
                        Regnskabid = _Bilag[i].Regnskabid,
                        Bilag      = _Bilag[i].Bilag,
                        Dato       = _Bilag[i].Dato,
                        Udskriv    = _Bilag[i].Udskriv
                    };

                    int jMin = (pageNumber - wpageNumber) * _RowsPerPage;
                    int jMax = Math.Min(_Bilag[i].Tbltrans.Count(), jMin + _RowsPerPage);
                    Debug.Assert(jMin >= 0);
                    for (int j = jMin; j < jMax; j++)
                    {
                        Tbltrans Trans = new Tbltrans
                        {
                            Pid        = _Bilag[i].Tbltrans[j].Pid,
                            Regnskabid = _Bilag[i].Tbltrans[j].Regnskabid,
                            Skjul      = _Bilag[i].Tbltrans[j].Skjul,
                            Bilagpid   = _Bilag[i].Tbltrans[j].Bilagpid,
                            Tekst      = _Bilag[i].Tbltrans[j].Tekst,
                            Kontonr    = _Bilag[i].Tbltrans[j].Kontonr,
                            Kontonavn  = _Bilag[i].Tbltrans[j].Kontonavn,
                            Moms       = _Bilag[i].Tbltrans[j].Moms,
                            Debet      = _Bilag[i].Tbltrans[j].Debet,
                            Kredit     = _Bilag[i].Tbltrans[j].Kredit,
                            Id         = _Bilag[i].Tbltrans[j].Id,
                            Nr         = _Bilag[i].Tbltrans[j].Nr,
                            Belob      = _Bilag[i].Tbltrans[j].Belob,
                            Afstem     = _Bilag[i].Tbltrans[j].Afstem,
                        };
                        Bilag.Tbltrans.Add(Trans);
                    }
                    break;
                }
                else
                {
                    wpageNumber += _BilagPages[i];
                }
            }

            var page = new PageElement(Bilag)
            {
                Width  = PageSize.Width,
                Height = PageSize.Height,
            };

            page.Measure(PageSize);
            page.Arrange(new Rect(new Point(0, 0), PageSize));

            return(new DocumentPage(page));
        }
Ejemplo n.º 9
0
 public PageElement(Tblbilag Bilag)
 {
     Margin = new Thickness(PageMargin);
     _Bilag = Bilag;
 }
Ejemplo n.º 10
0
        private bool ReducerBilag(Tblwbilag recwBilag, Tblbilag recBilag, Tblbankkonto recBankkonto)
        {
            bool    IsFound_BankKontoudtog = (recBankkonto != null);
            decimal BankBelob                  = 0;
            decimal MomsBelob                  = 0;
            decimal AndenKontoBelob            = 0;
            int?    AndenKontoKonto            = null;
            string  AndenKontoTekst            = "";
            string  AndenKontoMomskode         = "";
            string  AndenKontoAfstemningskonto = "";
            string  MK          = "";
            bool    bBankKonto  = false;
            bool    bMomsKonto  = false;
            bool    bAndenKonto = false;
            bool    bAfstem     = false;
            bool    bMomskode   = false;

            var qry = from k in recBilag.Tblkladder
                      select new Tblwkladder
            {
                Tekst            = k.Tekst,
                Afstemningskonto = k.Afstemningskonto,
                Belob            = k.Belob,
                Konto            = k.Konto,
                Momskode         = k.Momskode,
                Faktura          = k.Faktura
            };

            int AntalLinier = recBilag.Tblkladder.Count;


            if ((!IsFound_BankKontoudtog) || (IsFound_BankKontoudtog && recBankkonto.Bankkontoid == 1)) //BANK
            {
                if (AntalLinier <= 3)
                {
                    foreach (Tblkladder recKladder in recBilag.Tblkladder)
                    {
                        if ((recKladder.Afstemningskonto != null) && (recKladder.Afstemningskonto != ""))
                        {
                            bAfstem = true;
                        }

                        if (recKladder.Konto != null)
                        {
                            switch (recKladder.Konto)
                            {
                            case 58000:
                                bBankKonto = true;
                                BankBelob  = (decimal)recKladder.Belob;
                                break;

                            case 66100:
                                bMomsKonto = true;
                                MomsBelob  = (decimal)recKladder.Belob;
                                MK         = "S25";
                                break;

                            case 66200:
                                bMomsKonto = true;
                                MomsBelob  = (decimal)recKladder.Belob;
                                MK         = "K25";
                                break;

                            default:
                                bAndenKonto     = true;
                                AndenKontoBelob = (decimal)recKladder.Belob;
                                AndenKontoTekst = recKladder.Tekst;
                                AndenKontoKonto = (int)recKladder.Konto;
                                if ((recKladder.Afstemningskonto != null) && (recKladder.Afstemningskonto != ""))
                                {
                                    AndenKontoAfstemningskonto = recKladder.Afstemningskonto;
                                }
                                if ((recKladder.Momskode != null) && (recKladder.Momskode != ""))
                                {
                                    AndenKontoMomskode = recKladder.Momskode;
                                }
                                break;
                            }
                        }

                        if ((recKladder.Momskode != null) && (recKladder.Momskode != ""))
                        {
                            bMomskode = true;
                        }
                    }

                    if ((AntalLinier == 3) &&
                        (bBankKonto) &&
                        (bMomsKonto) &&
                        (bAndenKonto) &&
                        (!bAfstem) &&
                        (!bMomskode))
                    {
                        //decimal MomsBelobDif = -MomsBelob + (AndenKontoBelob * decimal.Parse(" 0,25"));
                        decimal momspct      = KarMoms.getMomspct(MK) / 100;
                        decimal MomsBelobDif = -MomsBelob + (AndenKontoBelob * momspct);
                        if ((MomsBelobDif > -decimal.Parse(" 0,01")) &&
                            (MomsBelobDif < decimal.Parse(" 0,01")))
                        {
                            Tblwkladder recWkladder = new Tblwkladder
                            {
                                Tekst            = AndenKontoTekst,
                                Afstemningskonto = "Bank",
                                Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : BankBelob,
                                Konto            = AndenKontoKonto,
                                Momskode         = MK
                            };
                            recwBilag.Tblwkladder.Add(recWkladder);
                            this.tblwbilagBindingSource.Add(recwBilag);
                            return(true);
                        }
                    }

                    if ((AntalLinier == 2) &&
                        (bBankKonto) &&
                        (!bMomsKonto) &&
                        (bAndenKonto) &&
                        (!bAfstem) &&
                        (!bMomskode))
                    {
                        Tblwkladder recWkladder = new Tblwkladder
                        {
                            Tekst            = AndenKontoTekst,
                            Afstemningskonto = "Bank",
                            Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : AndenKontoBelob,
                            Konto            = AndenKontoKonto
                        };
                        recwBilag.Tblwkladder.Add(recWkladder);
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }


                    if ((AntalLinier == 2) &&
                        (bBankKonto) &&
                        (bAndenKonto) &&
                        (!bAfstem))
                    {
                        foreach (Tblwkladder k in qry)
                        {
                            if (IsFound_BankKontoudtog)
                            {
                                if (k.Konto == 58000)
                                {
                                    k.Belob = -(decimal)recBankkonto.Belob;
                                }
                                else
                                {
                                    k.Belob = (decimal)recBankkonto.Belob;
                                }
                            }
                            recwBilag.Tblwkladder.Add(k);
                        }
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }

                    if ((AntalLinier == 1) &&
                        (!bBankKonto) &&
                        (bAndenKonto) &&
                        (bAfstem))
                    {
                        string WrkAfstemningskonto;
                        if (AndenKontoAfstemningskonto == "MasterCard")
                        {
                            WrkAfstemningskonto = "Bank";
                        }
                        else
                        {
                            WrkAfstemningskonto = AndenKontoAfstemningskonto;
                        }
                        Tblwkladder recWkladder = new Tblwkladder
                        {
                            Tekst            = AndenKontoTekst,
                            Afstemningskonto = WrkAfstemningskonto,
                            Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : AndenKontoBelob,
                            Konto            = AndenKontoKonto,
                            Momskode         = AndenKontoMomskode
                        };
                        recwBilag.Tblwkladder.Add(recWkladder);
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }
                }
            }

            else if (IsFound_BankKontoudtog && recBankkonto.Bankkontoid == 2)  //MASTERCARD
            {
                if (AntalLinier <= 3)
                {
                    foreach (Tblkladder recKladder in recBilag.Tblkladder)
                    {
                        if ((recKladder.Afstemningskonto != null) && (recKladder.Afstemningskonto != ""))
                        {
                            bAfstem = true;
                        }

                        if (recKladder.Konto != null)
                        {
                            switch (recKladder.Konto)
                            {
                            case 58310:
                                bBankKonto = true;
                                BankBelob  = (decimal)recKladder.Belob;
                                break;

                            case 66100:
                                bMomsKonto = true;
                                MomsBelob  = (decimal)recKladder.Belob;
                                MK         = "S25";
                                break;

                            case 66200:
                                bMomsKonto = true;
                                MomsBelob  = (decimal)recKladder.Belob;
                                MK         = "K25";
                                break;

                            default:
                                bAndenKonto     = true;
                                AndenKontoBelob = (decimal)recKladder.Belob;
                                AndenKontoTekst = recKladder.Tekst;
                                AndenKontoKonto = (int)recKladder.Konto;
                                if ((recKladder.Afstemningskonto != null) && (recKladder.Afstemningskonto != ""))
                                {
                                    AndenKontoAfstemningskonto = recKladder.Afstemningskonto;
                                }
                                if ((recKladder.Momskode != null) && (recKladder.Momskode != ""))
                                {
                                    AndenKontoMomskode = recKladder.Momskode;
                                }
                                break;
                            }
                        }

                        if ((recKladder.Momskode != null) && (recKladder.Momskode != ""))
                        {
                            bMomskode = true;
                        }
                    }

                    if ((AntalLinier == 3) &&
                        (bBankKonto) &&
                        (bMomsKonto) &&
                        (bAndenKonto) &&
                        (!bAfstem) &&
                        (!bMomskode))
                    {
                        //decimal MomsBelobDif = -MomsBelob + (AndenKontoBelob * decimal.Parse(" 0,25"));
                        decimal momspct      = KarMoms.getMomspct(MK) / 100;
                        decimal MomsBelobDif = -MomsBelob + (AndenKontoBelob * momspct);
                        if ((MomsBelobDif > -decimal.Parse(" 0,01")) &&
                            (MomsBelobDif < decimal.Parse(" 0,01")))
                        {
                            Tblwkladder recWkladder = new Tblwkladder
                            {
                                Tekst            = AndenKontoTekst,
                                Afstemningskonto = "MasterCard",
                                Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : BankBelob,
                                Konto            = AndenKontoKonto,
                                Momskode         = MK
                            };
                            recwBilag.Tblwkladder.Add(recWkladder);
                            this.tblwbilagBindingSource.Add(recwBilag);
                            return(true);
                        }
                    }

                    if ((AntalLinier == 2) &&
                        (bBankKonto) &&
                        (!bMomsKonto) &&
                        (bAndenKonto) &&
                        (!bAfstem) &&
                        (!bMomskode))
                    {
                        Tblwkladder recWkladder = new Tblwkladder
                        {
                            Tekst            = AndenKontoTekst,
                            Afstemningskonto = "MasterCard",
                            Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : AndenKontoBelob,
                            Konto            = AndenKontoKonto
                        };
                        recwBilag.Tblwkladder.Add(recWkladder);
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }

                    if ((AntalLinier == 2) &&
                        (bBankKonto) &&
                        (bAndenKonto) &&
                        (!bAfstem))
                    {
                        foreach (Tblwkladder k in qry)
                        {
                            if (IsFound_BankKontoudtog)
                            {
                                if (k.Konto == 58310)
                                {
                                    k.Belob = -(decimal)recBankkonto.Belob;
                                }
                                else
                                {
                                    k.Belob = (decimal)recBankkonto.Belob;
                                }
                            }
                            recwBilag.Tblwkladder.Add(k);
                        }
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }
                    if ((AntalLinier == 1) &&
                        (!bBankKonto) &&
                        (bAndenKonto) &&
                        (bAfstem))
                    {
                        string WrkAfstemningskonto;
                        if (AndenKontoAfstemningskonto == "Bank")
                        {
                            WrkAfstemningskonto = "MasterCard";
                        }
                        else
                        {
                            WrkAfstemningskonto = AndenKontoAfstemningskonto;
                        }

                        Tblwkladder recWkladder = new Tblwkladder
                        {
                            Tekst            = AndenKontoTekst,
                            Afstemningskonto = WrkAfstemningskonto,
                            Belob            = (IsFound_BankKontoudtog) ? (decimal)recBankkonto.Belob : AndenKontoBelob,
                            Konto            = AndenKontoKonto,
                            Momskode         = AndenKontoMomskode
                        };
                        recwBilag.Tblwkladder.Add(recWkladder);
                        this.tblwbilagBindingSource.Add(recwBilag);
                        return(true);
                    }
                }
            }

            return(false);
        }