15
. Справочники
.1. Номенклатура
. Документы
.1. Приходная накладная
.2. Расходная накладная
.3. Установка цен номенклатуры
. Регистры сведений
.1. Цены
.2. Учетная политика
. Регистры накопления
.1. Остатки товаров
.2. Продажи
. Отчеты
.1. Остатки товаров
.2. Продажи
Далее будут подробно рассмотрены их структура,
назначение, а так же модули каждого из объектов и их форм.
.1 Справочники
В данной конфигурации создан только один
справочник «Номенклатура», который предназначен для хранения информации о
товарном ассортименте фирмы. У этого справочника нет никаких дополнительных
реквизитов, помимо стандартных - Наименование и Код.
Рисунок 12 Структура справочника
«Номенклатура»
Для этого справочника используется стандартная
форма элемента справочника. Дополнительные формы не создавались.
.2 Документы
Для решения задачи было добавлено три документа:
. «Установка цен номенклатуры» -
предназначен для установления цены продажи товаров, указанных в нем.
. «Приходная накладная» - необходим для
отражения поступления товаров на фирму.
. «Расходная накладная» - используется
для отражения реализации товаров фирмой-продавцом.
Структура этих документов показана на рисунках
13,14 и 15 соответственно.
Рисунок 13 Структура документа
«Установка цен номенклатуры»
Рисунок 14. Структура документа
«Приходная накладная»
Рисунок 15. Структура документа
«Расходная накладная»
Документ «Установка цен
номенклатуры» является регистратором для регистра сведений цены, который имеет
структуру, показанную на рис. 16 и 17.
Рисунок 16. Структура регистра
сведений «Цены»
Рисунок 17. Основные свойства
регистра сведений «Цены»
Это значит, что при проведении документа
«Установка цен номенклатуры» в регистре сведений «Цены» появляются новые
строки. Изменения, вносимые в регистр сведений, производятся по алгоритму,
указанному в процедуре «Обработка проведения» модуля документа «Установка цен
номенклатуры»
Процедура ОбработкаПроведения(Отказ, Режим)
Движения.Цены.Записывать = Истина;
Движения.Цены.Очистить();
Для Каждого ТекСтрокаЦены Из Цены Цикл
Движение = Движения.Цены.Добавить();
Движение.Период = Дата;
Движение.Товар = ТекСтрокаЦены.Товар;
Движение.Цена = ТекСтрокаЦены.Цена;
КонецЦикла;
КонецПроцедуры
Форма документа «Приходная накладная» выглядит
следующим образом.
Рисунок 18. Форма документа «Приходная
накладная»
В табличную часть вносятся все поступившие
товары и их характеристики. В поле «Сумма прихода» отражается сумма, на которую
поступили все товары, указанные в табличной части.
Ниже представлен текст модуля формы данного
документа
Процедура ТоварыТоварПриИзменении(Элемент)
// Пересчитывает цену при изменении товара
Количество=ЭлементыФормы.Товары.ТекущиеДанные.Количество;
Цена=ЭлементыФормы.Товары.ТекущиеДанные.ЦенаПокупки;
ЭлементыФормы.Товары.ТекущиеДанные.Сумма=Цена*Количество;
СуммаПрихода=Товары.Итог("Сумма");
КонецПроцедуры
Процедура ТоварыКоличествоПриИзменении(Элемент)
// Пересчитывает цену при изменении количества
Количество=ЭлементыФормы.Товары.ТекущиеДанные.Количество;
Цена=ЭлементыФормы.Товары.ТекущиеДанные.ЦенаПокупки;
ЭлементыФормы.Товары.ТекущиеДанные.Сумма=Цена*Количество;
СуммаПрихода=Товары.Итог("Сумма");
КонецПроцедуры
Процедура ТоварыЦенаПокупкиПриИзменении(Элемент)
// Пересчитывает цену при изменении цены
Цена=ЭлементыФормы.Товары.ТекущиеДанные.ЦенаПокупки;
ЭлементыФормы.Товары.ТекущиеДанные.Сумма=Цена*Количество;
СуммаПрихода=Товары.Итог("Сумма");
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи,
РежимПроведения)
// Запрещает проведение документа "задним
числом"
Если Дата<НачалоДня(ТекущаяДата()) Тогда
Предупреждение ("Не проведен!");
Отказ=Истина;
КонецЕсли;
КонецПроцедуры
Вышеуказанный документ является регистратором
для регистра накопления «Остатки товаров, который имеет структуру, показанную
на рисунках 19 и 20.
Рисунок 19. Структура регистра
накопления «Остатки товаров»
Рисунок 20. Основные свойства
регистра накопления «Остатки товаров»
При проведении этого документа в
регистре накопления возникают положительные движения, т.е. вид движения
накопления - приход. Оприходование товаров регулируется процедурой «Обработка
проведения» в модуле документа «Приходная накладная».
Процедура ОбработкаПроведения(Отказ, Режим)
Движения.ОстаткиТоваров.Записывать = Истина;
Движения.ОстаткиТоваров.Очистить();
Для Каждого ТекСтрокаТовары Из Товары Цикл
Движение = Движения.ОстаткиТоваров.Добавить();
Движение.ВидДвижения =
ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Товар = ТекСтрокаТовары.Товар;
Движение.СрокГодности =
ТекСтрокаТовары.СрокГодности;
Движение.Партия = Ссылка;
Движение.Количество =
ТекСтрокаТовары.Количество;
Движение.Сумма = ТекСтрокаТовары.Сумма;
КонецЦикла;
Форма документа «Расходная накладная» показана
на рисунке 21.
Рисунок 21. Форма документа
«Расходная накладная»
В табличную часть заносятся те товары, которые
подлежат реализации. Цена продажи заполняется при выборе товара из регистра
сведений «Цены». В поле «Сумма расхода» заносится сумма продажи всех товаров,
указанных в табличной части. Модуль формы выглядит следующим образом:
Процедура ТоварыТоварПриИзменении(Элемент)
// Пересчитывает
сумму при изменении товара
Количество=ЭлементыФормы.Товары.ТекущиеДанные.Количество;
ТекДан=ЭлементыФормы.Товары.ТекущиеДанные;
Запрос = Новый
Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|
ЦеныСрезПоследних.Цена
|ИЗ
|
РегистрСведений.Цены.СрезПоследних(&Дата, &Товар = Товар) КАК
ЦеныСрезПоследних";
Запрос.УстановитьПараметр("Дата",Дата);
Запрос.УстановитьПараметр("Товар",ТекДан.Товар);
Результат =
Запрос.Выполнить();
Выборка =
Результат.Выбрать();
Пока Выборка.Следующий()
Цикл
//Подставляется
цена из регистра сведений "Цены"
ТекДан.ЦенаПродажи=Выборка.Цена;
КонецЦикла;
ТекДан.Сумма=ТекДан.ЦенаПродажи*Количество;
СуммаРасхода=Товары.Итог("Сумма");
КонецПроцедуры
Процедура
ТоварыКоличествоПриИзменении(Элемент)
//Пересчитывает
сумму при изменении количества
Количество=ЭлементыФормы.Товары.ТекущиеДанные.Количество;
ТекДан=ЭлементыФормы.Товары.ТекущиеДанные;
Запрос = Новый
Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|
ЦеныСрезПоследних.Цена
|ИЗ
|
РегистрСведений.Цены.СрезПоследних(&Дата, &Товар = Товар) КАК
ЦеныСрезПоследних";
Запрос.УстановитьПараметр("Дата",Дата);
Запрос.УстановитьПараметр("Товар",ТекДан.Товар);
Результат =
Запрос.Выполнить();
Выборка =
Результат.Выбрать();
Пока
Выборка.Следующий() Цикл
//Подставляется
цена из регистра сведений "Цены"
ТекДан.ЦенаПродажи=Выборка.Цена;
ТекДан.Сумма=ТекДан.ЦенаПродажи*Количество;
СуммаРасхода=Товары.Итог("Сумма");
КонецПроцедуры
Процедура
ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
//Запрещает
проведение документа "Задним числом"
Если
Дата<НачалоДня(ТекущаяДата()) Тогда
Предупреждение
("Не проведен!");
Отказ=Истина;
КонецЕсли;
КонецПроцедуры
Этот документ является регистратором для
регистров накопления «Остатки товаров» и «Продажи». Их структура показана на
рисунках 22-23 и 19-20 соответственно.
Рисунок 22. Структура регистра
накопления «Продажи»
Рисунок 23. Основные свойства
регистра накопления «Продажи»
Движения, создаваемые при проведении документа
регулируются процедурой «Обработка проведения».
Процедура ОбработкаПроведения(Отказ, Режим)
Движения.ОстаткиТоваров.Записывать = Истина;
Движения.ОстаткиТоваров.Очистить();
Движения.Продажи.Записывать
= Истина;
Движения.Продажи.Очистить();
Для Каждого
ТекСтрокаТовары Из Товары Цикл
Запрос = Новый
Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|
ОстаткиТоваровОстатки.СрокГодности КАК СрокГодности,
|
ОстаткиТоваровОстатки.Партия,
|
ОстаткиТоваровОстатки.КоличествоОстаток как Кол,
|
ОстаткиТоваровОстатки.СуммаОстаток как Сум,
| ВЫБОР
| КОГДА
ОстаткиТоваровОстатки.КоличествоОстаток > 0
| ТОГДА
ОстаткиТоваровОстатки.СуммаОстаток / ОстаткиТоваровОстатки.КоличествоОстаток
| ИНАЧЕ 0
| КОНЕЦ КАК
Себестоимость
|ИЗ
|
РегистрНакопления.ОстаткиТоваров.Остатки(&Дата, Товар = &Товар) КАК
ОстаткиТоваровОстатки
|
|УПОРЯДОЧИТЬ ПО
| СрокГодности,
| Себестоимость
УБЫВ";
Граница=Новый
Граница(МоментВремени(),ВидГраницы.Исключая);
Запрос.УстановитьПараметр("Дата",
Граница);
Запрос.УстановитьПараметр("Товар",
ТекСтрокаТовары.Товар);
Результат =
Запрос.Выполнить();
Выборка =
Результат.Выбрать();
НадоСписать=ТекСтрокаТовары.Количество;
Пока
Выборка.Следующий() Цикл
Если
НадоСписать<=Выборка.Кол Тогда
Движение =
Движения.ОстаткиТоваров.Добавить();
Движение.ВидДвижения
= ВидДвиженияНакопления.Расход;
Движение.Период =
Дата;
Движение.Товар =
ТекСтрокаТовары.Товар;
Движение.СрокГодности
=Выборка.СрокГодности;
Движение.Партия
=Выборка.Партия;
Движение.Количество
= НадоСписать;
Движение.Сумма =
НадоСписать*Выборка.Себестоимость;
НадоСписать=0;
Прервать;
Иначе
Движение =
Движения.ОстаткиТоваров.Добавить();
Движение.ВидДвижения
= ВидДвиженияНакопления.Расход;
Движение.Период =
Дата;
Движение.Товар =
ТекСтрокаТовары.Товар;
Движение.СрокГодности
=Выборка.СрокГодности;
Движение.Партия
=Выборка.Партия;
Движение.Количество
= Выборка.Кол;
Движение.Сумма =
Выборка.Сум;
НадоСписать=НадоСписать-Выборка.Кол;
КонецЕсли;
КонецЦикла;
Если
НадоСписать>0 Тогда
Запрос.Текст =
"ВЫБРАТЬ
|УчетнаяПолитикаСрезПоследних.РазрешитьСписаниеСОтрицательнымиОстатками
КАК Политика
|ИЗ
|
РегистрСведений.УчетнаяПолитика.СрезПоследних(&Дата, ) КАК
УчетнаяПолитикаСрезПоследних";
Запрос.УстановитьПараметр("Дата",
Дата);
Результат =
Запрос.Выполнить();
Выборка =
Результат.Выбрать();
Пока
Выборка.Следующий() Цикл
Если
Выборка.Политика=Истина Тогда
Движение =
Движения.ОстаткиТоваров.Добавить();
Движение.ВидДвижения
= ВидДвиженияНакопления.Расход;
Движение.Период =
Дата;
Движение.Товар =
ТекСтрокаТовары.Товар;
Движение.СрокГодности
=0;
Движение.Партия =
Документы.ПриходнаяНакладная.ПустаяСсылка();
Движение.Количество
= НадоСписать;
Движение.Сумма = 0;
Иначе
Сообщить("В
строке №"+ТекСтрокаТовары.НомерСтроки+" товара
"+ТекСтрокаТовары.Товар+" недостаточно на складе!");
Отказ=Истина;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Движение =
Движения.Продажи.Добавить();
Движение.Период =
Дата;
Движение.Товар =
ТекСтрокаТовары.Товар;
Движение.Количество
= ТекСтрокаТовары.Количество;
Движение.Сумма =
ТекСтрокаТовары.Сумма;
КонецЦикла;
КонецПроцедуры
Так же по заданию необходимо реализовать
возможность запрета и разрешения продажи товара, отсутствующего (по данным
учета) на складе. Запрет продажи товара с «отрицательными остатками» или
разрешение определяется учетной политикой организации, которая может меняться
только в начале года.
Это можно реализовать с помощью регистра
сведений «Учетная политика», структура которого показана на рисунках 24-25.
Рисунок 24. Структура регистра
накопления «Учетная политика»
Рисунок 25. Основные свойства
регистра накопления «Учетная политика»
Заключение
Автоматизация бухгалтерского учета на
предприятии и подготовка финансовой отчетности в налоговые органы в условиях
переходной экономики России является одной из наиболее важных задач. Ситуация
такова, что сам по себе бухгалтерский учет на предприятии может рассматриваться
как внутреннее дело предприятия, а основой для оценки финансово-хозяйственной
деятельности предприятия со стороны государства служит отчетность
(бухгалтерский баланс и многочисленные другие отчетные формы), которая должна
ежеквартально предоставляться в налоговую инспекцию по месту регистрации
предприятия. Кроме того, существуют плановые и внеплановые налоговые проверки,
при проведении которых могут потребоваться все бухгалтерские документы, включая
первичные.
В настоящее время существует широкий выбор
различных систем автоматизации бухгалтерского учета. Не следует делить их на
плохие и хорошие, сильные слабые. Все они хороши и их возможности находят
практическое применение на предприятиях различного размера, профиля и рода
деятельности.
Для того, чтобы перевод бухгалтерии на компьютер
был эффективен и дал результат, следует учесть следующие аспекты.
Во-первых, важно правильно выбрать время для
внедрения автоматизации и оценить ее сроки. Не следует вводить в эксплуатацию
программы в «горячий сезон» и в период массовых отпусков сотрудников. Если
требуется доработка типовой конфигурации, то обязательно нужно выделить время
на подготовку технического задания и работу программистов внедренческой фирмы.
Проверить, все ли аспекты деятельности фирмы учтены.
Во-вторых, уделить особое внимание подготовке
персонала.
Взять в штат или по совместительству
технического специалиста, который будет отвечать и поддерживать исправную
работу техники, компьютерной сети, системного программного обеспечения.
Целесообразно предварительно провести обучение
сотрудников работе за компьютером, новой программе и новым возможностям,
которые она дает.
В-третьих, реально оценить возможности
сотрудников и готовность автоматизируемых участков.
В-четвертых, необходимо организовать четкое
взаимодействие всех автоматизируемых участков (складов, секций, бухгалтерии) и
распределение функций по сотрудникам.
При автоматизации бухучета важно не просто
перевести всю бумажную работу на компьютер. Важно, чтобы это увеличило
эффективность работы бухгалтерии и улучшило контроль над
финансово-хозяйственной деятельностью предприятия, что в свою очередь увеличит
эффективность управления предприятием, и, как следствие, эффективность его
работы.
Для того чтобы эффективно провести
автоматизацию, следует, в первую очередь, хорошо представлять, что же такое
автоматизированный бухучет. На первый взгляд все просто и даже такая постановка
вопроса кажется несколько надуманной, потому что автоматизированный бухучет -
это просто когда бухучет ведется на компьютере. Вот такое заблуждение и служит
причиной большого количества неудачных попыток автоматизации.
Распространенным стереотипом является и то, что
автоматизация бухучета приводит к сокращению бухгалтерского персонала, что
приводит к страху перед автоматизацией. Несмотря на то, что, на первый взгляд,
все логично - часть работы берет на себя компьютер, который и вытесняет
бухгалтеров-людей, стереотип является ошибочным. Дело в том, что количество
необходимых в бухгалтерии бухгалтеров зависит только от количества
обрабатываемых бухгалтерией первичных документов (накладных, кассовых ордеров,
платежек и пр.), а количество первичных документов не зависит от того,
автоматизирован бухучет или нет, оно зависит от объема хозопераций в
организации. Таким образом, автоматизация бухучета не уменьшает числа
необходимых в бухгалтерии бухгалтеров.
конфигурация
регистр отчет товар
Список литературы
1. Автоматизированные
информационные технологии в экономике. / Под ред. Г.А. Титоренко. - М.:
ЮНИТИ-ДАНА, 2008.
2. 1С:Предприятие
8.2. Практическое пособие разработчика. Примеры и типовые приемы - Изд. ООО
«1С-Паблишинг», 2009.
3. Информационный
ресурс «1С: Предприятие 8» - <http://v8.1c.ru/>
Похожие работы на - Автоматизация бухгалтерского учета на предприятии
|