Найти документ по штрихкоду 1с
Эта статья описывает процесс доработки типовых 1С конфигураций, для добавления функционала штрихкодирования документов и быстрого их поиска по штрихкоду. Метод работает для управляемых и неуправляемых печатных форм.
Молочников Олег Spb . 2010.
Стандартные доработки. Штрихкодирование документов.
Эта статья описывает процесс доработки типовых 1С конфигураций, для добавления функционала штрихкодирования документов и быстрого их поиска по штрихкоду. Метод работает для управляемых и неуправляемых печатных форм.
В этом примере рассматривается генерация штрихкода EAN 128 следующей структуры: 3 символа – для идентификации типа документа + 6 символов для даты + номер документа. Из ограничений метода : в области макета где печатается штрихкод возможна печать только одного штрихкода. Название рисунка для штрихкода должно начинаться на «Штрихкод”. Метод не работает без изменений, если есть кириллические символы в префиксах документах.
1. В общий модуль, выполняемый на сервере добавьте следующие функции:
2. Проверим наличие в общих макетах компонент: КомпонентаПечатиШтрихкодов Windows 32, КомпонентаПечатиШтрихкодов Windows 64, КомпонентаПечатиШтрихкодовLinux32, КомпонентаПечатиШтрихкодов Linux 64
Если их там нет, возьмем из типовых конфигураций.
3. Модифицируем печатные формы документов следующим образом: Добавим на печатные формы требуемых документов изображение штрихкода как на рисунке с примером макета.
Обязательно имя рисунка должно начинаться на «Штрихкод”.
4. В тело функции печати печатной формы добавляем:
6. Дальнейшее развитие идеи (по комментариям читателей):
А) Вместо привязки к номеру, дате и типу документа можно использовать уникальный идентификатор документа. Это более универсальный метод.
Б) Если печатных форм много, то можно не менять макеты печатных форм, а сделать механизм хранения координат места в макете, в котором создавать динамический рисунок и в него выводить штрихкод. Требует экспериментов, но выигрыш в реализации очевиден: минимизация изменений конфигурации, простота добавления штрихкодов.
Рассмотрим подключение подсистемы штрихкодирования документов на примере подключения такого механизма в конфигурации 1С 8.2 и 8.3 Управление торговлей.
Зачем нужно штрихкодирование документов в 1С?
Штрихкодирование документов может понадобиться для наведения порядка в бумажном документообороте — любому бумажному документу за считанные секунды можно найти электронный аналог в системе. Например, очень удобно, когда клиенты приходят в офис с уже распечатанным заказом, в котором есть штрих-код, — в этом случае обслуживание клиента занимает существенно меньше времени.
Настройка штрихкодирования документов 1С
Первый шаг к настройке штрихкодирования — создание штрих-кода, хранение его в базе данных и распечатка на бумажном носителе.
Генерация штрих-кода и сохранение его в 1С
Для хранения штрих-кода создадим у документа новый реквизит — назовём его «штрихкод».
С генерацией нового штрих-кода немного труднее. Необходимо воспользоваться процедурой РаботаСТорговымОборудованием.СформироватьШтрихКод() из конфигурации управление торговлей и сформировать его перед записью нового документа:
Распечатка штрих-кода на печатной форме описана в отдельной статье — вывод на печатную форму штрих-кода.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
С установкой, хранением и распечаткой документов мы разобрались. Перейдем к другому этапу — поиск документов по штрих-коду.
Настройка поиска документа в 1С по штрих-коду
Рассмотрим поиск документа по штрих-коду из формы списка документа «Заказ покупателю».
Первым делом необходимо скопировать из других форм (например, форма списка номенклатуры), отвечающих за работу с внешним оборудованием — сканером штрих-кода. Вот процедуры, которые необходимо поместить в форму списка:
Обратите внимание на процедуру СШКНеизвестныйКод, если стандартные механизмы не смогли найти номенклатуру, они вернут нас в функцию «СШКНеизвестныйКод», где мы его и обработаем.
Опишем процедуру НайтиЗаказПоШтрихкоду, с помощью которой мы найдем нужный документ по штрих-коду и откроем его форму:
При выполнении данной процедуры будет происходить поиск нужного заказа по штрих-коду. Если заказ найден по штрих-коду, то система откроет заказ, не найден — сообщит об этом.
Столкнулись с проблемой при считывании штрих-кода с печатных форм документов. Стояла задача разработать мобильное приложение без излишней загруженности, для отражения операций выпуска продукции, перемещения и реализации.
При считывании штрих-кода с помощью мобильного телефона поиск документа мог занимать более минуты.
При замене штрих-кода на QR код поиск происходит в считанные секунды, приложение действительно мобильно, то есть оперативно.
Работает на всех печатных формах документов, которым по умолчанию присваивается штрих-код с возможностью выбора документов.
Расширение разработано на конфигурации 1С: Управление нашей фирмой, релиз 1.6.25.236, работает на 1.6.26.132.
Специальные предложения
Интересно почему поиск по "QR коду" происходит в считанные секунды, по идее линейный штрихкод проще для разбора или нет?
«Штрихкоды и QR-коды несут в себе одинаковую информацию. Однако в штрихкодах данные сохраняются только горизонтально с помощью параллельных линий (одномерный код), в то время как в QR-коде используется двухмерная кодировка по вертикали и горизонтали.
QR-коды легче прочитать. Чтобы считать штрихкод, устройство нужно держать параллельно этикетке. QR-код же можно прочитать под любым углом. Это удобно, когда нужно отсканировать много объектов, ведь вам необязательно каждый раз точно прицеливаться.
QR-коды считываются даже при повреждении. У QR-кодов высокий уровень коррекции ошибок. Даже если около 30 % кода испорчено, стерто или покрыто грязью, его все равно можно прочитать»*.
В процессе тестирования мобильного приложения обнаружилось, что скорость считывания линейного штрих кода EAN-13 и ниже сравнима со скоростью считывания QR-кода, но документы в 1С кодируются видом штрих-кода EAN-128, куда записывается в десятеричной системе уникальный идентификатор документа и соответственно скорость разбора такого кода занимает продолжительное время.
Порою в рамках штрихкодирования документов или этикеток на печатную форму 1С 8.2 (8.3) необходимо вывести произвольный штрих-код.
Как это сделать, рассмотрим ниже.
Первым делом нужно создать шаблон будущей печатной формы. Если у Вас возникли трудности с созданием будущего шаблона, прочтите статью создание печатных форм в 1С.
Для вывода штрих-кода обязательно (кроме конфигураций на базе БСП 2 и выше) необходима установка компонента 1С Печать штрих-кода. Найти его можно на диске ИТС или на пользовательском портале 1С.
Вставка штрих-кода на печатную форму 1С
Первый шаг — необходимо создать новый объект — рисунок. Для этого в макете необходимо нажать Таблица — Рисунки — Вставить объект… Система предложит выбрать тип объекта:
Нужно выбрать Элемент управления — 1С.V8.Печать штрих-кодов. Допустим, назовём рисунок-объект «Штрихкод». Для программного вывода на печатную форму можно воспользоваться следующим кодом:
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
В вышеприведенном примере мы вначале получаем тип штрих-кода, потом назначаем рисунку тип штрих-кода и сам штрих-код.
Вот и всё! Установка штрих-кода на печатной форме завершена.
Наш видеоурок по созданию внешних печатных форм и подключению их на примере конфигурации 1С Бухгалтерии:
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
a. Быстрые отборы
В шапке форме списка есть группа быстрых отборов. Можно делать отборы только по одному реквизиту или по нескольким:
Поиск будет происходить в выбранном реквизите по точному совпадению.
Также на форму можно вывести дополнительные отборы через “Еще” -”Настройки”-”Изменить форму” установив или сняв галочками виды отборов:
Не забывайте снимать отборы (нажать на крестик в поле быстрого поиска), иначе ваш выбор сохранится при повторном открытии формы и вы увидите только отобранные ранее документы.
б. Поле поиска
Поиск происходит только по полям выведенным в списке (которые мы видим на экране, а не по всем реквизитам документа) и поиск происходит по части строки. Найденные вхождения выделяются зеленым цветом:
При наличие большого количества документов в базе для ускорения времени поиска рекомендуется сделать также быстрый отбор по периоду. Например, текущий год.
в. Расширенный поиск
При необходимости искать по конкретному реквизиту который мы видим в списке, можно воспользоваться расширенным поиском:
В поле “Где искать” можно выбрать только те реквизиты, которые выведены на форму (которые мы видим на экране).
В отличие от поиска через быстрые отборы или поле поиска мы можем выбрать как искать: по началу строки, по части строки, по точному совпадению.
Чтобы снова увидеть все документы, нужно нажать на крестик в текущем отборе, который появился над списком документов.
г. Настройка списка
Если вы часто пользуетесь какими-то отборами через поле поиска или расширенный поиск, то можно сохранить их через “Еще”- “Настройки” - “Настроить список”
На вкладке “Отбор” можно выбрать любой реквизит документа из левой колонки “Доступные поля” и кликнуть по нему два раза (1), выбрать вид сравнения(2) и с чем сравнивать (3), после этого сохранить настройки нажав “Завершить редактирование”.
В шапке формы появятся наши персональные настройки:
Теперь можно менять значения в сохраненных настройках. Чтобы снова увидеть весь список без отборов нужно снять галочки возле названия реквизита, по которому происходит поиск.
Чтобы совсем удалить с формы эти настройки требуется перейти повторно в настройки списка на вкладку отборы и нажать “Удалить”.
д. Показывать помеченные на удаление
В случае, если документ был помечен на удаление или была нажата кнопка “Delete”, он пропадает из общего списка документов. Если администратор вашей базы или фоновое задание, которое выполняется по расписанию еще не успели удалить все помеченные на удаление объекты, то восстановить такой документ можно, что через “Еще”-”Настройки”- “Показывать удаленные”. Тогда документ появится в списке в зачеркнутом виде:
Останется только нажать “Еще “- “Документы”-“Пометить на удаление/Снять пометку”
e. Настройка просмотра
В меню “Еще”- “Просмотр” можно выбрать варианты просмотра документов, при котором в левой колонке появляется список того, по чему можно сгруппировать документы:
При этом если в левой колонке выделить один из элементов, то в списке документов происходит отбор по выделенному элементу:
Второй способ. Обработка “Поиск документов и файлов”
Данная обработка находится в разделе “Документы и файлы”- “Сервис”. И подходит для поиска по всем трем типам документов, а также по всем реквизитам документов. Требуется выбрать область поиска (1), например, по всем типам документов или только по одному, что искать(2) по одному или нескольким реквизитам и запустить поиск (3).
В примере ниже поиск происходит по всем типам документов, у которых в реквизите “Содержание” есть текст “строит”, чтобы найти все слова “ строит ельный”, “ строит ель”, “пере строит ь” и т.п.
Результат будет выглядеть в виде отдельных списков из найденных документов:
Третий способ. Полнотекстовый поиск
Полнотекстовый поиск находится в “Документы и файлы”- “Сервис” или по значку лупы справа наверху возле имени пользователя, под которым вы вошли в программу:
Третий способ производит поиск по всей информации, которая есть в информационной базе. Это может быть как значение поля карточки документа, так и название этого реквизита или папки в котором он находится или любой другой объект базы. Также поиск происходит по содержимому прикрепленного к карточке файла и всех его версий.
Четвертый способ. Список “Мои документы”
Cписок “Мои документы” находится в “Документы и файлы” - “Мои документы” и на начальной странице, если у вас там выведен виджет “Мои документы” на форме “Текущие дела”.
В этом списке находятся документы, которые относятся к вам и по которым могут требоваться какие-то действия:
все документы, по которым вам направлена задача. После выполнения задачи документы перестанут отображаться в списке;
все документы, по которым вы направили задачу другому сотруднику. После выполнения задачи документы также перестанут отображаться в списке;
входящие документы, созданные вами. Документы исчезнут из списка после регистрации;
исходящие документы, созданные вами. Документы исчезнут из списка после регистрации и отправки;
внутренние документы, созданные вами. Документы исчезнут из списка после регистрации и исполнения;
документы, за которые вы назначены ответственным. Эти документы можно исключить из списка только вручную.
Пятый способ. Отчеты
В программе предусмотрено большое количество настроенных отчетов. Отчеты по документам находятся в “Документы и файлы” - “Отчеты”. С помощью этих отчетов можно найти документ по разным критериям исходя из названия отчета.
Например, отчет “Неподписанные внутренние документы”:
Кликнув в отчете на найденный документ откроется карточка этого документа.
Шестой способ. По контрагенту
Когда необходимо посмотреть все документы по определенному контрагенту, можно воспользоваться справочником “Контрагенты”, который находится в “Документы и файлы” - “Контрагенты”. В карточке контрагента есть гиперссылка на все документы, к нему относящиеся.
Седьмой способ. Категории (доступен только в версии КОРП и ДГУ)
При включенной настройки Категорий (настройка на уровне всей программы) в документах появляется вкладка “Категории”.
Категории - это дополнительная классификация или теги документов. Категории можно устанавливать вручную или автоматически по настроенным критериям. После этого в “Документы и файлы” - “Категории” можно подобрав категории сразу найти все подходящие по отбору документы.
Восьмой способ. Поиск по штрихкоду (доступен только в версии КОРП и ДГУ)
В КОРП /ДГУ версии каждому документу по умолчанию назначается штрихкод. Штрихкод можно визуально установить программно в прикрепленном файле или распечатать на наклейке при наличии специального оборудования для печати наклеек. После этого при подключенном сканере шрихкодов можно отсканировать штрихкод и в программе откроется нужная карточка этого документа.
Если документ приходит в нашу организацию со своим штрихкодом, то, чтобы избежать случайностей при сканировании штрихкодов, его можно также указать в программе, как внешний. После этого поиск будет доступен и по нему.
Поиск можно производить по номеру штрихкода без подключенного сканера штрихкодов. Такой поиск вызывается сочетанием клавиш Ctrl+Shift+I.
Девятый способ. Избранное и История
Список документов (и других ссылок в программе), которые были добавлены в избранное или список последних просмотренных документов, доступны по соответствующим значкам справа наверху возле имени текущего пользователя.
История (Список последних):
Также эти списки можно вывести на начальной странице с помощью Настройки - Настройки начальной страницы:
Чтобы добавить документ в избранное нужно нажать на значок звездочки возле наименования документа:
Десятый способ. Как найти физическое местоположение документа
а. Журнал передачи
Запись журнала передачи можно внести (по кнопке “создать”) на контактное лицо Контрагента или на нашего сотрудника. В этом же списке можно видеть всю историю передач по этому документу.
Проводить сводный анализ переданных документов можно по общему списку журнала передачи (“Документы и файлы” - “Журнал передачи”)
или по отчетам в разделе “Документы и файлы” - “Отчеты” - “По всем документам”:
б. Учет документов по местам хранения
При включенной настройки учета по местам хранения в видах документа можно вести учет по местам хранения и ответственным лицам за хранение. В месте хранения можно указывать заранее введенные места из справочника или в виде произвольной строки.
Статью подготовила Тимохина Наталья, специалист по внедрению 1С партнёрской сети "ИнфоСофт".
Читайте также: