Вопрос. Какая обработка или процедура отвечает за считывания штрих кода в документ реализация,перемещения товара и т.д

Или же все таки обработка ТО отвечает за считывания в документ? кто знает подскажите
Конфигурация УТ 10.3

Нужно это для того что бы
обрезать qr код я его считываю он у меня вводится как cod39 2000013001061 3700011101013

как можно сделать так что бы считались только первые 13 цифр потому что они неизменны . Остальные это служебная инфа которая меняется постоянно.
---
Так вам что нужно, наоборот первые 13 цифр не считывать?
Я выше уже писал - вы когда считываете, у вас штрихкод в регистр сведений сохраняется, ведь так? Вот перед записью набора в этот регистр и меняйте данные, если внешнее событие отловить не можете.
---
Посмотрите в модуле документа обработчик "ВнешнееСобытие(Источник, Событие, Данные)". Так же может быть такой обработчик в модуле приложения. Вроде бы в этих обработчиках подобные вещи реализуются.
---
не подходит
---
В модуле формы документа РеализацияТоваровУслуг:

```1c
    ///////////////////////////////////////////////////////////////////////////////
    //// ФУНКЦИИ ВЗАИМОДЕЙСТВИЯ С ТОРГОВЫМ ОБОРУДОВАНИЕМ (ОБЩИЕ ФУНКЦИИ API)

    // Процедура - обработчик внешнего событие, которое возникает при посылке
    // внешним приложением сообщения, сформированного в специальном формате.
    // Внешнее событие сначала обрабатывается всеми открытыми формами, имеющими
    // обработчик этого события, а затем может быть обработано в процедуре модуля
    // приложения с именем ОбработкаВнешнегоСобытия().
    //
    // Параметры:
    // Источник - <Строка>
    // - Источник внешнего события.
    //
    // Событие - <Строка>
    // - Наименование события.
    //
    // Данные - <Строка>
    // - Данные для события.
    //
    Процедура ВнешнееСобытие(Источник, Событие, Данные)

    Если Не ВводДоступен() Тогда
    Возврат;
    КонецЕсли;

    ПолучитьСерверТО().ОбработатьВнешнееСобытие(Источник, Событие, Данные, ЭтаФорма);

    КонецПроцедуры // ВнешнееСобытие()
```

В модуле обычного приложения:

```1c
    // Функция возвращает объект для взаимодействия с торговым оборудованием.
    //
    // Параметры:
    // Нет.
    //
    // Возвращаемое значение:
    // <ОбработкаОбъект> - Объект для взаимодействия с торговым оборудованием.
    //
    Функция ПолучитьСерверТО() Экспорт

    Если глСерверТО = Неопределено Тогда
    глСерверТО = Обработки.ТОСервер.Создать();
    КонецЕсли;

    Возврат глСерверТО;

    КонецФункции // ПолучитьСерверТО()
```

Для реализации костыля соответственно находим в модуле объекта "Обработки.ТОСервер" функцию "ОбработатьВнешнееСобытие", где манипулируем с переменной "Данные" так, как нам нужно - обрезаем, добавляем, проверяем или ещё какие извращения творим.
---
Не понял вас в каком моменте обрежит то.?
---
помогите пожалуйста
---
включите в отладчике замер производительности, в режиме предприятия просканируйте код, в конфигураторе выключите замер производительности, появиться список строк кода, которые работали. Поставьте точку останова в одной из строк, потом отладчиком отловите всю цепочку в стеке вызовов.
---
И вот еще я о чем подумал, если вы пишете:
как можно сделать так что бы считались только первые 13 цифр потому что они неизменны .

Тогда возникает вопрос, а зачем вам считывать эти первые 13 цифр, если они неизменны? Сохраните их 1 раз в константе.
И на самый крайний случай, перехватите уже считанный штрихкод в событии ПередЗаписью модуля набора записей и изменяйте как хотите.
---
Штрих кодов много то. просто первые 13 не меняются а остальные меняются
---
Так вам что нужно, наоборот первые 13 цифр не считывать?
Я выше уже писал - вы когда считываете, у вас штрихкод в регистр сведений сохраняется, ведь так? Вот перед записью набора в этот регистр и меняйте данные, если внешнее событие отловить не можете.
---
СерверТО кажись называется, а внутри должно быть ОбработатьВнешнееСобытие()
---
И на самый крайний случай, перехватите уже считанный штрихкод в событии ПередЗаписью модуля набора записей и изменяйте как хотите.

Забыл добавить: в модуле набора записей регистра, в который штрихкоды сохраняются.
---
```1c
    Процедура КоманднаяПанельТоварыПоискПоШтрихКоду(Кнопка)
    Результат = РаботаСТорговымОборудованием.ВвестиШтрихкод();
    Если Не ПустаяСтрока(Результат) Тогда
    ПолучитьСерверТО().ОбработатьВведенныйШтрихкод(Результат, ЭтаФорма);
    КонецЕсли;
    КонецПроцедуры
```
---
Поменять
```1c
    ПолучитьСерверТО().ОбработатьВведенныйШтрихкод(Результат, ЭтаФорма);
```

 на

```1c
    ПолучитьСерверТО().ОбработатьВведенныйШтрихкод(Лев(Результат, 13), ЭтаФорма);
```

чтобы найти вызов, используйте глобальный поиск
---
Спасибо большое кто помогал и предлогал задача решена всем спасибо

Если кому интересно то добавил в тоНасервере

Если СтрДлина(ШК) > 13 Тогда
       ШК = Лев(ШК, 13);
КонецЕсли;