Имя: Пароль:
1C
1С v8
Выделенный интервал в планировщике
0 Nzzzz
 
03.02.21
12:04
Всем привет! Здесь есть кто знает или знаком с объектом "Планировщик"?
Мне нужно понять что такое за сущность, когда я выделяю интервал. На скриншоте показано:  https://dropmefiles.com/0IK1r
1 Nzzzz
 
03.02.21
12:06
(0) Смысл вопроса: при растягивании мне нужно, чтобы писалось время. То есть растянуто с 08:00 по 08:25 и чуть правее будет писаться 25 минут.
2 SiAl-chel
 
03.02.21
12:39
(1)
1. У поля планировщика добавь все обработчики, с сообщением имени обработчика.
2. Когда тебе покажет, какой обработчик при твоем действии сработал, топай в него отладчиком и смотри, какие объекты входят в в обработчик через его параметры.
3 Nzzzz
 
03.02.21
12:44
(2) Вы знакомы с планировщиком? Как думаете получится вывести время, которое выделено? Или это какая то платформенная штука, которую не поменять?
4 d4rkmesa
 
03.02.21
12:45
(3) Если только на форме. В самом планировщике - вряд ли.
5 SiAl-chel
 
03.02.21
12:58
(3) Никогда не работал. Но алгоритм научного тыка с неизвестными мне ранее интерфейсными объектами я написал в (2).
6 Nzzzz
 
03.02.21
13:02
Заходит в процедуру "ПроверкаПеретаскивания". А как бы теперь мне врем добавить на эту область?
7 Nzzzz
 
03.02.21
13:03
(4) Я тоже думаю, что в планировщике вряд ли..А на форме как Вы имеете ввиду?
8 SiAl-chel
 
03.02.21
13:03
(3) Конечно получится. Это всего лишь Заголовок выделенного элемента поля Планировщика. Судя по синтакс-помощнику, смотреть надо на коллекцию ВыделенныеЭлементы в обработчике ПриОкончанииРедактирования поля Планировщка на форме.
9 Nzzzz
 
03.02.21
13:09
(8) Как бы добраться до этого заголовка..Кстати "ВыделенныеЭлементы" - на сколько я понимаю, это если есть запись в расписании, вот при нажатии она выделается и это есть выделенный элемент. А тут я область просто выделаю..
10 Nzzzz
 
03.02.21
13:21
При начале выделения попадает в процедуру:
&НаКлиенте
Процедура ПланировщикПроверкаПеретаскиванияВнутри(Элемент, ПараметрыПеретаскивания, ВариантИзмененияГраниц, ДействиеПеретаскивания, Отказ)
Элемент - поле формы
ПараметрыПеретаскивания - Фиксированный массив, в нем:
   Свойство                           Значение                                     Тип
"Параметры перетаскивания"     "ПараметрПеретаскиванияВнутриПланировщика"   "ПараметрПеретскиванияВнутриПланировщика"
  -ЗначенияИзмерений                    Соответствие                                   Соответствие
  -конец                                03.02.2021 8:20:00                             Дата
  -Начало                               03.02.2021 8:30:00                             Дата
  -Элемент                                                                             Неопределено

ВариантИзмененияГраниц - конец- ВариантИзмененияперетаскиванияВнутриПланировщика
ДействиеПеретаскивания - Создание - ДействиеПеретаскиванияВнутриПланировщика
11 Nzzzz
 
03.02.21
13:29
Подскажите, как изменить заголовок в этой процедуре? (10)
12 SiAl-chel
 
03.02.21
13:34
(11) Ну теперь ты можешь программно узнать начало и время события на экране. Отладчиком остановись в начале этого обработчика и проверь есть ли у реквизита формы типа Планировщик или соответствующего ему элемента формы свойство ВыделенныеЭлементы. Там скорее всего будет элемент, у которого будет свойство Текст или Заголовок. "Как мне кажется..." (Райкин-старший).
13 Nzzzz
 
03.02.21
13:39
(12) "ВыделенныеЭлементы" - есть, фиксированный массив, но там пусто, почему, написано в (9). Никаких элементов не было выделено, была выделена только простая область..
14 Nzzzz
 
03.02.21
13:49
Заголовок не могу найти..Может как то на форму вывести? Но сообщением снизу - как то не очень.. Как еще можно?
15 Nzzzz
 
03.02.21
14:06
Такое себе конечно)))
https://dropmefiles.com/LN5C0
16 Nzzzz
 
03.02.21
15:32
(15) А есть может какое то уведомление? Ну чтобы не сообщением показываать?
17 Nzzzz
 
03.02.21
15:40
С таким кодом, при выделении области вообще не выделается. Точнее я этого не вижу, но снизу время пишется. Если раньше при выделении область выделялась синим, то сейчас ничего не происходит, только снизу время выводит.

Для каждого стрМассива из ПараметрыПеретаскивания Цикл
        ДатаНачала = стрМассива.Начало;
        ДатаОкончания = стрМассива.Конец;
        ОчиститьСообщения();
        Сообщить(Строка((ДатаОкончания-ДатаНачала)/60)+ " мин");
КонецЦикла;
18 SiAl-chel
 
03.02.21
19:44
(17) Тут только читать документацию, экспериментирова, ну и тут написать отчет о том, как решить эту проблему. Я просто с этим объектом раньше не работал, а проводить эксперименты - времени нет.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан