Расчет зарплаты для сотрудников ООО “Импульс”

Министерство образования Пензенской области

ГАПОУ «Пензенский многопрофильный колледж»

отделение «Архитектура»

специальность 230701 «Прикладная информатика в экономике»

 

 

 

 

 

 

Курсовая работа по теме:

«Расчет зарплаты для сотрудников ООО “Импульс”»

ПМ02 «Разработка, внедрение и

адаптация программного продукта, обеспечив

отраслевой направленности».

 

 

 

 

 

 

 

 

Выполнил:

Студент группы 12-ОА-17

 

Руководитель: 

 

 

 

 

Пенза 2015

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.Введение

В современном мире работа бухгалтере очень важна и трудна. Ему приходится делать все важные расчёты на предприятии,вести бухгалтерский, налоговый, управленческий учет, взаимодействие с контролирующими организациями. Это очень тяжкий труд, который требует много знаний и хорошее образование.  Поэтому квалифицированные кадры очень востребованы на рынке труда. Конечно предложений предостаточно, а найти подходящего человека с необходимым для этой работы набором знанийочень трудно. И многим компаниям приходится брать молодых, неопытных специалистов. Но с помощью компьютерной техники можно облегчить труд бухгалтера не сложной и удобной программой. Его производительность также возрастёт. К тому-же, никакой человек не застрахован от ошибок, даже если у него большой стаж и высокая квалификация, человеку свойственно ошибаться. А из-за одной ошибки придётся всё пересчитывать заново, а это может быть очень большой объём информации. Программа же никогда не ошибается, делает быстрые и верные расчёты. Бухгалтеру остаётся всего лишь вводить исходные данные и радоваться.

Одной из таких программ является моя программа .Она облегчит и избавит от лишней работы бухгалтера. Расчет зарплаты для сотрудников ООО «Импульс» очень простая в использовании и понимании, поэтому с ней будет удобно работать как новичку, так и опытному профессионалу.

 

 

2.Постановка задач

Разработка программы Расчет зарплаты для сотрудников ООО «Импульс». Произвести анализ бухгалтерии ООО «Импульс», сделать анализ языков объектно-ориентированного программирования; выбрать инструментальный выбор разработки; разработать программу реализующие функции расчёта зарплаты, закреплении навыков моделирования баз данных, усвоении и закреплении навыков проектирования и реализации баз данных СУБД Microsoft ACCESS  2007 для создания многопользовательского интерфейса, управления и манипулирования данными, хранящимися в БД.

 

3.Исследование предметной области по теме курсовой работы

Был проведён анализ бухгалтерии ООО «Импульс», расчёта заработной платы, исследование базы данных сотрудников.

Заработная плата, или ставка заработной платы, - это цена, выплачиваемая за использование труда.

Виды заработной платы:

  • Номинальная — количество денег в номинальном размере, которое получает работник в виде вознаграждения за труд.

К номинальной заработной плате относятся:

-оплата, начисляемая работникам за отработанное время, количество и качество выполненных работ;

-оплата по сдельным расценкам, тарифным ставкам, окладам, премии сдельщикам и повременщикам;

-доплаты в связи с отклонениями от нормальных условий работы, за работу в ночное время, за сверхурочные работы, за бригадирство, оплата простоев не по вине рабочих и т. д.

  2) Реальная — это количество товаров и услуг, которое можно приобрести на номинальную заработную плату ;Реальная заработная плата зависит от номинальной заработной платы и цен на приобретаемые товары и услуги.

Предприятия самостоятельно, но в соответствии с законодательством устанавливают штатное расписание, формы и системы оплаты труда, премирования.

На основании выбранной системы оплаты труда на предприятии учет ее регламентируется следующими документами:

- выписка из протокола собрания о ставках повременщиков;

- табель учета рабочего времени;

- карточка учета выработки;

- наряды, договора, контракты, трудовые соглашения с визой руководителя о выплате, приказы и др.

В бухгалтерии на основании первичных документов по учету выработки сдельщиков, табеля учета рабочего времени и других расчетов определяют сумму оплаты труда за отработанное время, а также за неотработанное, но подлежащее оплате, премии, пособия, после чего составляется расчетная ведомость. Данные расчетной ведомости переносятся в платежную, по которой выдается зарплата.

 

4.Разработка программы

 

4.1 Выбор технологии разработки

Были использованы следующие программы:

  • Visual Studio C#
  • Microsoft Office Access.

Visual Studio C#

C# (произносится «си шарп») — объектно-ориентированный язык программирования. Разработан в 1998—2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270.

C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.

Переняв многое от своих предшественников — языков C++, Pascal, Модула, Smalltalk и, в особенности, Java — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов (между тем допускается множественное наследование интерфейсов).

Особенности:C# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает BCL. Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#; подобного взаимодействия следует ожидать и в дальнейшем (однако, эта закономерность была нарушена с выходом C# 3.0, представляющего собой расширения языка, не опирающиеся на расширения платформы .NET). CLR предоставляет C#, как и всем другим .NET-ориентированным языкам, многие возможности, которых лишены «классические» языки программирования. Например, Сборка мусора не реализована в самом C#, а производится CLR для программ, написанных на C# точно так же, как это делается для программ на VB.NET, J# и др.

Microsoft Office Access.

Microsoft Access — реляционная СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.

Основные компоненты MS Access:

  • построитель таблиц;
  • построитель экранных форм;
  • построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);
  • построитель отчётов, выводимых на печать.

Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.

Microsoft JetDatabaseEngine (англ.), которая используется в качестве движка базы данных MS Access является файл-серверной СУБД и потому применима лишь к приложениям, работающим с небольшими объёмами данных и при небольшом числе пользователей, одновременно работающих с этим данными. Непосредственно в Access отсутствует ряд механизмов, необходимых в многопользовательских базах данных, таких, например, как триггеры.

 

4.2Разработка интерфейса программы

В современном мире миллиарды вычислительных устройств. Еще больше программ для них. И у каждой свой интерфейс, являющийся «рычагами» взаимодействия между пользователем и машинным кодом. Не удивительно, что чем лучше интерфейс, тем эффективнее взаимодействие. Однако далеко не все разработчики и даже дизайнеры, задумываются о создании удобного и понятного графического интерфейса пользователя. Для себя я начал с постановки вопросов: общие принципы, какие элементы интерфейса(ЭИ) создать, какой у них должен быть дизайн, где их правильно размещать и как они должны себя вести.

Общие принципы:

  • Интерфейс должен быть интуитивно понятным. Таким, чтобы пользователю не требовалось объяснять как им пользоваться. 
  • Возвращайте пользователя в то место, где он закончил работу в прошлый раз. Зачем нажимать все заново?
  • Чаще всего, пользователи в интерфейсе сначала ищут сущность(существительное), а затем действие(глагол) к ней. Следуйте правилу «существительное -> глагол». Например, шрифт -> изменить.
  • Чем быстрее человек увидит результат — тем лучше. Пример — «живой» поиск, когда варианты, в процессе набора поискового запроса. Основной принцип: программа должна взаимодействовать с пользователем на основе наименьшей значимой единицы ввода.
  • Используйте квазирежимы. Например, ввод заглавных букв с зажатой клавишей shift — это квазирежим. С включенным capslock — режим. Основное отличие в том, что человек может забыть в каком режиме он находится, а в квазирежиме(с зажатой доп. клавишей) это сделать гораздо сложнее.
  • Следует с осторожностью предоставлять пользователю возможность, по установке личных настроек. Представьте, сколько времени потратит сотрудник настраивая Word, если его интерфейс был полностью переделан предыдущим.
  • Чем больше пользователь работает с какой-то конкретной задачей, тем больше он на ней концентрируется и тем меньше перестает замечать подсказки и сообщения, выводимые программой. Чем более критической является задача, тем меньше вероятность того, что пользователь заметит предупреждения относительно тех или иных потенциально опасных действий.

Какие ЭИ создать:

  • Разработка интерфейса обычно начинается с определения задачи или набора задач, для которых продукт предназначен
  • Простое должно оставаться простым. Не усложняйте интерфейсы. Постоянно думайте о том, как сделать интерфейс проще и понятнее.
  • Пользователи не задумываются над тем, как устроена программа. Все, что они видят — это интерфейс. Поэтому, с точки зрения потребителя именно интерфейс является конечным продуктом.
  • Интерфейс должен быть ориентированным на человека, т.е. отвечать нуждам человека и учитывать его слабости. Нужно постоянно думать о том, с какими трудностями может столкнуться пользователь.
  • Думайте о поведении и привычках пользователей. Не меняйте хорошо известные всем ЭИ на неожиданные, а новые делайте интуитивно понятными
  • Разрабатывайте интерфейс исходя из принципа наименьшего возможного количества действий со стороны пользователя.

 

4.3Выбор и разработка алгоритмов решения промежуточных задач, для каждого элемента интерфейса приложения

Составление алгоритмов решения задач - это работа творческая. Нет универсального способа, позволяющего без особого труда составлять любые алгоритмы. К сожалению, такого способа не существует, ведь жизненные ситуации и задачи так разнообразны и непредсказуемы! Если бы дело обстояло иначе, появилась бы реальная возможность автоматизировать сам процесс алгоритмизации, поручив его некоторому исполнителю - вероятно, очень высокоинтеллектуальному компьютеру.

В большинстве случаев та или иная задача может быть решена несколькими численными методами. Выбор конкретного численного метода решения задачи обычно производится по следующим критериям:

 

  • обеспечение оптимального времени решения задачи;
  • обеспечение оптимального использования имеющихся ресурсов (памяти);
  • обеспечение требуемой точности вычислений;
  • минимальные стоимостные затраты;
  • возможность использования стандартных подпрограмм.

При дальнейшей постановке задачи на ПК отыскивается наиболее рациональный способ решения задачи. Однако, алгоритмы становятся все более и более сложными, соответственно растет трудность понимания того, как они работают. А еще труднее обнаружить и исправить в них ошибки или внести какие-то изменения. Индустрия программирования предлагает более систематичные подходы к программированию (а тем самым и к алгоритмизации задач в общем), т.е. предлагает методики, использование которых уменьшает вероятность ошибок в п. Разработка алгоритма, являясь четким логичным процессом, упрощается на каждом уровне шаг за шагом. Затем в процессе задействуется следующий метод алгоритмизации - метод пошагового уточнения (совершенствования). Сначала задача рассматривается в целом, выделяются наиболее крупные ее части. Алгоритм, указывающий порядок выполнения этих частей, описывается в структурированной форме, не вдаваясь в мелкие детали. Затем от общей структуры переходят к описанию отдельных частей. Таким образом, разработка алгоритма состоит из последовательности шагов в направлении уточнения алгоритма в программах, упрощает их понимание и облегчает модификацию.

 

4.4 Разработка структуры БД

При проектировании базы правильно начинать работу с карандашом и листом бумаги в руках, не используя компьютер. На данном этапе он просто не нужен. Неоптимальные решения и прямые ошибки, заложенные на этапе проектирования, впоследствии очень трудно устраняются, поэтому этот этап является основополагающим.

При подготовке технического задания составляют:

• список исходных данных, с которыми работает заказчик;

• список выходных данных, которые необходимы заказчику для управления структурой своего предприятия;

• список выходных данных, которые не являются необходимыми для заказчика, но которые он должен предоставлять в другие организации.

1. Работа начинается с составления генерального списка полей — он может насчитывать десятки и даже сотни позиций.

2. В соответствии с типом данных, размещаемых в каждом поле, определяют наиболее подходящий тип для каждого поля.

3. Далее распределяют поля генерального списка по базовым таблицам. На первом этапе распределение производят по функциональному признаку. Цель — обеспечить, чтобы ввод данных в одну таблицу производился, по возможности, в рамках одного подразделения, а еще лучше — на одном рабочем месте.

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

4. В каждой из таблиц намечают ключевое поле. В качестве такового выбирают поле, данные в котором повторяться не могут. Например, для таблицы данных о студентах таким полем может служить индивидуальный шифр студента. Если в таблице вообще нет никаких полей, которые можно было бы использовать как ключевые, всегда можно ввести дополнительное поле типа Счетчик — оно не может содержать повторяющихся данных по определению.

5. Расчерчиваем связи между таблицами. Такой чертеж называется схемой данных.

Существует несколько типов возможных связей между таблицами. Наиболее распространенными являются связи «один ко многим» и «один к одному». Связь между таблицами организуется на основе общего поля, причем в одной из таблиц оно обязательно должно быть ключевым, то есть на стороне «один».

 

