Файл: Разработка конфигурации «Складской учет» в среде 1С:Предприятие 8.3 (Описание разработанных форм отчетов, необходимых для отражения результатов решения задач).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 14.05.2023

Просмотров: 657

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Итак, цель курсовой работы – это разработка конфигурации «Складской учёт» в среде «1С: Предприятие 8.3» выполнена.

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

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

- автоматизировали процедуру учета товара;

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

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

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

  1. Радченко М.Г., Хрусталева Е.Ю. 1С:Предприятие 8.2. Практическое пособие разработчика. Примеры и типовые приемы - М.: ООО «1С-Паблишинг», 2013-964 с.
  2. Ажеронок В.А., Островерх А.В., Радченко М.Г., Хрусталева Е.Ю. Разработка управляемого интерфейса - М.: ООО «1С-Паблишинг»,2012 –728 с.
  3. Кашаев С.М. Программирование в 1С:Предприятие 8.3 - СПб.: Питер, 2014. - 304 с.
  4. Отенко И.А, Азбука программирования в 1С Предприятие 8.3 / И.А. Отенко, Г.И Добин - СанктПетербург: BHV, 2015-288с .
  5. Ситосенко Е. Управление заказами в системе программ 1С: Предприятие 8.0 / Е.Ситосенко. –М.: 1С-Паблишинг, 2013. -219с.
  6. Фирма 1С [Электронный ресурс]/ Режим доступа : http://www.1c.ru/ свободный -Загл. с экрана (дата обращения: 28.02.2019).

ПРИЛОЖЕНИЯ

Приложение 1 Печатные формы документов

Рисунок 1 Макет печати документа «Поступление товара»

Рисунок 2 Печатная форма документа «Поступление товара»

Запись в модуле менеджера в документе «Поступление товара»

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

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

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

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

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

"ВЫБРАТЬ

|ПоступлениеТовара.Дата,

|ПоступлениеТовара.Договор,

|ПоступлениеТовара.Коментарий,

|ПоступлениеТовара.КонтактноеЛицо,

|ПоступлениеТовара.Контрагент,

|ПоступлениеТовара.Номер,

|ПоступлениеТовара.Склад,

|ПоступлениеТовара.Сотрудник,

|ПоступлениеТовара.СуммаДокумента,

|ПоступлениеТовара.Товары.(

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

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

|СерияНоменклатуры,


|Цена,

|Количество,

|Сумма,

|СтавкаНДС,

|СуммаНДС,

|Всего,

|Наценка,

|ЦенаПродажи

|)

|ИЗ

|Документ.ПоступлениеТовара КАК ПоступлениеТовара

|ГДЕ

|ПоступлениеТовара.Ссылка В (&Ссылка)";

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

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

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

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

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

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

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

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

Пока Выборка.Следующий() Цикл Если ВставлятьРазделительСтраниц Тогда

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

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

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

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

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

ВыборкаТовары = Выборка.Товары.Выбрать();

Пока ВыборкаТовары.Следующий() Цикл ОбластьТовары.Параметры.Заполнить(ВыборкаТовары);

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

ВставлятьРазделительСтраниц = Истина;КонецЦикла;//}}

// вывод области "Сумма"

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

Рисунок 3 Макет печати документа «Продажа товаров»

Рисунок 4 Печатная форма документа «Продажа товаров»

Запись в модуле менеджера в документе «Поступление товара»

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

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

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

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

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

"ВЫБРАТЬ

|ПродажаТоваров.Дата,

|ПродажаТоваров.Коментарий,

|ПродажаТоваров.КонтактноеЛицо,

|ПродажаТоваров.Контрагент,

|ПродажаТоваров.Номер,

|ПродажаТоваров.Склад,

|ПродажаТоваров.Сотрудник,

|ПродажаТоваров.СуммаДокумента,

|ПродажаТоваров.Товары.(

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

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

|СерияНоменклатуры,

|Цена,

|Количество,

|Сумма

|)

|ИЗ

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

|ГДЕ

|ПродажаТоваров.Ссылка В (&Ссылка)"; Запрос.Параметры.Вставить("Ссылка", Ссылка); Выборка = Запрос.Выполнить().Выбрать(); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); Шапка = Макет.ПолучитьОбласть("Шапка"); ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка"); ОбластьТовары = Макет.ПолучитьОбласть("Товары"); ТабДок.Очистить(); ВставлятьРазделительСтраниц = Ложь; Пока Выборка.Следующий() Цикл


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

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

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

ТабДок.Вывести(ОбластьТоварыШапка); ВыборкаТовары = Выборка.Товары.Выбрать(); Пока ВыборкаТовары.Следующий() Цикл

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

КонецЦикла;

ВставлятьРазделительСтраниц = Истина; КонецЦикла;//}}

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

Приложение 2 Обработчик Заполнения Вида номенклатуры

Рисунок 5 Форма обработчика заполнения Видов номенклатуры

&НаКлиенте

Процедура Заполнить(Команда)

Количество = ЗаполнитьНаСервере(ГруппаНоменклатуры, ВидНоменклатуры);

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

&НаСервереБезКонтекста

Функция ЗаполнитьНаСервере(ГруппаНоменклатуры, ВидНоменклатуры)

Выборка=Справочники.Номенклатура.ВыбратьИерархически(ГруппаНоменклатуры); Количество = 0;

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

Продолжить; КонецЕсли;

// СправочникОбъект.Номенклатура

СправочникОбъект = Выборка.ПолучитьОбъект();

СправочникОбъект.ВидНоменклатуры = ВидНоменклатуры;

СправочникОбъект.Записать(); Количество = Количество + 1;

КонецЦикла; Возврат Количество;

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

Обработчик Запросы.

Рисунок 6 Форма обработчика Запросы

&НаКлиенте

Процедура ВыполнитьЗапрос(Команда)

ВыполнитьЗапросНаСервере(Склад);

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

&НаСервереБезКонтекста

Процедура ВыполнитьЗапросНаСервере(Склад)

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

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

|ПоступлениеТовара.Ссылка КАК Ссылка,

|ПоступлениеТовара.Склад КАК Склад

|ИЗ

|Документ.ПоступлениеТовара КАК ПоступлениеТовара

|ГДЕ

|ПоступлениеТовара.Склад = &Склад

|И ПоступлениеТовара.Проведен";

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

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

// 1. Создание выборки.

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

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

// Вставить обработку выборки ВыборкаЗаписи

КонецЦикла;

// 2. Выгрузка в таблицу значений.

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

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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

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


Рисунок 7 Форма обработчика Изменения документов поступления

&НаКлиенте

Процедура Изменить(Команда)

ИзменитьНаСервере();

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

&НаСервереБезКонтекста

Процедура ИзменитьНаСервере()

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

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

ДокументОбъект = Выборка.ПолучитьОбъект();ДокументОбъект.Коментарий = "Изменено обработкой"; ДокументОбъект.Записать();

КонецЦикла;

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

&НаКлиенте

Процедура ИзменитьПоНоменклатуре(Команда)

ИзменитьПоНоменклатуреНаСервере(Номенклатура);

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

&НаСервереБезКонтекста

Процедура ИзменитьПоНоменклатуреНаСервере(Номенклатура)

//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

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

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

"ВЫБРАТЬ РАЗЛИЧНЫЕ

|ПоступлениеТовараТовары.Ссылка КАК Ссылка

|ИЗ

|Документ.ПоступлениеТовара.Товары КАК ПоступлениеТовараТовары

|ГДЕ

|ПоступлениеТовараТовары.Номенклатура = &Номенклатура";

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

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

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

Пока Выборка.Следующий() Цикл ДокументОбъект = Выборка.Ссылка.ПолучитьОбъект();

ДокументОбъект.Коментарий = "Измененно обработкой с отбором по номенклатуре";

ДокументОбъект.Записать(); КонецЦикла;

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

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

Обработчик Курсы Валют

Рисунок 8 Форма обработчика Курсы Валют

&НаКлиенте

Процедура ПолучитьКурс(Команда)

ПолучитьКурсНаСервере();

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

&НаСервере

Процедура ПолучитьКурсНаСервере()

Отбор = Новый Структура;

Отбор.Вставить("Валюта", Валюта);

Данные = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Период, Отбор);

Курс = Данные.Курс;

Кратность = Данные.Кратность;

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

&НаКлиенте

Процедура ЗаписатьКурс(Команда)

ЗаписатьКурсНаСервере();

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

&НаСервере

Процедура ЗаписатьКурсНаСервере()

НаборЗаписей = РегистрыСведений.КурсыВалют.СоздатьНаборЗаписей();

Запись = НаборЗаписей.Добавить();

Запись.Период = Период;

Запись.Валюта = Валюта;