Банковские выписки в 1С 8.3 Бухгалтерия

«Как настроить загрузку в 1С выписок банка, а также выгрузку, и как провести выписку в 1С 8.3?» — весьма частый запрос в работе с 1С. Для решения данной задачи предлагаем изучить нашу статью или обратиться к специалистам за консультацией в 1С.

Начнем с создания платежного поручения:

  • На базе документа поступления товаров и услуг, счета и т.д;
  • Через создание нового платежного поручения/ПП.

В блоке «Банк и касса–ПП».

Рис.1 Банк и касса — ПП

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

Создаем новую платежку:

Рис.2 Создаем новую платежку

Заполнение основных полей тут начинается с «Вида операции». В зависимости от выбранного, будет изменяться структура документа, а также поля обязательных для заполнения аналитик.

Заполнив основное, проводим и закрываем документ кнопкой «Провести и закрыть».

Рис.3 Провести и закрыть

Платежка не делает никаких проводок в 1С 8.3, их формирует «Списание с р/сч», которое также можно создать на основе сформированной нами платежки, или вручную, через создание нового списания.

Поможем настроить интеграцию 1С с вашим банком. Бесплатно для подписчиков ИТС!

Создание поступления/списания с расчетного счета

Первый вариант – создание вручную через блок «Банк и касса–Банковские выписки».

Рис.4 Создание поступления или списания

В отобразившемся журнале отображаются все поступления и списания со счета. Чтобы с ним было удобнее работать, можно задать фильтры:

Рис.5 Установка фильтров

Чтобы сделать нужный нам документ, нажимаем на «Поступление» или «Списание», смотря что нам нужно.

Рис.6 Формируем документ

Здесь заполняем основные поля аналогично заполнению платежки:

Рис.7-1 Заполнение основных полейРис.7-2 Списание с расчётного счёта

После заполнения всех полей, проверяем корректность заполненных реквизитов и нажимаем «Записать–Провести».

В документах «Поступление на расчетный счет» и «Списание с расчетного счета» смотрим проводки и проверяем корректность их отображения через кнопку «ДтКт». В открывшемся окне «Движения документа» отобразятся проводки.

Рис.8 Движения документа

Проверив корректность проводок, жмем «Провести и закрыть».

Рис.9 Провести и закрыть

Второй путь создания «Поступление на расчетный счет» и «Списание с расчетного счета» путем загрузки банковской выписки

Перейдем к отправке документов в банк. Находясь в журнале «Банковские выписки», нажимаем «ЕЩЕ–Обмен с банком».

Рис.10 Обмен с банком

В открывшемся окне «Обмен с банком» для выгрузки документов в клиент-банк выбираем закладку «Отправка в банк»:

  • Выбираем фирму, по которой будем выгружать документы;
  • Указываем банковский счет;
  • Выбираем период, за который нам надо выгрузить выписку банка;
  • Выбираем место выгрузки файла.

Рис.11 Отправка в банк

Табличная часть здесь заполнится платежками, которые необходимо оплатить.

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

Рис.12 Проверка на атаки вируса

Сформируется файл в формате «1c_to_kl.txt», который необходимо загрузить в банк-клиент.

В окне «Обмен с банком» можно посмотреть отчет о выгруженных платежных документах, для чего жмем «Отчет о выгрузке». Полученный отчет отобразит платежки, которые были выгружены в файл для загрузки в «банк-клиент». Его можно сохранить в любом формате или распечатать.

Рис.13 Отчет о выгрузке

Поступление на расчетный счет в 1С 8.3

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

Для оформления покупателем оплаты заказа в счет будущей поставки товара выбираем вид операции – Оплата покупателя. Указываем организацию – Торговый дом «Комплексный». Если в базе только одна организация, то поле организации не показывается в форме. Это поле становится видимым только при наличии в базе нескольких организаций.

Обязательно к заполнению поле Банковский счет организации, Сумма, Плательщик, Счета учета расчетов и авансов – 62.01 и 62.02:

Поскольку оплата производится до реализации покупателю товаров, в проводках 1С 8.3 отразится предоплата по счету аванса 62.02:

Списание с расчетного счета в 1С 8.3

Списание с расчетного счета в 1С 8.3 Бухгалтерия 3.0 оформляется по кн. Списание из журнала Банковских выписок. Открывается форма документа, в которой проставляется вид операции и организация.

Выберем вид операции Оплата поставщику. Заполним данные по контрагенту, сумме, банковскому счету организации.

Заполняем также табличную часть документа: договор, статью движения денежных средств, ставку НДС, назначение платежа:

В этом случае в 1С 8.3 формируются следующие проводки:

Выгрузка выписок из Клиент Банка в 1С 8.3

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

Автоматизация этого процесса предусматривает загрузку банковских выписок из Клиента Банка в программу 1С и выгрузку платежных поручений из программы 1С в Клиент Банк.

На текущий момент большинство банков поддерживают формат обмена данными с программами 1С. Загрузка банковских выписок после настройки обмена с банком производится из Журнала Банковских выписок по кн. Загрузить. Открыть форму настройки Обмена с банком можно прямо из журнала Банковские выписки – кн. ЕЩЕ – Обмен с банком:

Подробно настройка обмена с банком и загрузка банковских выписок рассмотрена в другой нашей статье: «Выгрузка Клиента Банка в 1С».

По кн. Загрузить данные Клиента Банка считываются программой 1С и загружаются в журнал Банковские выписки:

При загрузке данных программа 1С 8.3 сопоставляет объектам базы данных – данные из файла загрузки. Сообщение, что объект «не найден» выдается:

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

Загрузка выписки в 1С 8.3

Первый вариант – из закладки «Загрузка выписки из банка».

Рис.14 Загрузка выписки из банка

Указываем:

  • Организацию
  • Банковский счет
  • Файл загрузки

Нажимаем на кнопку «Обновить из выписки».

Табличная часть заполнится данными из файла, при этом строки выделенные красным цветом означают, что программа не нашла в справочниках данные (р/сч, контрагента по совпадению ИНН и КПП), на которые надо распределить поступления или списания с р/сч. Черным цветом выделены корректно распределенные документы.

Напротив каждого документа, который мы хотим выгрузить, проставляем «Флаг». Внизу окна будет дана информация о количестве документов к загрузке, а также «Итого Поступлений/Списаний на сумму». Нажимаем «Загрузить».

Рис.15 Загрузка документов

Если выписка банка в 1С 8.3 была загружены частично, система отобразит эту информацию в табличной части окна «Обмен с банком». Не загруженные документы будут отображаться со значением «Не загружен» в столбце «Документ», по загруженным документам будет отображена информация «Списание с расчетного счета или Поступление на расчетный счет», присвоенный ему номер и дата.

Рис.16 Списание или поступление на РС

Можно посмотреть отчет о загруженных документах. Для этого нажимаем на кнопку «Отчет о загрузке».

Рис.17 Отчет о загрузке

Рассмотрим второй вариант, как загрузить выписки в 1С 8.3.

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

В журнале «Банковские выписки» жмем «Загрузить».

Рис.18 Журнал «Банковские выписки»

Здесь ищем файл загрузки выписки и жмем «Открыть».

Рис.19 Файл загрузки выписки

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

Рис.20 Загруженные документы

Документы в журнале «Банковской выписки», отмеченные зеленым флажком, проведены и разнесены.

Рис.21 Документы в журнале «Банковской выписки»

Провести и разнести выписку самостоятельно будет нужно, если она не отмечена зеленой галочкой: открываем не проведенный документ, заполняем основные необходимые поля для проведения документа, проверяем корректность заполненных реквизитов, нажимаем на кнопку «Провести», далее «Провести и закрыть».

Рис.22 Провести и закрыть

Документ проведен и распределен.

Если в журнале банковской выписки надо отобразить начальные остатки на начало и конец дня, а также итоговые суммы поступления и списание на заданную дату, нажимаем «ЕЩЕ–Показать/Скрыть итоги».

Рис.23 Показать или скрыть итоги

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

Если после прочтения статьи у вас остались вопросы, и вы нуждаетесь в услугах по доработке 1С, свяжитесь с нами любым удобным способом – мы с радостью вам поможем.

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

Ниже предлагается вариант реализации механизма автозаполнения реквизитов документов по заданным условиям.

1. Создаем подписку на событие «ПередЗаписьюДокумента_АвтозаполнениеРеквизитов». Источник — «ДокументОбъект», событие — «Перед записью», обработчик «ОбщегоНазначения.ПередЗаписьюДокумента_АвтозаполнениеРеквизитов»

2. Текст процедуры общего модуля «ПередЗаписьюДокумента_АвтозаполнениеРеквизитов» и вспомогательных процедур:

Процедура ПередЗаписьюДокумента_АвтозаполнениеРеквизитов(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт ИмяДокумента = Источник.Метаданные().Имя; ТипДокумента = Источник.Метаданные().Синоним; Если Источник.Метаданные().Реквизиты.Найти(«ВидОперации») <> Неопределено Тогда ВидОперации = Строка(Источник.ВидОперации); Иначе ВидОперации = «»; КонецЕсли; // предварительная проверка наличия настроек автозамены для данного типа документа и вида операции Запрос = Новый Запрос; Запрос.УстановитьПараметр(«ТипДокумента»,ТипДокумента); Запрос.УстановитьПараметр(«ВидОперации»,ВидОперации); Запрос.Текст = «ВЫБРАТЬ | ПараметрыАвтозаполненияДокументов.Ссылка |ИЗ | Справочник.ПараметрыАвтозаполненияДокументов КАК ПараметрыАвтозаполненияДокументов |ГДЕ | ПараметрыАвтозаполненияДокументов.ТипДокумента = &ТипДокумента | И ПараметрыАвтозаполненияДокументов.ВидОперации = &ВидОперации | И НЕ ПараметрыАвтозаполненияДокументов.Отключено | И НЕ ПараметрыАвтозаполненияДокументов.ПометкаУдаления»; Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Количество() = 0 Тогда Возврат; КонецЕсли; // окончательная проверка наличия настроек автозамены для данного типа документа и вида операции ПараметрыАвтозаполнения = Неопределено; Пока Выборка.Следующий() Цикл УсловияВыполнены = Истина; УсловияАвтозаполнения = Выборка.Ссылка.Условия; Для каждого стр из УсловияАвтозаполнения Цикл Если Источник <> стр.Значение Тогда УсловияВыполнены = Ложь; Прервать; КонецЕсли; КонецЦикла; Если УсловияВыполнены Тогда ПараметрыАвтозаполнения = Выборка.Ссылка.Настройки; Прервать; КонецЕсли; КонецЦикла; Если Не ЗначениеЗаполнено(ПараметрыАвтозаполнения) Тогда Возврат; КонецЕсли; ПредставлениеДокумента = ТипДокумента+» № «+Источник.Номер+» от «+Формат(Источник.Дата,»ДФ=dd.MM.yyyy»); Для каждого стр из ПараметрыАвтозаполнения Цикл Если Не ЗначениеЗаполнено(стр.ТабличнаяЧасть) Тогда // заполняем значения реквизита в шапке документа ИмяРеквизита = ПолучитьИмяРеквизитаПоСинониму(,стр.Реквизит,ИмяДокумента); Если стр.Принудительно или Не ЗначениеЗаполнено(Источник) Тогда Сообщить(» «+ПредставлениеДокумента+»: выполнено «+?(ЗначениеЗаполнено(Источник),»изменение»,»автозаполнение»)+» реквизита «»»+стр.Реквизит+»»»»); Источник = стр.Значение; КонецЕсли; Иначе // заполняем значения реквизита в табличной части ИмяТабличнойЧасти = ПолучитьИмяОбъектаПоСинониму(«ТабличнаяЧасть»,стр.ТабличнаяЧасть,ИмяДокумента); ИмяРеквизита = ПолучитьИмяРеквизитаПоСинониму(ИмяТабличнойЧасти,стр.Реквизит,ИмяДокумента); Для каждого стрТЧ из Источник Цикл Если стр.Принудительно или Не ЗначениеЗаполнено(стрТЧ) Тогда Сообщить(» «+ПредставлениеДокумента+»: выполнено «+?(ЗначениеЗаполнено(стрТЧ),»изменение»,»автозаполнение»)+» реквизита «»»+стр.Реквизит+»»» табличной части «»»+стр.ТабличнаяЧасть+»»»»); стрТЧ = стр.Значение; КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; КонецПроцедуры Функция ПолучитьИмяРеквизитаПоСинониму(ИмяТабличнойЧасти=»»,СинонимОбъекта,ИмяДокумента) Экспорт Если Не ЗначениеЗаполнено(ИмяТабличнойЧасти) Тогда // по синониму реквизита шапки документа находим его имя Для каждого Реквизит из Метаданные.Документы.Реквизиты Цикл Если Реквизит.Синоним = СинонимОбъекта Тогда Возврат Реквизит.Имя; КонецЕсли; КонецЦикла; Иначе // по синониму реквизита табличной части документа находим его имя Для каждого Реквизит из Метаданные.Документы.ТабличныеЧасти.Реквизиты Цикл Если Реквизит.Синоним = СинонимОбъекта Тогда Возврат Реквизит.Имя; КонецЕсли; КонецЦикла; КонецЕсли; КонецФункции

3. Создаем справочник «Параметры автозаполнения документов»

Типы значений реквизитов:

ТипДокумента — Строка(100)

ВидОперации — Строка(100)

Отключено — Булево

Реквизит — Строка(100)

Значение — ЛюбаяСсылка, Булево, Строка, Дата, Число

ТабличнаяЧасть — Строка(100)

Реквизит — Строка(100)

Значение — ЛюбаяСсылка, Булево, Строка, Дата, Число

Принудительно — Булево

Форма списка справочника:

Форма элемента справочника:

Модуль формы элемента справочника:

Перем ИмяДокумента; Процедура ПриОткрытии() ИмяДокумента = _ОбщегоНазначения.ПолучитьИмяОбъектаПоСинониму(«Документ»,ТипДокумента); ЗаполнитьСписокТиповДокументов(); КонецПроцедуры Процедура ТипДокументаПриИзменении(Элемент) ВидОперации = «»; Условия.Очистить(); Настройки.Очистить(); ИмяДокумента = _ОбщегоНазначения.ПолучитьИмяОбъектаПоСинониму(«Документ»,ТипДокумента); ЗаполнитьСписокВидовОперацийДокумента(); КонецПроцедуры Процедура ВидОперацииНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка) Если ЭлементыФормы.ВидОперации.СписокВыбора.Количество() = 0 Тогда ЗаполнитьСписокВидовОперацийДокумента(); КонецЕсли; КонецПроцедуры Процедура УсловияПередНачаломДобавления(Элемент, Отказ, Копирование) Если Не ЗначениеЗаполнено(ИмяДокумента) Тогда Отказ = Истина; КонецЕсли; КонецПроцедуры Процедура НастройкиПередНачаломДобавления(Элемент, Отказ, Копирование) Если Не ЗначениеЗаполнено(ИмяДокумента) Тогда Отказ = Истина; КонецЕсли; КонецПроцедуры Процедура НастройкиТабличнаяЧастьНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка) ЗаполнитьСписокТабличныхЧастейДокумента(); КонецПроцедуры Процедура НастройкиТабличнаяЧастьПриИзменении(Элемент) стр = ЭлементыФормы.Настройки.ТекущаяСтрока; стр.Реквизит = «»; стр.Значение = «»; КонецПроцедуры Процедура УсловияРеквизитНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка) ЗаполнитьСписокРеквизитовДокумента_Условия(); КонецПроцедуры Процедура НастройкиРеквизитНачалоВыбораИзСписка(Элемент, СтандартнаяОбработка) стр = ЭлементыФормы.Настройки.ТекущаяСтрока; ЗаполнитьСписокРеквизитовДокумента_Настройки(_ОбщегоНазначения.ПолучитьИмяОбъектаПоСинониму(«ТабличнаяЧасть»,стр.ТабличнаяЧасть,ИмяДокумента)); КонецПроцедуры Процедура УсловияРеквизитПриИзменении(Элемент) стр = ЭлементыФормы.Условия.ТекущаяСтрока; стр.Значение = «»; КонецПроцедуры Процедура НастройкиРеквизитПриИзменении(Элемент) стр = ЭлементыФормы.Настройки.ТекущаяСтрока; стр.Значение = «»; КонецПроцедуры Процедура УсловияПриАктивизацииЯчейки(Элемент) Если Элемент.ТекущаяКолонка.Имя = «Значение» Тогда стр = ЭлементыФормы.Условия.ТекущаяСтрока; Если стр = Неопределено Тогда Возврат; КонецЕсли; Если ЗначениеЗаполнено(стр.Реквизит) Тогда ЗадатьТипЗначенияРеквизита_Условия(стр); КонецЕсли; КонецЕсли; КонецПроцедуры Процедура НастройкиПриАктивизацииЯчейки(Элемент) Если Элемент.ТекущаяКолонка.Имя = «Значение» Тогда стр = ЭлементыФормы.Настройки.ТекущаяСтрока; Если стр = Неопределено Тогда Возврат; КонецЕсли; Если ЗначениеЗаполнено(стр.Реквизит) Тогда ЗадатьТипЗначенияРеквизита_Настройки(стр); КонецЕсли; КонецЕсли; КонецПроцедуры Процедура ПередЗаписью(Отказ) // удаляем пустые строки табличной части УСЛОВИЯ ном = Условия.Количество()-1; Пока ном >= 0 Цикл Если Не ЗначениеЗаполнено(Условия.Реквизит) Тогда Условия.Удалить(ном); КонецЕсли; ном = ном — 1; КонецЦикла; // сортируем строки табличной части УСЛОВИЯ Условия.Сортировать(«Реквизит»); // проверяем наличие дублей строк табличной части УСЛОВИЯ табУсловия = Условия.Выгрузить(); табУсловия.Колонки.Добавить(«Счетчик»); табУсловия.ЗаполнитьЗначения(1,»Счетчик»); табУсловия.Свернуть(«Реквизит»,»Счетчик»); Для каждого стр из табУсловия Цикл Если стр.Счетчик > 1 Тогда Сообщить(«Обнаружены дубли строк в табличной части «»Условия отбора»» !»); Отказ = Истина; КонецЕсли; КонецЦикла; // удаляем пустые строки табличной части НАСТРОЙКИ ном = Настройки.Количество()-1; Пока ном >= 0 Цикл Если Не ЗначениеЗаполнено(Настройки.Реквизит) Тогда Настройки.Удалить(ном); КонецЕсли; ном = ном — 1; КонецЦикла; // сортируем строки табличной части НАСТРОЙКИ Настройки.Сортировать(«ТабличнаяЧасть,Реквизит»); // проверяем наличие дублей строк табличной части НАСТРОЙКИ табНастройки = Настройки.Выгрузить(); табНастройки.Колонки.Добавить(«Счетчик»); табНастройки.ЗаполнитьЗначения(1,»Счетчик»); табНастройки.Свернуть(«ТабличнаяЧасть,Реквизит»,»Счетчик»); Для каждого стр из табНастройки Цикл Если стр.Счетчик > 1 Тогда Сообщить(«Обнаружены дубли строк в табличной части «»Настройки заполнения»» !»); Отказ = Истина; КонецЕсли; КонецЦикла; Если Отказ Тогда Возврат; КонецЕсли; // проверяем наличие дублей в справочнике Запрос = Новый Запрос; Запрос.УстановитьПараметр(«ТипДокумента»,ТипДокумента); Запрос.УстановитьПараметр(«ВидОперации»,ВидОперации); Запрос.УстановитьПараметр(«Ссылка»,Ссылка); Запрос.Текст = «ВЫБРАТЬ | ПараметрыАвтозаполненияДокументов.Ссылка |ИЗ | Справочник.ПараметрыАвтозаполненияДокументов КАК ПараметрыАвтозаполненияДокументов |ГДЕ | ПараметрыАвтозаполненияДокументов.ТипДокумента = &ТипДокумента | И ПараметрыАвтозаполненияДокументов.ВидОперации = &ВидОперации | И ПараметрыАвтозаполненияДокументов.Ссылка <> &Ссылка»; Выборка = Запрос.Выполнить().Выбрать(); ЕстьСовпадения = Ложь; Пока Выборка.Следующий() Цикл УсловияОтбора = Выборка.Ссылка.Условия; Если Условия.Количество() <> УсловияОтбора.Количество() Тогда Продолжить; Иначе Если Условия.Количество() = 0 Тогда ЕстьСовпадения = Истина; КонецЕсли; КонецЕсли; Для ном = 0 по Условия.Количество()-1 Цикл Если Условия.Реквизит <> УсловияОтбора.Реквизит или Условия.Значение <> УсловияОтбора.Значение Тогда Прервать; Иначе ЕстьСовпадения = Истина; КонецЕсли; КонецЦикла; Если ЕстьСовпадения Тогда Сообщить(«В справочнике «»Параметры автозаполнения документов»» уже есть настройки для данного типа документа и вида операции с аналогичными условиями отбора !»); Отказ = Истина; Прервать; КонецЕсли; КонецЦикла; КонецПроцедуры Процедура ЗаполнитьСписокТиповДокументов() СписокТиповДокументов = Новый СписокЗначений; // заполним список доступных типов документов Для каждого эл из Метаданные.Документы Цикл СписокТиповДокументов.Добавить(эл.Синоним,эл.Синоним); КонецЦикла; ЭлементыФормы.ТипДокумента.СписокВыбора = СписокТиповДокументов; КонецПроцедуры Процедура ЗаполнитьСписокВидовОперацийДокумента() СписокВидовОперацийДокумента = Новый СписокЗначений; РеквизитВидОперации = Метаданные.Документы.Реквизиты.Найти(«ВидОперации»); Если РеквизитВидОперации <> Неопределено Тогда Реквизит = РеквизитВидОперации.Тип.ПривестиЗначение(); // заполним список возможных видов операций документа Для каждого эл из Реквизит.Метаданные().ЗначенияПеречисления Цикл СписокВидовОперацийДокумента.Добавить(эл.Синоним,эл.Синоним); КонецЦикла; КонецЕсли; ЭлементыФормы.ВидОперации.СписокВыбора = СписокВидовОперацийДокумента; Если СписокВидовОперацийДокумента.Количество() > 0 Тогда ЭлементыФормы.НадписьВидОперации.Доступность = Истина; ЭлементыФормы.ВидОперации.Доступность = Истина; Иначе ВидОперации = «»; ЭлементыФормы.НадписьВидОперации.Доступность = Ложь; ЭлементыФормы.ВидОперации.Доступность = Ложь; КонецЕсли; КонецПроцедуры Процедура ЗаполнитьСписокТабличныхЧастейДокумента() СписокТабличныхЧастейДокумента = Новый СписокЗначений; Для каждого тч из Метаданные.Документы.ТабличныеЧасти Цикл СписокТабличныхЧастейДокумента.Добавить(тч.Синоним,тч.Синоним); КонецЦикла; ЭлементыФормы.Настройки.Колонки.ТабличнаяЧасть.ЭлементУправления.СписокВыбора = СписокТабличныхЧастейДокумента; КонецПроцедуры Процедура ЗаполнитьСписокРеквизитовДокумента_Условия() РеквизитВидОперации = Метаданные.Документы.Реквизиты.Найти(«ВидОперации»); СписокРеквизитовДокумента = Новый СписокЗначений; Для каждого эл из Метаданные.Документы.Реквизиты Цикл Если эл = РеквизитВидОперации Тогда Продолжить; КонецЕсли; СписокРеквизитовДокумента.Добавить(эл.Синоним,эл.Синоним); КонецЦикла; ЭлементыФормы.Условия.Колонки.Реквизит.ЭлементУправления.СписокВыбора = СписокРеквизитовДокумента; КонецПроцедуры Процедура ЗаполнитьСписокРеквизитовДокумента_Настройки(ИмяТабличнойЧасти) РеквизитВидОперации = Метаданные.Документы.Реквизиты.Найти(«ВидОперации»); СписокРеквизитовДокумента = Новый СписокЗначений; Если Не ЗначениеЗаполнено(ИмяТабличнойЧасти) Тогда Для каждого эл из Метаданные.Документы.Реквизиты Цикл Если эл = РеквизитВидОперации Тогда Продолжить; КонецЕсли; СписокРеквизитовДокумента.Добавить(эл.Синоним,эл.Синоним); КонецЦикла; Иначе Для каждого эл из Метаданные.Документы.ТабличныеЧасти.Реквизиты Цикл СписокРеквизитовДокумента.Добавить(эл.Синоним,эл.Синоним); КонецЦикла; КонецЕсли; ЭлементыФормы.Настройки.Колонки.Реквизит.ЭлементУправления.СписокВыбора = СписокРеквизитовДокумента; КонецПроцедуры Процедура ЗадатьТипЗначенияРеквизита_Условия(стр) ИмяРеквизита = _ОбщегоНазначения.ПолучитьИмяРеквизитаПоСинониму(,стр.Реквизит,ИмяДокумента); ТипРеквизита = _ОбщегоНазначения.ПолучитьТипРеквизитаПоИмени(,ИмяРеквизита,ИмяДокумента); Если ТипЗнч(стр.Значение) <> ТипЗнч(ТипРеквизита.ПривестиЗначение()) Тогда стр.Значение = ТипРеквизита.ПривестиЗначение(); ЭлементыФормы.Условия.Колонки.Значение.ЭлементУправления.ОграничениеТипа = ТипРеквизита; ЭлементыФормы.Условия.Колонки.Значение.ЭлементУправления.Значение = ТипРеквизита.ПривестиЗначение(); КонецЕсли; КонецПроцедуры Процедура ЗадатьТипЗначенияРеквизита_Настройки(стр) ИмяТабличнойЧасти = _ОбщегоНазначения.ПолучитьИмяОбъектаПоСинониму(«ТабличнаяЧасть»,стр.ТабличнаяЧасть,ИмяДокумента); ИмяРеквизита = _ОбщегоНазначения.ПолучитьИмяРеквизитаПоСинониму(ИмяТабличнойЧасти,стр.Реквизит,ИмяДокумента); ТипРеквизита = _ОбщегоНазначения.ПолучитьТипРеквизитаПоИмени(ИмяТабличнойЧасти,ИмяРеквизита,ИмяДокумента); Если ТипЗнч(стр.Значение) <> ТипЗнч(ТипРеквизита.ПривестиЗначение()) Тогда стр.Значение = ТипРеквизита.ПривестиЗначение(); ЭлементыФормы.Настройки.Колонки.Значение.ЭлементУправления.ОграничениеТипа = ТипРеквизита; ЭлементыФормы.Настройки.Колонки.Значение.ЭлементУправления.Значение = ТипРеквизита.ПривестиЗначение(); КонецЕсли; КонецПроцедуры

Как это работает

При срабатывании события «ПередЗаписью» документа выполняется проверка, есть ли элементы справочника с подходящим типом документа и видом операции, если есть, выполняется проверка дополнительных условий, и затем указанные в справочнике реквизиты шапки либо табличной части документа заполняются заданным в справочнике значением.

Замечания

1. Для табличной части реквизит заполняется одновременно для всех строк

2. Предполагается, что синонимы реквизитов объектов метаданных — уникальны в пределах этого объекта

1. Функция Автозаполнение полей

2. Подключение интернет-поддержки

3. Использование справочника Контрагенты в 1С

1. Функция Автозаполнение полей

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

2. Подключение интернет-поддержки

Первоначально мы должны подключиться к сервису автозаполнения 1С контрагентов. Пользователь заходит в «Администрирование», далее выбирает пункт «Подключение интернет-поддержки»:

В следующем окне нужно нажать кнопку «Подключить интернет поддержку»:

И ввести логин и пароль от сайта: users.v8.1c.ru

Если данные актуальны, то мы успешно подключили сервис интернет поддержки.

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

3. Использование справочника Контрагенты в 1С

Для заполнения полей контрагента достаточно знать лишь ИНН:

1) Заходим в справочник Контрагенты в 1С и нажимаем кнопку «Создать»

2) В форме элемента справочника заполняем поле ИНН:

3) Нажимаем кнопку «Заполнить реквизиты по ИНН». В результате происходит заполнение ряда полей, которые есть в Едином государственном реестре России.

Если данный контрагент является юридическим лицом, то поля к автозаполнению следующие:

1) КПП;

2) краткое и полное наименование юридического лица;

3) юридический адрес контрагента;

4) руководитель (записывается как основное контактное лицо);

5) телефон.

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

В данной статье мы рассмотрели возможность автоматического создания контрагента в 1С с использованием автозаполнения полей 1С.

Специалист компании ООО «Кодерлайн»

Сергей Кулаженко.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *