Адаптация автоматизированной системы '1С Предприятие 8'

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,91 Мб
  • Опубликовано:
    2017-02-15
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Адаптация автоматизированной системы '1С Предприятие 8'













ДИПЛОМНЫЙ ПРОЕКТ

на тему:

Адаптация автоматизированной системы "1С: Предприятие 8"

для ООО "СтройРемонтПодряд"

Автор проекта: и организации производства

студент группы 1511

Э.Р. Мубаракшина

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

к. ф. - м. н., доцент, зав. каф ПИУ

Р.И. Ахметсагиров



Набережные Челны 2016

Аннотация

 

Дипломный проект на тему "Адаптация автоматизированной системы "1С: Предприятие 8" в ООО "СтройРемонтПодряд" содержит 117 страниц пояснительной записки, рисунков - 38, таблиц - 31, приложений - 10, использованных источников - 22.

Объектом исследования в данном дипломном проекте выступает предприятие ООО "СтройРемонтПодряд", оказывающее услуги аренды строительной техники.

Целью данного дипломного проекта является повышение оперативности получения информации о деятельности предприятия, уменьшение трудоемкости работ в разделах бухгалтерского учета и учета заработной платы. Для достижения цели на предприятии была адаптирована и внедрена автоматизированная система на базе "1С: Платформа 8.1" в составе программ "1С: Бухгалтерия" и "1С: Зарплата и Управление персоналом".

Произведена оценка эффективности внедрения указанной задачи.

Результаты внедрения можно охарактеризовать весьма эффективными, показатели экономической эффективности проекта при первоначальном капиталовложении в 66896,84 рубля при горизонте расчета в полтора года: чистая текущая стоимость проекта составляет 23542,93 рубля, дисконтированный срок окупаемости - 1,11 года.

Содержание

 

Введение

Глава 1. Предпроектный анализ деятельности предприятия ООО "СтройРемонтПодряд"

1.1 Краткая характеристика предприятия

1.2 Уровень автоматизации предприятия

1.3 Проблемы, решение которых актуально для предприятия

1.4 Обоснование выбора автоматизированной системы

Глава 2. Адаптация автоматизированной системы "1С: Предприятие 8" для ООО "СтройРемонтПодряд"

2.1 Технология выполнения работ по автоматизации систем управления

2.2 Обследование предприятия ООО "СтройРемонтПодряд"

2.2.1 Обследование ведения учета заработной платы и кадров в ООО "СтройРемонтПодряд"

2.2.2 Обследование ведения бухгалтерского учета в ООО "СтройРемонтПодряд"

2.3 Постановка задания на доработку программ "1С: Предприятие 8" для ООО "СтройРемонтПодряд"

2.3.1 Задание на доработку программы "1С: Зарплата и управление персоналом"

Документ "Выработка на механизмах"

Документ "Доплата из "коллективного фонда" по итогам месяца"

Документ "Квартальная премия"

Документ "Вознаграждение по итогам года из резерва"

2.3.2 Постановка задания на перенос данных в программу "1С: Бухгалтерия 8" из "БЭСТ-4+"

Перенос данных о поставщиках и покупателях

Перенос суммовых остатков по взаиморасчетам с покупателями и поставщиками ООО "СтройРемонтПодряд"

Перенос количественно-суммовых остатков по товарно-материальным ценностям

2.4 Решение поставленных задач

2.4.1 Адаптация программы "1С: Зарплата и управление персоналом"

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

Документ "Доплата из "коллективного фонда" по итогам месяца"

Документ "Квартальная премия"

Документ "Вознаграждение по итогам года из резерва"

2.4.2 Перенос данных в программу "1С: Бухгалтерия 8" из "БЭСТ-4+"

Перенос данных о поставщиках и покупателях

Перенос суммовых остатков по взаиморасчетам с покупателями и поставщиками ООО "СтройРемонтПодряд"

Перенос данных о товарно-материальных ценностях

Перенос количественно-суммовых остатков по товарно-материальным ценностям

Глава 3. Оценка экономической эффективности проекта

3.1 Введение

3.2 Расчет необходимых капитальных вложений

3.2.1 Расчет затрат на приобретение ПО

Расчет затрат на адаптацию ПО

3.3 Расчет текущих эксплуатационных затрат

3.3.1 Расчет затрат по базовому варианту

Расчет затрат по проектному варианту

3.4 Расчет показателей экономической эффективности

3.5 Выводы

Глава 4. Безопасность жизнедеятельности

4.1 Требования по обеспечению комфортности на рабочем месте

4.2 Расчет вентиляции

4.3 Организация техники безопасности на рабочем месте

4.4 Организация система пожаро- и электробезопасности на рабочем месте

4.5 Правовые вопросы обеспечения БЖД

4.6 Заключение

Заключение

Термины и определения

Список использованных источников

Приложения

Введение


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

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

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

Процесс создания автоматизированной системы управления для предприятий сопряжен с определенными трудностями:

-       это процесс долгий, трудоемкий и весьма дорогостоящий;

-       зачастую ни руководитель, ни сотрудники бухгалтерии, экономических и финансовых служб не могут точно сформулировать свои требования, так как не видят общую картину;

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

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

Объектом исследования в данном дипломном проекте выступает предприятие ООО "СтройРемонтПодряд", оказывающее услуги аренды строительной техники.

Целью данного дипломного проекта является повышение оперативности получения информации о деятельности предприятия, уменьшение трудоемкости работ в разделах бухгалтерского учета и расчета заработной платы. Для достижения данной цели руководством организации было принято решение внедрить автоматизированную систему "1С: Предприятие 8" в составе программ "1С: Бухгалтерия 8" и "1С: Зарплата и управление персоналом 8".

Задачи, которые требуется решить в рамках дипломного проекта:

)        провести анализ существующего бухгалтерского и оперативного учета, ведущегося на предприятии ООО "СтройРемонтПодряд";

2)      выявить необходимость изменений и доработок стандартной автоматизированной системы (АС) в связи с нуждами предприятия;

)        произвести постановку задачи на адаптацию программного продукта для ООО "СтройРемонтПодряд";

)        реализовать требуемые изменения;

)        произвести оценку экономической эффективности проекта.

Глава 1. Предпроектный анализ деятельности предприятия ООО "СтройРемонтПодряд"


1.1 Краткая характеристика предприятия


ООО "СтройРемонтПодряд" является предприятием, оказывающим услуги аренды строительной техники; установки, наладки, сервисного обслуживания грузоподъёмных механизмов; реконструкции и строительства зданий.

Основная площадка ООО "СтройРемонтПодряд" находится в городе Набережные Челны. Именно там ведутся основные работы по бухгалтерскому и кадровому учету. Имеются также филиалы в Казани, Нижнекамске и Магнитогорске.

В связи со специализацией предприятия основным видом заключаемых сделок являются сделки подряда. Расчет при этом ведется преимущественно денежными средствами.

В среднем в месяц в организации оформляется 1000 первичных документов. Перечень товарно-материальных ценностей не превышает 1000 наименований, а количество контрагентов около 3000.

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

1.2 Уровень автоматизации предприятия


На момент обследования предприятия было выявлено, что для бухгалтерского учета эксплуатируются прикладные программы "БЭСТ-4+" и "БЭСТ-4+ удаленный склад". Установленные модули программы "БЭСТ" позволяют решать задачи бухгалтерского учета, вести торговый и складской учет (рисунок 1.1), но не автоматизируют работы по начислению заработной платы.

Рисунок 1.1 - Набор модулей программы "БЭСТ-4+", используемых на предприятии

Программу используют в следующих отделах:

-       бухгалтерия - 6 чел;

-       отдел маркетинга - 1 чел;

-       отдел материально-технического обеспечения - 3 чел.;

-       склады материалов - 1 чел.

При этом расчет заработной платы производится вручную с помощью табличного редактора Microsoft Office Excel 2003. Также вручную бухгалтера составляют сводную отчетность по организации и ее удаленным филиалам, так как в программе "БЭСТ-4+" одной информационной базе соответствует одно юридическое лицо.

автоматизация учет заработная плата

1.3 Проблемы, решение которых актуально для предприятия


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

Автоматизированная система должна быть масштабируемой, что позволит расширить сферу деятельности или размеры предприятия без модификации самой системы.

Использовать автоматизированную систему планируется для трех юридических лиц. Учредителям предприятия необходимо быстро получать актуальную информацию сводно по всем подразделениям и филиалам.

В будущем ООО "СтройРемонтПодряд" планирует усилить свои иногородние филиалы и предоставить им самим вести бухгалтерский и управленческий учет. Требуется налаженный механизм обмена данными при условии, что между подразделениями нет соединения локальной сетью.

Первоначально требуется автоматизировать шесть рабочих мест, расположенных в пределах одного здания:

–       у главного бухгалтера;

–       в кадровой службе - два;

–       в расчетном отделе бухгалтерии - три.

 

.4 Обоснование выбора автоматизированной системы


Организацией рассматривался вариант продолжения работы с программой "БЭСТ - 4+" путем покупки дополнительных модулей. Но в текущей системе процесс получения консолидированной отчетности по предприятию и его филиалам является довольно трудоемким, и в случае расширения организации еще более усложнится.

Сделав оценку существующих на рынке прикладных решений автоматизации бухгалтерского и управленческого учета, предприятие сделало выбор в сторону систем программ платформы "1С: Предприятие 8". Было принято решение внедрить программы "1С: Бухгалтерия 8" и "1С: Зарплата и управление персоналом 8".

Основными причинами такого выбора было:

-       АС на платформе "1С: Предприятие 8" позволяет вести учет в одной информационной базе сразу по нескольким организациям, что позволяет оперативно составлять консолидированную отчетность [1];

-       Широкий выбор типовых решений на базе 1С позволяет провести внедрение минимальными усилиями;

-       Встроенный механизм РИБ (распределенные информационные базы) позволит в дальнейшем обеспечить связь между удаленными базами (между филиалами) посредством сети Интернет либо через любой файловый ресурс (рисунок 1.2) [2];

Рисунок 1.2 - Механизм распределенных информационных баз в 1С 8.

-       Так как все решения на платформе 1С построены по принципу "конструктора", такая АС легче модифицируется;

-       1С в России уже стал признанным стандартом в сфере ведения учета, поэтому проще найти специалистов для работы с ним или переобучить имеющихся. Развитая сеть фирм 1С-франчайзи позволит эффективно поддерживать и развивать систему [3].

Глава 2. Адаптация автоматизированной системы "1С: Предприятие 8" для ООО "СтройРемонтПодряд"


2.1 Технология выполнения работ по автоматизации систем управления


Стратегия создания и развития информационной системы предполагает разработку проекта создания системы (комплекс работ по разработке и внедрению программы, заканчивающийся передачей системы в промышленную эксплуатацию), планирование возможных вариантов дальнейшего развития системы (в случае появления такой необходимости), подготовку предложения по сопровождению и поддержке работающей системы [4].

Для создания автоматизированной системы управления предприятием на базе программных продуктов "1С: Предприятие 8 Бухгалтерия", "1С: Предприятие Зарплата и Управление персоналом 8" в ООО "СтройРемонтПодряд" предполагается использовать технологию выполнения работ, включающую следующие этапы, изображенные на рисунке 2.1 [5].

Содержание и последовательность этапов соответствует ГОСТу 34.601-90 [6] и стандарту ISO/IEC 12207, которые устанавливают стадии и этапы создания автоматизированных систем.

Такое разделение позволяет четче формулировать задачи каждого этапа, концентрировать усилия специалистов Заказчика и Исполнителя на наиболее важных на данном этапе задачах, лучше учитывать объективные ограничения возможности выполнения работ сотрудниками Заказчика, ограничивать продолжительность выполнения работ по каждому из этапов конкретными сроками. Так же существенно, что каждая работа этапа закрывается отчетным документом, что позволяет повысить управляемость выполнения работ.

Рисунок 2.1 - Этапы внедрения автоматизированной системы управления

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

Обследование

Цель этапа: уточнение необходимых работ по адаптации и внедрению программного обеспечения и планирование их выполнения [7].

Этап включает в себя:

–       сбор данных о ведении бухгалтерского учета на предприятии, учете заработной платы и кадров Заказчика (формирование модели "как есть");

–       уточнение требований Заказчика к программному обеспечению (формирование модели "как должно быть");

–       анализ данных с целью определения отличий между требованиями Заказчика к ведению финансово-хозяйственной деятельности и алгоритмами отражения деятельности, заложенными в имеющемся программном обеспечении БЭСТ-4+.

На этом этапе используются вопросники, позволяющие быстро и эффективно проводить и оформлять результаты обследования, существенно снижающие его стоимость. Вопросники сгруппированы по подсистемам и содержат вопросы, требующие ответа "Да/Нет". В результате заполнения вопросников появляется необходимая информация о том, кто и какие функции выполнял ("как есть"), кто и какие функции, предполагается, будет выполнять ("как должно быть"). Все это позволяет определить:

-       структуру и состав подсистем;

-       состав и содержание автоматизированных рабочих мест.

Результатом данного этапа является:

-       Перечень необходимых работ

-       План-график выполнения работ

Адаптация и тестирование

Цель этапа: разработка и реализация изменений в ПО в соответствии с требованиями Заказчика, определенными в техническом задании.

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

После тестирования, специалистами Исполнителя и представителями Заказчика проводится проверка соответствия ПО требованиям Заказчика. При необходимости, обнаруженные несоответствия устраняются специалистами Исполнителя.

Результатом этапа являются:

-       функционирующее в соответствии с требованиями ПО;

-       сформулированный и утвержденный заказчиком перечень замечаний к выполненным работам.

-       протокол об устранении замечаний.

Установка и запуск программного обеспечения

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

Настраиваются параметры учета и учетные политики, обеспечивается оптимальная и устойчивая работа ПО.

Обучение персонала работе во внедряемой на предприятии автоматизированной системе

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

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

Внедрение

Цель этапа: ввод автоматизированной системы в эксплуатацию.

На данном этапе выполняется:

–       организация автоматизированных рабочих мест (АРМ);

–       при необходимости, перенос данных из автоматизированных систем, использовавшихся на предприятии Заказчика прежде;

–       ввод данных остатков;

–       прочие организационно-технические мероприятия, требующиеся для функционирования программного обеспечения;

–       проведение опытной эксплуатации;

–       сдача-приемка программного обеспечения;

–       ввод программного обеспечения в промышленную эксплуатацию.

Результатом этапа является функционирующее в соответствии с требованиями Заказчика программное обеспечение.

Сопровождение

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

–       запись новых регламентированных форм отчетности;

–       запись обновленных релизов программных файлов;

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

–       обучение новых сотрудников Заказчика;

–       консультации и помощь при работе с программой с выездом к Заказчику.

 

2.2 Обследование предприятия ООО "СтройРемонтПодряд"


Для уточнения необходимых работ по адаптации и выяснения данных о текущем бухгалтерском учете и учете зарплаты и кадров, заказчиком были заполнены анкеты-опросники (Приложение А).

 

.2.1 Обследование ведения учета заработной платы и кадров в ООО "СтройРемонтПодряд"

При обследовании ведения учета заработной платы и кадров в ООО "СтройРемонтПодряд" выявились специфические особенности.

-       При расчете заработной платы сотрудников организации, расположенной в г. Магнитогорске, применяется районный коэффициент [9]. Если сотрудники Набережночелнинских организаций направляются в командировку за пределы региона, то им может выплачиваться зарплата с учетом районного коэффициента региона командировки. Часовая тарифная ставка при этом не меняется, "командировочные" не оплачиваются - производится оплата по часовому тарифу [10];

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

Обследование ведения расчета заработной платы в ООО "СтройРемонтПодряд"

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

)        Следующие виды расчетов необходимо реализовать с помощью типовых документов (таблица 2.1):

Таблица 2.1 - Обязательные виды расчетов заработной платы для ООО "СтройРемонтПодряд"

Участок учета Заработной платы

Возможности реализации в программе "1С: Зарплата и управление персоналом" без адаптации

1.

Доплаты, надбавки и компенсации

1.1

Компенсация отпуска при увольнении

Да

1.2

Выплата выходного пособия при увольнении

Да

2.

Оплата за неотработанное время

2.1

Отпуска

2.1.1

Оплата ежегодного оплачиваемого отпуска.

Да

2.1.2

Оплата дополнительного отпуска

Да

2.1.3

Оплата учебного отпуска

Да

2.2

Оплата простоев и прогулов

2.2.1

Оплата простоя по вине работодателя (2/3 среднего заработка)

Да

2.2.2

Оплата простоя по причинам, не зависящим от работодателя (2/3 тарифной ставки, оклада)

Да

2.3

Другие выплаты за неотработанное время

2.3.1

Оплата за дни выполнения государственных или общественных обязанностей в рабочее время.

Через оплату по среднему заработку

2.3.2

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

Через оплату по среднему заработку

2.3.3

Оплата за время нахождения в командировке

Да

3.

Выплаты социального характера

3.1

Выплаты за счет средств Фонда социального страхования

3.1.1

Пособия гражданам, имеющим детей

3.1.1.1

Пособие по беременности и родам

Через начисление по больничному листу (Отпуск по беременности и родам)

3.1.1.2

Пособие по уходу за ребенком до достижения им возраста 1,5 лет

Да

3.1.1.3

По уходу за больным ребенком до 3-х лет (ребенком-инвалидом до 16-ти лет) при нахождении вместе с больным ребенком в стационаре

До 7 лет, амбулаторно; до 7 лет, амбулаторно, заболевание включено в Перечень; от 7 до 15 лет, амбулаторно; до 7 лет, в стационаре; до 7 лет, в стационаре, заболевание включено в Перечень; от 7 до 15 лет, в стационаре; до 15 лет при посвакционном осложнении, амбулаторно; до 15 лет при посвакционном осложнении, в стационаре; инвалидом до 15 лет, амбулаторно; инвалидом до 15 лет, в стационаре; до 15 лет, ВИЧ-инфицированным, в стационаре.

3.1.1.4

По уходу за ребенком с 3-х до 7-ми лет для состоящего в браке родителя


3.1.1.5

По уходу за ребенком с 3-х до 7-ми лет для не состоящего в браке родителя


3.1.1.6

По уходу за ребенком с 7-ми до 15-ти лет для состоящего в браке родителя


3.1.1.7

По уходу за ребенком с 7-ми до 15-ти лет (для не состоящего в браке родителя)


3.1.1.8

Оплата дополнительных выходных дней для ухода за детьми-инвалидами

Через оплату по среднему заработку

3.1.2

Пособия по временной нетрудоспособности

3.1.2.1

Пособия по временной нетрудоспособности по общему заболеванию

Да

3.1.2.2

Пособие по временной нетрудоспособности по травме в быту

Нет

3.1.3

Пособие по травме на производстве

3.1.3.1

Пособие по временной нетрудоспособности при травме на производстве

Да


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

3)      Следующие виды расчета (суммы начисления) должны рассчитываться автоматически (таблица 2.2). Данные виды расчетов можно реализовать путем создания новых записей в регистре расчета "Основные начисления работников организаций" на этапе введения ПО в эксплуатацию.

Таблица 2.2 - Перечень автоматически рассчитываемых видов расчета

Участок учета Заработной платы

Возможности реализации в программе "1С: Зарплата и управление персоналом" без адаптации

1.

Оплата за отработанное время


Системы оплаты при повременной форме оплаты труда

1.1

Повременно-премиальная по окладу согласно табеля (по часам)

Да

1.1

Повременно-премиальная по тарифу согласно табеля (по часам)

Да

2.

Доплаты, надбавки и компенсации

2.1

Доплата за работы в сверхурочное время (1,5 и 2-м размере)

Да (по документу)

2.2

Доплата за работа в ночные/вечерние часы

Да (плановое начисление)

2.3

Доплата за работу в выходные и праздничные дни

Да (по документу)

3

Стимулирующие доплаты

3.1

Доплата за совмещение профессии (должности) суммой (процентом)

Да (через создание начисления)

3.2

Доплата за замещение временно отсутствующего работника (суммой, процентом)

Да (через создание начисления)

4

Надбавки


Стимулирующие надбавки

4.1

Надбавка за профмастерство

Да (через создание начисления)

4.2

Надбавка за ненормированный рабочий день

Да (через создание начисления)

4.3

Надбавка за разъездной характер работы

Да (через создание начисления)

4.4

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

Да (через создание начисления)

5

За особые условия труда

5.1

Надбавки за работу в тяжелых и вредных условиях

Да (через создание начисления)


За работу в условиях Крайнего Севера и приравненных к ним местностям

5.2

Районные коэффициенты (утвержденные местными органами, Правительством РФ)

Да

5.3

Компенсации

6

Премии и выплаты стимулирующего характера из коллективного фонда

6.1

Квартальная премия

Нет

6.2

Премия по итогам года

Нет

6.3

Ежегодное вознаграждение за выслугу лет

Нет


)        Для выплаты премий из коллективного фонда требуется доработка программы "1С: Зарплата и управление персоналом".

5)      Нижеперечисленные виды расчета автоматизировать не требуется, в связи с их редким использованием, но должна быть возможность их занесения в базу вручную на основании сумм рассчитанных пользователем (таблица 2.3):

Таблица 2.3 - Перечень видов расчетов, не требующих автоматизации в ООО "СтройРемонтПодряд"

Участок учета Заработной платы

Возможности реализации в программе "1С: Зарплата и управление персоналом" без адаптации

1

Оплата за отработанное время


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

Да

2

Премии и выплаты стимулирующего характера

2.1

Премия разовая

Да

2.2

Премия за выполнение ОВЗ

Да

Вознаграждение физических лиц по договорам гражданско-правового характера


Договор подряда (возмездного оказания работ, услуг)

Да

4

Оплата за неотработанное время


Пособие по уходу за ребенком до достижения им возраста 3-х лет

Да

5

Выплаты за счет средств Фонда социального страхования

5.1

Единовременное пособие женщинам, вставшим на учет в медицинских учреждениях в ранние сроки беременности

Да

5.2

Пособие при рождении (усыновлении) ребенка

Да

6

Прочие выплаты.

6.1

Социальное пособие на погребение

Да

6.2

Компенсация на санаторно-курортное лечение

Да

7

Начисление прочих доходов

7.1

Материальная помощь

Да

7.2

Учет стоимости товаров (продуктов), выдаваемых в порядке натуральной оплаты

Да


Анализ применяемых видов расчета

Используемые в организации виды начислений условно можно разделить на две группы:

-       начисления общего характера (таблица 2.4);

-       начисления специфичные для организации заказчика (таблица 2.5).

Таблица 2.4 - Начисления общего характера, используемые в ООО "СтройРемонтПодряд"

Наименование

Способ расчета

1

Оплата по контракту

Фиксированная сумма, определяется бухгалтером

2

Оплата ОКВ контракт

Фиксированная сумма, определяется бухгалтером

3

Оплата простоя

В соответствии с действующим законодательством

4

Повременная оплата (оклад)

Оклад из расчета 40-час раб недели

5

Сдельно - премиальная оплата

Фиксированная сумма, определяется бухгалтером

6

Надбавка к окладу

Фиксированная сумма, определяется бухгалтером

7

Районный коэффициент на ФЗП

15% от ФЗП

8

Районный коэффициент Хакассия

Процент от ФЗП в соответствии с положением об оплате труда

9

Больничный лист за счет работодателя

По среднему в соответствии с законодательством

10

Больничный лист при несчастном случае на производстве

По среднему в соответствии с законодательством

11

Больничный лист

По среднему в соответствии с законодательством

12

Больничный лист по уходу за ребенком

По среднему в соответствии с законодательством

13

Больничный лист по беременности и родам

По среднему в соответствии с законодательством

14

Персональная надбавка

% к окладу

15

Сверхурочные

В соответствии с ТК РФ

16

Сверхурочные свыше 2 часов

В соответствии с ТК РФ

17

Сверхнормативные расходы по командировке

Фиксированная сумма, определяется бухгалтером

18

Премия из ФЗП ОВЗ

Фиксированная сумма, определяется бухгалтером

19

Материальная помощь пенсионерам на похороны

Фиксированная сумма, определяется бухгалтером в соответствии с коллективным договором

20

Материальная помощь работникам

Фиксированная сумма, определяется бухгалтером

21

Единовременная премия к юбилею

Фиксированная сумма, определяется бухгалтером

22

Единовременная премия участникам ВОВ из ФЗ

Фиксированная сумма, определяется бухгалтером

23

Премия из ФЗП (за работу в праздничные и выходные дни)

Фиксированная сумма, определяется бухгалтером

24

Вознаграждение из ФСС

Фиксированная сумма, определяется бухгалтером

25

Единовременная премия из ФП

Фиксированная сумма, определяется бухгалтером (за счет прибыли)

26

Единовременная премия из ФП (с ЕСН)

Фиксированная сумма, определяется бухгалтером

27

Доплата за выходные и праздничные дни

В соответствии с ТК РФ

28

Доплата за выходные и праздничны дни (оклад)

В соответствии с ТК РФ

29

Ночные часы (окладники)

В соответствии с ТК РФ

30

Совмещение (окладники)

% к окладу

31

Заместительство

Разница в окладе

32

Подростковые

Доплата до полного рабочего дня за счет прибыли

33

Доплата за вредность

10% от тарифа

34

Доплата за вредность (окладники)

10% от оклада

35

Пособие за счет ФСС

Фиксированная сумма, определяется бухгалтером

36

Доп. выходной за счет ФСС

По среднему в соответствии с законодательством (уход за детьми инвалидами)

37

Пособие по уходу за ребенком до 1,5 лет

В соответствии с законодательством

38

Трудовое соглашение

Фиксированная сумма, определяется бухгалтером

39

Компенсация отпуска из ФП

В соответствии с законодательством (замена отпуска)

40

Сельскохозяйственные работы (75%)

75 % от среднего заработка, рассчитываемого в соответствии с законодательством

41

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

Фиксированная сумма, определяется бухгалтером

42

Отпуск по не полностью отработанным месяцам

В соответствии с законодательством (отпуск)

43

Отпуск компенсация

В соответствии с законодательством компенсируются дни свыше 28 календарных дней

44

Отпускные ИТР

В соответствии с законодательством (проводка другая)

45

Ученический отпуск

По среднему в соответствии с законодательством

46

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

В соответствии с законодательством





(Продолжение таблицы 2.4)

(Продолжение таблицы 2.4)

Наименование

Способ расчета

47

Погашение долга по з/п

Фиксированная сумма, определяется бухгалтером

48

Дополнительные отпуска (из прибыли)

В соответствии с законодательством

49

Оплата по среднему

По среднему в соответствии с законодательством

50

Выходное пособие

По среднему в соответствии с законодательством

51

Компенсация материалами, товарами

Фиксированная сумма, определяется бухгалтером

52

Компенсация на служебные цели

Фиксированная сумма, определяется бухгалтером

53

Путевка

Фиксированная сумма, определяется бухгалтером

54

Компенсация за путевку

Фиксированная сумма, определяется бухгалтером

55

Прочие начисления

Фиксированная сумма, определяется бухгалтером


Для реализации оплаты по начислениям общего характера можно воспользоваться стандартными документами программы "1С: Зарплата и управление персоналом".

Начисления, специфичные для организации ООО "СтройРемонтПодряд"

На предприятии есть сотрудники, оплата труда которым производится по часовому тарифу за работу на транспортных механизмах. Также за работу на механизмах начисляются различные виды доплат (таблица 2.5), величина которых напрямую зависит базового начисления (далее БН).

Базовое начисление для рабочих определяется по следующей формуле:

Базовое начисление = Часовая тарифная ставка ∙ Отработанное по табелю время

Таблица 2.5 - Зависимые виды начислений

Наименование

Способ расчета

1

Повременная оплата

БН

2

Надбавка за работу у заказчика

БН * на % соответствующий данному механизму

3

Надбавка за работу на линии

БН * на 25 %

4

Премия по тарифу

БН * на 40%

5

Доплата

БН * на определенный %

6

Колесные

БН * на определенный % (от 15% до 20 %)

7

Надбавка за профмастерство

БН * на определенный % (от 50% до 75 %)

8

Доплата за ненормир. рабочий день

БН * на 40 %

9

Вечернее время

БН * на 20 %

10

Ночные часы (по тарифу)

БН * на 40 %

11

Совместительство

БН

12

Бригадирские

Час тариф ставка * на отработанные часы по табелю * на %

13

Надбавка за классность

БН * на % соответствующий данному механизму


Для реализации оплаты по видам расчета, описанных в таблице 2.5, требуется доработать конфигурацию "1С: Зарплата и управление персоналом", поэтому вопрос об особенностях применения этих расчетов требует более детального рассмотрения.

Особенности оплаты труда сотрудников организации, работающих на транспортных механизмах

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

В таблице 2.6 демонстрируется конкретный пример расчета заработной платы сотрудника, работающего на транспортных механизмах, при этом:

а)      Предполагается, что сотрудник принят на работу с системой оплаты труда "Оплата по производственным нарядам". На дату расчета заработной платы часовой тариф сотрудника составляет 20,67 руб. Стоимость часа работы на механизме М-1 составляет 31,26 часа, на механизме М-2 37,86 часа. В течение месяца сотрудник работал на механизмах М-1, М-2 и выполнял ремонт. Кроме этого выполнялась работа в выходной день, сверхурочно, в вечернее время;

б)      Определено, что сотрудникам, работающим на М-1, производится доплата "Надбавка за работу у заказчика" в размере 25% от оплаты за фактически отработанные часы по часовому тарифу, соответствующему механизму М-1;

в)      Определено, что сотрудникам, работающим на М-2, производятся доплаты "Надбавка за работу у заказчика" в размере 30% и "Доплата за проф. мастерство" в размере 50% от оплаты за фактически отработанные часы по часовому тарифу, соответствующему механизму М-2;

г)       Доплата за работу в выходные и праздничные дни производится в размере 100% от оплаты за фактически отработанные часы в выходной (праздничный) день по часовому тарифу, соответствующему механизму, на котором выполнялась работа в выходной (праздничный) день;

д)      Доплата за работу в вечернее время производится в размере 20% от оплаты за фактически отработанные часы в вечернее время по часовому тарифу, соответствующему механизму, на котором выполнялась работа в вечернее время;

е)       За первые два часа, отработанные сверхурочно, доплата производится в размере 50% от оплаты за фактически сверхурочно отработанные часы в пределах двух часов по часовому тарифу, соответствующему механизму, на котором выполнялась сверхурочная работа;

ж)      За часы, первые два часа, отработанные сверхурочно свыше первых двух часов, доплата производится в размере 100% от оплаты за фактически сверхурочно отработанные часы свыше двух часов по часовому тарифу, соответствующему механизму, на котором выполнялась сверхурочная работа;

з)       Всего сотрудником было отработано 222 часа, в том числе на механизме М-1: 24 часа, на механизме М-2: 182 часа, и на ремонте 16 часов;

и)      В состав 24 часов, отработанных на М-1 входят 16 часов, отработанных в выходные дни.

к)      В состав 182 часов, отработанных на М-2 входят 37 часов, отработанных в выходные дни, 22 часа, отработанные сверхурочно, 91 час, отработанный в вечернее время.

Таблица 2.6 - Пример расчета отработки на механизмах

Вид работ

Часовая тарифная ставка (руб)

Отработанное время (ч)

Процент оплаты от час. тар. ст (%)

Сумма

1

Работа на М-1

31,26

24

100

750,24

2

Работа на М-2

37,86

182

100

6890,52

3

Ремонт М-2

20,67

16

100

330,72

4

Надбавка за работу у заказчика М-1

31,26

24

25

187,56

5

Надбавка за работу у заказчика М-2

37,86

182

30

2067,156

6

Доплата за выходные М-1

31,26

16

100

500,16

7

Доплата за выходные М-2

37,86

37

100

1400,82

8

Доплата за сверх/уроч М-2

37,86

22

50

416,46

10

Доплата за вечернее время М-2

37,86

91

20

689,052

11

Доплата за проф. мастерство М-2

37,86

182

50

3445,26

ИТОГО:




16677,95

Обследование ведения кадрового учета в ООО "СтройРемонтПодряд"

На основании обработанных анкет по кадровому учету (таблица А.1) были сделаны следующие выводы:

-       в настоящее время кадровый учет в организации не автоматизирован, весь документооборот ведется вручную;

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

Таблица 2.7 - Результат анализа анкет в разрезе кадрового учета на предприятии

Автоматизируемые участки кадрового учета

Возможности реализации в программе "1С: Зарплата и управление персоналом" без адаптации

1. Договоры

1.1

Трудовые договоры (контракты)

1.1.1

Трудовой договор (контракт)

Да, по форме разработанной фирмой "1С"

1.1.2

Да, по форме разработанной фирмой "1С"

1.1.3

Оформление трудового договора (контракта) с испытательным сроком

Да

1.2

Договоры гражданско-правового характера

1.2.1

Договор подряда

Да, по форме разработанной фирмой "1С"

1.2.4

Акт о приемке работ, выполненных по трудовому договору (контракту), заключенному на время выполнения определенной работы

Нет

2. Штатно-должностной учет

2.1

Штатное расписание по форме № Т-3

Да

3. Движение кадров

3.1

Приказы (распоряжения) и прилагаемые документы

3.1.1

