#0
by Mikhail Volkov
В продолжение темы (почему-то закрыта для меня!?) Понадобилось, чтобы фокус формы автоматически возвращался в мое поле для "ШтрихКодПоиска". Посоветовали вставить Активизировать("ШтрихКодПоиска",0); в любую функцию формы. Вставил: Появилась ошибка: {Справочник.Товары.ФормаСписка.ДляЧеков.Модуль}: В данной формуле не может быть вызвана эта процедура(функция) Пришлось за комментировать. Далее, для своего поля "ШтрихКодПоиска" прописал функцию, взятую из Своего ничего не придумывал. Дает аналогичную ошибку: АктивизироватьОбъект(Табл.ВладелецШК); {Справочник.Товары.ФормаСписка.ДляЧеков.Модуль}: В данной формуле не может быть вызвана эта процедура(функция) Почему?
#1
by Ёпрст
потому, что [:]|||||||||||||||:] используй ложное закрытие формы или открытие пустышки-модальной формы с статусотказа=о в при открытии для не потери фокуса ввода
#3
by Mikhail Volkov
Нашел в "с точки зрения 1С нельзя перепрыгнуть на другой реквизит программно влоб если ещё активен текущий", и как быть?
#6
by HawkEye
в том месте где надо активировать запомнить идентификтор поля и вызвать закрытие формы.. в ПриЗакрытии посмотреть можно закрывать или нет, если нет то активизировать нужное поле и отменить закрытие..
#8
by Chameleon1980
слушайте внимательно про ложное закрытие. Самому именно так мне тут недавно помогли. Еще раз спасибо добрым людям.
#9
by Mikhail Volkov
"Ложное закрытие" работает, но как-то громоздко... Когда курсор находится в табличных частях: списка товара, или отобранного товара активизация моего поля поиска по штрих-коду ошибки не вызывает. Но оказалось, что иногда этот режим надо отключать, например, пришел "оптовик" с большим списком. Тогда продавцы подбирают товар по наименованию. Если курсор автоматом уходит на мое поле, то "стрелочки" не работают. Попросили сделать галочку "Работа со сканером", сделал. Но когда они ее включают появляется ошибка "В данной формуле не может быть вызвана эта процедура(функция)". "Ложное закрытие" работает, но достаточно нажать Tab, чтобы курсор перешел в мое поле поиска. Можно имитировать нажатие клавиши Tab, как?
#11
by Mikhail Volkov
Без него при установки моей галки "Работа со сканером" автоматический переход на следующее поле (имитировать нажатие клавиши Tab) никак?
#15
by Mikhail Volkov
Еще непонятный момент всплыл, в коде когда по штрих-коду найден только один товар, мы его АктивизироватьОбъект, и курсор встает на него. А когда найдено несколько, то пользователю предлагается выбрать нужный: Табл.ВыбратьСтроку(ВремСтрока,"Выберите товар") в этом случае АктивизироватьОбъект(Табл.ПолучитьЗначение(ВремСтрока,"ВладелецШК")); уже не срабатывает, курсор остается там где был!?
#18
by Mikhail Volkov
Думал над этим, даже так написал: В сообщении правильно пишет, но курсор не переходит на выбранный товар.
#19
by Mikhail Volkov
+ А что должно быть? На Сообщить("Выбранный товар: "+СпрТов.ТекущийЭлемент+" / "+ТипЗначенияСтр(ВыбранныйТовар)+" / "+ТипЗначенияСтр(СпрТов.ТекущийЭлемент)); пишет: Выбранный товар: 1000 секретов. Спецвыпуск 20С/15 Экономим правильно / Справочник / Справочник
#20
by Mikhail Volkov
Понял, в форме фильтр стоит по остаткам. Если его снять, то курсор встает на выбранный товар.
#21
by Злопчинский
Это ты быстро справился... я сегодня суммарно часов 8 тупил - в глубинах стеков вызовов транзакцию не зафиксировал...
#23
by Mikhail Volkov
Выбранный товар есть на остатке, в форме подбора доступен. Но не активизируется, когда стоит фильтр по остаткам, и выбирается из таблицы значений (когда найдено несколько товаров с одним штрих-кодом). Когда фильтр снят, или найден один товар (не предлагается выбирать из таблицы), то нормально активизируется! Может и активизируется, но после выбора из таблицы форма обновляется, и курсор уходит в начало списка? Этот момент понять не могу.
#24
by Злопчинский
нет, если стоит фильтр (то есть отбор на форме списка) - то просто активизировать - не находит и прыгает в начало. ты фигню какую-то лепишь. вникни что выше написано. формы для акттивной работы со скангером или попеременной работы сканер-ручки - надо вдумчиво дизайнерить. Штатные флормы вообще бяка. сядь нарисуй на листике что НАДО (не как должно быть а ЧТО НАДО - а как уже сделать - потом определять. Не надо делать мегаэкран с мегакнопочками в диком количестве и многими таблицами. сделай нескольо экранов с быстрым удобным ручным или автопереключением (по контексту). В твоем примере - вот нахера позиционироваться в списке на элемент (который еще и невидим?) - ты сам уже потерялся, а как будут тупить персональи? - отсканировал шк, что надо сделать с этим товаром известно? - в подавляющем колве случаев - ДА - или выбрать его или отказаться (иногда посмотреть на кучку похожих) - вот отсканировал - товар нашли - открой офрму с данными для просмотра - по энтеру - выбор, по ескапу отказ, при нажатии цифровых клавиш - считаем что вводится количество - его показываем на форме. все. будь проще
#25
by Mikhail Volkov
> просто активизировать - не находит и прыгает в начало. Просто интересно стало, почему когда 1 товар найден активируется, а когда несколько (надо выбрать из предложенного) - нет. > что надо сделать с этим товаром известно? - в подавляющем колве случаев - ДА Дальше все путем идет, найденный/выбранный товар переносится в таблицу отобранных товаров независимо "активировался" он или нет. А далее при закрытии формы подбора переносится в чек.
#26
by Злопчинский
" а когда несколько (надо выбрать из предложенного) - нет. " - как напрограммленно так и работаент видимо
#28
by Mikhail Volkov
Этот фрагмент взят без изменений из Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные) формы списка товаров. Перенес в форму подбора для чека, в которой есть отбор по остаткам. Если фильтр отключен, то АктивизироватьОбъект в ней тоже работает при выборе товара из таблицы. Сперва я подумал товара нет в наличии, поэтому не находит и прыгает в начало. Но это не так, товар есть и доступен в форме. Особенность 7-ки? Как будь то вновь на велосипед сел после мерса.
#29
by МимохожийОднако
В 7-ке не так как в 8-ке. Смирись с этим. В СП про метод АктивизироватьОбъект написано, когда срабатывает. Тебе в идея вполне реально описана.
#31
by Злопчинский
"...Этот фрагмент взят без изменений из Процедура ОбработкаВнешнегоСобытия(Источник,Событие,Данные) формы списка товаров..." - сомневаюсь я сильно насчет этого. стиль написания и именования весьма нехарактерен для типовой ТиС
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v7: v7 : НДС при возврате
- v7: Что нужно чтоб подключить ККМ Меркурий 112F к 1с V7 Торговля + склад
- v7: v7.7 премещение элемента справочника
- v7: v8: v7: Кто-нибудь сумел скачать комплект отчетности за I квартал 2007 года
- Как активизировать элемент формы (поле ввода)
- v7: 1С V7.7 в сети
- v7: 1C:V7 starter program (for SQL) - обнаружена ошибка
- v7: Активизировать определенное поле ввода на форме
- v7: Программно активизировать элемент формы
- v7: Перенос данных Бухгалтерия из v7 в v8
- Поле отбора СКД вывести в отдельное поле формы
- v7: v7 Перехват глобального события ПриЗаписи() или ОбработкаПроведения()
В этой группе 1С
- Корректировка реализации и зачет аванса.
- Elastix запись звонков
- XDTO и корневые свойства пакетов
- Можно ли установить дату запрета изменения данных по разделам (БП 3.0)
- Передача товаров операция: передача товаров/материалов переработчику цена,сумма
- как набор записей регистра выгрузить в таблицу значенийй
- Как отследить изменение даты запрета изменения данных (БП 3.0 1С 8.3)
- Не грузится база из DT, что можно сделать?
- HTTP-сервисы, как вызвать программно из 1С?
- Обмен Далион управление магазином и Бухгалтерия 3.0
- Начисление и выплата премий в ЗуП 2.5
- Избитая тема Получить родителя в запросе (2 уровня)
- Использование свойств и категорий в документах 1С УПП 8.2
- сохранение колонтитулов из 1С в Excel
- Карты лояльности в УТ 11
- Как в поле формы организовать выбор нескольких значений из справочника
- Групповое изменение счета учета в дкументе - БП 1с 8.3
- БП 3.0 Выбытие ОС приобретенного в лизинг (учет у лизингополучателя)
- Объект.обменДанными.Получатели и регистрация
- 1С на Windows 10