Наименование
показателя
|
Единица
измерения
|
Величина
показателя
|
Годовой объем
выпуска и реализации:
|
тн.
|
13192,1
|
Годовой объем
выпуска и реализации:
|
тыс. руб.
|
279782
|
Общее
количество работающих в том числе:
|
чел.
|
502
|
-
производственных рабочих
|
|
227
|
-
вспомогательных рабочих
|
|
60
|
- руководителей
|
|
10
|
- специалистов
|
|
150
|
- служащих
|
|
40
|
- МОП
|
|
15
|
Выработка:
|
|
|
- на одного
работающего
|
тн.
|
26,28
|
- на одного
работника
|
тн.
|
58,11
|
- на одного
работающего
|
тыс. руб.
|
557,33
|
- на одного
работника
|
тыс. руб.
|
1232,52
|
Фонд оплаты
труда
|
тыс. руб.
|
112276,0
|
Среднемесячная
заработная плата
|
|
|
- одного
работающего
|
тыс. руб.
|
18.638
|
- одного
работника
|
тыс. руб.
|
41,22
|
Фондоотдача
|
тыс. руб.
|
2,69
|
Фондоёмкость
|
тыс. руб.
|
0,3
|
Выработка на одного работающего есть отношение
производственной программы к общему числу работающих: 13192,1/502=26,28 (тн).
Выработка на одного производственного работника есть
отношение производственной программы к числу производственных рабочих:
13192,1/227=58,11 (тн).
Выработка на одного работающего есть отношение годового
объема выпуска к общему числу работающих: 279782/502=557,33 (тыс. руб.).
Выработка на одного производственного работника есть
отношение годового объема выпуска и реализации к общему числу производственных
рабочих: 279782/227=1232,52 (тыс. руб.).
Среднемесячная заработная плата одного работающего:
112276,0/(502*12)= 18,638 тыс. руб.
Среднемесячная заработная плата одного работника:
112276,0/(227*12)= 41,22 тыс. руб.
Фондоотдача есть отношение годового объема выпуска и
реализации к балансовой стоимости основных средств: 279782/107743=2,59 тыс.
руб.
Фондоемкость - это обратная фондоотдача: 1 / 2,59= 0, 386
тыс. руб.
3. Описание программы
.1 Описание программы в целом
Общие
сведения
Информационная система (ИС) предприятия должна состоит из
следующих компонент:
· Компонента «Бухгалтерский учет»;
· Компонента «Зарплата и кадры».
Данное техническое задание описывает компоненты
«Бухгалтерский учет» и «Зарплата и кадры».
Объектами автоматизации компоненты «Бухгалтерский учет»
являются:
· процесс ведения бухгалтерского учета;
· процесс настройки плана счетов.
Объектами автоматизации компоненты «Зарплата и кадры»
является процесс расчета заработной платы.
Пользователем осуществляется ввод и модификация информации о
плане счетов, данных расчета зарплаты, а так же учет аналитики и
корреспонденции счетов в бухгалтерских документах. Результатом работы является
расчет заработной платы, формирование бухгалтерского учета, а также печать
различных документов и отчетов.
В процессе ведения бухгалтерского учета необходимо:
· производить в обрабатываемых документах
правильную корреспонденцию счетов;
· проверять правильность и корректность
вводимых данных;
· проверить ввод начальных остатков по
счетам предприятия;
· вести учет товарно-материальных ценностей;
· вести учет основных средств предприятия и
амортизационных отчислений;
· вести налоговый учет;
· подготовить необходимые документы к
печати.
Участники процесса: бухгалтера.
В процессе настройки плана счетов необходимо:
· изменить и настроить план счетов;
· настроить аналитику счетов.
Участники процесса: главный бухгалтер, начальники
бухгалтерских отделов.
В процессе расчета заработной платы необходимо:
· вести кадровый учет предприятия;
· вести данные в необходимые документы
(табеля, больничные листы, отпуска);
· произвести расчет заработанной платы и
налогов;
· подготовить налоговую отчетность;
· подготовить необходимые документы к
печати.
Участники процесса: бухгалтера.
Все компоненты реализованы и написаны на внутреннем языке
платформы «1С: Предприятие».
Функциональное
назначение
ПО «1С-СХ» предназначено для автоматизации процесса
деятельности предприятия сельскохозяйственной отрасли.
Перечень объектов автоматизации:
· процесс ведения бухгалтерского учета;
· процесс настройки плана счетов;
· процесс расчета заработной платы.
Используемые
технические средства
Техническое обеспечение для сервера:
· персональный компьютер совместимый с IBM
PC с тактовой частотой не ниже 1800 MГц;
· оперативная память 1 Гб и более;
· сетевая карта 100/1000 Мбит/с;
· дисковое пространство 500 Мб и более;
· видеокарта и монитор, поддерживающие
разрешение 1024x768 точек и выше, с частотой обновления не менее 75 Гц;
· клавиатура;
· манипулятор «мышь»;
· принтер.
Техническое обеспечение для пользователя:
· персональный компьютер совместимый с IBM
PC с тактовой частотой не ниже 800 MГц;
· оперативная память 256 Мб и более;
· сетевая карта 10/100 Мбит/с;
· дисковое пространство 50 Мб и более;
· видеокарта и монитор, поддерживающие
разрешение 1024x768 точек и выше, с частотой обновления не менее 75 Гц;
· клавиатура;
· манипулятор «мышь»;
· принтер.
Используемые
программные средства
Программное обеспечение для сервера:
· операционная система Microsoft® Windows
2003 Server;
· сетевая версия «1C-Предприятие»;
· компонента управления удаленным рабочим
столом.
Программное обеспечение для пользователя:
· операционная система Microsoft® Windows
ХР;
· компонента управления удаленным рабочим
столом.
Вызов
и загрузка
Запуск системы осуществляется пользователем при загрузке
приложения 1CV7.7.exe, происходит выбор необходимой для работы компоненты и
аутентификация пользователя и загрузка выбранной конфигурации.
Входные
данные
При работе с системой все запросы задаются с помощью
пользовательского интерфейса.
Выходные
данные
Выходными данными является изменения информации в таблицах
БД, а также формирование различных электронных отчетов.
3.2
Описание компоненты «Бухгалтерский учет»
автоматизация
зарплата программа сельскохозяйственный
Общие
сведения
Компонента «Бухгалтерский учет» - это конфигурация для
платформы «1С: Предприятие» и написана на встроенном языке платформы в среде
«1С: Конфигуратор». В этой конфигурации модифицированы и добавлены алгоритмы
бухгалтерского и налогового учета сельскохозяйственных организаций.
Функциональное
назначение
Компонента «Бухгалтерский учет» предназначена:
· для ввода в обрабатываемые документы
правильной корреспонденции счетов;
· для проверки правильности и корректности
вводимых данных;
· для проверки ввод начальных остатков по
счетам предприятия;
· для ведения учета товарно-материальных
ценностей;
· для ведения учета основных средств
предприятия и амортизационных отчислений;
· для ведения налогового учета;
· для подготовки необходимых документов к
печати.
Описание
логической структуры
В данной конфигурации создан новый план счетов для
сельскохозяйственных организаций. В этой конфигурации модифицированы и добавлены
алгоритмы бухгалтерского и налогового учета сельскохозяйственных организаций.
Вызов
и загрузка
Запуск компоненты осуществляется пользователем при загрузке
приложения 1CV7.7.exe, в диалоге происходит выбор пункта списка «Бухгалтерия», после
происходит аутентификация пользователя и загрузка выбранной конфигурации.
3.3
Описание компоненты «Зарплата и кадры»
Общие
сведения
Компонента «Зарплата и кадры» - это конфигурация для
платформы «1С: Предприятие» и написана на встроенном языке платформы в среде
«1С: Конфигуратор». В этой конфигурации модифицированы и добавлены алгоритмы
расчета заработной платы.
Функциональное
назначение
Компонента «Зарплата и кадры» предназначена:
· ведение кадрового учета предприятия;
· ввод данных в необходимые документы
(табеля, больничные листы, отпуска);
· расчет заработанной платы и налогов;
· подготовка налоговой отчетности;
· подготовка необходимых документов к
печати.
Описание
логической структуры
В данной конфигурации создан новый план счетов для
сельскохозяйственных организаций. В этой конфигурации модифицированы и
добавлены алгоритмы расчета заработной платы.
Вызов
и загрузка
Запуск компоненты осуществляется пользователем при загрузке
приложения 1CV77.exe, в диалоге происходит выбор пункта списка «Зарплата», после
происходит аутентификация пользователя и загрузка выбранной конфигурации.
4. Текст программы
.1
Компонента «1С: Бухгалтерский учет»
Модуль
документа «Ввод ВЭксплуатациюОС»
…
Если Группа = Перечисление. ГруппыОС. ОрудияЛова тогда
Сч01_1 = СчетПоКоду («01.6»);
ИначеЕсли Группа = Перечисление. ГруппыОС. ИнвИОборудование
тогда
Сч01_1 = СчетПоКоду («01.8»);
ИначеЕсли Группа = Перечисление. ГруппыОС. Инвентарь тогда
Сч01_1 = СчетПоКоду («01.4»);
ИначеЕсли Группа = Перечисление. ГруппыОС. ПрТрФлот тогда
Сч01_1 = СчетПоКоду («01.0»);
ИначеЕсли Группа = Перечисление. ГруппыОС. ЗданияПромышленные
тогда
Сч01_1 = СчетПоКоду («01.1»);
ИначеЕсли Группа = Перечисление. ГруппыОС.
ЗданияОборудованиеКБН тогда
Сч01_1 = СчетПоКоду («01.2»);
ИначеЕсли Группа = Перечисление. ГруппыОС.ЖКХ тогда
Сч01_1 = СчетПоКоду («01.3»);
ИначеЕсли Группа = Перечисление. ГруппыОС.
СельхозОборудование тогда Сч01_1 = СчетПоКоду («01.7»);
Сч01_1 = СчетПоКоду («01.9»);
Иначе
Сч01_1 = СчетПоКоду («01.1»);
КонецЕсли;
…
Операция. Дебет. ОсновныеСредства = ОсновноеСредство;
Если (Группа = Перечисление. ГруппыОС. ОрудияЛова) или
(Группа = Перечисление. ГруппыОС. Инвентарь) или (Группа = Перечисление.
ГруппыОС. ИнвИОборудование) или (Группа = Перечисление. ГруппыОС.
ТранспортныеСредства) тогда
Операция. Дебет. МестаХранения = ПодОтч;
КонецЕсли;
…
Модуль
документа «Выписка»
…
Перем Сч52_1, Сч52_2, Сч52_3;
…
Если СС522 <> 0 тогда
Операция. Дебет. Счет = Сч52_2;
КонецЕсли;
Если СС523 <> 0 тогда
Операция. Дебет. Счет = Сч52_3;
КонецЕсли;
…
Если ПустоеЗначение(СуммаПроданнойВалюты) = 0 тогда
Операция. ВалСумма = СуммаПроданнойВалюты;
Операция. Валюта = ПроданнаяВалюта;
КонецЕсли;
…
Если СС522 <> 0 тогда
Операция. Кредит. Счет = Сч52_2;
КонецЕсли;
Если СС523 <> 0 тогда
Операция. Кредит. Счет = Сч52_3;
КонецЕсли;
…
Сч52_1 = СчетПоКоду («52.1»);
Сч52_2 = СчетПоКоду («52.2»);
Сч52_3 = СчетПоКоду («52.3»);
…
Модуль
документа «НачислениеАмортизации»
…
Если ОС. ПодлежитАмортизации = 0 тогда
НачислятьАмортизациюБух = 0;
КонецЕсли;
…
Если Ос. Состояние. Получить(ДатаДок) = Перечисление.
СостоянияОС. В_Эксплуатации тогда
ГодТек = ДатаГод(ДатаДок);
ГодВЭ = ДатаГод (Ос. ДатаВводаВЭксплуатацию);
МесяцТек = ДатаМесяц(ДатаДок);
МесяцВЭ = ДатаМесяц (Ос. ДатаВводаВЭксплуатацию);
МесВЭкспл = (ГодТек - ГодВЭ)*12 + МесяцТек - МесяцВЭ; //
находим кол-во месяцев в эксплуатации
МесЭкспл = ОС. СрокПолезногоИспользования. Получить(ДатаДок);
Если (МесЭкспл < МесВЭкспл) или (МесВЭкспл <= 0) тогда
// проверяем не вышел ли срок эксплуатации
РассчитаннаяАмортизацияБух = 0
ИначеЕсли МесВЭкспл = МесЭкспл тогда // если последний месяц
в экспл. доначисляем остатки
РассчитаннаяАмортизацияБух = ОС. ПервоначальнаяСтоимость.
Получить(датадок) - ОС.СМАм. Получить(ДатаДок)*(МесЭкспл-1)
ИначеЕсли ОС. СпособНачисленияАмортизации = Перечисление.
СпособыНачисленияАмортизацииОС. Суммой тогда
РассчитаннаяАмортизацияБух = ОС.СМАм. Получить(ДатаДок)
КонецЕсли;
КонецЕсли;
…
Модуль
документа «ОказаниеУслуг»
…
// Сч76_5 = СчетПоКоду («76.5»);
Сч76_5 = СчетПоКоду («76.8.2»);
Если СС7681 = 1 Тогда
Сч76_5 = СчетПоКоду («76.8.1»);
ИначеЕсли СС762 = 1 тогда
Сч76_5 = СчетПоКоду («76.2»);
ИначеЕсли СС765 = 1 тогда
Сч76_5 = СчетПоКоду («76.5»);
КонецЕсли;
…
Если СС914 = 1 Тогда
Сч91_1 = СчетПоКоду («91.4»);
КонецЕсли;
Сч90_15 = СчетПоКоду («90.15»);
Сч90_10 = СчетПоКоду («90.10»);
Сч90_12 = СчетПоКоду («90.12»);
Сч90_9 = СчетПоКоду («90.9»);
Сч90_6 = СчетПоКоду («90.6»);
Сч62_9 = СчетПоКоду («62.9»);
Сч62_10 = СчетПоКоду («62.10»);
Сч62_12 = СчетПоКоду («62.12»);
Сч62_14 = СчетПоКоду («62.14»);
Сч62_5 = СчетПоКоду («62.5»);
Сч73_3 = СчетПоКоду («73.3»);
Сч84_4 = СчетПоКоду («84.4»);
…
Если СС6210 = 1 тогда
СчетРасчетовСПокупателем = Сч62_10
ИначеЕсли СС6212 = 1 тогда
СчетРасчетовСПокупателем = Сч62_12
ИначеЕсли СС6214 = 1 тогда
СчетРасчетовСПокупателем = Сч62_14
ИначеЕсли СС625 = 1 тогда
СчетРасчетовСПокупателем = Сч62_5
ИначеЕсли СС626 = 1 тогда
СчетРасчетовСПокупателем = Сч62_6
ИначеЕсли СС733 = 1 тогда
СчетРасчетовСПокупателем = Сч73_3
ИначеЕсли СС844 = 1 тогда
СчетРасчетовСПокупателем = Сч84_4
Иначе
СчетРасчетовСПокупателем = Сч62_1
КонецЕсли;
Если ((Договор. Наименование = «Основной договор») и (Флаг =
0)) или (Флаг = 1) тогда
Если (ТипЗаказчика = 1) или (ТипЗаказчика = 0) Тогда
Если СС6210 = 1 тогда
СчетРасчетовСПокупателем = Сч62_10
ИначеЕсли СС6212 = 1 тогда
СчетРасчетовСПокупателем = Сч62_12
ИначеЕсли СС6214 = 1 тогда
СчетРасчетовСПокупателем = Сч62_14
ИначеЕсли СС625 = 1 тогда
СчетРасчетовСПокупателем = Сч62_5
ИначеЕсли СС626 = 1 тогда
СчетРасчетовСПокупателем = Сч62_6
ИначеЕсли СС733 = 1 тогда
СчетРасчетовСПокупателем = Сч73_3
ИначеЕсли СС844 = 1 тогда
СчетРасчетовСПокупателем = Сч84_4
Иначе
СчетРасчетовСПокупателем = Сч62_9
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЕсли;
Иначе
Если (СС844 = 0) и (СС733 = 0) Тогда
Операция. Дебет. Контрагенты = КонтрагентСписком;
Операция. Дебет. Договоры = ДоговорСписком;
КонецЕсли;
Если СС844 = 1 тогда
Операция. Дебет. ДляСчета844 = Сч844
КонецЕсли;
Если СС733 = 1 Тогда
Операция. Дебет. Сотрудники = Сотр;
Если ПустоеЗначение(Сотр) = 1 Тогда // если не указвываем
сотрудника программа ставит «СОТРУДНИК»
Сотрудн = СоздатьОбъект («Справочник. Сотрудники»);
Сотрудн. ВыбратьЭлементы();
Пока Сотрудн. ПолучитьЭлемент()=1 цикл
Если Сотрудн. НайтиПоКоду («0000000135») = 1 тогда
Операция. Дебет. Сотрудники = Сотрудн. ТекущийЭлемент();
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Если ТипУслуги = 3 Тогда
Операция. Кредит. Счет = Сч91_1;
Операция. Кредит. ПрочиеДоходыИРасходы =
СтатьяПрочихДоходовИРасходов;
КонецЕсли;
Если СС909 = 1 тогда
Операция. Кредит. Счет = Сч90_9
КонецЕсли;
Если СС9010 = 1 тогда
Операция. Кредит. Счет = Сч90_10
КонецЕсли;
Если СС9012 = 1 тогда
Операция. Кредит. Счет = Сч90_12
КонецЕсли;
Если СС9015 = 1 тогда
Операция. Кредит. Счет = Сч90_15
КонецЕсли;
Если ПустоеЗначение(ВидНоменкл) = 1 тогда
Операция. Кредит. ВидыНоменклатуры = Услуга. ВидНоменклатуры
Иначе
Операция. Кредит. ВидыНоменклатуры = ВидНоменкл
КонецЕсли;
Если ВерсияОбъекта >= «7.70.421» Тогда
Операция. Кредит. СтавкиНДС = ТаблицаРеализации. СтавкаНДС;
Операция. Кредит. СтавкиНП = ТаблицаРеализации. СтавкаНП;
КонецЕсли;
КонецЕсли;
Если ОплатаДоговора = 2 Тогда
Операция. ВалСумма = ТаблицаРеализации. ВалВсего;
Операция. Валюта = Валюта;
КонецЕсли;
Если ВестиУчетРасчетовУЕ = 1 Тогда
Операция. ВалСумма = ТаблицаРеализации. Всего;
Операция. Валюта = Валюта;
Операция. Сумма = ТаблицаРеализации. ВыручкаРуб -
ТаблицаРеализации. СуммоваяРазница;
Иначе
Операция. Сумма = Всего;
КонецЕсли;
ИначеЕсли ТаблицаРеализации. ВидНоменклатуры. ТипНоменклатуры
= Перечисление. ТипыНоменклатуры. УслугаЕНВД Тогда
Операция. Кредит. Счет = Сч90_1_2;
Операция. Кредит. ВидыНоменклатуры = ТаблицаРеализации.
ВидНоменклатуры;
Иначе
Если (ТипЗаказчика = 1) или (ТипЗаказчика = 0) Тогда
Операция. Кредит. Счет = Сч90_10
Иначе
Операция. Кредит. Счет = Сч90_12;
КонецЕсли;
Если СС906 = 1 тогда
Операция. Кредит. Счет = Сч90_6
КонецЕсли;
Если СС909 = 1 тогда
Операция. Кредит. Счет = Сч90_9
КонецЕсли;
Если СС9010 = 1 тогда
Операция. Кредит. Счет = Сч90_10
КонецЕсли;
Если СС9012 = 1 тогда
Операция. Кредит. Счет = Сч90_12
КонецЕсли;
Если СС9015 = 1 тогда
Операция. Кредит. Счет = Сч90_15
КонецЕсли;
Если ПустоеЗначение(ВидНоменкл) = 1 тогда
Операция. Кредит. ВидыНоменклатуры = Услуга. ВидНоменклатуры
Иначе
Операция. Кредит. ВидыНоменклатуры = ВидНоменкл
КонецЕсли;
Если ВерсияОбъекта >= «7.70.421» Тогда
Операция. Кредит. СтавкиНДС = ТаблицаРеализации. СтавкаНДС;
Операция. Кредит. СтавкиНП = ТаблицаРеализации. СтавкаНП;
КонецЕсли;
КонецЕсли;
Операция. Валюта = Валюта;
Операция. Сумма = ТаблицаРеализации. СуммоваяРазница;
КонецЕсли;
Если (ПустоеЗначение(СчетЗатрат) = 0) и
(ПустоеЗначение(СебестВсего) = 0) Тогда
Операция. НоваяПроводка();
Операция. НомерЖурнала = «ТВ»;
Операция. СодержаниеПроводки = «Себестоимость»;
Операция. ПервичныйДокумент =
глПредставлениеПервичногоДокумента (Контекст);
Операция. Сумма = СебестВсего;
Если (ТипЗаказчика = 1) или (ТипЗаказчика = 0) Тогда
Операция. Дебет. Счет = Сч90_10
Операция. Дебет. Счет = Сч90_9
КонецЕсли;
Если СС9010 = 1 тогда
Операция. Дебет. Счет = Сч90_10
КонецЕсли;
Если СС9012 = 1 тогда
Операция. Дебет. Счет = Сч90_12
КонецЕсли;
Если СС9015 = 1 тогда
Операция. Дебет. Счет = Сч90_15
КонецЕсли;
Если ПустоеЗначение(ВидНоменкл) = 1 тогда
Операция. Дебет. ВидыНоменклатуры = ТаблицаРеализации.
ВидНоменклатуры;
Операция. Дебет. ВидыНоменклатуры = Услуга. ВидНоменклатуры;
Иначе
Операция. Дебет. ВидыНоменклатуры = ВидНоменкл
КонецЕсли;
Если ВерсияОбъекта >= «7.70.421» Тогда
Операция. Дебет. СтавкиНДС = ТаблицаРеализации. СтавкаНДС;
Операция. Дебет. СтавкиНП = ТаблицаРеализации. СтавкаНП;
КонецЕсли;
Операция. Кредит. Счет = СчетЗатрат;
Операция. Кредит. Субконто (1, Субконто1);
Операция. Кредит. Субконто (2, Субконто2);
Операция. Кредит. Субконто (3, Субконто3);
КонецЕсли;
КонецЦикла;
Прервать;
…
Если ТипУслуги = 1 Тогда
Форма. ИспользоватьСлой («ЗачетАванса», 1);
Форма. ИспользоватьСлой («ЗачетТребований», 0);
Форма. ИспользоватьСлой («ПрочиеДоходы», 0);
Форма. ИспользоватьСлой («Номенклатура», 1);
Форма. ИспользоватьСлой («СписокТиповЗ», 1);
ИначеЕсли ТипУслуги = 2 Тогда
Форма. ИспользоватьСлой («ЗачетАванса», 0);
Форма. ИспользоватьСлой («ЗачетТребований», 1);
Форма. ИспользоватьСлой («ПрочиеДоходы», 0);
Форма. ИспользоватьСлой («Номенклатура», 0);
Форма. ИспользоватьСлой («СписокТиповЗ», 0);
Иначе
Форма. ИспользоватьСлой («ЗачетАванса», 1);
Форма. ИспользоватьСлой («ЗачетТребований», 0);
Форма. ИспользоватьСлой («ПрочиеДоходы», 1);
Форма. ИспользоватьСлой («Номенклатура», 0);
Форма. ИспользоватьСлой («СписокТиповЗ», 1);
КонецЕсли;
Если ТипУслуги = 3 Тогда
Форма.СС914. Доступность(1)
Иначе
Форма.СС914. Доступность(0);
СС914 = 0;
КонецЕсли;
КонецПроцедуры // ПриВыбореТипаУслуги()
…
Процедура ПересчетСеб()
СебестВсего = Себестоимость*Количество
ПересчетСеб();
…
Процедура ПриВыбореДоговора()
Если Флаг = 0 Тогда
глПриВыбореДоговора (Контрагент, Договор);
Иначе
глПриВыбореДоговора (КонтрагентСписком, ДоговорСписком);
КонецЕсли;
УправлениеКурсом(1); // при изменении договора могла
измениться валюта
ПроверитьДоговор();
КонецПроцедуры // ПриВыбореДоговора()
…
Процедура ПриВыбореКонтрагента()
Если Флаг = 0 Тогда
глПриВыбореКонтрагента (Контрагент, Договор);
Иначе
глПриВыбореКонтрагента (КонтрагентСписком, ДоговорСписком);
КонецЕсли;
УправлениеКурсом(1);
ПроверитьДоговор();
КонецПроцедуры // ПриВыбореКонтрагента()
…
Процедура ПриВыбореСчетаЗатрат()
Для А = 1 По 3 Цикл
НазначитьТип («Субконто»+А, СчетЗатрат. ВидСубконто(А));
КонецЦикла;
КонецПроцедуры // ПриВыбореСчета
Процедура ПроверкаФлага()
Если Флаг = 0 тогда
Форма. Контрагент. Видимость(1);
Форма. Договор. Видимость(1);
Форма. КонтрагентСписком. Видимость(0);
Форма. ДоговорСписком. Видимость(0);
Иначе
Форма. Контрагент. Видимость(0);
Форма. Договор. Видимость(0);
Форма. КонтрагентСписком. Видимость(1);
Форма. ДоговорСписком. Видимость(1);
КонецЕсли;
КонецПроцедуры
…
Процедура ПроверкаКнопки() // определяет доступность кнопок
по Дт и Кр
Форма.СС9010. Доступность(0);
Форма.СС906. Доступность(0);
Форма.СС9012. Доступность(0);
Форма.СС909. Доступность(0);
Форма.СС9015. Доступность(0);
Форма.СС625. Доступность(0);
Форма.СС626. Доступность(0);
Форма.СС6210. Доступность(0);
Форма.СС6212. Доступность(0);
Форма.СС6214. Доступность(0);
Форма.СС7681. Доступность(0);
Форма.СС762. Доступность(0);
Форма.СС765. Доступность(0);
Форма.СС765. Доступность(0);
Форма.СС844. Доступность(0);
Форма.СС733. Доступность(0);
Форма. Сч844. Доступность(0);
Форма. Сч844. Видимость(0);
Форма. Сотр. Доступность(0);
Форма. Сотр. Видимость(0);
Если СС906 = 1 Тогда
Форма.СС906. Доступность(1);
Форма.СС909. Доступность(1);
ИначеЕсли СС9010 = 1 Тогда
Форма.СС9010. Доступность(1);
ИначеЕсли СС9012 = 1 Тогда
Форма.СС9012. Доступность(1);
ИначеЕсли СС9015 = 1 Тогда
Форма.СС9015. Доступность(1);
Иначе
Форма.СС906. Доступность(1);
СС906 = 0;
Форма.СС909. Доступность(1);
СС909 = 0;
Форма.СС9010. Доступность(1);
СС9010 = 0;
Форма.СС9012. Доступность(1);
СС9012 = 0;
Форма.СС9015. Доступность(1);
СС9015 = 0;
КонецЕсли;
Если ТипЗаказчика = 2 Тогда
Если СС7681 = 1 Тогда
Форма.СС7681. Доступность(1);
ИначеЕсли СС762 = 1 Тогда
Форма.СС762. Доступность(1);
ИначеЕсли СС765 = 1 Тогда
Форма.СС765. Доступность(1);
Иначе
Форма.СС7681. Доступность(1);
СС7681 = 0;
Форма.СС762. Доступность(1);
СС762 = 0;
Форма.СС765. Доступность(1);
СС765 = 0;
КонецЕсли;
Иначе
Если СС625 = 1 Тогда
Форма.СС625. Доступность(1);
ИначеЕсли СС6210 = 1 Тогда
Форма.СС6210. Доступность(1);
ИначеЕсли СС6212 = 1 Тогда
Форма.СС6212. Доступность(1);
ИначеЕсли СС6214 = 1 Тогда
Форма.СС6214. Доступность(1);
ИначеЕсли СС626 = 1 Тогда
Форма.СС626. Доступность(1);
ИначеЕсли СС733 = 1 Тогда
Форма.СС733. Доступность(1);
Форма. Сотр. Видимость(1);
Форма. Сотр. Доступность(1);
ИначеЕсли СС844 = 1 Тогда
Форма.СС844. Доступность(1);
Форма. Сч844. Видимость(1);
Форма. Сч844. Доступность(1);
Иначе
Форма.СС625. Доступность(1);
Форма.СС6210. Доступность(1);
Форма.СС6212. Доступность(1);
Форма.СС6214. Доступность(1);
Форма.СС626. Доступность(1);
Форма.СС733. Доступность(1);
Форма.СС844. Доступность(1);
СС733 = 0;
СС844 = 0;
СС626 = 0;
СС625 = 0;
СС6210 = 0;
СС6212 = 0;
СС6214 = 0;
КонецЕсли;
КонецЕсли;
КонецПроцедуры;
Операция. НоваяПроводка();
Операция. НомерЖурнала = «МТ»;
Операция. СодержаниеПроводки = «Поступили материалы»;
Операция. ПервичныйДокумент =
глПредставлениеПервичногоДокумента(Контекст);
Операция. Дебет. Счет = Сч;
Операция. Дебет. Материалы = Материал;
Операция. Дебет. МестаХранения = МестоХранения;
Операция. Кредит. Счет = СчетРасчетовСПоставщиком;
Операция. Кредит. Контрагенты = Контрагент;
Операция. Кредит. Договоры = Договор;
Операция. Количество = Количество;
Если Флаг = 1 тогда
Операция. Кредит. Счет = Сч71_1;
КонецЕсли;
Если ПустоеЗначение(СчетЗатрат) = 0 тогда
Операция. Кредит. Счет = СчетЗатрат;
Операция. Кредит. Субконто (1, Субконто1);
Операция. Кредит. Субконто (2, Субконто2);
Операция. Кредит. Субконто (3, Субконто3);
КонецЕсли;
…
Операция. НоваяПроводка();
Операция. Дебет. Счет = Сч19_1;
Операция. Дебет. Контрагенты = Контрагент;
Если ПустоеЗначение(ДатаНомерСчетаФактуры) = 0 Тогда
Операция. Дебет. СчетаФактурыПолученные = ТекущийДокумент();
КонецЕсли;
Операция. Кредит. Счет = СчетРасчетовСПоставщиком;
Операция. Кредит. Контрагенты = Контрагент;
Операция. Кредит. Договоры = Договор;
Если Флаг = 1 тогда
Операция. Кредит. Счет = Сч71_1;
КонецЕсли;
Если ПустоеЗначение(СчетЗатрат) = 0 тогда
Операция. Кредит. Счет = СчетЗатрат;
Операция. Кредит. Субконто (1, Субконто1);
Операция. Кредит. Субконто (2, Субконто2);
Операция. Кредит. Субконто (3, Субконто3);
КонецЕсли;
…
Модуль
документа «ПоступлениеОС»
…
Если ПустоеЗначение(СчетЗатрат) = 0 тогда
Операция. Кредит. Счет = СчетЗатрат;
Операция. Кредит. Субконто (1, Субконто1);
Операция. Кредит. Субконто (2, Субконто2);
Операция. Кредит. Субконто (3, Субконто3);
КонецЕсли;
Если Флаг = 1 тогда
Операция. Кредит. Счет = Сч71_1;
КонецЕсли;
…
Процедура ПриВыбореСчетаЗатрат()
Для А = 1 По 3 Цикл
НазначитьТип («Субконто»+А, СчетЗатрат. ВидСубконто(А));
КонецЦикла;
КонецПроцедуры // ПриВыбореСчета
Процедура УправлениеЗакладками()
Форма. ИспользоватьЗакладки(1);
Форма. Закладки. УдалитьВсе();
Форма. Закладки. ДобавитьЗначение («Поступление»);
Форма. Закладки. ДобавитьЗначение («Счет затрат»);
КонецПроцедуры // УправлениеЗакладками
Процедура ПриВыбореЗакладки (НомерЗакладки, ЗначениеЗакладки)
Если НомерЗакладки = 1 Тогда
Форма. ИспользоватьСлой («Основной», 2);
Иначе
Форма. ИспользоватьСлой («СчетЗатрат», 2);
КонецЕсли;
// УправлениеВидимостьюРеквизитов();
КонецПроцедуры
…
Модуль
документа «РасходнаяНакладная»
…
Если ТаблицаДокумента. Количество >= КоличествоНаСкладах
Тогда
Если ТаблицаДокумента. Товар. ТипНоменклатуры = Перечисление.
ТипыНоменклатуры. Продукция тогда
Если ТаблицаДокумента. Товар. ПлановаяСебестоимость.
Получить(ДатаДок) = 0 Тогда
Сообщить («У продукции «+ТаблицаДокумента. Товар+»
отсутствует себестоимость.»,)
КонецЕсли;
ИначеЕсли ПустоеЗначение (ТаблицаДокумента. Себест)= 0 тогда
СуммаОтгрузки = ТаблицаДокумента. Количество*
ТаблицаДокумента. Себест
Иначе
СуммаОтгрузки = СуммаНаСкладах
КонецЕсли;
Иначе
Если ТаблицаДокумента. Товар. ТипНоменклатуры = Перечисление.
ТипыНоменклатуры. Продукция тогда
СуммаОтгрузки = ТаблицаДокумента. Количество*
ТаблицаДокумента. Товар. ПлановаяСебестоимость. Получить(ДатаДок);
Если ТаблицаДокумента. Товар. ПлановаяСебестоимость.
Получить(ДатаДок) = 0 Тогда
Сообщить («У продукции «+ТаблицаДокумента. Товар+»
отсутствует себестоимость.»,)
КонецЕсли;
ИначеЕсли ПустоеЗначение (ТаблицаДокумента. Себест)= 0 тогда
СуммаОтгрузки = ТаблицаДокумента. Количество*
ТаблицаДокумента. Себест
Иначе
СуммаОтгрузки = ТаблицаДокумента. Количество*
(СуммаНаСкладах/КоличествоНаСкладах);
КонецЕсли;
КонецЕсли;
…
Если ПустоеЗначение(СчетЗатрат1) = 1 тогда
Операция. Дебет. Счет = Сч90_1_1;
Операция. Дебет. ВидыНоменклатуры = ТаблицаОтгрузки.
ВидНоменклатуры;
Операция. Дебет. СтавкиНДС = ТаблицаОтгрузки. СтавкаНДС;
Операция. Дебет. СтавкиНП = ТаблицаОтгрузки. СтавкаНП;
иначеЕсли СчетЗатрат1. ПринадлежитГруппе (СчетПоКоду(«90»)) =
1 Тогда
Операция. Дебет. Счет = СчетЗатрат1;
Операция. Дебет. ВидыНоменклатуры = ТаблицаОтгрузки.
ВидНоменклатуры;
Операция. Дебет. Субконто (2, Субконто5);
Операция. Дебет. Субконто (3, Субконто6);
Операция. Дебет. Субконто (3, Субконто6);
КонецЕсли;
…
Если ПустоеЗначение(СчетЗатрат) = 0 тогда
Операция. Дебет. Счет = СчетЗатрат;
Операция. Дебет. Субконто (1, Субконто1);
Операция. Дебет. Субконто (2, Субконто2);
Операция. Дебет. Субконто (3, Субконто3);
КонецЕсли;
…
Если ПустоеЗначение(СчетЗатрат1) = 1 тогда
Операция. Кредит. Счет = Сч90_1_1;
Операция. Кредит. ВидыНоменклатуры = ТаблицаОтгрузки.
ВидНоменклатуры;
Операция. Кредит. СтавкиНДС = ТаблицаОтгрузки. СтавкаНДС;
Операция. Кредит. СтавкиНП= ТаблицаОтгрузки. СтавкаНП;
иначеЕсли СчетЗатрат1. ПринадлежитГруппе (СчетПоКоду(«90»)) =
1 Тогда
Операция. Кредит. Счет = СчетЗатрат1;
Операция. Кредит. Субконто (3, Субконто6);
Иначе
Операция. Кредит. Счет = СчетЗатрат1;
Операция. Кредит. Субконто (1, Субконто4);
Операция. Кредит. Субконто (2, Субконто5);
Операция. Кредит. Субконто (3, Субконто6);
КонецЕсли;
…
Модуль
формы «РасходнаяНакладная»
…
Процедура УправлениеЗакладками()
Форма. ИспользоватьЗакладки(1);
Форма. Закладки. УдалитьВсе();
Форма. Закладки. ДобавитьЗначение («Отгрузка товаров
(продукции)»);
Форма. Закладки. ДобавитьЗначение («Счет затрат»);
КонецПроцедуры // УправлениеЗакладками
Процедура ПриВыбореСчетаЗатрат()
Для А = 1 По 3 Цикл
НазначитьТип («Субконто»+А, СчетЗатрат. ВидСубконто(А));
КонецЦикла;
КонецПроцедуры // ПриВыбореСчета
Процедура ПриВыбореСчетаЗатрат1 ()
Для А = 1 По 3 Цикл
В = А + 3;
НазначитьТип («Субконто»+В, СчетЗатрат1. ВидСубконто(А));
КонецЦикла;
КонецПроцедуры // ПриВыбореСчета
…
Процедура ПриВыбореЗакладки (НомерЗакладки, ЗначениеЗакладки)
Если НомерЗакладки = 1 Тогда
Форма. ИспользоватьСлой («Основной», 2);
Иначе
Форма. ИспользоватьСлой («СчетЗатрат», 2);
КонецЕсли;
Если Форма. ИспользоватьЗакладки() = 1 Тогда
Если Форма. Закладки. ТекущаяСтрока() = 1 Тогда
УправлениеКурсом();
УправлениеВидимостьюГрузополучателя();
УправлениеВидимостьюГрузоотправителя();
КонецЕсли;
КонецЕсли;
КонецПроцедуры
…
Модуль
документа «СписаниеОС»
…
Если (БалансоваяСтоимость = 0) и (Сумма = 0) Тогда
Предупреждение («Введите балансовую стоимость»)
КонецЕсли;
Операция. НоваяПроводка();
Операция. НомерЖурнала = «ОС»;
Операция. СодержаниеПроводки = «Списана баланс. ст-ть»;
Операция. ПервичныйДокумент =
глПредставлениеПервичногоДокумента(Контекст);
Операция. Сумма =? (БалансоваяСтоимость = 0, Сумма, БалансоваяСтоимость);
Операция. Количество = Количество;
Если ПустоеЗначение(Сч) = 1 Тогда
Операция. Кредит. Счет = Сч01_1;
Операция. Кредит. ОсновныеСредства = ОсновноеСредство;
Иначе
Операция. Кредит. Счет = Сч;
Операция. Кредит. ОсновныеСредства = ОсновноеСредство;
Если (Сч. Код = «01.4») или (Сч. Код = «01.6») или (Сч. Код =
«01.8») или (Сч. Код = «01.9») тогда
Операция. Кредит. МестаХранения = ПодОтч;
КонецЕсли;
КонецЕсли;
Операция. Дебет. Счет = Сч01_5;
Операция. Дебет. ОсновныеСредства = ОсновноеСредство;
ОстаточнаяСтоимость =? (СчетНачисленияАмортизации.
Забалансовый = 1, БалансоваяСтоимость, БалансоваяСтоимость -
НачисленнаяАмортизация);
Если Сумма <>0 тогда
ОстаточнаяСтоимость = Сумма;
КонецЕсли;
Если ОстаточнаяСтоимость <> 0 Тогда
Операция. НоваяПроводка();
Операция. НомерЖурнала = «ОС»;
Операция. СодержаниеПроводки =? (СчетНачисленияАмортизации.
Забалансовый = 1, «Списана баланс. ст-ть», «Списана остат. ст-ть»);
Операция. ПервичныйДокумент =
глПредставлениеПервичногоДокумента(Контекст);
Если ПустоеЗначение(СчетЗатрат) = 0 тогда
Операция. Дебет. Счет = СчетЗатрат;
Операция. Дебет. Субконто (1, Субконто1);
Операция. Дебет. Субконто (2, Субконто2);
Операция. Дебет. Субконто (3, Субконто3);
ИначеЕсли ТипСписания = 1 Тогда
Операция. Дебет. Счет = Сч99_1;
Операция. Дебет. ПрибылиИУбытки = Перечисление.
ПрибылиИУбытки. ЧрезвычайныеРасходы;
Иначе
Операция. Дебет. Счет = Сч91_2;
Операция. Дебет. ПрочиеДоходыИРасходы =
СтатьяПрочихДоходовИРасходов;
КонецЕсли;
Операция. Кредит. Счет = Сч01_5;
Операция. Кредит. ОсновныеСредства = ОсновноеСредство;
Если ПустоеЗначение(Сумма) = 1 тогда
Операция. Сумма = БалансоваяСтоимость -
НачисленнаяАмортизация
Иначе
Операция. Сумма = Сумма
КонецЕсли;
КонецЕсли;
…
Модуль
документа «ТребованиеНакладная»
…
Если ПустоеЗначение(Сч) = 1 Тогда
Операция. Дебет. Счет = ТаблицаОстатков. СчетУчета;
Иначе
Операция. Дебет. Счет = Сч;
КонецЕсли;
Операция. Дебет. Субконто (1, Материал);
Операция. Дебет. Субконто (2,? (Флаг = 1,
МестоХраненияПриемникГруппой, МестоХраненияПриемник));
Если ПустоеЗначение(Сч) = 1 Тогда
Операция. Кредит. Счет = ТаблицаОстатков. СчетУчета;
Иначе
Операция. Кредит. Счет = Сч;
КонецЕсли;
…
Модуль
формы «УслугиСтороннихОрганизаций»
…
Процедура ПроверкаКнопок()
Если СС7681 = 1 Тогда
СС765 = 0;
Форма.СС765. Доступность(0);
Форма.СС7681. Доступность(1);
ИначеЕсли СС765 = 1 Тогда
СС7681 = 0;
Форма.СС765. Доступность(1);
Форма.СС7681. Доступность(0);
Иначе
СС7681 = 0;
СС765 = 0;
Форма.СС765. Доступность(1);
Форма.СС7681. Доступность(1);
КонецЕсли;
КонецПроцедуры;
…
Модуль
документа «ОтпускМатериаловНаСторону»
…
Если ПустоеЗначение(Себест) = 1 Тогда
Операция. Сумма = СуммаСписания;
Иначе
Операция. Сумма = Себест*КоличествоОтпущено;
КонецЕсли;
…
Если ВидОтпуска = 0 Тогда // отгрузка
Операция. НомерЖурнала = «МТ»;
Операция. СодержаниеПроводки = «Списан материал»;
Операция. ПервичныйДокумент =
глПредставлениеПервичногоДокумента(Контекст);
Если ПустоеЗначение(СчетЗатрат1) = 1 Тогда
Операция. Дебет. Счет = Сч91_2;
Операция. Дебет. ПрочиеДоходыИРасходы =
СтатьяПрочихДоходовИРасходов;
Иначе
Операция. Дебет. Счет = СчетЗатрат1;
Операция. Дебет. Субконто (1, Субконто4);
Операция. Дебет. Субконто (2, Субконто5);
Операция. Дебет. Субконто (3, Субконто6);
КонецЕсли;
Если ПустоеЗначение(Сч) = 1 Тогда
Операция. Кредит. Счет = Материал. СубСчет10
Иначе
Операция. Кредит. Счет = Сч
КонецЕсли;
Операция. Кредит. Материалы = Материал;
Операция. Кредит. МестаХранения = МестоХранения;
Операция. Количество = КоличествоОтпущено;
Если ПустоеЗначение(Себест) = 1 Тогда
Операция. Сумма = СуммаОтгрузки;
Иначе
КонецЕсли;
…
Если СуммаРеализации > 0 Тогда
Операция. НоваяПроводка();
Операция. НомерЖурнала = «МТ»;
Операция. СодержаниеПроводки = «Реализ.по цене выбытия»;
Операция. ПервичныйДокумент = глПредставлениеПервичногоДокумента(Контекст);
Если ПустоеЗначение(СчетЗатрат) = 1 Тогда
Операция. Дебет. Счет = СчетРасчетовСПокупателем;
Операция. Дебет. Контрагенты = Контрагент;
Операция. Дебет. Договоры = Договор;
Иначе
Операция. Дебет. Счет = СчетЗатрат;
Операция. Дебет. Субконто (1, Субконто1);
Операция. Дебет. Субконто (2, Субконто2);
Операция. Дебет. Субконто (3, Субконто3);
КонецЕсли;
Если ПустоеЗначение(СчетЗатрат1) = 1 Тогда
Операция. Кредит. Счет = Сч91_1;
Операция. Кредит. ПрочиеДоходыИРасходы =
СтатьяПрочихДоходовИРасходов;
Иначе
Операция. Кредит. Счет = СчетЗатрат1;
Операция. Кредит. Субконто (1, Субконто4);
Операция. Кредит. Субконто (2, Субконто5);
Операция. Кредит. Субконто (3, Субконто6);
КонецЕсли;
Если ЦеныВДоговоре = 2 Тогда
Если ОплатаДоговора = 2 Тогда
Операция. Валюта = Валюта;
Операция. ВалСумма = СуммаРеализации;
КонецЕсли;
Если ВестиУчетРасчетовУЕ = 1 Тогда
Операция. Сумма = ВсегоВыручкаРуб - ВсегоСуммоваяРазница;
Операция. Валюта = Валюта;
Операция. ВалСумма = СуммаРеализации;
Иначе
Операция. Сумма = СуммаРеализации*Курс / Кратность;
КонецЕсли;
Иначе
Операция. Сумма = СуммаРеализации;
КонецЕсли;
Если ВсегоСуммоваяРазница <> 0 Тогда
Операция. НоваяПроводка();
Операция. НомерЖурнала = «МТ»;
Операция. СодержаниеПроводки = «Суммовая разница»;
Операция. ПервичныйДокумент =
глПредставлениеПервичногоДокумента(Контекст);
Операция. Дебет. Счет = СчетРасчетовСПокупателем;
Операция. Дебет. Контрагенты = Контрагент;
Операция. Дебет. Договоры = Договор;
Если ПустоеЗначение(СчетЗатрат1) = 1 Тогда
Операция. Кредит. Счет = Сч91_1;
Операция. Кредит. ПрочиеДоходыИРасходы =
СтатьяПрочихДоходовИРасходов;
Иначе
Операция. Кредит. Счет = СчетЗатрат1;
Операция. Кредит. Субконто (1, Субконто4);
Операция. Кредит. Субконто (2, Субконто5);
Операция. Кредит. Субконто (3, Субконто6);
КонецЕсли;
Операция. Валюта = Валюта;
Операция. Сумма = ВсегоСуммоваяРазница;
КонецЕсли;
КонецЕсли;
…
Модуль
формы «ОтпускМатериаловНаСторону»
…
Форма. Закладки. ДобавитьЗначение («Счет затрат»);
КонецПроцедуры // УправлениеЗакладками
Процедура ПриВыбореСчетаЗатрат()
Для А = 1 По 3 Цикл
НазначитьТип («Субконто»+А, СчетЗатрат. ВидСубконто(А));
КонецЦикла;
КонецПроцедуры // ПриВыбореСчета
Процедура ПриВыбореСчетаЗатрат1 ()
Для А = 1 По 3 Цикл
В = А + 3;
НазначитьТип («Субконто»+В, СчетЗатрат1. ВидСубконто(А));
КонецЦикла;
КонецПроцедуры // ПриВыбореСчета
…
Форма. Закладки. ТекущаяСтрока(1);
Форма. ИспользоватьСлой («СчетЗатрат», 0);
КонецЕсли;
…
Процедура ПриВыбореЗакладки (НомерЗакладки, ЗначениеЗакладки)
Если НомерЗакладки = 1 Тогда
Форма. ИспользоватьСлой («Основной», 2);
Иначе
Форма. ИспользоватьСлой («СчетЗатрат», 2);
КонецЕсли;
Если Форма. ИспользоватьЗакладки() = 1 Тогда
Если Форма. Закладки. ТекущаяСтрока() = 1 Тогда
ПриВыбореВидаОтпуска();
УправлениеВидимостьюРеквизитов();
УправлениеКурсом();
КонецЕсли;
КонецЕсли;
КонецПроцедуры
…
Модуль
отчета «ОтчетПоОС»
…
Если БИ. ПолучитьСчет (1, Сч01_1) = 1 Тогда
СчетУчета = Сч01_1;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_0) = 1 Тогда
СчетУчета = Сч01_0;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_2) = 1 Тогда
СчетУчета = Сч01_2;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_3) = 1 Тогда
СчетУчета = Сч01_3;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_4) = 1 Тогда
СчетУчета = Сч01_4;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_6) = 1 Тогда
СчетУчета = Сч01_6;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_7) = 1 Тогда
СчетУчета = Сч01_7;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_8) = 1 Тогда
СчетУчета = Сч01_8;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
ИначеЕсли БИ. ПолучитьСчет (1, Сч01_9) = 1 Тогда
СчетУчета = Сч01_9;
нБаланс = БИ.СНД();
кБаланс = БИ.СКД();
оБаланс = БИ.ДО() - БИ.КО();
Иначе
…
Модуль
отчета «АктСверки»
Документ = Опер. Документ;
Если ПустоеЗначение (СокрЛП(СтрЗаменить (СтрЗаменить
(СтрЗаменить (ПервичныйДокумент,».», "»),»,», "»), «№»,»»))) = 0
Тогда
ПервичныйДокумент = СокрЛП (Опер. ПервичныйДокумент);
Если ПустоеЗначение (Опер. СодержаниеПроводки)=0 тогда // для
выписок и бух. справок
ПервичныйДокумент = СокрЛП (Опер. СодержаниеПроводки);
ДатаДок = СокрЛП (Лев(Опер. ПервичныйДокумент, Найти (Опер.
ПервичныйДокумент,»,») - 1));
ДлинаСтр = СтрДлина (Опер. ПервичныйДокумент);
НомерДок = СокрЛП (Прав(Опер. ПервичныйДокумент,
ДлинаСтр-Найти (Опер. ПервичныйДокумент, «№»)));
Если Лев (Опер. Документ, Найти (Опер. Документ, "») -
1) <> «Выписка» тогда
ПервичныйДокумент = ПервичныйДокумент +».» + НомерДок + «от»
+ ДатаДок +».»; // для б.с.
Иначе
ПервичныйДокумент = ПервичныйДокумент +». П/п №» + НомерДок +
«от» + ДатаДок +».»; // для выписок
КонецЕсли;
КонецЕсли;
Если СокрЛП (Опер. Содержание) = «Отгрузка товаров
(продукции)» тогда // для документов по отгрузке
Флаг = 0;
ДокТекст = СоздатьОбъект («Документ»);
ДокТекст. ВыбратьПодчиненныеДокументы (, Опер. Документ);
Если ДокТекст. ПолучитьДокумент() = 1 тогда
ДокВыборки = ДокТекст. ТекущийДокумент();
ДатаДок = ДокТекст. ДатаДок;
НомерДок = СокрЛП (ДокТекст. НомерДок);
ПервичныйДокумент = «Отгрузка товаров (продукции) по С/ф №» +
НомерДок + «от» + ДатаДок +».»;
Флаг = 1;
КонецЕсли;
Если Флаг = 0 Тогда
ПервичныйДокумент = СокрЛП (Опер. СодержаниеПроводки);
ДатаДок = СокрЛП (Лев(Опер. ПервичныйДокумент, Найти (Опер.
ПервичныйДокумент,»,») - 1));
ДлинаСтр = СтрДлина (Опер. ПервичныйДокумент);
НомерДок = СокрЛП (Прав(Опер. ПервичныйДокумент,
ДлинаСтр-Найти (Опер. ПервичныйДокумент, «№»)));
ПервичныйДокумент = «Отгрузка товаров (продукции) по Таварной
накладной №» + НомерДок + «от» + ДатаДок +».»;
КонецЕсли;
КонецЕсли;
Операция=Операция+» («+ПервичныйДокумент+»)»;
Иначе
Если ПустоеЗначение (Опер. Содержание) = 0 Тогда // для бух.
справок
Операция=Операция+» («+СокрЛП (Опер. Содержание)+»)»;
ИначеЕсли ПустоеЗначение (Опер. СодержаниеПроводки) = 0 Тогда
Операция=Операция+» («+СокрЛП (Опер. СодержаниеПроводки)+»)»;
Иначе
Операция=Операция+» («+Опер. ДатаОперации+»)»;
КонецЕсли;
КонецЕсли;
…
Модуль
обработки «ОбработкаДокументов»
…
Если Обработка = «СменитьНомер» Тогда
Если Док. Проведен() = 1 Тогда
Если Номер < 10 тогда
НомерД = «У000000»+Номер
ИначеЕсли Номер < 100 тогда
НомерД = «У00000»+Номер
ИначеЕсли Номер < 1000 тогда
НомерД = «У0000»+Номер
ИначеЕсли Номер < 10000 тогда
НомерД = «У000»+Номер
ИначеЕсли Номер < 100000 тогда
НомерД = «У00»+Номер
ИначеЕсли Номер < 1000000 тогда
НомерД = «У0»+Номер
ИначеЕсли Номер < 10000000 тогда
НомерД = «У»+Номер
КонецЕсли;
Док. НомерДок = НомерД;
Док. Записать();
Номер = Номер + 1;
КонецЕсли;
КонецЕсли;
…
4.2
Компонента «1С: Зарплата и Кадры»
Модуль
формы «Ввод НачальногоСальда»
…
Функция ПосчитатьИтог()
Итого=0;
ВыбратьСтроки();
Пока ПолучитьСтроку()>0 Цикл
Если ТипЗначения(ТекущееСальдо) = 1 тогда
Итого = Итого + ТекущееСальдо
КонецЕсли;
КонецЦикла;
Возврат «Текущее сальдо: «+Формат (Итого, «Ч015.2»)
КонецФункции // ПосчитатьИтог
…
Модуль
формы «ВыплатаЗаработнойПлаты»
…
Если Сотрудник. Подразделение.
Получить(ДатаПериода).Наименование = «Управление» тогда
Сумма = СуммаБезПроцента;
Если Сумма <= 0 Тогда
Сумма = Сотрудник. Оклад. Получить(ДатаПериода)
ИначеЕсли Сумма < Сотрудник. Оклад.
Получить(ДатаПериода)*1.5 тогда
Сумма = Сотрудник. Оклад. Получить(ДатаПериода)*1.5
ИначеЕсли Сумма < Сотрудник. Оклад.
Получить(ДатаПериода)*2.5 тогда
Сумма = Сотрудник. Оклад. Получить(ДатаПериода)*2.5
Иначе
Сумма = Сумма
КонецЕсли;
Иначе
Сумма = СуммаБезПроцента*Процент/100;
КонецЕсли;
// +++ если накопленная заболжность больше суммы для
начислений, то ставим сумму
Если СуммаВыплаты > 0 тогда
Если Сумма > СуммаВыплаты тогда
Сумма = СуммаВыплаты
// «закроем» оставшиеся действующие долгосрочные начисления
ТаблицаНачисленийУдержаний = «»;
глВидРасчетаДействует (Сотрудник, ДатаУвольнения,
ДатаУвольнения, ТаблицаНачисленийУдержаний);
Для Номер = 1 по ТаблицаНачисленийУдержаний.
КоличествоСтрок() Цикл
ТаблицаНачисленийУдержаний. ПолучитьСтрокуПоНомеру(Номер);
Если Найти (», СсудаПредприятия, ДоговорГраждПравХаракт,»,»,
«+ТаблицаНачисленийУдержаний. Документ. Вид()+»,») = 0 Тогда
УстановитьРеквизитСправочника (ТаблицаНачисленийУдержаний.
Расчет, «Действует», 0, ДатаУвольнения+1);
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры // ОбработкаПроведения
Модуль
документа «СведенияДляРасчетаЕСНСписком»
Функция Проверка(ОбработчикСообщений)
МожноПроводить = 1;
НазваниеДока = «Документ «+
глПредставлениеДокумента(Контекст)+»:»;
Док = ТекущийДокумент();
// проверим корректность заполнения документа
Если ПустоеЗначение(Сотрудник) = 1 Тогда
глДобавитьСообщение (ОбработчикСообщений, НазваниеДока+ «не
выбран сотрудник.», Док, «Сотрудник»);
МожноПроводить = 0;
КонецЕсли;
Возврат МожноПроводить
КонецФункции // Проверка()
// Предопределенная процедура
Процедура ОбработкаПроведения(ОбработчикСообщений)
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
Если (Сотрудник. Выбран()=1) Тогда
// если документ содержит ошибки или проведен в прошлом
периоде, то не проводим
Если Проверка(ОбработчикСообщений) = 0 Тогда
СтатусВозврата(0); Возврат
КонецЕсли;
ЕстьДвижения = 0; // есть движения документа
ЖЗ = СоздатьОбъект («ЖурналРасчетов. Зарплата»);
КТП = ЖЗ. КонецТекущегоПериода();
ПриказОПриеме = глПриказПоСотруднику (Сотрудник, КТП,
«ПриказОПриемеНаРаботу, ПриказОЗачисленииВСпискиЧасти»);
Попытка
ДатаПриема = ПриказОПриеме. ДатаПриема;
Если ДатаПриема >= ДатаДок Тогда
ДатаПФР = ДатаПриема
Иначе
ДатаПФР = ДатаДок
КонецЕсли;
Исключение
ДатаПФР = ДатаДок
КонецПопытки;
Если КатегорияПлательщикаПФР. Выбран()=1 Тогда
УстановитьРеквизитСправочника (Сотрудник,
«КатегорияПлательщикаПФР», КатегорияПлательщикаПФР, ДатаПФР);
ЕстьДвижения = 1;
КонецЕсли;
// Если ВзиматьНаСтрахПФР>0 Тогда
УстановитьРеквизитСправочника (Сотрудник,
«НеВзиматьНаСтрахПФР», 0, ДатаПФР);
ЕстьДвижения = 1;
// КонецЕсли;
Если ПФР <> 1 Тогда
УстановитьРеквизитСправочника (Сотрудник, «НеВзиматьЕСНвПФР»,
1, ДатаПФР);
ЕстьДвижения = 1;
Иначе
УстановитьРеквизитСправочника (Сотрудник, «НеВзиматьЕСНвПФР»,
0, ДатаПФР);
ЕстьДвижения = 1;
КонецЕсли;
Если ФСС <> 1 Тогда
УстановитьРеквизитСправочника (Сотрудник, «НеВзиматьЕСНвФСС»,
1, ДатаПФР);
ЕстьДвижения = 1;
Иначе
УстановитьРеквизитСправочника (Сотрудник, «НеВзиматьЕСНвФСС»,
0, ДатаПФР);
ЕстьДвижения = 1;
КонецЕсли;
Если ФОМС <> 1 Тогда
УстановитьРеквизитСправочника (Сотрудник,
«НеВзиматьЕСНвФОМС», 1, ДатаПФР);
ЕстьДвижения = 1;
Иначе
УстановитьРеквизитСправочника (Сотрудник,
«НеВзиматьЕСНвФОМС», 0, ДатаПФР);
ЕстьДвижения = 1;
КонецЕсли;
Если ЕстьДвижения=0 Тогда
Сообщить («Не внесено изменений в сведения для расчета ЕСН -
документ не проведен»);
СтатусВозврата(0);
Возврат;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры // ОбработкаПроведения
Модуль
формы «СведенияДляРасчетаЕСНСписком»
Перем ОбработчикСообщений; // обработчик сообщения при
проверке документа
Перем СписокДействий; // список действий, выполняемых по
кнопке Действия
Перем ПроведенВПрошлом;
Перем ЖурналРасчетовЗарплата, КТП, НТП;
Возврат
КонецЕсли;
Если Форма. МодальныйРежим() = 0 тогда
глПодборПоСотрудникам(Контекст);
КонецЕсли;
КонецПроцедуры
КонецФункции
//
*************************************************************************
Процедура ПередЗаписью()
КонецПроцедуры // ПриЗаписи
// *************************************************************************
Процедура ПровестиИзФормы (НажатаКнопкаОК=0)
ПриЗаписиПерепроводить(0);
ПередЗаписью();
Записать();
ПриЗаписиПерепроводить(1);
Если Проверка()=1 Тогда
Если Провести (, ОбработчикСообщений)=0 Тогда
глДобавитьСообщение (ОбработчикСообщений, «Документ не
проведен.», ТекущийДокумент());
КонецЕсли;
глОткрытьОбработчик (ОбработчикСообщений, Вид()+НомерДок);
// если вызвали через кнопку ОК, то закроем форму
// и обработчик соообщений пуст
Если (НажатаКнопкаОК=1) и (глПустойОбработчик(ОбработчикСообщений)=1)
Тогда
Форма. Закрыть();
КонецЕсли;
КонецПроцедуры
//
*************************************************************************
Процедура ПриВыбореСотрудника()
Сотрудник = Сотрудник. ОсновнойЭлемент;
КонецПроцедуры
// *************************************************************************
Процедура ОтрисоватьСтатики()
ТекстДаты = Формат (ДатаДок, «ДДДММГГГГ»);
Форма.текстКатегорияПлательщика. Заголовок («&Категория
плательщика ПФ с «+ ТекстДаты);
КонецПроцедуры // ОтрисоватьСтатики
//
*************************************************************************
Процедура ПриОткрытии()
Перем ПараметрыКоманды;
// заполним список команд для кнопки Действия
СписокДействий. ДобавитьЗначение («Движения документа»);
СписокДействий. ДобавитьЗначение («Перейти в журнал»);
// инициализация обработчика сообщений
ОбработчикСообщений = глСоздатьОбработчикСообщений
(глПредставлениеДокумента(Контекст));
Предупреждение («У документа «"
«+ПредставлениеВида()+»""»
«отсутствует печатная форма… Вывести на печать»
«документы данного вида невозможно.», 10);
СтатусВозврата(0);
КонецЕсли;
ОтрисоватьСтатики();
глКонтекстОткрытойФормы («Документ», Контекст);
СписокНередактируемыхКонтролов = СоздатьОбъект
(«СписокЗначений»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«НомерДок»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«ТекстПериода»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«кнМинусПериод»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«кнПлюсПериод»);
СписокНередактируемыхКонтролов. ДобавитьЗначение («Начало»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«Окончание»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«кнВыбораПериода»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«ПредставлениеДокумента»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«Сотрудник»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«кнЗаполнить»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«кнПодбор»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«кнОчистить»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«Дополнительный»);
ПроведенВПрошлом = глПроведенВПрошлом (Контекст,
СписокНередактируемыхКонтролов);
Если ПроведенВПрошлом=1 Тогда
ПриЗаписиПерепроводить(0);
ПриЗаписиПерепроводить(1);
КонецЕсли;
КонецПроцедуры // ПриОткрытии()
//
*************************************************************************
Процедура ПриЗаписи()
ПередЗаписью();
КонецПроцедуры // ПриЗаписи
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
Если (Сотрудник. Выбран()=1) Тогда
Если (Расценка <> 0) и (ПустоеЗначение(Количество)
<> 1) Тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. УстановитьРеквизит («Рассчитана», 1);
ЖрнЗарплата. УстановитьРеквизит («Фиксирована», 1);
Если Флаг = 1 тогда
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
СдельныйНарядГруппойСРКиСК, ДатаДок, ДатаДок, Расценка*Количество);
иначе
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
СдельныйНарядГруппой, ДатаДок, ДатаДок, Расценка*Количество);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецПроцедуры;
Модуль
формы «НарядИндивидуальныйНаГруппу»
Перем ОбработчикСообщений; // обработчик сообщения при
проверке и проведении документа
Перем СписокДействий; // список действий, выполняемых по
кнопке Действия
Перем ПроведенВПрошлом; // = 1 - документ проведен в прошлом
периоде
СуммаПоНаряду = 0;
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
СуммаПоНаряду = СуммаПоНаряду + Расценка * Количество;
КонецЦикла;
Возврат глЧислоВФорматеПользователя(СуммаПоНаряду);
КонецФункции
глОчиститьСообщения(ОбработчикСообщений);
Если Выбран() = 0 Тогда
глДобавитьСообщение (ОбработчикСообщений, «Документ не
записан.», ТекущийДокумент(), «Сотрудник»)
КонецЕсли;
Если Сотрудник. Выбран()=0 Тогда
глДобавитьСообщение (ОбработчикСообщений, «Не выбран сотрудник!
Проведение документа невозможно.», ТекущийДокумент(), «Сотрудник»)
КонецЕсли;
Если КоличествоСтрок() = 0 Тогда
глДобавитьСообщение (ОбработчикСообщений, «Список выполненных
работ пуст. Проведение документа не возможно.», ТекущийДокумент(), «КодНормы»)
Иначе
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Если (ШаблонПроводки. Наименование = «Распределять
пропорционально расчетной базе») Тогда
глДобавитьСообщение (ОбработчикСообщений, «Неверно указан
шаблон проводки в строке №"+НомерСтроки, ТекущийДокумент(),
«ШаблонПроводки»)
КонецЕсли;
// Если УчетНалогаНаПрибыль. ВидРасхода=Перечисление.
ВидыРасходов. ПропорциональноРаспределять Тогда
// глДобавитьСообщение (ОбработчикСообщений, «В данных учета
налога на прибыль выбран вид расхода « «Распределять пропорционально расчетной
базе»» в строке №"+НомерСтроки, ТекущийДокумент(), «УчетНалогаНаПрибыль»);
// КонецЕсли;
Если КодНормы. Выбран() = 0 Тогда
глДобавитьСообщение (ОбработчикСообщений, «Не выбран вид
работ в строке №"+НомерСтроки, ТекущийДокумент(), «КодНормы»)
КонецЕсли;
КонецЦикла;
КонецЕсли;
Возврат глПустойОбработчик(ОбработчикСообщений)
КонецФункции // Проверка
Процедура ПриВыбореРаботы()
Расценка = КодНормы. Расценка. Получить(ДатаДок);
ШаблонПроводки = КодНормы. ШаблонПроводки;
// УчетНалогаНаПрибыль = КодНормы. УчетНалогаНаПрибыль;
КонецПроцедуры
Процедура ПровестиИзФормы (НажатаКнопкаОК=0)
ПриЗаписиПерепроводить(0);
Записать();
Если ПроведенВПрошлом<>1 Тогда
ПриЗаписиПерепроводить(1);
Если Проверка()=1 Тогда
Если Провести (, ОбработчикСообщений)=0 Тогда
глДобавитьСообщение (ОбработчикСообщений, «Документ не
проведен.», ТекущийДокумент());
КонецЕсли;
КонецЕсли;
глОткрытьОбработчик (ОбработчикСообщений, Вид()+НомерДок);
КонецЕсли;
// если вызвали через кнопку ОК, то закроем форму
// и обработчик соообщений пуст
Если (НажатаКнопкаОК=1) и
(глПустойОбработчик(ОбработчикСообщений)=1) Тогда
Форма. Закрыть();
КонецЕсли;
Процедура ВводНового(Копирование)
Если Копирование=1 Тогда
Возврат;
КонецЕсли;
глВводНовогоДокумента(Контекст);
КонецПроцедуры // ВводНового
Процедура ПриОткрытии()
Перем ПараметрыКоманды; // параметры команды при открытии
// если открыли для печати
Если глВыполнитьКомандуФормы (Контекст, «Печать», "»)=1
Тогда
Предупреждение («У документа «"
«+ПредставлениеВида()+»""»
«отсутствует печатная форма… Вывести на печать»
«документы данного вида невозможно.», 10);
СтатусВозврата(0);
Возврат;
КонецЕсли;
// инициализация обработчика сообщений
ОбработчикСообщений = глСоздатьОбработчикСообщений
(глПредставлениеДокумента(Контекст));
// заполним список команд для кнопки Действия
СписокДействий. ДобавитьЗначение («Структура подчиненности»);
СписокДействий. ДобавитьЗначение («Движения документа»);
СписокДействий. ДобавитьЗначение («Перейти в журнал»);
// если открыли для заполнения
Если глВыполнитьКомандуФормы (Контекст, «Заполнить»,
ПараметрыКоманды)=1 Тогда
глЗаполнитьДокумент (ПараметрыКоманды, Контекст);
КонецЕсли;
СписокНередактируемыхКонтролов = СоздатьОбъект
(«СписокЗначений»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«НомерДокумента»);
СписокНередактируемыхКонтролов. ДобавитьЗначение («ДатаДок»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«Сотрудник»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«КодНормы»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«Расценка»);
СписокНередактируемыхКонтролов. ДобавитьЗначение
(«Количество»);
ПроведенВПрошлом = глПроведенВПрошлом (Контекст,
СписокНередактируемыхКонтролов);
Если ПроведенВПрошлом=1 Тогда
Форма.кнПровести. Видимость(0);
Форма.кнИсправить. Видимость(1);
ПриЗаписиПерепроводить(0);
Иначе
Форма.кнИсправить. Видимость(0);
ПриЗаписиПерепроводить(1);
КонецЕсли;
НомерДокумента = НомерДок;
глКонтекстОткрытойФормы («Документ», Контекст);
КонецПроцедуры // ПриОткрытии
Процедура ПриНачалеВыбораЗначения (ИдентЭлемДиалога,
ФлагСтандОбр)
Если ИдентЭлемДиалога = «ШаблонПроводки» Тогда
ФлагСтандОбр = 0;
Параметр=СоздатьОбъект («СписокЗначений»);
Параметр. ДобавитьЗначение («Начисление»,
«ОписательПроводки»);
Параметр. ДобавитьЗначение (ШаблонПроводки,
«ШаблонПроводки»);
ОткрытьФормуМодально («Обработка. ВводШаблонаПроводок»,
Параметр);
Если ТипЗначения(Параметр)=11 Тогда
ШаблонПроводки=Параметр
КонецЕсли;
КонецЕсли;
КонецПроцедуры // ПриНачалеВыбораЗначения()
Если ПроведенВПрошлом=1 Тогда
Предупреждение («Документ проведен в прошлом периоде. Его нельзя
редактировать.», 10);
СтатусВозврата(0);
КонецЕсли;
Если ПроведенВПрошлом=1 Тогда
Предупреждение («Документ проведен в прошлом периоде. Его
нельзя редактировать.», 10);
СтатусВозврата(0);
КонецЕсли;
КонецПроцедуры // ПриУдаленииСтроки
СписокДействий = СоздатьОбъект («СписокЗначений»);
Модуль
документа «ВводВремени»
Процедура ОбработкаПроведения()
ЖрнЗарплата = СоздатьОбъект («ЖурналРасчетов. Зарплата»);
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
Если (Сотрудник. Выбран()=1) Тогда
Если ХО. Выбран()=1 Тогда
ЖрнЗарплата. УстановитьРеквизит («Счет», ХО);
ЖрнЗарплата. УстановитьРеквизит («ДокументомЛи», 1);
КонецЕсли;
Если (Отработанно <> 0) и (ПустоеЗначение(РК) = 1)
Тогда
ЖрнЗарплата. УстановитьРеквизит («Дни», Дни);
ЖрнЗарплата. УстановитьРеквизит («Часы», Часы);
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
Если ФлагРКСК = 0 тогда
ЖрнЗарплата. ВвестиРасчетНаОсновании (ТекущийДокумент(),
Сотрудник, ВидРасчета. Повременная,? (ПустоеЗначение(Дата1)=0, Дата1,
НачМесяца(ДатаДок)),? (ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
Иначе
ЖрнЗарплата. ВвестиРасчетНаОсновании (ТекущийДокумент(),
Сотрудник, ВидРасчета. ПовременнаяБезРКСК,? (ПустоеЗначение(Дата1)=0, Дата1,
НачМесяца(ДатаДок)),? (ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
ЖрнЗарплата. УстановитьРеквизит («Дни», 0);
ЖрнЗарплата. УстановитьРеквизит («Часы», 0);
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента», 0);
КонецЕсли;
Если (Отработанно <> 0) и (ПустоеЗначение(РК) = 0)
Тогда
ЖрнЗарплата. УстановитьРеквизит («Дни», Дни);
ЖрнЗарплата. УстановитьРеквизит («Часы», Часы);
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. ВвестиРасчетНаОсновании (ТекущийДокумент(),
Сотрудник, ВидРасчета. ПовременнаяДляРК,? (ПустоеЗначение(Дата1)=0, Дата1,
НачМесяца(ДатаДок)),? (ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
ЖрнЗарплата. ВвестиРасчетНаОсновании (ТекущийДокумент(),
Сотрудник, ВидРасчета. РайонныйКоэффициентДляПовременки,?
(ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
ЖрнЗарплата. УстановитьРеквизит («Дни», 0);
ЖрнЗарплата. УстановитьРеквизит («Часы», 0);
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента», 0);
КонецЕсли;
Если Премия <> 0 тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
Если ФлагРКСК = 0 тогда
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ПремияНовая,? (ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
Иначе
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ПремияНоваяБезРКСК,? (ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
КонецЕсли;
Если Класность <> 0 тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
Если ФлагРКСК = 0 тогда
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ДоплатаЗаКласность,? (ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
Иначе
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ДоплатаЗаКласностьБезРКСК,? (ПустоеЗначение(Дата1)=0, Дата1,
НачМесяца(ДатаДок)),? (ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
КонецЕсли;
Если Отгулы <> 0 Тогда
ЖрнЗарплата. УстановитьРеквизит («Дни», Дни);
ЖрнЗарплата. УстановитьРеквизит («Часы», Часы);
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. ВвестиРасчетНаОсновании (ТекущийДокумент(),
Сотрудник, ВидРасчета. Отгулы,? (ПустоеЗначение(Дата1)=0, Дата1,
НачМесяца(ДатаДок)),? (ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
ЖрнЗарплата. УстановитьРеквизит («Дни», 0);
ЖрнЗарплата. УстановитьРеквизит («Часы», 0);
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента», 0);
КонецЕсли;
Если (ЧасыНоч <> 0) и (Флаг = 1) Тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. УстановитьРеквизит («Часы», ЧасыНоч);
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета. ЗаНочныеЧасыНов,?
(ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
Если (ЧасыВеч <> 0) и (Флаг = 1) Тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. УстановитьРеквизит («Часы», ЧасыВеч);
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ЗаВечерниеЧасыНов,? (ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
Если (ВПолуторном <> 0) ИЛИ (ВДвойном <> 0) и
(Флаг = 1) Тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. УстановитьРеквизит («Часы», ВПолуторном +
ВДвойном);
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ОплатаСверхурочныхНов,? (ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
Если (ЧасыПрВых <> 0) и (Флаг = 1) Тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. УстановитьРеквизит («Часы», ЧасыПрВых);
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета.
ДоплатаЗаПраздничныеНов,? (ПустоеЗначение(Дата1)=0, Дата1,
НачМесяца(ДатаДок)),? (ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
КонецЕсли;
Если (Прогулы <> 0) тогда
ЖрнЗарплата. УстановитьРеквизит («НомерСтрокиДокумента»,
НомерСтроки);
ЖрнЗарплата. УстановитьРеквизит («Дни», Прогулы);
ЖрнЗарплата. УстановитьРеквизит («Результат», 0);
ЖрнЗарплата. УстановитьРеквизит («Рассчитана», 1);
ЖрнЗарплата. УстановитьРеквизит («Фиксирована», 1);
ЖрнЗарплата. ВвестиРасчет (Сотрудник, ВидРасчета. Прогулы,?
(ПустоеЗначение(Дата1)=0, Дата1, НачМесяца(ДатаДок)),?
(ПустоеЗначение(Дата2)=0, Дата2, КонМесяца(ДатаДок)), 0);
Тариф = Сотрудник. Оклад. Получить (КонМесяца(ДляДнейЧасов));
Если Тариф > 0 тогда
Тариф = Тариф
Иначе
Тариф = Сотрудник. Оклад. Получить
(КонМесяца(ДляДнейЧасов)).Тариф. Получить (КонМесяца(ДляДнейЧасов));
КонецЕсли;
КонецЕсли;
глДобавитьСообщение (глОбработчикСообщений, «У сотрудника
«+Сотрудник+» изменялись расчетные данные (оклад или тариф) на «+ Тариф +»!
Введите табель по измененным данным!!!»,);
КонецЕсли;
ПриВводеСотрудника(Сотрудник);
КонецЕсли;
КонецЦикла;
СортироватьСтроки («Сотрудник»);
КонецПроцедуры
Процедура Очистить()
Если Вопрос («Внимание!!! Список сотрудников будет очищен.»
«Продолжить?», «Да+Нет»)= «Нет» Тогда
Возврат
КонецЕсли;
УдалитьСтроки();
КонецПроцедуры
Процедура Переключение()
Если Флаг <> 1 Тогда
Форма. ЧасыНоч. Доступность(0);
Форма. ЧасыВеч. Доступность(0);
Форма.ВПолуторном. Доступность(0);
Форма. Вдвойном. Доступность(0);
Форма. ЧасыПрВых. Доступность(0);
Иначе
Форма. ЧасыНоч. Доступность(1);
Форма. ЧасыВеч. Доступность(1);
Форма.ВПолуторном. Доступность(1);
Форма. Вдвойном. Доступность(1);
Форма. ЧасыПрВых. Доступность(1);
КонецЕсли;
Предупреждение («Перепроверте норму дней или часов!!!»)
КонецПроцедуры
Процедура ПровестиИзФормы (НажатаКнопкаОК=0)
ПриЗаписиПерепроводить(0);
Записать();
Если ПроведенВПрошлом<>1 Тогда
ПриЗаписиПерепроводить(1);
КонецЕсли;
// если вызвали через кнопку ОК, то закроем форму
// и обработчик соообщений пуст
Если НажатаКнопкаОК=1 Тогда
Провести();
Форма. Закрыть();
Иначе
Провести();
КонецЕсли;
КонецПроцедуры // ПровестиИзФормы
СписокДействий = СоздатьОбъект («СписокЗначений»);
Все
виды расчетов связанные с отпусками и больничными
// +++ обнуляет сторнированные документы
Если (Перерасчет = 1) или (сторно = 1) тогда
Дни = 0;
Часы = 0;
Результат = 0;
Возврат
КонецЕсли;
Вид
расчета «Повременная»
// Повременная оплата
Процедура ПровестиРасчет()
ЖрнЗарплата = СоздатьОбъект («ЖурналРасчетов. Зарплата»);
// если запись исправлена или фиксирована, то ее не
рассчитываем
Если (ЖрнЗарплата. Исправлена=1) или (ЖрнЗарплата.
Фиксирована=1) Тогда
глСообщениеТрассировки (глСообщенияТрассировки, «» +?
(ЖрнЗарплата. Исправлена=1, «Результат записи исправлен вручную», «Запись
фиксирована») +». Расчет не проводился.», 1);
Возврат
Иначе
Документ. ПолучитьСтрокуПоНомеру(НомерСтрокиДокумента);
ВсегоЧасов = Документ. НормаЧасов;
ЧасовЖ = Документ. Женские;
Оклад = Документ. Тариф;
Тариф = Документ. Тариф;
Если Документ. Флаг = 1 Тогда
Если (глФормаТрудаПоТарифуОкладу (Объект. ФормаТруда.
Получить(НаДату)) = «Оклад») или (Тариф > 500) Тогда
Результат = Окр (Оклад*(Документ. Отработанно)/ВсегоЧасов,
2,1);
Иначе
Результат = Окр (Тариф*(Документ. Отработанно), 2,1);
КонецЕсли;
Иначе
Если (глФормаТрудаПоТарифуОкладу (Объект. ФормаТруда.
Получить(НаДату)) = «Оклад») или (Тариф > 500) Тогда
Результат = Окр (Оклад*(Документ. Отработанно)/ВсегоЧасов,
2,1);
Иначе
Результат = Окр (Тариф*(Документ. Отработанно), 2,1);
КонецЕсли;
КонецЕсли;
Если Документ. Флаг = 1 Тогда
Дней = Документ. Отработанно/8;
Часов = Документ. Отработанно;
Иначе
Дней = Документ. Отработанно;
Часов = Документ. Отработанно*8;
КонецЕсли;
Если Документ. ФлагДЧ = 1 тогда
Дни = 0;
Часы = 0;
Иначе
Дни =? (Сторно=1, - Дней, Дней);
Часы =? (Сторно=1, - Часов, Часов);
КонецЕсли;
Если Документ. ДниФ <> 0 тогда
ДниФ = Документ. ДниФ;
КонецЕсли;
КонецЕсли;
КонецПроцедуры // ПровестиРасчет()
Вид
расчета «ПремияНовая»
// Премия для повременки
Процедура ПровестиРасчет()
ЖрнЗарплата = СоздатьОбъект («ЖурналРасчетов. Зарплата»);
// если запись исправлена или фиксирована, то ее не
рассчитываем
Если (ЖрнЗарплата. Исправлена=1) или (ЖрнЗарплата.
Фиксирована=1) Тогда
глСообщениеТрассировки (глСообщенияТрассировки, «» +?
(ЖрнЗарплата. Исправлена=1, «Результат записи исправлен вручную», «Запись
фиксирована») +». Расчет не проводился.», 1);
Возврат
Иначе
Документ. ПолучитьСтрокуПоНомеру(НомерСтрокиДокумента);
Если Документ. Флаг =1 Тогда
ВсегоЧасов = Документ. НормаЧасов;
Иначе
ГрафикРаботы = Объект. ГрафикРаботы. Получить(ДатаОкончания);
ГрафикРаботы =? (ПустоеЗначение(ГрафикРаботы)=1, Константа.
ОсновнойГрафик, ГрафикРаботы);
Календарь = ГрафикРаботы. ОсновныеЧасы;
НормаЧасов = Календарь. Часов (НачМесяца(ДатаОкончания),
КонМесяца(ДатаОкончания));
НормаДней = Календарь. Дней (НачМесяца(ДатаОкончания),
КонМесяца(ДатаОкончания));
ВсегоЧасов = Окр (Документ. НормаЧасов*НормаЧасов/НормаДней,
0,1);
КонецЕсли;
// ВсегоЧасов = Документ. НормаЧасов;
Если Документ. ФлагПремия = 1 тогда
Календарь = СоздатьОбъект («Календарь. ПолныйМесяц»);
НормаЧасов = Календарь. Часов (НачМесяца(ДатаОкончания),
КонМесяца(ДатаОкончания));
НормаДней = Календарь. Дней (НачМесяца(ДатаОкончания),
КонМесяца(ДатаОкончания));
Если Документ. Флаг =1 Тогда
ВсегоЧасов = НормаЧасов
Иначе
ВсегоЧасов = НормаДней
КонецЕсли;
Иначе
ВсегоЧасов = Документ. НормаЧасов;
КонецЕсли;
ЧасовЖ = Документ. Женские;
НаДату = Документ. Дата2;
Оклад = Документ. Тариф;
Тариф = Документ. Тариф;
Отработанно = Документ. Отработанно;
ЧасовНочн = Документ. ЧасыНоч;
ЧасовПраздн = Документ. ЧасыПрВых;
Часов15 = Документ.ВПолуторном;
Часов2 = Документ.ВДвойном;
Класность = Документ. Класность;
Отгулы = Документ. Отгулы;
Если Документ. Флаг = 1 Тогда
Если (глФормаТрудаПоТарифуОкладу (Объект. ФормаТруда.
Получить(НаДату)) = «Оклад») или (Тариф > 500) Тогда
РезультатПовр = Окр (Оклад*Отработанно/ВсегоЧасов, 2,1);
РезультатОтг = Окр (Оклад*Отгулы/ВсегоЧасов, 2,1);
Иначе
РезультатПовр = Окр (Тариф*Отработанно, 2,1);
РезультатОтг = Окр (Тариф*Отгулы, 2,1);
КонецЕсли;
Иначе
Если (глФормаТрудаПоТарифуОкладу (Объект. ФормаТруда.
Получить(НаДату)) = «Оклад») или (Тариф > 500) Тогда
РезультатПовр = Окр (Оклад*Отработанно/ВсегоЧасов, 2,1);
РезультатОтг = Окр (Оклад*Отгулы/ВсегоЧасов, 2,1);
Иначе
РезультатПовр = Окр (Тариф*Отработанно, 2,1);
РезультатОтг = Окр (Тариф*Отгулы, 2,1);
КонецЕсли;
КонецЕсли;
Если (глФормаТрудаПоТарифуОкладу (Объект. ФормаТруда.
Получить(НаДату)) = «Оклад») или (Тариф > 500) Тогда
ЗаОдинЧас = Оклад/ВсегоЧасов;
РезультатНочн = Окр (ЗаОдинЧас*ЧасовНочн*Константа.
КоэффициентДоплатыЗаРаботуВНочноеВремя, 2,1);
РезультатПраздн = Окр (ЗаОдинЧас*ЧасовПраздн*(Константа.
КоэффициентДоплатыЗаРаботуВПраздничныеДни-1), 2,1);
РезультатСверхУр = Окр (ЗаОдинЧас*(Часов15*Константа.
КоэффициентОплатыСверхУрочныхЧасовНачальный+Часов2*Константа.
КоэффициентОплатыСверхУрочныхЧасовПоследующих), 2,1);
Иначе
РезультатНочн = Окр (Тариф*ЧасовНочн*Константа.
КоэффициентДоплатыЗаРаботуВНочноеВремя, 2,1);
РезультатПраздн = Окр (Тариф*ЧасовПраздн*(Константа.
КоэффициентДоплатыЗаРаботуВПраздничныеДни-1), 2,1);
РезультатСверхУр = Окр (Тариф*(Часов15*Константа.
КоэффициентОплатыСверхУрочныхЧасовНачальный+Часов2*Константа.
КоэффициентОплатыСверхУрочныхЧасовПоследующих), 2,1);
КонецЕсли;
РезультатКл =
Окр((РезультатПовр+РезультатНочн+РезультатПраздн+РезультатСверхУр)/100*Класность,
2,1);
Результат =
Окр((РезультатПовр+РезультатНочн+РезультатПраздн+РезультатСверхУр+РезультатКл+РезультатОтг)/100*(Документ.
Премия), 2,1);
КонецЕсли;
КонецПроцедуры // ПровестиРасчет()
Вид
расчета «ОплатаСверхурочныхНов»
// Сверхурочные
Процедура ПровестиРасчет()
ЖрнЗарплата = СоздатьОбъект («ЖурналРасчетов. Зарплата»);
Документ. ПолучитьСтрокуПоНомеру(НомерСтрокиДокумента);
// ВсегоЧасов = Документ. НормаЧасов;
Если Документ. Флаг =1 Тогда
ВсегоЧасов = Документ. НормаЧасов;
Иначе
ГрафикРаботы = Объект. ГрафикРаботы. Получить(ДатаОкончания);
ГрафикРаботы =? (ПустоеЗначение(ГрафикРаботы)=1, Константа.
ОсновнойГрафик, ГрафикРаботы);
Календарь = ГрафикРаботы. ОсновныеЧасы;
НормаЧасов = Календарь. Часов (НачМесяца(ДатаОкончания),
КонМесяца(ДатаОкончания));
НормаДней = Календарь. Дней (НачМесяца(ДатаОкончания),
КонМесяца(ДатаОкончания));
ВсегоЧасов = Окр (Документ. НормаЧасов*НормаЧасов/НормаДней,
0,1);
КонецЕсли;
Часов15 = Документ.ВПолуторном;
Часов2 = Документ.ВДвойном;
НаДату = Документ. Дата2;
Оклад = Документ. Тариф;
Тариф = Документ. Тариф;
Если (глФормаТрудаПоТарифуОкладу (Объект. ФормаТруда.
Получить(НаДату)) = «Оклад») или (Тариф > 500) Тогда
ЗаОдинЧас = Оклад/ВсегоЧасов;
Результат = Окр (ЗаОдинЧас*(Часов15*Константа.
КоэффициентОплатыСверхУрочныхЧасовНачальный+Часов2*Константа.
КоэффициентОплатыСверхУрочныхЧасовПоследующих), 2,1);
Иначе
Результат = Окр (Тариф*(Часов15*Константа. КоэффициентОплатыСверхУрочныхЧасовНачальный+Часов2*Константа.
КоэффициентОплатыСверхУрочныхЧасовПоследующих), 2,1);
КонецЕсли;
Если Документ. ФлагДЧ = 1 тогда
Часы = 0;
Иначе
Часы =? (Сторно=1, - (Часов15+Часов2), (Часов15+Часов2));
КонецЕсли;
КонецПроцедуры
Заключение
В данной дипломной работе были рассмотрены вопросы
автоматизации процесса деятельности предприятия сельскохозяйственной отрасли,
такие как:
· процесс ведения бухгалтерского учета;
· процесс настройки плана счетов;
· процесс расчета заработной платы.
Для этого мы используем компоненты «1С: Зарплата и Кадры» и
«1С: Бухгалтерский учет», а также внутренний язык программирования платформы
«1С: Предприятие».
Библиографический список
1. А.
Алексеев, О. Дерут, В. Егоров Описание типовой конфигурации «Зарплата и Кадры»
- М.: 1С, 2002. - 448 с.
2. А.
Алексеев, О. Дерут, В. Егоров Описание типового языка программирования
конфигурации «Зарплата и Кадры» в 2-х томах. Том 1. - М.: 1С, 2002. - 689 с.
. А.
Алексеев, О. Дерут, В. Егоров Описание типового языка программирования
конфигурации «Зарплата и Кадры» в 2-х томах. Том 1. - М.: 1С, 2002. - 634 с.
. А.
Алексеев, О. Дерут, В. Егоров Описание типовой конфигурации «Бухгалтерский
учет» - М.: 1С, 2002. - 537 с.
. А.
Алексеев, О. Дерут, В. Егоров Описание типового языка программирования
конфигурации «Бухгалтерский учет» в 2-х томах. Том 1. - М.: 1С, 2002. - 689 с.
. А.
Алексеев, О. Дерут, В. Егоров Описание типового языка программирования
конфигурации «Бухгалтерский учет» в 2-х томах. Том 1. - М.: 1С, 2002. - 634 с.
. ГОСТ
12.1.030-81. Электробезопасность. Защитное заземление. - Введ.02.02.80. - М.:
Изд-во стандартов, 1987. - 13 с.
. ГОСТ19.106-77.
Требования к программным документам, выполненным печатным способом. -
Введ.02.02.80. - М.: Изд-во стандартов, 1987. - 13 с.
. ГОСТ19.201-78.
Техническое задание. Требования к содержанию и оформлению. - Введ.02.02.80. -
М.: Изд-во стандартов, 1987. - 3 с.
. ГОСТ19.202-78.
Спецификация. - Введ.02.02.80. - М.: Изд-во стандартов, 1987. - 3 с.
. ГОСТ19.301-79.
Программа и методика испытаний. - Введ.02.02.80. - М.: Изд-во стандартов, 1987.
- 2 с.
. ГОСТ19.401-78.
Текст программы. - Введ.02.02.80. - М.: Изд-во стандартов, 1987. - 1 с.
. ГОСТ19.402-78.
Описание программы. - Введ.02.02.80. - М.: Изд-во стандартов, 1987. - 2 с.
. ГОСТ19.404-79.
Пояснительная записка. Требования к содержанию и оформлению. - Введ.02.02.80. -
М.: Изд-во стандартов, 1987. - 2 с.
. ГОСТ19.502-78.
Описание применения. Требования к содержанию и оформлению. - Введ.02.02.80. -
М.: Изд-во стандартов, 1987. - 2 с.
. ГОСТ19.504-79.
Руководство программиста. Требования к содержанию и оформлению. -
Введ.02.02.80. - М.: Изд-во стандартов, 1987. - 2 с.