Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 ноя 2024, 14:55

Обработка для весов Штрих-принт

Автор Middle, 12 ноя 2021, 10:11

0 Пользователей и 1 гость просматривают эту тему.

Middle

Доброго времени суток.
У меня такой вопрос. Есть обработка ShtrihMScaleOffline_v2.epf которая лежит по пути C:\Users\*****AE.SERVER\AppData\Local\Temp\2.
К ней обращается 1С когда пользователь пользуется выгрузкой в весы.
Проблема в том что там есть ТипПрефиксаШК = 2, я прописываю 0, сохраняю обработку, НО после применения обработки пользователем, значение меняется на 2 обратно.
Вопрос: Как менять значение в данной обработке?

Кусок кода:
Функция НачатьВыгрузку(Объект, ЧастичнаяВыгрузка = Ложь) Экспорт

   Результат = мНетОшибки;

   Если мПрефиксВТ = мПрефиксШТ Тогда
      Объект.ОписаниеОшибки = "Префикс штучного товара совпадает с префиксом весового товара.
      |Для продолжения измените префикс штучного или весового товара
      |в настройках параметров учета конфигурации.";
      Результат = мОшибкаНеизвестно;
      
   КонецЕсли;

   Если Результат = мНетОшибки Тогда
      Объект.Драйвер.НомерЛУ = Объект.ИДУстройства;
      Объект.Драйвер.УстановитьАктивноеЛУ();

      Если Объект.Драйвер.УстановитьСоединение() <> 0 Тогда
         Объект.ОписаниеОшибки = Объект.Драйвер.ОписаниеРезультата;
         Результат = мОшибкаНеизвестно;
      Иначе
         Объект.Драйвер.ИтоговыйПрефиксШК = 0;
         Объект.Драйвер.ТипПрефиксаШК = 2;

         Если Объект.Драйвер.УстановитьИтоговыйПрефиксШК() <> 0
            И Объект.Драйвер.УстановитьТипПрефиксаШК() <> 0 Тогда
            Объект.ОписаниеОшибки = Объект.Драйвер.ОписаниеРезультата;
            Результат = мОшибкаНеизвестно;
         Иначе
            Объект.Драйвер.ПолучитьПрефиксШК();

            Если Объект.Драйвер.ШтучныйПрефиксШК = Число(мПрефиксВТ)
               И Объект.Драйвер.ВесовойПрефиксШК = Число(мПрефиксШТ) Тогда
               Для ПроизвольныйПрефикс = 20 По 29 Цикл
                  Если ПроизвольныйПрефикс <> Число(мПрефиксВТ)
                     И ПроизвольныйПрефикс <> Число(мПрефиксШТ) Тогда
                     Объект.Драйвер.ВесовойПрефиксШК = ПроизвольныйПрефикс;
                     Объект.Драйвер.УстановитьВесовойПрефиксШК();
                     Прервать;
                  КонецЕсли;
               КонецЦикла;

Middle

Вопрос не актуален, решение найдено.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск