Разработка конфигурации для ведения учета продовольственного магазина

Внедрение компьютерных технологий в компанию. Анализ моделей бизнес-процессов. Описание входной и выходной информации. Логическая структура базы данных. Финансово–экономическое обоснование цены проекта. Выбор состава технических и программных средств.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 07.12.2015
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Содержание

Введение

1. Постановка задачи

2. Системный проект

2.1 Описание предметной области

2.2 Модели бизнес-процессов

2.3 Описание входных и выходных данных

2.4 Логическая структура базы данных

2.5 Финансово - экономическое обоснование стоимости проекта

3. Технический проект

3.1 Выбор состава технических и программных средств

3.2 Общее описание конфигурации

4. Экспериментальная часть

4.1 Тестирование приложений

Заключение

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

Приложение

Введение

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

Информационные системы по степени автоматизации можно разделить на автоматизированные и автоматические.

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

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

Преимущества от использования

При внедрении компьютерных информационных технологий в организацию преследуется две взаимосвязанные основные цели:

- сокращение затрат в организации;

- увеличение отдачи, повышение производительности.

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

Моя же АИС может применяться как для малого бизнеса, так и для среднего или крупного.

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

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

Основной целью курсового проекта является разработка конфигурации для продовольственного магазина.

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

1. Постановка задачи

Разрабатываемая система будет хранить информацию о:

- товарах;

- денежных средствах;

- сотрудниках;

- держателях дисконтных карт;

- поставщиках.

Такая система упростит и облегчит деятельность предприятия за счет хранения данных за весь период оказания услуг. Для этого необходимо создание конфигурации предприятия.

Разрабатываемая конфигурация должна:

1) иметь понятный и удобный интерфейс;

2) обеспечивать вход в систему посредством логина и пароля;

3) иметь все необходимые формы для внесения, редактирования и получения информации;

4) проверять введенную информацию на корректность;

5) обеспечивать печать отчетной документации.

2. Системный проект

2.1 Описание предметной области

В продовольственном магазине ООО «На скорую руку» осуществляют работу 3 группы сотрудников: руководство, бухгалтер и продавец.

Основными функциями группы продавец являются:

- предоставление покупателю информации о товаре;

- осуществление продажи товара;

- прием оплаты от покупателя и выдача подтверждающего документа об оплате;

- оформление новых дисконтных карт;

- формирование отчета о продажах за день.

Основными функциями группы бухгалтер являются:

- оприходование товара на склад;

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

- списание товара по причине: истечения срока годности, хищения и порчи товара;

- формирование цен на товары;

- начисление и выдачи заработной платы;

- проведение инвентаризации товаров на складе;

- формирование отчетов о наличие товаров на складе;

- ввод данных о состоянии расчетного счета предприятия;

- формирование отчета о текущем финансовом состоянии предприятия;

- формирование сводного отчета о продажах.

Основными функциями группы руководство являются:

- установка наценки на товары;

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

- заказ нового товара у поставщиков;

- оформление приказов: о приёме сотрудника на работу, об увольнении сотрудника и о переводе сотрудника на другую должность;

- формирование графика работы сотрудников предприятия;

- формирование сводного отчета о финансовом состоянии предприятия.

2.2 Модели бизнес-процессов

На рисунке описано входные и выходные данные, пользователи системы и документы, контролирующие правильность ведения документов.

Рисунок - Контекстная диаграмма

Рисунок - Декомпозиция родительской диаграммы

На рисунке описаны функции, которые будет выполнять конфигурация.

Рисунок - Декомпозиция диаграммы «Авторизация пользователя»

На рисунке описан вход пользователя в систему.

Рисунок - Декомпозиция диаграммы «Оформление заказа»

На рисунке описано оформление приходного ордера.

Рисунок - Декомпозиция диаграммы «Запрос о наличие в базе нужной информации»

На рисунке описан выбор поставщика и товара.

Рисунок - Декомпозиция диаграммы «Учет поступления товара»

На рисунке описано формирование товарной накладной и акта о списании товаров.

Рисунок - Декомпозиция диаграммы «Учет реализации товара»

На рисунке описано формирование продажи товара.

Рисунок - Декомпозиция диаграммы «Оформление продажи товара»

На рисунке описан процесс оформления продажи товара.

2.3 Описание входных и выходных данных

@ИМЯ = ЛОГИН И ПАРОЛЬ

@ТИП = дискретный поток

@БНФ = [{"А"..."Я"} !{"а"..."я"} !{"0"..."9"}]

@ИМЯ = ИСХОДНАЯ БАЗА ДАННЫХ

@ТИП = дискретный поток

@БНФ = РАНЕЕ СОЗДАННАЯ БАЗА ДАННЫХ

@ИМЯ = НОРМАТИВНЫЕ ДОКУМЕНТЫ

@ТИП = дискретный поток

@БНФ = ВСЕ ДЕЙСТВИЯ В СИСТЕМЕ И СОЗДАННЫЕ ДОКУМЕНТЫ СООТВЕТСТВУЮ ЗАКОНАМ РФ

@ИМЯ = ПРОДАВЕЦ-КОНСУЛЬТАНТ

@ТИП = дискретный поток

@БНФ = ВХОД В СИСТЕМУ ПОД АККАУНТОМ "Продавец-консультант"

@ИМЯ = БУХГАЛТЕР

@ТИП = дискретный поток

@БНФ = ВХОД В СИСТЕМУ ПОД АККАУНТОМ "Бухгалтер"

@ИМЯ = ПРИКАЗЫ ДИРЕКТОРА

@ТИП = дискретный поток

@БНФ = ВХОД В СИСТЕМУ ПОД АККАУНТОМ "Директор"

@ИМЯ = НАЛОГИ

@ТИП = дискретный поток

@БНФ = ВЫПЛТА НАЛОГОВ ГОСУДАРСТВУ

@ИМЯ = БАЗА ДАННЫХ С ИЗМЕНЕНИЯМИ

@ТИП = дискретный поток

@БНФ = БАЗА ДАННЫХ С ПРИНЯТЫМИ ИЗМЕНЕНИЯМИ

@ИМЯ = ОТЧЕТЫ

@ТИП = дискретный поток

@БНФ = ОТЧЕТЫ О ДЕЯТЕЛЬНОСТИ ПРЕДПРИЯТИЯ

@ИМЯ = ЧЕК О ПРОДАЖЕ ТОВАРА

@ТИП = дискретный поток

@БНФ = ОТЧЕТ О ПРОДАННОМ ТОВАРЕ

@ИМЯ = ЗАПРОС БАЗЕ

@ТИП = дискретный поток

@БНФ = ПОИСК ПОЛЬЗОВАТЕЛЯ В БАЗЕ

@ИМЯ = ВХОД В СИСТЕМУ

@ТИП = дискретный поток

@БНФ = АККАУНТ ПОЛЬЗОВАТЕЛЯ

@ИМЯ = ПОИСК ТОВАРА

@ТИП = дискретный поток

@БНФ =ПОИСК В БАЗЕ ТОВАРА

@ИМЯ = ПОИСК ПОСТАВЩИКА

@ТИП = дискретный поток

@БНФ =ПОИСК В БАЗЕ ПОСТАВЩИКА

@ИМЯ = ДАННЫЕ В БАЗАХ

@ТИП = дискретный поток

@БНФ = ПРОВЕРКА НА НАЛИЧИЕ

@ИМЯ = ОТСУТСТВИЕ

@ТИП = дискретный поток

@БНФ = НЕОБХОДИМОСТЬ ДОБАВЛНИЯ ДАННЫХ

@ИМЯ = НОВЫЙ ТОВАР

@ТИП = дискретный поток

@БНФ = ЗАПОЛНЕНИЯ ДАННЫХ О ТОВАРЕ

@ИМЯ = НОВЫЙ ПОСТАВЩИК

@ТИП = дискретный поток

@БНФ = ЗАПОЛНЕНИЯ ДАННЫХ О ПОСТАВЩИКЕ

@ИМЯ = В БАЗЕ

@ТИП = дискретный поток

@БНФ = ВЫБОР СУЩЕСТВУЮЩИХ ДАННЫХ ИЗ БАЗЫ

@ИМЯ = НОВЫЕ ДАННЫЕ

@ТИП = дискретный поток

@БНФ = ИЗМЕНИЕ В БАЗЕ

@ИМЯ = РЕКВИЗИТ

@ТИП = дискретный поток

@БНФ = ПОЛУЧЕНИЕ ДАННЫХ ИЗ БАЗЫ

@ИМЯ = ПОРЯДОК ДВИЖЕНИЯ ТОВАРА

@ТИП = дискретный поток

@БНФ = ПОРЯДОК ПЕРЕДАЧИ ТОВАРА В МАГАЗИНЕ

@ИМЯ = ДАННЫЕ

@ТИП = дискретный поток

@БНФ = ВЫБОР ДАННЫХ ИЗ БАЗЫ

@ИМЯ = ИСПОРЧЕННЫЕ ТОВАРЫ

@ТИП = дискретный поток

@БНФ = ОФОРМЛЕНИЕ ИСПОРЧЕННЫХ ТОВАРОВ

@ИМЯ = БРАКОВАННЫЕ ТОВАРЫ

@ТИП = дискретный поток

@БНФ = ОФОРМЛЕНИЕ БРАКОВАНЫХ ТОВАРОВ

@ИМЯ = ИЗМЕНЕНИЯ В БАЗЕ ДАННЫХ

@ТИП = дискретный поток

@БНФ = БАЗА ДАННЫХ С ПРИНЯТЫМИ ИЗМЕНЕНИЯМИ

@ИМЯ = ПРОЦЕНТ СКИДКИ

@ТИП = дискретный поток

@БНФ = НАЧИСЛЕНИЕ СКИДКИ НА ТОВАРЫ

@ИМЯ = ИНФОРМАЦИЯ О ДИСКОНТНОЙ КАРТЕ

@ТИП = дискретный поток

@БНФ = ОФОРМЛЕНИЕ ЗАПРОСА НА ПОЛУЧЕНИЕ ДИСКОНТНОЙ КАРТЫ

@ИМЯ = ВНЕСЕНИЕ ИЗМЕНЕНИЙ В БАЗУ ДАННЫХ

@ТИП = дискретный поток

@БНФ = БАЗА ДАННЫХ С ПРИНЯТЫМИ ИЗМЕНЕНИЯМИ

@ИМЯ = ИНФОРМАЦИЯ О ПОКУПКЕ ТОВАРА СО СКИДКОЙ

@ТИП = дискретный поток

@БНФ = ОФОРМЛЕНИЕ ПОКУПОК С ПРЕДЪЯВЛЕНИЕМ ДИСКОНТНОЙ КАРТЫ

@ИМЯ = ИНФОРМАЦИЯ О ПОКУПКЕ ТОВАРА БЕЗ СКИДКИ

@ТИП = дискретный поток

@БНФ = ОФОРМЛЕНИЕ ПОКУПОК БЕЗ ПРЕДЪЯВЛЕНИЯ ДИСКОНТНОЙ КАРТЫ

2.4 Логическая структура базы данных

На рисунках описаны логическая и физическая структуры базы данных моей конфигурации.

Рисунок - логическая структура базы данных

Рисунок - физическая структура базы данных

2.5 Финансово - экономическое обоснование стоимости проекта

В данной части курсовой работы произведем расчет стоимости разработки программного продукта и период окупаемости.

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

ѕ полезный фонд времени;

ѕ годовые эксплуатационные затраты;

ѕ среднегодовая заработная плата разработчика;

ѕ стоимость одного часа машинного времени;

ѕ дополнительные коэффициенты, влияющие на стоимость данной программы.

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

Определим стоимость одного часа машинного времени.

Стоимость одного часа машинного времени вычисляем по формуле:

,

где - годовые эксплуатационные расходы, руб.;

- годовой эффективный фонд времени, час;

- коэффициент использования машины и времени разработчика.

Коэффициент использования машины равен 0,85.

Эффективный фонд времени

Годовой эффективный фонд времени рассчитывается по формуле:

,

где - продолжительность рабочего дня, час;

- количество рабочих дней;

- регламентированные потери рабочего времени.

На предприятии продолжительность смены 8 часов, работа идет в 1 смену, в году 249 рабочих дней, за рабочим предусмотрен регламентированный перерыв 1 час. Эффективный фонд времени будет равен:

(8 * 1 * 249 - 249) / 12 = 145,25 час.

Эксплуатационные расходы

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

,

где - среднегодовая заработная плата разработчика, он же занимается обслуживаем. Работу выполняет техник (инженер) - программист с заработной платой ( ) в размере 8 000 рублей.

- годовые амортизационные отчисления, руб.;

- накладные расходы, руб.;

- стоимость потребляемой электроэнергии за год, руб.

Трудовые затраты за разработку программного продукта определим по формуле:

,

где О - оклад;

П - премия;

УК - уральский коэффициент.

Премию рассчитаем по формуле:

,

Рассчитаем уральский коэффициент по формуле:

П = 8 000 * 20 % /100% = 1 600 руб.

УК = (8 000 + 1 600) * 15% / 100% = 1 440 руб.

8 000 + 1 600 + 1 440 = 11 040 руб.

Амортизационные отчисления определяем по формуле:

,

где, - стоимость компьютера, 35 000 тыс. руб.

- норма амортизации, %.

норма амортизации определяется по формуле:

На мес. = 100% / Т /12

На мес. = 100%/4/12 = 2,08%

35 000 * 2,08% / 100% = 735,00 руб.

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

11 040 * 10% / 100% = 1 104,00 руб.

,

где, - сумма потребляемой мощности (0,2 кВт);

- годовой фонд рабочего времени, в 2015 году = 145,25 час;

- стоимость 1 кВт = 3,07 руб.;

- коэффициент использования мощности = 0,85.

= 145,25 * 0,2 * 3,07 * 0,85 = 75,81 руб.

Исходя из этих данных, получаем:

= 11 040 + 1 104 +735 + 75,81 = 12 954,81 руб.

По полученным значениям рассчитываем стоимость машинного часа, рассчитывается по формуле 1.1:

= 12 954,81 / 145,25 * 0,85 = 75,81 руб.

Рассчитаем время разработки.

Время разработки рассчитывается по следующим этапам:

Таблица 1 - Этапы разработки программы

№ п/п

Этапы разработки

Время, час

Время и этапы определяются с руководителем

1

2

3

4

5

6

Постановка задачи

Выбор метода решения

Составление алгоритма

Выбор языка программы

Составление программы

Отладка

6

3

5

1

100

30

Итого

В том числе машинное время:

В том числе ручное время:

145

130

15

Стоимость разработки программы

Стоимость разработки программы рассчитывается по формуле:

, (2.5.11)

где - стоимость разработки программы;

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

- стоимость машинного часа;

и - соответственно количество чел. - часов разработчика и машинных часов.

,

где - годовой эффективный фонд времени 145,25 час.

- годовой фонд заработной платы:

Отчисления на социальные нужды 30,2 %, в том числе:

ѕ Пенсионный фонд - 22%;

ѕ Фонд медицинского страхования - 5.1%;

ѕ Фонд социального страхования - 2.9%;

ѕ Налог на травму - 0,2%;

Отчисления определяются в % от годового фонда заработной платы.

11 040 + (11 040 * 30,2% / 100%) = 14 374,08 руб.

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

14 374,08 / 145,25 = 98,96 руб.

Вычисляем стоимость разработки программы:

(98,96 * 15) + (75,81 * 130) = 1 484,4 + 9 855,3 = 11 339,7 руб.

Рассчитаем цену программного продукта

Цена - это денежное выражение стоимости. Она включает в себя полную себестоимость, установленный размер прибыли, НДС, определяется по формуле 3.2:

,

где, Цена - денежное выражение стоимости программы;

- стоимость разработки программы (Ср);

Прибыль - зависит от спроса и предложения определяется в % от стоимости разработки программы (Ср);

НДС - налог на добавленную стоимость, определяется в 18 % от суммы стоимости разработки программы и прибыли;

Стоимость разработки программы (Ср) - 11 339,7 руб.;

Согласно задания, прибыль составляет 15 % от полной себестоимости;

Прибыль = 11 339,7 * 15% / 100% = 1 700,96 руб.;

НДС = (11 339,7 + 1 700,96) * 18% / 100% = 2 347,32 руб.;

Цена = 11 339,7 + 1 700,96 + 2 347,32 = 15 387,98 руб.

По данным расчетов построим структурную диаграмму: цены изделия (рисунок

Рисунок 1 - Диаграмма цены изделия

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

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

,

где - прибыль от реализации продукции;

- полная себестоимость ее изготовления.

1 700,96 / 11 339,7 * 100% = 15 %

Рассчитаем экономическую ценность эффективности от внедрения программы

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

Расчет экономической эффективности проводиться по разности затрат до внедрения (31) и после внедрения (32), умноженной на объём выполняемых работ (N) за минусом стоимости разработки программы (Ср).

,

где N - количество запусков программы в год;

N принимается равным 365 дней.

,

где t1 - время на один расчет в ручном варианте;

Время t1 = 1 час.

З1 = 98,96 * 1 = 98,96 руб.

,

где, t2 - время на один расчет в машинном варианте;

Время t2 = 0,17 час.

З2 = 75,81 * 0,17 = 12,89 руб.

Э = (98,96 - 12,89) * 365 - 11 339,7 = 31 415,55 - 11 339,7 = 20 075,85 руб.

Годовой экономический эффект составил 20 075,85 рублей.

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

Срок окупаемости данной программы составит:

,

где Ср.ок - срок окупаемости;

Срок = 11 339,7 / 20 075,85 = 0,565 года, т. е. данная программа окупиться через 6,78 месяца.

3. Технический проект

3.1 Выбор состава технических и программных средств

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

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

Примеры таких программ:

· 1С Розница

· АТОЛ: Рабочее место кассира

· Frontol Win32 v.4.х - автоматизация торгового зала

· Frontol WinCE v.1.x - автоматизация рабочего места кассира

· Конфигурация ДАЛИОН: Управление магазином. УНО.

Недостатки Frontol Win32 v.4.х, Frontol WinCE v.1.x, АТОЛ - это узкая направленность, определенная сложность в измении программы.

Недостатки 1С Розница и ДАЛИОН - это стоимость 36 000 - ДАЛИОН, 30 000 - 1С Розница, узкая направленность.

Но у всех есть недостатки для полной автоматизации предприятия розничной торговли:

· Узкая направленность;

· Определенная сложность в измении программы;

· Сложность в совместимости между программами;

· Стоимость.

Моя программа способна полностью автоматизировать предприятие, а так как она разработана на платформе 1С, значит она поддерживает многопользовательский режим.

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

Минимальные системные требования:

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

Майкрософт Windows XP/7/8/8.1

Центральный процессор

Intel Core 2 Duo @ 2.33 GHz

Оперативная память

2,00ГБ

Системная плата

ASUS X751LD

Графические устройства

2047 МБNVIDIA GeForce 620M

Хранение данных

698GB Seagate ST750LM022 HN-M750MBB (SATA)

Монитор

256 цветов, разрешением 1О24х768 и выше

Клавиатура, Мышь.

3.2 Общее описание конфигурации

В своей конфигурации использовал такие объекты:

1. Подсистемы

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

Цель подсистемы «Руководство» объединить объекты конфигурации, которые непосредственно понадобятся руководителю.

Цель подсистемы «Бухгалтерия» объединить объекты конфигурации, которые непосредственно понадобятся бухгалтеру, в неё входят 4 подсистемы:

Цель подчиненной подсистемы «Документы» объединить все документы, связанные с поступлением и расходами товаров.

Цель подчиненной подсистемы «Людские ресурсы» объединить все объекты конфигурации, связанные с сотрудниками предприятия и держателями дисконтных карт.

Цель подчиненной подсистемы «Товары» объединить все объекты конфигурации, связанные с товарами на предприятии.

Цель подчиненной подсистемы «Расчет заработной платы» объединить все объекты конфигурации, связанные с расчетами заработной платы и отчислениями.

Цель подсистемы «Касса» объединить все объекты конфигурации, связанные с реализацией товаров.

2. Общие модули

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

Цель общего модуля «Работа с документами» хранить в себе процедуры по высчитыванию сумм и стоимости в документах.

Цель общего модуля «Работа со справочниками» хранить в себе функции отбора из регистров сведений.

Цель общего модуля «Скидка» хранить в себе процедуры по расчету суммы со скидкой.

Цель общего модуля «Проведение расчетов» хранить в себе процедуры по расчету начислений сотрудникам.

3. Роли

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

Цель роли «Администратор» предоставление полных прав пользователю в системе.

Цель роли «Руководитель» предоставление прав пользователю в системе по подсистеме «Руководство».

Цель роли «Бухгалтер» предоставление прав пользователю в системе по подсистеме «Бухгалтерия».

Цель роли «Кассир» предоставление прав пользователю в системе по подсистеме «Касса».

4. Справочники

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

Цель справочника «Клиенты» хранить список данных об держателях дисконтных карт.

Цель справочника «Сотрудники» хранить список данных о сотрудниках организации.

Цель справочника «Номенклатура» хранить список данных об товарах находящиеся на реализации.

Цель справочника «Склады» хранить список данных о складах, где хранятся товары.

Цель справочника «Варианты номенклатуры» хранить список данных

Цель справочника «Дополнительные свойства номенклатуры» хранить список данных

Цель справочника «Субконто» хранить список данныхоб объектах аналитического учета.

Цель справочника «Виды графиков работы» хранить список данных о графиках работы работников организации.

Цель справочника «Поставщики» хранить список данных о поставщиках товаров.

Цель справочника «Организация» хранить список данных об организации.

Цель справочника «Должности сотрудников» хранить список должностей сотрудников.

5. Документы

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

Цель документа «Оказание услуги» хранить информации о продаже товара.

Цель документа «Приходная накладная» хранить информации о приходе товаров от поставщика.

Цель документа «Расходная накладная» хранить информации о продаже товара оптовым покупателям.

Цель документа «Акт списания товаров» хранить информации об списании товаров.

Цель документа «Начисления сотрудникам» хранить информации об начислениях сотрудникам.

6. Перечисления

Перечисление - это объект конфигурации, предназначенный для хранения наборов значений.

Цель перечисления «Виды номенклатуры» хранение значений видов номенклатуры.

Цель перечисления «Ставка НДС» хранение значений ставок НДС.

Цель перечисления «Ставка скидок» хранение значений ставок скидок держателям дисконтных карт.

7. Отчеты

Отчеты - это объект конфигурации, предназначенный для представления, просмотра и печати накопленных данных в удобном для анализа виде.

Цель отчета «Материалы» вывод актуальных данных о состоянии материалов в предприятии.

Цель отчета «Реестр документов оказание услуги» вывод актуальных данных по какому складу проведены документы.

Цель отчета «Выручка» вывод актуальных данных о количестве поданных товаров по каждому продавцу.

Цель отчета «Универсальный» вывод актуальных данных о суммы поданных товаров по каждому продавцу.

Цель отчета «Остатки материалов по свойствам» вывод актуальных данных о товарах с помощью отбора.

Цель отчета «Оборотно-сальдовая ведомость» вывод актуальных данных по каким бухгалтерским счетам были произведены те или иные действия.

8. Планы видов характеристик

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

Цель плана видов характеристик «Свойства номенклатуры» описания структуры хранения информации о свойствах номенклатуры.

Цель плана вида характеристик «Виды субконто» описания структуры хранения информации о видах субконто.

9. Планы счетов

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

Цель плана счетов «Основной» описание структуры хранения информации о совокупности синтетических счетов предприятия.

10. Планы видов расчета

План видов расчета - это объект конфигурации, предназначенный для хранения видов расчета.

Цель плана видов расчета «Основные начисления» хранения виды расчетов, по которым производятся начисления.

11. Регистры сведений

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

Цель регистра сведений «Цены» хранение данных о ценах на товары.

Цель регистра сведений «Значения свойств номенклатуры» хранение данных об свойствах и значениях товаров.

Цель регистра сведений «Графики работы» хранение данных о том в какие дни будут работать сотрудники.

Цель регистра сведений «Накопительная система» хранение данных о проценте скидок и сумме накопленной суммы у держателя дисконтной карты.

Цель регистра сведений «Ставки НДС» хранение данных о процентах НДС при оформлении приходной и расходной накладных.

12. Регистры накопления

Регистр накопления - это объект конфигурации, предназначенный для описания структуры накопления данных.

Цель регистра накоплений «Остатки материалов» хранение данных о количестве оставшихся товаров.

Цель регистра накоплений «Стоимость материалов» хранение данных о сумме оставшихся товаров.

Цель регистра накоплений «Продажи» хранение данных о проданных товаров.

13. Регистры бухгалтерии

Регистр бухгалтерии - это объект конфигурации, предназначенный для описания структуры накопления бухгалтерских данных, учет которых ведется исходя из некоторого плана счетов.

Цель регистра бухгалтерии «Управленческий» хранение бухгалтерских данных по операциям прихода, расхода и списания товаров.

14. Регистры расчета

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

Цель регистра расчета «Начисления» хранение данных о начислениях сотрудникам.

4. Экспериментальная часть

4.1 Тестирование приложений

Рисунок- Вход в систему под пользователем «Директор»

Вход в систему под пользователем «Директор» как показано на рисунке.

Рисунок - Рабочее место руководителя

Рисунок - Выбор вида графика работы.

Рисунок - Выбор начисления

Рисунок - Вход в систему под пользователем «Бухгалтер»

Рисунок - Ввод наименования и тип дополнительного свойства номенклатуры

Создание дополнительного значения номенклатуры как показано на рисунке. компьютерный база данный проект

Рисунок - Ввод наименования, группы номенклатуры, вида номенклатуры и массы товара

Рисунок - Вход в систему под пользователем «Кассир»

Заключение

В ходе выполнения курсовой работы развиты навыки и умения проектирования структуры реализационной базы данных. Дано краткое описание предметной области, определены требования, основные условия для использования АИС «продовольственного магазина «На скорую руку»».

АИС объединяет программно-аппаратные средства, обеспечивающие взаимодействие человека с компьютером, организует хранение и обработку данных по средствам СУБД, предоставляет возможность ввода и вывода информации.

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

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

1 Радченко М.Г., Хрусталева Е.Ю. 1С: Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы. - М.: ООО "1C-Паблишинг", 2013 г.

2 Радченко М.Г., Хрусталева Е.Ю. 1С: Предприятие 8.2. Практическое пособие разработчика. Примеры и типовые приемы. - М.: ООО "1C-Паблишинг", 2009 г.

Приложение

Текст программы

Содержание общего модуля «Работа с документами»:

Процедура РассчитатьСумму (СтрокаТабличнойЧасти) Экспорт

СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;

КонецПроцедуры

Процедура РассчитатьСуммуБезНДС (СтрокаТабличнойЧасти) Экспорт

СтрокаТабличнойЧасти.СуммаБезНДС = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;

КонецПроцедуры

Процедура РассчитатьСтоимость (СтрокаТабличнойЧасти) Экспорт

СтрокаТабличнойЧасти.Стоимость =СтрокаТабличнойЧасти.СуммаБезНДС + (СтрокаТабличнойЧасти.СуммаБезНДС * СтрокаТабличнойЧасти.Процент);

КонецПроцедуры

Содержание общего модуля «Работа со справочниками»:

Функция РоничнаяЦена(АктуальнаяДата, ЭлементНоменклатуры) Экспорт

Отбор = Новый Структура("Номенклатура",ЭлементНоменклатуры);

ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);

Возврат ЗначенияРесурсов.Цена;

ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);

Возврат ЗначенияРесурсов.НомерШтрихКодаТовара;

ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);

Возврат ЗначенияРесурсов.НомерКодаТовара;

КонецФункции

Функция ШтрихКод(АктуальнаяДата, ЭлементНоменклатуры) Экспорт

Отбор = Новый Структура("Номенклатура",ЭлементНоменклатуры);

ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);

Возврат ЗначенияРесурсов.ШтрихКод;

КонецФункции

Функция Артикул(АктуальнаяДата, ЭлементНоменклатуры) Экспорт

Отбор = Новый Структура("Номенклатура",ЭлементНоменклатуры);

ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);

Возврат ЗначенияРесурсов.Артикул;

КонецФункции

Функция Цена(АктуальнаяДата, ЭлементНоменклатуры) Экспорт

Отбор = Новый Структура("Номенклатура",ЭлементНоменклатуры);

ЗначенияРесурсов = РегистрыСведений.Цены.ПолучитьПоследнее(АктуальнаяДата, Отбор);

Возврат ЗначенияРесурсов.Цена;

КонецФункции

Функция Скидка(АктуальнаяДата, ЭлементПользователи) Экспорт

Отбор = Новый Структура("Пользователь",ЭлементПользователи);

ЗначенияРесурсов = РегистрыСведений.НакопительнаяСистема.ПолучитьПоследнее(АктуальнаяДата,Отбор);

Возврат ЗначенияРесурсов.Скидка;

КонецФункции

Содержание общего модуля «Скидка»:

Процедура РассчитатьСуммуСоСкидкой (СтрокаТабличнойЧасти) Экспорт

СтрокаТабличнойЧасти.Итого = СтрокаТабличнойЧасти.СуммаБезСкидки + (СтрокаТабличнойЧасти.СуммаБезСкидки * СтрокаТабличнойЧасти.Скидка);

КонецПроцедуры

Содержание общего модуля «Проведение расчетов»:

Процедура РассчитатьНачисления(НаборЗаписейРегистра, ТребуемыйВидРасчета,

СписокСотрудников) Экспорт

Регистратор = НаборЗаписейРегистра.Отбор.Регистратор.Значение;

Если ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

НачисленияДанныеГрафика.ЗначениеПериодДействия КАК Норма,

НачисленияДанныеГрафика.ЗначениеФактическийПериодДействия КАК Факт,

НачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки

ИЗ

РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = &Регистратор И

ВидРасчета = &ВидРасчета И Сотрудник В (&СписокСотрудников))

КАК НачисленияДанныеГрафика";

Запрос.УстановитьПараметр("Регистратор", Регистратор);

Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета);

Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников);

ВыборкаРезультата = Запрос.Выполнить().Выбрать();

Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл

СтруктураНомер = Новый Структура("НомерСтроки");

СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки;

ВыборкаРезультата.Сбросить();

Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда

Если ВыборкаРезультата.Норма = 0 Тогда

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Вид расчета: Оклад - Нет рабочих дней в заданном периоде";

Сообщение.Сообщить();

ЗаписьРегистра.Результат = 0;

Иначе

ЗаписьРегистра.Результат = (ЗаписьРегистра.ИсходныеДанные/ВыборкаРезультата.Норма) * ВыборкаРезультата.Факт;

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Выполнен расчет " + ЗаписьРегистра.Регистратор

+ " - " + ЗаписьРегистра.ВидРасчета + " - " +

ЗаписьРегистра.Сотрудник;

Сообщение.Сообщить();

КонецЕсли;

КонецЕсли;

КонецЦикла;

ИначеЕсли ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

НачисленияБазаНачисления.РезультатБаза КАК База,

НачисленияБазаНачисления.НомерСтроки КАК НомерСтроки

ИЗ

РегистрРасчета.Начисления.БазаНачисления(&ИзмеренияОсновного,

&ИзмеренияБазового, , Регистратор =

&Регистратор И ВидРасчета = &ВидРасчета И

Сотрудник В (&СписокСотрудников))

КАК НачисленияБазаНачисления";

Измер = Новый Массив(1);

Измер[0] = "Сотрудник";

Запрос.УстановитьПараметр("ИзмеренияОсновного", Измер);

Запрос.УстановитьПараметр("ИзмеренияБазового", Измер);

Запрос.УстановитьПараметр("Регистратор", Регистратор);

Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета);

Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников);

ВыборкаРезультата = Запрос.Выполнить().Выбрать();

Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл

СтруктураНомер = Новый Структура("НомерСтроки");

СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки;

ВыборкаРезультата.Сбросить();

Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда

ЗаписьРегистра.Результат = ВыборкаРезультата.База * (10 / 100);

Сообщение = Новый СообщениеПользователю;

Сообщение.Текст = "Выполнен расчет " + ЗаписьРегистра.Регистратор + " - " +

ЗаписьРегистра.ВидРасчета + " - " + ЗаписьРегистра.Сотрудник;

Сообщение.Сообщить();

КонецЕсли;

КонецЦикла;

КонецЕсли;

КонецПроцедуры

Процедура ПерерассчитатьНачисления(ТребуемыйВидРасчета) Экспорт

Запрос = Новый Запрос(

"ВЫБРАТЬ

НачисленияПерерасчет.ОбъектПерерасчета КАК ОбъектПерерасчета,

НачисленияПерерасчет.Сотрудник

ИЗ

РегистрРасчета.Начисления.Перерасчет КАК НачисленияПерерасчет

ГДЕ

НачисленияПерерасчет.ВидРасчета = &ТребуемыйВидРасчета

ИТОГИ ПО

ОбъектПерерасчета");

Запрос.УстановитьПараметр("ТребуемыйВидРасчета", ТребуемыйВидРасчета);

СписокСотрудников = Новый СписокЗначений;

ВыборкаПоРегистратору = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаПоРегистратору.Следующий() Цикл

Регистратор = ВыборкаПоРегистратору.ОбъектПерерасчета;

ВыборкаПоСотрудникам = ВыборкаПоРегистратору.Выбрать();

СписокСотрудников.Очистить();

Пока ВыборкаПоСотрудникам.Следующий() Цикл

СписокСотрудников.Добавить(ВыборкаПоСотрудникам.Сотрудник);

КонецЦикла;

НаборЗаписей = РегистрыРасчета.Начисления.СоздатьНаборЗаписей();

НаборЗаписей.Отбор.Регистратор.Значение = Регистратор;

НаборЗаписей.Прочитать();

РассчитатьНачисления(НаборЗаписей, ТребуемыйВидРасчета, СписокСотрудников);

НаборЗаписей.Записать( , Истина);

НаборЗаписейПерерасчета =

РегистрыРасчета.Начисления.Перерасчеты.Перерасчет.СоздатьНаборЗаписей();

НаборЗаписейПерерасчета.Отбор.ОбъектПерерасчета.Значение = Регистратор;

НаборЗаписейПерерасчета.Записать();

КонецЦикла;

КонецПроцедуры

Содержание модуля объекта «Продажа»:

Процедура ОбработкаПроведения(Отказ, Режим)

Движения.ОстаткиМатериалов.Записывать = Истина;

Движения.СтоимостьМатериалов.Записывать = Истина;

Движения.Продажи.Записывать = Истина;

Движения.Управленческий.Записывать = Истина;

МенеджерВТ = Новый МенеджерВременныхТаблиц;

Запрос = Новый Запрос;

Запрос.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст =

"ВЫБРАТЬ

ПродажаТовары.Наименование КАК Наименование,

СУММА(ПродажаТовары.Сумма) КАК СуммаВДокументе,

СУММА(ПродажаТовары.Количество) КАК КоличествоВДокументе,

ПродажаТовары.Наименование.ВидНомеклатура КАК ВидНоменклатуры

ПОМЕСТИТЬ ТоварыДокумента

ИЗ

Документ.Продажа.Товары КАК ПродажаТовары

ЛЕВОЕ СОЕДИНЕНИЕ Документ.Продажа КАК Продажа

ПО ПродажаТовары.Ссылка = Продажа.Ссылка

ГДЕ

ПродажаТовары.Ссылка = &Ссылка

СГРУППИРОВАТЬ ПО

ПродажаТовары.Наименование.ВидНомеклатура,

ПродажаТовары.Наименование";

Запрос.УстановитьПараметр("Ссылка", Ссылка);

Результат = Запрос.Выполнить();

Запрос2 = Новый Запрос;

Запрос2.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос2.Текст = "ВЫБРАТЬ

ЕСТЬNULL(ОстаткиМатериаловОстатки.КоличествоОстаток, 0) КАК Количество,

ЕСТЬNULL(СтоимостьМатериаловОстатки.СтоимостьОстаток, 0) КАК Стоимость,

ТоварыДокумента.Наименование,

ТоварыДокумента.ВидНоменклатуры,

ТоварыДокумента.СуммаВДокументе,

ТоварыДокумента.КоличествоВДокументе

ИЗ

ТоварыДокумента КАК ТоварыДокумента

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиМатериалов.Остатки КАК ОстаткиМатериаловОстатки

ПО ТоварыДокумента.Наименование = ОстаткиМатериаловОстатки.Материал

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СтоимостьМатериалов.Остатки КАК СтоимостьМатериаловОстатки

ПО ТоварыДокумента.Наименование = СтоимостьМатериаловОстатки.Материал";

Движения.СтоимостьМатериалов.БлокироватьДляИзменения = Истина;

Движения.ОстаткиМатериалов.БлокироватьДляИзменения = Истина;

Движения.СтоимостьМатериалов.Записать();

Движения.ОстаткиМатериалов.Записать();

Результат = Запрос2.Выполнить();

ТЗ=Результат.Выгрузить();

ТекСтрокаТовары = Результат.Выбрать();

Пока ТекСтрокаТовары.Следующий() Цикл

Если ТекСтрокаТовары.Количество = 0 Тогда

СтоимостьМатериала = 0;

Иначе

СтоимостьМатериала = ТекСтрокаТовары.Стоимость / ТекСтрокаТовары.Количество;

КонецЕсли;

если ТекСтрокаТовары.Наименование.ВидНомеклатура = Перечисления.ВидыНоменклатуры.Товар тогда

Движение = Движения.Управленческий.Добавить();

Движение.СчетДт = ПланыСчетов.Основной.ТоварыВРознице;

Движение.СчетКт = ПланыСчетов.Основной.Касса;

Движение.Период = Дата;

Движение.КоличествоДт = ТекСтрокаТовары.КоличествоВДокументе;

Движение.Сумма = ТекСтрокаТовары.СуммаВДокументе;

Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Материалы] = ТекСтрокаТовары.Наименование;

Движение = Движения.Продажи.Добавить();

Движение.Период = Дата;

Движение.Номенклатура = ТекСтрокаТовары.Наименование;

Движение.Кассир = Кассир;

Движение.Количество = ТекСтрокаТовары.КоличествоВДокументе;

Движение.Выручка = ТекСтрокаТовары.СуммаВДокументе;

Движение = Движения.СтоимостьМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Расход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаТовары.Наименование;

Движение.Стоимость = ТекСтрокаТовары.СуммаВДокументе;

Движение = Движения.ОстаткиМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Расход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаТовары.Наименование;

Движение.Количество = ТекСтрокаТовары.КоличествоВДокументе;

КонецЕсли;

КонецЦикла;

Движения.Записать();

Если Режим = РежимПроведенияДокумента.Оперативный Тогда

Запрос3 = Новый Запрос;

Запрос3.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос3.Текст = "ВЫБРАТЬ

ОстаткиМатериаловОстатки.Материал,

ОстаткиМатериаловОстатки.КоличествоОстаток

ИЗ

РегистрНакопления.ОстаткиМатериалов.Остатки(

Материал В

(ВЫБРАТЬ

ТоварыДокумента.Наименование

ИЗ

ТоварыДокумента)) КАК ОстаткиМатериаловОстатки

ГДЕ

ОстаткиМатериаловОстатки.КоличествоОстаток < 0";

Запрос3.УстановитьПараметр("Склад", Склад);

РезультатЗапроса = Запрос3.Выполнить();

ТекСтрокаТовары = РезультатЗапроса.Выбрать();

Пока ТекСтрокаТовары.Следующий() Цикл

Сообщение = Новый СообщениеПользователю();

Сообщение.Текст = "Не хватает " + Строка(- ТекСтрокаТовары.КоличествоОстаток) +

" единиц материала """ + ТекСтрокаТовары.Материал + """";

Сообщение.Сообщить();

Отказ = Истина;

КонецЦикла;

КонецЕсли;

КонецПроцедуры

Содержание модуля менеджера «Продажа»:

Процедура Печать(ТабДок, Ссылка) Экспорт

//{{_КОНСТРУКТОР_ПЕЧАТИ(Печать)

Макет = Документы.Продажа.ПолучитьМакет("Печать");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

Продажа.Дата,

Продажа.Кассир,

Продажа.Номер,

Продажа.Склад,

Продажа.ПереченьНоменклатуры.(

НомерСтроки,

Номеклатура,

Количество,

Цена,

Сумма

)

ИЗ

Документ.Продажа КАК Продажа

ГДЕ

Продажа.Ссылка В (&Ссылка)";

Запрос.Параметры.Вставить("Ссылка", Ссылка);

Выборка = Запрос.Выполнить().Выбрать();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

Шапка = Макет.ПолучитьОбласть("Шапка");

ОбластьПереченьНоменклатурыШапка = Макет.ПолучитьОбласть("ПереченьНоменклатурыШапка");

ОбластьПереченьНоменклатуры = Макет.ПолучитьОбласть("ПереченьНоменклатуры");

ОбластьИтог = Макет.ПолучитьОбласть("Всего");

ТабДок.Очистить();

ВставлятьРазделительСтраниц = Ложь;

Пока Выборка.Следующий() Цикл

Если ВставлятьРазделительСтраниц Тогда

ТабДок.ВывестиГоризонтальныйРазделительСтраниц();

КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);

ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьПереченьНоменклатурыШапка);

ВыборкаПереченьНоменклатуры = Выборка.ПереченьНоменклатуры.Выбрать();

СуммаИтог = 0;

Пока ВыборкаПереченьНоменклатуры.Следующий() Цикл

ОбластьПереченьНоменклатуры.Параметры.Заполнить(ВыборкаПереченьНоменклатуры);

ТабДок.Вывести(ОбластьПереченьНоменклатуры, ВыборкаПереченьНоменклатуры.Уровень());

СуммаИтог = СуммаИтог + ВыборкаПереченьНоменклатуры.Сумма;

КонецЦикла;

ОбластьИтог.Параметры.ВсегоПоДокументу = СуммаИтог;

ТабДок.Вывести(ОбластьИтог);

ВставлятьРазделительСтраниц = Истина;

КонецЦикла;

//}}

КонецПроцедуры

Содержание модуля объекта «Приходная накладная»:

Процедура ОбработкаПроведения(Отказ, Режим)

Движения.ОстаткиМатериалов.Записывать = Истина;

Движения.СтоимостьМатериалов.Записывать = Истина;

Движения.Управленческий.Записывать = Истина;

Для Каждого ТекСтрокаСодержание Из Содержание Цикл

Движение = Движения.СтоимостьМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Приход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаСодержание.Наименование;

Движение.Стоимость = ТекСтрокаСодержание.СуммаБезНДС;

Движение = Движения.ОстаткиМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Приход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаСодержание.Наименование;

Движение.Количество = ТекСтрокаСодержание.Количество;

Движение = Движения.Управленческий.Добавить();

Движение.СчетДт = ПланыСчетов.Основной.Товары;

Движение.СчетКт = ПланыСчетов.Основной.РасчетыСПоставщиками;

Движение.Период = Дата;

Движение.КоличествоДт = ТекСтрокаСодержание.Количество;

Движение.Сумма = ТекСтрокаСодержание.СуммаБезНДС;

Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Материалы] = ТекСтрокаСодержание.Наименование;

КонецЦикла

КонецПроцедуры

Содержание модуля менеджера «Приходная накладная»:

Процедура Печать(ТабДок, Ссылка) Экспорт

//{{_КОНСТРУКТОР_ПЕЧАТИ(Печать1)

Макет = Документы.ПриходнаяНакладная.ПолучитьМакет("ТоварНаклад");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

ПриходнаяНакладная.Номер,

ПриходнаяНакладная.Дата,

ПриходнаяНакладная.Поставщик,

ПриходнаяНакладная.Плательщик,

ПриходнаяНакладная.Содержание.(

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

Код,

Цена,

Количество,

СуммаБезНДС,

Ставка,

Процент,

Стоимость

)

ИЗ

Документ.ПриходнаяНакладная КАК ПриходнаяНакладная

ГДЕ

ПриходнаяНакладная.Ссылка В(&Ссылка)";

Запрос.Параметры.Вставить("Ссылка", Ссылка);

Выборка = Запрос.Выполнить().Выбрать();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

Шапка = Макет.ПолучитьОбласть("Шапка");

ОбластьСодержаниеШапка = Макет.ПолучитьОбласть("СодержаниеШапка");

ОбластьСодержание = Макет.ПолучитьОбласть("Содержание");

ОбластьИтог = Макет.ПолучитьОбласть("Итого");

ТабДок.Очистить();

ВставлятьРазделительСтраниц = Ложь;

Пока Выборка.Следующий() Цикл

Если ВставлятьРазделительСтраниц Тогда

ТабДок.ВывестиГоризонтальныйРазделительСтраниц();

КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);

ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьСодержаниеШапка);

ВыборкаСодержание = Выборка.Содержание.Выбрать();

ЦенаИтог = 0;

СуммаИтог=0;

КоличествоИтог=0;

СтоимостьИтог=0;

Пока ВыборкаСодержание.Следующий() Цикл

ОбластьСодержание.Параметры.Заполнить(ВыборкаСодержание);

ТабДок.Вывести(ОбластьСодержание, ВыборкаСодержание.Уровень());

СуммаИтог=СуммаИтог + ВыборкаСодержание.СуммаБезНДС;

КоличествоИтог=КоличествоИтог + ВыборкаСодержание.Количество;

ЦенаИтог=ЦенаИтог + ВыборкаСодержание.Цена;

СтоимостьИтог=СтоимостьИтог + ВыборкаСодержание.Стоимость;

КонецЦикла;

ОбластьИтог.Параметры.ВсегоЦена = ЦенаИтог;

ОбластьИтог.Параметры.ВсегоКоличество = КоличествоИтог;

ОбластьИтог.Параметры.ВсегоСуммаБезНДС = СуммаИтог;

ОбластьИтог.Параметры.ВсегоСтоимость = СтоимостьИтог;

ТабДок.Вывести(ОбластьИтог);

ВставлятьРазделительСтраниц = Истина;

КонецЦикла;

//}}

КонецПроцедуры

Содержание модуля объекта «Расходная накладная»:

Процедура ОбработкаПроведения(Отказ, Режим)

Движения.ОстаткиМатериалов.Записывать = Истина;

Движения.СтоимостьМатериалов.Записывать = Истина;

Движения.Продажи.Записывать = Истина;

Движения.Управленческий.Записывать = Истина;

МенеджерВТ = Новый МенеджерВременныхТаблиц;

Запрос = Новый Запрос;

Запрос.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос.Текст =

"ВЫБРАТЬ

РасходнаяНакладнаяСодержание.Наименование,

РасходнаяНакладнаяСодержание.Наименование.ВидНомеклатура КАК ВидНоменклатуры,

СУММА(РасходнаяНакладнаяСодержание.Количество) КАК КоличествоВДокументе,

СУММА(РасходнаяНакладнаяСодержание.Сумма) КАК СуммаВДокументе

ПОМЕСТИТЬ ТоварыДокумента

ИЗ

Документ.РасходнаяНакладная.Содержание КАК РасходнаяНакладнаяСодержание

ГДЕ

РасходнаяНакладнаяСодержание.Ссылка = &Ссылка

СГРУППИРОВАТЬ ПО

РасходнаяНакладнаяСодержание.Наименование,

РасходнаяНакладнаяСодержание.Наименование.ВидНомеклатура";

Запрос.УстановитьПараметр("Ссылка", Ссылка);

Результат = Запрос.Выполнить();

Запрос2 = Новый Запрос;

Запрос2.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос2.Текст = "ВЫБРАТЬ

ЕСТЬNULL(ОстаткиМатериаловОстатки.КоличествоОстаток, 0) КАК Количество,

ЕСТЬNULL(СтоимостьМатериаловОстатки.СтоимостьОстаток, 0) КАК Стоимость,

ТоварыДокумента.Наименование,

ТоварыДокумента.ВидНоменклатуры,

ТоварыДокумента.СуммаВДокументе,

ТоварыДокумента.КоличествоВДокументе

ИЗ

ТоварыДокумента КАК ТоварыДокумента

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиМатериалов.Остатки КАК ОстаткиМатериаловОстатки

ПО ТоварыДокумента.Наименование = ОстаткиМатериаловОстатки.Материал

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СтоимостьМатериалов.Остатки КАК СтоимостьМатериаловОстатки

ПО ТоварыДокумента.Наименование = СтоимостьМатериаловОстатки.Материал";

Движения.СтоимостьМатериалов.БлокироватьДляИзменения = Истина;

Движения.ОстаткиМатериалов.БлокироватьДляИзменения = Истина;

Движения.СтоимостьМатериалов.Записать();

Движения.ОстаткиМатериалов.Записать();

Результат = Запрос2.Выполнить();

ТЗ=Результат.Выгрузить();

ТекСтрокаТовары = Результат.Выбрать();

Пока ТекСтрокаТовары.Следующий() Цикл

Если ТекСтрокаТовары.Количество = 0 Тогда

СтоимостьМатериала = 0;

Иначе

СтоимостьМатериала = ТекСтрокаТовары.Стоимость / ТекСтрокаТовары.Количество;

КонецЕсли;

если ТекСтрокаТовары.Наименование.ВидНомеклатура = Перечисления.ВидыНоменклатуры.Материал тогда

Движение = Движения.Управленческий.Добавить();

Движение.СчетДт = ПланыСчетов.Основной.ТоварыВРознице;

Движение.СчетКт = ПланыСчетов.Основной.Касса;

Движение.Период = Дата;

Движение.КоличествоДт = ТекСтрокаТовары.КоличествоВДокументе;

Движение.Сумма = ТекСтрокаТовары.СуммаВДокументе;

Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Материалы] = ТекСтрокаТовары.Наименование;

Движение = Движения.Продажи.Добавить();

Движение.Период = Дата;

Движение.Номенклатура = ТекСтрокаТовары.Наименование;

Движение.Количество = ТекСтрокаТовары.КоличествоВДокументе;

Движение.Выручка = ТекСтрокаТовары.СуммаВДокументе;

Движение = Движения.СтоимостьМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Расход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаТовары.Наименование;

Движение.Стоимость = ТекСтрокаТовары.СуммаВДокументе;

Движение = Движения.ОстаткиМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Расход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаТовары.Наименование;

Движение.Количество = ТекСтрокаТовары.КоличествоВДокументе;

КонецЕсли;

КонецЦикла;

Движения.Записать();

Если Режим = РежимПроведенияДокумента.Оперативный Тогда

Запрос3 = Новый Запрос;

Запрос3.МенеджерВременныхТаблиц = МенеджерВТ;

Запрос3.Текст = "ВЫБРАТЬ

ОстаткиМатериаловОстатки.Материал,

ОстаткиМатериаловОстатки.КоличествоОстаток

ИЗ

РегистрНакопления.ОстаткиМатериалов.Остатки(

Материал В

(ВЫБРАТЬ

ТоварыДокумента.Наименование

ИЗ

ТоварыДокумента)) КАК ОстаткиМатериаловОстатки

ГДЕ

ОстаткиМатериаловОстатки.КоличествоОстаток < 0";

РезультатЗапроса = Запрос3.Выполнить();

ТекСтрокаТовары = РезультатЗапроса.Выбрать();

Пока ТекСтрокаТовары.Следующий() Цикл

Сообщение = Новый СообщениеПользователю();

Сообщение.Текст = "Не хватает " + Строка(- ТекСтрокаТовары.КоличествоОстаток) +

" единиц материала """ + ТекСтрокаТовары.Материал + """";

Сообщение.Сообщить();

Отказ = Истина;

КонецЦикла;

КонецЕсли;

КонецПроцедуры

Содержание модуля менеджера документа «Расходная накладная»:

Процедура Печать(ТабДок, Ссылка) Экспорт

//{{_КОНСТРУКТОР_ПЕЧАТИ(Печать1)

Макет = Документы.РасходнаяНакладная.ПолучитьМакет("РасНаклад");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

РасходнаяНакладная.Номер,

РасходнаяНакладная.Дата,

РасходнаяНакладная.Поставщик,

РасходнаяНакладная.Плательщик,

РасходнаяНакладная.Содержание.(

НомерСтроки,

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

Код,

Цена,

Количество,

Сумма

)

ИЗ

Документ.РасходнаяНакладная КАК РасходнаяНакладная

ГДЕ

РасходнаяНакладная.Ссылка В(&Ссылка)";

Запрос.Параметры.Вставить("Ссылка", Ссылка);

Выборка = Запрос.Выполнить().Выбрать();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

Шапка = Макет.ПолучитьОбласть("Шапка");

ОбластьСодержаниеШапка = Макет.ПолучитьОбласть("СодержаниеШапка");

ОбластьСодержание = Макет.ПолучитьОбласть("Содержание");

ОбластьИтог = Макет.ПолучитьОбласть("Итого");

ТабДок.Очистить();

ВставлятьРазделительСтраниц = Ложь;

Пока Выборка.Следующий() Цикл

Если ВставлятьРазделительСтраниц Тогда

ТабДок.ВывестиГоризонтальныйРазделительСтраниц();

КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);

ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьСодержаниеШапка);

ВыборкаСодержание = Выборка.Содержание.Выбрать();

ЦенаИтог = 0;

СуммаИтог=0;

КоличествоИтог=0;

Пока ВыборкаСодержание.Следующий() Цикл

ОбластьСодержание.Параметры.Заполнить(ВыборкаСодержание);

ТабДок.Вывести(ОбластьСодержание, ВыборкаСодержание.Уровень());

СуммаИтог=СуммаИтог + ВыборкаСодержание.Сумма;

КоличествоИтог=КоличествоИтог + ВыборкаСодержание.Количество;

ЦенаИтог=ЦенаИтог + ВыборкаСодержание.Цена;

КонецЦикла;

ОбластьИтог.Параметры.ВсегоЦена = ЦенаИтог;

ОбластьИтог.Параметры.ВсегоКоличество = КоличествоИтог;

ОбластьИтог.Параметры.ВсегоСумма = СуммаИтог;

ТабДок.Вывести(ОбластьИтог);

ВставлятьРазделительСтраниц = Истина;

КонецЦикла;

//}}

КонецПроцедуры

Содержание модуля объекта документа «Акт списания товаров»:

Процедура ОбработкаПроведения(Отказ, Режим)

Движения.ОстаткиМатериалов.Записывать = Истина;

Движения.СтоимостьМатериалов.Записывать = Истина;

Движения.Управленческий.Записывать = Истина;

Для Каждого ТекСтрокаСодержание Из Содержание Цикл

Движение = Движения.СтоимостьМатериалов.Добавить();

Движение.ВидДвижения = ВидДвиженияНакопления.Расход;

Движение.Период = Дата;

Движение.Материал = ТекСтрокаСодержание.Наименование;

Движение.Стоимость = ТекСтрокаСодержание.Сумма;

Движение = Движения.ОстаткиМатериалов.Добавить();

...

Подобные документы

  • Описание аппаратных и программных средств, операционной системы. Описание входной и выходной информации. Информационно-логическая модель данных. Схема взаимодействия входной и выходной информации. Расчет трудоемкости и стоимости обработки информации.

    курсовая работа [2,4 M], добавлен 05.07.2015

  • Создание баз данных с использованием Database Desktop. Проведение автоматизации рабочего места кассира. Описание входной и выходной информации. Выбор среды реализации, состава и параметров технических средств. Проектирование интерфейса программы.

    курсовая работа [1021,5 K], добавлен 22.01.2015

  • Описание операционной системы, аппаратных и программных средств. Анализ входной и выходной информации. Структура таблиц базы данных. Построение информационно-логической модели. Блок-схема работы программы. Расчет трудоемкости на обработку информации.

    курсовая работа [1,2 M], добавлен 05.07.2015

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

    дипломная работа [1,2 M], добавлен 18.05.2014

  • Разработка эскизного и технического проектов программы, ее назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка рабочего проекта, спецификация программы.

    курсовая работа [700,6 K], добавлен 26.01.2010

  • Анализ предметной области с использованием моделей методологии ARIS и разработка ER-диаграммы. Описание входной и выходной информации для проектирования реляционной базы данных. Разработка управляющих запросов и связей между ними с помощью языка SQL.

    курсовая работа [975,2 K], добавлен 30.01.2014

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

    курсовая работа [3,0 M], добавлен 22.12.2014

  • Требования к программному продукту: базе данных и интерфейсу. Анализ входной, выходной и постоянной информации. Выбор и обоснование выбора среды разработки, программной реализации, описание внутренней среды. Логическая и физическая модель данных.

    курсовая работа [2,1 M], добавлен 04.05.2014

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

    дипломная работа [2,9 M], добавлен 05.12.2011

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

    курсовая работа [1,8 M], добавлен 10.05.2015

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

    курсовая работа [421,6 K], добавлен 27.06.2015

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

    курсовая работа [460,1 K], добавлен 26.06.2015

  • Организационная структура управления интернет-магазином. Классификаторы и системы кодирования. Характеристика нормативно-справочной, входной и оперативной информации. Программное обеспечение, характеристика базы данных. Дерево вызова программных модулей.

    курсовая работа [2,6 M], добавлен 18.06.2013

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

    курсовая работа [539,0 K], добавлен 12.12.2011

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

    курсовая работа [3,7 M], добавлен 04.12.2014

  • Разработка эскизного и технического проекта программы идентификации личности по отпечатку. Назначение и область применения, описание алгоритма, входных и выходных данных. Выбор состава технических и программных средств. Тестирование и внедрение продукта.

    курсовая работа [61,9 K], добавлен 12.05.2015

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

    курсовая работа [877,9 K], добавлен 06.06.2013

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

    курсовая работа [1,7 M], добавлен 31.03.2012

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

    курсовая работа [23,4 K], добавлен 14.08.2010

  • Разработка эскизного и технического проектов программы "Шифр Цезаря": назначение и область применения, описание алгоритма, организация входных и выходных данных. Выбор состава технических и программных средств, разработка, тест и внедрение программы.

    курсовая работа [563,7 K], добавлен 15.07.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.