public static SortableSearchableList<SintetickiKonto> GetSintetickiKontniPlan(string folderName)
        {
            SortableSearchableList<SintetickiKonto> listaSKP = new SortableSearchableList<SintetickiKonto>();
            string sqlStatement =
                "SELECT SintKto, NazivKto, AktPas, AOPOzn " +
                "FROM SintKP " +
                "ORDER BY SintKto";
            OleDbConnection conn = KnjigovodstvoDB.GetConnection(folderName);
            OleDbCommand command = new OleDbCommand(sqlStatement, conn);

            try
            {
                conn.Open();

                OleDbDataReader reader = command.ExecuteReader();

                while (reader.Read())
                {
                    SintetickiKonto skp = new SintetickiKonto();

                    skp.Konto = reader["SintKto"].ToString();
                    skp.NazivKonta = reader["NazivKto"].ToString();
                    skp.AktivniPasivni = reader["AktPas"].ToString();
                    skp.AOPOznaka = reader["AopOzn"].ToString();

                    listaSKP.Add(skp);
                }
                reader.Close();
            }
            catch (OleDbException ex)
            {
                //     global::System.Windows.Forms.MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
                //throw ex;
                throw new Exception(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                conn.Close();
            }
            return listaSKP;
        }
        public static SortableSearchableList<BrutoBilans> BrutoBilansPoGrupma(SortableSearchableList<BrutoBilans> brutoBilans, string grupa)
        {
            SortableSearchableList<BrutoBilans> grupeBilans = new SortableSearchableList<BrutoBilans>();

            BrutoBilans bb;
            string t_konto;
            int brojGrupe = Convert.ToInt32(grupa);

            int i = 0;

            while (i < brutoBilans.Count)
            {

                bb = new BrutoBilans();

                t_konto = brutoBilans[i].Konto.Substring(0, brojGrupe);

               // AnalitickiKonto selectedKonto = AnalitickiKontoDB.GetAnalitickiKonto(dbfKontaFolderName, t_konto);

                bb.Konto = t_konto;

                while ((i < brutoBilans.Count) && (brutoBilans[i].Konto.Substring(0, brojGrupe) == t_konto))
                {
                    bb.Duguje += brutoBilans[i].Duguje;
                    bb.Potrazuje += brutoBilans[i].Potrazuje;
                    bb.DugujePS += brutoBilans[i].DugujePS;
                    bb.PotrazujePS += brutoBilans[i].PotrazujePS;
                    bb.BrojKnjizenja += brutoBilans[i].BrojKnjizenja;

                    i++;
                }

                grupeBilans.Add(bb);

            }

            return grupeBilans;
        }
Beispiel #3
0
        private static SortableSearchableList<ItemGk> ExpandList(List<ItemGk> lista, string dbfKontaFolderName)
        {
            //dodati podatak o kontu (naziv, aop i ostalo)

            SortableSearchableList<ItemGk> listaItemGk = new SortableSearchableList<ItemGk>();

            ItemGk newItemGk = null;

            string t_konto = "";

            int i = 0;

            while (i < lista.Count)
            {

                newItemGk = new ItemGk();

                t_konto = lista[i].Konto;

                AnalitickiKonto selectedKonto = AnalitickiKontoDB.GetAnalitickiKonto(dbfKontaFolderName, t_konto);

                newItemGk.Konto = lista[i].Konto;
                newItemGk.OpisKnjizenja = lista[i].OpisKnjizenja;
                newItemGk.OrganizacionaJedinica = lista[i].OrganizacionaJedinica;
                newItemGk.DatumDokumenta = lista[i].DatumDokumenta;
                newItemGk.BrojNaloga = lista[i].BrojNaloga;
                newItemGk.Duguje = lista[i].Duguje;
                newItemGk.Potrazuje = lista[i].Potrazuje;
                newItemGk.KontoKnjizenja = selectedKonto;

                listaItemGk.Add(newItemGk);

                i++;
            }

            return listaItemGk;
        }
Beispiel #4
0
        public static SortableSearchableList<ItemGk> GroupItemsGKBySK(SortableSearchableList<ItemGk> lista, string dbfKontaFolderName)
        {
            //grupirati po sintetickom kontu

            SortableSearchableList<ItemGk> listaItemGk = new SortableSearchableList<ItemGk>();

            ItemGk newItemGk = null;
            SintetickiKonto sintKonto;

            string t_konto = "";

            int i = 0;

              lista.Sort("Konto", System.ComponentModel.ListSortDirection.Ascending);

            while (i < lista.Count)
            {

                newItemGk = new ItemGk();

                t_konto = lista[i].Konto.Substring(0, 3);

                sintKonto = SintetickiKontoDB.GetSintetickiKonto(dbfKontaFolderName, t_konto);

                newItemGk.Konto = t_konto;
                newItemGk.OpisKnjizenja = sintKonto.NazivKonta;

                while ((i < lista.Count) && (lista[i].Konto.Substring(0, 3) == t_konto))
                {
                    newItemGk.Duguje += lista[i].Duguje;
                    newItemGk.Potrazuje += lista[i].Potrazuje;

                    i++;
                }

                listaItemGk.Add(newItemGk);

            }

            return listaItemGk;
        }
        /// <summary>
        /// Izvjestaj po sintetickim kontima iz bruto bilansa
        /// Razdvaja po oznaci ispravke
        /// </summary>
        /// <param name="brutoBilans"></param>
        /// <param name="dbfKontaFolderName"></param>
        /// <returns></returns>
        public static SortableSearchableList<BrutoBilans> BrutoBilansPoSK(SortableSearchableList<BrutoBilans> brutoBilans, string dbfKontaFolderName)
        {
            SortableSearchableList<BrutoBilans> grupeBilans = new SortableSearchableList<BrutoBilans>();

            BrutoBilans bbBruto;
            BrutoBilans bbIspravka;
            SintetickiKonto sintKonto;

            string t_konto;
            int brojGrupe = 3; //sinteticki konto

            int i = 0;

            while (i < brutoBilans.Count)
            {

                bbBruto = new BrutoBilans();
                bbIspravka = new BrutoBilans();

                t_konto = brutoBilans[i].Konto.Substring(0, brojGrupe);
                sintKonto = SintetickiKontoDB.GetSintetickiKonto(dbfKontaFolderName, t_konto);

                bbBruto.Konto = t_konto;
                bbBruto.KontoIspravke = "N";
                bbBruto.NazivKonta = sintKonto.NazivKonta;

                bbIspravka.Konto = t_konto + "I";
                bbIspravka.KontoIspravke = "D";
                bbIspravka.NazivKonta = sintKonto.NazivKonta;

                while ((i < brutoBilans.Count) && (brutoBilans[i].Konto.Substring(0, brojGrupe) == t_konto))
                {
                    if (brutoBilans[i].KontoIspravke == "D")
                    {
                        bbIspravka.Duguje += brutoBilans[i].Duguje;
                        bbIspravka.Potrazuje += brutoBilans[i].Potrazuje;
                        bbIspravka.DugujePS += brutoBilans[i].DugujePS;
                        bbIspravka.PotrazujePS += brutoBilans[i].PotrazujePS;
                        bbIspravka.BrojKnjizenja += brutoBilans[i].BrojKnjizenja;
                    }
                    else
                    {
                        bbBruto.Duguje += brutoBilans[i].Duguje;
                        bbBruto.Potrazuje += brutoBilans[i].Potrazuje;
                        bbBruto.DugujePS += brutoBilans[i].DugujePS;
                        bbBruto.PotrazujePS += brutoBilans[i].PotrazujePS;
                        bbBruto.BrojKnjizenja += brutoBilans[i].BrojKnjizenja;
                    }

                    i++;
                }

                if (bbBruto.BrojKnjizenja > 0)
                {
                    grupeBilans.Add(bbBruto);
                }
                if (bbIspravka.BrojKnjizenja > 0)
                {
                    grupeBilans.Add(bbIspravka);
                }

            }

            return grupeBilans;
        }
        private static SortableSearchableList<BrutoBilans> FormBrutoBilans(List<ZaBrutoBilans> lista, string dbfKontaFolderName)
        {
            SortableSearchableList<BrutoBilans> brutoBilans = new SortableSearchableList<BrutoBilans>();

            BrutoBilans bb;
            string t_konto;

            int i = 0;

            while (i < lista.Count)
            {

                bb = new BrutoBilans();

                t_konto = lista[i].Konto;
                AnalitickiKonto selectedKonto = AnalitickiKontoDB.GetAnalitickiKonto(dbfKontaFolderName, t_konto);

                bb.Konto = t_konto;

                if (selectedKonto != null)
                {
                    bb.NazivKonta = selectedKonto.NazivKonta;
                    bb.AOPOznaka = selectedKonto.AOPOznaka;
                    bb.KontoIspravke = selectedKonto.KontoIspravke;
                }

                while ((i < lista.Count) && (lista[i].Konto == t_konto))
                {
                    if (lista[i].Strana == "D")
                    {
                        bb.Duguje += lista[i].Iznos;
                        if (lista[i].PocSt == "D")
                        {
                            bb.DugujePS += lista[i].Iznos;
                        }
                    }
                    else
                    {
                        bb.Potrazuje += lista[i].Iznos;
                        if (lista[i].PocSt == "D")
                        {
                            bb.PotrazujePS += lista[i].Iznos;
                        }
                    }

                    bb.BrojKnjizenja += lista[i].BrojKnjizenja;

                    i++;
                }

                brutoBilans.Add(bb);

            }

            return brutoBilans;
        }
        private static SortableSearchableList<AnalitickaKartica> ReadItems(OleDbCommand command)
        {
            string strana = "";
            decimal iznos = 0m;
            string vrstaNaloga = "";

            SortableSearchableList<AnalitickaKartica> listaItemGk = new SortableSearchableList<AnalitickaKartica>();

            OleDbDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                AnalitickaKartica itemGk = new AnalitickaKartica();

                itemGk.BrojNaloga = reader["BrojNal"].ToString();

                itemGk.DatumDokumenta = Convert.ToDateTime(reader["DatumDok"]);

                itemGk.OpisKnjizenja = reader["OpisKnj"].ToString();
                itemGk.Konto = reader["AnalKto"].ToString();
                itemGk.OrganizacionaJedinica = reader["SifraOJ"].ToString();

                itemGk.OpisNaloga = reader["OpisNal"].ToString();
                itemGk.VrstaNaloga = reader["PocSt"].ToString();

                itemGk.DatumNaloga = Convert.ToDateTime(reader["DatumNal"]);

                vrstaNaloga = reader["PocSt"].ToString();
                strana = reader["Strana"].ToString();
                iznos = Convert.ToDecimal(reader["IznosKnj"]);

                switch (strana)
                {
                    case "D":
                        itemGk.Duguje = iznos;
                        itemGk.Potrazuje = 0m;
                        if (vrstaNaloga == "D")
                        {
                            itemGk.DugujePS = iznos;
                            itemGk.PotrazujePS = 0m;
                        }
                        break;
                    case "P":
                        itemGk.Duguje = 0m;
                        itemGk.Potrazuje = iznos;
                        if (vrstaNaloga == "D")
                        {
                            itemGk.DugujePS = 0m;
                            itemGk.PotrazujePS = iznos;
                        }
                        break;
                    default:
                        itemGk.Duguje = 0m;
                        itemGk.Potrazuje = iznos;
                        if (vrstaNaloga == "D")
                        {
                            itemGk.DugujePS = iznos;
                            itemGk.PotrazujePS = 0m;
                        }
                        break;
                }

                listaItemGk.Add(itemGk);
            }
            reader.Close();
            return listaItemGk;
        }
Beispiel #8
0
        public static SortableSearchableList<NalogGk> GetListaNalogaGk(string folderName)
        {
            SortableSearchableList<NalogGk> listaNalogaGk = new SortableSearchableList<NalogGk>();
            string sqlStatement =
                "SELECT BrojNal, DatumNal, PocSt, OpisNal " +
                "FROM Nalog " +
                "ORDER BY BrojNal";
            OleDbConnection conn = KnjigovodstvoDB.GetConnection(folderName);
            OleDbCommand command = new OleDbCommand(sqlStatement, conn);

               try
            {
                conn.Open();

               OleDbDataReader reader = command.ExecuteReader();

                while (reader.Read())
                {
                    NalogGk nalogGk = new NalogGk();

                    nalogGk.BrojNaloga = reader["BrojNal"].ToString();
                    nalogGk.DatumNaloga = Convert.ToDateTime(reader["DatumNal"]);
                    nalogGk.VrstaNaloga = reader["PocSt"].ToString();
                    nalogGk.OpisNaloga = reader["OpisNal"].ToString();

                    listaNalogaGk.Add(nalogGk);
                }
                reader.Close();
            }
            catch (OleDbException ex)
            {
               //     global::System.Windows.Forms.MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
                throw ex;
            }
            finally
            {
                conn.Close();
            }
            return listaNalogaGk;
        }