• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

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

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Сканер Штрихкода: Зависание На Процедуре Отключить(объект)

  • Автор темы Надя
  • Дата начала
Н

Надя

Здавствуйте! Может быть кто-нибудь сталкивался, помогите, пожалуйста! В типовой конфигурации УПП 8.2 был запрограммирован выбор сканером штрихкода номенклатуры в документе "передача материалов в эксплуатацию". С помощью вашего форума )большое спасибо) запрограммировала выбо в этом же документе сотрудника тоже при помоще сканера штрихкода. После этого в терминальном режиме программа попадает при считывании штрихкода номенклатуры в обработку 1СScanOPOSScan_v2.epf и там "виснет" на строке Объект.Драйвер.Отключить(); Подскажите, пожалуста, что делать?
 
Д

Дайнеко

Непростой вопрос. А в обычном режиме как ведет себя?
 
N

Nikolon

Здавствуйте! Может быть кто-нибудь сталкивался, помогите, пожалуйста! В типовой конфигурации УПП 8.2 был запрограммирован выбор сканером штрихкода номенклатуры в документе "передача материалов в эксплуатацию". С помощью вашего форума )большое спасибо) запрограммировала выбо в этом же документе сотрудника тоже при помоще сканера штрихкода. После этого в терминальном режиме программа попадает при считывании штрихкода номенклатуры в обработку 1СScanOPOSScan_v2.epf и там "виснет" на строке Объект.Драйвер.Отключить(); Подскажите, пожалуста, что делать?
А не смотрела в режиме отладки к чему он там обращается?
Вполне может быть, что он отключает драйвер, а потом пытается вытянуть из него данные...
А вообще совет пройдись отладчиком и посмотри что ему надо, откуда ссылаются объекты, есть ли доступ к ним?)
 
Н

Надя

А не смотрела в режиме отладки к чему он там обращается?
Вполне может быть, что он отключает драйвер, а потом пытается вытянуть из него данные...
А вообще совет пройдись отладчиком и посмотри что ему надо, откуда ссылаются объекты, есть ли доступ к ним?)
Процедура ОтключитьОборудование(Клиент)

ТО = ПолучитьТО();
Клиенты = ПолучитьПараметрСервераТО("Клиенты", "Соответствие");
ВидТО = Неопределено;
СтруктураПоиска = Новый Структура("Вид");

Для Каждого ВидТО Из Перечисления.ВидыТорговогоОборудования Цикл
Если Клиент.ПоддерживаетсяВидТО(ВидТО) Тогда
СтруктураПоиска.Вид = ВидТО;
СтрокиТО = ТО.НайтиСтроки(СтруктураПоиска);
СтрокаТО = Неопределено;
Для Каждого СтрокаТО Из СтрокиТО Цикл
Если СтрокаТО.Ссылки = 1 Тогда
СтрокаТО.Ссылки = 0;
СтрокаТО.Обработка.Отключить(СтрокаТО.Объект);
ИначеЕсли СтрокаТО.Ссылки > 1 Тогда
СтрокаТО.Ссылки = СтрокаТО.Ссылки - 1;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЦикла;

Клиенты.Удалить(Клиент);

КонецПроцедуры // ОтключитьОборудование()

После того, как добавила считывание штрихкода для сотрудника СтрокаТО.Ссылки стало =1, и программа переходит на СтрокаТО.Обработка.Отключить(СтрокаТО.Объект); и там "виснет". Когда штрихкод был только для номенклатуры,
СтрокаТО.Ссылки было =2 и на строку СтрокаТО.Обработка.Отключить(СтрокаТО.Объект); программа не переходила.
 
Д

Дайнеко

Начну с замечания: текст не читаем, пож. пользуйтесь при написании кнопочкой "подсветка 1С".

Странноватый он, этот текст:
Код:
СтрокиТО = ТО.НайтиСтроки(СтруктураПоиска);
Для Каждого СтрокаТО Из СтрокиТО Цикл
А если "ТО.НайтиСтроки" ничего не найдет?

Давайте задумаемся над сравнением "в терминале" / "без". Соблюдена чистота эксперимента? Та же база физически? То же оборудование?
 
Н

Надя

Нет, все то же. Насчет подсветки - спасибо, учту.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!