Лекция: Задание 3. Создание Приходного кассового ордера №2.

3.1. Создание Приходного кассового ордера №2. Созданный ранее Приходный кассовый ордер не является гибким, т.к. нет возможности выбрать интересующий нас корреспондирующий счет. Попытаемся исправить этот недочет. Создадим в нашей конфигурации еще один приходный ордер, но уже более продвинутый. Нет необходимости создавать его заново – воспользуемся копией уже имеющегося ордера. Сначала немного отредактируем старый приходный ордер: ИдентификаторПриходныйОрдер1, синонимПриходный кассовый ордер №1. Сохраните изменения метаданных и отредактируйте пользовательское меню.

Для создания копии выделите ПриходныйОрдер1 и выполните команду Действия/Запомнить, а затем – Действия/Вставить. Отредактируем новый приходный ордер. Для этого:

1. В окне метаданных выделите копию ордера и откройте его для редактирования.

2. ИдентификаторПриходныйОрдер2, синонимПриходный кассовый ордер №2.

3. Добавьте новые реквизиты:

· КоррСчет. Идентификатор – КоррСчет, Синоним – Корреспондирующий счет, Тип значения – Счет.НашПлан.

· Субконто1. Идентификатор – Субконто1, Синоним – Субконто 1, Тип значения – неопределенный.

· Субконто2. Идентификатор – Субконто2, Синоним – Субконто 2, Тип значения – неопределенный.

Теперь мы сможем выбирать счет в форме диалога.

3.2. Создание экранной формы.Отредактируем экранную форму нового ордера. Для этого:

1.Щелкните по кнопке [Форма].

2. Добавьте новые реквизиты, используя кнопку Реквизиты на нижней панели инструментов.

3. Для реквизита Коррсчет добавьте текстовое поле с заголовком Корреспондирующий счет (см. рис. 5.4). На вкладке Дополнительнопропишите формулу ПриВыбореСчета().

4. Для реквизитов Субконто1 и Субконто2 добавьте текстовые поля с пустым заголовком и формулами (вкладка Дополнительно) КоррСчет.ВидСубконто(1) и КоррСчет.ВидСубконто(2) соответственно.

5. Для новых реквизитов создайте рамку группы (кнопка ).

Рис. 5.4 Экранная форма документа.

6. На вкладке Модуль добавьте процедуру ПриВыбореСчета().

Процедура ПриВыбореСчета()

Для А = 1 По 2 Цикл

НазначитьТип(«Субконто»+А, КоррСчет.ВидСубконто(А));

КонецЦикла;

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

7. С помощью кнопки Запустить просмотрите форму в режиме 1С.

 

3.3. Создание процедуры проведения.Осталось написать процедуру проведения документа. Перейдите в окно свойств документа и щелкните по кнопке [Модуль документа].

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

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

Сообщить(«Документ Приходный ордер №»+НомерДок+" от "+ДатаДок+"

|не проведен.

|Не выбран Плательщик");

НеПроводитьДокумент();

Возврат;

// Встроенная процедура Сообщить() выводит в нижней части 1С сообщение, заключенное в кавычки

КонецЕсли;

// Проверяем заполнение реквизита КоррСчет

Если КоррСчет.Выбран() = 0 Тогда

СтатусВозврата(0); Возврат;

КонецЕсли;

//Сравниваем значения реквизита Плательщик со значениями Субконто1 и Субконто2

Если Субконто1<> Плательщик Тогда

Если Субконто2<> Плательщик Тогда

Сообщить(«Документ Приходный ордер №»+НомерДок+" от "+ДатаДок+"

|не проведен.

|Значение Плательщика не соответствует значению объекта аналитики!");

НеПроводитьДокумент();

Возврат;

КонецЕсли;

КонецЕсли;

//Проверяем значение реквизита Сумма

Если Сумма > 0 Тогда

Операция.НоваяПроводка();

// Создаем проводку

Операция.Дебет.Счет = СчетПоКоду(«50.01», ПланыСчетов.НашПлан);

Операция.Кредит.Счет = КоррСчет;

Операция.Кредит.Счет = КоррСчет;

Операция.Кредит.Субконто(1, Субконто1);

Операция.Кредит.Субконто(2, Субконто2);

Операция.Сумма = Сумма;

Операция.Содержание = Основание;

Операция.СуммаОперации = Сумма;

Операция.Автор = АвторДокумента;

 

Операция.Записать();

ИначеЕсли Сумма=0 Тогда

Сообщить(«Документ Приходный ордер №»+НомерДок+" от "+ДатаДок+"

|не проведен.

|Введите сумму документа!");

НеПроводитьДокумент();

Возврат;

КонецЕсли;

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

 

Сохраните изменения метаданных, отредактируйте пользовательское меню и перейдите в режим 1С: Предприятие. Откройте Приходный кассовый ордер №2 и поэкспериментируйте с ним: например, не вводите плательщика, или не вводите счет – в этом случае документ проводиться не будет, а в нижней части окна появится соответствующее сообщение:

Заполните все реквизиты корректно и проведите документ. Зайдите в Журнал проводок и убедитесь в том, что документ проведен.

еще рефераты
Еще работы по информатике