5.Разработка документации по использованию ПП

 

  • Откройте программу двойным щелчком.
  • Из верхней таблицы выберите нужную вам должность.
  • Из таблице ниже выберите необходимого сотрудника.
  • Если надо, можете изменить данные о сотруднике, удалить их или добавить нового сотрудника с помощью простого интерфейса. (Имейте ввиду, что в определённой строке нужно вводить соответствующие данные. Иначе программа будет выводить ошибку)
  • После внесённых изменений нажмите на кнопку «Сохранить», чтобы внесённая информация сохранилась в таблице и отображалась при новой загрузки программы.
  • Когда вы выбрали сотрудника, нажмите на кнопку «Рассчитать заработную плату». Вылезет новое окно для расчёта.
  • Введите только количество отработанных дней сотрудника, поскольку другие данные о нём уже взяты из таблицы. (Обратите внимание, что вверху должны быть фамилия и инициалы нужного вам сотрудника)
  • Нажмите кнопку «Рассчитать». Полученный результат будет выведен на экран.
  • Нажмите кнопку «Выход» для выхода из программы.

 

 

6.Заключение

   За время выполнения курсовой работы была создана программа, рассчитывающая зарплату для сотрудников ООО «Импульс». В процессе создания данной программы были изучены способы расчёта заработная плата, её виды и бухгалтерии ООО «Импульс», закреплены знания по использованию основ объектно-ориентированного программирования, были повышены навыки работы в  VisualStudio C# , усвоении и закреплении навыков проектирования и реализации баз данных Microsoft Access для создания многопользовательского интерфейса.

 

 

7.Приложения

Листинг программы

 

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;

 

namespace WindowsFormsApplication1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

           

 

        }

 

        private void button3_Click(object sender, EventArgs e)

        {

         textBox3.Text = ((Convert.ToDouble(textBox2.Text)) / (Convert.ToDouble(textBox1.Text))).ToString();

        }

      

        private void button1_Click(object sender, EventArgs e)

        {

                }

 

        private void Form1_Load(object sender, EventArgs e)

        {

            // TODO: данная строка кода позволяет загрузить данные в таблицу "kursovaiaDataSet1.Должности". При необходимости она может быть перемещена или удалена.

            this.должностиTableAdapter.Fill(this.kursovaiaDataSet1.Должности);

            // TODO: данная строка кода позволяет загрузить данные в таблицу "kursovaiaDataSet.Сотрудники". При необходимости она может быть перемещена или удалена.

            this.сотрудникиTableAdapter.Fill(this.kursovaiaDataSet.Сотрудники);

 

        }

 

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)

        {

 

        }

 

        private void button1_Click_1(object sender, EventArgs e)

        {

            Close();

        }

 

        private void button2_Click(object sender, EventArgs e)

        {

 

        } if (disposing && (components != null))

            {

components.Dispose();

}

base.Dispose(disposing);

        }

 

        #region Код, автоматически созданный конструктором форм Windows

 

privateSystem.Windows.Forms.Button button2;

privateSystem.Windows.Forms.Button button1;

privateSystem.Windows.Forms.TextBox N;

privateSystem.Windows.Forms.TextBoxDet;

privateSystem.Windows.Forms.TextBoxDn;

publicSystem.Windows.Forms.TextBox O;

privateSystem.Windows.Forms.LabelZar;

privateSystem.Windows.Forms.Label label5;

privateSystem.Windows.Forms.Label label4;

privateSystem.Windows.Forms.Label label3;

privateSystem.Windows.Forms.Label label2;

privateSystem.Windows.Forms.Label label1;

private_kursovaia11134_2015_05_15DataSet _kursovaia11134_2015_05_15DataSet;

privateSystem.Windows.Forms.BindingSourceсотрудникиBindingSource;

private _kursovaia11134_2015_05_15DataSetTableAdapters.СотрудникиTableAdapterсотрудникиTableAdapter;

privateSystem.Windows.Forms.BindingSourceдолжностиBindingSource;

private _kursovaia11134_2015_05_15DataSetTableAdapters.ДолжностиTableAdapterдолжностиTableAdapter;

privateSystem.Windows.Forms.TextBox textBox1;

}

}

 

 

        private void textBox2_TextChanged(object sender, EventArgs e)

        {

 

        }

    }

}

 

 

 

 

 

 

 

Схема БД

 

 

 

ER диаграмма

 

 

Скриншоты программы

Расчёт зарплаты сотрудника

Пример работы программы:

 


Расчет зарплаты для сотрудников ООО “Импульс”