|   |   | 
| 
 | Как в УПП ограничить прием заказа, по времени? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Серго62 19.05.14✎ 10:05 | 
        Предприятие доставляет заказы покупателям собственным транспортом. Количество заказов, которые могут быть доставлены в определенный день ограничено количеством автомобилей. В связи с этим приняли решение принимать заказы на завтра до определенного времени, например до 14:00, так как после этого времени начинается планирование рейсов на завтра.
 То есть до 14 принимаем заказ на завтра, а после 14 на послезавтра и последующие дни. При попытке принять заказ на завтра после 14 часов нужно выдавать предупреждение и "не выпускать" пользователя из даты отгрузки пока он не укажет правильную дату. Сделал такую проверку для поля дата отгрузки: Процедура ДатаОтгрузкиПриИзменении(Элемент) Если ТекущаяДата() > НачалоДня(ТекущаяДата())+(24*60*60) И Элемент.Значение < КонецДня(ТекущаяДата()+24*3600) Тогда // После 14:00 прием заказов на завтра прекращается Предупреждение("После 14:00 нельзя принимать заказы на завтра!"); ЭтаФорма.ТекущийЭлемент = Элемент; //Значение = Элемент.Значение; КонецЕсли; КонецПроцедуры Но срабатывает эта проверка почему-то только один раз. То есть если пользователь вводит неправильную дату и жмет Enter первый раз, то он получает сообщение и остается в поле ввода, если он жмет Enter еще раз, то благополучно выходит из этого поля. Можно ли как-то сделать так чтобы пользователь не мог выйти из поля ввода, пока не введет правильную дату? | |||
| 1
    
        Wobland 19.05.14✎ 10:06 | 
        это даже не цепью приковать к пулемёту, тут юзер полностью беспомощен     | |||
| 2
    
        Kalambur 19.05.14✎ 10:09 | 
        используй ОбработкаВыбора     | |||
| 3
    
        Серго62 19.05.14✎ 10:15 | 
        (2) Это событие возникает только при выборе, в моем случае при выборе из календаря.     | |||
| 4
    
        Серго62 19.05.14✎ 10:16 | 
        (1) Все так безнадежно?     | |||
| 5
    
        Wobland 19.05.14✎ 10:20 | 
        (4) да не особо на самом деле. я не изобрёл ни одного нового ругательства, когда не смог сойти с поля в такой ситуации     | |||
| 6
    
        Серго62 19.05.14✎ 10:23 | 
        (5) Открой секрет, как не дать сойти с поля?     | |||
| 7
    
        Wobland 19.05.14✎ 10:27 | 
        (6) усердная молитва и пост избавляют от таких стремлений     | |||
| 8
    
        Серго62 19.05.14✎ 10:32 | 
        (7) Ну то есть никак, я правильно понимаю?     | |||
| 9
    
        Серго62 19.05.14✎ 10:37 | 
        Есть еще такой вариант - коварно сообщить пользователю о том, что он не прав при записи документа, он будет просто в восторге от этого сообщения, когда "набьет" весь документ и узнает о том, что не может его сохранить.     | |||
| 10
    
        Wobland 19.05.14✎ 10:38 | 
        (8) нет
 ТекущаяДата() > НачалоДня(ТекущаяДата())+(24*60*60) //если сегодня - это уже завтра, так что ли? | |||
| 11
    
        Wobland 19.05.14✎ 10:39 | 
        (9) есть такая вещь как проведение. до него документ - просто черновичок     | |||
| 12
    
        pumbaEO 19.05.14✎ 10:40 | 
        Что делать, если начал набивать заявку в 13:59, а закончил в 14:01?
 1. В Форме ПередЗаписью: ЭтоНовый + Проверка даты отгрузки. 2. Обработчик ожидания раз в минуту и могильной формочкой предуреждать "ДО окончания ввода заявки на сегодня остадлось 3 сек и 523 милисекунды". | |||
| 13
    
        Серго62 19.05.14✎ 10:42 | 
        (10) сорри, это косячок, должно быть так ТекущаяДата() > НачалоДня(ТекущаяДата())+(14*60*60)
 с циферкой ошибся, имелось ввиду, что если текущее время больше 14:00 | |||
| 14
    
        Wobland 19.05.14✎ 10:44 | 
        а вот придумали бы какую-то фиговину для выделения часа из даты...     | |||
| 15
    
        Серго62 19.05.14✎ 10:45 | 
        (12)Вот как раз, если проверять дату отгрузки, то такая проблема не возникнет.     | |||
| 16
    
        Серго62 19.05.14✎ 10:47 | 
        (14) Час(<Дата>) не оно?     | |||
| 17
    
        Wobland 19.05.14✎ 10:48 | 
        (16) оно, но сторно     | |||
| 18
    
        Серго62 19.05.14✎ 10:52 | 
        (11) Да, да, все так, но задача в том, чтобы уберечь пользователя от лишней работы. Поэтом нужно остановить его в дате отгрузки, если он ее ввел неправильно.     | |||
| 19
    
        Серго62 19.05.14✎ 11:03 | 
        (5) Если не секрет, где это можно увидеть или это не в 1с было?     | |||
| 20
    
        Wobland 19.05.14✎ 11:04 | 
        (19) ой, не помню, в 1с. а присвоение текущего элемента вполне себе работате     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |