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

 

Введение


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

Подсистемы, входящие в функциональную часть, называют функциональными подсистемами АСУ. Обеспечивающая часть АСУ состоит из видов обеспечения: математического (МО), программного (ПО), технического (ТО), лингвистического (ЛО), информационного (ИО), организационного, методического, эргономического, метрологического, правового. Обеспечивающие подсистемы выполняют собственно информационные процессы в АСУП и ответственны за их подготовку и организацию. Подсистемы, входящие в обеспечивающую часть, называются обеспечивающие подсистемы АСУ. Все функциональные подсистемы используют общее ИО и ТО.

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


Компания ООО «DNS» - это 10 лет работы в сфере ремонта и сервисного обслуживания компьютерной и оргтехники. Наша компания обеспечивает весь спектр услуг по настройке и обслуживанию компьютерной техники, гарантирует быстрый и качественный ремонт компьютеров, оргтехники (копировальных аппаратов (копиров, ксероксов), факсимильных аппаратов (факсов), принтеров, многофункциональных устройств (МФУ).

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

Задачи отдела продаж:

?Работа с заказчиками (прием и формирование заказа)

?Работа с поставщиками по закупу

?Реализация компьютерной техники, комплектующих и программного обеспечения

?Учет документооборота предприятия.

Задачи отдела информационных технологий:

?Консультирование персонала по вопросам работы с программным обеспечением

?Обучение персонала

?Обслуживание компьютерной техники

?Настройки и сопровождение ОС и прикладных программ «общего» пользования

?Монтаж и обслуживание сетей и АТС

Задачи отдела копировально-множительной техники:

?Ремонт оборудования

?Обслуживание оргтехники

?Заправка и восстановление картриджей

?Консультирование пользователей по вопросам работы с оргтехникой


1.1 Техническое обеспечение АРМ


Предметом работы сотрудников предприятия являются персональные компьютеры (ПК), объединенные локальной сетью. Также имеются дополнительные устройства: принтер, сканер, источник бесперебойного питания, модем, коммутатор.


Характеристика персонального компьютера АРМ

ПроцессорPentium 3000 MHz (3.75 x 800)Оперативная память512Мб (DDRSDRAM)Hard DiskSamsung SP 080 2N 120GbВидеокартаRADEON 9600 PRO Family (Microsoft Corporation) (256Мб)Звуковая картаSoundMax Integrated Digital Audio (Gigabyte)МониторSync Master 198т/910т, Sync Master Magic CX901 (Digital)Сетевая платаIntel Springdale i865PEМышьPS/2 совместимая мышьКлавиатураPS/2 Microsoft NaturalПринтерhp LaserJet 1300СканерScan Express AB USBСетевой коммутаторSwitch 10-Port 10/100Mbps Desc-1008D

2. Операционные системы


На предприятии используется операционная система Windows ХР Professional Service Pack 3. Она обладает наибольшей универсальностью, имеет самое широкое распространение и имеет поддержку со стороны производителей программного и аппаратного обеспечения.

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


2.1 Прикладные программы


?Пакет Microsoft Office 2003

?1С: Предприятие - программное средство, предназначенное для решения широкого круга задач по автоматизации предприятий различных видов деятельности.


2.2 Сетевое программное обеспечение


На предприятие персональные компьютеры объединены локальной и глобальной сетью. Локальная сеть построена с использованием коммутатора.

Сетевое программное обеспечение реализовано через протокол TCP/IP. Включены: клиент для сетей Microsoft, служба доступа к сетевому принтеру и папкам общего пользования.

3. Конфигуратор системы 1С: Предприятие


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

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

Метаданными ("данными о данных") в системе 1С:Предприятие называется совокупность объектов метаданных, настроенных на хранение и обработку информации о хозяйственной деятельности конкретного предприятия.

Пользовательским интерфейсом в системе 1С:Предприятие называется совокупность команд главного меню и панелей инструментов, настроенных на работу с конкретными объектами данных - документами, справочниками, журналами и т.д. Как правило, пользовательский интерфейс создается для конкретной категории пользователей. Цель создания интерфейса - обеспечить быстрый доступ пользователей к той информации, которая необходима им в соответствии с их обязанностями.

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

3.1 Конфигурация окна «Журнал документов»


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

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

Рассмотрим пример редактирования метаданных идентификатора «Журнал документов». При нажатии двойным щелчком по вкладке «Складские документы» открываются свойства данного окна которые доступны для редактирования (рисунок 2)

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

На закладке "Основные" вводятся имя, синоним и комментарий объекта (рисунок 2).


Рисунок 2. Закладка «Основные».

На закладке "Данные" определяется состав объекта, создаются реквизиты, измерения, ресурсы, указываются их типы и размерность (рисунок 3).


Рисунок 3. Закладка «Данные».


На закладке "Формы" создаются различные экранные формы, необходимые для интерактивной работы пользователей с объектами данного типа (рисунок 4).


Рисунок 4. Закладка «Формы»

При нажатии двойным щелчком по вкладке «Форма списка» вызывается редактор форм для создания экранной и печатной формы журнала (рисунок 5).


Рисунок 5. Редактор форм «Складские документы»


Форма состоит из диалога, модуля и реквизитов формы. Настройка поведения формы производится в палитре свойств. При открытии формы на экран выводится окно, состоящее из трех закладок.

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

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

Реквизиты - размещается список реквизитов.

На закладке "Макеты" создаются макеты выходных форм.

На закладке "Подсистемы" указывается, к каким подсистемам относятся объекты данного типа (рисунок 6).


Рисунок 6. Закладка «Подсистема».


На закладке "Права" указываются права пользователей на чтение, изменение, удаление и других действий (рисунок 7).


Рисунок 7. Закладка «Права».

На закладке "Интерфейсы" выбираются интерфейсы, для которых объекты данного типа используются (рисунок 8).

автоматизированный рабочий место продажа

Рисунок 8. Закладка «Интерфейсы».


На закладке "Прочее" с помощью кнопки "Справочная информация" открывается окно создания справочной информации по данному виду объектов и определяется включение данной информации в содержание помощи.

Если установлено свойство "Включать в содержание справки", то для данного объекта в содержание справки включается тема по значению синонима объекта. Не зависимо от установки данного свойства в список индексов (для поиска тем по справке) включается строка по значению синонима объекта.

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

3.2 Конфигурация документа «Реализация товаров и услуг»


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

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

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

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

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

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

Свойства документа

Наряду с общими свойствами, присущими всем объектам метаданных, документы обладают рядом специфических свойств:

Закладка «Журнал»

Регистрируется в журналах

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


Рисунок 9. Закладка «Журнал»


Закладка «Нумерация»

Автонумерация

Установка свойства приводит к тому, что вновь введенному документу номер будет присваиваться автоматически. Автоматически присвоенный номер можно исправить.

Нумератор

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

Длина номера

Устанавливает максимальную длину номера документа.

Тип номера

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

Контроль уникальности

Если это свойство установлено, то при вводе нового документа его номер проверяется на уникальность в пределах, установленных в свойстве "Периодичность".

Периодичность

Свойство устанавливает пределы контроля уникальности номеров документов и период повторяемости номеров. Если свойство "Контроль уникальности", то в свойстве "Периодичность" указывается, в каких пределах будет осуществляться этот контроль.

При установленном свойстве "Автонумерация" система "1С:Предприятие" будет присваивать очередной порядковый номер каждому новому документу. После завершения периода, установленного в свойстве "Периодичность", нумерация документов начнется с 1 (рисунок 10).


Рисунок 10. Закладка «Нумерация»


Закладка «Формы»

Основные формы

В группе свойств указываются основные формы для каждого вида действия.

Ввод по строке

Для прикладных объектов (справочники, документы, планы видов характеристик, планы счетов, планы видов расчета, бизнес-процессы и задачи, а также планы обмена) в свойстве Ввод по строке формируются поля ввода по строке. В нем могут указываться основные реквизиты (для справочников, планов видов характеристик, планов счетов, планов видов расчета, планов обмена - Код и Наименование, для документов - Номер, для бизнес-процессов и задач - Наименование и Номер), а также реквизиты, имеющие тип Число или Строка, для которых свойство Индексировать имеет значение "Индексирование" или "Индексировать с доп. упорядочиванием" (Рисунок 11).


Рисунок 11. Закладка «Форма»


Закладка «Ввод на основании»

Ввод на основании

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

Заполнение документа при вводе на основании выполняется в предопределенной процедуре ОбработкаЗаполнения(). Для облегчения разработки алгоритма заполнения документа на основании других объектов конфигурации можно воспользоваться конструктором ввода на основании (рисунок 12).


Рисунок 12. Закладка «Ввод на основании».


Закладка «Движения»

На закладке производится настройка поведения документа при проведении и отмене проведения (рисунок 13).

Рисунок 13. Закладка «Движения».


Проведение

Свойство устанавливает, разрешено ли проведение документа при записи. Если выбрано "Разрешить", то документ осуществляет движения регистров (изменяет их состояние).

Оперативное проведение

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

Удаление движений

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

Список регистров

В списке регистров отметьте те регистры, в которых могут регистрироваться движения документа.

Закладка «Прочее»

Задает режим блокировки объекта (автоматический или управляемый) и устанавливается признак полнотекстового поиска по объектам данного типа (рисунок 14).


Рисунок 14. Закладка «Прочее».


Модуль объекта (может быть только один для конкретного вида объекта). Для справочников, документов, отчетов, обработок, планов характеристик, планов счетов, планов видов расчетов существует модуль (для регистров существует модуль набора записей), не привязанный к форме - для описания процедур, связанных с объектом информационной базы (например, печать, проведение, ввод на основании). Приведем пример написания некоторого алгоритма кода программы для функции «ПечатьТОРГ12» и процедуры «ОбработкаЗаполнения» (ПРИЛОЖЕНИЕ А).

Также рассмотрим макет формы «Накладная», что является табличным редактором и служит для создания шаблона выходной формы элемента данных (рисунок 15).


Рисунок 15. Форма «Накладная».

Заключение


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

Список использованной литературы


.1С Предприятие Версия 8.0 Конфигурирование и администрирование. Части 1 и 2 Фирма «1С» Москва 1999г.

.1С Предприятие Версия 8.0 Описание встроенного языка. Части 1 и 2 Фирма «1С» Москва 1999г.

3.Нормативные документы предприятия

4.www.v8.1c.r

Приложение А


Пример написания кода программы в системе 1С.

Функция ПечатьТОРГ12(БезУслуг = Ложь)

ЕдиницаИзмеренияВеса = Константы.ЕдиницаИзмеренияВеса.Получить();

ДопКолонка = Константы.ДополнительнаяКолонкаПечатныхФормДокументов.Получить();

Если ДопКолонка = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда

ТоварКод = "Артикул";

Иначе

ТоварКод = "Код";

КонецЕсли;

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

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

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

Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);

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

Запрос.УстановитьПараметр("Основание", ?(ЗначениеНеЗаполнено(ДоговорКонтрагента.Номер)=Истина, ДоговорКонтрагента.Наименование, ДоговорКонтрагента.Наименование + " №" + ДоговорКонтрагента.Номер + " от " + Формат(ДоговорКонтрагента.Дата, "ДЛФ = ДД")));

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

"ВЫБРАТЬ

|Номер,

|Дата КАК ДатаДокумента,

|Организация,

|Организация КАК ЮрФизЛицо,

|Организация КАК Поставщик,

|Организация КАК Контрагент,

|Организация КАК Руководители,

|АдресДоставки КАК АдресДоставки,

|ВЫБОР КОГДА Грузополучатель = &ПустойКонтрагент

| ТОГДА Контрагент

| ИНАЧЕ Грузополучатель КОНЕЦ КАК Грузополучатель,

|ВЫБОР КОГДА Грузоотправитель = &ПустойКонтрагент

| ТОГДА Организация

| ИНАЧЕ Грузоотправитель КОНЕЦ КАК Грузоотправитель,

|БанковскийСчетОрганизации КАК БанковскийСчет,

|Контрагент КАК Покупатель,

|Контрагент КАК Плательщик,

|Сделка,

//|ДоговорКонтрагента.Представление + ' № ' + ДоговорКонтрагента.Номер + ' от ' + ДоговорКонтрагента.Дата КАК Основание,

| &Основание КАК Основание,

|ДоговорКонтрагента.ВедениеВзаиморасчетов КАК ВедениеВзаиморасчетов,

|ОтветственныеЛица.ФизическоеЛицо КАК ОтветственноеЛицо,

|Подразделение,

|ВалютаДокумента,

|КурсВзаиморасчетов КАК Курс,

|КратностьВзаиморасчетов КАК Кратность,

|УчитыватьНДС,

|СуммаВключаетНДС

|ИЗ

|Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг,

|

|ЛЕВОЕ СОЕДИНЕНИЕ

|РегистрСведений.ОтветственныеЛица.СрезПоследних(&ДатаСреза, СтруктурнаяЕдиница = &СтруктурнаяЕдиница) КАК ОтветственныеЛица

|ПО

|ОтветственныеЛица.СтруктурнаяЕдиница = РеализацияТоваровУслуг.Склад

|

|ГДЕ

|РеализацияТоваровУслуг.Ссылка = &ТекущийДокумент

|";

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

Шапка.Следующий();

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

Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);

Если ВалютаДокумента = ДоговорКонтрагента.ВалютаВзаиморасчетов Тогда

// Документ оформлен в валюте взаиморасчетов

Запрос.УстановитьПараметр("Курс", ЭтотОбъект.КурсВзаиморасчетов);

Запрос.УстановитьПараметр("Кратность", ЭтотОбъект.КратностьВзаиморасчетов);

Иначе

// Документ оформлен в валюте регламентированного учета

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

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

КонецЕсли;

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

"ВЫБРАТЬ

|ВложенныйЗапрос.Номенклатура КАК Номенклатура,

|ВЫРАЗИТЬ(ВложенныйЗапрос.Номенклатура.НаименованиеПолное КАК Строка(1000)) КАК ТоварНаименование,

|ВложенныйЗапрос.Номенклатура." + ТоварКод + " КАК ТоварКод,

|ВложенныйЗапрос.ЕдиницаИзмерения.Представление КАК БазоваяЕдиницаНаименование,

|ВложенныйЗапрос.ЕдиницаИзмерения.ЕдиницаПоКлассификатору.Код КАК БазоваяЕдиницаКодПоОКЕИ,

|ВложенныйЗапрос.ЕдиницаИзмерения КАК ЕдиницаИзмерения,

|ВложенныйЗапрос.ЕдиницаИзмеренияМест.Представление КАК ВидУпаковки,

|ВложенныйЗапрос.КоэффициентМест / ВложенныйЗапрос.Коэффициент КАК КоличествоВОдномМесте,

|ВЫБОР

|КОГДА ВложенныйЗапрос.КоличествоМест > 0 ТОГДА ВложенныйЗапрос.КоличествоМест * ВложенныйЗапрос.ЕдиницаИзмеренияМест.Вес

|ИНАЧЕ ВложенныйЗапрос.Количество * ВложенныйЗапрос.ЕдиницаИзмерения.Вес

|КОНЕЦ КАК МассаБрутто,

|ВложенныйЗапрос.Характеристика КАК Характеристика,

|ВложенныйЗапрос.Серия КАК Серия,

|ВложенныйЗапрос.СтавкаНДС КАК СтавкаНДС,

|ВложенныйЗапрос.Цена КАК Цена,

|ВложенныйЗапрос.Количество КАК Количество,

|ВложенныйЗапрос.КоличествоМест КАК КоличествоМест,

|ВложенныйЗапрос.Сумма КАК Сумма,

|ВложенныйЗапрос.СуммаНДС КАК СуммаНДС,

|ВложенныйЗапрос.НомерСтроки КАК НомерСтроки,

|ВложенныйЗапрос.Метка КАК Метка

|ИЗ

|

|(

|ВЫБРАТЬ

|РеализацияТоваровУслуг.Номенклатура,

|РеализацияТоваровУслуг.Коэффициент,

|РеализацияТоваровУслуг.ЕдиницаИзмерения,

|РеализацияТоваровУслуг.ЕдиницаИзмеренияМест,

|РеализацияТоваровУслуг.ЕдиницаИзмеренияМест.Коэффициент КАК КоэффициентМест,

|РеализацияТоваровУслуг.ХарактеристикаНоменклатуры КАК Характеристика,

|РеализацияТоваровУслуг.СерияНоменклатуры КАК Серия,

|РеализацияТоваровУслуг.СтавкаНДС,

|РеализацияТоваровУслуг.Цена * &Курс / &Кратность КАК Цена,

|СУММА(РеализацияТоваровУслуг.Количество) КАК Количество,

|СУММА(РеализацияТоваровУслуг.КоличествоМест) КАК КоличествоМест,

|СУММА(РеализацияТоваровУслуг.Сумма * &Курс / &Кратность) КАК Сумма,

|СУММА(РеализацияТоваровУслуг.СуммаНДС * &Курс / &Кратность) КАК

Если ИтогоМест > 0 Тогда

ОбластьМакета.Параметры.ВсегоМестПрописью = ЧислоПрописью(ИтогоМест, ,",,,,,,,,0");

КонецЕсли;

Если (НомерСтраницы > 10) И (НомерСтраницы < 20) Тогда

Слово= " листах";

Иначе

ПоследняяЦифра= НомерСтраницы % 10;

Если ПоследняяЦифра = 1 Тогда

Слово= " листе";

Иначе

Слово= " листах";

КонецЕсли;

КонецЕсли;

ОбластьМакета.Параметры.КоличествоЛистовВПриложении = Строка(НомерСтраницы) + Слово;

ОбластьМакета.Параметры.КоличествоПорядковыхНомеровЗаписейПрописью = ЧислоПрописью(КоличествоСтрок, ,",,,,,,,,0");

ОбластьМакета.Параметры.СуммаПрописью = СформироватьСуммуПрописью(ИтогоСуммаСНДС, мВалютаРегламентированногоУчета);

ТабДокумент.Вывести(ОбластьМакета);

// Зададим параметры макета

ТабДокумент.ПолеСверху = 0;

ТабДокумент.ПолеСлева = 0;

ТабДокумент.ПолеСнизу = 0;

ТабДокумент.ПолеСправа = 0;

ТабДокумент.РазмерКолонтитулаСверху = 0;

ТабДокумент.РазмерКолонтитулаСнизу = 0;

ТабДокумент.АвтоМасштаб = Истина;

ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;

Возврат ТабДокумент;

КонецФункции // ПечатьТОРГ12()

*********************************************************

Процедура ОбработкаЗаполнения(Основание)

Если ТипЗнч(Основание) = Тип("ДокументСсылка.ЗаказПокупателя")

ИЛИ ТипЗнч(Основание) = Тип("ДокументСсылка.СчетНаОплатуПокупателю") Тогда

// Заполним реквизиты шапки по документу основанию.

АдресДоставки = Основание.АдресДоставки;

Подразделение = Основание.Подразделение;

Ответственный = Основание.Ответственный;

// Заполним реквизиты из стандартного набора по документу основанию.

ЗаполнитьШапкуДокументаПоОснованию(ЭтотОбъект, Основание);

ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ПродажаКомиссия;

ВидПередачи = Перечисления.ВидыПередачиТоваров.СоСклада;

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

Если ДоговорКонтрагента.ВедениеВзаиморасчетов <>

Перечисления.ВедениеВзаиморасчетовПоДоговорам.ПоРасчетнымДокументам Тогда

Если ТипЗнч(Основание) = Тип("ДокументСсылка.ЗаказПокупателя")

ИЛИ (ТипЗнч(Основание) = Тип("ДокументСсылка.СчетНаОплатуПокупателю")

И ДоговорКонтрагента.ВедениеВзаиморасчетов =

Перечисления.ВедениеВзаиморасчетовПоДоговорам.ПоСчетам) Тогда

Сделка = Основание;

Иначе

Сделка = Основание.ЗаказПокупателя;

КонецЕсли;

Если Основание.Проведен Тогда

ВариантВыводаФормыЗаполнения = ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"),"ВариантВыводаФормыЗаполнения");

Если ВариантВыводаФормыЗаполнения = Перечисления.ВариантыВыводаФормыЗаполнения.ВызыватьВсегда Тогда

// тут заполнять не надо - откроется форма выбора

мОткрыватьФормаЗаполненияПоЗаказу = Истина;

Иначе

// Заполним табличные части неполученными ТМЦ (резервом) по заказу покупателя.

ЗаполнитьТабличнуюЧастьПоЗаказуПокупателяУпр(Товары, Основание, ВариантВыводаФормыЗаполнения);

Если Не мОткрыватьФормаЗаполненияПоЗаказу Тогда

ЗаполнитьТабличнуюЧастьПоЗаказуПокупателяУпр(ВозвратнаяТара, Основание, ВариантВыводаФормыЗаполнения);

Если Не мОткрыватьФормаЗаполненияПоЗаказу Тогда

ЗаполнитьУслугиПоОстаткамУпр();

КонецЕсли;

КонецЕсли;

// Может, в процессе заполнения обнаружены нехватки и надо вызвать форму заполнения

// Тогда почистим табличные части

Если мОткрыватьФормаЗаполненияПоЗаказу = Истина Тогда

Товары.Очистить();

ВозвратнаяТара.Очистить();

Услуги.Очистить();

КонецЕсли;

КонецЕсли;

КонецЕсли;

КонецЕсли;

Если ТипЗнч(Основание) = Тип("ДокументСсылка.СчетНаОплатуПокупателю") Тогда

СкопироватьТовары(Основание);

СкопироватьВозвратнуюТару(Основание);

СкопироватьУслуги(Основание);

КонецЕсли;

ИначеЕсли ТипЗнч(Основание) = Тип("ДокументСсылка.ПоступлениеТоваровУслуг") Тогда

// Заполним реквизиты шапки по документу основанию.

Организация = Основание.Организация;

Подразделение = Основание.Подразделение;

ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ПродажаКомиссия;

ВидПередачи = Перечисления.ВидыПередачиТоваров.СоСклада;

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

Склад = Основание.СкладОрдер;

Иначе

Склад = Основание.СкладОрдер.Склад;

КонецЕсли;

Контрагент = ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойПокупатель");

ДоговорКонтрагента = Контрагент.ОсновнойДоговорКонтрагента;

Если ЗначениеНеЗаполнено(ДоговорКонтрагента) Тогда

ВалютаДокумента = мВалютаРегламентированногоУчета;

Иначе

ВалютаДокумента = ДоговорКонтрагента.ВалютаВзаиморасчетов;

КонецЕсли;

СтруктураКурсаВзаиморасчетов = ПолучитьКурсВалюты(ВалютаДокумента, ПолучитьРабочуюДату());

КурсВзаиморасчетов = СтруктураКурсаВзаиморасчетов.Курс;

КратностьВзаиморасчетов = СтруктураКурсаВзаиморасчетов.Кратность;

// ТипЦен.

ТипЦен = ДоговорКонтрагента.ТипЦен;

Если ЗначениеНеЗаполнено(ТипЦен) Тогда

ТипЦен = ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойТипЦенПродажи");

КонецЕсли;

// Флаги включения налогов.

УчитыватьНДС = Истина;

Если Не ЗначениеНеЗаполнено(ТипЦен) Тогда

// Если цены выбранного типа расчетные, то флаги включения налогов надо брать из базовой цены.

ВремТипЦен = ?(ТипЦен.Рассчитывается, ТипЦен.БазовыйТипЦен, ТипЦен);

СуммаВключаетНДС = ВремТипЦен.ЦенаВключаетНДС;

Иначе

// Заполним значениями по умолчанию (не заполнен ТипЦен).

СуммаВключаетНДС= Истина;

КонецЕсли;

Если Основание.Проведен Тогда

// Заполним табличные части по документу основанию (Поступление товаров);

// количество - минимум из того, что есть в документе основании и свободного остатка на складе.

ЗаполнитьТоварыПоПоступлениюТоваровУпр(Основание);

ЗаполнитьВозвратнуюТаруПоПоступлениюТоваровУпр(Основание);

КонецЕсли;

КонецЕсли;

Если ЕстьРеквизитДокумента("ОтражатьВУправленческомУчете", Основание.Метаданные()) Тогда

ОтражатьВУправленческомУчете = Основание.ОтражатьВУправленческомУчете;

Иначе

ОтражатьВУправленческомУчете = НЕ ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "НеОтражатьДокументыВУправленческомУчете");

КонецЕсли;

Если ЕстьРеквизитДокумента("ОтражатьВБухгалтерскомУчете", Основание.Метаданные()) Тогда

ОтражатьВБухгалтерскомУчете = Основание.ОтражатьВБухгалтерскомУчете;

ОтражатьВНалоговомУчете = Основание.ОтражатьВНалоговомУчете;

Иначе

ОтражатьВБухгалтерскомУчете = НЕ ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "НеОтражатьДокументыВБухгалтерскомУчете");

Если ОтражатьВБухгалтерскомУчете Тогда

ОтражатьВНалоговомУчете = НЕ ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "НеОтражатьДокументыВНалоговомУчете");

Иначе

ОтражатьВНалоговомУчете = ОтражатьВБухгалтерскомУчете;

КонецЕсли;

КонецЕсли;

КонецПроцедуры // ОбработкаЗаполнения()


Введение При проектировании АСУ принято различать функциональную и обеспечивающие части АСУ. Функциональная часть АСУ состоит из комплекса административн

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