Учет продукции на складе средствами программы 1С:Предприятие на примере ООО "Альтаир"

Автор работы: Пользователь скрыл имя, 01 Мая 2012 в 19:09, курсовая работа

Краткое описание

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

Содержание

ВВЕДЕНИЕ
1. Краткая характеристика ООО «Альтаир»
1.1 Регистрация индивидуального предпринимателя
1.2 Ассортиментный перечень товаров
1.3 Учет поступления и оплаты товаров
1.4 Заказ и поставка товаров
2. Разработка отчета с помощью программы "1С:Торговля и склад"
2.1 Постановка задачи
2.2 Краткое описание основных понятий прогаммы "1С:Торговля и склад"
2.3 Создание формы отчета (Диалога)
2.4 Построение интерфейса диалога
2.5 Написание программного кода отчета
2.5.1 Создание списка номенклатуры для составления запроса
2.5.2 Создание списка поставщиков
2.5.3 Создание объекта типа Запрос
2.5.4 Подготовка к заполнению выходных форм данными запроса
2.5.5 Заполнение полей "Заголовок"
2.5.6 Заполнение полей Номенклатура
2.5.7 Заполнение полей Поставщик
2.5.8 Вывод заполненной формы
2.5.9 Процедура ДобавитьКонтрагента(МножественныйВыбор)
2.5.10 Процедура ОбработкаПодбора(Элемент,КонтекстФормы)
2.5.11 Создание списков для фильтра
2.5.12 Создание колонок в таблице
ЗАКЛЮЧЕНИЕ
ЛИТЕРАТУРА

Прикрепленные файлы: 1 файл

Учет продукции на складе.doc

— 623.00 Кб (Скачать документ)

     СписокКонтрагентов.НоваяКолонка("Контрагенты",,,,,,,);

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

     Перем ВыбНоменклатура;

     Перем ВыбПоставщик;

     //*******************************************

     // Процедура генерации запроса  Сформировать.

     //

     Процедура Сформировать()

     Перем Запрос, ТекстЗапроса, Таб;

     //создаем  список номенклатуры для составления  запроса

     ВыбНоменклатура.УдалитьВсе();

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

     Пока  СписокНоменклатуры.ПолучитьСтроку() = 1 Цикл

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

     КонецЦикла;

     ВыбПоставщик.УдалитьВсе();

     СписокКонтрагентов.ВыбратьСтроки();

     Пока  СписокКонтрагентов.ПолучитьСтроку() = 1 Цикл

     ВыбПоставщик.ДобавитьЗначение(СписокКонтрагентов.Контрагенты);

     КонецЦикла;

     //Создание  объекта типа Запрос

     Запрос = СоздатьОбъект("Запрос");

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

     "//{{ЗАПРОС(Сформировать)

     |Период  с ВыбНачПериода по ВыбКонПериода;

     |Фирма  = Регистр.ПартииНаличие.Фирма;

     |Номенклатура = Регистр.ПартииНаличие.Номенклатура;

     |Партия = Регистр.ПартииНаличие.Партия;

     |Поставщик  = Регистр.ПартииНаличие.Партия.Поставщик;

     |Количество = Регистр.ПартииНаличие.Количество;

     |Функция  КоличествоНачОст = НачОст(Количество);

     |Функция  КоличествоКонОст = КонОст(Количество);

     |Функция  КоличествоПриход = Приход(Количество);

     |Функция  КоличествоРасход = Расход(Количество);

     |Группировка Номенклатура без групп все;

     |Группировка  Поставщик;

     |Условие(Фирма  = ВыбФирма);

     |Условие(Номенклатура  в ВыбНоменклатура);

     |Условие(Поставщик  в ВыбПоставщик);

     |"//}}ЗАПРОС

     ;

     // Если ошибка в запросе, то  выход из процедуры

     Если  Запрос.Выполнить(ТекстЗапроса) = 0 Тогда

     Возврат;

     КонецЕсли;

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

     Таб = СоздатьОбъект("Таблица");

     Таб.ИсходнаяТаблица("Сформировать");

     // Заполнение полей "Заголовок"

     Таб.ВывестиСекцию("Заголовок|НоменклатураПодробнее");

     Таб.ПрисоединитьСекцию("Заголовок|ПоставщикПодробнее");

     Состояние("Заполнение выходной таблицы...");

     Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);

     Пока  Запрос.Группировка(1) = 1 Цикл

     // Заполнение полей Номенклатура

     Если (НеОтображатьНулевые = 0) или (Запрос.КоличествоНачОст <> 0) или (Запрос.КоличествоПриход <> 0) или (Запрос.КоличествоРасход <> 0) или (Запрос.КоличествоКонОст <> 0) Тогда

     Таб.ВывестиСекцию("Строка|НоменклатураПодробнее");

     Таб.ПрисоединитьСекцию("Строка|НоменклатураИтог");

     Пока  Запрос.Группировка(2) = 1 Цикл

     // Заполнение полей Поставщик

     Если  ПустоеЗначение(Запрос.Партия.Поставщик) = 0 Тогда

     Если (НеОтображатьНулевые = 0) или (Запрос.КоличествоНачОст <> 0) или (Запрос.КоличествоПриход <> 0) или (Запрос.КоличествоРасход <> 0) или (Запрос.КоличествоКонОст <> 0) Тогда

     Таб.ПрисоединитьСекцию("Строка|ПоставщикПодробнее");

     КонецЕсли;

     КонецЕсли;

     КонецЦикла;

     КонецЕсли;

     КонецЦикла;

     // Вывод заполненной формы

     Таб.ТолькоПросмотр(1);

     Таб.Показать("Сформировать", "");

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

     Процедура ДобавитьКонтрагента(МножественныйВыбор = 0)

     Перем ФормаПодбора;

     ОткрытьПодбор("Справочник.Контрагенты",,ФормаПодбора,МножественныйВыбор);

     ФормаПодбора.ВыборГруппы(1);

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

     Процедура ДобавитьНоменклатуру(МножественныйВыбор = 0)

     Перем ФормаПодбора;

     ОткрытьПодбор("Справочник.Номенклатура",,ФормаПодбора,МножественныйВыбор);

     ФормаПодбора.ВыборГруппы(1);

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

     Процедура ОбработкаПодбора(Элемент,КонтекстФормы)

     Если  Элемент.Вид() = "Номенклатура" Тогда

     КолонкаДляПоиска = 0;

     СтрокаДляПоиска = 0;

     Если  СписокНоменклатуры.НайтиЗначение(Элемент,СтрокаДляПоиска,КолонкаДляПоиска) = 0 Тогда

     СписокНоменклатуры.НоваяСтрока();

     СписокНоменклатуры.Номенклатура = Элемент;

     КонецЕсли;

     КонецЕсли;

     Если  Элемент.Вид() = "Контрагенты" Тогда

     КолонкаДляПоиска = 0;

     СтрокаДляПоиска = 0;

     Если  СписокКонтрагентов.НайтиЗначение(Элемент,СтрокаДляПоиска,КолонкаДляПоиска) = 0 Тогда

     СписокКонтрагентов.НоваяСтрока();

     СписокКонтрагентов.Контрагенты = Элемент;

     КонецЕсли;

     КонецЕсли;

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

     //Создаем  списки для фильтра

     ВыбНоменклатура = СоздатьОбъект("СписокЗначений");

     ВыбПоставщик = СоздатьОбъект("СписокЗначений");

     // создаем колонки в таблице

     СписокНоменклатуры.НоваяКолонка("Номенклатура",,,,,,,);

     СписокКонтрагентов.НоваяКолонка("Контрагенты",,,,,,,);

     При запуске итоги отчета5 будут отображаться следующим образом: 

 

 

 

      ЗАКЛЮЧЕНИЕ 

     В процессе данной дипломной работы был создан внешний отчет с целью доработки программы «1С:Торговля и склад» под конкретное предприятие, показывающий движение определенных групп товаров по партиям за конкретный временной период. Он позволяет просмотреть сколько товара от конкретного поставщика поступило, сколько было продано, и сколько имеется в наличии в указанные пользователем сроки. При этом удобная форма диалога позволяет задавать все необходимые условия отбора: временной период, поставщика или группу поставщиков, товар или группу товаров, а так же дополнительное условие, позволяющее избежать на экран строк с нулевыми показателями. Таким образом, данный отчет может облегчить работу менеджеров магазинов при выборе и заказе товаров, пользующихся наибольшим потребительским спросом.

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

  • при помощи функции «СоздатьОбъект» создается объект типа «Запрос» и ссылка на него присваивается какой-либо переменной. Далее обращение к запросу производится посредством этой ссылки.
  • после создания переменной типа «Запрос» следует обращение к методу «Выполнить», которому в качестве параметра передается текст запроса, написанный на специальном языке запросов.
  • «Выполнить» анализирует текст запроса, выполняет в соответствии с ним выборку данных и формирует временный выходной набор данных (выборку).
  • после этого организуется циклическая обработка сформированного временного набора данных (выборки) с целью получения требуемого отчета.

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

     Данный  внешний отчет не является самостоятельной  программой или её обязательной составляющей, и может использоваться только по средствам программы «1С:Торговля и склад».

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

 

      ЛИТЕРАТУРА

 
  1. Алексеев  А., Байдаков В., Давыдова В. «1С:Предприятие 7.7. Конфигурирование и администрирование. Часть 1», фирма «1С», Москва, 1999 год.
  2. Алексеев А., Байдаков В., Давыдова В. «1С:Предприятие 7.7. Конфигурирование и администрирование. Часть 2», фирма «1С», Москва, 1999 год.
  3. Алексеев А., Байдаков В., Давыдова В. «1С:Предприятие 7.7. Описание встроенного языка. Часть 1», фирма «1С», Москва, 1999 год.
  4. Алексеев А., Байдаков В., Давыдова В. «1С:Предприятие 7.7. Описание встроенного языка. Часть 2», фирма «1С», Москва, 1999 год.
  5. Суворов И.С. «1С: Предприятие: Торговля + Склад», Омега-Л, 2008 год.
  6. Филимонова Е. В. «1С:Предприятие 7.7: практический самоучитель: 1С:Бухгалтерия; 1С:Торговля и склад; 1С: Зарплата и кадры», Феникс, Санкт-Петербург, 2007 год.
  7. Козлюк Н. «Складской учет на предприятиях торговли»,Феникс, Санкт-Петербург, 2005 год.
  8. Селищев Николай «Самоучитель работы с программой 1С: Торговля и Склад 7.7 без посторонней помощи: Учебное пособие», 100 книг, Москва, 2007 год.
  9. Рязанцева Н.А., Рязанцев Д.Н. «1С: Предприятие. Торговля и склад. Секреты работы», BHV-Петербург, 2007 год.
  10. Розмари В. «Основы управления розничной торговлей», издательство им. «Гребенникова ИД», Санкт-Петербург, 2005 год.

Размещено на Allbest.ru


Информация о работе Учет продукции на складе средствами программы 1С:Предприятие на примере ООО "Альтаир"