Модернизация автоматизированной информационной системы учета товара
Характеристика информационной системы и действующей системы-прототипа ОАО "Центрпродсервис". Организационная структура, информационно-технологическое сопровождение и алгоритмическое обеспечение системы. Проектирование базы данных. Расчет проектных затрат.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 21.01.2015 |
Размер файла | 2,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Таб.ВывестиСекцию("Шапка");
Таб.ВывестиСекцию("ШапкаТаблицы");
// выводим шапку на каждой странице
НачПовт = Таб.ВысотаСекции("Кнопки") +
Таб.ВысотаСекции("Шапка");
КонПовт = НачПовт + Таб.ВысотаСекции("ШапкаТаблицы");
Таб.ПовторятьПриПечатиСтроки(НачПовт + 1, КонПовт);
глОживить(1);
//Если нужен порядок по списку элементов МФ Тогда
//Организовать цикл по элементам списка МФ и позиционировать
//запрос на элементе
Пока Запрос.Группировка("Номенклатура") = 1 Цикл
Номенклатура = Запрос.Номенклатура;
Если ПустоеЗначение(Номенклатура) = 1 Тогда
Продолжить;
КонецЕсли;
// подсчет количества дней продажи товара (рабочие дни когда он
лежал на складе
// или день (даже нерабочий) когда была сделана продажа)
ПроданоВсего = Запрос.Продано;
КолДнейПродажи = 0;
ТекДата = ДатаНачала;
ТекДатаУчтена = 0;
ОстатокНачалаПериода = Запрос.НачОст;
ПоступлениеПериода = Запрос.Приход;
ОстатокОкончанияПериода = Запрос.КонОст;
ОстатокНачалаПериодаП=0;
ОстатокОкончанияПериодаП=0;
ПроданоВсегоП=0;
Если Запрос2.Получить(Номенклатура) = 1 Тогда
ОстатокНачалаПериодаП = Запрос2.НачОст;
ОстатокОкончанияПериодаП = Запрос2.КонОст;
ПроданоВсегоП = Запрос2.Продано;
конецесли;
Пока Запрос.Группировка("Документ") = 1 Цикл
Если ТекДата <> Запрос.Документ.ДатаДок Тогда
ТекДатаУчтена = 0;
ТекДата = Запрос.Документ.ДатаДок;
КонецЕсли;
Если ТекДатаУчтена = 0 Тогда
Если (Запрос.Продано > 0) тогда// возвраты не считаем.
КолДнейПродажи = КолДнейПродажи + 1;
ТекДатаУчтена = 1;
КонецЕсли;
КонецЕсли;
КонецЦикла; // по документам
СредняяСкорость = ?(КолДнейПродажи = 0, 0,ПроданоВсего /
КолДнейПродажи);
ОбщаяСкорость = ?(КолДнейПродажи = 0, 0,ПроданоВсего /
ЧислоРабочихДнейМежду(ДатаНачала, ДатаКонца));
Ед = Номенклатура.БазоваяЕдиница;
ПечТекстСтроки = Номенклатура;
ТекРасшифровка = Номенклатура;
ПечКодТекстСтроки = Номенклатура.код;
ПечПроданоВсего = глФРМКоличество(ПроданоВсего, Ед);
ПечПроданоВсегоП = глФРМКоличество(ПроданоВсегоП, Ед);
ПечПриходВсего =глФРМКоличество(ПоступлениеПериода, Ед);
ПечКолДнейПродажи = Формат(КолДнейПродажи,"Ч10");
ПечСредняяСкорость = глФРМКоличество(СредняяСкорость,Ед);
ПечОбщаяСкорость=глФРМКоличество(ОбщаяСкорость, Ед);
ПечОстатокНачалаПериода =
глФРМКоличество(ОстатокНачалаПериода, Ед);
ПечОстатокОкончанияПериода =
глФРМКоличество(ОстатокОкончанияПериода, Ед);
ПечОстатокНачалаПериодаП =
глФРМКоличество(ОстатокНачалаПериодаП, Ед);
ПечОстатокОкончанияПериодаП =
глФРМКоличество(ОстатокОкончанияПериодаП, Ед);
Таб.ВывестиСекцию("Строка1");
глОживить(1);
КонецЦикла;
ОстатокНачалаПериодаП = Запрос2.НачОст;
ОстатокОкончанияПериодаП = Запрос2.КонОст;
ПроданоВсегоП = Запрос2.Продано;
ПечПроданоВсего = глФРМКоличество(ПроданоВсегоП, Ед);
ПечОстатокНачалаПериода =
глФРМКоличество(ОстатокНачалаПериодаП, );
ПечОстатокОкончанияПериода =
глФРМКоличество(ОстатокОкончанияПериодаП, );
ОстатокНачалаПериода = Запрос.НачОст;
ОстатокОкончанияПериода = Запрос.КонОст;
ПроданоВсего = Запрос.Продано;
ПечПроданоВсего = глФРМКоличество(ПроданоВсего, Ед);
ПечОстатокНачалаПериода =
глФРМКоличество(ОстатокНачалаПериода, );
ПечОстатокОкончанияПериода =
глФРМКоличество(ОстатокОкончанияПериода, );
Таб.ВывестиСекцию("Всего");
глОживить(1);
Таб.Опции(0, 0, 8, 0, "ПланированиеЗакупок",
"ПланированиеЗакупок");
Таб.ОбластьПечати(3);
// Вывод заполненной формы
Таб.ТолькоПросмотр(1);
Таб.Показать("Планирование закупок", "");
Если (Обновить = 2)ИЛИ(ЗакрытьДиалог=1) Тогда
СтрокаДействийФормы = "#Закрыть";
КонецЕсли;
КонецПроцедуры // Сформировать()
// ПРЕДОПРЕДЕЛЕННЫЕ ПРОЦЕДУРЫ
//************************************************************
// Предопределенная процедура
Процедура ПриОткрытии(ФлагВосстановленияНастройки)
Если ФлагВосстановленияНастройки = 0 Тогда
ДатаНачала = Константа.ДатаНачалаПериода;
Если ПустоеЗначение(ДатаНачала) = 1 Тогда
ДатаНачала = НачМесяца(ДатаКонца);
КонецЕсли;
// инициализация границ периодов
ДатаНачалаЗак = ДатаКонца+1;
ДатаКонцаЗак = КонМесяца(ДатаНачалаЗак);
ВидРазделителя = 1;
КонецЕсли;
Если глФлагРасшифровки = 1 Тогда
Обновить = глОбновить;
// восстанавливаем настройки из списка
ДатаНачала = глРасшифровка.Получить("ДатаНачала");
ДатаКонца = глРасшифровка.Получить("ДатаКонца");
ДатаНачалаЗак= глРасшифровка.Получить("ДатаНачалаЗак");
ДатаКонцаЗак = глРасшифровка.Получить("ДатаКонцаЗак");
ВыбТМЦ = глРасшифровка.Получить("ВыбТМЦ");
Если
ТипЗначенияСтр(глРасшифровка.Получить("ТаблицаМФ"))="Таблица
Значений" Тогда
ТаблицаМФ.Загрузить(глРасшифровка.Получить("ТаблицаМФ"));
КонецЕсли;
Если Обновить <> 0 Тогда
Таб = глТаблица;
КонецЕсли;
Если Обновить <> 2 Тогда
Сформировать();
СтатусВозврата(0);
Возврат;
КонецЕсли;
Иначе
Обновить = 0;
КонецЕсли;
ПерерисовкаНазванийЗакладок();
ТаблицаМФ.ВидимостьКолонки("Тип",0);
ТаблицаМФ.ВидимостьКолонки("Вид",0);
ТаблицаМФ.ВидимостьКолонки("СписокЭлементов",0);
ТаблицаМФ.ВидимостьКолонки("ТипМФ",0);
ТаблицаМФ.ВидимостьКолонки("ИмяПеременной",0);
ТаблицаМФ.ВыводитьПиктограммы("ФлВкл");
УправлениеДиалогом();
КонецПроцедуры// ПриОткрытии()
//************************************************************
// Предопределенная процедура.
Процедура ВводНового()
// эта предопределенная процедура выполняется при восстановлении настройки
ПерерисовкаНазванийЗакладок();
УправлениеДиалогом();
ТаблицаМФ.ВыводитьПиктограммы("ФлВкл");
КонецПроцедуры // ВводНового()
//************************************************************
// Предопределенная процедура
Процедура ПриВыбореЗакладки(Номер,Значение)
// закладки
Если Номер=1 Тогда
глПриСменеСтрокиТаблицыМФ(1,ТекСтрокаВТаблице,Контекст); //
записываем изменения если они были
КонецЕсли;
УправлениеДиалогом();
ПерерисовкаНазванийЗакладок();
КонецПроцедуры// ПриВыбореЗакладки
//************************************************************
// Предопределенная процедура
Процедура ОбработкаПодбора(Значение)
Если (СписокЭлементовМФ.НайтиЗначение(Значение)=0) Тогда
Представление=""+Значение;
Если ТипЗначенияСтр(Значение)="Справочник" Тогда
Если СокрЛП(Метаданные.Справочник(Значение.Вид()).Владелец) <>
"Метаданные" Тогда
Представление=Представление+" ("+Значение.Владелец+")";
КонецЕсли;
КонецЕсли;
СписокЭлементовМФ.ДобавитьЗначение(Значение,Представление);
ТаблицаМФ.ФлВкл=2;
КонецЕсли;
КонецПроцедуры // ОбработкаПодбора
ДатаКонца = ПолучитьДатуТА();
// инициализация списков
// инициализация переменных множественного фильтра
ТипМФ.УдалитьВсе();
ТипМФ.ДобавитьЗначение("одно из");
ТипМФ.ДобавитьЗначение("все кроме");
ТаблицаМФ.УдалитьСтроки();
Пока ТаблицаМФ.КоличествоКолонок()>0 Цикл
ТаблицаМФ.УдалитьКолонку(1);
КонецЦикла;
ТаблицаМФ.НоваяКолонка("Тип");
ТаблицаМФ.НоваяКолонка("Вид");
ТаблицаМФ.НоваяКолонка("ИмяПеременной");
ТаблицаМФ.НоваяКолонка("СписокЭлементов"); // список элементов,
по которым производим фильтрацию
ТаблицаМФ.НоваяКолонка("ТипМФ"); // текущая строка списка
ТипМФ
ТаблицаМФ.НоваяКолонка("ФлВкл","Число",1,,"Вкл",5,,); // фильтр
включен ("1" или "0")
ТаблицаМФ.НоваяКолонка("Представление",,,,"Вид фильтра:");
ТаблицаМФ.ВыводитьПиктограммы("ФлВкл");
// тип вид переменная название
глДобавитьВТаблицуМФ(ТаблицаМФ,"Справочник","Товары",
"Номенклатура", "По номенклатуре");
глДобавитьВТаблицуМФ(ТаблицаМФ,"Справочник","Организации",
"Поставщик", "По поставщикам");
глДобавитьВТаблицуМФ(ТаблицаМФ,"Справочник","ЗначенияСвойст
в", "Номенклатура", "По свойствам номенклатуры");
ТекСтрокаВТаблице = "";
// Инициализируем закладки
Форма.ИспользоватьЗакладки(1);
Форма.Закладки.ДобавитьЗначение(1,"Основная");
Форма.Закладки.ДобавитьЗначение(2,"Множественный фильтр");
Форма.Закладки.ТекущаяСтрока(1);
Приложение Б
Листинг программной реализации отчета «Нулевая реализация»
//*******************************************
// Процедура генерации запроса Осталось.
Процедура Осталось()
Перем Запрос, ТекстЗапроса, Таб;
Запрос=СоздатьОбъект("Запрос");
ТекстЗапроса ="
Период с ВыбДатаНач по ВыбДатаКон;
Обрабатывать НеПомеченныеНаУдаление;
Предприятие =
Регистр.Остатки.Подразделение,Регистр.Продажи.Подразделение;
Товар = Регистр.Остатки.Товар,Регистр.Продажи.Номенклатура;
Количество = Регистр.Остатки.Количество;
КоличествоП=Регистр.Продажи.Количество;
Поставщик =
Регистр.Остатки.ПрихДок.Агент,Регистр.Продажи.Поставщик;
СуммаРозн = Регистр.Остатки.СуммаРозн;
Функция КолОст = КонОст(Количество);
Функция СуммаРознОст = КонОст(СуммаРозн);
Функция КолПриход = Приход(Количество);
Функция КолРасход = Расход(Количество);
Функция Продано = Сумма(КоличествоП);
Группировка Товар упорядочить по КолОст;
Условие(Предприятие в ВыбПредприятие);
Условие(Товар в ВыбТовар);
Условие(Поставщик в ВыбПоставщик);
Условие(КоличествоП = 0);
"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
//Рег=СоздатьОбъект("Регистр.ОстаткиТоваров");
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Таблица1");
// Заполнение полей "Заголовок"
Усл="";
Если ПустоеЗначение(ВыбПредприятие)=0 Тогда
Усл=Усл+"По подразделению: "+ВыбПредприятие+".";
КонецЕсли;
Если ПустоеЗначение(ВыбПоставщик)=0 Тогда
Усл=Усл+"По поставщику: "+ВыбПоставщик+".";
КонецЕсли;
Если ПустоеЗначение(ВыбТовар)=0 Тогда
Усл=Усл+"По товарам: "+ВыбТовар+".";
КонецЕсли;
Таб.ВывестиСекцию("Заголовок");
Состояние("Заполнение выходной таблицы...");
Ном=0;
Пока Запрос.Группировка("Товар") = 1 Цикл
Если Запрос.ЭтоГруппа("Товар")=1 Тогда
Таб.ВывестиСекцию("ГрТовар");
Иначе
Если Запрос.Продано<>0 Тогда Продолжить; КонецЕсли;
Если Запрос.КолРасход<>0 Тогда Продолжить; КонецЕсли;
Ном=Ном+1;
Если Ном%50=0 Тогда
Состояние("Обработано строк "+Ном);
КонецЕсли;
ЦенаЗ=Запрос.Товар.ЦенаЗакуп;
ЦенаР=Запрос.Товар.ЦенаРозн;
Таб.ВывестиСекцию("Товар1");
КонецЕсли;
КонецЦикла;
// Заполнение полей "Итого"
Таб.ВывестиСекцию("Итого");
// Вывод заполненной формы
Таб.Опции(0, 0, 3, 0, "НулеваяРеализация","НулеваяРеализация");
Таб.ТолькоПросмотр(1);
Таб.Показать("НулеваяРеализация: "+ВыбПредприятие, "");
КонецПроцедуры
Приложение В
Листинг программной реализации отчета «Пакетная печать инвентаризаций»
Процедура Сформировать()
таб=создатьобъект("Таблица");
Таб.Опции(0,0,0,0,"ВедомостьСнятияОстатков","ВедомостьСнятияОста
тков");
ДОК=создатьобъект("Документ.инвентаризация");
док.выбратьДокументы(выбдата,выбдата1);
пока док.получитьДокумент()=1 цикл
если док.проведен()=1 тогда продолжить; конецесли;
если док.пометкаудаления()=1 тогда продолжить; конецесли;
если пустоезначение(выбагент)=0 тогда
если док.агент<>выбагент тогда продолжить; конецесли;
конецесли;
если (начлист>число(док.лист)) или (Конлист<число(док.лист)) тогда
продолжить; конецесли;
для я=1 по экз цикл
таб.вывестисекцию("шапкаИнв");
Ном=0;
док.выбратьСтроки();
пока док.получитьстроку()=1 цикл
Ном = Ном + 1;
таб.вывестисекцию("Строка");
Если Ном%2=0 Тогда
ОблТаб=Таб.Область(Таб.ВысотаТаблицы(),1,Таб.ВысотаТаблицы(),7);
ОблТаб.РамкаСнизу(7);
КонецЕсли;
конеццикла;
таб.вывестисекцию("Итог");
таб.вывестисекцию("Подвал");
таб.новаястраница();
конеццикла;
конеццикла;
таб.показать();
КонецПроцедуры
выбдата=рабочаядата();
начлист=1;
конлист=1;
экз=2;
Размещено на Allbest.ru
Подобные документы
Разработка информационно-логической модели проектируемой информационной системы. Алгоритм функционирования информационной системы. Описание базы данных. Описание входной, промежуточной и выходной информации. Техническое и программное обеспечение.
реферат [28,1 K], добавлен 09.01.2009Описание системы-прототипа по видам обеспечения. Недостатки системы учета. Информация, подлежащая структуризации и системной организации. Исходящие и входящие информационные потоки. Проектирование базы данных предприятия. Разработка моделей базы данных.
курсовая работа [3,2 M], добавлен 03.07.2012Детализация функций системы и требования к информационной системе. Анализ категорий пользователей. Этапы внедрения автоматизированной информационной системы на предприятии. Описание таблиц базы данных. Защита данных от несанкционированного доступа.
дипломная работа [1,0 M], добавлен 22.07.2015Создание автоматизированной системы учета заказов и их выполнения в строительной фирме по ремонту квартир. Общие требования к информационной системе. Проектирование структуры базы данных. Построение ER-диаграммы. Реализация информационной системы.
курсовая работа [750,2 K], добавлен 24.03.2014Выбор методологии проектирования и разработка информационной системы "Расчёт зарплаты" для предприятия ОАО РТП "Авторемонтник". Архитектурное проектирование базы данных информационной системы и разработка её интерфейса. Тестирование программного модуля.
дипломная работа [2,3 M], добавлен 25.05.2014Выявление сущностей и связей, атрибутов сущностей и назначение первичных ключей при разработке базы данных. Реляционная модель данных. Описание стадий жизненного цикла информационной системы: анализ, проектирование, реализация, внедрение, сопровождение.
курсовая работа [152,2 K], добавлен 11.05.2014Предпроектное обследование предприятия ООО "Уралэнергоцентр". Расчет текущих затрат пользователя. Разработка автоматизированной информационной системы управления ООО "Уралэнергоцентр". Автоматизация информационной системы товарооборота предприятия.
дипломная работа [1,5 M], добавлен 27.12.2009Техническое задание на разработку автоматизированной системы и складского учета управления универсальной торговой базы. Проектирование информационной системы и выбор среды для создания программного продукта. Создание интерфейса и руководство пользователя.
дипломная работа [2,1 M], добавлен 11.07.2015Логическая и физическая схема действующей компьютерной сети. Проблемы, решение которых актуально для предприятия. Базы данных задач и работ бизнес-процессов. Структура информационной системы. Проектирование подсистемы "Управление основным производством".
курсовая работа [4,8 M], добавлен 17.12.2011Требования к функциональным характеристикам информационной системы "Подписка". Функциональное проектирование автоматизированной системы ведения учета основных средств на предприятии. Проектирование базы данных автоматизированной системы ведения учета.
курсовая работа [753,0 K], добавлен 16.01.2015