Завершен

Поиск заказа по штрих-коду в списке подбора заказов

4jobbb 7 лет назад обновлен Алексей (Рук. ТП) 7 лет назад 21

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

В списке подбора заказов есть возможность включить быстрый поиск документа по штрихкоду. Штрихкод генерируется и распечатывается на листе по внутреннему ID документа в 1с с удалением знаков "-" и переведённому из 16-тиричной системы в 10-тичную. Ш-к в формате code128.

При попытке сканировать данный штрих-код, терминал выдаёт, что документ с таким номером не найден. Как сделать так, чтобы поиск срабатывал? Код поиска надо как-то передавать на терминал отдельно или надо генерировать ш-к по другим параметрам?

Добрый день,

приложите документ с ТСД и качественное фото ШК который сканируете.

Чтобы документ находился по штрихкоду - надо использовать одинаковую процедуру штрихкодирования при печати в 1С и при выгрузке документа на ТСД.
Быть может где-то забыли прописать?

А где эта процедура при выгрузке документа на тсд? У меня есть алгоритм формирования ш-к по уникальному идентификатору (по ссылке документа) - добавить не должно быть проблемой.

Начат

В документе у вас ШК 00000352, а ШК который для печати считать не удалось - в нем те же цифры?

Нет, он в формате code128 - там внутренний идентификатор документа.

Т.е. штрихкод, по которому он найдёт должен быть 00000352? А что если несколько документов с таким номером будет?

Найдите в обработке выгрузки документов такую часть кода

Внизу закомментирован типовой код.

А вам надо через ШтрихкодированиеПечатныхФорм, ибо так присваивается штрихкод в 1С.

Сделайте так и будет вам счастье

Спасибо, сейчас попробую!

нет такой. Версия обработки 2.6.7.14

строкаДанных.Вставить("ШК",ПолучитьШКИзСтрокиДокумента(СтрокаТаблицыДокумента));


вот есть похожее

Не очень похоже на штрихкод документа.

Выложите на дропбокс эту обработку, я быстро глазами ее гляну

А почему "Загрузка документов" ? Ведь нужна "Выгрузка документов".
Или в 2.6 версии еще не разделяли? в 2.7 уже было две

опа, может в том и косяк - сейчас гляну =D

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

Всё заработало, ещё раз спасибо за помощь!

Основной вопрос решен? Данную ветку можно закрывать?

Ищите по реквизиту в модуле формы обработки

"Штрихкод" или ШтрихкодДокумента

Я именно так и находил, когда делал.

Код обработки не очень то и меняется от версии к версии

&НаКлиенте
Функция ПолучитьШКИзСтрокиДокумента(DocumentItem)

ШК = DocumentItem.GetField("code");
Если ШК = Неопределено Или ПустаяСтрока(ШК) Или
ШК = "00000000" Или ШК = "0" Или Найти(ШК, "{") > 0 Тогда
ШК = DocumentItem.GetField("barcode");
КонецЕсли;

Если ШК <> Неопределено Тогда
Инд = Найти(ШК, "|");
Если Инд > 0 Тогда
ШК = Лев(ШК, Инд-1);
КонецЕсли;
КонецЕсли;

Возврат ШК;

КонецФункции



Но тут некий DocumentItem - он вряд ли ссылка - сейчас нет возможности отладить.

Сервис поддержки клиентов работает на платформе UserEcho