Автор работы: Пользователь скрыл имя, 13 Апреля 2013 в 11:07, отчет по практике
Производственный процесс связан с перемещением сырья и материалов из одного промышленного предприятия в другое, а также с перемещением готовой продукции из среды производства в среду потребления. Это перемещение невозможно без образования в определённых местах необходимых материальных запасов, для хранения которых нужны соответствующие складские устройства.
Основное назначение складов – хранение сырья, материалов и различных изделий. Кроме того, на складах выполняются работы, связанные с подготовкой материалов к производственному потреблению и централизованной доставке их непосредственным потребителям.
ТаблДв.НоваяКолонка("ДатаДок",
ТаблДв.НоваяКолонка("ВидДв","
// Таблица соответствия накладных и Передач ТМЦ экспедитору
ТаблН = СоздатьОбъект("
ТаблН.НоваяКолонка("Передача",
ТаблН.НоваяКолонка("Накл","
// Заполним таблицу соответствия
Док=СоздатьОбъект("Документ.
Док.ВыбратьДокументы(ДатаНач,
Пока Док.ПолучитьДокумент()=1 Цикл
Если Док.Проведен()=0 Тогда
Продолжить;
КонецЕсли;
Состояние(""+Док.
Док.ВыбратьСтроки();
Пока Док.ПолучитьСтроку()=1 Цикл
ТаблН.НоваяСтрока();
ТаблН.Передача = Док.ТекущийДокумент();
ТаблН.Накл = Док.Накладная;
КонецЦикла;
КонецЦикла;
//Сформируем запрос
по остаткам и движению
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ДатаНач по ДатаКон;
|Док
= Регистр.ОстаткиТМЦ.
|
Регистр.РезервыТМЦ.
|
Регистр.ПартииОтданные.
|Номенклатура =
Регистр.ОстаткиТМЦ.
|
Регистр.РезервыТМЦ.
|
Регистр.ПартииОтданные.
|Количество = Регистр.ОстаткиТМЦ.Количество,
|
Регистр.ПартииОтданные.
|Функция КолНачОст = НачОст(Количество);
|Функция КолКонОст = КонОст(Количество);
|Функция КолПриход = Приход(Количество);
|Функция КолРасход = Расход(Количество);
|Группировка Номенклатура без групп;
|Группировка Док;";
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(
Возврат;
КонецЕсли;
Свр = "";
Пока Запрос.Группировка(1) = 1 Цикл
Коэф = Запрос.Номенклатура.
НачОстШт = Запрос.КолНачОст;
НачОстКор = ?(Коэф = 0,Запрос.КолНачОст,Запрос.
// Заполняем таблицу остатков и общего количества прихода и расхода по каждой позиции номенклатуры в штуках и коробах
ТаблТ.НоваяСтрока();
ТаблТ.Группа
= Запрос.Номенклатура.
ТаблТ.Товар = Запрос.Номенклатура;
ТаблТ.КолПриходШт = Запрос.КолПриход;
ТаблТ.КолПриходКор = ?(Коэф
= 0,Запрос.КолПриход,Запрос.
ТаблТ.КолРасходШт = Запрос.КолРасход;
ТаблТ.КолРасходКор
= ?(Коэф = 0,Запрос.КолРасход,Запрос.
ТаблТ.КолКонОстШт = Запрос.КолКонОст;
ТаблТ.КолКонОстКор
= ?(Коэф = 0,Запрос.КолКонОст,Запрос.
// В таблице итогов и таблице движений добавляем колонки движения в штуках и коробах
// идентификатор колонки - код номенклатуры
ТаблИт.НоваяКолонка("Ш"+
ТаблИт.НоваяКолонка("К"+
ТаблДв.НоваяКолонка("Ш"+
ТаблДв.НоваяКолонка("К"+
//Формируем список полей для последующей свертки таблиц
Свр=Свр+",Ш"+СокрЛП(ТаблТ.
// В таблицу итогов запишем начальный остаток в штуках и коробах
ТаблИт.НоваяСтрока();
ТаблИт.Группа
= Запрос.Номенклатура.
ТаблИт.УстановитьЗначение(
ТаблИт.УстановитьЗначение(
// Заполним движение по номенклатуре
Пока Запрос.Группировка(2) = 1 Цикл
Если (Запрос.КолПриход = 0) И (Запрос.КолРасход = 0) Тогда
Продолжить;
КонецЕсли;
// для документа движения "Реализация" по таблице соответствия проверяем - если есть передача, то заменяем на документ передачи
ТекДок = Запрос.Док;
Если ТекДок.Вид() = "Реализация" Тогда
Стр = "";
Если ТаблН.НайтиЗначение(
ТаблН.ПолучитьСтрокуПоНомеру(
ТекДок = ТаблН.Передача;
КонецЕсли;
КонецЕсли;
// записываем движение: приход "+", расход "-"
КолШт = Запрос.КолПриход - Запрос.КолРасход;
КолКор = ?(Коэф = 0,КолШт,КолШт/Коэф);
ТаблДв.НоваяСтрока();
ТаблДв.Группа
= Запрос.Номенклатура.
ТаблДв.Документ = ТекДок;
ТаблДв.ДатаДок = ТекДок.ДатаДок;
ТаблДв.ВидДв = КолШт;
ТаблДв.УстановитьЗначение(
ТаблДв.УстановитьЗначение(
КонецЦикла;
КонецЦикла;
Свр = Сред(Свр,2);
// Сворачиваем таблицы
ТаблТ.Свернуть("Группа,Товар",
ТаблИт.Свернуть("Группа",Свр);
ТаблДв.Свернуть("Группа,
ТаблДв.Сортировать("+Группа,+
ТаблИт.Сортировать("+Группа");
ТаблТ.Сортировать("+Группа,+
// Формируем отчет
// Перебираем таблицу итогов - список групп,
// на каждую группу
формируем отдельный лист
ЧислоСтр=0;
ТаблИт.ВыбратьСтроки();
Пока ТаблИт.ПолучитьСтроку()=1 Цикл
Если Не (ТаблИт.НомерСтроки=1) Тогда
Таб.НоваяСтраница();
КонецЕсли;
Таб.ВывестиСекцию("Заголовок|
Таб.ВывестиСекцию("Шапка|
ИтКолШт=0;
ИтКолКор=0;
// В шапку выводим позиции номенклатуры, входящие в группу и остатки на начало
ТаблТ.ВыбратьСтроки();
Пока ТаблТ.ПолучитьСтроку()=1 Цикл
Если
ТаблТ.Группа=ТаблИт.Группа
ЗагШапки=ТаблТ.Товар;
КолШт=ТаблИт.ПолучитьЗначение(
КолКор=ТаблИт.
// суммируем остатки
по всем позициям
ИтКолШт=ИтКолШт+КолШт;
ИтКолКор=ИтКолКор+КолКор;
Таб.ПрисоединитьСекцию("Шапка|
КонецЕсли;
КонецЦикла;
// выведем остаток по группе
ЗагШапки=ТаблИт.Группа;
КолШт=ИтКолШт;
КолКор=ИтКолКор;
Таб.ПрисоединитьСекцию("Шапка|
// Выводим документы движения группы номенклатуры
ТаблДв.ВыбратьСтроки();
Пока ТаблДв.ПолучитьСтроку()=1 Цикл
Если Не (ТаблДв.Группа = ТаблИт.Группа) Тогда
Продолжить;
КонецЕсли;
Документ=ТаблДв.Документ;
Таб.ВывестиСекцию("Строка|
ИтКолШт=0;
ИтКолКор=0;
// выводим движение по каждой позиции номенклатуры
ТаблТ.ВыбратьСтроки();
Пока ТаблТ.ПолучитьСтроку()=1 Цикл
Если
ТаблТ.Группа=ТаблИт.Группа
КолШт=ТаблДв.ПолучитьЗначение(
КолКор=ТаблДв.ПолучитьЗначение
// суммируем движение
по всем позициям
ИтКолШт=ИтКолШт+КолШт;
ИтКолКор=ИтКолКор+КолКор;
Таб.ПрисоединитьСекцию("
КонецЕсли;
КонецЦикла;
// выведем общее движение по группе
КолШт=ИтКолШт;
КолКор=ИтКолКор;
Таб.ПрисоединитьСекцию("
КонецЦикла;
// Выведем итоги движения и остатки на конец из таблицы остатков
ИтОстКолШт=0;
ИтОстКолКор=0;
ИтПКолШт=0;
ИтПКолКор=0;
ИтРКолШт=0;
ИтРКолКор=0;
Таб.ВывестиСекцию("Итог|
ТаблТ.ВыбратьСтроки();
Пока ТаблТ.ПолучитьСтроку()=1 Цикл
Если
ТаблТ.Группа=ТаблИт.Группа
// Суммируем общее количество прихода, расхода и конечного остатка по группе
ОстКолШт=ТаблТ.КолКонОстШт;
ОстКолКор=ТаблТ.КолКонОстКор;
ПКолШт=ТаблТ.КолПриходШт;
ПКолКор=ТаблТ.КолПриходКор;
РКолШт=ТаблТ.КолРасходШт;
РКолКор=ТаблТ.КолРасходКор;
ИтОстКолШт=ИтОстКолШт + ТаблТ.КолКонОстШт;
ИтОстКолКор=ИтОстКолКор + ТаблТ.КолКонОстКор;
ИтПКолШт=ИтПКолШт + ТаблТ.КолПриходШт;
ИтПКолКор=ИтПКолКор + ТаблТ.КолПриходКор;
ИтРКолШт=ИтРКолШт + ТаблТ.КолРасходШт;
ИтРКолКор=ИтРКолКор + ТаблТ.КолРасходКор;
Таб.ПрисоединитьСекцию("Итог|
КонецЕсли;
КонецЦикла;
// выводим итоги по группе
ОстКолШт=ИтОстКолШт;
ОстКолКор=ИтОстКолКор;
ПКолШт=ИтПКолШт;
ПКолКор=ИтПКолКор;
РКолШт=ИтРКолШт;
РКолКор=ИтРКолКор;
Таб.ПрисоединитьСекцию("Итог|
КонецЦикла;
Таб.ПараметрыСтраницы(2,,,10,
Таб.Показать();
КонецПроцедуры
Процедура ПриОткрытии()
ДатаНач = НачалоПериодаБИ();
ДатаКон = КонецПериодаБИ();
КонецПроцедуры
2.4 Технологическое обеспечение задачи
2.4.1 Руководство пользователя
Чтобы начать работу, нужно запустить систему программ 1С:Предприятие. На экран выводится главное окно программы.
Рисунок 1
После этого в Главном меню программы необходимо выбрать пункт Документы, Реализация (купля-продажа). Занести данные в шапку документа и в табличную часть.
Для формирования накладной необходимо нажать на кнопку Провести.
Далее нужно открыть пункт меню Документы, выбрать документ
РеестрНакладнойПоСкладуДоставк
Рисунок2
В этом документе необходимо выбрать дату, на которую были сформированы нужные нам накладные и склад, с которого будет производиться отгрузка товара. Далее нажать на кнопку Заполнить. В табличной части документа выведутся все накладные на эту дату. Выбрать маршрут, по которому будет отправляться товар. Нажать на кнопку СформироватьПередачуТМЦ. Откроется документ ПередачаТМЦЭкспедитору. Чтобы Сохранить Документ
Информация о работе Отчет по практике в ЗАО “Бриджтаун Фудс”