Имя: Пароль:
1C
 
Показ сдачи моментально при наборе суммы
0 Гений 1С
 
гуру
31.07.26
20:06
Сделал клиенту расчет суммы сдачи с чека.
Все работает отлично, но клиент хочет, чтобы работало без нажатия Enter.
А это проблематично - если в событии что-то меняешь в форме, то фокус ввода теряется.
Как то можно решить проблему кроме создания клавиатуры с цифровыми кнопками?
1 PR
 
31.07.26
20:48
О, очередная генитальная головоломка
2 MWWRuza
 
гуру
31.07.26
21:18
Не знаю как в восьмерке, а в 7.7 у меня именно так поиск товаров работает:
https://cloud.mail.ru/public/YUnw/31ahLmatL
Это просто, толчек в некую сторону, может натолкнет на мысль, как решить эту задачу :-)
Думаю и для сдачи в восьмерке можно так-же сделать.
3 Tarlich
 
31.07.26
21:46
оно?
4 Tarlich
 
31.07.26
21:54
(2) Длинная борода что 8 сырая .....
аж интересно стало как реализовано ?
5 Кирпич
 
31.07.26
22:04
(3) ты нафига показал?! Теперь Геня свой изврат не покажет.
6 MWWRuza
 
гуру
31.07.26
23:29
(4) Вместо стандартного поля ввода 1с, АктивеИкс от движка акцесса, или есть отдельный, там у меня два варианта. В конфигураторе, это кнопка. В пользовательском режиме, как обычное поле ввода выглядит, только "живое".
Как-то так.
7 Web00001
 
01.08.26
06:20
(3) а теперь вынеси надпись на форму и попробуй у нее изменить заголовок)
8 Web00001
 
01.08.26
06:21
(5)Геня может показывать только свои намерения.
9 Anchorite
 
01.08.26
07:20
Все работает отлично, но клиент хочет, чтобы работало без нажатия Enter.


Надпомниело недавнюю тему про толстый клиент на Андроид: «все работает отлично, но бухгалтер жалуется, что ноутбук тяжёлый». Не могу даже представить себе, что тварица в головах тех людей, кого всерьёз беспокоят такие вопросы.
10 eddy_n
 
02.08.26
10:15
Обмельчали задачи. Страна скоро устанет ждать.
11 Irbis
 
02.08.26
12:28
Раньше продавцы сдачу в уме считали, а то и говорили сколько копеек нужно додать, чтобы из набора в кассе минимальным количеством размена обойтись. Теперь ждём когда на счётных палочках считать начнут, счёты с костяшками уже высшая математика будет.
12 AAA
 
02.08.26
15:29
Постановка задачи очень странная. Сдача это не поиск товара. Продавец должен ввести сумму и чем-то ее зафиксировать, будь то Enter или специальная кнопка. Какой смысл считать сдачу до окончания ввода? Тогда уж делай ввод голосом.
Согласен с (9), не могу даже представить клиента, который хочет такое, особенно сейчас.
13 timurhv
 
02.08.26
21:48
(0) ПолеHTML + скрипт на JS
14 Гений 1С
 
гуру
02.08.26
21:53
(7) ггг... обучаешь ньюбов, которым кажется, что они держат бога за бороду? ;-)
15 Гений 1С
 
гуру
02.08.26
21:53
(13) неплохая идея. и все же в 2026 году, когда космические коробли бороздят...
16 Гений 1С
 
гуру
02.08.26
22:03
(12) чтобы не давить лишние кнопки, человек - существо ленивое
17 timurhv
 
02.08.26
22:09
(15) я с подобным столкнулся как в (0) когда надо было плюс или минус выводить при наборе числа. Но ПолеHTML там так себе выглядит (надо больше места, а у меня его не было), но для кассира наверное пофик.
18 Web00001
 
03.08.26
09:31
(12)Нормальная постановка. Кассир сидит за кассой, подходит человек и протягивает деньги. Например 5к. Чек на 3500. Кассир набирает на цифровой клаве 5000. Он должен увидеть сдачу. Зачем ему еще что-то нажимать? Все ответы здесь не потому, что это бессмысленно. А потому, что нет быстрого ответа на вопрос. То есть ответы звучат так: "Мы не знаем как сделать, просто такую элементерную штуку, поэтому это вам не нужно". Позорно надо сказать. Но как есть.

Второй момент. Допустим чек 650руб. Чел дает одной купюрой 1к. Кассир вводит 1000, нажимает энтер. И видит сдачу 350. Потом чел такой, ой извините у меня мельче есть и дает 700р. Кассир вводит 700р и забывает нажать энтер. У него до сих написано сдача "350". Он может ее и сдать на автомате, если к вечеру уже устал.
19 maxab72
 
03.08.26
09:37
На обычных формах это делается элементарно...
20 ДенисСмирнов
 
03.08.26
10:17
(18) "Зачем ему еще что-то нажимать?"
нажать придется, документ-то надо записать. на мой взгляд тоже постановка кривая.
21 AAA
 
03.08.26
11:31
(18)Вам бы книжки писать. Насочинять можно что угодно, только к реальной жизни это имеет мало отношения. Высосано из пальца
22 AAA
 
03.08.26
11:33
Внесенная сумма - это данные и ввод данных должен быть завершен. Кто хочет извращаться, то ради бога
23 SleepyHead
 
гуру
03.08.26
11:40
Следующий вопрос - как проверить неправильно введенную сумму по сценарию - "клиент дал 1000, а продавец внес 100".
24 maxab72
 
03.08.26
11:43
(23) решается кардинально "Женщину вынули, автомат засунули" (Кин-дза-дза). Монето- и купюроприемник.
25 ДенисСмирнов
 
03.08.26
12:54
(24) разумеется, с онлайн-занесением суммы в открытый документ?
26 maxab72
 
03.08.26
12:59
(25) а почему бы и нет?
27 NorthWind
 
03.08.26
15:55
(22) а меня тоже удивляет. Я подобные вещи на дельфях делал еще лет 25 назад, все в динамике замечательно пересчитывалось сразу. Еще и дисплей электронных весов показывался, живой, на весы надавишь или что-то положишь - на форме цифры меняются. А спустя четверть века - пук-среньк, "сложна!"
28 NorthWind
 
03.08.26
16:01
(23) видел реализацию такого. К компу подключена машинка для счета денег с интерфейсом, кассир должен прогнать через нее всё до купюрки, и понятно, что всё это под камерами. Правда, не знаю, как с монетами вопрос решался.
29 maxab72
 
03.08.26
16:08
"как с монетами вопрос решался." в советское время медь взвешивали на весах - сколько по стограммов - столько и рублей. Для серебра был другой коэффициент.
30 CepeLLlka
 
03.08.26
16:10
(0)Подключи обработчик ожидания, пусть высчитывает сумму сдачи по кд
31 Fragster
 
гуру
03.08.26
16:54
(0) а шо ты там меняешь в форме? декорацию-надпись? ну используй вместо неё реквизит...
32 Fragster
 
гуру
03.08.26
16:56
почему миста гифки режет? https://makeagif.com/gif/genius-one-ass-qXe_yo
33 Fragster
 
гуру
03.08.26
16:57
(30) нафиг
34 Fragster
 
гуру
03.08.26
16:59
вот весь код:

&НаКлиенте
Процедура СтоимостьИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
    Сдача = Внесено - Число(Текст);
КонецПроцедуры

&НаКлиенте
Процедура ВнесеноИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
    Сдача = Число(Текст) - Стоимость;
КонецПроцедуры
35 CepeLLlka
 
03.08.26
17:03
(33)Можт и нафиг, хотелось написать тоже чё-нить
36 timurhv
 
03.08.26
17:09
(34) и работает как в (0) написано. Попробуйте не быстро ввести, а по-медленнее. У меня в поле внесено сбрасывается в 0
37 Fragster
 
гуру
03.08.26
17:12
(36) потому что в 1с для этого есть специальное свойство, существующее уже с десяток лет, странно, что (0) об этом не в курсе. называется "обновление текста редактирования"
38 SleepyHead
 
гуру
04.08.26
05:55
(37) Некогда же, надо делать убийцу 1с.
39 Fragster
 
гуру
04.08.26
11:30
(36) кстати, в (0) не про сброс текста редактирования в значение, а про уход фокуса (который бывает, например, при неявном серверном вызове при изменении заголовка, видимости и прочем, о чем я и пишу в (31))
40 Garykom
 
гуру
04.08.26
11:40
(39) А нехрен делать серверные вызовы в обработчиках событий элементов, если фокус жалко
Можно обойтись извращениями через временные хранилища и ПодключитьОбработчикОжидания (для реальных серверных вызовов)
41 Гена
 
гуру
04.08.26
11:41
Когда коту делать нечего...
42 Fish
 
гуру
04.08.26
11:45
(10) +100. Какой-то мелкой суетой занимается. Где былые "мой гений дарит ....":
43 mikecool
 
04.08.26
11:51
обмельчали Гении...
когда я не знаю - есть ли событие, что мне нужно - я создаю все обработчики и ловлю, понимая - что срабатывает и нужно ли это мне
а если не нахожу - иду на Мисту
но тут видимо (38)
44 maxab72
 
04.08.26
12:05
(11) "Раньше продавцы сдачу в уме считали, а то и говорили сколько копеек нужно додать" ага, недаром присказка была: "Двадцать да двадцать - рупь двадцать, еще тридцать - два тридцать. Спички берем? - Нет. - Тогда два пятьдесят, итого с синицы двугривенный сдачи."