Обработка поля со строкой Города из общероссийского классификатора адресов

Миниатюра

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

Для чего нужен регистр сведений "Города_в_которых_Контрагенту_Отгружаются_Товары"

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

Для этого в регистр позже можно будет добавить поле «Контрагент». Таким образом для определенных Контрагентов будет список городов, в которых разрешены продажи.

Это сделано для автоматического контроля ошибок менеджеров, которые неправильно выбирали Контрагентов. У каждой сети (наследие 1с 7, из которой база данных перекочевала) есть список Контрагентов, каждый Контрагент работает в определенном городе. У сети (Контрагент), являющейся головным Контрагентом, есть филиалы (Контрагенты) в каждом городе.

Таким образом, когда звонок от клиента принимает менеджер-новичок, и ему представляют известную сеть, он выбирает, например, «Сеть-Екатеринбург» или «Сеть-Березовский». Он забывает что звонят ему из другого города, и надо в Заказ проставить «Сеть-Самара» или «Сеть-Ростов».

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

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

 

Немного о функционале регистра сведений.

 

1. Новый регистр сведений с полем Город типа строка 1. Новый регистр сведений с полем Город типа строка

При вводе новой строки в регистре, появляется стандартное окно.

При вводе строки с названием города, если название набрано не полностью, появляется подсказка, показывающая полное название.

Это позволяет сильно сократить время ввода для оператора.

Кроме того, можно открыть полный список названий города по областям РФ и выбрать там его, с сортировкой по наименованию города, по сокращению, Индексу, или Области РФ.

1.1. Автоподбор текста города из классификатора Городов 1.1. Автоподбор текста города из классификатора Городов

Подсказка, дополняющая неполностью введенное Наименование Города

1.2. Выбор сокращения городской единицы 1.2. Выбор сокращения городской единицы

Можно выбрать городскую единицу (Город, Село, поселок и т.п.)

 

Итак, начнем автоматизацию ввода названия города (в поле ввода типа строка)!

 

В Конфигураторе создаем Новый Регистр Сведений, с измерением «Город», типа Строка.

Создаем форму записи Регистра Сведений. В форме записи указываем размещение Измерения в виде поля ввода.

2. Поле Регистра сведений Города типа строка 2. Поле Регистра сведений Города типа строка
3.1. Обработчики событий поля на форме записи регистра сведений 3.1. Обработчики событий поля на форме записи регистра сведений

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

3.2. Обработчики событий формы поля на форме записи регистра сведений 3.2. Обработчики событий формы поля на форме записи регистра сведений

Вставляем код, как на рисунке в обработчики событий.

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

Итоговый код требует лишь наличия конфигурации 1с 8.х УТ (Управление Торговлей), редакция 10.3

Код отлажен, работает. Код я значительно переделал, так как Контактная Информация изначально создавалась для работы с полным набором полей адреса (Область, Город, улица, номер дома). пришлось попотеть и адаптировать код.

Вот результат (код из Формы Записи Регистра сведений):

 

 

3.3. Процедуры и функции на форме записи регистра сведений 3.3. Процедуры и функции на форме записи регистра сведений

 

Вот такие дела!

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

Если необходимо, чтобы код работал НА ЛЮБОЙ конфигурации 1с, необходимо перенести код используемых процедур из общих модулей Контактной Информации.

Задача достаточно кропотливая. Если надо, могу сделать.

На этом пока все. Удачи в программировании на 1с! Пока!

Теги: ,

>