Выполнил(а) студент(ка) группы
Скачать 0.63 Mb.
|
3.3 Особенности реализация модуля «Амортизация основных средств и нематериальных активов»Данная программа должна обеспечивать непосредственное взаимодействие с пользователем, организуя ввод, обработку и вывод информации, поэтому требует продумывания и реализации интерфейса взаимодействия. Для хранения информации об имеющихся основных средствах и нематериальных активах предусмотрены соответствующие справочники. Данные справочники являются двухуровневыми, в них осуществляется сплошное кодирование элементов независимо от разбиения их на группы, это достигается благодаря тому, что переключатель «Серии кодов» установлен в положение «Во всём справочнике». Для обеспечения удобной навигации по справочнику предусмотрено дерево групп. Также предусмотрено копирование элементов из одной группы в другую путём выбора соответствующей пиктограмму. (см. рисунок 3.4) Рис 3.4 Справочник основные средства Первоначально реквизиты справочника представлены списком. Для редактирования и внесения изменений предусмотрена форма диалога. Здесь предусмотрены следующие вкладки: общие сведения, бухгалтерский учёт, налоговый учёт, модернизация. Вкладка общие сведения предназначена для заполнения таких сведений, как наименование, инвентарный номер, даты приобретения, способ поступления, дата ввода в эксплуатацию, определения будет ли начисляться амортизация и других общих сведений о внеоборотном активе. Вкладка бухгалтерский учёт предусматривает ввод первоначальной стоимости, срока полезного использования, выбора способа начисления амортизации, счёта отнесения затрат, выбираемого из основного плана счетов, выбора подразделения к которому будет относиться объект внеоборотных активов. Вкладка налоговый учёт предусматривает задание амортизационной группы, а также внесения идентичных сведений, но применительно к налоговому учёту. Вкладка модернизация содержит остаточную стоимость объекта внеоборотных активов после модернизации. (см. рисунок 3.5) Рис 3.5 Форма диалога сведения об основном средстве Стоит отметить, что все реквизиты являются периодическими и могут изменять свои значения в течение времени. Каждое изменение периодического реквизита будет фиксироваться на определённую дату, т.е. программа в хронологическом порядке будет хранить историю изменения значения реквизита. Для просмотра и внесения изменений периодических реквизитов предусмотрена соответствующая форма история (значения периодических реквизитов). Просмотр возможен как по всем реквизитам, так и путём выбора списка реквизитов определённых пользователем. (см. рисунок 3.6) Рис 3.6 Значения периодических реквизитов Для формирования отчётности предусмотрена соответствующая форма. Окно диалога содержит элементы выбора периода, за который будет формироваться отчёт, а также кнопку «Сформировать». (см. рисунок 3.7) Рис. 3.7 Диалог отчёта Для удобства пользователя период может быть выбран за квартал, месяц, день или в интервале необходимых дат. (см. рисунок 3.8) Рис. 3.8 Выбор периода Реализация диалога осуществляется в конфигураторе с использованием визуальных средств. При нажатии кнопки «Сформировать» выполняется обработка входных данных, с помощью встроенного программного языка в прикладную подсистему, вывод печатной формы. Связь визуальных объектов с другими объектами метаданных системы осуществляется при помощи идентификаторов, представляющих собой символическую «ссылку» на объект, которая может быть использована как переменная. (см. рисунок 3.9) Рис 3.9 Идентификатор Печатная форма создана при помощи объекта метаданных Таблица. В программе реализована возможность использования таблицы для непосредственного ввода, обработки и отображения данных различных типов. Обработка информации и помещение ее в нужные места печатной формы для большинства объектов метаданных выполняется программными модулями на языке подсистемы 1С:Предприятие. Таблица в системе представляет собой совокупность ячеек прямоугольной формы, организованных в строки и столбцы. Каждый столбец таблицы и каждая строка имеет свой уникальный номер. Строки и столбцы нумеруются независимо, нумерация начинается с 1 и ведется от левого верхнего угла таблицы. Таким образом, любая ячейка таблицы обозначена парой чисел — номером строки и номером столбца, на пересечении которых она находится. Отдельным ячейкам и их диапазонам (компактным группам прямоугольной формы) присвоены собственные имена для удобства обращения к ним, также присвоены имена секциям. Заполнение таблицы выходными данными описывается в модуле. Приведём фрагмент модуля элемента отчёта. (см. листинг 3.1) Листинг 3.1 Фрагмент модуля элемента отчёта Номер Таблицы = "Таблица № 2-1"; переменная номер таблицы Таб = Создать Объект("Таблица")/ создание объекта Таб типа «Таблица» Таб. Исходная Таблица("Таблица_21"); ассоциирование объекта с формой Таб. Только Просмотр(1); запрет на изменение Таб. Опции(0, 0, 5, 3); параметры отображения Таб. Вывести Секцию("Заголовок"); // вывод секции «Заголовок» ОС. Выбрать Строки(); открыть таблицу значений ОС для выборки элементов Пока ОС. Получить Строку()=1 Цикл // цикл по элементам выборки далее определение значений переменных таблицы Месяц Начала Использования = Период Стр (Нач Месяца (ОС. Дата Ввода В Эксплуатацию), Кон Месяца (ОС. Дата Ввода ВЭксплуатацию)); Срок Полезного Использования = ОС. Срок Полезного Использования; Месячная Норма = гл Формат Сум (ОС.Месяч Амортв Процентах,0); Месячная Амортизация = гл Формат Сум (ОС. МесАмортизация,0); Таб .Вывести Секцию("Строка"); вывод секции «Строка» с переменными Таб. Вывести Секцию ("Год"); вывод секции «Год» с переменными Таб. Показать ("Книга учета. " + НомерТаблицы); отображение таблицы Визуальная форма является унифицированной и разработана встроенным в прикладную подсистему редактором таблиц. После нажатия на кнопку «Сформировать» Таблица будет заполнена выходными данными, полученными в ходе обработки, после чего её можно просмотреть, распечатать, сохранить в формате mxl (Таблицы), xls (Таблицы Excel), htm, html (HTML документ), txt (Текстовый документ). (см. таблицу 3.10) Рис. 3.10 Редактор таблиц Стоит отметить, таблица в данном проекте реализована не как «статический» объект, а «динамический» при помощи «Расшифровки». В поле «Расшифровка» указано выражение на встроенном языке системы 1С:Предприятие. При формировании табличного документа это выражение будет вычислено и его результат будет записан в поле «Расшифровка» ячейки готового табличного документа. В отличие от текста, помещаемого в саму ячейку, значение выражения не преобразуется к типу «строка». Приведём фрагмент модуля. (см. листинг 3.2) Листинг 3.2 «Расшифровка» ОСВ Расш ОСВ = Создать Объект ("Список Значений"); Расш ОСВ. Установить("Отчет", "Оборотно Сальдовая Ведомость По Счету"); …………………………………………………. Расшифровка ОС = ОС. ОС Название; Расш ОСВ. Установить ("Дата1", Нач Дата); входные параметры Расш ОСВ. Установить ("Дата2", Кон Дата); Расш ОСВ. Установить ("Счет", С021); Расш ОСВ. Установить ("ВыбВидСубконто1", Виды Субконто. Основные Средства); Расш ОСВ. Установить("Субконто1", ОС. ОС Название); Таким образом, осуществляется связь с оборотно-сальдовой ведомостью, которая в качестве контекста получает входные параметры списка значений «РасшОСВ» и формирует выходные данные, (сальдо, обороты счёта) представленные отчётом. Когда готовый табличный документ открыт в режиме «Только просмотр», при помещении указателя мыши над ячейкой, содержащей заполненное поле «Расшифровка», указатель меняется. Это значит, что возможна детализация (расшифровка) данных таблицы. Теперь, если дважды щелкнуть левой кнопкой мыши на этой ячейке (или сделать ее активной и нажать клавишу Enter), значение поля будет выдано на экран: значения типа «строка», «число», «дата» и «перечисление» будут выданы для просмотра; если значение имеет тип «документ», соответствующий документ будет открыт для просмотра и редактирования; если значение является элементом справочника, этот элемент будет открыт для просмотра и редактирования в диалоге. Если при настройке свойств справочника было задано редактирование в списке, будет открыта таблица справочника, а указатель в таблице будет установлен на нужный элемент справочника. (см. рисунок 3.11) Рис. 3.11 Расшифровка сведений об основном средстве В процессе обработки данных обрабатываются данные справочника «Основные средства» и «Нематериальные активы» по каждому реквизиту справочника. Выборка данных производится с помощью языка запросов и осуществляется из соответствующих справочников. Все условия выборки определены законодательной базой. Использование запроса обусловлено тем, что скорость выборки данных во много раз превышает скорость при использовании других средств выборки, так как запрос, написанный на языке подсистемы интерпретируется последней в SQL запрос для произведения выборки из базы данных SQL Server-а. Приведём фрагмент запроса. (см. листинг 3.3) Листинг 3.3 Объект запрос Запрос = Создать Объект ("Запрос"); Текст Запроса = "//{{ЗАПРОС(Сформировать) Период с Нач Дата по Кон Дата; Справочник. Основные Средства. Дата Ввода В Эксплуатацию; Дата Приобретения = Справочник. Основные Средства .Дата Приобретения; Причина Выбытия = Справочник. Основные Средства. Причина Выбытия; Дата Выбытия = Справочник. Основные Средства. Дата Выбытия; …………………………………………………. Условие (Подлежит Амортизации = 1); Условие (Собственное = 1); Условие (Пустое Значение (Дата Ввода В Эксплуатацию) = 0); Условие (Дата Ввода В Эксплуатацию < Кон Дата); Условие (Срок Полезного Использования>=12); Условие(СпособПоступления<>Перечисление.СпособыПоступленияОС.БезвозмездноеПоступление); Условие ((Начислять Амортизацию = 1) или (Дата Выбытия > Нач Дата) или (Пустое значение(Дата Выбытия)=1)); Группировка ОС Название Без Групп; }}ЗАПРОС; Если ошибка в запросе, то выход из процедуры Если Запрос. Выполнить (Текст Запроса) = 0 Тогда Возврат; Конец Если; В программном модуле так же использован механизм получения бухгалтерских итогов. Для получения большого количества итогов в различных разрезах объект «Бухгалтерские Итоги» переключается в режим работы с запросом. Для переключения в этот режим вызывается метод Выполнить Запрос в параметрах которого, а также дополнительными методами устанавливается состав итогов, которые будут получены запросом. Выполнение данного метода осуществляет выборку данных и их предварительную обработку. После выполнения запроса с помощью специального набора методов объекта «Бухгалтерские Итоги» осуществляется получение итогов, полученных данным запросом. К этим методам относятся методы обхода итогов в различных разрезах (сформированных запросом) и методы для получения собственно итогов. Кроме того специальный набор атрибутов объекта «Бухгалтерские Итоги» позволяет обращаться в процессе обхода результатов запроса к значениям полученных группировок. Запрос используется для получения кредитовых оборотов по бухгалтерским счетам: 02.1 (Амортизация основных средств), 04 (Нематериальные активы), 05 (Амортизация нематериальных активов) , а также для передачи в качестве параметра в функцию расчёта количества месяцев использования актива. Приведём фрагмент запроса. (см. листинг 3.4) Листинг 3.4 Бухгалтерские итоги С021=СчетПоКоду("02.1"); Бух Ит = Создать Объект("Бухгалтерские Итоги"); БухИт.ИспользоватьСубконто(ВидыСубконто.ОсновныеСредства,ОСНазвание); Бух Ит. Выполнить Запрос (ДатаН,ДатаК,С021 ,,,,,); Бух Ит. Выбрать Субконто (1); Пока Бух Ит .Получить Субконто (1) = 1 Цикл Возврат Бух Ит. КО (С021); Конец Цикла; Функция расчёта месяцев использования актива в налоговом периоде также использует механизм запроса бухгалтерских итогов для расчёта кредитового оборота по счёту 02.1. Количество месяцев определяется отношением кредитового оборота счёта 02.1 за налоговый период к сумме амортизации в месяц. Обороты определяются по субконто, переданного в качестве параметра ОС Название. (см. листинг 3.5) Листинг 3.5 Количество месяцев использования актива Функция Кол Мес Нал Пер(ОС Название, САВМ) Колво=0;Сум=0; С021=СчетПоКоду("02.1"); Бух Ит = Создать Объект("Бухгалтерские Итоги"); БухИт.Использовать Субконто (Виды Субконто. Основные Средства ОС Название); Бух Ит. Выполнить Запрос (НачДата,КонДата,С021 ,,,,,); Бух Ит. Выбрать Субконто (1); Пока Бух Ит. Получить Субконто (1) = 1 Цикл Сумм = Бух Ит. КО (С021); Конец Цикла; Если САВМ>0 Тогда Колво = цел (Окр (Сум/окр(САВМ,2,1),1)); Иначе Колво=0; Конец Если; Возврат Колво; Конец Функции Для более подробной аналитики используется оборотно-сальдовая ведомость по счёту. Оборотно-сальдовая ведомость, а точнее, её электронный вариант представляет собой динамический отчёт. Здесь отражены: сальдо на начало периода, обороты за период, сальдо на конец периода. Видами субконто выступают: основные средства и нематериальные активы. Формируется ведомость за определённый период. Её можно использовать для просмотра суммы амортизации, включаемой в расходы налогового периода, суммы амортизации за предыдущий период, а также для сверки данных. Оборотно-сальдовая ведомость может быть вызвана как из отчёта, так и из главного меню подсистемы. Вызов из отчёта может быть во многом полезен бухгалтеру. Этот вариант предусмотрен на тот случай, когда возникают сомнения по поводу правильного заполнения отчёта по амортизации основных средств и нематериальных активов. (см. рисунок 3.12) Рис 3.12 Оборотно-сальдовая ведомость по счёту 02.1 Для более подробной детализации оборотно-сальдовая ведомость может быть развёрнута до карточки счёта. В карточке счёта отражены: наименование операции, бухгалтерские проводки (корреспондирующие счета), сумма операции и сальдо по дебету или по кредиту счёта, в зависимости от того какой счёт активный, пассивный или активно-пассивный. Карточка счёта формируется по каждому субконто, выбранному пользователем из отчёта. Соответственно, все операции, в которых начисляется амортизация основных средств и нематериальных активов будут представлена пользователю. Использование карточки счёта предоставляет возможность проследить все операции по счёту за определённый период. (см. рисунок 3.13) Рис 3.13 Карточка счёта 02.1 Все операции формируются определённым документом или вводятся вручную. Документами выступают документы по учёту основных средств и нематериальных активов. Одним из основных является документ начисления амортизации ОС и НМА, погашения стоимости спецодежды и спецоснастки. Данный документ формирует операцию начисления амортизации и соответствующие проводки. Проведение документа выполняется раз в месяц. (см. рисунок 3.14) Рис 3.14 Начисление амортизации ОС и НМА Просмотр операций, сформированных данным документом, их корректировка и внесение изменений осуществляется непосредственно из карточки счёта, также это возможно осуществлять используя журнал операций, в котором устанавливается отбор по дате или иному реквизиту или используется фильтр по значению. В журнале операций достаточно наглядно также отражены проводки по каждой операции. (см. рисунок 3.15) Рис 3.15 Журнал операций Операция (в нашем случае) имеет следующие «реквизиты»: для «шапки» это - дата, номер, сумма, содержание; для «табличной части»: номер операции, дебет счёта, 3 субконта для счёта по дебету, 3 субконта для счёта по кредиту, валюта операции, количество, сумма, содержание проводки, основание (документ), комментарий. (см. рисунок 3.16) Рис 3.16 Операция (начисление амортизации и погашение стоимости) Другой немаловажной операцией является модернизация внеоборотных активов, которая оформляется документом с одноименным названием. В ходе модернизации может изменится срок полезного использования, месячная норма амортизации, остаток амортизационных отчислений. Кроме того, списание, передача основных средств и нематериальных активов также вносят соответствующие корректировки. Программа учитывает эти моменты, анализируя проводки данных операций. Определение внеоборотного актива осуществляется по аналитике (путём выбора подходящего субконто). (см. рисунок 3.17) Рис 3.17 Модернизация ОС Для обращения к документам по учёту основных средств и нематериальных активов предусмотрены соответствующие журналы, в которых обеспечивается их хранение, изменение, просмотр и отбор. (см. рисунок 3.18) Рис 3.18 Журнал «Учёт ОС» |