Приказ (распоряжение) о приеме на работу по форме № Т-1

Да

3.1.2

Приказ (распоряжение) о приеме работников на работу о форме № Т-1а

Да

3.1.3

Приказ (распоряжение) о переводе на другую работу по форме № Т-5

Да

3.1.4

Приказ (распоряжение) о переводе работников на другую работу по форме № Т-5а

Да

3.1.5

Приказ (распоряжение) о предоставлении отпуска по форме № Т-6

Да

3.1.6

Приказ (распоряжение) о предоставлении отпуска работникам по форме № Т-6а

Да

3.1.7

Записка-расчет о предоставлении отпуска работнику по форме № Т-60.

Да

3.1.8

График отпусков по форме № Т-7

Да

3.1.9

Приказ (распоряжение) о прекращении действия трудового договора (контракта) с работником по форме №Т-8

Да

3.1.10

Приказ (распоряжение) о прекращении действия трудового договора (контракта) с работниками по форме №Т-8а

Да

3.1.11

Записка-расчет о прекращении действия трудового договора (контракта) с работником по форме №Т-61

Да




3.2

Документы поличному составу

3.2.1

Приказ (распоряжение) о поощрении работника по форме № Т-11

Да

3.2.2

Приказ (распоряжение) о поощрении работников по форме № Т-11а

Да

3.2.3

Приказ (распоряжение) о направлении работника в командировку по форме № Т-9

Да

3.2.4

Приказ (распоряжение) о направлении работников в командировку по форме № Т-9а

Да

3.2.5

Командировочное удостоверение по форме № Т-10

Да

3.2.6

Служебное задание для направления в командировку и отчет о его выполнении по форме № Т-10 а

Да

3.3

Журналы регистрации

3.3.1

Журнал регистрации приема на работу

Да. В электронном виде

3.3.2

Журнал регистрации увольнения с работы

Да. В электронном виде

3.3.3

Журнал регистрации переводов сотрудников

Да. В электронном виде

3.3.4

Журнал регистрации приказов по очередным отпускам

Да. В электронном виде

4. Персональный учет кадров (личное дело)

4.1

Учет персональных данных

4.1.2

Личная карточка (форма № Т-2)

Да

4.1.3

Опись документов, имеющихся в личном деле

Нет

4.1.4

Журнал регистрации личных дел служащих.

Нет

4.2

Учет трудовых книжек

4.2.1

Приходно-расходная книга по учету бланков трудовых книжек и вкладышей к ним

Нет

4.2.2

Книга учета движения трудовых книжек и вкладышей к ним

Нет

4.3

Учет командировок

4.3.1

Журнал учета лиц, направленных в командировки внутри страны

Нет

4.3.2

Журнал учета лиц, направленных в зарубежные командировки

Нет

4.3.3

Журнал учета выдачи командировочных удостоверений

Нет

4.4

Учет рабочего времени.

4.4.1

Табель учета использования рабочего времени и расчета заработной платы (форма № Т-12)

Нет

4.4.2

Табель учета использования рабочего времени (форма №Т-13)

Да

4.4.3

Журнал учета больничных листов

Да. В электронном виде

4.5

Справки о работе и заработной плате

4.5.1

Справка о заработной плате

Нет

4.5.2

Справка о стаже

Нет

4.5.3

Справка о месте работы

Нет

4.5.4

Журнал (книга) учета выдачи справок о заработной плате, стаже, месте работы

Нет

5. Статистический учет

5.1

Среднесписочная численность работников предприятия

Да

5.2

Отчет о численности работников по полу и возрасту и рабочих по образованию

Нет

5.3

Сведения о распределении численности работников по размерам заработной платы

Нет


Причем, все автоматизация функций, отмеченных как не реализованные в программе "Зарплата и Управление Персоналом", Заказчику не требуется в связи с их редким использованием.

 

.2.2 Обследование ведения бухгалтерского учета в ООО "СтройРемонтПодряд"

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

Таблица 2.8 - Результаты анализа анкет в ООО "СтройРемонтПодряд" в части бухгалтерского учета

Автоматизируемые участки бухгалтерского учета

Автоматизировано в программе "1С: Бухгалтерия 8"

1. Долгосрочные инвестиции

1.1

приобретение земельных участков

Да

1.2

приобретение объектов основных средств (зданий, сооружений, оборудования, транспортных средств)

Да

2. Основные средства (в соответствии с ПБУ 6/01)

2.1

поступление

Да

2.2

текущий и капитальный ремонт

Да

2.3

износ и начисление амортизации

Да

2.4

списание, реализация и прочее выбытие ОС

Да

2.5

аренда и лизинг ОС

Нет

3. Материально-производственные запасы

3.1

поступление

Да

3.2

отпуск

Да

3.3

списание и прочее выбытие

Да

3.4

специальная одежда и специальная оснастка

Да

4. Товары

4.1

поступление

Да

4.2

отгрузка и реализация

Да

4.3

списание стоимости товаров на себестоимость

Да

4.4

транспортные расходы

Да

4.5

операции с тарой

Да

4.6

инвентаризация

Да

5. Затраты на производство работ, услуг

5.1

учет затрат по характеру производства

Да

5.2

учет затрат по элементам затрат

Да

5.3

учет затрат по статьям калькуляции

Да

5.4

учет по местам возникновения затрат

Да

5.5

сводный учет затрат

Да

6. Непроизводственные расходы и потери

6.1

потери от порчи и недостачи ТМЦ

Да

7. Затраты вспомогательных производств и их распределение

7.1

затраты вспомогательного производства

Да

7.2

распределение затрат пропорционально произведенным услугам

Да

8. Затраты на обслуживание производства и их распределение

8.1

общепроизводственные расходы

Да

8.2

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

Да

8.3

распределение общепроизводственных расходов и общехозяйственных расходов пропорционально начисленной зарплате производственных рабочих

Да

Автоматизируемые участки бухгалтерского учета

Автоматизировано в программе "1С: Бухгалтерия 8"

9. Готовая продукция и выполненные работы и услуги

9.1

по фактической себестоимости

Да

9.2

без использования 40 счета

Да

9.3

без использования 46 счета

Да

10. Денежные средства

10.1

кассовые операции

Да

10.2

безналичные расчеты

Да

10.3

денежные документы

Да

10.4

переводы в пути

Да

11. Операции с иностранной валютой

11.1

экспортные операции

Да

11.2

покупка иностранной валюты

Да

11.3

продажа иностранной валюты

Да

11.4

учет курсовой разницы

Да

11.5

учет суммовых разниц

Да

12. Текущие обязательства и расчеты

12.1

расчеты с бюджетом

Да

12.2

расчеты по внебюджетным платежам

Нет

12.3

расчеты с покупателями и заказчиками

Да

12.4

расчеты с поставщиками и подрядчиками

Да

12.5

расчеты с прочими дебиторами и кредиторами

Да

12.6

расчеты с персоналом

Да

12.7

расчеты с учредителями и акционерами

Нет

12.8

расчеты по штрафным санкциям

Нет

13. Реализация продукции, работ и услуг; финансовый результат и использование прибыли

13.1

реализация продукции, работ, услуг

Да

13.2

доходы будущих периодов

Да

13.3

финансовый результат

Да

13.4

распределение прибыли

Нет

14. Расходы на продажу

14.1

реклама

Да

15. Собственный капитал

15.1

уставной капитал

Нет

15.2

добавочный капитал

Нет

15.3

резервный капитал

Нет

15.4

резервы предстоящих расходов и платежей

Нет

15.5

резервы сомнительных долгов

Нет

16. Заемный капитал и целевое финансирование

16.1

Нет

16.2

займы

Нет

16. Операции на забалансовых счетах

16.1

арендованные ОС

Нет

16.2

бланки строгой отчетности

Нет

16.3

списанная в убыток задолженность неплатежных дебиторов

Нет

16.4

износ ОС

Да

16.5

ОС сданные в аренду

Нет

17. Отложенные налоговые активы и обязательства

17.1

возникновение и списание налоговых обязательств и активов

Да

18. Расчеты по налогу на прибыль (ПБУ 18/02)

Да


Так как необходимость в доработке типовой конфигурации не была выявлена в ходе анализа, для введения программы "1С: Бухгалтерия 8" в эксплуатацию потребуется перенос данных из используемой программы "БЭСТ-4+" в 1С.

Руководством организации было принято решение произвести перенос следующих объектов:

а)      Перенести в новую АС сведения о товарно-материальных ценностях (ТМЦ). Перечень этих сведений в программе "БЭСТ-4+" разрозненный: данные о материалах, товарах и услугах хранятся в разных файлах формата. dbf. В программе "1С: Бухгалтерия 8" они будут содержаться в едином справочнике "Номенклатура".

)        На момент обследования в организации ООО "СтройРемонт-Подряд" состояло на учете 390 видов товаров, 649 видов материалов, 144 вида услуг.

2)      При переносе различные товарно-материальные ценности, должны попасть с соответствующие их типу номенклатурные группы (материалы, товары и услуги);

)        Сведения о ТМЦ содержат в себе данные о единицах измерения номенклатуры. Должен быть механизм, позволяющий пользователю произвести настройку соответствия единиц измерения из программы "БЭСТ-4+" единицам измерения принятым в программе "1С".

б)      Перенести количественно-суммовые остатки товарно-материальных ценностей. При этом должен произвестись анализ соответствия счетов принятых для учета номенклатуры в "БЭСТ-4+" и в "1С". При переносе остатков должен быть задействован справочник складов, данные о которых также должны быть выгружены в программу "1С: Бухгалтерия 8".

в)      Перенести сведения о поставщиках и покупателях организации (контрагентах). На момент обследования в базе "БЭСТ-4+" было зарегистрировано 1098 контрагентов. При переносе также должна быть перенесена и связанная с контрагентами информация:

1)      Адреса и телефоны контрагентов;

2)      Банковские счета и данные о банках.

г)       Перенести суммы взаиморасчетов с покупателями и поставщиками (остатки по счетам 60 и 62).

2.3 Постановка задания на доработку программ "1С: Предприятие 8" для ООО "СтройРемонтПодряд"


2.3.1 Задание на доработку программы "1С: Зарплата и управление персоналом"

В рамках доработки программы "1С: Зарплата и управление персоналом" требуется реализовать механизмы: учета заработной платы для сотрудников, работающих на транспортных средствах; учета трех видов премий из коллективного фонда (месячной, квартальной и годовой).

 


 Документ "Выработка на механизмах"

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

При расчете оплаты труда по виду расчета "За работу на транспортных механизмах" предусмотрена последовательность действий, отображенная на рисунке 2.2 [11].

Предварительная работа. Работниками отдела кадров заполняется справочник транспортных механизмов. Указываются виды работ на механизмах и их стоимость. Эти операции повторяются по мере появления новых наименований механизмов, видов работ или изменения тарифов.

Рисунок 2.2 - Информационные потоки при расчете выплат за работу на транспортных механизмах

Ежемесячно отдел кадров формирует документ "Выработка на механизмах", где указывается кем и в каком объеме были выполнены работы, рассчитывается сдельная оплата. Количество таких документов в месяц не ограничено. Документ должен делать движения в специальном регистре, данные из которого будут попадать при начислении заработной платы.

Для хранения информации об оплате работы на различных механизмах предлагается следующая структура данных:

.        Справочник "Механизмы" для хранения информации о механизмах, на которых выполняются работы.

2.      Регистр сведений "ОплатаЗаРаботуНаМеханизмах" для хранения информации о расценках и доплатах за работу на конкретных механизмах. Заполнение регистра производится пользователем вручную.

.        Регистр накопления "Выработка на механизмах" для хранения информации о заработной плате сотрудников за работу на конкретных механизмах. Запись информации в регистр производится программно при проведении документа "Выработка сотрудников на механизмах".

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

-       Организация, начисляющая зарплату.

-       Дата регистрации документа.

-       Ответственный.

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

Документ предусматривает стандартные механизмы работы с документом, характерные для программ "1С" (заполнение табличной части по различным критериям, очистка табличной части документа и т.п.) [12].

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

Количество записей в табличной части документа равно количеству сотрудников, умноженному на количество механизмов, на которых они работали и на количество рассчитываемых начислений. Образец табличной части документа приведен в Таблице 9.

Таблица 2.9 - Табличная часть документа "Выработка сотрудников"

Сотрудник

Механизм

Вид расчета

Размер

Отработано дней

Отработано часов

Результат

Иванов И.

Трактор ДТ-75

Работа на механизме

31,26

3

24

750,24

Иванов И.

Трактор "Беларус"

Работа на механизме

37,86

21

182

6890,52

Иванов И.

Трактор "Беларус"

Ремонт

20,67

1

16

330,72

Иванов И.

Трактор ДТ-75

Надбавка за работу у заказчика

25


24

187,56

Сотрудник

Механизм

Вид расчета

Размер

Отработано дней

Отработано часов

Результат

Иванов И.

Трактор "Беларус"

Надбавка за работу у заказчика

30


182

2067,156

Иванов И.

Трактор ДТ-75

Доплата за работу в выходные

100


16

500,16

Иванов И.

Трактор "Беларус"

Доплата за работу в вечернее время

20


91

689,052

Иванов И.

Трактор "Беларус"

Доплата за проф. мастерство

50


182

3445,26


Печатной формы документа не требуется.

 

Документ "Доплата из "коллективного фонда" по итогам месяца"

В организации ООО "СтройРемонтПодряд" практикуется выплата премий сотрудникам из "коллективного фонда". Сумма для распределения спускается сверху. Само распределение производится пропорционально выработке сотрудников и коэффициенту их трудового участия (КТУ), который поступает из отдела кадров.

Расчет месячной премии производится по следующему алгоритму.

Список сотрудников представленных к премии предоставляется отделом кадров, так как и их КТУ. Общая сумма ("спускается сверху"). Для примера 20 000 рублей.

Первоначально собираются основные начисления по списку сотрудников. Производится расчет суммарного заработка по всем работникам с учетом КТУ (таблица 2.10).

Далее рассчитывается "коэффициент перерасчета":

Коэф. = Сумма к распределению / Сумма заработка с учетом КТУ.

Таблица 2.10 - Расчет месячной премии. Расчет заработка сотрудников за месяц с учетом КТУ

№ п/п

Сотрудник

Заработок (за месяц) по видам расчета, входящих в базу премии

КТУ

С учетом КТУ (по тарифу * КТУ)

1

Иванов

5 000

1,2

6 000

2

Петров

3 000

0,5

1 500

3

Сидоров

1 000

1,0

1 000

4

Михайлов

8 000

1,0

8 000

ИТОГО:

17 000


16 500


Коэффициент перерасчета = 20000/16500=1,212

Рассчитываются индивидуальные доплаты по "коллективному фонду" как "С учетом КТУ" * "коэффициент перерасчета", с учетом этого индивидуальные доплаты будут следующие (таблица 2.11):

Таблица 2.11 - Расчет месячной премии. Расчет индивидуальных доплат

№ п/п

Сотрудник

С учетом КТУ

"С учетом КТУ" * "Коэффициент перерасчета"

1

Иванов

6 000

7 272

2

Петров

1 500

1 818

3

Сидоров

1 000

1 212

4

Михайлов

8 000

9 696

ИТОГО:

16 500

19 998


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

 

Документ "Квартальная премия"

Расчет квартальной премии производится по аналогичному принципу. Собираются суммы по основным начислениям сотрудникам за квартал (таблица 2.12). Производится расчет базы начисления с учетом КТУ.

Для примера возьмем сумму для распределения в 30000 рублей. Согласно таблице 2.12 сумма основных начислений сотрудникам с учетом КТУ равна 44700 рублей.

Таблица 2.12 - Расчет квартальной премии. Расчет начислений сотрудникам за квартал с учетом КТУ

№ п/п

Сотрудник

Заработок (за базовый период) по видам расчета, входящих в базу премии

КТУ

С учетом КТУ (по тарифу * КТУ)

1

Иванов

15 000

1,2

18 000

2

Петров

9 000

0,5

4 500

3

Сидоров

3 000

1,0

3 000

4

Михайлов

24 000

0,8

192000

ИТОГО:

51 000


44700


Рассчитывается "коэффициент перерасчета" = 30 000/44 700 = 0,671;

Рассчитываются индивидуальные доплаты по "Квартальной премии" как "С учетом КТУ" * "коэффициент перерасчета", с учетом этого индивидуальные доплаты будут следующие (таблица 2.13):

Таблица 2.13 - Расчет квартальной премии. Расчет индивидуальных доплат

№ п/п

Сотрудник

С учетом КТУ

"С учетом КТУ" * "Коэффициент перерасчета"

1

Иванов

18000

12078

2

Петров

4 500

3019,5

3

Сидоров

3 000

2013

4

Михайлов

19200

12883,2

ИТОГО:

49 500

29993,7


Расчет квартальной премии должен выполняться с помощью документа. Необходимо предусмотреть формирование документа для отдельных подразделений.

Печатная форма документа должна иметь вид представленный в приложении Б.

 

Документ "Вознаграждение по итогам года из резерва"

Выплата годовой премии производится только для сотрудников, проработавших в организации не меньше года. Суммы по основным начислениям сотрудникам собираются за год. В качестве коэффициента трудового участия выступает число лет, отработанных сотрудником на предприятии. Производится расчет базы начисления (таблица 2.14).

Общая сумма вознаграждения ("спускается сверху") составляет 200 000 рублей. В примере сотрудник Михайлов проработал в организации только 8 месяцев. Его заработок с учетом коэффициента не будет входить в базу начисления.

Таблица 2.14 - Расчет годовой премии. Расчет начислений сотрудникам за год с учетом КТУ

№ п/п

Сотрудник

Заработок (за год) по видам расчета, входящих в базу премии

Коэф. стажа

С учетом коэф.

1

Иванов

60 000

1,2

72000

2

Петров

50 000

1

50 000

3

Сидоров

85 000

1,1

93500

4

Михайлов

45 000

0,75

0

ИТОГО:


215500


Рассчитывается "коэффициент перерасчета" = 200 000/215500 = 0,928.

Рассчитываются индивидуальные вознаграждения по итогам работы за год как "С учетом коэф." * "коэффициент перерасчета", с учетом этого индивидуальные вознаграждения будут следующими:

Таблица 2.15 - Расчет годовой премии. Расчет индивидуальных доплат

№ п/п

Сотрудник

С учетом коэф.

"С учетом коэф" * "Коэффициент перерасчета"

1

Иванов

72000

66816

2

Петров

50 000

46400

3

Сидоров

93500

86768

4

Михайлов

0

0

ИТОГО:

76 500

199 984


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

Печатная форма документа должна иметь вид представленный в приложении В.

 


2.3.2 Постановка задания на перенос данных в программу "1С: Бухгалтерия 8" из "БЭСТ-4+"

Из эксплуатируемой программы "БЭСТ-4+" в программу "1С: Бухгалтерия 8" требуется перенести:

-       справочник поставщиков и покупателей, с взаимосвязанными справочниками контактной информации, банков и банковскими счетами;

-       справочник товарно-материальных ценностей;

-       справочник складов;

-       количественно-суммовые остатки по номенклатуре;

-       суммовые остатки по взаиморасчетам с поставщиками и покупателями.

В отличие от архитектуры базы данных 1С, каждой таблице базы "БЭСТ" соответствует один файл формата. dbf. Ниже приведены таблицы соответствия полей таблиц источника (базы "БЭСТ") и приемника (объектов метаданных базы 1С) [13].

 

Перенос данных о поставщиках и покупателях

При переносе сведений о поставщиках и покупателях требуется:

-       произвести перенос основных реквизитов таблицы "Partner" из "БЭСТ" в справочник "Контрагенты" в "1С";

-       перенести данные о банковских счетах контрагентов. Для этого произвести перенос данных из таблиц "Bank" и "Prt_Acnt" в справочники "Банки" и "Банковские счета";

-       перенести информацию об адресах партнеров из таблицы "Prt_Addr" в регистр сведений "Контактная информация".

Схема взаимодействия справочников в "БЭСТ-4+" и "1С: Бухгалтерия 8" представлена на рисунке 2.3 Таблицы 2.16, 2.17, 2.18 и 2.19 содержат более полный перечень полей для переноса.

Рисунок 2.3 - Структура таблиц и справочников по контрагентам и банкам в программе "БЭСТ-4+" и в программе "1С: Бухгалтерия 8"

Таблица 2.16 - Реквизиты справочника "Контрагенты"

Источник (поля таблицы partner. dbf)

Приемник (реквизиты справочника "Контрагенты")

Примечание


Код

Создавать автоматически

SHORTNAME

Наименование


STATUS

ЮрФизЛицо

Если 0 - юр. лицо, если 1 - физ. лицо

CODE_INN

ИНН

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

CODE_OKPO

КодПоОКПО


CODE_KPP

КПП


ORGNAME

НаименованиеПолное




Таблица 2.17 - Реквизиты справочника "Банковские счета"

Источник (поля таблицы prt_acnt. dbf)

Приемник (реквизиты справочника "Банковские счета")

Примечание

PART_ID

Владелец

Внутренний код БЭСТа для контрагента, отыскать по нему контрагента в таблице "partner"

ACCNT

НомерСчета


BANK_ID

Банк

Внутренний код БЭСТа для банка, отыскать по нему банк в таблице "bank"


ТекстКорреспондента

Контрагент. ПолноеНаименование

ВидСчета

1 - расчетный, 2-5 иной.


ВалютаДенежныхСредств

Рубли для всех счетов


ВсегдаУказыватьКПП

"Истина" для всех счетов


Таблица 2.18 - Реквизиты регистра сведений "КонтактнаяИнформация"

Источник (поля таблицы prt_addr. dbf)

Приемник (реквизиты регистра "Контактная информация")

Примечание


Тип

Для всех "Адрес"

ADR_TYPE

Вид

1 - "фактический", 2 - "Юридический" остальные типы адресов не переносить

ADDRESS

Значение

Переносить адрес как строку.


Таблица 2.19 - Реквизиты справочника "Банки"

Источник (поля таблицы bank. dbf)

Приемник (реквизиты справочника "Банки")

Примечание

BNK_CODE

Код

Банки загрузить из классификатора, при загрузке данных по контрагенту проводить состыковку имеющихся банков по BNK_CODE. Если в классификаторе нет, то добавить.

BNK_NAME

Наименование


ACNT_KORR

КоррСчет


ADDR

Адрес


 


Перенос суммовых остатков по взаиморасчетам с покупателями и поставщиками ООО "СтройРемонтПодряд"

Сведения об остатках по взаиморасчетам с контрагентами Заказчик предоставляет в виде файла Excel в формате xls. Образец файла предоставлен в приложении Г.

Учет взаиморасчетов с поставщиками происходит на счете 60, расчеты с покупателями на счете 62, прочие расчеты учитываются на счет 76. Заказчик предоставляет по одному файлу на каждый счет учета с перечислением дебетовых и кредитовых задолженностей контрагентов на момент переноса данных.

Занесение суммовых остатков по взаиморасчетам в программу "1С: Бухгалтерия 8" должно быть произведено путем создания ручной операции с проводками по каждому долгу [14]. Шаблон проводок представлен в таблице 2.20. Счета учета для переноса дебетового и кредитового сальдо должны выбираться пользователем перед выполнением ввода остатков.

Таблица 2.20 - Шаблон проводок по вводу остатков взаиморасчетов с поставщиками

Счет Дт

Субконто Дт

Счет Кт

Субконто Кт

Сумма

60.01

Контрагент А

000


51,92

000


60.02

Контрагент Б

124752,15


Соответствия между полями табличного документа формата xls и реквизитами операции по вводу остатков представлены в таблице 2.21.

Таблица 2.21 - Реквизиты операции для ввода остатков по взаиморасчетам

Источник (колонка отчета)

Приемник (реквизит операции)

Примечание


Организация

Предоставить пользователю возможность выбрать организацию из справочника "Организации"


Дата

31.03.16


СчетДт

Предоставить пользователю возможность выбрать один из счетов 60, 62, 76. Если сумма в отчете указана "дебетовая", то для счета 60 выбирается "60.02", для счета 62 - "62.1", если сумма "кредитовая" то счета 60 - "60.01", для счета 62 - "62.02". Для счета 76 остатки загружаются по дебету или кредиту в соответствии с указанной суммой.

Шифр, Наименование

СубконтоДт1

Состыковка с таблицей partner по полям CODE, SHORTNAME

Источник (колонка отчета)

Приемник (реквизит операции)

Примечание


СубконтоДт2

Договор создается автоматически, "вид договора" для счета 60 - с поставщиком, для счета 62 - с покупателем, для 76 счета вид договора указывается пользователем. "Вид взаиморасчетов" выбирается пользователем.


СчетКт

"000"

Дебетовая, кредитовая

Сумма

Выбирается одна из двух сумм (дебетовая или кредитовая) не нулевая

 

Перенос данных о товарно-материальных ценностях

При переносе сведений о товарно-материальных сведениях:

-       Произвести перенос основных реквизитов таблиц "MLabel" из "БЭСТ" в справочник "Номенклатура" в "1С". При этом:

o   сведения о товарах хранятся в таблице Sklad\Mlabel. dbf. При переносе эти позиции должны попасть в группу номенклатуры "Товары";

o   сведения об услугах хранятся в таблице Tovar\Mlabel. dbf. При переносе эти позиции должны попасть в группу номенклатуры "Услуги", у каждой из позиций должен быть проставлен реквизит "Услуга";

o   сведения о материалах хранятся в таблице Zapas\Mlabel. dbf. При переносе эти позиции должны попасть в группу номенклатуры "Материалы";

o   структуры всех этих таблиц идентичны;

-       Одно из полей таблиц "MLabel" содержит информацию о единицах измерения. В программе "1С: Бухгалтерия 8" для этого предназначен справочник. При переносе данных требуется предоставить пользователю возможность самому настроить соответствие единиц измерения "БЭСТ" и "1С".

Схема взаимодействия справочников в "БЭСТ-4+" и "1С: Бухгалтерия 8" представлена на рисунке 2.4 и в таблице 2.22.

Рисунок 2.4 - Структура таблиц и справочников по номенклатуре в программе "БЭСТ-4+" и в программе "1С: Бухгалтерия 8"

Таблица 2.22 - Реквизиты справочника "Номенклатура"

Источник (поля таблиц Sklad\Mlabel. dbf Tovar\Mlabel. dbf Zapas\Mlabel. dbf)

Приемник (реквизиты справочника "Номенклатура")

Примечание


Группа номенклатуры

Если из таблицы Sklad\Mlabel то "Товары", если из Tovar\mlabel то "Услуги", если из Zapas\mlabel то "Материалы"


Код

Создается автоматически

NAME

Наименование



НаименованиеПолное

Совпадает с "Наименованием"

ED

БазоваяЕдиницаИзмерения

Заполнить справочник "Классификатор единиц измерения", при загрузке предлагать пользователю состыковать с имеющимся в справочнике "Классификатор единиц измерения" элементом. Для услуг ед. измерения не заполнять.


СтавкаНДС

Для всех позиций 18%


Услуга

"Истина" если данные загружаются из таблицы Tovar\mlabel

 

Перенос количественно-суммовых остатков по товарно-материальным ценностям

В базу "1С: Бухгалтерия 8" требуется перенести остатки (суммы и количества) по номенклатурным позициям в разрезе складов и счетов учета [14]. В программе "БЭСТ" эти сведения содержатся в таблицах: Zapas/MKart. dbf и Sklad/MKart. dbf. Остатки по услугам не переносятся.

Информация о складах содержится в таблицах Zapas/MSclad. dbf и Sklad/MSclad. dbf. Для услуг склад хранения не предусмотрен.

Счета учета номенклатуры в программе "БЭСТ" отличаются от счетов учета в программе "1С: Бухгалтерия 8", поэтому необходимо предоставить возможность пользователю самому настроить соответствие счетов.

Занесение количественно-суммовых остатков по номенклатуре в программу "1С: Бухгалтерия 8" должно быть произведено путем создания ручной операции с проводками по каждой позиции [15]. Шаблон проводок представлен в таблице 2.23.

Таблица 2.23 - Шаблон проводок по вводу остатков по номенклатуре

Счет Дт

Субконто Дт

Кол-во

Счет Кт

Субконто Кт

Сумма

10.05

Материал А

10,5

000


51,92


Склад 1





41.01

Товар А

404,0

000


124752,15


Склад2






Соответствия между полями таблиц "БЭСТ" и реквизитами операции по вводу остатков представлены в таблице 2.24.

Таблица 2.24 - Реквизиты операции для ввода остатков по номенклатуре

Источник (поля таблиц Sklad\ mkart. dbf; Zapas\ mkart. dbf)

Приемник (реквизит ручной операции)

Примечание


Организация

Предоставить пользователю возможность выбрать организацию из справочника "Организации"


Дата

31.03.16

SCHET

СчетДТ

Из таблицы Sklad\ mkart выгружаем всё кроме SCHET = 20, СчетДт при выгрузке из этой таблицы 41.01 При выгрузке данных из таблицы Zapas\ mkart пользователю предоставляется возможность сопоставить счета БЭСТ и 1С, загрузка происходит на счета указанные в сопоставлении.

NNUM

СубконтоДт1

Состыковка с таблицей Sklad\Mlabel по NNUM

SCLAD

СубконтоДт2

Состыковка с таблицей msclad по полю "CODE"


СубконтоДт3

"Партия (ручной учет)" создать автоматически, контрагент и договор партии выбираются пользователем, до загрузки остатков (один на все остатки)

KOLTEK

КоличествоДт



СчетКт

"000"


Сумма

Mlabel. CENA*КоличествоДт



2.4 Решение поставленных задач


2.4.1 Адаптация программы "1С: Зарплата и управление персоналом"

Начисление заработной платы в программе происходит по следующим принципам (рисунок 2.5) [8]: на основе сведений кадрового учета и данных первичных документов (сведений об отработанном времени, отпусках, больничных и т.п.) производится расчет начислений и удержаний. На их основании производится расчет зарплаты к выдаче и расчет налогов и взносов.

Рисунок 2.5 - Схема движений данных при расчете зарплаты

Согласно поставленной в ходе обследования задаче для адаптации программы требуется внести изменения в документы учета зарплаты (для отображения сведений об отработке на механизмах) и в процедуру расчета начислений (начисление месячной, квартальной и годовой премий из коллективного фонда).

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

В ходе решения задачи были разработаны следующие объекты [16]:

Справочники:

-       "Механизмы";

-       "Виды оплаты работ на механизмах".

Регистр сведений:

-       "Оплата работ на механизмах" - для хранения информации о расценках и доплатах за работу на конкретных механизмах.

Документ:

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

Регистр накопления:

-       "Выработка на механизмах" - для хранения информации о заработной плате сотрудников за работу на конкретных механизмах.

Взаимосвязь между объектами показана на рисунке 2.6.

Справочник "Механизмы" предназначен для хранения данных о транспортных механизмах. Не имеет реквизитов или табличных частей. Поддерживает иерархию. Характеризуется только строковым кодом (9 символов) и полем наименования (40 символов).

Справочник имеет один предопределенный элемент "Простой" для фиксации факта работы сотрудника "вне механизма".

Рисунок 2.6 - Взаимосвязь между новыми объектами

Справочник "Виды оплаты работ на механизмах" предназначен для хранения видов оплат за работы на механизмах. Например, оплата за выезд, доплата за срочность и т.п. Справочник также не имеет реквизитов или табличных частей. Не поддерживает иерархию. Характеризуется только строковым кодом (9 символов) и полем наименования (40 символов).

Справочник имеет один предопределенный элемент "Часовой тариф".

Регистр сведений "Оплата работ на механизмах" предназначен для хранения размеров оплат за работы на механизмах. Ведется в разрезе двух измерений:

-       механизмы;

-       вид оплаты.

Реквизитом является числовое поле "Размер".

Заполнение этого регистра производится пользователем вручную. Для удобства занесение данных производится напрямую из справочника "Механизмы" (рисунок 2.7).

Рисунок 2.7 - Внешний вид элемента справочника "Механизмы"

Особенностью использования этого регистра является то, что размер оплаты по предопределенному виду работы "Часовой тариф" заносится в рублях, а размер остальных видов работ в процентном соотношении к часовому тарифу. Это продиктовано ценовой политикой предприятия.

Регистр накоплений "Выработка на механизмах" предназначен для хранения данных о фактической выработке в разрезе сотрудников, механизмов, видов оплаты (перечень полей показан на рисунке 2.6). Данные в этот регистр заносятся документом.

Документ "Ввод данных о выработке на механизмах". В шапке документа указывается организация, производящая начисление, период регистрации, указывается лицо, производящее начисление.

Аналогично документам начисления премий в документе присутствует механизм заполнения табличной части списком сотрудников согласно отбору. Далее расчетчик согласно первичным аналоговым документам заполняет фактические работы сотрудников, указывая величину выработки в часах. По нажатию на кнопку "Рассчитать" происходит автоматический расчет сумм к начислению по каждой работе (рисунок 2.8). Именно это данные и попадут в регистр накопления.

Рисунок 2.8 - Внешний вид документа "Ввод данных о выработке на механизмах"

Основная сложность в процедуре расчета - создать запрос результатом, которого бы была таблица следующего вида:

Таблица 2.25 - Результат запроса

Номер строки

Результат

Размер

номер строки табличной части

сумма к оплате по данной работе

Стоимость выбранного вида работ


Принцип работы запроса изображен на рисунке 2.9 [17].

Рисунок 2.9 - Блок-схема запроса

Далее приведен код запроса:

Запрос = Новый Запрос; Запрос. Текст = "ВЫБРАТЬ |Выработка. НомерСтроки, |ВЫБОР |КОГДА Выработка. ВидОплаты = &Основной |ТОГДА Выработка. ВыработкаЧас * ОсновнойТариф. Размер |ИНАЧЕ Выработка. ВыработкаЧас * ОсновнойТариф. Размер * ПрочиеТарифы. Размер / 100 |КОНЕЦ КАК Результат, |ВЫБОР |КОГДА Выработка. ВидОплаты = &Основной |ТОГДА ОсновнойТариф. Размер |ИНАЧЕ ПрочиеТарифы. Размер |КОНЕЦ КАК Размер |ИЗ |Документ. лс_ВводДанныхОВыработкеНаМеханизмах. Выработка КАК Выработка |ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ |лс_ВводДанныхОВыработкеНаМеханизмахВыработка. Механизм КАК Механизм, |лс_ОплатаРаботНаМеханизмахСрезПоследних. Размер КАК Размер |ИЗ |Документ. лс_ВводДанныхОВыработкеНаМеханизмах. Выработка КАК лс_ВводДанныхОВыработкеНаМеханизмахВыработка |ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений. лс_ОплатаРаботНаМеханизмах. СрезПоследних (&ДатаДок, ВидОплаты = &Основной) КАК лс_ОплатаРаботНаМеханизмахСрезПоследних |ПО лс_ВводДанныхОВыработкеНаМеханизмахВыработка. Механизм = лс_ОплатаРаботНаМеханизмахСрезПоследних. Механизм) КАК ОсновнойТариф |ПО Выработка. Механизм = ОсновнойТариф. Механизм |ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений. лс_ОплатаРаботНаМеханизмах. СрезПоследних (&ДатаДок, ВидОплаты <> &Основной) КАК ПрочиеТарифы |ПО Выработка. Механизм = ПрочиеТарифы. Механизм |И Выработка. ВидОплаты = ПрочиеТарифы. ВидОплаты |ГДЕ |Выработка. Ссылка = &Ссылка"; Запрос. УстановитьПараметр ("Основной", Справочники. ВидыОплаты. ЧасовойТариф); Запрос. УстановитьПараметр ("ДатаДок", Дата); Запрос. УстановитьПараметр ("Ссылка", Ссылка);


Листинг кода документа представлен в приложении Д.

Документ в целом формирует следующие движения по двум регистрам накопления:

-       "Выработка на механизмах": движение по каждому сотруднику по каждой работе с указанием цены и стоимости работы;

Рисунок 2.10 - Регистр накопления "Выработка на механизмах"

-       "Фактическая выработка работников организаций": движение по каждому сотруднику сводно по всем механизмам и видам работ.

Рисунок 2.11 - Регистр накопления "Фактическая выработка работников организаций"

Документ "Доплата из "коллективного фонда" по итогам месяца"

Документ "Доплата из коллективного фонда за месяц" предназначен для распределения определенной суммы между работниками предприятия пропорционально их начислениям за месяц и коэффициенту трудового участия.

Входными данными для документа являются:

-       Месяц начисления;

-       Вид премии;

-       Сумма к распределению;

-       Данные регистров начисления/удержания.

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

Пользователю остается проставить коэффициенты трудового участия (по умолчанию 1) и по нажатию кнопки "Рассчитать" произойдет автоматический расчет премии пропорционально базе распределения.

Расчет производится по алгоритму изображенному на рисунке 2.14. Листинг кода документа представлен в приложении Е.

Рисунок 2.12 - Внешний вид формы документа

Рисунок 2.13 - Формирование списка работников

Рисунок 2.14 - Блок-схема алгоритма расчета месячной премии

Документ формирует следующие движения по регистрам начислений/удержаний:

-       "Взаиморасчеты с работниками организаций": движение по каждому сотруднику на величину премии (рисунок 2.15);

Рисунок 2.15 - Фрагмент записи в регистр накопления "Взаиморасчеты с работниками организаций"

-       "Дополнительные начисления работников организации": движение по каждому сотруднику на величину премии с указанием вида премии (рисунок 2.16);

Рисунок 2.16 - Фрагмент записи в регистр расчета "Дополнительные начисления работников организации"

-       "НДФЛ сведения о доходах": создание записи о полученных доходах, для последующего учета НДФЛ (рисунок 2.17).

Рисунок 2.17 - Фрагмент записи в регистр накопления "Сведения о доходах работников организации"

Документ "Квартальная премия"

Документ "Квартальная премия" предназначен для распределения определенной суммы между работниками предприятия пропорционально их начислениям за квартал и коэффициенту трудового участия (рисунок 2.18).

Входными данными для документа являются:

-       Месяц начисления;

-       Период расчета - квартал;

-       Вид премии;

-       Сумма к распределению;

-       Базовые начисления за квартал.

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

Рисунок 2.18 - Внешний вид формы документа "Квартальная премия"

После того, как пользователь проставит коэффициенты трудового участия (по умолчанию 1), по нажатию кнопки "Рассчитать" произойдет автоматический расчет премии пропорционально базе распределения.

Расчет производится по тому же принципу, что и алгоритм расчета месячной премии (рисунок 2.14), за исключением того, что в запросах для получения базовых начислений периодом берется не месяц, а квартал.

По требованию заказчика к документу "Квартальная премия" должна прилагаться печатная форма по образцу (приложение Б).

Для создания печатной формы в режиме конфигуратора для документа был создан макет (рисунок 2.19).

Рисунок 2.19 - Макет печатной формы документа "Квартальная премия"

По нажатию на кнопку "Печать" происходит создание нового табличного документа, заполненного в соответствии с шаблоном данными. Этот табличный документ можно сохранить в электронном виде (например, в формате Excel) либо сразу вывести на печать. Заполнение документа происходит в соответствии с алгоритмом изображенном на рисунке 2.20.

Рисунок 2.20 - Блок-схема алгоритма заполнения печатной формы

Также как и документ расчета месячной премии, документ "Квартальная премия" формирует следующие движения по регистрам начислений/удержаний:

-       "Взаиморасчеты с работниками организаций": движение по каждому сотруднику на величину премии. Периодом выступает месяц начисления;

-       "Дополнительные начисления работников организации": движение по каждому сотруднику на величину премии с указанием вида премии. Базовым периодом выступает квартал;

-       "НДФЛ сведения о доходах": создание записи о полученных доходах, для последующего учета НДФЛ. Периодом выступает месяц начисления.

 

Документ "Вознаграждение по итогам года из резерва"

Документ "Вознаграждение по итогам года" предназначен для распределения определенной суммы между работниками предприятия, проработавших в организации не менее года, пропорционально их начислениям за год и коэффициенту стажа (КС).

Входными данными для документа являются:

-       Месяц и период начисления;

-       Вид премии;

-       Сумма к распределению;

-       Данные регистров начисления/удержания.

Внешний вид формы документа представлен на рисунке 2.21. Заполнение табличной части документа фамилиями сотрудников происходит либо вручную, стандартным для платформы 1С способом, либо автоматически по нажатию кнопки "Заполнить" данными сотрудников согласно отбору (рисунок 2.13).

Рисунок 2.21 - Внешний вид формы документа

Пользователю остается проставить коэффициенты трудового участия (по умолчанию 1) и по нажатию кнопки "Рассчитать" произойдет автоматический расчет премии пропорционально базе распределения.

Расчет производится по алгоритму, изображенному на рисунке 2.22. При расчете производится анализ списка сотрудников: сотрудникам, стаж работы которых на предприятии меньше года, годовая премия не начисляется. Для всех остальных работников производится оценка по регистрам начисления/удержания базовых начислений по сотрудникам за год.

Рисунок 2.22 - Блок-схема алгоритма расчета годовой премии

Документ формирует следующие движения по регистрам начислений/удержаний:

-       "Взаиморасчеты с работниками организаций": движение по каждому сотруднику на величину премии;

-       "Дополнительные начисления работников организации": движение по каждому сотруднику на величину премии с указанием вида премии;

-       "НДФЛ сведения о доходах": создание записи о полученных доходах, для последующего учета НДФЛ.

 

.4.2 Перенос данных в программу "1С: Бухгалтерия 8" из "БЭСТ-4+"

 

Перенос данных о поставщиках и покупателях

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

Внешний вид обработки "Загрузка контрагентов и связанной информации" представлен на рисунке 2.23. Листинг кода приведен в приложении Ж.

Рисунок 2.23 - Форма обработки "Загрузка контрагентов. epf"

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

При загрузке банков, производится проверка на заполненное поле БИК, Если оно пустое, сведения о банке не загружаются.

Принципиальный алгоритм обработки представлен на рисунке 2.24. Так как справочники взаимосвязаны, то загружать их в программу "1С: Бухгалтерия 8" надо в определенной последовательности. Для обеспечения совместимости в справочники "Контрагенты" и "Банки" было добавлено поле "КодБЭСТ", где бы хранился 16-тизначный код ил программы "БЭСТ-4+" (рисунок 2.3).

Рисунок 2.24 - Блок-схема принципиального алгоритма обработки "Загрузка контрагентов и связанной информации"

На рисунке 2.25 представлена блок-схема процедуры загрузки в справочник "Контрагенты".

Результатом обработки "Загрузка контрагентов и связанной информации" является заполненный справочник контрагентов и файл протокола (рисунок 2.26)

Рисунок 2.25 - Блок-схема процедуры ЗагрузкаКонтрагентов ()

Рисунок 2.26 - Протокол ошибок при переносе данных о контрагентах

Перенос суммовых остатков по взаиморасчетам с покупателями и поставщиками ООО "СтройРемонтПодряд"

Сведения об остатках по взаиморасчетам с контрагентами Заказчик предоставляет в виде файла Excel в формате xls. В этом файле прописаны:

-       Поле "Шифр" - равно полю CODE таблицы Partner. dbf;

-       Поле "Наименование" - содержит название организации поставщика/покупателя. По этому полю производиться идентификация не будет, так как оно может быть неуникальным;

-       Поля "Дебетовая" и "Кредитовая" - поля содержащие суммовые остатки. Пользователь должен сам выбрать по каким счетам пройдут дебетовые и кредитовые остатки.

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

-       Наименование организации (ООО "СтройРемонтПодряд");

-       Дату ввода остатков.

Также оператор должен указать ключевые строки листа файла остатков: номер первой строки с данными: обработка будет загружать только строки после этой; номера колонок с кодом контрагента, дебетовым и кредитовым сальдо.

Рисунок 2.27 - Внешний вид формы обработки "ЗагрузкаОстатковВзаиморасчетовБЭСТ. epf"

Алгоритм обработки представлен на рисунке 2.28. Листинг кода обработки в приложении З. Результатом действия обработки будет документ ручной операции (рисунок 2.29) по вводу остатков с проводками по бухгалтерскому и налоговому учету. Также обработка сформирует протокол, в котором будут указаны все контрагенты, по которым не удалось произвести перенос остатков взаиморасчетов.

Рисунок 2.28 - Блок-схема алгоритма обработки вводу остатков взаиморасчетов

Рисунок 2.29 - Фрагмент ручной операция по вводу остатков взаиморасчетов с покупателями (счет 62)

Перенос данных о товарно-материальных ценностях

В отличие от базы данных "БЭСТ" в "1С: Бухгалтерии 8" в справочнике "Номенклатура" содержатся как данные о материалах, так и данные о товарах и услугах. В базе "БЭСТ" эта информация содержится в трех файлах: товары в Sklad\Mlabel. dbf, услуги в Tovar\Mlabel. dbf, материалы в Zapas\Mlabel. dbf. Для каждого из этих файлов надо запустить обработку "ЗагрузкаНоменклатурыБЭСТ. epf" (рисунок 2.30). В процессе обработки должны быть загружены основные поля: наименование, группа, единица измерения и т.п.

Для того чтобы подставить значения единиц измерения корректно, необходимо предоставить пользователю возможность самому выбрать соответствия для единиц измерения из программы "БЭСТ". Для этого на форме появилась закладка "Соответствие единиц". По нажатию кнопки "Заполнить" табличная часть заполняется всеми видами единиц измерения использующихся для номенклатуры в указанном файле dbf. Пользователю необходимо подставить значения из справочника 1С "Классификатор единиц измерений", если этого не сделать, то обработка сама подставит значение по умолчанию.

Рисунок 2.30 - Внешний вид формы обработки "ЗагрузкаНоменклатурыБЭСТ. epf"

Алгоритм действия обработки представлен на рисунке 2.31. Результатом работы обработки является заполненный справочник "Номенклатура" и файл протокола, где перечислены все номенклатурные позиции, перенос по которым произведен не был.

Листинг кода обработки представлен в приложении И.

Рисунок 2.31 - Блок-схема алгоритма обработки по переносу ТМЦ

Перенос количественно-суммовых остатков по товарно-материальным ценностям

В базе "БЭСТ" остатки ТМЦ содержатся в файле Mlabel. dbf, который в свою очередь связан с файлами складов (msclad. dbf) и файлом остатков (mkart. dbf).

При переносе остатков требуется создать документ ручной операции с проводками по кредиту счета 000 (вспомогательный) в дебет счета учета номенклатуры. Требовалось предоставить возможность пользователю самостоятельно установить соответствие счетов учета в "БЭСТ" и в 1С. Также как и при загрузке номенклатуры, пользователю на закладке "Соответствие единиц" необходимо запустить процедуру загрузки счета. Обработка (рисунок 2.32) выведет все счета учета номенклатуры из указанного файла dbf, и предложит значения из плана счетов 1С. Если для какой-либо позиции соответствие пользователем указано не будет, будет подставляться счет по умолчанию.

Рисунок 2.32 - Внешний вид формы обработки "ЗагрузкаОстатковНоменклатурыБЭСТ. epf"

Результатом действия обработки будет документ ручной операции (рисунок 2.33) по вводу остатков с проводками по бухгалтерскому и налоговому учету.

Рисунок 2.33 - Фрагмент ручной операции по вводу количественно-суммовых остатков ТМЦ

На рисунке 2.34 представлена принципиальная блок-схема обработки. Согласно постановке задачи проводка по вводу остатков должна содержать сведения о материале (товаре), складе, счете учета, количестве и сумме. Поэтому во время процедуры переноса обработкой проверяются что:

-       в базе 1С в справочнике номенклатура есть запись о ТМЦ;

-       ТМЦ не является услугой;

-       в базе 1С в справочнике Склад есть запись о месте хранения;

-       если пользователь не проставил соответствие для счета учета, счет равняется счету по умолчанию

Рисунок 2.34 - Блок-схема алгоритма обработки "ЗагрузкаОстатковНоменклатурыБЭСТ. epf"

Листинг кода обработки представлен в приложении К.

Глава 3. Оценка экономической эффективности проекта


3.1 Введение


Под экономической эффективностью проекта по внедрению АИС понимается мера соотношения затрат и результатов функционирования программного изделия. К основным показателям экономической эффективности относятся: чистая текущая стоимость, внутренний коэффициент окупаемости, простой и дисконтированный сроки окупаемости.

Определяют экономическую эффективность с помощью трудовых и стоимостных показателей. Основным методом при расчетах является метод сопоставления данных базисного и отчетного периода. Базисный период рассматривается с точки зрения затрат на обработку информации до внедрения АИС, а отчетный период - после внедрения АИС [18].

Целью данного дипломного проектирования было внедрить и адаптировать под нужды предприятия две программы системы 1С на платформе 8.1, а именно: "Бухгалтерия 8" и "Зарплата и Управление Персоналом". В результате использования системы программ ожидается получение следующих эффектов:

-       Сокращение сроков переработки информации;

-       Возможности охвата большего количества задач теми же трудовыми ресурсами как следствие экономии времени на обработку информации;

-       Повышение оперативности, достоверности информации;

-       Сокращение сроков освоения нового программного изделия за счет широкой распространенности программ системы 1С.

 


3.2 Расчет необходимых капитальных вложений


Необходимые капитальные вложения в проектном варианте вычисляются по формуле [18]:

, (руб) (3.1)

гдеKV - первоначальные вложения в проект (руб.);

ЗПО - затраты на приобретение лицензионного программного обеспечения (руб.);

ЗПП - затраты на адаптацию программного продукта и перенос данных из существующей АИС (руб.).

 

.2.1 Расчет затрат на приобретение ПО

На предприятии планировалось автоматизировать 6 рабочих мест. Для этого требовалось закупить: программы "Бухгалтерия 8" и "Зарплата и Управление Персоналом" и дополнительную клиентскую лицензию на 5 рабочих мест. В капиталовложения не включаются затраты на оборудование, так как рабочие места обеспечены всем необходимым для решения задачи оборудованием.

Затраты на приобретение программного обеспечения предоставлены в таблице 3.1.

Таблица 3.1 - Затраты на приобретение программного обеспечения.

Наименование

Цена, руб.

Кол-во

Всего, руб.

1С: Бухгалтерия 8.

9000

1 шт.

9000

1С: Зарплата и Управление персоналом 8

12600

1шт.

12600

15600

1 шт.

15600

ИТОГО:

37200

 


Расчет затрат на адаптацию ПО

Затраты на разработку программного обеспечения определим по формуле:

, руб. (3.2)

гдеЗПП - затраты на адаптацию программного продукта и перенос данных из существующей АИС, (руб.);

Зсм - затраты на сырье и материалы, руб.;

Ззп - затраты на зарплату, руб.;

Затраты на сырье и материалы (Зсм) сведены в таблице 3.2.

Таблица 3.2 - Затраты на сырье и материалы.

Наименование

Цена, руб.

Кол-во

Всего, руб.

DVD-RW диск

35

1 шт.

35

Бумага формат А4

120

1 уп.

120

Справочная литература

300

1 шт.

330

ИТОГО:

485


Заработная плата разработчика рассчитывается по формуле:

, руб. (3.3)

гдеЗПо - основная заработная плата, руб.;

ЗПд - дополнительная заработная плата, руб.;

ЗПсоц - отчисления на социальное страхование, руб.

Основная заработная плата рассчитывается исходя из количества часов затраченных на реализацию проекта (138 часов) и стоимости часа специалиста (150 руб. /час).

, руб.

Дополнительная зарплата составляет 12% от основной заработной платы:

, руб.

Отчисления на социальное страхование составляют 26% от основной и дополнительной заработной платы:

, руб.

Затраты на заработную плату разработчика сведены в таблице 3.3.

Таблица 3.3 - Затраты на заработную плату разработчика.

Наименование

Сумма, руб.

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

20700

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

2484

Отчисления на социальное страхование, руб.

6027,84

ИТОГО:

29211,84


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

Таблица 3.4 - Необходимые капитальные вложения.

Статьи затратСумма, руб.

 

Приобретение программного обеспечения, руб.

37200

Затраты на адаптацию ПО, руб.

29696,84

ИТОГО:

66896,84

 


3.3 Расчет текущих эксплуатационных затрат


До внедрения АИС процесс расчета заработной платы не был автоматизирован и производился вручную двумя сотрудниками расчетного отдела. В результате внедрения и адаптации программы 1С количество рабочих мест не сократилось, но существенно повысилась эффективность работы. Рассчитаем затраты по базовому и проектному варианту исходя из следующих предпосылок:

-       сотрудники работают по 40-часовой рабочей неделе, что составляет в среднем за месяц 168.16 часов;

-       оклад расчетчиков составляет 9000 руб. /месяц, т.е. расходы на заработную плату на каждого расчетчика составляют 12700,8 руб., а, следовательно, средняя стоимость часа такого работника равна: 75,56 руб.;

-       расчетный отдел производит расчеты по начислению заработной платы 530 сотрудникам.

 

.3.1 Расчет затрат по базовому варианту

По базовому варианту расчеты о начислении заработной платы на каждого сотрудника составляют 15 минут. Зная стоимость часа расчетчика, получаем затраты по базовому варианту:

 (3.4)

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

Тобр - суммарное время, требуемое для начисления зарплаты одному работнику, (час);ч - стоимость часа работы расчетчика, (руб.).

Это составляет 30035,1 руб. в квартал.

Расчет затрат по проектному варианту

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


Это составляет 8410,8 руб. в квартал.

Таким образом, получается, что после внедрения АИС эффективность работы расчетчиков за квартал повысилась на 21624,3 рубль в стоимостном выражении.

3.4 Расчет показателей экономической эффективности


Расчет экономической эффективности внедрения программного продукта произведем на основе метода "потоков платежей" ("Cash Flow") с использованием разностного подхода.

Для оценки экономической эффективности определим денежные потоки за 2 года с детализацией по кварталам. Для оценки упущенных возможностей примем в качестве ставки сравнения (дисконтирования) значение ставки рефинансирования ЦБ РФ = 10,5% годовых, что составит R=2,52% в квартал.

Рассчитаем основные показатели, характеризующие экономическую эффективность и эффект данного проекта.

Чистый поток платежей (ЧПП) на каждый квартал рассчитываем по формуле:

, руб. /квартал (3.5)

гдеЗБ - затраты по базовому варианту, руб. / квартал;

ЗПР - затраты по проектному варианту, руб. / квартал;Н - размер налога на прибыль, руб. / квартал.

, руб. / квартал (3.6)

Тогда формула (3.5) примет вид:

, руб. / квартал (3.7)

Чистая текущая стоимость определяется как:

, руб. (3.8)

гдеR - ставка сравнения (примем за 2,52%);- первоначальные капиталовложения в проект;- жизненный цикл проекта (T = 8 кварталов).

Внутренний коэффициент окупаемости (ВКО) определяется:

 (3.9)

гдеЧТС+, ЧТС - положительные и отрицательные чистые текущие стоимости проекта, полученные по формуле (3.8) при определенных значениях ставки дисконтирования;+, R - ставки дисконтирования (сравнения), соответствующие положительным и отрицательным чистым потокам соответственно.

При ставке в 59,3% годовых (R+=0.1235): ЧТС=16,76

При ставке дисконтирования в 59,4% (R-=0.1236): ЧТС=-16,43

Тогда внутренний коэффициент окупаемости будет равен:

, т. е 59,35% годовых.

Срок окупаемости (дисконтированный или простой) данной разработки рассчитывается по формуле:

, квартал (3.10)

Гдеm - текущий номер периода при котором Sm<KV<Sm+1;- первоначальные капиталовложения в проект, (руб.);m, Sm+1 - сумма чистого потока платежей за m и за m+1 период соответственно, "очищенная" от величин капиталовложений за эти периоды (руб.);

Пm+1 - величина чистого потока платежей за m+1 период ("очищенная" от капиталовложений в этот период), (руб.).

Для данного проекта S4<KV<S5.

Простой срок окупаемости проекта:

 (квартала).

Дисконтированный срок окупаемости проекта:

 (квартала).

Результаты расчетов показателей по вышеприведенным формулам приведены в Таблице 3.5.

Рентабельность проекта вычисляется по формуле (3.11):

 (3.11)

Таблица 3.5 - Расчет основных показателей эффективности внедрения информационной системы

Периоды

Кварталы

Показатели

0

1

2

3

4

5

6

Кап вложения

66896,8

 

 

 

 

 

 

Экономия

 

21624,3

21624,3

21624,3

21624,3

21624,3

21624,3

Налог на прибыль (24%)

 

5189,832

5189,832

5189,832

5189,83

5189,83

5189,83

ЧПП (t) (чистая экономия)

 

16434,47

16434,47

16434,47

16434,5

16434,5

16434,5

Суммы ЧДП

 

16434,47

32868,94

49303,4

65737,9

82172,3

98606,8

Суммы ЧДДП

 

16029,32

31268,32

45746,22

59491,3

72530,9

84891,4

Кумулятивный ЧТС

-66896,8

-50867,52

-35233,36

-19984,62

-5111,80

9394,37

23542,93

ВКО

59,35

 

 

 

 

 

 

Срок окупаемости инвестиций (дисконтированный), месяцев

4,45

 

 

 

 

 

 



Рисунок 3.1 - Финансовый профиль проекта

 

.5 Выводы


Экономическая эффективность капиталовложений в проект обеспечивается при выполнении следующей системы условий:


Для рассматриваемого проекта данная система условий удовлетворяется:


Следовательно, рассмотренный проект с экономической точки зрения является эффективным и целесообразным для реализации. Чистая текущая стоимость реализации проекта составила 23542,93 рубля. Проект окупится за срок 1,11 года.

Глава 4. Безопасность жизнедеятельности


4.1 Требования по обеспечению комфортности на рабочем месте


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

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

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

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

Работа с программным обеспечением, адаптированным и внедренным в результате проекта, предполагается на ЭВМ, размещенных в офисных помещениях. Выполняемые работы относятся к категории 1а - это работы, производимые сидя и не требующие физического напряжения, при которых расход энергии составляет до 120 ккал/ч. Требования к помещениям для эксплуатации персональных электронно-вычислительных машин (далее - ПЭВМ) определены в СанПиН 2.2.2/2.4.1340-03 [19].

Требования к помещениям для эксплуатации ПЭВМ

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

Помещения с ПЭВМ должны иметь естественное и искусственное освещение. Расположение рабочих мест с ПЭВМ для пользователей в подвальных помещениях не допускается. Площадь на одно рабочее место с ПЭВМ для пользователей должна составлять не менее 6,0 кв. м, а объем не менее 20,0 куб. м.

Производственные помещения, в которых для работы используются преимущественно ПЭВМ (диспетчерские, операторские, расчетные и др.) не должны граничить с помещениями, в которых уровни шума и вибрации превышают нормируемые значения (механические цеха, мастерские и т.п.).

Звукоизоляция ограждающих конструкций помещений с ПЭВМ должна отвечать гигиеническим требованиям и обеспечивать нормируемые параметры шума. Для внутренней отделки интерьера помещений с ПЭВМ должны использоваться диффузно-отражающие материалы с коэффициентом отражения для потолка - 0.7 - 0.8; для стен - 0.5 - 0.6; для пола - 0.3 - 0.5.

Микроклимат рабочей зоны офисного помещения

Микроклимат помещений - это климат внутренней среды этих помещений, который определяется действующими на организм человека сочетаниями температуры, влажности и скорости движения воздуха

В офисных помещениях выполняются легкие физические работы, поэтому должны соблюдаться следующие требования: оптимальная температура воздуха - 22°С (допустимая - 20-24°С), оптимальная относительная влажность - 40-60% (допустимая - не более 75%), скорость движения воздуха не более 0.1м/с.

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

Освещение рабочего места

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

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

Согласно СанПиН 2.2.2/2.4.1340-03 в помещениях вычислительных центров необходимо применять систему комбинированного освещения.

Освещенность на поверхности стола в зоне размещения рабочего документа должна быть 300 - 500 лк. Допускается установка светильников местного освещения для подсветки документов. Местное освещение не должно создавать бликов на поверхности экрана и увеличивать освещенность экрана более 300 лк.

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

Воздействие шума

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

Согласно СанПиН 2.2.2/2.4.1340-03 эквивалентный уровень звука не должен превышать 50 дБА. Для того, чтобы добиться этого уровня шума рекомендуется применять звукопоглощающее покрытие стен.

В качестве мер по снижению шума можно предложить следующее:

-       облицовка потолка и стен звукопоглощающим материалом (снижает шум на 6-8 дб);

-       экранирование рабочего места (постановкой перегородок, диафрагм);

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

-       рациональная планировка помещения.

Опасность повышенного уровня напряженности электромагнитного поля

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

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

Максимальный уровень рентгеновского излучения на рабочем месте оператора компьютера обычно не превышает 10мкбэр/ч, а интенсивность ультрафиолетового и инфракрасного излучений от экрана монитора лежит в пределах 10…100мВт/м2.

Таблица 4.1 - Допустимые значения параметров неионизирующих электромагнитных излучений (в соответствии с СанПиН 2.2.2.542-96)

Наименование параметра

Допустимые значения

Напряженность электрической составляющей электромагнитного поля на расстоянии 50см от поверхности видеомонитора

10В/м

Напряженность магнитной составляющей электромагнитного поля на расстоянии 50см от поверхности видеомонитора

0,3А/м

Напряженность электростатического поля не должна превышать

20кВ/м


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

 


4.2 Расчет вентиляции


Основной принцип нормирования микроклимата - создание оптимальных условий для теплообмена тела человека с окружающей средой [20]. Выделяемая организмом человека теплота должна отводиться в окружающую среду. Соответствие между количеством этой теплоты и охлаждающей способностью среды характеризует ее как комфортную. В условиях комфорта у человека не возникает беспокоящих его температурных ощущений холода или перегрева. В "Общих санитарно-гигиенических требованиях к воздуху рабочей зоны" (ГОСТ 12.1.005-88) установлены оптимальные и допустимые параметры микроклимата в зависимости от времени года, категории работ и рабочих мест (постоянных и непостоянных). Параметры микроклимата приведены таблице 4.2 [21].

Таблица 4.2 - Параметры микроклимата.

Период года

Категория работ

Зона

Темпера-тура,°C

Относит. влажность, %

Скорость движения, м/с

холодн.

Легкая

оптим.

22-24

40-60

0.1



доп.

25-18

75

<0.1

теплый

Легкая

оптим.

23-25

40-60

0.1



доп.

28-22

55

0.1-0.2


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

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

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

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

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

-       Система вентиляции не должна вызывать перегрев или переохлаждение рабочих.

-       Система вентиляции не должна создавать шум на рабочих местах.

-       Она должна быть электро - и взрывобезопасной.

На рисунке 4.1 представлена схема офисного помещения, в которых будет эксплуатироваться внедряемое программное обеспечение.

Рисунок 4.1 - Схема помещений бухгалтерии и отдела кадров

 

Определение потребного воздухообмена.

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

 (4.1)

гдеn - число людей, n = 5 человек; w - количество влаги, выделяемое одним человеком, г/ч, w = 84 г/ч при t = 22°С;

По формуле (4.1) получаем:

Теперь можно определить потребный воздухообмен, который определяется по формуле:

 (4.2)

гдеW - количество водяного пара, выделяющегося в помещении;, d - влагосодержание вытяжного и приточного воздуха, г/кг, определяется по температуре и относительной влажности воздуха;- плотность приточного воздуха, р = 1.2 кг/ м;= 10 г/кг при температуре рабочей зоны 22°С;= 16 г/кг - принимается равным предельно допустимому, т.е. при tр. з. =26°С, 75 % влажности. Таким образом расход воздуха по формуле (4.2) равен:



Расчет выделений тепла.

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

Тепловыделения от людей:

 

 (4.3)

гдеn - количество людей в помещении, (5 женщин);- удельная теплота, выделяемая человеком (явное тепло при t = 22°С), Вт; q = 68 Вт;

По формуле (4.3) получаем:


Расчет тепла, поступающего в помещение от солнечной радиации Qост производится по формуле:

 (4.4)

Гдеост - площадь поверхности остекления,Fост= 17,6 м;ост - тепловыделения от солнечной радиации, Вт/м, через 1 м поверхности остекления (с учетом ориентации по сторонам света), qост = 150 Вт/м, т. е окна с двойным остеклением с металлическими переплетами;ост - коэффициент учета характера остекления, Aост=1.15 (двойное остекление в одной раме). Подставив все полученные значения в формулу (4.4), получим:


Расчет тепловыделений от источников искусственного освещения Qосв, Вт, производится по формуле:

 (4.5)

где - суммарная мощность источников освещения, N=1.64 кВт.

δ - коэффициент тепловых потерь, δ = 0.55 для люминесцентных ламп.

По формуле (5) имеем:


Для расчета тепловыделений от устройств вычислительной техники используется формула (4.5) с коэффициентом тепловых потерь равном δ = 0.5. В помещении стоят 5 компьютеров с мощностью 300 Вт источника питания. Тогда:


Таким образом, в помещении выделяется всего избыточного тепла:


При открытии дверей и окон естественный расход тепла:

 (4.6)

По формуле (4.7) посчитаем объем вентилируемого воздуха для теплого времени года:

 (4.7)

гдеQизб - теплоизбытки;

Ср - массовая удельная теплоемкость воздуха, Ср = 1000 Дж/ (кг∙°С);

р - плотность приточного воздуха, р = 1.2 кг/м;уд, tпр - температуры удаляемого и приточного воздуха,°С;

Температура удаляемого воздуха определяется по формуле:

, гдеtрз = 22°С;

а - нарастание температуры воздуха на каждый 1 м высоты, а =0.5 С/м;

Н - высота помещения, Н = 3.0 м.

Следовательно,


Температура приточного воздуха tпр при наличии избытков тепла должна быть на 5°С ниже температуры воздуха в рабочей зоне, поэтому tпр = 17°С. Подставив полученные значения в формулу (4.7) найдем:


При одновременном выделении тепла и влаги сравниваются соответствующие воздухообмены, потребные для их удаления, и выбирается наибольший. Поскольку Gт существенно больше G, то систему вентиляции будем проектировать для воздухообмена Gвент = 2714.7 м/ч.

Проектирование системы вентиляции.

Исходными данными для расчета размера воздуховода являются расход воздуха (Gвент) и допустимые скорости его движения в помещении (v = 3 м/с). Потребная площадь воздуховода f, м определяется по формуле:

 (4.8)

Для дальнейших расчетов (при определении сопротивления сети, подборе вентилятора и электродвигателя) площадь воздуховода принимается равной ближайшей большей стандартной величине, т.е. f = 0,246 м. В промышленных зданиях рекомендуется использовать круглые металлические воздуховоды. Тогда расчет сечения воздуховода заключается в определении диаметра трубы.

По справочнику находим, что для площади f условный диаметр воздуховода d =280.

Определим потери давления в вентиляционной сети. При расчете сети необходимо учесть потери давления в вентиляционном оборудовании. Естественным давлением в системах механической вентиляции пренебрегают.

Для обеспечения запаса вентилятор должен создавать в воздуховодах избыточное давление, превышающее не менее чем на 10% расчетное давление.

Для расчета сопротивления участка сети используется формула:


Где R - удельные потери давления на трение на участке сети, R =3.2 Па/м;- длина участка воздуховода, м, l = 8 м;i - сумма коэффициентов местных потерь на участке воздуховода, 1.1 - для колена, 1.4 - для прямого участка;

ν - скорость воздуха на участке воздуховода, 3 м/с;

р - плотность воздуха (принимаем р = 1.2 кг/м).

Значения R, ν, определяются по справочнику (R - по значению диаметра воздуховода на участке d, в зависимости от типа местного сопротивления).


Таким образом, потери давления в вентиляционной сети составляют Р=13,54 Па.

Требуемое давление, создаваемое вентилятором, с учетом запаса на непредвиденное сопротивление в сети в размере 10 % составит:

Ртр = 1.1 ∙ Р = 1.1 ∙ 13.55 = 14.9 Па

В вентиляционной установке для данного помещения необходимо применить вентилятор низкого давления, т.к. Ртр меньше 1 кПа. Выбираем осевой вентилятор (для сопротивлений сети до 200 Па) по аэродинамическим характеристикам т.е. зависимостям между полным давлением Ртр (Па), создаваемым вентилятором и производительностью Gтр (м/ч).

С учетом возможных дополнительных потерь или подсоса воздуха в воздуховодах потребная производительность вентилятора увеличивается на 10%, поэтому:

тр = 1.1 ∙ Gвент = 1.1 ∙ 2714.7 = 2986.17 (м /ч)

По справочным данным определяем необходимый вентилятор и электродвигатель: вентилятор О6-300 (N4), КПД вентилятора h = 0.65.

Мощность электродвигателя (N, кВт) рассчитывается по формуле:

Выберем по рассчитанному значению мощности электродвигатель 4АА63В4У2 с мощностью 0.019 кВт.

 

.3 Организация техники безопасности на рабочем месте


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

-       Повышенный уровень электромагнитного излучения;

-       Повышенный уровень напряжения в электрических цепях питания, который может привести к электротравме оператора при отсутствии заземления или зануления оборудования;

-       Несоответствие нормам параметры микроклимата (температура, влажность, скорость движения воздуха);

-       Пониженный или повышенный уровень освещенности;

а также:

-       Умственное перенапряжение из-за большого объема перерабатываемой и усваиваемой информации;

-       Монотонность труда;

-       Физическое перенапряжение из-за нерациональной организации рабочего места.

Для обеспечения безопасности работы оператора в первую очередь должны быть соблюдены требования по обеспечению комфортности на рабочем месте в соответствии с СанПиН 2.2.2/2.4.1340-03.

Организация рабочего места

При размещении рабочих мест с ПЭВМ расстояние между рабочими столами с видеомониторами (в направлении тыла поверхности одного видеомонитора и экрана другого видеомонитора), должно быть не менее 2,0 м, а расстояние между боковыми поверхностями видеомониторов - не менее 1,2 м. При выполнении творческой работы, требующей значительного умственного напряжения или высокой концентрации внимания, рабочие места рекомендуется изолировать друг от друга перегородками высотой 1,5 - 2,0 м.

Экран видеомонитора должен находиться от глаз пользователя на расстоянии 600 - 700 мм, но не ближе 500 мм с учетом размеров алфавитно-цифровых знаков и символов.

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

Научная организация рабочего пространства базируется на данных о средней зоне охвата рук человека: 35-40 см. Ближней зоне соответствует область, охватываемая рукой с прижатым к туловищу локтем, дальней зоне - область вытянутой руки.

Неправильное положение рук при печати на клавиатуре приводит к хроническим растяжениям кисти. Важно не столько отодвинуть клавиатуру от края стола и опереть кисти о специальную площадку, сколько держать локти параллельно поверхности стола и под прямым углом к плечу. Поэтому клавиатура должна располагаться в 10-15 см (в зависимости от длины локтя) от края стола. В этом случае нагрузка приходится не на кисть, в которой вены и сухожилия находятся близко к поверхности кожи, а на локоть. Глубина стола должна позволяет полностью положить локти на стол, отодвинув клавиатуру к монитору.

Положение монитора:

·   расстояние считывания - 60-70 см;

·   угол считывания - направление взгляда на 20° ниже горизонтали к центру экрана, причем экран перпендикулярен этому направлению.

Должна также предусматриваться возможность регулирования экрана:

·   по высоте +3 см;

·   по наклону от - 10° до +20° относительно вертикали;

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

Во время работы оператор обязан:

-       выполнять санитарные нормы и соблюдать режимы работы и отдыха;

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

Во время работы оператору запрещается:

-       переключать разъемы интерфейсных кабелей периферийных устройств при включенном питании;

-       загромождать верхние панели устройств бумагами и посторонними предметами;

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

-       допускать попадание влаги на поверхность системного блока (процессора), монитора, рабочую поверхность клавиатуры, дисководов, принтеров и др. устройств;

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

По окончании работ оператор обязан соблюдать следующую последовательность выключения вычислительной техники:

) произвести закрытие всех активных задач;

) выключить питание системного блока (процессора);

) выключить питание всех периферийных устройств;

) отключить блок питания.

По окончании работ оператор обязан осмотреть и привести в порядок рабочее место.

 

.4 Организация система пожаро- и электробезопасности на рабочем месте


Пожаробезопасность.

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

Помещение офиса по функциональной пожарной опасности относится к классу Ф 4 - учебные заведения, научные и проектные организации, учреждения управления.

При эксплуатации ЭВМ возможны возникновения следующих аварийных ситуаций:

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

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

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

-       возникновение токов утечки - локальный нагрев изоляции между отдельными токоведущими элементами и заземленными конструкциями;

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

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

На долю пожаров, возникающих в электрических установках, приходится 20%.

Меры пожарной профилактики

-       строительно-планировочные - определяются огнестойкостью зданий и сооружений (выбор материалов конструкций: сгораемые, несгораемые, трудно сгораемые) и пределом огнестойкости;

-       технические - это соблюдение противопожарных норм при эвакуации систем вентиляции, отопления, освещения, электрического обеспечения и т.д.;

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

Способы и средства тушения пожаров

Существует следующие способы и средства тушения пожаров:

-       Снижение концентрации кислорода в воздухе;

-       Понижение температуры горючего вещества, ниже температуры воспламенения;

-       Изоляция горючего вещества от окислителя.

Огнегасительные вещества: вода, песок, пена, порошок, газообразные вещества и не поддерживающие горение (хладон), инертные газы, пар.

Средства пожаротушения:

·        Ручные:

-       огнетушители химической пены;

-       огнетушитель пенный;

-       огнетушитель порошковый;

-       огнетушитель углекислотный, бромэтиловый

·        Противопожарные системы:

-       система водоснабжения;

-       пеногенератор

·        Системы автоматического пожаротушения с использованием средств автоматической сигнализации:

-       пожарный извещатель (тепловой, световой, дымовой, радиационный)

-       Для ВЦ используются тепловые датчики-извещатели типа ДТЛ, дымовые радиоизотопные типа РИД.

·        . Система пожаротушения ручного действия (кнопочный извещатель).

·        . Для ВЦ используются огнетушители углекислотные ОУ, ОА (создают струю распыленного бром этила) и системы автоматического газового пожаротушения, в которой используется хладон или фреон как огнегасительное средство.

Для осуществления тушения загорания водой в системе автоматического пожаротушения используются устройства спринклеры и дренчеры. Их недостаток - распыление происходит на площади до 15 м2.

Электробезопасность.

Помещение офиса по опасности поражения электрическим током можно отнести к 1 классу, т.е. это помещение без повышенной опасности (сухое, бес пыльное, с нормальной температурой воздуха, изолированными полами и малым числом заземленных приборов).

Основными причинами поражения человека электрическим током на рабочем месте являются:

·   Прикосновение к металлическим нетоковедущим частям (корпусу, периферии компьютера), которые могут оказаться под напряжением в результате повреждения изоляции;

·   Нерегламентированное использование электрических приборов;

·   Отсутствие инструктажа сотрудников по правилам электробезопасности.

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

Электробезопасность в офисе обеспечивается техническими способами и средствами защиты, а так же организационными и техническими мероприятиями. Мероприятия по снижению опасности поражения электрическим током должны соответствовать ГОСТ 12.1.038-82; ГОСТ 12.1.009-78; ГОСТ 12.2.007-75.

Общетехнические средства защиты

-       Рабочая изоляция;

-       Двойная изоляция;

-       Недоступность токоведущих частей;

-       Блокировки безопасности (механические, электрические);

-       Малое напряжение.

Специальные средства защиты

-       заземление - снижение напряжения между корпусом, оказавшимся под напряжением (в случае аварийной ситуации) и землей, до безопасной величины;

-       зануление - превращение замыкания на корпус в короткое однофазное замыкание за счет срабатывания токовой защиты, которая отключает систему питания и тем самым отключается поврежденное устройство.

-       защитное отключение - это преднамеренное автоматическое отключение электрической установки от питающей сети в случае опасности поражения электрическим током.

4.5 Правовые вопросы обеспечения БЖД


Основные положения об обеспечении БЖД изложены в Конституции Российской Федерации, правовые вопросы охраны труда в первую очередь регламентируются трудовым кодексом РФ от 01 февраля 2002 г [9]. Также существуют федеральный законы, например, ФЗ РФ "Об основах охраны труда в Российской Федерации", принятом 23 июня 1999г. В качестве подзаконных актов выступают ГОСТы, Нормы и Правила.

Согласно федеральному закону "об основах охраны труда в РФ":

-       признается приоритет жизни и здоровья работника по отношению к результатам производственной деятельности;

-       устанавливаются единые нормативные требования по охране труда для предприятий всех форм собственности;

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

-       должен быть установлен общественный контроль за соблюдением законодательства в области охраны труда;

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

-       должно производиться обучение безопасным методам труда и должна осуществляться подготовка специалистов в области охраны труда;

Можно выделить следующие виды нормативных правовых актов по охране труда:

·        Государственные стандарты Системы Стандартов Безопасности Труда (ГОСТ Р ССБТ) - утверждают Госстандарт России и Минстрой России. Основные из них:

-       ГОСТ 12.1.009 - 76 ССБТ. Электробезопасность.

-       ГОСТ 12.1.004 - 91 ССБТ. Пожарная безопасность.

-       ГОСТ Р 12.0.006-02 ССБТ Общие требования к управлению охраной труда в организации.

-       ГОСТ 12.1.003-83 Шум. Общие требования безопасности.

·        Санитарные правила (СП), санитарные нормы (СН), гигиенические нормативы (ГН) и санитарные правила и нормы (СанПиН) - утверждает Госкомсанэпиднадзор России. Например:

-       СанПиН 2.2.2/2.4.1340-03 "Гигиенические требования к персональным электронно-вычислительным машинам и организации работы";

-       СН-2.2.4/2.1.8.562-96. Шум на рабочих местах, в помещениях жилых, общественных зданиях и на территории жилой застройки.

·        Строительные нормы и правила (СНиП) - утверждает Министр России.

-       СНиП 12-03-01. Безопасность труда в строительстве.

-       СНиП 2.04.95-91. Отопление, вентиляция и кондиционирование

·        Правила безопасности (ПБ), правила устройства и безопасной эксплуатации (ПУБЭ), инструкции по безопасности (ИБ) - утверждают федеральные органы надзора в соответствии с их компетенцией.

-       ПБ 12-368-00. Правила безопасности в газовом хозяйстве.

-       ПБ 10-115-96. Правила устройства и безопасной эксплуатации сосудов, работающих под давлением.

·        Правила по охране труда межотраслевые (ПОТ М) и отраслевые (ПОТ О) - утверждает Минтруд России.

-       ПОТ Р М - 020-01. Межотраслевые правила по охране труда при электро - и газосварочных работах.

-       ПОТ Р М 004-97. Правила по охране труда при использовании химических веществ.

В зависимости от характера нарушения законов и нормативных актов и их последствий предусмотрены три формы ответственности.

.        Дисциплинарная - замечание, выговор, строгий выговор, увольнение. Возможно лишение премии.

2.      Административная ответственность применяется за нарушения, где не предусмотрена уголовная ответственность и, в соответствии со статьёй 41 Кодекса РФ об административных правонарушениях, влечёт наложение штрафа в размере до ста минимальных размеров оплаты труда.

3.      Уголовная ответственность определяется судом. В соответствии со статьёй N143 уголовного кодекса Российской Федерации (УК РФ), нарушение правил техники безопасности или иных правил охраны труда, совершённое лицом, на котором лежали обязанности по соблюдению этих правил, если это повлекло по неосторожности причинение тяжкого или средней тяжести вреда здоровью человека, наказывается штрафом в размере от двухсот до пятисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев, либо исправительными работами на срок до двух лет, либо лишением свободы на срок до двух лет. То же деяние, повлекшее по неосторожности смерть человека, наказывается лишением свободы на срок до пяти лет. В некоторых случаях возможна и материальная ответственность.

4.6 Заключение


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

Был произведен расчет вентиляции рабочего места. Согласно расчету в помещении должна быть установлена система вентиляции с вентилятором О6-300 (N4), КПД вентилятора 65% и электродвигателем 4АА63В4У2 с мощностью 0.019 кВт.

Заключение


В современном мире для управления предприятием единственным эффективным инструментарием является автоматизированная информационная система. Руководством предприятия принимается решение о создании новой информационной системы или о применении уже существующих АИС.

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

Объектом исследования в данном дипломном проекте выступало предприятие ООО "СтройРемонтПодряд", оказывающее услуги аренды строительной техники.

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

Для достижения данной цели в организации были внедрены программы системы "1С: Предприятие 8" в составе "1С: Бухгалтерия 8" и "1С: Зарплата и управление персоналом 8".

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

а)      Был произведен анализ существующего управленческого и бухгалтерского учета, ведущегося на предприятии ООО "СтройРемонтПодряд".

-       В результате анализа была выявлена необходимость доработки типовой конфигурации программы "1С: Зарплата и управление персоналом" для реализации механизма оплаты труда одной из категорий сотрудников и для отражения принятых на предприятии доплат из коллективного фонда.

-       Для облегчения ввода в эксплуатацию программы "1С: Бухгалтерия 8" был произведен перенос данных из использовавшейся на предприятии программы "БЭСТ-4+".

б)      Была произведена постановка задачи на доработку программ системы "1С: Предприятие 8" под требования организации ООО "СтройРемонтПодряд".

в)      Была произведена адаптация программы "1С: Зарплата и управление персоналом".

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

-       Для отражения доплат из коллективного фонда по итогам месяца, квартала и года были созданы три документа.

г)       В рамках переноса данных из программы "БЭСТ-4+" в "1С: Бухгалтерия 8" было перенесено:

-       1098 записей о поставщиках и покупателях, а также сведения о них (адреса, банковские счета);

-       проводки суммовых остатков по взаиморасчетам с контрагентами (более 1400 записей);

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

д)      Была произведена оценка экономической эффективности проекта. При капитальных вложениях в 66896,8 рублей, проект окупится за срок 4,45 квартала, то есть за 1 год и 1 месяц. Экономический эффект был достигнут за счет уменьшения трудоемкости выполняемых операций.

Термины и определения


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

Бухгалтерский счет - представляет собой учетную позицию в бухгалтерском учёте, предназначенную для постоянного учета в денежном выражении движения каждой однородной группы принадлежащих хозяйствующему субъекту средств и источников их образования методом двойной записи (по дебету и кредиту).

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

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

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

Документы служат для ввода информации о совершаемых операциях в системе.

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

Журналы документов служат для отображения списков документов различного вида.

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

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

Номенклатура - систематизированный перечень товаров с классификацией и разделением на группы и подгруппы.

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

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

Основные начисления - это начисления, имеющие период действия (оплата по тарифным ставкам, оплата периодов отсутствия работника и пр.).

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

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

Регистр расчета - это объект конфигурации, который позволяет организовать учет результатов вычислений

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

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

Субконто - термин, обозначающий аналитический признак ("разрез") счета бухгалтерского учёта.

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

Список использованных источников


1.      Методические материалы по "1С: Предприятие 8.1". - М.: "Фирма 1С", 2015.

2.      http://v8.1c.ru/overview/RaspredBases. htm - Распределенные информационные базы в системе "1С: Предприятие 8"

.        http://www.buh.ru/

.        Руководство к своду знаний по управлению проектами. Третье издание: М.: Институт Управления Проектами, 2014. - 238 с.

.        Барышников А., Дзябченко А., Матвеев С. и др. Элементы технологии стандартного внедрения. М.: Фирма "1С", 2015. - 250 с.

.        ГОСТ 34.601-90. Автоматизированные системы. Стадии создания. М.: Издательство стандартов, 1992: - 14 с.

.        Трунин И.В. "1С: Предприятие 8" в научно-исследовательском институте // Финансовая газета. 2015. - №48. - С.24-25.

.        Харитонов С.А. Настольная книга по оплате труда и ее расчету в программе "1С: Зарплата и Управление Персоналом 8.0", М.: "1С-Паблишинг", 2014. - 594 c.

.        Трудовой кодекс Российской Федерации. М.: Омега-Л, 2016. - 277 с.

.        Ковязина Н.З. Применяем новые положения ТК РФ об оплате труда // Российский налоговый курьер. 2016. - №1-2. - С.16-19.

.        Митичкин С.А. Разработка в системе 1С: Предприятие 8, М: "1С: Паблишинг", 2003. - 413 с.

.        Усиков Т. Н.1С: Предприятие. Эффективное программирование. М.: Новое знание, 2014. - 446с.

.        Габец А.П., Гончаров Д.И., Козырев Д.В., Кухлевский Д.С., Радченко М.Г. Профессиональная разработка в системе 1С: Предприятие 8 (+CD) /Под ред. М.Г. Радченко. - М: "1С: Паблишинг", 2014. - 808 с.

.        Кондраков Н.П. Бухгалтерский учет. М.: ИНФРА-М, 2014. - 592 с.

.        Харитонов С.А. Бухгалтерский и налоговый учет в программе "1С: Бухгалтерия 8.0" Практическое пособие. СПб.: "Питер", 2014 - 544 с.

.        Габец А.П., Гончаров Д. И.1С: Предприятие 8. Простые примеры разработки, М.: "1С-Паблишинг", 2015. - 420 с.

.        ГОСТ 19.701-90 (ISO 5807-85) Единая система программной документации. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения. М.: Издательство стандартов, 1994: - 20с.

.        Коссов В.В., Ливщиц В.Н., Шахназарова А.Г. Методические рекомендации по оценке эффективности инвестиционных проектов: (Вторая редакция). М.: Экономика, 2000. - 421с.

.        СанПиН 2.2.2/2.4.1340-03. Гигиенические требования к персональным электронно-вычислительным машинам и организации работы. М.: Инфра-М, 2014. - 24 с.

.        Полтев М.К. Охрана труда в машиностроении: Учебник. - М.: Высшая школа, 1980. - 294 с.

.        СНиП 2.04.95-91. Отопление, вентиляция и кондиционирование. М.: ИВЦ Госкомсанэпидемнадзора России, 1992.

.        Райзберг Б.А., Лозовский Л.Ш., Стародубцева Е.Б. Современный экономический словарь. - 2-е изд., испр. М.: ИНФРА-М, 1999. - 479 с.

Приложения

Приложение А

 

Заполненные заказчиком анкеты-опросники.

Таблица А.1 - Заработная плата

Участок учета Заработной платы

Ведение в организации

Требуемый уровень автоматизации




Д

ДР

Р

Оплата за отработанное время

1.1

Системы оплаты при повременной форме оплаты труда

1.1.1

Простая повременная по окладу (по дням)





1.1.2

Простая повременная по окладу (по часам)





1.1.3

Простая повременная по часовому тарифу





1.1.4

Повременно-премиальная по окладу (по дням)





1.1.5

Повременно-премиальная по окладу (по часам)





1.1.6

Повременно-премиальная по часовому тарифу





1.1.7

Повременно-премиальная по окладу согласно табеля (по часам)

+


+


1.1.8

Повременно-премиальная по окладу согласно табеля (по дням)





1.1.9

Повременно-премиальная по тарифу согласно табеля (по часам)

+


+


1.2

Системы оплаты при сдельной форме оплаты труда

1.2.1

Прямая сдельная





1.2.2

Сдельно-прогрессивная





1.2.3

Сдельно-премиальная





1.2.4

Косвенно-сдельная





1.2.5

Аккордная





1.3

Системы оплаты на комиссионной основе

1.3.1

На комиссионной основе (% от выручки)





1.3.2

На комиссионной основе (% от выручки не менее оклада)





1.3.3

На комиссионной основе (оклад + % от выручки)





Доплаты, надбавки и компенсации

2.1

Доплаты

2.1.1

За условия, отличающиеся от нормальных





2.1.1.1

Доплата за работы в сверхурочное время (1,5 и 2-м размере)

+


+


2.1.1.2

Доплата за работа в ночные/вечерние часы

+


+


2.1.1.3

Доплата за работу в выходные и праздничные дни

+


+


2.1.2

Стимулирующие доплаты





2.1.2.1

Доплата за совмещение профессии (должности) суммой (процентом)

+


+


2.1.2.1

Доплата за замещение временно отсутствующего работника (суммой, процентом)

+


+


2.2

Надбавки

2.2.1

Стимулирующие надбавки





2.2.1.1

Надбавка за выслугу лет (ежемесячная надбавка)





2.2.1.2

Надбавка к должностному окладу (тарифной ставке) за стаж работы в структурных подразделениях по защите государственной тайны





2.2.1.3

Ежемесячная процентная надбавка за работу со сведениями, составляющими государственную тайну





Допол.

Надбавка за профмастерство

+


+


Допол.

Надбавка за ненормированный рабочий день

+


+


2.2.2

Надбавки за разъездной и подвижной характер работы





2.2.2.1

Надбавка за подвижной характер работы





2.2.2.2

Надбавка за разъездной характер работы

+


+


2.2.2.3

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

+


+


2.2.3

За особые условия труда





2.2.3.1

Надбавки за работу в тяжелых и вредных условиях

+


+


2.2.3.2

Полевое довольствие





2.2.3.3

Надбавки работникам, направленным для выполнения монтажных, наладочных и строительных работ





2.2.4

За работу в условиях Крайнего Севера и приравненных к ним местностям





2.2.4.1

Районные коэффициенты (утвержденные местными органами, Правительством РФ)

+


+


2.2.4.2

Процентные надбавки по стажу работы в условиях Крайнего Севера и приравненных к ним местностях





2.3

Компенсации

2.3.1

Компенсационные выплаты сотрудникам при увольнении





2.3.1.1

Компенсация отпуска при увольнении

+

+



2.3.1.2

Выплата выходного пособия при увольнении

+

+



2.3.1.3

Сохраняемый заработок на период трудоустройства





2.3.2

Компенсационные выплаты, связанные с исполнением работником трудовых обязанностей





2.3.2.1

Компенсация за износ инструментов в пределах установленных норм





2.3.2.2

Компенсация за износ инструментов сверх установленных норм





2.3.2.3

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





2.3.2.4

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

+



+

2.3.3

Стоимость подарков, призов, медикаментов





2.3.3.1

Стоимость подарков за счет членских профсоюзных взносов





2.3.3.2

Стоимость подарков за счет средств предприятия





2.3.3.3





2.3.3.4

Возмещение стоимости медикаментов





2.3.4

Компенсация расходов по проезду сверх установленных норм





2.3.4.1

Расходы на проезд при переводе работников на работу в другие местности, сверхустановленных норм





2.3.5

Компенсационные выплаты на питание, топливо, проезд, жилье





2.3.5.1

Оплата питания работников сверх установленных норм





2.3.5.2

плата предоставленного работникам топлива сверх установленных норм





2.3.5.3

Оплата стоимости проезда к месту проведения отпуска и обратно





2.3.5.4

Возмещение расходов работнику по найму жилых помещений





2.3.6

Компенсация командировочных расходов





2.3.6.1

Компенсация командировочных расходов сверх установленных норм





2.3.7

Компенсация работнику за задержку выплаты заработной платы





2.3.7.1

Компенсация работнику за задержку выплаты заработной плат





Премии и выплаты стимулирующего характера

3.1

Премия разовая

+



+

3.2

Квартальная премия

+


+


3.3

Премия по итогам года

+


+


3.4

Ежегодное вознаграждение за выслугу лет

+


+


допол

Премия за выполнение ОВЗ

+



+

Вознаграждение физических лиц по договорам гражданско-правового характера

4.1

Вознаграждение лиц, не зарегистрированных в качестве индивидуальных предпринимателей

4.1.1

Договор подряда (возмездного оказания работ, услуг)

+



+

4.1.2

Авторский договор





4.1.3

Лицензионный договор





4.2

Вознаграждение лиц, зарегистрированных в качестве индивидуальных предпринимателей

4.2.1

Договоры подряда, авторские и лицензионные договоры





Оплата за неотработанное время

5.1

Отпуска

5.1.1

Оплата ежегодного оплачиваемого отпуска.

+

+



5.1.2

Оплата дополнительного отпуска

+

+



5.1.3

Оплата учебного отпуска

+

+



5.2

Оплата простоев и прогулов

5.2.1

Оплата простоя по вине работодателя (2/3 среднего заработка)

+

+



5.2.2

Оплата простоя по причинам, не зависящим от работодателя (2/3 тарифной ставки, оклада)

+

+



5.2.3

Оплата за время вынужденного прогула при восстановлении на работе незаконно уволенных работников





5.2.4

Оплата за время забастовки работникам, не участвующим в забастовке





5.3

Другие выплаты за неотработанное время

5.3.1

Оплата за дни выполнения государственных или общественных обязанностей в рабочее время.

+

+



5.3.2

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

+

+



5.3.3

Оплата за время проведения медицинского осмотра





5.3.4

Оплата за время нахождения в командировке

+

+



5.3.5

Оплата перерывов для кормления ребенка





5.3.6

Пособие по уходу за ребенком до достижения им возраста 3-х лет

+



+

Учет неотработанного времени без сохранения заработной платы

6.1

Простой по вине работника

+




6.2

Прогул (по вине работника)

+




6.3

Забастовка





6.4

Отпуск без сохранения содержания

+




Выплаты социального характера

7.1

Выплаты за счет средств Фонда социального страхования

7.1.1

Пособия гражданам, имеющим детей





7.1.1.1

Пособие по беременности и родам

+

+



7.1.1.2

Единовременное пособие женщинам, вставшим на учет в медицинских учреждениях в ранние сроки беременности

+



+

7.1.1.3

Пособие по уходу за ребенком до достижения им возраста 1,5 лет

+

+



7.1.1.4

Пособие при рождении (усыновлении) ребенка

+



+

7.1.1.5

По уходу за больным ребенком до 3-х лет (ребенком-инвалидом до 16-ти лет) при нахождении вместе с больным ребенком в стационаре

+

+



7.1.1.6

По уходу за ребенком с 3-х до 7-ми лет для состоящего в браке родителя

+

+



7.1.1.7

По уходу за ребенком с 3-х до 7-ми лет для не состоящего в браке родителя

+

+



7.1.1.8

По уходу за ребенком с 7-ми до 15-ти лет для состоящего в браке родителя

+

+



7.1.1.9

По уходу за ребенком с 7-ми до 15-ти лет (для не состоящего в браке родителя)

+

+



7.1.1.10

Оплата дополнительных выходных дней для ухода за детьми-инвалидами

+

+



7.7.2

Пособия по временной нетрудоспособности





7.1.2.1

Пособия по временной нетрудоспособности по общему заболеванию

+

+



7.1.2.2

Пособие по временной нетрудоспособности по травме в быту

+

+



7.7.5

Пособие по травме на производстве





7.1.3.1

Пособие по временной нетрудоспособности при травме на производстве

+

+



7.1.4

Прочие выплаты.





7.1.4.1

Социальное пособие на погребение

+



+

7.7.5

Страховые выплаты





7.1.5.1

Единовременные страховые выплаты





7.1.5.2

Ежемесячные страховые выплаты





7.1.6

Возмещение дополнительных расходов на медицинскую, социальную и профессиональную реабилитацию сотрудников





7.1.6.1

Компенсация на санаторно-курортное лечение

+



+

Начисление прочих доходов

8.1

Материальная помощь

+



+

8.2

Начисление дивидендов





8.3

Учет стоимости товаров (продуктов), выдаваемых в порядке натуральной оплаты

+



+

Удержания из заработной платы

9.1

Обязательные удержания

9.1.1

Налог на доходы физических лиц





9.1.1.1

Налог на доходы физических лиц, являющихся резидентами

+




9.1.1.2

Налог на доходы физических лиц, не являющихся резидентами

+




9.1.1.3

Налог на доходы с материальной выгоды, полученной от экономии на процентах за пользование заемными средствами, по вкладам

+




9.1.1.4

Налог на доходы с дивидендов





9.1.2

Удержание по соглашению об уплате алиментов

+




9.1.3

У держания по прочим исполнительным листам в пользу третьих лиц

+




9.2

Удержание по инициативе администрации предприятия

9.2.1

Удержание за причиненный предприятию материальный ущерб

+




9.2.2

Удержание за брак





9.2.3

Удержание за форменную одежду

+




9.2.4

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

+




9.3

Удержания по заявлению работника

9.3.1

Профсоюзные взносы

+




9.3.2

Удержание ссуды, ссудного процента

+




9.3.3

Прочие удержания по заявлению работника

+




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

10.1

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

10.1.1

Выплата аванса

+




10.1.2

Неполная выплата заработной платы (%)





10.1.3

Межрасчетная выплата

+




10.2

Кассовые и банковские операции по выплате заработной платы

10.2.1

Выплата заработной платы через кассу

+




10.2.2

Выплата заработной платы через банк





10.3.

Депонирование заработной платы

10.3.1

Депонирование заработной платы

+




10.3.2

Выплата с депонента

+




Начисления на заработную плату

11.1

Единый социальный налог

11.1.1

В федеральный бюджет

+




11.1.2

В Фонд социального страхования РФ (ФСС)

+




11.1.3

В Федеральный фонд обязательного медицинского страхования (ФФОМС)

+




11.1.4

В Территориальный фонд обязательного медицинского страхования (ТФОМС)

+




11.2

Страховые взносы в ПФР

11.2.1

Страховая часть пенсии

+




11.2.2

Накопительная часть пенсии.

+




11.3

Страхование от несчастных случаев на производстве

11.3.1

В Фонд социального страхования РФ (по обязательному социальному страхованию от несчастных случаев на производстве и профессиональных заболеваний)

+




11.4

Особые случаи налогообложения

11.4.1

Организация осуществляет деятельность, подпадающую под единый налог на вмененный налог





11.4.2

Организация имеет льготы по ЕСН согласно п. п.2, п.1, ст.239 НК РФ (организации инвалидов и т.д.)





11.4.3

Организация имеет льготы по ЕСН согласно п. п.1, п.1, ст.239 НК РФ (в организации числятся работники-инвалиды)





11.4.4

В организации числятся иностранные граждане (п.2 ст.239 НК РФ)





11.4.5

Организация имеет право на использование регрессивной шкалы ставок ЕСН.

+










ОТЧЕТНОСТЬ, ФОРМЫ, РЕГИСТРЫ

1

ОТЧЕТНОСТЬ В НАЛОГОВЫЕ ОРГАНЫ


"Расчет авансовых платежей по ЕСН"

+





"Налоговая декларация для организаций, выступающих в качестве работодателей по ЕСН"

+





"Индивидуальная карточка учета сумм начисленных выплат и иных вознаграждений, сумм начисленного ЕСН, а также сумм налогового вычета

+





"Налоговая карточка по учету доходов и НДФЛ (Форма 1-НДФЛ)"

+





"Справка о доходах физического лица и ЕСН (Форма 2-НДФЛ)"

+





"Реестр сведений о доходах физических лиц и ЕСН (взносе)"

+





"Заявление в ИМНС"

+




2

отчетность в пенсионный Фонд


"Расчет по авансовым платежам по страховым взносам на обязательное пенсионное страхование"

+





Отчетность и передача данных персонифицированного учета в ПФР

+




3


Расчетная ведомость по средствам фонда социального страхования по форме ФСС-4

+




4

отчетность по обособленным подразделениям


Организация ведет учет по обособленным подразделениям





5

унифицированные формы отчетности по оплате труд


Расчетно-платежная ведомость по форме Т-49

+





Расчетная ведомость по форме Т-51

+





Платежная ведомость по форме Т-53.

+





Журнал регистрации платежных ведомостей по форме № Т 53-а

+





Лицевой счет по форме № Т-54.

+





Лицевой счет по форме № Т-54а

+





Реестр депонированных сумм

+





Книга аналитического учета депонированной заработной платы и стипендий по форме № 441

+




6

налоговые регистры


Регистр учета налогов, включаемых в состав расходов

+





Учет расходов по оплате труда

+





Таблица А.2 - Кадровый учет.

Участок кадрового учета

Ведение в организации

Требуемый уровень автоматизации




Д

НП

П

1. Договоры

1.1

Трудовые договоры (контракты)

1.1.1

Трудовой договор (контракт)

+



+

1.1.2

Срочный трудовой договор (контракт)

+



+

1.1.3

Оформление трудового договора (контракта) с испытательным сроком

+



+

1.2

Договоры гражданско-правового характера

1.2.1

Договор подряда

+



+

1.2.2

Договор возмездного оказания услуг





1.2.3

Авторский договор





1.2.4

Акт о приемке работ, выполненных по трудовому договору (контракту), заключенному на время выполнения определенной работы

+



+

2. Штатно-должностной учет

2.1

Штатное расписание по форме № Т-3

+



+

3. Движение кадров

3.1

Приказы (распоряжения) и прилагаемые документы

3.1.1

Приказ (распоряжение) о приеме на работу по форме № Т-1

+



+

3.1.2

Приказ (распоряжение) о приеме работников на работу о форме № Т-1а

+



+

3.1.3

Приказ (распоряжение) о переводе на другую работу по форме № Т-5

+



+

3.1.4

Приказ (распоряжение) о переводе работников на другую работу по форме № Т-5а

+



+

3.1.5

Приказ (распоряжение) о предоставлении отпуска по форме № Т-6

+



+

3.1.6

Приказ (распоряжение) о предоставлении отпуска работникам по форме № Т-6а

+



+

3.1.7

Записка-расчет о предоставлении отпуска работнику по форме № Т-60.

+



+

3.1.8

График отпусков по форме № Т-7

+



+

3.1.9

Приказ (распоряжение) о прекращении действия трудового договора (контракта) с работником по форме №Т-8

+



+

3.1.10

Приказ (распоряжение) о прекращении действия трудового договора (контракта) с работниками по форме №Т-8а

+



+

3.1.11

Записка-расчет о прекращении действия трудового договора (контракта) с работником по форме №Т-61

+



+

3.2

Документы поличному составу

 

 

 

 

3.2.1

Приказ (распоряжение) о поощрении работника по форме № Т-11

+



+

3.2.2

Приказ (распоряжение) о поощрении работников по форме № Т-11а

+



+

3.2.3

Приказ (распоряжение) о направлении работника в командировку по форме № Т-9

+



+

3.2.4

Приказ (распоряжение) о направлении работников в командировку по форме № Т-9а

+



+

3.2.5

Командировочное удостоверение по форме № Т-10

+



+

3.2.6

Служебное задание для направления в командировку и отчет о его выполнении по форме № Т-10 а

+



+

3.2.7

Приказ о взыскании с работника (работников) предприятия

+



+

3.3

Журналы регистрации

 

 

 

 

3.3.1

Журнал регистрации приема на работу

+



+

3.3.2

Журнал регистрации увольнения с работы

+



+

3.3.3

Журнал регистрации переводов сотрудников

+



+

3.3.4

Журнал регистрации приказов по очередным отпускам

+



+

4. Персональный учет кадров (личное дело)

4.1

Учет персональных данных

 

 

 

 

4.1.2

Личная карточка (форма № Т-2)

+



+

4.1.3

Опись документов, имеющихся в личном деле

+



+

4.1.4

Журнал регистрации личных дел служащих.

+



+

4.2

Учет трудовых книжек

 

 

 

 

4.2.1

Приходно-расходная книга по учету бланков трудовых книжек и вкладышей к ним

+



+

4.2.2

Книга учета движения трудовых книжек и вкладышей к ним

+



+

4.3

Учет командировок

 

 

 

 

4.3.1

Журнал учета лиц, направленных в командировки внутри страны

+



+

4.3.2

Журнал учета лиц, направленных в зарубежные командировки

+



+

4.3.3

Журнал учета выдачи командировочных удостоверений

+



+

4.4

Учет рабочего времени.

 

 

 

 

4.4.1

Табель учета использования рабочего времени и расчета заработной платы (форма № Т-12)

+



+

4.4.2

Табель учета использования рабочего времени (форма №Т-13)

+



+

4.4.3

Журнал учета больничных листов

+



+

4.5

Справки о работе и заработной плате

 

 

 

 

4.5.1

Справка о заработной плате

+



+

4.5.2

Справка о стаже

+



+

4.5.3

Справка о месте работы

+



+

4.5.4

Журнал (книга) учета выдачи справок о заработной плате, стаже, месте работы

+



+

4.6

Справки сотрудников

 

 

 

 

4.6.1

Справка об установлении инвалидности





5. Статистический учет

5.1

Среднесписочная численность работников предприятия

+



+

5.2

Отчет о численности работников по полу и возрасту и рабочих по образованию

+



+

5.3

Сведения о распределении численности работников по размерам заработной платы

+



+

10. Дополнительно


Дополнительных данных не предоставлено


Приложение Б

 

Печатная форма документа "Квартальная премия"

"Утверждаю"

Директор ООО "СтройРемонтПодряд"

___________ /Фамилия И.О. /

Предприятие ООО "СтройРемонтПодряд"

Тип документа: квартальная премия

Таб. №

Фамилия Имя Отчество

Сумма начислений

Коэффициент

Базовая сумма

Сумма премии

<табельный номер сотрудника>

<Фамилия, инициалы сотрудника>

<Сумма начислений, базовых для премии>

<Коэффициент трудового участия>

<Сумма начислений с учетом КТУ>

<Начисленная сумма премии>

ИТОГО:

ХХХХХ

ХХХХХХ

ХХХХХХ

ХХХХХХ


Сумма премии для всех работников составляет ААААА. АА рублей

Главный бухгалтер ООО "СтройРемонтПодряд"

__________________/Фамилия И.О. /

Приложение В

 

Печатная форма документа "Вознаграждение по итогам года"

"Утверждаю"

Директор ООО "СтройРемонтПодряд"

___________ /Фамилия И.О. /

Предприятие ООО "СтройРемонтПодряд"

Тип документа: вознаграждение по итогам года

Таб. №

Фамилия Имя Отчество

Заработок за год

Стаж работы

Коэффициент

Базовая сумма

Сумма вознаграждения

<табельный номер сотрудника>

<Фамилия, инициалы сотрудника>

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

<Стаж работы в организации лет и месяцев>

<Коэффициент стажа>

<Сумма начислений с учетом коэффициента стажа>

<Начисленная сумма вознаграждения>

ИТОГО:


ХХХХХ

ХХХХХХ

ХХХХХХ

ХХХХХХ


Сумма премии для всех работников составляет ААААА. АА рублей

Главный бухгалтер ООО "СтройРемонтПодряд"

____________ /Фамилия И.О. /

Приложение Г

 

31/03/08 11: 04: 38

Предприятие: ООО "СтройРемонтПодряд"

[Расчеты с поставщиками (с НДС)]

Валюта: РУБ Рубль РФ

Сведения о контрагенте

Всего задолженность [РУБ]

Шифр

Наименование

Дебетовая

Кредитовая

000003

ТО Охрана г. Казань

 

45,00

000004

Охрана ТО г. Магнитогорск

 

735,00

000005

Предприниматель Попков И.

51,92

 

000015

А/Ф ВАМИН-Минзаля'

 

124 752,15

000027

ФГУЗ 'Набережночел. дезста

 

10 903, 20

000050

ООО АРСЛАН

 

23 937,48

000060

ООО'Агава К'

 

18,90

000062

Челн. предпр. АООТ 'Стройме

 

4 011 317,82

000063

ОАО'ЧЕЛНЫ-ЛАДА'

 

65 799,18

000069

ОАО 'ЧЕЛНЫНЕФТЕПРОДУКТ'

73 929,06

 

000072

АО ПАК

 

14 816,28

000074

Департамент главн. энергет

62 759,56

 

000094

ООО'Кран-Сервис' ИДЦ

 

8 509,64

000096

ОАО 'Камснаб'

25 198,06

 

000112

ФГУП'Охрана'МВД г. Наб. Чел

 

41 278,53

000131

Фил. ЗАО'РОСТЭК-Татарстан'

 

323,47

000133

ЧМУС-2 'Татсантехмонтаж'

10 917,97

 

000150

ООО'ТатЦентр'

1 727,24

 

000164

ООО Агроремонтсервис

 

5 951,92

000165

ООО 'Полет'

 

13 389,83

000181

ООО'РИД-маркет'

154,89

 

000182

ОАО'Компания Татглавснаб'

8 000,00

 

000186

Елаб. 'Стальконструкция'

 

1 631,91

000202

ООО'Транс-Ойл' г. Казань

 

94 358,40

000209

ООО'Бау Траст-Комплект'

6 571,45

 

000215

ООО'Бухгалтер-ПРО'

 

2 300,00

000236

ООО'НЗС и МК'

 

455,60

000266

ООО СЭП Экосервис

16 174,01

 

000306

ОАО 'Прокатмонтаж'

 

92 580,47

000317

ЗАО'Востокмонтажмеханизац

 

27 545,28

000331

АО 'Монтажник'г. Магнитог.

 

9 884,33

000346

ООО 'Мехснаб'г. Магнитогор

 

3 560,43

000355

ООО ПФ ТрансТехСервис-3

3,00

 

000360

ОАО 'РМЗ К-700'

 

19 092,78

000364

ТОО ПКФ 'Гаммон'

158 350,00

 

000386

ЧМУ ОАО'Татэлектромонтаж'

 

4 512,01

000399

МСШСП г. Магнитогорск

 

165 695,73

Итого

363837,16

4743395,34

Директор: Аппаков А.М.

Главный бухгалтер: Минкова Е.А.


Приложение Д

 

Листинг модуля формы документа "ВводДанныхОВыработкеНаМеханизмах"

Перем мГоловнаяОрганизация;

Перем ОсновнойВидОплаты, ПустойВидОплаты;

Функция ПолучитьДоступныеВидыОплат (Механизм)

ТЗРегистра = РегистрыСведений. лс_ОплатаРаботНаМеханизмах. СрезПоследних (Дата, Новый Структура ("Механизм", Механизм));

Список = Новый СписокЗначений;

Список. ЗагрузитьЗначения (ТЗРегистра. ВыгрузитьКолонку ("ВидОплаты"));

Возврат Список;

КонецФункции // ПолучитьДоступныеВидыОплат (ТекСтрока. Механизм) ()

Функция ЧислоСтрок (Механизм, ВидОплаты, Сотрудник)

Возврат Выработка. НайтиСтроки (Новый Структура ("Механизм, ВидОплаты, Сотрудник", Механизм, ВидОплаты, Сотрудник)). Количество ();

КонецФункции // ЕстьСтрока ()

Функция ПолучитьРазмер (Механизм, ВидОплаты)

Возврат РегистрыСведений. лс_ОплатаРаботНаМеханизмах. ПолучитьПоследнее (Дата, Новый Структура ("Механизм, ВидОплаты", Механизм, ВидОплаты)). Размер;

КонецФункции //

Процедура Пересчет (СтрокаТЧ)

Если СтрокаТЧ. ВидОплаты = ОсновнойВидОплаты Тогда

СтрокаТЧ. Результат = СтрокаТЧ. Размер * СтрокаТЧ. ВыработкаЧас;

Иначе

СтрокаТЧ. Результат = 0;

КонецЕсли;

КонецПроцедуры

Процедура КоманднаяПанель1Подбор (Кнопка)

ПроцедурыУправленияПерсоналом. ОткрытьФормуВыбораСотрудникаОрганизации (ЭлементыФормы. Выработка, Ссылка, Ложь, Дата, мГоловнаяОрганизация, 1);

КонецПроцедуры

Процедура ВыработкаСотрудникНачалоВыбора (Элемент, СтандартнаяОбработка)

ПроцедурыУправленияПерсоналом. ОткрытьФормуВыбораСотрудникаОрганизации (Элемент, Ссылка, Истина, Дата, мГоловнаяОрганизация, 1, СтандартнаяОбработка, Элемент. Значение);

КонецПроцедуры

Процедура ПриОткрытии ()

Если ЭтоНовый () Тогда // проверить объект на то, что он еще не внесен в ИБ

// Заполнить реквизиты значениями по умолчанию.

ОбщегоНазначения. ЗаполнитьШапкуДокумента (ЭтотОбъект, глЗначениеПеременной ("глТекущийПользователь"));

КонецЕсли;

РаботаСДиалогами. УстановитьДоступностьПоляВводаНомера (Метаданные (), ЭтаФорма, ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы. Номер);

// Заполним реквизит формы МесяцСтрока.

МесяцСтрока = РаботаСДиалогами. ДатаКакМесяцПредставление (ПериодРегистрации);

// Вывести в заголовке формы статус документа (новый, не проведен, проведен).

РаботаСДиалогами. УстановитьЗаголовокФормыДокумента (, ЭтотОбъект, ЭтаФорма);

// Запомнить текущие значения реквизитов формы.

мТекущаяДатаДокумента = Дата;

// Получим и запомним ссылку на головную организацию

мГоловнаяОрганизация = ОбщегоНазначения. ГоловнаяОрганизация (Организация);

КонецПроцедуры

Процедура ПериодРегистрацииПриИзменении (Элемент)

РаботаСДиалогами. ДатаКакМесяцПодобратьДатуПоТексту (Элемент. Значение, ПериодРегистрации);

Элемент. Значение = РаботаСДиалогами. ДатаКакМесяцПредставление (ПериодРегистрации);

КонецПроцедуры // ПериодРегистрацииПриИзменении ()

// Процедура - обработчик события "Регулирование" поля ввода периода регистрации.

Процедура ПериодРегистрацииРегулирование (Элемент, Направление, СтандартнаяОбработка)

ПериодРегистрации = ДобавитьМесяц (ПериодРегистрации, Направление);

Элемент. Значение = РаботаСДиалогами. ДатаКакМесяцПредставление (ПериодРегистрации);

КонецПроцедуры // ПериодРегистрацииРегулирование ()

// Процедура - обработчик события "Очистка" поля ввода периода регистрации.

Процедура ПериодРегистрацииОчистка (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

КонецПроцедуры // ПериодРегистрацииОчистка ()

// Процедура - обработчик события "НачалоВыбораИзСписка" поля ввода периода регистрации.

Процедура ПериодРегистрацииНачалоВыбораИзСписка (Элемент, СтандартнаяОбработка)

РаботаСДиалогами. НачалоВыбораИзСпискаПредставленияПериодаРегистрации (Элемент, СтандартнаяОбработка, ПериодРегистрации, ЭтаФорма);

КонецПроцедуры // ПериодРегистрацииНачалоВыбораИзСписка ()

// Процедура - обработчик события "АвтоПодборТекста" поля ввода периода регистрации.

Процедура ПериодРегистрацииАвтоПодборТекста (Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)

РаботаСДиалогами. ДатаКакМесяцАвтоПодборТекста (Текст, ТекстАвтоПодбора, СтандартнаяОбработка);

КонецПроцедуры // ПериодРегистрацииАвтоПодборТекста ()

// Процедура - обработчик события "ОкончаниеВводаТекста" поля ввода периода регистрации.

Процедура ПериодРегистрацииОкончаниеВводаТекста (Элемент, Текст, Значение, СтандартнаяОбработка)

РаботаСДиалогами. ДатаКакМесяцОкончаниеВводаТекста (Текст, Значение, СтандартнаяОбработка);

КонецПроцедуры // ПериодРегистрацииОкончаниеВводаТекста ()

Процедура ОбработкаВыбора (ЗначениеВыбора, Источник)

Если ТипЗнч (ЗначениеВыбора) = Тип ("Структура") Тогда

Команда = ""; Реквизиты = "";

Если ЗначениеВыбора. Свойство ("Команда", Команда) и Команда = "ЗаполнитьСписокРаботников" Тогда

ВременнаяТаблица = ЗначениеВыбора. Данные. Выгрузить ();

МассивСотрудников = ВременнаяТаблица. ВыгрузитьКолонку ("Сотрудник");

ВременнаяТаблица. Колонки. Подразделение. Имя = "ПодразделениеОрганизации";

ВременнаяТаблица. Колонки. Добавить ("Авторасчет");

ВременнаяТаблица. ЗаполнитьЗначения (Истина, "Авторасчет");

Выработка. Загрузить (ВременнаяТаблица);

КонецЕсли;

КонецЕсли;

КонецПроцедуры

Процедура ВыработкаОбработкаВыбора (Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

Если ТипЗнч (ВыбранноеЗначение) <> Тип ("СправочникСсылка. СотрудникиОрганизаций") Тогда

Возврат;

КонецЕсли;

СтандартнаяОбработка = Ложь;

Если Выработка. НайтиСтроки (Новый Структура ("Сотрудник", ВыбранноеЗначение)). Количество () = 0 Тогда

СтрокаТабличнойЧасти = Выработка. Добавить ();

СтрокаТабличнойЧасти. Сотрудник= ВыбранноеЗначение;

СтрокаТабличнойЧасти. Авторасчет= Истина;

ЭлементыФормы. Выработка. ТекущаяСтрока = СтрокаТабличнойЧасти;

ПроцедурыУправленияПерсоналом. ПроставитьДанныеСтроки (ВыбранноеЗначение, Дата, ЭлементыФормы. Выработка);

КонецЕсли;

КонецПроцедуры

Процедура ВыработкаСотрудникПриИзменении (Элемент)

ПроцедурыУправленияПерсоналом. ПроставитьДанныеСтроки (Элемент. Значение, ПериодРегистрации, ЭлементыФормы. Выработка);

КонецПроцедуры

Процедура КоманднаяПанель1Заполнить (Кнопка)

Если Выработка. Количество () > 0 Тогда

ТекстВопроса = "Перед заполнением табличные части будут очищены. Заполнить?";

Ответ = Вопрос (ТекстВопроса, РежимДиалогаВопрос. ДаНет,, КодВозвратаДиалога. Да,);

Если Ответ <> КодВозвратаДиалога. Да Тогда

Возврат;

КонецЕсли;

Выработка. Очистить ();

КонецЕсли;

мИмяЗаполняемойТаблицы = "Выработка";

ПроцедурыУправленияПерсоналом. ОткрытьФормуОтбораСпискаРаботников (ЭтаФорма, ПериодРегистрации,, Организация);

// ПроцедурыУправленияПерсоналом. ОткрытьФормуОтбораСпискаРаботников (ЭтаФорма, ПериодРегистрации,, Организация,,,,"РазовыеРасчеты", Новый Структура ("ВидРасчета, Показатель1, ДатаНачала, ДатаОкончания", ПланыВидовРасчета. ОсновныеНачисленияОрганизаций. ПустаяСсылка (),0, Дата (1,1,1), Дата (1,1,1)));

КонецПроцедуры

Процедура ВыработкаПередНачаломИзменения (Элемент, Отказ)

Если Элемент. ТекущаяКолонка. Имя = "ВидОплаты" Тогда

// проверим, выбран ли механизм

Если Элемент. ТекущаяСтрока. Механизм. Пустая () Тогда

Отказ = истина;

КонецЕсли;

КонецЕсли;

КонецПроцедуры

Процедура ВыработкаМеханизмПриИзменении (Элемент)

Если ЧислоСтрок (Элемент. Значение, ОсновнойВидОплаты, ЭлементыФормы. Выработка. ТекущаяСтрока. Сотрудник) =0 Тогда

ЭлементыФормы. Выработка. ТекущаяСтрока. ВидОплаты = ОсновнойВидОплаты;

ЭлементыФормы. Выработка. ТекущаяСтрока. Размер = ПолучитьРазмер (ЭлементыФормы. Выработка. ТекущаяСтрока. Механизм, ЭлементыФормы. Выработка. ТекущаяСтрока. ВидОплаты);

Пересчет (ЭлементыФормы. Выработка. ТекущаяСтрока);

Иначе

ЭлементыФормы. Выработка. ТекущаяСтрока. ВидОплаты = ПустойВидОплаты;

КонецЕсли;

ОбработкаИзмененияВидаОплаты (ЭлементыФормы. Выработка. ТекущаяСтрока);

КонецПроцедуры

Процедура ВыработкаПередОкончаниемРедактирования (Элемент, НоваяСтрока, ОтменаРедактирования, Отказ)

Если не ОтменаРедактирования Тогда

ТекСтрока = Элемент. ТекущаяСтрока;

ТекКолонка = Элемент. ТекущаяКолонка;

Если ЧислоСтрок (ТекСтрока. Механизм, ТекСтрока. ВидОплаты, ТекСтрока. Сотрудник) >1 Тогда

Сообщить ("В строке " + ТекСтрока. НомерСтроки + " дублируется комбинация ключевых полей!");

ТекСтрока. ВидОплаты = ПустойВидОплаты;

Отказ = истина;

Возврат;

КонецЕсли;

Если ТекСтрока. ВидОплаты <> ОсновнойВидОплаты Тогда

Если ЧислоСтрок (ТекСтрока. Механизм, ОсновнойВидОплаты, ТекСтрока. Сотрудник) =0 Тогда

Сообщить ("У сотрудника " + ТекСтрока. Сотрудник + " на механизме " + ТекСтрока. Механизм + " не введен основной вид оплаты!");

ТекСтрока. ВидОплаты = ПустойВидОплаты;

Отказ = истина;

Возврат;

КонецЕсли;

КонецЕсли;

КонецЕсли;

КонецПроцедуры

Процедура ВыработкаПриНачалеРедактирования (Элемент, НоваяСтрока, Копирование)

ТекСтрока = Элемент. ТекущаяСтрока;

Если Копирование Тогда

ТекКолонка = Элемент. ТекущаяКолонка;

ТекСтрока. ВидОплаты = ПустойВидОплаты;

ТекСтрока. ВыработкаЧас = 0;

ТекСтрока. Результат = 0;

КонецЕсли;

Если НоваяСтрока Тогда

ТекСтрока. Авторасчет = Истина;

КонецЕсли;

КонецПроцедуры

Процедура КоманднаяПанель1Рассчитать (Кнопка)

Если не РаботаСДиалогами. ЗаписатьДокументПередВыполнениемДействия (ЭтотОбъект, ЭтаФорма, "Перед расчетом документ необходимо записать. Записать документ?") Тогда

Возврат;

КонецЕсли;

Запрос = Новый Запрос;

Запрос. Текст = "ВЫБРАТЬ

|Выработка. НомерСтроки,

|ВЫБОР

|КОГДА Выработка. ВидОплаты = &Основной

|ТОГДА Выработка. ВыработкаЧас * ОсновнойТариф. Размер

|ИНАЧЕ Выработка. ВыработкаЧас * ОсновнойТариф. Размер * ПрочиеТарифы. Размер / 100

|КОНЕЦ КАК Результат,

|ВЫБОР

|КОГДА Выработка. ВидОплаты = &Основной

|ТОГДА ОсновнойТариф. Размер

|ИНАЧЕ ПрочиеТарифы. Размер

|КОНЕЦ КАК Размер

|ИЗ

|Документ. лс_ВводДанныхОВыработкеНаМеханизмах. Выработка КАК Выработка

|ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ РАЗЛИЧНЫЕ

|лс_ВводДанныхОВыработкеНаМеханизмахВыработка. Механизм КАК Механизм,

|лс_ОплатаРаботНаМеханизмахСрезПоследних. Размер КАК Размер

|ИЗ

|Документ. лс_ВводДанныхОВыработкеНаМеханизмах. Выработка КАК лс_ВводДанныхОВыработкеНаМеханизмахВыработка

|ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений. лс_ОплатаРаботНаМеханизмах. СрезПоследних (&ДатаДок, ВидОплаты = &Основной) КАК лс_ОплатаРаботНаМеханизмахСрезПоследних

|ПО лс_ВводДанныхОВыработкеНаМеханизмахВыработка. Механизм = лс_ОплатаРаботНаМеханизмахСрезПоследних. Механизм) КАК ОсновнойТариф

|ПО Выработка. Механизм = ОсновнойТариф. Механизм

|ПО Выработка. Механизм = ПрочиеТарифы. Механизм

|И Выработка. ВидОплаты = ПрочиеТарифы. ВидОплаты

|ГДЕ

|Выработка. Ссылка = &Ссылка";

Запрос. УстановитьПараметр ("Основной", ОсновнойВидОплаты);

Запрос. УстановитьПараметр ("ДатаДок", Дата);

Запрос. УстановитьПараметр ("Ссылка", Ссылка);

ТабРезультат = Запрос. Выполнить (). Выгрузить ();

Для каждого СтрТЧ Из Выработка Цикл

СтрТаб = ТабРезультат. Найти (СтрТЧ. НомерСтроки, "НомерСтроки");

Если СтрТаб <> Неопределено Тогда

СтрТЧ. Результат = СтрТаб. Результат;

СтрТЧ. Размер = СтрТаб. Размер;

КонецЕсли;

КонецЦикла;

КонецПроцедуры

Процедура ВыработкаРезультатПриИзменении (Элемент)

ЭлементыФормы. Выработка. ТекущаяСтрока. Авторасчет = Ложь;

КонецПроцедуры

Процедура ВыработкаВыработкаПриИзменении (Элемент)

Пересчет (ЭлементыФормы. Выработка. ТекущаяСтрока);

КонецПроцедуры

Процедура ВыработкаВидОплатыНачалоВыбора (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

ТекСтрока = ЭлементыФормы. Выработка. ТекущаяСтрока;

СписокВидовОплат = ПолучитьДоступныеВидыОплат (ТекСтрока. Механизм);

ЭлементСписка = ВыбратьИзСписка (СписокВидовОплат, Элемент, СписокВидовОплат. НайтиПоЗначению (Элемент. Значение));

Если ЭлементСписка <> Неопределено Тогда

Элемент. Значение = ЭлементСписка. Значение;

ТекСтрока. Размер = ПолучитьРазмер (ТекСтрока. Механизм, Элемент. Значение);

Пересчет (ТекСтрока);

КонецЕсли;

КонецПроцедуры

ОсновнойВидОплаты= Справочники. лс_ВидыОплаты. ЧасовойТариф;

ПустойВидОплаты= Справочники. лс_ВидыОплаты. ПустаяСсылка ();

Приложение Е

 

Листинг модуля документа "Доплата из коллективного фонда по итогам месяца"

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

// ПЕРЕМЕННЫЕ МОДУЛЯ

Перем мТекущаяДатаДокумента;

Перем мДеревоМакетов; // Хранит дерево макетов печатных форм

Перем мПодменюПечати; // Хранит элемент управления подменю печати

Перем мПечатьПоУмолчанию; // Хранит элемент управления кнопку печать по умолчанию

Перем мКнопкиЗаполненияТЧ; // Хранит дерево кнопок подменю заполнение ТЧ

Перем мСтарыйРезультат; // Хранит "Результат" текущей строки

Перем мСтароеФизлицо; // Хранит ссылку на физлицо, для формирования имени кнопки расчета по работнику

Перем мГоловнаяОрганизация; // Хранит ссылку на головную организацию

Перем мМассивЭУ; // Массив ЭУ видимостью которых необходимо управлять в зависимости от учетной политики по персоналу

Перем ПоправочныйКоэффициент;

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

// ПРОЦЕДУРЫ И ФУНКЦИИ ОБЩЕГО НАЗНАЧЕНИЯ

Процедура ПриСменеПериодаРегистрации ()

ДатаНачалаБП = НачалоМесяца (ПериодРегистрации);

ДатаОкончанияБП = КонецМесяца (ПериодРегистрации);

КонецПроцедуры

Функция ПолучитьПремиюВсего ()

Рез = 0;

Для каждого СтрТаб Из Начисления Цикл

ПромРез =? (СтрТаб. База<>0, СтрТаб. База, СтрТаб. Результат);

Рез = Рез + ПромРез*СтрТаб. КТУ;

КонецЦикла;

ВозвратРез;

КонецФункции

// Процедура устанавливает подменю "Заполнить" в командных панелях ТЧ документа при необходимости

Процедура УстановитьКнопкиПодменюЗаполненияТЧ ()

СоответствиеТЧ = Новый Соответствие;

СоответствиеТЧ. Вставить (ЭлементыФормы. Начисления, ЭлементыФормы. КоманднаяПанельНачисления);

мКнопкиЗаполненияТЧ = РаботаСДиалогами. СформироватьПодменюЗаполненияТЧ (Ссылка, СоответствиеТЧ, Новый Действие ("НажатиеНаДополнительнуюКнопкуЗаполненияТЧ"));

КонецПроцедуры // УстановитьКнопкиПодменюЗаполненияТЧ ()

// Процедура устанавливает подменю "Печать" и кнопку "Печать по умолчанию" при необходимости

Процедура УстановитьКнопкиПечати ()

мДеревоМакетов = РаботаСДиалогами. ПолучитьДеревоМакетовПечати (Ссылка, ПолучитьСтруктуруПечатныхФорм (), Новый Действие ("ОсновныеДействияФормыПечать"), Новый Действие ("ОсновныеДействияФормыУстановитьПечатьПоУмолчанию"));

РаботаСДиалогами. УстановитьПодменюПечати (мПодменюПечати, ЭлементыФормы. ОсновныеДействияФормы, мДеревоМакетов. Строки. Количество () > 0);

РаботаСДиалогами. УстановитьПечатьПоУмолчанию (мПечатьПоУмолчанию, ЭлементыФормы. ОсновныеДействияФормы, мДеревоМакетов, Метаданные (). Имя, Новый Действие ("ОсновныеДействияФормыПечатьПоУмолчанию"));

Если Не мПодменюПечати = Неопределено Тогда

РаботаСДиалогами. СформироватьПодменю (мДеревоМакетов, мПодменюПечати, Истина, Истина);

КонецЕсли;

КонецПроцедуры // УстановитьКнопкиПечати ()

// В зависимости от видимости колонок подпись "Итого: " вписывается колонке, предшествующей колонке Результат

Процедура УстановитьТекстИтого ()

КоллекцияКолонок = ЭлементыФормы. Начисления. Колонки;

ИндексКолонкиРезультат = КоллекцияКолонок. Индекс (КоллекцияКолонок. Результат);

// очищаем текст подвала всех колонок

Для каждого Колонка Из КоллекцияКолонок Цикл

Если Колонка. Имя <> "Результат" Тогда

Колонка. ТекстПодвала = ""

КонецЕсли;

КонецЦикла;

// вписывать надпись будем только тогда, когда слева от результатов есть еще одна колонка

Если ИндексКолонкиРезультат > 0 Тогда

ИндексПредшествующейКолонки = ИндексКолонкиРезультат - 1;

// ищем предшествующую видимую колонку

Пока ИндексПредшествующейКолонки >= 0 Цикл

Колонка = КоллекцияКолонок. Получить (ИндексПредшествующейКолонки);

Если Колонка. Видимость Тогда

Прервать;

КонецЕсли;

ИндексПредшествующейКолонки = ИндексПредшествующейКолонки - 1;

КонецЦикла;

// вписывать надпись можем не в любую колонку, а только в некоторые

Если ИндексПредшествующейКолонки >= 0 Тогда

ИмяПредшествующейКолонки = Колонка. Имя;

Если ИмяПредшествующейКолонки = "Авторасчет"

Или ИмяПредшествующейКолонки = "Сотрудник"

Или ИмяПредшествующейКолонки = "Размер" Тогда

Колонка. ТекстПодвала = "Итого: "

КонецЕсли;

КонецЕсли;

КонецЕсли;

КонецПроцедуры // УстановитьТекстИтого ()

// Выставляет автоотметку незаполненного базового периода, если это требуется и

// переписывает название колонки в т.п.

Процедура УправлениеВнешнимВидомФормы (ПриОткрытии = Ложь)

ЭтоПремияПроцентом = ВидРасчета. СпособРасчета = Перечисления. СпособыРасчетаОплатыТруда. Процентом;

НеобходимБазовыйПериод = ЭтоПремияПроцентом Или ВидРасчета. ВидПремии = Перечисления. ВидыПремии. ГодоваяПремия;

ЭлементыФормы. Начисления. Колонки. Размер. ТекстШапки =? (ЭтоПремияПроцентом,"Процент","Сумма");

Если Не ПриОткрытии или Не ЭтоПремияПроцентом Тогда

ЭлементыФормы. Начисления. Колонки. Размер. Видимость = ЭтоПремияПроцентом;

КонецЕсли;

ЭлементыФормы. ДатаНачалаБП. АвтоОтметкаНезаполненного= НеобходимБазовыйПериод;

ЭлементыФормы. ДатаНачалаБП. ОтметкаНезаполненного= ЭлементыФормы. ДатаНачалаБП. АвтоОтметкаНезаполненного И НЕ ЗначениеЗаполнено (ДатаНачалаБП);

ЭлементыФормы. ДатаОкончанияБП. АвтоОтметкаНезаполненного= НеобходимБазовыйПериод;

ЭлементыФормы. ДатаОкончанияБП. ОтметкаНезаполненного= ЭлементыФормы. ДатаОкончанияБП. АвтоОтметкаНезаполненного И НЕ ЗначениеЗаполнено (ДатаОкончанияБП);

УстановитьТекстИтого ();

КонецПроцедуры // УправлениеВнешнимВидомФормы ()

// Удаляет кнопку из набора кнопок, если она существует

Процедура УдалитьКнопкуИзНабора (ИмяКнопки, НаборКнопок)

Кнопка = НаборКнопок. Найти (ИмяКнопки);

Если Кнопка <> Неопределено Тогда

НаборКнопок. Удалить (НаборКнопок. Индекс (Кнопка));

КонецЕсли;

КонецПроцедуры // УдалитьКнопкуИзНабора ()

// Управляет видимостью элементов формы, зависящих от наличия перерассчитываемого документа

Процедура ОбновитьВидимостьПоПерерассчитываемомуДокументу ()

// Заполнение команд подменю "Заполнить"

КнопкиЗаполнить = ЭлементыФормы. ДействияФормы. Кнопки. ПодменюЗаполнить. Кнопки;

ДействиеПоКнопке = Новый Действие ("ДействияФормыЗаполнить");

Если ЗначениеЗаполнено (ПерерассчитываемыйДокумент) Тогда

УдалитьКнопкуИзНабора ("СписокРаботников", КнопкиЗаполнить);

Если КнопкиЗаполнить. Найти ("ПоПерерассчитываемомуДокументу") = Неопределено Тогда

КнопкиЗаполнить. Вставить (0, "ПоПерерассчитываемомуДокументу", ТипКнопкиКоманднойПанели. Действие,"По перерассчитываемому документу", ДействиеПоКнопке);

КонецЕсли;

Иначе

УдалитьКнопкуИзНабора ("ПоПерерассчитываемомуДокументу", КнопкиЗаполнить);

Если КнопкиЗаполнить. Найти ("СписокРаботников") = Неопределено Тогда

КнопкиЗаполнить. Вставить (0, "СписокРаботников", ТипКнопкиКоманднойПанели. Действие,"Списком работников", ДействиеПоКнопке);

КонецЕсли;

КонецЕсли;

КонецПроцедуры // ОбновитьВидимостьПоПерерассчитываемомуДокументу ()

// Активизирует строки табличных частей документа после заполнения

Процедура УстановитьТекущуюСтрокуТабличнойЧасти ()

мСтароеФизлицо = Справочники. ФизическиеЛица. ПустаяСсылка ();

// активизируем во всех табличных частях 1-ю строку

Если Начисления. Количество () > 0 Тогда

СтрокаТЧ = Начисления. Получить (0);

ЭлементыФормы. Начисления. ТекущаяСтрока = СтрокаТЧ;

КонецЕсли;

КонецПроцедуры // УстановитьТекущуюСтрокуТабличнойЧасти ()

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

// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ ФОРМЫ

// Процедура - обработчик события "ПередОткрытием" формы.

Процедура ПередОткрытием (Отказ, СтандартнаяОбработка)

// Установка кнопок печати

УстановитьКнопкиПечати ();

// Установка кнопок заполнение ТЧ

УстановитьКнопкиПодменюЗаполненияТЧ ();

КонецПроцедуры // ПередОткрытием ()

Процедура ПриОткрытии ()

Если ЭтоНовый () Тогда // проверить объект на то, что он еще не внесен в ИБ

// Заполнить реквизиты значениями по умолчанию.

ОбщегоНазначения. ЗаполнитьШапкуДокумента (ЭтотОбъект, глЗначениеПеременной ("глТекущийПользователь"));

// АБС

ВидРасчета = ВосстановитьЗначение ("ВидРасчетаПремияКРО");

ПоправочныйКоэффициент = 1;

ЧислоМесяцев = 1;

ПриСменеПериодаРегистрации ();

// -АБС

КонецЕсли;

// АБС

НачисленоПремии = ПолучитьПремиюВсего ();

Если НачисленоПремии>0 Тогда

ПоправочныйКоэффициент = Окр (СуммаКРаспределению/НачисленоПремии,4);

ЭлементыФормы. ТекстКоэффициента. Заголовок = "Справочно: коэффициент пересчета = " + ПоправочныйКоэффициент;

Иначе

ПоправочныйКоэффициент = 1;

ЭлементыФормы. ТекстКоэффициента. Заголовок = "";

КонецЕсли;

// -АБС

РаботаСДиалогами. УстановитьДоступностьПоляВводаНомера (Метаданные (), ЭтаФорма, ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы. Номер);

// Заполним реквизит формы МесяцСтрока.

МесяцСтрока = РаботаСДиалогами. ДатаКакМесяцПредставление (ПериодРегистрации);

СтруктураКолонок = Новый Структура ();

// Установить колонки, видимостью которых пользователь управлять не может.

СтруктураКолонок. Вставить ("Сотрудник");

СтруктураКолонок. Вставить ("Размер");

// Установить ограничение - изменять видимость колонок для табличной части Начисления

ОбработкаТабличныхЧастей. УстановитьИзменятьВидимостьКолонокТабЧасти (ЭлементыФормы. Начисления. Колонки, СтруктураКолонок);

// Активизируем табличную часть

ТекущийЭлемент = ЭлементыФормы. Начисления;

// Вывести в заголовке формы статус документа (новый, не проведен, проведен).

РаботаСДиалогами. УстановитьЗаголовокФормыДокумента (, ЭтотОбъект, ЭтаФорма);

// Запомнить текущие значения реквизитов формы.

мТекущаяДатаДокумента = Дата;

// Получим и запомним ссылку на головную организацию

мГоловнаяОрганизация = ОбщегоНазначения. ГоловнаяОрганизация (Организация);

// Установим видимость реквизитов в зависимости от уч. политики по персоналу организаций

мМассивЭУ = Новый Массив ();

мМассивЭУ. Добавить (ЭлементыФормы. Начисления. Колонки. ТабельныйНомерСтрока);

РаботаСДиалогами. УстановитьВидимостьЭУПоУчетнойПолитикеПоПерсоналу (мМассивЭУ, глЗначениеПеременной ("глУчетнаяПолитикаПоПерсоналуОрганизации"), Организация);

УправлениеВнешнимВидомФормы (Истина);

// Установим видимость в зависимости от наличия перерассчитываемого документа

ОбновитьВидимостьПоПерерассчитываемомуДокументу ();

// Установить активный реквизит.

Если Не РаботаСДиалогами. АктивизироватьРеквизитВФорме (ЭтотОбъект, ЭтаФорма) Тогда

ТекущийЭлемент = ЭлементыФормы. Начисления;

КонецЕсли;

КонецПроцедуры // ПриОткрытии ()

Процедура ПослеЗаписи ()

// Установка кнопок печати

УстановитьКнопкиПечати ();

// Вывести в заголовке формы статус документа (новый, не проведен, проведен).

РаботаСДиалогами. УстановитьЗаголовокФормыДокумента (, ЭтотОбъект, ЭтаФорма);

РаботаСДиалогами. ОбновитьПодсказкуКодНомерОбъекта (ЭтотОбъект. Метаданные (), ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы. Номер);

// АБС

СохранитьЗначение ("ВидРасчетаПремияКРО", ВидРасчета);

// -АБС

КонецПроцедуры // ПослеЗаписи ()

// Процедура - обработчик события "ОбработкаВыбора" формы.

Процедура ОбработкаВыбора (ЗначениеВыбора, Источник)

Если ТипЗнч (ЗначениеВыбора) = Тип ("Структура") Тогда

Команда = "";

Реквизиты = "";

Если ЗначениеВыбора. Свойство ("Команда", Команда) и Команда = "ЗаполнитьСписокРаботников" Тогда

ВременнаяТаблица = ЗначениеВыбора. Данные. Выгрузить ();

Если ЗначениеВыбора. Свойство ("Реквизиты",Реквизиты) Тогда

ИмяКолонки =? (ВидРасчета. СпособРасчета = Перечисления. СпособыРасчетаОплатыТруда. Процентом,"Размер","Результат");

ВременнаяТаблица. Колонки. Добавить (ИмяКолонки);

ВременнаяТаблица. ЗаполнитьЗначения (Реквизиты. Размер, ИмяКолонки);

КонецЕсли;

ВременнаяТаблица. Колонки. Добавить ("Авторасчет");

ВременнаяТаблица. ЗаполнитьЗначения (Истина,"Авторасчет");

// АБС

ВременнаяТаблица. Колонки. Добавить ("КТУ");

ВременнаяТаблица. ЗаполнитьЗначения (1,"КТУ");

ВременнаяТаблица. ЗаполнитьЗначения (100,"Размер");

// -АБС

Начисления. Загрузить (ВременнаяТаблица);

КонецЕсли;

КонецЕсли;

КонецПроцедуры // ОбработкаВыбора ()

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

// ПРОЦЕДУРЫ - ДЕЙСТВИЯ КОМАНДНЫХ ПАНЕЛЕЙ ФОРМЫ

// Процедура вызывается при выборе пункта подменю "Движения документа по регистрам" // меню "Перейти" командной панели формы. Процедура отрабатывает печать движений // документа по регистрам.

Процедура ДействияФормыДвиженияДокументаПоРегистрам (Кнопка)

РаботаСДиалогами. НапечататьДвиженияДокумента (Ссылка);

КонецПроцедуры // ДействияФормыДвиженияДокументаПоРегистрам ()

// Процедура-обработчик события нажатия кнопки "Рассчитать"

Процедура ДействияФормыРассчитатьВсе (Кнопка)

Если СуммаКРаспределению=0 Тогда

Предупреждение ("Не задана сумма к распределению. Расчет невозможен");

Возврат;

КонецЕсли;

Если ВидРасчета. СпособРасчета = Перечисления. СпособыРасчетаОплатыТруда. Процентом Тогда

Если НЕ РаботаСДиалогами. ЗаписатьДокументОтменивПроведениеПередВыполнениемДействия (ДокументОбъект, ЭтаФорма, "рассчитать") Тогда

Возврат;

КонецЕсли;

ОбработкаКомментариев = глЗначениеПеременной ("глОбработкаСообщений");

ОбработкаКомментариев. УдалитьСообщения ();

РассчитатьПремию ();

ОбработкаКомментариев. ПоказатьСообщения ();

// АБС

НачисленоПремии = ПолучитьПремиюВсего ();

Если НачисленоПремии>0 Тогда

ПоправочныйКоэффициент = Окр (СуммаКРаспределению/НачисленоПремии,4);

ЭлементыФормы. ТекстКоэффициента. Заголовок = "Справочно: коэффициент пересчета = " + ПоправочныйКоэффициент;

Для каждого СтрТЧ Из Начисления Цикл

СтрТЧ. Результат = Окр (СтрТЧ. База*СтрТЧ. КТУ*ПоправочныйКоэффициент,

);

КонецЦикла;

Разность = СуммаКРаспределению-Начисления. Итог ("Результат");

Если Разность<>0 Тогда // разницу из-за ошибок округления отнесем на последнюю строку

ПоследняяСтрока = Начисления [Начисления. Количество () - 1];

ПоследняяСтрока. Результат = ПоследняяСтрока. Результат + Разность;

КонецЕсли;

КонецЕсли;

// -АБС

ТекущаяСтрока = ЭлементыФормы. Начисления. ТекущаяСтрока;

Если ТекущаяСтрока <> Неопределено Тогда

мСтарыйРезультат = ТекущаяСтрока. Результат;

КонецЕсли;

Иначе

Сообщить ("Для премий, установленных в фиксированных суммах, расчет не производится!")

КонецЕсли;

КонецПроцедуры // ДействияФормыРассчитатьВсе ()

// Процедура - вызывается при нажатии на кнопку "Заполнить"

Процедура ДействияФормыЗаполнить (Кнопка)

Если Начисления. Количество () > 0 Тогда

ТекстВопроса = "Перед заполнением табличные части будут очищены. Заполнить?";

Ответ = Вопрос (ТекстВопроса, РежимДиалогаВопрос. ДаНет,, КодВозвратаДиалога. Да,);

Если Ответ <> КодВозвратаДиалога. Да Тогда

Возврат;

КонецЕсли;

Начисления. Очистить ();

КонецЕсли;

Если Кнопка. Имя = "СписокРаботников" Тогда

ПроцедурыУправленияПерсоналом. ОткрытьФормуОтбораСпискаРаботников (ЭтаФорма, ПериодРегистрации,, Организация,,,,"ПремииРаботниковОрганизаций", Новый Структура ("Размер",100));

ИначеЕсли Кнопка. Имя = "ПоПерерассчитываемомуДокументу" Тогда

Если Не ЗаполнитьПоПерерассчитываемомуДокументу () Тогда

Сообщить ("Нет необходимости перерассчитывать заданный документ. Для получения списка документов, подлежащих перерасчету, необходимо использовать: пункт Перерасчет зарплаты меню Расчет зарплаты");

КонецЕсли;

КонецЕсли;

УстановитьТекущуюСтрокуТабличнойЧасти ();

КонецПроцедуры // ДействияФормыЗаполнить ()

Процедура ДействияФормыБезНалогов (Кнопка)

Док = Документы. ЗарплатаКВыплатеОрганизаций. СоздатьДокумент ();

Док. Заполнить (Новый Структура ("Ссылка, СпособРасчета", Ссылка,"ЗаВычетомНалога"));

Док. ПолучитьФорму (). Открыть ();

КонецПроцедуры // ДействияФормыБезНалогов ()

Процедура ДействияФормыСНалогами (Кнопка)

Док = Документы. ЗарплатаКВыплатеОрганизаций. СоздатьДокумент ();

Док. Заполнить (Новый Структура ("Ссылка, СпособРасчета", Ссылка,"ВсяНачисленнаяСумма"));

Док. ПолучитьФорму (). Открыть ();

КонецПроцедуры // ДействияФормыСНалогами ()

// Процедура выполняет открытие формы работы со свойствами документа

Процедура ДействияФормыДействиеОткрытьСвойства (Кнопка)

РаботаСДиалогами. ОткрытьСвойстваДокумента (ЭтотОбъект, ЭтаФорма);

КонецПроцедуры // ДействияФормыДействиеОткрытьСвойства ()

// Процедура выполняет открытие формы работы с категориями документа

Процедура ДействияФормыДействиеОткрытьКатегории (Кнопка)

РаботаСДиалогами. ОткрытьКатегорииДокумента (ЭтотОбъект, ЭтаФорма);

КонецПроцедуры // ДействияФормыДействиеОткрытьКатегории ()

// Процедура вызова структуры подчиненности документа

Процедура ДействияФормыСтруктураПодчиненностиДокумента (Кнопка)

РаботаСДиалогами. ПоказатьСтруктуруПодчиненностиДокумента (Ссылка);

КонецПроцедуры // ДействияФормыСтруктураПодчиненностиДокумента ()

// Процедура - обработчик нажатия на любую из дополнительных кнопок по заполнению ТЧ

Процедура НажатиеНаДополнительнуюКнопкуЗаполненияТЧ (Кнопка)

РаботаСДиалогами. ОбработатьНажатиеНаДополнительнуюКнопкуЗаполненияТЧ (мКнопкиЗаполненияТЧ. Строки. Найти (Кнопка. Имя,"Имя", Истина), ЭтотОбъект);

КонецПроцедуры // НажатиеНаДополнительнуюКнопкуЗаполненияТЧ ()

// Процедура - обработчик нажатия на кнопку "Печать по умолчанию"

Процедура ОсновныеДействияФормыПечатьПоУмолчанию (Кнопка)

РаботаСДиалогами. ПечатьПоДополнительнойКнопке (мДеревоМакетов, ЭтотОбъект, ЭтаФорма, Кнопка. Текст);

КонецПроцедуры // ОсновныеДействияФормыПечатьПоУмолчанию ()

// Процедура - обработчик нажатия на кнопку "Печать"

Процедура ОсновныеДействияФормыПечать (Кнопка)

РаботаСДиалогами. ПечатьПоДополнительнойКнопке (мДеревоМакетов, ЭтотОбъект, ЭтаФорма, Кнопка. Текст);

КонецПроцедуры // ОсновныеДействияФормыПечать ()

// Процедура - обработчик нажатия на кнопку "Установить печать по умолчанию"

Процедура ОсновныеДействияФормыУстановитьПечатьПоУмолчанию (Кнопка)

УстановитьКнопкиПечати ();

КонецЕсли;

КонецПроцедуры // ОсновныеДействияФормыУстановитьПечатьПоУмолчанию ()

// Процедура - вызывается при нажатии на кнопку "Подбор"

Процедура КоманднаяПанельНачисленияПодбор (Кнопка)

ПроцедурыУправленияПерсоналом. ОткрытьФормуВыбораСотрудникаОрганизации (ЭлементыФормы. Начисления, Ссылка, Ложь, Дата, мГоловнаяОрганизация, 1);

КонецПроцедуры // КоманднаяПанельНачисленияПодбор ()

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

// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ РЕКВИЗИТОВ ШАПКИ

// Процедура - обработчик события "ПриИзменении" поля ввода даты документа.

Процедура ДатаПриИзменении (Элемент)

РаботаСДиалогами. ПроверитьНомерДокумента (ЭтотОбъект, мТекущаяДатаДокумента);

РаботаСДиалогами. ОбновитьПодсказкуКодНомерОбъекта (ЭтотОбъект. Метаданные (), ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы. Номер);

мТекущаяДатаДокумента = Дата;

КонецПроцедуры // ДатаПриИзменении ()

// Процедура - обработчик события "ПриИзменении" поля ввода организации.

Процедура ОрганизацияПриИзменении (Элемент)

Если Не ПустаяСтрока (Номер) Тогда

РаботаСДиалогами. СброситьУстановленныйКодНомерОбъекта (ЭтотОбъект, "Номер", ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы. Номер);

КонецЕсли;

// Получим и запомним ссылку на головную организацию

мГоловнаяОрганизация = ОбщегоНазначения. ГоловнаяОрганизация (Организация);

РаботаСДиалогами. УстановитьВидимостьЭУПоУчетнойПолитикеПоПерсоналу (мМассивЭУ, глЗначениеПеременной ("глУчетнаяПолитикаПоПерсоналуОрганизации"), Организация);

УстановитьТекстИтого ();

КонецПроцедуры // ОрганизацияПриИзменении ()

// Процедура - обработчик события "ПриИзменении" поля ввода периода регистрации.

Процедура ПериодРегистрацииПриИзменении (Элемент)

РаботаСДиалогами. ДатаКакМесяцПодобратьДатуПоТексту (Элемент. Значение, ПериодРегистрации);

Элемент. Значение = РаботаСДиалогами. ДатаКакМесяцПредставление (ПериодРегистрации);

// премия за текущий месяц

ПриСменеПериодаРегистрации ();

КонецПроцедуры // ПериодРегистрацииПриИзменении ()

// Процедура - обработчик события "Регулирование" поля ввода периода регистрации.

Процедура ПериодРегистрацииРегулирование (Элемент, Направление, СтандартнаяОбработка)

ПериодРегистрации = ДобавитьМесяц (ПериодРегистрации, Направление);

Элемент. Значение = РаботаСДиалогами. ДатаКакМесяцПредставление (ПериодРегистрации);

ПриСменеПериодаРегистрации ();

КонецПроцедуры // ПериодРегистрацииРегулирование ()

// Процедура - обработчик события "Очистка" поля ввода периода регистрации.

Процедура ПериодРегистрацииОчистка (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

КонецПроцедуры // ПериодРегистрацииОчистка ()

// Процедура - обработчик события "НачалоВыбораИзСписка" поля ввода периода регистрации.

Процедура ПериодРегистрацииНачалоВыбораИзСписка (Элемент, СтандартнаяОбработка)

РаботаСДиалогами. НачалоВыбораИзСпискаПредставленияПериодаРегистрации (Элемент, СтандартнаяОбработка, ПериодРегистрации, ЭтаФорма);

ПриСменеПериодаРегистрации ();

КонецПроцедуры // ПериодРегистрацииНачалоВыбораИзСписка ()

// Процедура - обработчик события "АвтоПодборТекста" поля ввода периода регистрации.

Процедура ПериодРегистрацииАвтоПодборТекста (Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)

РаботаСДиалогами. ДатаКакМесяцАвтоПодборТекста (Текст, ТекстАвтоПодбора, СтандартнаяОбработка);

КонецПроцедуры // ПериодРегистрацииАвтоПодборТекста ()

// Процедура - обработчик события "ОкончаниеВводаТекста" поля ввода периода регистрации.

Процедура ПериодРегистрацииОкончаниеВводаТекста (Элемент, Текст, Значение, СтандартнаяОбработка)

РаботаСДиалогами. ДатаКакМесяцОкончаниеВводаТекста (Текст, Значение, СтандартнаяОбработка);

КонецПроцедуры // ПериодРегистрацииОкончаниеВводаТекста ()

Процедура ВидРасчетаПриИзменении (Элемент)

УправлениеВнешнимВидомФормы ();

ЧислоМесяцев = ВидРасчета. ЧислоМесяцев;

КонецПроцедуры // ВидРасчетаПриИзменении ()

Процедура ВидРасчетаНачалоВыбора (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

// Предложим для выбора список расчетов, относящихся только к премиям.

ФормаВыбораВидаРасчета = ПланыВидовРасчета. ДополнительныеНачисленияОрганизаций. ПолучитьФормуВыбора ("ФормаВыбора", Элемент, "дляДокументаПриемНаРаботуВОрганизацию");

ФормаВыбораВидаРасчета. Отбор. ВидПремии. Значение= Перечисления. ВидыПремии. НеПремия;

ФормаВыбораВидаРасчета. Отбор. ВидПремии. ВидСравнения= ВидСравнения. НеРавно;

ФормаВыбораВидаРасчета. Отбор. ВидПремии. Использование= ИСТИНА;

ФормаВыбораВидаРасчета. Отбор. ЧислоМесяцев. Значение= 1; // за 1 месяц

ФормаВыбораВидаРасчета. Отбор. ЧислоМесяцев. ВидСравнения= ВидСравнения. Равно;

ФормаВыбораВидаРасчета. Отбор. ЧислоМесяцев. Использование= ИСТИНА;

ФормаВыбораВидаРасчета. НачальноеЗначениеВыбора = Элемент. Значение;

ФормаВыбораВидаРасчета. Открыть ();

КонецПроцедуры // ВидРасчетаНачалоВыбора ()

// Процедура - обработчик события "ПриИзменении" поля ввода перерассчитываемого документа.

Процедура ПерерассчитываемыйДокументПриИзменении (Элемент)

ОбновитьВидимостьПоПерерассчитываемомуДокументу ();

КонецПроцедуры // ПерерассчитываемыйДокументПриИзменении ()

// Процедура - обработчик события "НачалоВыбора" поля ввода перерассчитываемого документа.

Процедура ПерерассчитываемыйДокументНачалоВыбора (Элемент, СтандартнаяОбработка)

ПроцедурыУправленияПерсоналом. ОткрытьФормуВыбораПерерассчитываемогоДокумента (Элемент, СтандартнаяОбработка, ДокументОбъект);

КонецПроцедуры // ПерерассчитываемыйДокументНачалоВыбора ()

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

// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ ТАБЛИЧНОГО ПОЛЯ Начисления

// Процедура - обработчик оповещения о выборе, присланного формой рег-ра сведений

Процедура НачисленияОбработкаВыбора (Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

Если ТипЗнч (ВыбранноеЗначение) <> Тип ("СправочникСсылка. СотрудникиОрганизаций") Тогда

Возврат;

КонецЕсли;

СтандартнаяОбработка = Ложь;

Если Начисления. НайтиСтроки (Новый Структура ("Сотрудник", ВыбранноеЗначение)). Количество () = 0 Тогда

СтрокаТабличнойЧасти = Начисления. Добавить ();

СтрокаТабличнойЧасти. Сотрудник = ВыбранноеЗначение;

СтрокаТабличнойЧасти. Физлицо = ВыбранноеЗначение. Физлицо;

СтрокаТабличнойЧасти. Авторасчет = Истина;

// АБС

СтрокаТабличнойЧасти. КТУ = 1;

// -АБС

КонецЕсли;

КонецПроцедуры // НачисленияОбработкаВыбора ()

// Процедура - обработчик события "ПриВыводеСтроки" ТЧ

Процедура НачисленияПриВыводеСтроки (Элемент, ОформлениеСтроки, ДанныеСтроки)

Если ДанныеСтроки. Сторно Тогда

ОформлениеСтроки. ЦветТекста = Новый Цвет (255, 0, 0);

КонецЕсли;

ЯчейкаСКартинкой = ОформлениеСтроки. Ячейки. Картинка;

ЯчейкаСКартинкой. ОтображатьКартинку = Истина;

ЯчейкаСКартинкой. ИндексКартинки = Число (ДанныеСтроки. Авторасчет);

КонецПроцедуры // НачисленияПриВыводеСтроки ()

// Процедура - обработчик события "ПриПолученииДанных"

Процедура НачисленияПриПолученииДанных (Элемент, ОформленияСтрок)

РаботаСДиалогами. УстановитьЗначенияКолонкиТабельныйНомерСтрока (ЭлементыФормы. Начисления, ОформленияСтрок);

КонецПроцедуры // НачисленияПриПолученииДанных ()

// Процедура - обработчик события "ПриНачалеРедактирования" ТЧ

Процедура НачисленияПриНачалеРедактирования (Элемент, НоваяСтрока, Копирование)

Если НоваяСтрока И Не Копирование Тогда

Элемент. ТекущиеДанные. Авторасчет = Истина;

// АБС

Элемент. ТекущиеДанные. КТУ = 1;

// -АБС

КонецЕсли;

КонецПроцедуры // НачисленияПриНачалеРедактирования ()

// Процедура - обработчик события "ПриАктивизацииСтроки"

Процедура НачисленияПриАктивизацииСтроки (Элемент)

ДанныеСтроки = Элемент. ТекущиеДанные;

// запомним текущее физлицо

Если ДанныеСтроки = Неопределено Тогда

мСтароеФизлицо = Справочники. ФизическиеЛица. ПустаяСсылка ();

Иначе

мСтароеФизлицо = ДанныеСтроки. Сотрудник. Физлицо;

КонецЕсли;

ТекущаяСтрока = Элемент. ТекущаяСтрока;

Если Элемент. ТекущаяСтрока <> Неопределено Тогда

мСтарыйРезультат = Элемент. ТекущаяСтрока. Результат;

КонецЕсли;

КонецПроцедуры // НачисленияПриАктивизацииСтроки ()

// Процедура - обработчик события "ПриОкончанииРедактирования"

Процедура НачисленияПриОкончанииРедактирования (Элемент, НоваяСтрока, ОтменаРедактирования)

Если НЕ ОтменаРедактирования Тогда

мСтароеФизлицо = Элемент. ТекущиеДанные. Сотрудник. Физлицо;

КонецЕсли;

КонецПроцедуры // НачисленияПриОкончанииРедактирования ()

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

// ПРОЦЕДУРЫ - ОБРАБОТЧИКИ СОБЫТИЙ РЕКВИЗИТОВ ТАБЛИЧНОГО ПОЛЯ

Процедура НачисленияСотрудникПриИзменении (Элемент)

ЭлементыФормы. Начисления. ТекущиеДанные. Физлицо = Элемент. Значение. Физлицо;

ЭлементыФормы. Начисления. ТекущиеДанные. Авторасчет = Истина;

КонецПроцедуры

// Процедура - обработчик события "НачалоВыбора" поля ввода физлица

// переопеределим выбор физлица на выбор из списка регистра сведений

Процедура НачисленияСотрудникНачалоВыбора (Элемент, СтандартнаяОбработка)

ПроцедурыУправленияПерсоналом. ОткрытьФормуВыбораСотрудникаОрганизации (Элемент, Ссылка, Истина, Дата, мГоловнаяОрганизация, 1, СтандартнаяОбработка, Элемент. Значение);

КонецПроцедуры // НачисленияСотрудникНачалоВыбора ()

// Процедура - обработчик события "АвтоПодборТекста" поля ввода физлица

// переопеределим выбор физлица на выбор из списка регистра сведений

Процедура НачисленияСотрудникАвтоПодборТекста (Элемент, Текст, ТекстАвтоПодбора, СтандартнаяОбработка)

ТекстАвтоПодбора = ПроцедурыУправленияПерсоналом. ПодобратьФИОРаботникаКандидата (СтандартнаяОбработка, "РаботникиОрганизации", Текст, Организация);

КонецПроцедуры // НачисленияСотрудникАвтоПодборТекста ()

// Процедура - обработчик события "АвтоПодборТекста" поля ввода физлица

// переопеределим выбор физлица на выбор из списка регистра сведений

Процедура НачисленияСотрудникОкончаниеВводаТекста (Элемент, Текст, Значение, СтандартнаяОбработка)

Значение = ПроцедурыУправленияПерсоналом. ПодобратьСписокРаботниковКандидатов (СтандартнаяОбработка, "РаботникиОрганизации", Текст, Элемент. Значение, Организация);

КонецПроцедуры // НачисленияСотрудникОкончаниеВводаТекста ()

// Процедура - обработчик события "ПриИзменении" поля "Результат"

Процедура НачисленияРезультатПриИзменении (Элемент)

Если Элемент. Значение <> мСтарыйРезультат Тогда

ЭлементыФормы. Начисления. ТекущиеДанные. Авторасчет = Ложь;

мСтарыйРезультат = Элемент. Значение;

КонецЕсли;

// АБС.

ПроверитьСумму ();

// -АБС

КонецПроцедуры // НачисленияРезультатПриИзменении ()

// Процедура разрешения/запрещения редактирования номера документа

Процедура ДействияФормыРедактироватьНомер (Кнопка)

РаботаСДиалогами. ИзменениеВозможностиРедактированияНомера (ЭтотОбъект. Метаданные (), ЭтаФорма, ЭлементыФормы. ДействияФормы. Кнопки. Подменю1, ЭлементыФормы. Номер);

КонецПроцедуры

// АБС

Процедура ПроверитьСумму ()

Если СуммаКРаспределению>0 и Начисления. Итог ("Результат") <>СуммаКРаспределению Тогда

Предупреждение ("Сумма по документу не совпадает с суммой к распределению. Рекомендуется выполнить перерасчет документа");

КонецЕсли;

КонецПроцедуры

Процедура НачисленияКТУПриИзменении (Элемент)

ТекСтрока = ЭлементыФормы. Начисления. ТекущаяСтрока;

ТекСтрока. Результат = Окр (ТекСтрока. Результат*ТекСтрока. КТУ,2);

ПроверитьСумму ();

// ТекСтрока. Авторасчет = Ложь;

КонецПроцедуры

// -АБС

Приложение Ж

 

Листинг обработки "Загрузка контрагентов и связанной информации"

Перем ТаблДБФ;

Перем ВыборФайла;

Перем ПротоколОшибок;

Перем ТаблицаБанков;

Функция ВсеРеквизитыЗаполнены ()

Результат = Истина;

Если ПустаяСтрока (ФайлКонтрагентов) Тогда

Сообщить ("Не выбран файл Контрагентов");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлБанкСчетов) Тогда

Сообщить ("Не выбран файл банковских счетов");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлАдресов) Тогда

Сообщить ("Не выбран файл адресов");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлБанков) Тогда

Сообщить ("Не выбран файл банков");

Результат = Ложь;

КонецЕсли;

Возврат Результат;

КонецФункции // ВсеРеквизитыЗаполнены ()

Функция НайтиСчетКонтрагента (Контрагент, Банк, НомерСчета)

Запрос = Новый Запрос;

Запрос. Текст = "ВЫБРАТЬ

|БанковскиеСчета. Ссылка

|ИЗ

|Справочник. БанковскиеСчета КАК БанковскиеСчета

|ГДЕ

|БанковскиеСчета. ПометкаУдаления = ЛОЖЬ

|И БанковскиеСчета. Владелец = &Контрагент

|И БанковскиеСчета. Банк = &Банк

|И БанковскиеСчета. НомерСчета = &НомерСчета";

Запрос. УстановитьПараметр ("Контрагент", Контрагент);

Запрос. УстановитьПараметр ("Банк", Банк);

Запрос. УстановитьПараметр ("НомерСчета", НомерСчета);

Результат = Запрос. Выполнить ();

Выборка = Результат. Выбрать ();

Если Выборка. Следующий () Тогда

Возврат Выборка. Ссылка;

Иначе

Возврат Справочники. БанковскиеСчета. ПустаяСсылка ();

КонецЕсли;

КонецФункции

Процедура ЗагрузкаБанков ()

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

ТаблДБФ. ОткрытьФайл (ФайлБанков,, Истина);

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не удалось открыть " + ФайлБанков);

Возврат;

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

Возврат;

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

Код = СокрЛП (ТаблДБФ. BNK_ID);

БИК = СокрЛП (ТаблДБФ. BNK_CODE);

Имя = СокрЛП (ТаблДБФ. BNK_NAME);

КоррСчет = СокрЛП (ТаблДБФ. ACNT_KORR);

Адрес = СокрЛП (ТаблДБФ. ADDR);

Если ПустаяСтрока (БИК) Тогда

ПротоколОшибок. ДобавитьСтроку ("Не указан БИК у элемента " + Имя +". пропускаем. ");

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

СтрТаб = ТаблицаБанков. Добавить ();

СтрТаб. Код = Код;

СтрТаб. БИК = БИК;

СтрТаб. Имя = Имя;

СтрТаб. КоррСчет = КоррСчет;

СтрТаб. Адрес = Адрес;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Счетчик = Счетчик+1;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Загрузка банков. Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

ТаблДБФ. ЗакрытьФайл ();

КонецПроцедуры

Процедура ЗагрузкаКонтрагентов ()

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

ТаблДБФ. ОткрытьФайл (ФайлКонтрагентов,, Истина);

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не удалось открыть " + ФайлКонтрагентов);

Возврат;

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

Возврат;

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

Имя = СокрЛП (ТаблДБФ. SHORTNAME);

КодБЭСТ = СокрЛП (ТаблДБФ. PART_ID);

Наименование = СокрЛП (ТаблДБФ.orgNAME);

ИНН = СокрЛП (ТаблДБФ. CODE_INN);

КПП = СокрЛП (ТаблДБФ. CODE_KPP);

ОКПО = СокрЛП (ТаблДБФ. CODE_OKPO);

Если ПустаяСтрока (ИНН) и не ЗагрузкаБезИНН Тогда

ПротоколОшибок. ДобавитьСтроку ("Не указан ИНН у элемента " + Имя + " (" + КодБЭСТ + "). пропускаем. ");

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Попытка

ТипЛица = Число (СокрЛП (ТаблДБФ. STATUS));

Исключение

ТипЛица = 0;

КонецПопытки;

ЮрФизЛицо =? (ТипЛица = 0, Перечисления. ЮрФизЛицо. ЮрЛицо, Перечисления. ЮрФизЛицо. ФизЛицо);

СпрСсылка = Справочники. Контрагенты. НайтиПоРеквизиту ("КодБЭСТ", КодБЭСТ);

Если СпрСсылка. Пустая () Тогда // еще нет - попробуем создать

Если не ПустаяСтрока (ИНН) Тогда // загрузка пустых ИНН разрешена, иначе мы сюда не попадем. Пустые на дубли не проверяем

// проверим существование контрагента с данным ИНН

СпрОшибка = Справочники. Контрагенты. НайтиПоРеквизиту ("ИНН", ИНН);

Если не СпрОшибка. Пустая () Тогда // контрагент с таким ИНН есть - это ошибка

ПротоколОшибок. ДобавитьСтроку ("Элемент справочника с ИНН " + ИНН + " уже существует. Код БЭСТ=" +

КодБЭСТ +". пропускаем. ");

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

КонецЕсли;

СпрОбъект = Справочники. Контрагенты. СоздатьЭлемент ();

Если не ГруппаЗагрузки. Пустая () Тогда

СпрОбъект. Родитель = ГруппаЗагрузки;

КонецЕсли;

Иначе // есть - перепишем данные

СпрОбъект = СпрСсылка. ПолучитьОбъект ();

КонецЕсли;

СпрОбъект. ИНН = ИНН;

СпрОбъект. КодБЭСТ = КодБЭСТ;

СпрОбъект. КодПоОКПО = ОКПО;

СпрОбъект. КПП = КПП;

СпрОбъект. Наименование = Имя;

СпрОбъект. НаименованиеПолное = Наименование;

СпрОбъект. ЮрФизЛицо = ЮрФизЛицо;

СпрОбъект. Записать ();

СпрОбъект. ГоловнойКонтрагент = СпрОбъект. Ссылка;

СпрОбъект. Записать ();

Исключение

ПротоколОшибок. ДобавитьСтроку ("Не удалось записать элемент справочника " + Имя +

": " + ОписаниеОшибки ());

КонецПопытки;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Счетчик = Счетчик+1;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Загрузка контрагентов. Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

ТаблДБФ. ЗакрытьФайл ();

КонецПроцедуры

Процедура ЗагрузкаАдресов ()

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

ТаблДБФ. ОткрытьФайл (ФайлАдресов,, Истина);

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не удалось открыть " + ФайлАдресов);

Возврат;

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Таблица адресов пуста!");

Возврат;

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

КодБЭСТ = СокрЛП (ТаблДБФ. PART_ID);

ВидАдресаСтр = СокрЛП (ТаблДБФ. ADR_TYPE); // 1 - "фактический", 2 - "Юридический" остальные типы адресов не переносить

Адрес = СокрЛП (ТаблДБФ. ADDRESS);

Если ПустаяСтрока (Адрес) Тогда

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

ХозяинАдреса = Справочники. Контрагенты. НайтиПоРеквизиту ("КодБЭСТ", КодБЭСТ);

Если ХозяинАдреса. Пустая () Тогда

ПротоколОшибок. ДобавитьСтроку ("Не найден контрагент с кодом " + КодБЭСТ + "). пропускаем. ");

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Если ВидАдресаСтр = "1" Тогда

Если ХозяинАдреса. ЮрФизЛицо = Перечисления. ЮрФизЛицо. ЮрЛицо Тогда

ВидАдреса = Справочники. ВидыКонтактнойИнформации. ФактАдресОрганизации;

Иначе

ВидАдреса = Справочники. ВидыКонтактнойИнформации. ФактАдресФизЛица;

КонецЕсли;

ИначеЕсли ВидАдресаСтр = "2" Тогда

Если ХозяинАдреса. ЮрФизЛицо = Перечисления. ЮрФизЛицо. ЮрЛицо Тогда

ВидАдреса = Справочники. ВидыКонтактнойИнформации. ЮрАдресОрганизации;

Иначе

ВидАдреса = Справочники. ВидыКонтактнойИнформации. ЮрАдресФизЛица;

КонецЕсли;

Иначе // неизвестный тип адреса

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

ЗаписьАдреса = РегистрыСведений. КонтактнаяИнформация. СоздатьМенеджерЗаписи ();

ЗаписьАдреса. Объект = ХозяинАдреса;

ЗаписьАдреса. Вид = ВидАдреса;

ЗаписьАдреса. Тип = Перечисления. ТипыКонтактнойИнформации. Адрес;

ЗаписьАдреса. Представление = Адрес;

ЗаписьАдреса. Записать (Истина);

Счетчик = Счетчик+1;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Загрузка адресов контрагентов. Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

ТаблДБФ. ЗакрытьФайл ();

КонецПроцедуры

Процедура ЗагрузкаСчетов ()

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

ТаблДБФ. ОткрытьФайл (ФайлБанкСчетов,, Истина);

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не удалось открыть " + ФайлБанкСчетов);

Возврат;

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Таблица счетов пуста!");

Возврат;

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

КодБЭСТ = СокрЛП (ТаблДБФ. PART_ID); // контрагент

НомерСчета = СокрЛП (ТаблДБФ. ACCNT);

КодБанка = СокрЛП (ТаблДБФ. BNK_ID);

ВидСчетаСтр = СокрЛП (ТаблДБФ. ACC_TP);

ВидСчетаСтр =? (ВидСчетаСтр = "1", "Расчетный", "Другой");

Если ПустаяСтрока (НомерСчета) Тогда

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Хозяин = Справочники. Контрагенты. НайтиПоРеквизиту ("КодБЭСТ", КодБЭСТ);

Если Хозяин. Пустая () Тогда

ПротоколОшибок. ДобавитьСтроку ("Не найден контрагент с кодом " + КодБЭСТ +". пропускаем. ");

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

// найдем банк

СтрТабБанк = ТаблицаБанков. Найти (КодБанка, "Код");

Если СтрТабБанк=Неопределено Тогда

ПротоколОшибок. ДобавитьСтроку ("Не найден банк с кодом " + КодБанка +". пропускаем. ");

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Банк1С = Справочники. Банки. НайтиПоКоду (СтрТабБанк. БИК);

Если Банк1С. Пустая () Тогда // надо создавать новый банк

БанкОбъект = Справочники. Банки. СоздатьЭлемент ();

БанкОбъект. Адрес = СтрТабБанк. Адрес;

БанкОбъект. Код = СтрТабБанк. БИК;

БанкОбъект. КоррСчет = СтрТабБанк. КоррСчет;

БанкОбъект. Наименование = СтрТабБанк. Имя;

Попытка

БанкОбъект. Записать ();

Исключение

ПротоколОшибок. ДобавитьСтроку ("Не удалось записать банк " + СтрТабБанк. Имя + " с кодом " + СтрТабБанк. БИК +"." + ОписаниеОшибки ());

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецПопытки;

Банк1С = БанкОбъект. Ссылка;

КонецЕсли;

НайденныйСчет = НайтиСчетКонтрагента (Хозяин, Банк1С, НомерСчета);

Если НайденныйСчет. Пустая () Тогда

НовыйСчет = Справочники. БанковскиеСчета. СоздатьЭлемент ();

Иначе

НовыйСчет = НайденныйСчет. ПолучитьОбъект ();

КонецЕсли;

НовыйСчет. Банк = Банк1С;

НовыйСчет. ВалютаДенежныхСредств = Константы. ВалютаРегламентированногоУчета. Получить ();

НовыйСчет. ВидСчета = ВидСчетаСтр;

НовыйСчет. Владелец = Хозяин;

НовыйСчет. ВсегдаУказыватьКПП = Истина;

НовыйСчет. НомерСчета = НомерСчета;

НовыйСчет. Наименование = "Счет № " + НомерСчета + " в банке " + Банк1С. Наименование;

Попытка

НовыйСчет. Записать ();

Исключение

ПротоколОшибок. ДобавитьСтроку ("Не удалось записать счет № " + НомерСчета + " в банке " + Банк1С. Наименование + " для " + Хозяин. Наименование +"." + ОписаниеОшибки ());

КонецПопытки;

Счетчик = Счетчик+1;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Загрузка счетов контрагентов. Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

ТаблДБФ. ЗакрытьФайл ();

КонецПроцедуры

Процедура КнопкаВыполнитьНажатие (Кнопка)

Если не ВсеРеквизитыЗаполнены () Тогда

Предупреждение ("Заполните все нужные реквизиты формы!", 20);

Возврат;

КонецЕсли;

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка контрагентов начата ***");

ЗагрузкаКонтрагентов ();

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка контрагентов завершена ***");

ПротоколОшибок. ДобавитьСтроку ("********************************************");

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка адресов контрагентов начата ***");

ЗагрузкаАдресов ();

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка адресов контрагентов завершена ***");

ПротоколОшибок. ДобавитьСтроку ("********************************************");

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка банков начата ***");

ЗагрузкаБанков ();

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка банков завершена ***");

ПротоколОшибок. ДобавитьСтроку ("********************************************");

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка счетов начата ***");

ЗагрузкаСчетов ();

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка счетов завершена ***");

Если Вопрос ("Загрузка завершена. Показать протолок ошибок", РежимДиалогаВопрос. ДаНет) =КодВозвратаДиалога. Да Тогда

ПротоколОшибок. Показать ("Протокол ошибок переноса данных");

КонецЕсли;

КонецПроцедуры

Процедура ФайлКонтрагентовНачалоВыбора (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

Если ВыборФайла. Выбрать () Тогда

Элемент. Значение = ВыборФайла. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура КоманднаяПанель2Вывод (Кнопка)

ПротоколОшибок. Показать ("Протокол ошибок переноса данных");

КонецПроцедуры

ВыборФайла = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыборФайла. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ТаблДБФ = Новый xBase ();

ПротоколОшибок = Новый ТекстовыйДокумент;

ТаблицаБанков = Новый ТаблицаЗначений;

ТаблицаБанков. Колонки. Добавить ("Код");

ТаблицаБанков. Колонки. Добавить ("БИК");

ТаблицаБанков. Колонки. Добавить ("Имя");

ТаблицаБанков. Колонки. Добавить ("КоррСчет");

ТаблицаБанков. Колонки. Добавить ("Адрес");

Приложение З

Листинг обработки "ЗагрузкаОстатковВзаиморасчетов"

Перем ТаблДБФ;

Перем ВыборФайла, ВыборФайлаExcel;

Перем ПротоколОшибок;

Перем ТаблицаКонтрагентов;

Перем ТаблицаОстатков;

Процедура МанипуляцииСВидомДоговора ()

КодСчета = "";

Если не СчетДляДебета. Пустая () Тогда

КодСчета = Лев (СчетДляДебета. Код,2);

ИначеЕсли не СчетДляКредита. Пустая () Тогда

КодСчета = Лев (СчетДляКредита. Код,2);

КонецЕсли;

Если КодСчета = "60" Тогда

ВидДоговора = Перечисления. ВидыДоговоровКонтрагентов. СПоставщиком;

ЭлементыФормы. ВидДоговора. Доступность = Ложь;

ИначеЕсли КодСчета = "62" Тогда

ВидДоговора = Перечисления. ВидыДоговоровКонтрагентов. СПокупателем;

ЭлементыФормы. ВидДоговора. Доступность = Ложь;

Иначе

ЭлементыФормы. ВидДоговора. Доступность = Истина;

КонецЕсли;

КонецПроцедуры

Функция ВсеРеквизитыЗаполнены ()

Результат = Истина;

Если ПустаяСтрока (ФайлКонтрагентов) Тогда

Сообщить ("Не выбран файл Контрагентов");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлОстатков) Тогда

Сообщить ("Не выбран файл остатков");

Результат = Ложь;

КонецЕсли;

Если (ПерваяСтрока=0) или (КолонкаКодаКонтрагента=0) или (КолонкаДебет=0) или (КолонкаКредит=0) Тогда

Сообщить ("Не полностью описана структура входной таблицы");

Результат = Ложь;

КонецЕсли;

Если (СчетДляДебета. Пустая ()) или (СчетДляКредита. Пустая ()) Тогда

Сообщить ("Не заполнены счета отнесения остатков");

Результат = Ложь;

КонецЕсли;

Если СчетДляДебета. Родитель<>СчетДляКредита. Родитель Тогда

Сообщить ("Cубсчета отнесения остатков по дебету и кредиту принадлежат к разным счетам. ");

Результат = Ложь;

КонецЕсли;

Если не ЗначениеЗаполнено (ДатаОперации) Тогда

Сообщить ("Не указана дата формирования операции переноса остатков");

Результат = Ложь;

КонецЕсли;

Если Организация. Пустая () Тогда

Сообщить ("Не указана организация формирования операции переноса остатков");

Результат = Ложь;

КонецЕсли;

Возврат Результат;

КонецФункции // ВсеРеквизитыЗаполнены ()

Процедура УдалитьСтарыеОперации ()

ТекстКомментария = "Ввод начальных остатков взаиморасчетов по счету " + СчетДляДебета. Родитель. Код;

Запрос = Новый Запрос;

Запрос. Текст = "ВЫБРАТЬ

|ОперацияБух. Ссылка

|ИЗ

|Документ. ОперацияБух КАК ОперацияБух

|ГДЕ

|ОперацияБух. Содержание ПОДОБНО &ТекстПереносТМЦ";

Запрос. УстановитьПараметр ("ТекстПереносТМЦ", "<Фирма ЛИСТ> " + ТекстКомментария);

Результат = Запрос. Выполнить ();

Выборка = Результат. Выбрать ();

Пока Выборка. Следующий () Цикл

ДокОбъект = Выборка. Ссылка. ПолучитьОбъект ();

Сообщить ("Удаляем " + ДокОбъект);

ДокОбъект. Удалить ();

КонецЦикла;

КонецПроцедуры

Функция НайтиИлиСоздатьДоговор (Контрагент)

Запрос = Новый Запрос;

Запрос. Текст = "ВЫБРАТЬ ПЕРВЫЕ 1

|ДоговорыКонтрагентов. Ссылка

|ИЗ

|Справочник. ДоговорыКонтрагентов КАК ДоговорыКонтрагентов

|ГДЕ

|ДоговорыКонтрагентов. Владелец = &Контрагент

|И ДоговорыКонтрагентов. ВидДоговора = &НужныйВид";

Если не ВидВзаиморасчетов. Пустая () Тогда

Запрос. Текст = Запрос. Текст + "И ДоговорыКонтрагентов. ВидВзаиморасчетов = &Взаиморасчеты";

Запрос. УстановитьПараметр ("Взаиморасчеты", ВидВзаиморасчетов);

КонецЕсли;

Запрос. УстановитьПараметр ("Контрагент", Контрагент);

Запрос. УстановитьПараметр ("НужныйВид", ВидДоговора);

Результат = Запрос. Выполнить ();

Выборка = Результат. Выбрать ();

Если Выборка. Следующий () Тогда

Возврат Выборка. Ссылка;

Иначе // не нашли - надо создать

НовыйДоговор = Справочники. ДоговорыКонтрагентов. СоздатьЭлемент ();

НовыйДоговор. ВалютаВзаиморасчетов = Константы. ВалютаРегламентированногоУчета. Получить ();

НовыйДоговор. ВидДоговора = ВидДоговора;

НовыйДоговор. ВедениеВзаиморасчетов = Перечисления. ВедениеВзаиморасчетовПоДоговорам. ПоДоговоруВЦелом;

НовыйДоговор. Владелец = Контрагент;

НовыйДоговор. Наименование = "Договор вида """ + ВидДоговора + """"; НовыйДоговор. Организация = Организация;

НовыйДоговор. ВидВзаиморасчетов = ВидВзаиморасчетов;

Попытка

НовыйДоговор. Записать ();

Возврат НовыйДоговор. Ссылка;

Исключение

Возврат Справочники. ДоговорыКонтрагентов. ПустаяСсылка ();

КонецПопытки;

КонецЕсли;

КонецФункции // НайтиИлиСоздатьДоговор

Процедура СформироватьОперацию ()

Операция = Документы. ОперацияБух. СоздатьДокумент ();

Операция. Организация = Организация;

Операция. Дата = ДатаОперации;

// Заполнить реквизиты значениями по умолчанию.

ОбщегоНазначения. ЗаполнитьШапкуДокумента (Операция, глЗначениеПеременной ("глТекущийПользователь"),, "Продажа");

// счет переноса и нужный вид договора.

ПланСчетов = ПланыСчетов. Хозрасчетный;

СчетПереноса = СчетДляДебета. Родитель;

Если СчетПереноса. ПринадлежитЭлементу (ПланСчетов. РасчетыСПоставщикамиИПодрядчиками) или СчетПереноса=ПланСчетов. РасчетыСПоставщикамиИПодрядчиками Тогда // 60

НужныйВидДоговора = Перечисления. ВидыДоговоровКонтрагентов. СПоставщиком;

ИначеЕсли СчетПереноса. ПринадлежитЭлементу (ПланСчетов. РасчетыСПокупателямиИЗаказчиками) или СчетПереноса=ПланСчетов. РасчетыСПокупателямиИЗаказчиками Тогда // 62

Иначе

НужныйВидДоговора = Перечисления. ВидыДоговоровКонтрагентов. Прочее;

КонецЕсли;

ТекстКомментария = "Ввод начальных остатков взаиморасчетов по счету " + СчетПереноса. Код;

Операция. Комментарий = ТекстКомментария;

Операция. Ответственный = глЗначениеПеременной ("глТекущийПользователь");

Операция. Содержание = "<Фирма ЛИСТ> " + ТекстКомментария;

Для каждого СтрТЧ Из ТаблицаОстатков Цикл

Договор = НайтиИлиСоздатьДоговор (СтрТЧ. Контрагент);

Если Договор. Пустая () Тогда

ПротоколОшибок. ДобавитьСтроку ("Для контрагента " + СтрТЧ. Контрагент + " не удалось найти или создать договор " + НужныйВидДоговора);

Продолжить;

КонецЕсли;

// теоретически возможны остатки и по дебету и по кредиту, поэтому возможны 2 проводки

Если СтрТЧ. СальдоДебет>0 Тогда

Проводка = Операция. Движения. Хозрасчетный. Добавить ();

Проводка. Период = ДатаОперации;

Проводка. СчетКт = ПланСчетов. Вспомогательный;

Проводка. СчетДт = СчетДляДебета;

Проводка. Сумма =? (СчетДляДебета. Вид=ВидСчета. Активный, СтрТЧ. СальдоДебет, - СтрТЧ. СальдоДебет);

ОбщегоНазначения. УстановитьСубконто (Проводка. СчетДт, Проводка. СубконтоДт,"Контрагенты", СтрТЧ. Контрагент, Истина);

ОбщегоНазначения. УстановитьСубконто (Проводка. СчетДт, Проводка. СубконтоДт,"Договоры", Договор, Истина);

КонецЕсли;

Если СтрТЧ. СальдоКредит>0 Тогда

Проводка = Операция. Движения. Хозрасчетный. Добавить ();

Проводка. Период = ДатаОперации;

Проводка. СчетДт = ПланСчетов. Вспомогательный;

Проводка. СчетКт = СчетДляКредита;

Проводка. Сумма =? (СчетДляКредита. Вид=ВидСчета. Пассивный, СтрТЧ. СальдоКредит, - СтрТЧ. СальдоКредит);

ОбщегоНазначения. УстановитьСубконто (Проводка. СчетКт, Проводка. СубконтоКт,"Контрагенты", СтрТЧ. Контрагент, Истина);

ОбщегоНазначения. УстановитьСубконто (Проводка. СчетКт, Проводка. СубконтоКт,"Договоры", Договор, Истина);

КонецЕсли;

КонецЦикла;

Операция. Записать ();

КонецПроцедуры

Процедура ЗагрузкаКонтрагентов ()

ТаблицаКонтрагентов. Очистить ();

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

ТаблДБФ. ОткрытьФайл (ФайлКонтрагентов,, Истина);

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не удалось открыть " + ФайлКонтрагентов);

Возврат;

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

Возврат;

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

СтрТаб = ТаблицаКонтрагентов. Добавить ();

СтрТаб. Имя = СокрЛП (ТаблДБФ. SHORTNAME);

СтрТаб. КодБЭСТ = СокрЛП (ТаблДБФ. CODE);

СтрТаб. ВнутрКод = СокрЛП (ТаблДБФ. PART_ID);

Счетчик = Счетчик+1;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Загрузка контрагентов. Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

ТаблДБФ. ЗакрытьФайл ();

КонецПроцедуры

Процедура ЗагрузкаОстатков ()

ТаблицаОстатков. Очистить ();

Екзель = Новый COMObject ("Excel. Application");

Попытка

Екзель. WorkBooks. Open (ФайлОстатков);

Исключение

Предупреждение ("Excel не удалось открыть файл " + ФайлОстатков);

Возврат;

КонецПопытки;

НомерСтрокиСДанными = ПерваяСтрока;

Лист = Екзель. Sheets (1);

КолВоКолонок = Лист. Cells (1,1). SpecialCells (11). Column;

КолВоСтрок = Лист. Cells (1,1). SpecialCells (11). Row;

Счетчик = 1;

Для индС = (НомерСтрокиСДанными + 1) По КолВоСтрок Цикл

КодКонтрБЭСТ = СокрЛП (Лист. Cells (индС, КолонкаКодаКонтрагента). Value);

СтрТабКонтр = ТаблицаКонтрагентов. Найти (КодКонтрБЭСТ, "КодБЭСТ");

Если СтрТабКонтр=Неопределено Тогда

ПротоколОшибок. ДобавитьСтроку ("Неизвестный контрагент с кодом " + КодКонтрБЭСТ);

Продолжить;

КонецЕсли;

ВнутрКод = СтрТабКонтр. ВнутрКод;

Контрагент1С = Справочники. Контрагенты. НайтиПоРеквизиту ("КодБЭСТ", ВнутрКод);

Если Контрагент1С. Пустая () Тогда

ПротоколОшибок. ДобавитьСтроку ("Контрагент " + СтрТабКонтр. Имя + " с внутр. кодом " + ВнутрКод + " не найден в справочнике. ");

Продолжить;

КонецЕсли;

СодержимоеЯчейки = Лист. Cells (индС, КолонкаДебет). Value;

СальдоДебет =? (ЗначениеЗаполнено (СодержимоеЯчейки), Число (СодержимоеЯчейки), 0);

СодержимоеЯчейки = Лист. Cells (индС, КолонкаКредит). Value;

СальдоКредит =? (ЗначениеЗаполнено (СодержимоеЯчейки), Число (СодержимоеЯчейки), 0);

Если (СальдоДебет=0) и (СальдоКредит=0) Тогда

ПротоколОшибок. ДобавитьСтроку ("По контрагенту " + СтрТабКонтр. Имя + " с внутр. кодом " + ВнутрКод + " нет остатков. ");

Продолжить;

КонецЕсли;

НовыйОстаток = ТаблицаОстатков. Добавить ();

НовыйОстаток. Контрагент = Контрагент1С;

НовыйОстаток. СальдоДебет = СальдоДебет;

НовыйОстаток. СальдоКредит = СальдоКредит;

Счетчик = Счетчик+1;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Загрузка контрагентов. Обработано " + Счетчик + " зап. из " + КолВоСтрок);

КонецЕсли;

Если (ЗаписейНаОперацию>0) и (ТаблицаОстатков. Количество () =ЗаписейНаОперацию) Тогда

СформироватьОперацию ();

ТаблицаОстатков. Очистить ();

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

Если ТаблицаОстатков. Количество () Тогда

СформироватьОперацию ();

КонецЕсли;

КонецПроцедуры

Процедура КнопкаВыполнитьНажатие (Кнопка)

Если не ВсеРеквизитыЗаполнены () Тогда

Предупреждение ("Заполните все нужные реквизиты формы!", 20);

Возврат;

КонецЕсли;

Если УдалятьСтарое Тогда

УдалитьСтарыеОперации ();

КонецЕсли;

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка контрагентов начата ***");

ЗагрузкаКонтрагентов ();

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка контрагентов завершена ***");

ПротоколОшибок. ДобавитьСтроку ("********************************************");

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка остатков начата ***");

ЗагрузкаОстатков ();

ПротоколОшибок. ДобавитьСтроку ("*** Загрузка остатков завершена ***");

ПротоколОшибок. ДобавитьСтроку ("********************************************");

Если Вопрос ("Загрузка завершена. Показать протолок ошибок?", РежимДиалогаВопрос. ДаНет) =КодВозвратаДиалога. Да Тогда

ПротоколОшибок. Показать ("Протокол ошибок переноса данных");

КонецЕсли;

КонецПроцедуры

Процедура ФайлКонтрагентовНачалоВыбора (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

Если ВыборФайла. Выбрать () Тогда

Элемент. Значение = ВыборФайла. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура КоманднаяПанель2Вывод (Кнопка)

ПротоколОшибок. Показать ("Протокол ошибок переноса данных");

КонецПроцедуры

Процедура ФайлОстатковНачалоВыбора (Элемент, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

Если ВыборФайлаExcel. Выбрать () Тогда

Элемент. Значение = ВыборФайлаExcel. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура ПриОткрытии ()

МанипуляцииСВидомДоговора ();

КонецПроцедуры

Процедура СчетДляДебетаПриИзменении (Элемент)

Если СчетДляКредита. Родитель <> СчетДляДебета. Родитель Тогда

СчетДляКредита = СчетДляДебета;

КонецЕсли;

МанипуляцииСВидомДоговора ();

КонецПроцедуры

Процедура СчетДляКредитаПриИзменении (Элемент)

Если СчетДляКредита. Родитель <> СчетДляДебета. Родитель Тогда

СчетДляДебета = СчетДляКредита;

КонецЕсли;

МанипуляцииСВидомДоговора ();

КонецПроцедуры

ВыборФайла = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыборФайла. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ВыборФайлаExcel = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыборФайлаExcel. Фильтр = "Таблица Excel (*. xls) |*. xls";

ТаблДБФ = Новый xBase ();

ПротоколОшибок = Новый ТекстовыйДокумент;

ТаблицаКонтрагентов = Новый ТаблицаЗначений;

ТаблицаКонтрагентов. Колонки. Добавить ("КодБЭСТ");

ТаблицаКонтрагентов. Колонки. Добавить ("ВнутрКод");

ТаблицаКонтрагентов. Колонки. Добавить ("Имя");

ТаблицаОстатков = Новый ТаблицаЗначений;

ТаблицаОстатков. Колонки. Добавить ("Контрагент");

ТаблицаОстатков. Колонки. Добавить ("СальдоДебет");

ТаблицаОстатков. Колонки. Добавить ("СальдоКредит");

Приложение И

Листинг обработки "Загрузка номенклатуры"

Перем ТаблДБФ;

Перем ВыбранныйФайл;

Перем ВыбранныйФайлГрупп;

Перем ФайлСохранения;

Перем мПерезаписывать;

Перем ТаблицаЕдиниц;

Перем ПрефиксКода;

Перем Протокол;

Функция ЕстьВсеПоля (Поля)

Рез = Истина;

Если Поля. Найти ("NNUM") =Неопределено Тогда

Сообщить ("Отсутствует поле NNUM", СтатусСообщения. Важное);

Рез = Ложь;

КонецЕсли;

Если Поля. Найти ("GRUP") =Неопределено Тогда

Сообщить ("Отсутствует поле GRUP", СтатусСообщения. Важное);

Рез = Ложь;

КонецЕсли;

Если Поля. Найти ("NAME") =Неопределено Тогда

Сообщить ("Отсутствует поле NAME", СтатусСообщения. Важное);

Рез = Ложь;

КонецЕсли;

Если Поля. Найти ("ED") =Неопределено Тогда

Сообщить ("Отсутствует поле ED", СтатусСообщения. Важное);

Рез = Ложь;

КонецЕсли;

Возврат Рез;

КонецФункции // ЕстьВсеПоля ()

Функция НайтиГруппу (ИмяГруппы)

Запрос = Новый Запрос;

Запрос. Текст = "ВЫБРАТЬ

|Номенклатура. Ссылка

|ИЗ

|Справочник. Номенклатура КАК Номенклатура

|ГДЕ

|Номенклатура. ЭтоГруппа = ИСТИНА

|И Номенклатура. ПометкаУдаления = ЛОЖЬ

|И Номенклатура. Наименование = &ИмяГруппы

|И Номенклатура. Родитель = &Родитель";

Запрос. УстановитьПараметр ("ИмяГруппы", ИмяГруппы);

Запрос. УстановитьПараметр ("Родитель", ГруппаДляЗагрузки);

Выборка = Запрос. Выполнить (). Выбрать ();

Если Выборка. Следующий () Тогда

Возврат Выборка. Ссылка;

Иначе

Возврат Справочники. Номенклатура. ПустаяСсылка ();

КонецЕсли;

КонецФункции // НайтиГруппу ()

Функция ЗагрузитьГруппы ()

ТабГрупп = Новый ТаблицаЗначений;

ТабГрупп. Колонки. Добавить ("Код");

ТабГрупп. Колонки. Добавить ("Наименование");

ТабГрупп. Колонки. Добавить ("Группа1С");

Если ПустаяСтрока (ФайлГрупп) Тогда

Возврат ТабГрупп;

КонецЕсли;

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ФайлГрупп,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ФайлГрупп+": "+ ОписаниеОшибки ());

Возврат ТабГрупп;

КонецПопытки;

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не получилось открыть "+ФайлГрупп+": "+ ОписаниеОшибки ());

Возврат ТабГрупп;

КонецЕсли;

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Таблица групп пуста!");

Возврат ТабГрупп;

КонецЕсли;

Пока Истина Цикл

Имя = СокрЛП (ТаблДБФ. NAME);

СтрТаб = ТабГрупп. Добавить ();

СтрТаб. Код = СокрЛП (ТаблДБФ. CODE);

СтрТаб. Наименование = Имя;

Группа1С = НайтиГруппу (Имя);

Если не Группа1С. Пустая () Тогда

СтрТаб. Группа1С = Группа1С;

Иначе // попытаемся создать группу

НовГруппа = Справочники. Номенклатура. СоздатьГруппу ();

НовГруппа. Родитель = ГруппаДляЗагрузки;

НовГруппа. Наименование = Имя;

Попытка

НовГруппа. Записать ();

СтрТаб. Группа1С = НовГруппа. Ссылка;

Исключение

Сообщить ("Не получилось создать группу "+Имя+": "+ ОписаниеОшибки ());

КонецПопытки;

КонецЕсли;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

КонецЦикла;

Возврат ТабГрупп;

КонецФункции // ЗагрузитьГруппы ()

Функция ВсеРеквизитыЗаполнены ()

Результат = Истина;

Если ПустаяСтрока (ВыбФайл) Тогда

Сообщить ("Не выбран файл загружаемой номенклатуры");

Результат = Ложь;

КонецЕсли;

Если ГруппаДляЗагрузки. Пустая () Тогда

Сообщить ("Не выбрана группа номенклатуры для загрузки");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлГрупп) Тогда

Ответ = Вопрос ("Не выбран файл групп номенклатуры. Загрузить все позиции в группу " + ГруппаДляЗагрузки + "?", РежимДиалогаВопрос. ДаНет);

Если Ответ = КодВозвратаДиалога. Нет Тогда

Результат = Ложь;

Иначе

мЗагрузкаПоГруппам = Ложь;

КонецЕсли;

КонецЕсли;

Если СтавкаНДС. Пустая () Тогда

Сообщить ("Не выбрана Ставка НДС по умолчанию");

Результат = Ложь;

КонецЕсли;

Если ЕдиницаПоУмолчанию. Пустая () Тогда

Сообщить ("Не выбрана единица измерения по умолчанию");

Результат = Ложь;

КонецЕсли;

Если ЗагружаемТовары=1 Тогда

ПрефиксКода = "Т";

ИначеЕсли ЗагружаемТовары=2 Тогда

ПрефиксКода = "М";

ИначеЕсли ЗагружаемТовары=3 Тогда

ПрефиксКода = "У";

Иначе

Сообщить ("Не установлен вид загружаемых данных");

Результат = Ложь;

КонецЕсли;

Если Перезаписывать=1 Тогда

мПерезаписывать = Истина;

ИначеЕсли Перезаписывать=2 Тогда

мПерезаписывать = Ложь;

Иначе

Сообщить ("Не выбрано действие при нахождении элемента");

Результат = Ложь;

КонецЕсли;

Возврат Результат;

КонецФункции // ВсеРеквизитыЗаполнены ()

Процедура КнопкаВыполнитьНажатие (Кнопка)

Протокол = Новый ТекстовыйДокумент;

мЗагрузкаПоГруппам = Истина;

Если не ВсеРеквизитыЗаполнены () Тогда

Предупреждение ("Заполните все нужные реквизиты формы!", 20);

Возврат;

КонецЕсли;

Если мЗагрузкаПоГруппам Тогда

ТаблицаГрупп = ЗагрузитьГруппы ();

Если ТаблицаГрупп. Количество () =0 Тогда

Ответ = Вопрос ("Не удалось загрузить таблицу групп. Загрузить все данные в группу " + ГруппаДляЗагрузки +"?", РежимДиалогаВопрос. ДаНет);

Если Ответ=КодВозвратаДиалога. Нет Тогда

Возврат;

Иначе

мЗагрузкаПоГруппам = Ложь;

КонецЕсли;

КонецЕсли;

КонецЕсли;

Если ТаблДБФ. Открыта () Тогда

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ВыбФайл,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ВыбФайл+": "+ ОписаниеОшибки ());

Возврат;

КонецПопытки;

ПоляБазы = ТаблДБФ. Поля;

Если не ЕстьВсеПоля (ПоляБазы) Тогда

Сообщить ("Структура выбранного файла неверна!", СтатусСообщения. ОченьВажное);

Возврат;

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

Возврат;

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

Имя = СокрЛП (ТаблДБФ. NAME);

ЕдБЭСТ = ВРег (СокрЛП (ТаблДБФ. ED));

Если ПустаяСтрока (ЕдБЭСТ) Тогда

Протокол. ДобавитьСтроку ("Не выбрана единица измерения для " + Имя +". используем " + ЕдиницаПоУмолчанию);

Ед1С = ЕдиницаПоУмолчанию;

Иначе

СтрЕд1С = СоответствиеЕдиниц. Найти (ЕдБЭСТ, "ЕдиницаБЭСТ");

Если СтрЕд1С = Неопределено Тогда

Протокол. ДобавитьСтроку ("Не найдено соответствие единицы измерения " + ЕдБЭСТ + " для " + Имя +". используем " + ЕдиницаПоУмолчанию);

Ед1С = ЕдиницаПоУмолчанию;

Иначе

Ед1С = СтрЕд1С. Единица1С;

КонецЕсли;

КонецЕсли;

КодБЭСТ = ПрефиксКода +"." + СокрЛП (ТаблДБФ. GRUP) +"." + СокрЛП (ТаблДБФ. NNUM);

НоваяСтрока = ТаблицаПросмотра. Добавить ();

НоваяСтрока. Наименование = Имя;

// НоваяСтрока. Код1С = Имя;

НоваяСтрока. КодБЭСТ = КодБЭСТ;

НоваяСтрока. Единица = Ед1С;

СтрГруппы = ТаблицаГрупп. Найти (ТаблДБФ. GRUP, "Код");

Если СтрГруппы = Неопределено Тогда

Если мЗагрузкаПоГруппам Тогда

Протокол. ДобавитьСтроку ("Не найдена группа " + ТаблДБФ. GRUP + " для " + Имя);

КонецЕсли;

НоваяСтрока. Группа = ГруппаДляЗагрузки. Наименование;

Группа1С = Справочники. Номенклатура. ПустаяСсылка ();

// Группа1С = ГруппаДляЗагрузки;

Иначе

НоваяСтрока. Группа = СтрГруппы. Наименование;

Группа1С = СтрГруппы. Группа1С;

КонецЕсли;

// поищем элемент по коду БЭСТ

Элемент = Справочники. Номенклатура. НайтиПоРеквизиту ("КодБЭСТ", КодБЭСТ);

Если Элемент. Пустая () Тогда // не нашли

Объект = Справочники. Номенклатура. СоздатьЭлемент ();

Если Группа1С. Пустая () Тогда

Если мЗагрузкаПоГруппам Тогда // такое пропускаем - ошибочная ситуация

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

Иначе // загрузка без иерархии (не мЗагрузкаПоГруппам)

Объект. Родитель = ГруппаДляЗагрузки;

КонецЕсли;

Иначе

Объект. Родитель = Группа1С;

КонецЕсли;

Иначе // Нашли, перезапишем существующий

Объект = Элемент. ПолучитьОбъект ();

КонецЕсли;

Объект. Наименование = Имя;

Объект. НаименованиеПолное = Имя;

Объект. БазоваяЕдиницаИзмерения = Ед1С;

Объект. КодБЭСТ = КодБЭСТ;

Объект. СтавкаНДС = СтавкаНДС;

Если ЗагружаемТовары=3 Тогда

Объект. Услуга = Истина;

КонецЕсли;

Попытка

Объект. Записать ();

НоваяСтрока. Код1С = Объект. Код;

Исключение

Протокол. ДобавитьСтроку ("Не получилось создать элемент "+Имя+": "+ ОписаниеОшибки ());

КонецПопытки;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Счетчик = Счетчик+1;

Если Цел (Счетчик/10) =Счетчик/10 Тогда

Состояние ("Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

Если Вопрос ("Загрузка завершена. Показать протокол ошибок,", РежимДиалогаВопрос. ДаНет) = КодВозвратаДиалога. Да Тогда

Протокол. Показать ("Протокол ошибок переноса данных");

КонецЕсли;

КонецПроцедуры

Процедура ВыбФайлНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ВыбранныйФайл. Выбрать () Тогда

Элемент. Значение = ВыбранныйФайл. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура ФайлГруппНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ВыбранныйФайлГрупп. Выбрать () Тогда

Элемент. Значение = ВыбранныйФайлГрупп. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура ФайлСохраненияНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ФайлСохранения. Выбрать () Тогда

Элемент. Значение = ФайлСохранения. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура КоманднаяПанель3Действие1 (Кнопка)

ЗначениеВФайл (ИмяФайлаСохранения, СоответствиеЕдиниц);

КонецПроцедуры

Процедура КоманднаяПанель3Действие (Кнопка)

СоответствиеЕдиниц = ЗначениеИзФайла (ИмяФайлаСохранения);

КонецПроцедуры

Процедура КоманднаяПанель2ЗагрузитьЕдиницы (Кнопка)

Если СоответствиеЕдиниц. Количество () >0 Тогда

Ответ = Вопрос ("Таблица соответствия не пуста. Очистить?", РежимДиалогаВопрос. ДаНет);

Если Ответ=КодВозвратаДиалога. Нет Тогда

Возврат;

Иначе

СоответствиеЕдиниц. Очистить ();

КонецЕсли;

КонецЕсли;

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ВыбФайл,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ВыбФайл+": "+ ОписаниеОшибки ());

Возврат;

КонецПопытки;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

ПоляБазы = ТаблДБФ. Поля;

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

ЕдБЭСТ = ВРег (СокрЛП (ТаблДБФ. ED));

Если ПустаяСтрока (ЕдБЭСТ) Тогда

Сообщить ("Не задана единица измерения для " + СокрЛП (ТаблДБФ. NAME), СтатусСообщения. Внимание);

Ед1С = ЕдиницаПоУмолчанию;

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

СтрокаЕд = СоответствиеЕдиниц. Найти (ЕдБЭСТ, "ЕдиницаБЭСТ");

Если СтрокаЕд = Неопределено Тогда // такой ед. еще нет!

СтрТаб = СоответствиеЕдиниц. Добавить ();

СтрТаб. ЕдиницаБЭСТ = ЕдБЭСТ;

ЕдИзСправочника = Справочники. КлассификаторЕдиницИзмерения. НайтиПоНаименованию (ЕдБЭСТ);

Если не ЕдИзСправочника. Пустая () Тогда

СтрТаб. Единица1С = ЕдИзСправочника;

КонецЕсли;

Иначе // уже есть - ничего не делаем!

КонецЕсли;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

КонецЦикла;

КонецПроцедуры

Процедура ОсновныеДействияФормыПоказатьПротокол (Кнопка)

Протокол. Показать ("Протокол ошибок переноса данных");

КонецПроцедуры

ТаблДБФ = Новый xBase ();

ВыбранныйФайл = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыбранныйФайл. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ВыбранныйФайлГрупп = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыбранныйФайлГрупп. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ФайлСохранения = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Сохранение);

ФайлСохранения. Фильтр = "Внутренняя таблица (*. tbl) |*. tbl";

ТаблицаЕдиниц = Новый ТаблицаЗначений;

ТаблицаЕдиниц. Колонки. Добавить ("ЕдиницаБЭСТ");

ТаблицаЕдиниц. Колонки. Добавить ("Единица1С");

Приложение К

 

Листинг обработки "ЗагрузкаОстатковНоменклатурыБЭСТ"

Перем ТаблДБФ;

Перем ВыбранныйФайл;

Перем ВыбранныйФайлГрупп;

Перем ВыбранныйФайлНоменклатуры;

Перем ФайлСохранения;

Перем мПерезаписывать;

Перем ТаблицаСчетов;

Перем ПрефиксКода;

Перем ВестиПартионныйУчетБУ, ВестиСкладскойУчетБУ, ВестиСуммовойУчетПоСкладамБУ;

Перем ВестиПартионныйУчетНУ, ВестиСкладскойУчетНУ, ВестиСуммовойУчетПоСкладамНУ;

Функция ЗагрузитьСклады ()

ТабСкладов = Новый ТаблицаЗначений;

ТабСкладов. Колонки. Добавить ("Код");

ТабСкладов. Колонки. Добавить ("Наименование");

ТабСкладов. Колонки. Добавить ("Склад1С");

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ФайлГрупп,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ФайлГрупп+": "+ ОписаниеОшибки ());

Возврат ТабСкладов;

КонецПопытки;

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Таблица складов пуста!");

Возврат ТабСкладов;

КонецЕсли;

Пока Истина Цикл

Имя = СокрЛП (ТаблДБФ. SHORTNAME);

Код = Врег (СокрЛП (ТаблДБФ. CODE));

СтрТаб = ТабСкладов. Добавить ();

СтрТаб. Код = Код;

СтрТаб. Наименование = Имя;

Склад1С = Справочники. Склады. НайтиПоКоду (Код);

Если не Склад1С. Пустая () Тогда

СтрТаб. Склад1С = Склад1С;

Иначе // попытаемся создать склад

НовСклад = Справочники. Склады. СоздатьЭлемент ();

НовСклад. Наименование = Имя;

НовСклад. Код = Код;

НовСклад. ВидСклада = Перечисления. ВидыСкладов. Оптовый;

Попытка

НовСклад. Записать ();

СтрТаб. Склад1С = НовСклад. Ссылка;

Исключение

Сообщить ("Не получилось создать склад "+Имя+": "+ ОписаниеОшибки ());

КонецПопытки;

КонецЕсли;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

КонецЦикла;

Возврат ТабСкладов;

КонецФункции

Функция ПолучитьСчет1С (Знач СчетБЭСТ)

ОригСчетБЭСТ = СчетБЭСТ;

КодСчета = Лев (СчетБЭСТ,2);

СчетБЭСТ = Сред (СчетБЭСТ,3);

Длина = СтрДлина (СчетБЭСТ);

Если Длина>0 Тогда

КолСимв = Мин (Длина,2);

КодСчета = КодСчета +"." + Формат (Число (Лев (СчетБЭСТ, Длина)),"ЧЦ=2; ЧВН=");

СчетБЭСТ = Сред (СчетБЭСТ, Длина+1);

Длина = СтрДлина (СчетБЭСТ);

Если Длина>0 Тогда

КолСимв = Мин (Длина,2);

КодСчета = КодСчета +"." + Формат (Число (Лев (СчетБЭСТ, Длина)),"ЧЦ=2; ЧВН=");

СчетБЭСТ = Сред (СчетБЭСТ, Длина+1);

Длина = СтрДлина (СчетБЭСТ);

КонецЕсли; // ну больше уж вряд ли будет

КонецЕсли;

НашлиСчет = ПланыСчетов. Хозрасчетный. НайтиПоКоду (КодСчета);

Возврат НашлиСчет;

КонецФункции // ПолучитьСчет1С ()

Функция ВсеРеквизитыЗаполнены ()

Результат = Истина;

Если ПустаяСтрока (ВыбФайл) Тогда

Сообщить ("Не выбран файл загружаемой номенклатуры");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлГрупп) Тогда

Сообщить ("Не выбран файл складов");

Результат = Ложь;

КонецЕсли;

Если ПустаяСтрока (ФайлНоменклатуры) Тогда

Сообщить ("Не выбран файл номенклатуры");

Результат = Ложь;

КонецЕсли;

Если СчетПоУмолчанию. Пустая () Тогда

Сообщить ("Не выбран счет по умолчанию");

Результат = Ложь;

КонецЕсли;

Если ЗагружаемТовары=1 Тогда

ПрефиксКода = "Т";

ИначеЕсли ЗагружаемТовары=2 Тогда

ПрефиксКода = "М";

Иначе

Сообщить ("Не установлен вид загружаемых данных");

Результат = Ложь;

КонецЕсли;

Если Организация. Пустая () Тогда

Сообщить ("Не выбрана организация");

Результат = Ложь;

КонецЕсли;

Если ВестиПартионныйУчетБУ и Партия. Пустая () Тогда

Сообщить ("Не выбран документ для создания служебной партии");

Результат = Ложь;

КонецЕсли;

Возврат Результат;

КонецФункции // ВсеРеквизитыЗаполнены ()

Функция ЗагрузитьНоменклатуру ()

Таб = Новый ТаблицаЗначений;

Таб. Колонки. Добавить ("КодНоменклатуры");

Таб. Колонки. Добавить ("КодГруппы");

Таб. Колонки. Добавить ("ЦенаБух");

Таб. Колонки. Добавить ("ЦенаНал");

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ФайлНоменклатуры,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ФайлНоменклатуры+": "+ ОписаниеОшибки ());

Возврат Таб;

КонецПопытки;

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Таблица номенклатуры пуста!");

Возврат Таб;

КонецЕсли;

Пока Истина Цикл

Код = Врег (СокрЛП (ТаблДБФ. NNUM));

Группа = Врег (СокрЛП (ТаблДБФ. GRUP));

СтрТаб = Таб. Добавить ();

СтрТаб. КодГруппы = Группа;

СтрТаб. КодНоменклатуры = Код;

СтрТаб. ЦенаБух = ТаблДБФ. CENA;

СтрТаб. ЦенаНал = ТаблДБФ. CENAN;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

КонецЦикла;

Возврат Таб;

КонецФункции // ЗагрузитьНоменклатуру ()

Функция НайтиСчетНУПоБУ (СчетБУ)

Результат = ПланыСчетов. Налоговый. ПустаяСсылка ();

Запрос = Новый Запрос;

Запрос. Текст = "ВЫБРАТЬ

|СоответствиеСчетовБУиНУ. СчетНУ КАК СчетНУ

|ИЗ

|РегистрСведений. СоответствиеСчетовБУиНУ КАК СоответствиеСчетовБУиНУ

|ГДЕ

|СоответствиеСчетовБУиНУ. СчетБУ = &СчетБУ";

Запрос. УстановитьПараметр ("СчетБУ", СчетБУ);

Результат = Запрос. Выполнить ();

Выборка = Результат. Выбрать ();

Если Выборка. Следующий () Тогда

Результат = Выборка. СчетНУ;

КонецЕсли;

Возврат Результат;

КонецФункции // НайтиСчетНУПоБУ ()

Процедура УдалитьСтарыеОперации ()

ТекстКомментария = "<Фирма ЛИСТ> Ввод начальных остатков ТМЦ" +? (ЗагружаемТовары=1, " (товары)", " (материалы)");

Запрос. Текст = "ВЫБРАТЬ

|ОперацияБух. Ссылка

|ИЗ

|Документ. ОперацияБух КАК ОперацияБух

|ГДЕ

|ОперацияБух. Содержание ПОДОБНО &ТекстПереносТМЦ";

Запрос. УстановитьПараметр ("ТекстПереносТМЦ", "<Фирма ЛИСТ> " + ТекстКомментария);

Результат = Запрос. Выполнить ();

Выборка = Результат. Выбрать ();

Пока Выборка. Следующий () Цикл

ДокОбъект = Выборка. Ссылка. ПолучитьОбъект ();

Сообщить ("Удаляем " + ДокОбъект);

ДокОбъект. Удалить ();

КонецЦикла;

КонецПроцедуры

Процедура СформироватьОперацию (Остатки)

ТабСоотвСчетов = Новый ТаблицаЗначений;

ТабСоотвСчетов. Колонки. Добавить ("СчетБУ");

ТабСоотвСчетов. Колонки. Добавить ("СчетНУ");

Если не (ВестиСкладскойУчетБУ или ВестиСкладскойУчетНУ) Тогда

Остатки. Свернуть ("Номенклатура, СчетУчета", "Количество, СуммаБух, СуммаНал"); // уберем склад

КонецЕсли;

ТекстКомментария = "Ввод начальных остатков ТМЦ" +? (ЗагружаемТовары=1, " (товары)", " (материалы)");

ВводОстатков = Документы. ОперацияБух. СоздатьДокумент ();

ОбщегоНазначения. ЗаполнитьШапкуДокумента (ВводОстатков, глЗначениеПеременной ("глТекущийПользователь"),, "Продажа");

ВводОстатков. Дата = ДатаОперации;

ВводОстатков. Комментарий = ТекстКомментария;

ВводОстатков. Организация = Организация;

ВводОстатков. Ответственный = глЗначениеПеременной ("глТекущийПользователь");

ВводОстатков. Содержание = "<Фирма ЛИСТ> " + ТекстКомментария;

ВводОстатков. СуммаОперации = Остатки. Итог ("СуммаБух");

Для каждого СтрТЧ Из Остатки Цикл

СчетБУ = СтрТЧ. СчетУчета;

СтрокаСчетаНУ = ТабСоотвСчетов. Найти (СчетБУ, "СчетБУ");

Если СтрокаСчетаНУ = Неопределено Тогда // счета нет в таблице - заполним

СчетНУ = НайтиСчетНУПоБУ (СчетБУ);

Строчка = ТабСоотвСчетов. Добавить ();

Строчка. СчетБУ = СчетБУ;

Строчка. СчетНУ = СчетНУ;

Иначе

СчетНУ = СтрокаСчетаНУ. СчетНУ;

КонецЕсли;

ПроводкаБУ = ВводОстатков. Движения. Хозрасчетный. Добавить ();

ПроводкаБУ. Период = ДатаОперации;

ПроводкаБУ. Организация = Организация;

ПроводкаБУ. Содержание = ТекстКомментария;

ПроводкаБУ. СчетКт = ПланыСчетов. Хозрасчетный. Вспомогательный;

ПроводкаБУ. СчетДт = СчетБУ;

ОбщегоНазначения. УстановитьСубконто (ПроводкаБУ. СчетДт, ПроводкаБУ. СубконтоДт,"Номенклатура", СтрТЧ. Номенклатура, Истина);

Если ВестиСкладскойУчетБУ Тогда

ОбщегоНазначения. УстановитьСубконто (ПроводкаБУ. СчетДт, ПроводкаБУ. СубконтоДт,"Склады", СтрТЧ. Склад, Истина);

КонецЕсли;

Если ВестиПартионныйУчетБУ Тогда

ОбщегоНазначения. УстановитьСубконто (ПроводкаБУ. СчетДт, ПроводкаБУ. СубконтоДт,"Партии", Партия, Истина);

КонецЕсли;

ПроводкаБУ. КоличествоДт = СтрТЧ. Количество;

ПроводкаБУ. Сумма = СтрТЧ. СуммаБух;

ОбщегоНазначения. УстановитьСубконто (ПроводкаБУ. СчетДт, ПроводкаБУ. СубконтоДт,"Номенклатура", СтрТЧ. Номенклатура, Истина);

ОбщегоНазначения. УстановитьСубконто (ПроводкаБУ. СчетДт, ПроводкаБУ. СубконтоДт,"Склады", СтрТЧ. Склад, Истина);

КонецЦикла; // по строкам таб. остатков

ВводОстатков. Записать ();

Сообщить ("Сформирован документ: " + ВводОстатков);

КонецПроцедуры

Процедура КнопкаВыполнитьНажатие (Кнопка)

Ошибки = Ложь;

Фильтр = Новый Структура ("КодНоменклатуры, КодГруппы");

Если не ВсеРеквизитыЗаполнены () Тогда

Предупреждение ("Заполните все нужные реквизиты формы!", 20);

Возврат;

КонецЕсли;

ТабСкладов = ЗагрузитьСклады ();

ТабНоменклатуры = ЗагрузитьНоменклатуру ();

ТабОстатков = Новый ТаблицаЗначений;

ТабОстатков. Колонки. Добавить ("Номенклатура");

ТабОстатков. Колонки. Добавить ("Склад");

ТабОстатков. Колонки. Добавить ("СчетУчета");

ТабОстатков. Колонки. Добавить ("Количество");

ТабОстатков. Колонки. Добавить ("СуммаБух");

ТабОстатков. Колонки. Добавить ("СуммаНал");

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ВыбФайл,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ВыбФайл+": "+ ОписаниеОшибки ());

Возврат;

КонецПопытки;

Если не ТаблДБФ. Открыта () Тогда

Сообщить ("Не получилось открыть "+ВыбФайл+": "+ ОписаниеОшибки ());

Возврат;

КонецЕсли;

Если УдалятьСтарое Тогда

УдалитьСтарыеОперации ();

КонецЕсли;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

ПоляБазы = ТаблДБФ. Поля;

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

Если ПустаяСтрока (ТаблДБФ. NNUM) Тогда

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Количество = ТаблДБФ. KOLTEK;

Если Количество = 0 Тогда

Если ТаблДБФ. Следующая () Тогда

ВсегоЗаписей = ВсегоЗаписей-1;

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли; // нечего переносить

Имя = СокрЛП (ТаблДБФ. NAME);

КодБЭСТ = ПрефиксКода +"." + ТаблДБФ. GRUP +"." + ТаблДБФ. NNUM;

Номенклатура1С = Справочники. Номенклатура. НайтиПоРеквизиту ("КодБЭСТ", КодБЭСТ);

Если Номенклатура1С. Пустая () Тогда

Сообщить ("Не найдено соответствие для " + Имя + " с кодом БЭСТ: " + КодБЭСТ +". Пропускаем", СтатусСообщения. Внимание);

Ошибки = Истина;

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Если Номенклатура1С. Услуга Тогда // остатков по услугам не бывает

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

КодСклада = Врег (СокрЛП (ТаблДБФ. SCLAD));

СтрокаСклад = ТабСкладов. Найти (КодСклада, "Код");

Если СтрокаСклад = Неопределено Тогда

Сообщить ("Не найден склад с кодом БЭСТ: " + КодСклада +". Пропускаем", СтатусСообщения. Внимание);

Ошибки = Истина;

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

Склад1С = СтрокаСклад. Склад1С;

СчетБЭСТ = СокрЛП (ТаблДБФ. SCHET);

Если ПустаяСтрока (СчетБЭСТ) Тогда

Сообщить ("Счет учета не заполнен, используем счет по умолчанию.", СтатусСообщения. Внимание);

Счет1С = СчетПоУмолчанию;

Иначе

СтрокаСчета = СоответствиеСчетов. Найти (СчетБЭСТ, "СчетБЭСТ");

Если СтрокаСчета = Неопределено Тогда

Сообщить ("Счет учета " + СчетБЭСТ + " не имеет соответственного счета 1С. Запись будет пропущена", СтатусСообщения. Внимание);

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

Иначе

Счет1С = СтрокаСчета. Счет1СБух;

КонецЕсли;

КонецЕсли;

Если не Счет1С. ВидыСубконто [0]. ВидСубконто. ТипЗначения. СодержитТип (Тип ("СправочникСсылка. Номенклатура")) Тогда

Сообщить ("Счет " + Счет1С + " не имеет аналитики по номенклатуре. Запись будет пропущена", СтатусСообщения. Внимание);

Ошибки = Истина;

Если ТаблДБФ. Следующая () Тогда

Продолжить;

Иначе

Прервать;

КонецЕсли;

КонецЕсли;

СтрТаб = ТабОстатков. Добавить ();

СтрТаб. Номенклатура = Номенклатура1С;

СтрТаб. Склад = Склад1С;

СтрТаб. СчетУчета = Счет1С;

СтрТаб. Количество = Количество;

Фильтр. КодНоменклатуры = СокрЛП (ТаблДБФ. NNUM);

Фильтр. КодГруппы = СокрЛП (ТаблДБФ. GRUP);

МасНомен = ТабНоменклатуры. НайтиСтроки (Фильтр);

Если МасНомен. Количество () >0 Тогда

СтрТабНом = МасНомен [0];

СтрТаб. СуммаБух = СтрТабНом. ЦенаБух * Количество;

СтрТаб. СуммаНал = СтрТабНом. ЦенаНал * Количество;

Иначе

Сообщить ("Не найдена строка номенклатуры "+Имя+" ("+ТаблДБФ. NNUM+". "+ТаблДБФ. GRUP+"). Сумма не будет перенесена");

СтрТаб. СуммаБух = 0;

СтрТаб. СуммаНал = 0;

КонецЕсли;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Если ЗаписейНаОперацию>0 Тогда

Если ТабОстатков. Количество () = ЗаписейНаОперацию Тогда

СформироватьОперацию (ТабОстатков);

ТабОстатков. Очистить ();

КонецЕсли;

КонецЕсли;

Счетчик = Счетчик+1;

Если Цел (Счетчик/100) =Счетчик/100 Тогда

Состояние ("Обработано " + Счетчик + " зап. из " + ВсегоЗаписей);

КонецЕсли;

ОбработкаПрерыванияПользователя ();

КонецЦикла;

ЭлементыФормы. ТаблицаПросмотра. Колонки. Очистить ();

ТаблицаПросмотра = ТабОстатков. Скопировать ();

ЭлементыФормы. ТаблицаПросмотра. СоздатьКолонки ();

Если ТабОстатков. Количество () >0 Тогда

СформироватьОперацию (ТабОстатков);

КонецЕсли;

КонецПроцедуры

Процедура ВыбФайлНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ВыбранныйФайл. Выбрать () Тогда

Элемент. Значение = ВыбранныйФайл. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура ФайлГруппНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ВыбранныйФайлГрупп. Выбрать () Тогда

Элемент. Значение = ВыбранныйФайлГрупп. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура ФайлНоменклатурыНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ВыбранныйФайлНоменклатуры. Выбрать () Тогда

Элемент. Значение = ВыбранныйФайлНоменклатуры. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура ПриОткрытии ()

Если не ЗначениеЗаполнено (ДатаОперации) Тогда

ДатаОперации = НачалоГода (ТекущаяДата ()) - 1;

КонецЕсли;

// определим параметры учетной политики

БУ = ПланыСчетов. Хозрасчетный. Товары. ПолучитьОбъект ();

НУ = ПланыСчетов. Налоговый. Товары. ПолучитьОбъект ();

ВестиПартионныйУчетБУ = НЕ (БУ. ВидыСубконто. Найти (ПланыВидовХарактеристик. ВидыСубконтоХозрасчетные. Партии, "ВидСубконто") = Неопределено);

ВестиСкладскойУчетБУ = НЕ (БУ. ВидыСубконто. Найти (ПланыВидовХарактеристик. ВидыСубконтоХозрасчетные. Склады, "ВидСубконто") = Неопределено);

Если ВестиСкладскойУчетБУ Тогда

ВестиСуммовойУчетПоСкладамБУ = БУ. ВидыСубконто. Найти (ПланыВидовХарактеристик. ВидыСубконтоХозрасчетные. Склады, "ВидСубконто"). Суммовой;

Иначе

ВестиСуммовойУчетПоСкладамБУ = Ложь;

КонецЕсли;

ВестиСкладскойУчетНУ = НЕ (НУ. ВидыСубконто. Найти (ПланыВидовХарактеристик. ВидыСубконтоХозрасчетные. Склады, "ВидСубконто") = Неопределено);

Если ВестиСкладскойУчетНУ Тогда

ВестиСуммовойУчетПоСкладамНУ = НУ. ВидыСубконто. Найти (ПланыВидовХарактеристик. ВидыСубконтоХозрасчетные. Склады, "ВидСубконто"). Суммовой;

Иначе

ВестиСуммовойУчетПоСкладамНУ = Ложь;

КонецЕсли;

ЭлементыФормы. Партия. Доступность = ВестиПартионныйУчетБУ;

КонецПроцедуры

Процедура ФайлСохраненияНачалоВыбора (Элемент, СтандартнаяОбработка)

Если ФайлСохранения. Выбрать () Тогда

Элемент. Значение = ФайлСохранения. ПолноеИмяФайла;

КонецЕсли;

КонецПроцедуры

Процедура КоманднаяПанель3Действие1 (Кнопка)

ЗначениеВФайл (ИмяФайлаСохранения, СоответствиеСчетов);

КонецПроцедуры

Процедура КоманднаяПанель3Действие (Кнопка)

СоответствиеСчетов = ЗначениеИзФайла (ИмяФайлаСохранения);

КонецПроцедуры

Процедура КоманднаяПанель2ЗагрузитьСчета (Кнопка)

Если СоответствиеСчетов. Количество () >0 Тогда

Ответ = Вопрос ("Таблица соответствия не пуста. Очистить?", РежимДиалогаВопрос. ДаНет);

Если Ответ=КодВозвратаДиалога. Нет Тогда

Возврат;

Иначе

СоответствиеСчетов. Очистить ();

КонецЕсли;

КонецЕсли;

Если ТаблДБФ. Открыта () Тогда

ТаблДБФ. ЗакрытьФайл ();

КонецЕсли;

Попытка

ТаблДБФ. ОткрытьФайл (ВыбФайл,, Истина);

Исключение

Сообщить ("Не получилось открыть "+ВыбФайл+": "+ ОписаниеОшибки ());

Возврат;

КонецПопытки;

ВсегоЗаписей = ТаблДБФ. КоличествоЗаписей ();

ПоляБазы = ТаблДБФ. Поля;

// обработка таблицы

Если не ТаблДБФ. Первая () Тогда

Сообщить ("Выбранная таблица пуста!");

КонецЕсли;

Счетчик = 1;

Пока Истина Цикл

СчетБЭСТ = СокрЛП (ТаблДБФ. SCHET);

Если ПустаяСтрока (СчетБЭСТ) Тогда

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

Продолжить;

КонецЕсли;

СтрокаСчета = СоответствиеСчетов. Найти (СчетБЭСТ, "СчетБЭСТ");

Если СтрокаСчета = Неопределено Тогда // такого счета еще нет!

Счет1СБ = ПолучитьСчет1С (СчетБЭСТ);

Если не Счет1СБ. Пустая () Тогда

Счет1СН = НайтиСчетНУПоБУ (Счет1СБ);

Иначе

Счет1СН = ПланыСчетов. Налоговый. ПустаяСсылка ();

КонецЕсли;

СтрТаб = СоответствиеСчетов. Добавить ();

СтрТаб. СчетБЭСТ = СчетБЭСТ;

СтрТаб. Счет1СБух = Счет1СБ;

СтрТаб. Счет1СНал = Счет1СН;

Иначе // уже есть - ничего не делаем!

КонецЕсли;

Если не ТаблДБФ. Следующая () Тогда

Прервать;

КонецЕсли;

КонецЦикла;

КонецПроцедуры

ТаблДБФ = Новый xBase ();

ВыбранныйФайл = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыбранныйФайл. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ВыбранныйФайлГрупп = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыбранныйФайлГрупп. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ВыбранныйФайлНоменклатуры = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Открытие);

ВыбранныйФайлНоменклатуры. Фильтр = "Таблица dbf (*. dbf) |*. dbf";

ФайлСохранения = Новый ДиалогВыбораФайла (РежимДиалогаВыбораФайла. Сохранение);

ФайлСохранения. Фильтр = "Внутренняя таблица (*. tbl) |*. tbl";

ТаблицаСчетов = Новый ТаблицаЗначений;

ТаблицаСчетов. Колонки. Добавить ("СчетБЭСТ");

ТаблицаСчетов. Колонки. Добавить ("Счет1С");

Похожие работы на - Адаптация автоматизированной системы '1С Предприятие 8'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!