Автоматизация процесса калькулирования комбинированным способом

Автор: Пользователь скрыл имя, 08 Марта 2012 в 13:54, курсовая работа

Краткое описание

Конечной целью анализа себестоимости следует назвать выявление возможностей снижения себестоимости продукции.
В своей работе я хотела бы на примере ФГУП «ПО завод имени Серго» провести калькуляцию себестоимости и рассчитать оптовые цены для произведенной продукции.

Оглавление

Введение 5
1. Основные понятия себестоимости , издержек 6
1.1 Задачи и информационное обеспечение анализа 6
1.2. Классификация затрат производства для целей учета 8
2. Методы и способы расчета себестоимости 11
2.1. Методы учета затрат (калькулирования) 11
2.2. Способы учета затрат (калькулирования) 14
2.3. Обобщение затрат на производство. Определение себестоимости. 16
2.4 Факторы и резервы снижения себестоимости продукции 17
3. Практическая часть 20
3.1 Расчет себестоимости продукции на предприятии ФГУП «ПО завод имени Серго» 20
Заключение 24
Приложение 25
Примеры для расчетов 41
Список используемой литературы 43

Файлы: 1 файл

Резервы себестоимости затрат1.doc

— 149.40 Кб (Скачать)

 

with Form1 do

begin

table.Cells[2,1]:=FloatToStr(mas[1]);

table.Cells[2,13]:=FloatToStr(mas[13]);

table.Cells[2,20]:=FloatToStrf(mas[20],fffixed,7,2);

table.Cells[2,21]:=FloatToStrf(mas[21],fffixed,7,2);

table.Cells[2,27]:=FloatToStrf(mas[27],fffixed,7,2);

table.Cells[2,29]:=FloatToStrf(mas[29],fffixed,7,2);

table.Cells[2,30]:=FloatToStrf(mas[30],fffixed,7,2);

table.Cells[2,31]:=FloatToStrf(mas[31],fffixed,7,2);

table.Cells[2,34]:=FloatToStrf(mas[34],fffixed,7,2);

end;

prss := mas[1] + mas[13] + mas[19] + mas[20] + mas[21] + mas[27] + mas[28] + mas[29] + mas[30] + mas[31] + mas[34];

pr := prss*rent/100;

 

Form1.table.Cells[3,1] := FloatToStrf(mas[1]*100/prss,ffGeneral,5,2);

Form1.table.Cells[3,13] := FloatToStrf(mas[13]*100/prss,fffixed,5,2);

Form1.table.Cells[3,19] := FloatToStrf(mas[19]*100/prss,fffixed,5,2);

Form1.table.Cells[3,20] := FloatToStrf(mas[20]*100/prss,fffixed,5,2);

Form1.table.Cells[3,21] := FloatToStrf(mas[21]*100/prss,fffixed,5,2);

Form1.table.Cells[3,27] := FloatToStrf(mas[27]*100/prss,fffixed,5,2);

Form1.table.Cells[3,28] := FloatToStrf(mas[28]*100/prss,fffixed,5,2);

Form1.table.Cells[3,29] := FloatToStrf(mas[29]*100/prss,fffixed,5,2);

Form1.table.Cells[3,30] := FloatToStrf(mas[30]*100/prss,fffixed,5,2);

Form1.table.Cells[3,31] := FloatToStrf(mas[31]*100/prss,fffixed,5,2);

Form1.table.Cells[3,34] := FloatToStrf(mas[34]*100/prss,fffixed,5,2);

 

for i := 1 to 34 do

  if (Form1.table.Cells[3,i]='0.00') then

    Form1.table.Cells[3,i] := '';

 

cbnds := prss + pr;

csnds := cbnds + cbnds*nds/100;

 

prizd := mas[3]+mas[4]+mas[10]+mas[15]+mas[20];

nizd :=  mas[23]+mas[24]+mas[25]+mas[27]+mas[28]+mas[29]+mas[31]+mas[34];

end;

 

//загрузить данные

function LoadData: Boolean;

var i : Integer;

begin

for i := 1 to 34 do

  if Unit1.Form1.table.Cells[2,i]='' then

    mas[i] := 0

  else

    if not TryStrToFloat(Unit1.Form1.table.Cells[2,i],mas[i]) then

    begin

      ShowMessage('Неверные данные');

      Unit1.Form1.table.Row:=i;

      Unit1.Form1.table.Col:=2;

      LoadData := false;

      Exit;

    end;

rent := 15;

nds := 10;

LoadData := true;

Calc;

end;

 

//Создание формы

procedure TForm1.FormCreate(Sender: TObject);

begin

table.Cells[0,0]:='Наименование статей калькуляции';

table.Cells[1,0]:='% для наклад.изд.';

table.Cells[2,0]:='Данные';

table.Cells[3,0]:='Структура с/с';

table.Cells[0,1]:='Затраты на материалы всего:';

table.Cells[0,2]:='в том числе:';

table.Cells[0,3]:='   Сырье и основные материалы (с наладкой)';

table.Cells[0,4]:='   Вспомогательные материалы';

table.Cells[0,5]:='   Покупные полуфабрикаты';

table.Cells[0,6]:='   Возвратные отходы (вычитаются)';

table.Cells[0,7]:='   Комплектующие изделия';

table.Cells[0,8]:='   Работы и услуги сторонних орган. произв. хар-ра';

table.Cells[0,9]:='   Транспортно-заготовительные расходы';

table.Cells[0,10]:='   Топливо на технологические цели';

table.Cells[0,11]:='   Энергия на технологические цели';

table.Cells[0,12]:='   Тара (невозвратная) и упаковка';

table.Cells[0,13]:='ФЗП основ. производ. рабочих (без д.з.) всего:';

table.Cells[0,14]:='в том числе:';

table.Cells[0,15]:='    основная зараб. плата (с наладкой)';

table.Cells[0,16]:='    доплата к основной заработной плате';

table.Cells[0,17]:='    премия';

table.Cells[0,18]:='    выслуга лет';

table.Cells[0,19]:='Дополнительная заработная плата';

table.Cells[0,20]:='Отчисления на социальные нужды';

table.Cells[0,21]:='Затраты на подготов. и освоение про-ва всего:';

table.Cells[0,22]:='в том числе:';

table.Cells[0,23]:='    Затраты на подгот. и освоен. нов. произ-в цехов';

table.Cells[0,24]:='    и агрегатов (пусковые расходы)';

table.Cells[0,25]:='    Затраты на подгот. и освоен. нов. видов продук.';

table.Cells[0,26]:='    и новых технолог. процессов';

table.Cells[0,27]:='Затраты на спец. техноло. оснастку (инструм.)';

table.Cells[0,28]:='Специальные затраты (испытания)';

table.Cells[0,29]:='Общепроизводственные затраты';

table.Cells[0,30]:='Общехозяйственные затраты';

table.Cells[0,31]:='Прочие производственные затраты:';

table.Cells[0,32]:='    гарантийный ремонт';

table.Cells[0,33]:='    потери от брака';

table.Cells[0,34]:='Внепроизводственные затраты';

 

table.Cells[1,20]:='26% от осн. з/пл.';

table.Cells[1,21]:='13% от осн. з/пл.';

table.Cells[1,27]:='6% от осн. з/пл.';

table.Cells[1,29]:='27,7% от осн. з/пл.';

table.Cells[1,30]:='3,3% от осн. з/пл.';

table.Cells[1,31]:='1,6% от осн. з/пл.';

table.Cells[1,34]:='7,8% от осн. з/пл.';

 

OpenDialog1.InitialDir := GetCurrentDir + '\input';

OpenDialog1.Filter := 'Файлы Excel|*.xls';

end;

 

//Очистить

procedure TForm1.N4Click(Sender: TObject);

begin

table.Cols[2].Clear;

table.Cols[3].Clear;

table.Cells[2,0]:='Данные';

table.Cells[3,0]:='Структура с/с';

 

Label1.Caption := '';

Label2.Caption := '';

Label3.Caption := '';

Label4.Caption := '';

Label5.Caption := '';

Label6.Caption := '';

end;

 

//Загрузить

procedure TForm1.N2Click(Sender: TObject);

var i : integer;

begin

if not OpenDialog1.Execute then //окошко предлагает открыть файл

  exit;

fName := OpenDialog1.FileName;

E := CreateOleObject('Excel.Application');

E.WorkBooks.Open(fName); //открываем выбранный

for i := 1 to 34 do

  table.Cells[2,i] := E.ActiveWorkBook.ActiveSheet.Cells[i+1,'b'].Text;

 

E.Quit;            //выходит из ексель, удаляет процесс из памяти

E := UnAssigned;   //разрываем связь

end;

 

//Сохранить

procedure TForm1.N3Click(Sender: TObject);

var i, j : Integer;

begin

  E := CreateOleObject('Excel.Application');

  E.WorkBooks.Add;

  for i := 0 to 3 do

  for j := 0 to 34 do

    E.ActiveWorkBook.ActiveSheet.Cells[j+1,i+1] := table.Cells[i,j];   

  E.ActiveWorkBook.ActiveSheet.Cells[37,1] := Label1.Caption;

  E.ActiveWorkBook.ActiveSheet.Cells[38,1] := Label2.Caption;

  E.ActiveWorkBook.ActiveSheet.Cells[39,1] := Label3.Caption;

  E.ActiveWorkBook.ActiveSheet.Cells[40,1] := Label4.Caption;

  E.ActiveWorkBook.ActiveSheet.Cells[41,1] := Label5.Caption;

  E.ActiveWorkBook.ActiveSheet.Cells[42,1] := Label6.Caption;

  E.Save;

  E.Quit;

  E := UnAssigned;

end;

 

//Рассчитать себестоимость

procedure TForm1.N8Click(Sender: TObject);

begin

if not LoadData() then

  Exit;

Label1.Caption := 'Производственная себестоимость: ' + FloatToStr(prss);

end;

 

//Прибыль

procedure TForm1.N9Click(Sender: TObject);

begin

LoadData;

Label2.Caption := 'Рентабельность предприятия: ' + FloatToStr(pr);

end;

 

//Цены

procedure TForm1.N5Click(Sender: TObject);

begin

if not LoadData() then

  Exit;

Label3.Caption := 'Цена без НДС: ' + FloatToStr(cbnds);

Label4.Caption := 'Цена с НДС: ' + FloatToStr(csnds);

end;

 

//Издержки

procedure TForm1.B1Click(Sender: TObject);

begin

if not LoadData() then

  Exit;

Label5.Caption := 'Прямые издержки: ' + FloatToStr(prizd);

Label6.Caption := 'Накладные издержки: ' + FloatToStr(nizd);

end;

 

//выход

procedure TForm1.N10Click(Sender: TObject);

begin

Application.Terminate;

end;

 

//график

procedure TForm1.N7Click(Sender: TObject);

begin

Form2.Show;

Form2.Series1.AddPie(mas[1],'Затраты на материалы',clmaroon);

Form2.Series1.AddPie(mas[13],'ФЗП основ. производ. рабочих',clgreen);

Form2.Series1.AddPie(mas[19],'Дополнительная заработная плата',clolive);

Form2.Series1.AddPie(mas[20],'Отчисления на социальные нужды',clnavy);

Form2.Series1.AddPie(mas[21],'Затраты на подготов. и освоение про-ва',clpurple);

Form2.Series1.AddPie(mas[27],'Затраты на спец. техноло. оснастку',clteal);

Form2.Series1.AddPie(mas[28],'Специальные затраты (испытания)',clmoneygreen);

Form2.Series1.AddPie(mas[29],'Общепроизводственные затраты',clskyblue);

Form2.Series1.AddPie(mas[30],'Общехозяйственные затраты',clfuchsia);

Form2.Series1.AddPie(mas[31],'Прочие производственные затраты',clsilver);

Form2.Series1.AddPie(mas[34],'Внепроизводственные затраты',clred);

end;

 

end.

Примеры для расчетов

Статьи

Данные, руб.

1. сырье и основные материалы

5,23

2. Вспомогательные материалы

0,11

3. Топливо и энергия

0,68

4. Основная заработная плата

0,81

5. Дополнительная заработная плата

0,06

6. Отчисления на социальные нужды

0,33

7. Расходы на содержание и эксплуатацию оборудования

0,92

8. Цеховые расходы

4,28

Итого 9. Цеховая себестоимость

12,42

10. Общефабричные расходы

0,41

Итого 11. Производственная себестоимость

12,83

12. Коммерческие расходы

1,04

Итого 13. Полная себестоимость

13,87

 

 

Статьи

Данные, руб.

1. Сырье и материалы.

2435,6

2. Покупные комплектующие изделия.

335

3. Энергия.

38,5

4. Основная заработная плата производственных рабочих.

1293,75

5. Дополнительная заработная плата производственных рабочих.

155,25

6.ЕСН

528,885

7. Расходы по содержанию и эксплуатации оборудования

260

8. Цеховые расходы

1881,2

9. Итого: Цеховая себестоимость

6928,2

10.Общехозяйственные расходы

2727,8

11.Итого: Производственная себестоимость.

9556

12. Коммерческие расходы

259,6

13. Итого: Полная себестоимость

9815,6

Информация о работе Автоматизация процесса калькулирования комбинированным способом