Автоматизация банковской отчетности

Автор работы: Пользователь скрыл имя, 08 Сентября 2011 в 20:22, курсовая работа

Описание работы

В соответствии с этим очевидна необходимость обладания современной ав¬томатизированной банковской системой, позволяющей эффек¬тивно об¬раба¬тывать все возрастающие информационные потоки, а также непосред¬ст¬венно осу¬ществлять операции на каждом этапе создания банковского продукта. Кроме того, именно банки обладают достаточными финансовыми возможно¬стями для приобретения и использо¬вания самой современной техники. Однако не следует счи¬тать, что средний банк готов тратить огромные суммы на компьютеризацию. Банк, является, прежде всего, финансовой организацией, основной задачей которой является не максимизация прибыли, а устойчивое положение на рынке.

Содержание работы

ВВЕДЕНИЕ 4
1 ЕЖЕДНЕВНАЯ БАНКОВСКАЯ ОТЧЕТНОСТЬ 6
1.1 Банковская отчетность и ее значение 6
1.2 Состав, содержание и периодичность отчетности 12
1.3 Проблемы, связанные с составлением и представлением отчетности кредитными организациями…….........................................................................13
1.4 Виды отчетности 16
2 АВТОМАТИЗАЦИЯ БАНКОВСКОЙ ОТЧЕТНОСТИ 18
2.1 Обоснование разработки 18
2.2 Концептуальное описание задачи 18
2.3 Разработка проектных решений по созданию информационной базы.........................................................................................................................18
2.4 Разработка проектных решений по программному обеспечению 20
2.4.1 Разработка алгоритма работы программы 20
2.4.2 Требования к техническому обеспечению…………………...….20
2.4.3 Руководство пользователя ………………………...............…….21
2.4.4 Описание контрольного примера………………….........……….24
ЗАКЛЮЧЕНИЕ …………………......……………………………………30
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ……………..……….32
ПРИЛОЖЕНИЕ А. Блок-схема алгоритма 34
ПРИЛОЖЕНИЕ Б. Диаграмма классов ……………………………....…35
ПРИЛОЖЕНИЕ В. Листинг кода приложения на языке С#…………...36

Файлы: 1 файл

Пояснительная.doc

— 1.92 Мб (Скачать файл)

 
 

     ПРИЛОЖЕНИЕ  Б

     Диаграмма классов 

     

     ПРИЛОЖЕНИЕ  В

     Листинг кода приложения на языке С#

Файл: Form1.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

using Excel = Microsoft.Office.Interop.Excel; 

namespace BankOtchetnost

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        } 

        private void выходToolStripMenuItem_Click(object sender, EventArgs e)

        {

            Application.Exit();

        } 

        private void новаяПроводкаToolStripMenuItem_Click(object sender, EventArgs e)

        {

            Новая win = new Новая();

            win.MdiParent = this;

            win.Show();

        } 

        private void журналОперацийToolStripMenuItem_Click(object sender, EventArgs e)

        {

            Операции win = new Операции();

            win.MdiParent = this;

            win.Show();

        } 

        private void планСчетовToolStripMenuItem_Click(object sender, EventArgs e)

        {

            Счета win = new Счета();

            win.MdiParent = this;

            win.Show();

        } 

        private void балансToolStripMenuItem_Click(object sender, EventArgs e)

        {

            Excel.Application xlApp;

            Excel.Workbook xlWorkBook;

            Excel.Worksheet xlWorkSheet;

            object misValue = System.Reflection.Missing.Value; 

            xlApp = new Excel.Application();

            xlWorkBook = xlApp.Workbooks.Add(misValue); 

            xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

            xlWorkSheet.Cells.Range[xlWorkSheet.Cells[1, 1], xlWorkSheet.Cells[1, 3]].Merge();

            xlWorkSheet.Cells[1, 1] = "АКТИВЫ"; 

            xlWorkSheet.Cells.Range[xlWorkSheet.Cells[1, 5], xlWorkSheet.Cells[1, 7]].Merge();

            xlWorkSheet.Cells[1, 5] = "ПАССИВЫ"; 

            Dictionary<Int32, Double> activ=new Dictionary<Int32, Double>();

            Dictionary<Int32, Double> pasiv=new Dictionary<Int32, Double>(); 

            счетаTableAdapter.Fill(bankOtchetnostDataSet1.Счета);

            операцииTableAdapter.Fill(bankOtchetnostDataSet1.Операции); 

            foreach (DataRow srow in bankOtchetnostDataSet1.Счета.Rows)

            {

                Int32 n=Convert.ToInt32(srow[0]); // Номер счета

                Boolean p=Convert.ToBoolean(srow[2]); // Признак счета

               

                if(p)

                {

                    activ[n]=0.0;

                }

                else

                {

                    pasiv[n]=0.0;

                }

                foreach (DataRow row in bankOtchetnostDataSet1.Операции.Rows)

                {

                    DateTime dt = DateTime.Parse(Convert.ToString(row[1]));

                    if(dt.Date>dateTime.Value.Date)

                        continue; 

                    Int32 d=Convert.ToInt32(row[3]); // Дебетируемы счет

                    Int32 k=Convert.ToInt32(row[4]); // Кредитируемый счет

                    Double s = Convert.ToDouble(row[5]); // Сумма

                    if(n==d)

                    {

                        if(p)

                        {

                            activ[n]+=s;

                        }

                        else

                        {

                            pasiv[n]-=s;

                        }

                    }

                    if(n==k)

                    {

                        if(p)

                        {

                            activ[n]-=s;

                        }

                        else

                        {

                            pasiv[n]+=s;

                        }

                    }

                }

            } 

            for(int i=0;i<activ.Count;i++)

            {

                Int32 k=activ.Keys.ElementAt(i);

                xlWorkSheet.Cells[i+2, 1] = k;

                xlWorkSheet.Cells[i+2, 3] = activ[k];

            } 

            for (int i = 0; i < pasiv.Count; i++)

            {

                Int32 k=pasiv.Keys.ElementAt(i);

                xlWorkSheet.Cells[i+2, 5] = k;

                xlWorkSheet.Cells[i+2, 7] = pasiv[k];

            } 

            int m=(activ.Count>pasiv.Count?activ.Count:pasiv.Count) + 3;

            xlWorkSheet.Cells[m, 2] = "ИТОГО";

            xlWorkSheet.Cells[m, 6] = "ИТОГО"; 

            xlWorkSheet.Cells[m, 3].Formula =

                xlApp.WorksheetFunction.Sum(xlWorkSheet.Range[xlWorkSheet.Cells[2, 3], xlWorkSheet.Cells[m - 1, 3]]); 

            xlWorkSheet.Cells[m, 7].Formula =

               xlApp.WorksheetFunction.Sum(xlWorkSheet.Range[xlWorkSheet.Cells[2, 7], xlWorkSheet.Cells[m - 1, 7]]); 
 

            //xlWorkBook.SaveAs("csharp-Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);

           // xlWorkBook.Close(true, misValue, misValue);

           

            xlApp.Visible = true;

            //xlApp.Quit();

            xlApp.UserControl = true;

        } 

        private void операционныйДеньToolStripMenuItem_Click(object sender, EventArgs e)

        {

            Excel.Application xlApp;

            Excel.Workbook xlWorkBook;

            Excel.Worksheet xlWorkSheet;

            object misValue = System.Reflection.Missing.Value; 

            xlApp = new Excel.Application();

            xlWorkBook = xlApp.Workbooks.Add(misValue); 

            xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); 

            xlWorkSheet.Cells.Range[xlWorkSheet.Cells[1, 1], xlWorkSheet.Cells[2, 1]].Merge();

            xlWorkSheet.Cells[1, 1] = "СЧЕТ"; 

            xlWorkSheet.Cells.Range[xlWorkSheet.Cells[1, 2], xlWorkSheet.Cells[1, 3]].Merge();

            xlWorkSheet.Cells[1, 2] = "ВХОДЯЩЕЕ САЛЬДО";

            xlWorkSheet.Cells[2, 2] = "ДЕБЕТ";

            xlWorkSheet.Cells[2, 3] = "КРЕДИТ"; 

            xlWorkSheet.Cells.Range[xlWorkSheet.Cells[1, 4], xlWorkSheet.Cells[1, 5]].Merge();

            xlWorkSheet.Cells[1, 4] = "ОБОРОТЫ";

            xlWorkSheet.Cells[2, 4] = "ДЕБЕТ";

            xlWorkSheet.Cells[2, 5] = "КРЕДИТ"; 

            xlWorkSheet.Cells.Range[xlWorkSheet.Cells[1, 6], xlWorkSheet.Cells[1, 7]].Merge();

            xlWorkSheet.Cells[1, 6] = "ИСХОДЯЩЕЕ САЛЬДО";

            xlWorkSheet.Cells[2, 6] = "ДЕБЕТ";

            xlWorkSheet.Cells[2, 7] = "КРЕДИТ"; 

            Dictionary<Int32, Dictionary<String,Double>> vhost =

                new Dictionary<Int32, Dictionary<String,Double>>(); 

            счетаTableAdapter.Fill(bankOtchetnostDataSet1.Счета);

            операцииTableAdapter.Fill(bankOtchetnostDataSet1.Операции); 

            foreach (DataRow srow in bankOtchetnostDataSet1.Счета.Rows)

            {

                Int32 n = Convert.ToInt32(srow[0]); // Номер счета

                Boolean p = Convert.ToBoolean(srow[2]); // Признак счета 

                vhost[n] = new Dictionary<string, double>();

                vhost[n].Add ("d", 0.0);

                vhost[n].Add("c", 0.0); 

                foreach (DataRow row in bankOtchetnostDataSet1.Операции.Rows)

                {

                    DateTime dt = DateTime.Parse(Convert.ToString(row[1]));

                    DateTime yesterday =

                        dateTime.Value.AddDays (-1);

                    if (dt.Date > yesterday)

                        continue; 

                    Int32 d = Convert.ToInt32(row[3]); // Дебетируемы счет

                    Int32 k = Convert.ToInt32(row[4]); // Кредитируемый счет

                    Double s = Convert.ToDouble(row[5]); // Сумма

                    if (n == d)

                    {

                        vhost[n]["d"] += s;

                    }

                    if (n == k)

                    {

                        vhost[n]["c"] += s;

                    }

                }

            } 

            for (int i = 0; i < vhost.Count; i++)

            {

                Int32 k = vhost.Keys.ElementAt(i);

                xlWorkSheet.Cells[i + 3, 1] = k; 

                Double d=vhost[k]["d"];

                Double c=vhost[k]["c"]; 

                if (d>c)

                {

                    xlWorkSheet.Cells[i + 3, 2] = d-c;

                }

                else

                {

                    xlWorkSheet.Cells[i + 3, 3] = c - d;

                }

            }

            ////////////////////////////////////////////////////////////////////////// 

            Dictionary<Int32, Dictionary<String, Double>> oborot =

                new Dictionary<Int32, Dictionary<String, Double>>(); 

            счетаTableAdapter.Fill(bankOtchetnostDataSet1.Счета);

            операцииTableAdapter.Fill(bankOtchetnostDataSet1.Операции); 

            foreach (DataRow srow in bankOtchetnostDataSet1.Счета.Rows)

            {

                Int32 n = Convert.ToInt32(srow[0]); // Номер счета

                Boolean p = Convert.ToBoolean(srow[2]); // Признак счета 

                oborot[n] = new Dictionary<string, double>();

                oborot[n].Add("d", 0.0);

                oborot[n].Add("c", 0.0); 

Информация о работе Автоматизация банковской отчетности