Вход | Регистрация
    1  2   
1С:Предприятие :: 1С:Предприятие 8 общая

Монитор готовности заказа - как оповестить пользователя?

Монитор готовности заказа - как оповестить пользователя?
Я
   triviumfan
 
23.04.18 - 14:16
Доброго дня, коллеги!
Конфигурация: Альфа-Авто 4.1
Платформа 8.2

Есть типичная задача по созданию монитора готовности заказа.
В него будут попадать все ЗН за последний час в статусе "закрыт".
Но есть один ньюанс, который нужно знать уже на проектировании - оповещение закрытого заказа!
Есть 2 вида оповещения - 2 минуты мигания или звуковое оповещение.

В голове есть 2 варианта реализации:
1) через табличный документ. Но тут прикол с миганием... нужно найти строку с новым заказом и выполнить "мигание" через цвет текста или фон текста ячейки. Но мне это не особо нравится, т.к. придётся в обработчике ожидания пробегать все строки табличного документа и устанавливать оформление;
2) через html-поле. Но тут не все так просто как кажется, тег <blink> давно не используется, получается, что мне нужно будет писать скрипт на JS... боюсь будут проблемы с отображением страницы ввиду платформы и совместимости ie.

Если делать оповещение звуком.. то есть ли у кого наработки какие с минимальными усилиями? Не хочется скачивать "говорилку" на Гиг и пытаться дружить её с 1с, может есть стандартные средства win10? (типа msspeach) или упрощенное что?
Подскажите, в каком направлении двигаться?
 
 
   Fragster
 
1 - 23.04.18 - 14:18
В этом деле есть один нюанс - слово нюанс пишется без мягкого знака.

Вопрос в том, где этот монитор будет крутиться?
   triviumfan
 
2 - 23.04.18 - 14:21
(1) отдельным сеансом на ТВ в комнате ожидания
   Cool_Profi
 
3 - 23.04.18 - 14:22
Возьми заббикс и читай из него.
   Юрий Лазаренко
 
4 - 23.04.18 - 14:24
(0) Не надо js, можно css использовать
http://shpargalkablog.ru/2013/12/blink-text.html
   Fragster
 
5 - 23.04.18 - 14:24
(2) так зачем там 1с? сделай http сервис, а на тв браузер в полноэкранном режиме, который через js будет дергать данные раз в минуту
   triviumfan
 
6 - 23.04.18 - 14:31
(4) а CSS можно сразу в html запихать? без линков
(5) боюсь, ума не хватит, работал с http-сервисом (а точнее web-сервисом) лишь когда отлаживал ошибки в интеграции ДО с УТ.
   Юрий Лазаренко
 
7 - 23.04.18 - 14:33
(6) Можно, в <head> его клади и юзай.
Сначала, конечно, надо протестировать на платформенном IE, возможно, какие-то css он не поддерживает. Но это в принципе легко решается повышением версии IE (про это полно статей в интернете) или подбором css под нужную версию.
   lEvGl
 
8 - 23.04.18 - 14:33
а что у телевизора системного блока нет?
   Fragster
 
9 - 23.04.18 - 14:34
(6) т.е. вы хотите потратить денег на комп, лицензию на винду, на 1с, запускать по удаленке на этом компе 1с ради информера?
   Fragster
 
10 - 23.04.18 - 14:35
вместо смарт.тв или самой дешевой коробульки на андроиде
 
 Рекламное место пустует
   lEvGl
 
11 - 23.04.18 - 14:42
с этой стороны не подумал.. ну а так если, то давно надо всех бухов и иже с ними на подобный доступ переводить
   triviumfan
 
12 - 23.04.18 - 14:45
(7) боюсь, что на 8.2 не заведётся) щас проверю, но чую ошибку при отображении поля)
(9) я точно не в курсе как происходит техническая часть. А как http-сервис пилится? Это ж надо публиковывать его...
   lEvGl
 
13 - 23.04.18 - 14:55
(9) (0) непонятно, речь ведь идет об 1с, в каком приложении монитор работает? как то знакомые выражения из платформы, не?
"1) через Табличный Документ. Но тут прикол с миганием... нужно найти строку с новым заказом и выполнить "мигание" через цвет текста или фон текста ячейки. Но мне это не особо нравится, т.к. придётся в Обработчике Ожидания пробегать все строки табличного документа и устанавливать оформление;"

как бы не совсем браузер и хтмл?
+ 2 к тому же

все таки системник есть?
   Юрий Лазаренко
 
14 - 23.04.18 - 14:55
(12) Заведется
   Fragster
 
15 - 23.04.18 - 14:59
(11) вот ты ерничаешь, а между тем есть даже целые решения вместо веб клиента 1с, такие как http://www.oknosoft.ru/metadata/
ну а всякие информеры на экраны лепятся на коленке за час.
   triviumfan
 
16 - 23.04.18 - 15:06
(14) у меня даже в хроме не завёлся))
<html>
 <head>
  <title>123</title>
  <style type="text/css">
  #blink {

    -webkit-animation: blink 2.6s linear infinite;
    animation: blink 2.6s linear infinite;
  }
  </style>
 </head>
 <body>
  <p id="blink">Тралала.</p>
 </body>
</html>

   lEvGl
 
17 - 23.04.18 - 15:15
(15) ну я то не против, но судя по контексту описания дело происходит в нашей любимой платформе, а если так, то чем табличное поле не угодило
   triviumfan
 
18 - 23.04.18 - 15:17
(17) Ну, коль с html беда, придётся старый добрый табдок юзать. Но... разве это комильфо цикл по строкам делать и "моргание" пилить? Это ж надо каждую секунду менять цвет поля или фон!
   lEvGl
 
19 - 23.04.18 - 15:19
ТабличноеПоле же
   lEvGl
 
20 - 23.04.18 - 15:21
я за традиции, за классический подход)) всегда в приполученииданных меняли и цвет и шрифт и текст если надо
   Юрий Лазаренко
 
21 - 23.04.18 - 15:27
(16) Ну так ведь стилей нужных нет. Вот так попробуй:

<html>
 <head>
  <title>123</title>
  <style type="text/css">
#blink {
  -webkit-animation: blink 2s linear infinite;
  animation: blink 2s linear infinite;
}
@-webkit-keyframes blink {
  50% { color: rgb(34, 34, 34); }
  51% { color: rgba(34, 34, 34, 0); }
  100% { color: rgba(34, 34, 34, 0); }
}
@keyframes blink {
  50% { color: rgb(34, 34, 34); }
  51% { color: rgba(34, 34, 34, 0); }
  100% { color: rgba(34, 34, 34, 0); }
}
  </style>
 </head>
 <body>
  <p id="blink">Тралала.</p>
 </body>
</html>
   triviumfan
 
22 - 23.04.18 - 15:29
(20) Думал пальцы гнуть и html пилить, ведь там возможностей мульён, но что-то и знаний не хватает, и ограничения платформы дадут знать)
(21) Благодарю! Робит...
   triviumfan
 
23 - 23.04.18 - 15:35
(21) Это не работает на 8.2 =)
   Вафель
 
24 - 23.04.18 - 15:39
вроде мигание и без всяких анимэйшнов можно сделать
   Вафель
 
25 - 23.04.18 - 15:43
text-decoration: blink;
   Юрий Лазаренко
 
26 - 23.04.18 - 15:44
(23) Там в 8.2 более старая версия IE. Надо либо версию подтянуть до 9, либо найти стиль  для IE 6 (или какой он там у вас).
   Вафель
 
27 - 23.04.18 - 15:50
(25) как раз сейчас не поодреживается, а на ie6 наверное в самй раз
   triviumfan
 
28 - 23.04.18 - 15:55
(26) я даже на 8.3.10 проверил - не пашет.
(25) Тоже не пашет
   triviumfan
 
29 - 23.04.18 - 15:56
(27) даже в 8.3.10 не пашет
Можешь попробовать https://yadi.sk/d/ycvLDZSd3UgRVo
Там 2 поля - текстовое и html
   triviumfan
 
30 - 23.04.18 - 15:56
1с и html несовместимы :)
   Юрий Лазаренко
 
31 - 23.04.18 - 16:00
(30) На 1С даже сайты можно делать. Ты просто не все варианты попробовал.
   Вафель
 
32 - 23.04.18 - 16:03
еще можно через js видимость менять по таймеру
   Юрий Лазаренко
 
33 - 23.04.18 - 16:05
(32) Можно не видимость, а цвет текста. Изменение видимости может приводить к изменению размеров соседних элементов и их "дерганью".
 
 
   Вафель
 
34 - 23.04.18 - 16:08
(33) Если внутри дива, то не будет
   Fragster
 
35 - 23.04.18 - 16:09
(34) будет, если у дива нефиксированные размеры
   triviumfan
 
36 - 23.04.18 - 16:20
(32) можно примерчик?)
   Вафель
 
37 - 23.04.18 - 16:23
var visible=true;
setTimeout(function(){
  getElementById("blink").style.color = visible ? 'black' : 'white' ;
visible = !visible
}, 1000)
   Вафель
 
38 - 23.04.18 - 16:24
вернее setInterval
   triviumfan
 
39 - 23.04.18 - 16:27
(37) а какой у него вызов в html будет?
   Вафель
 
40 - 23.04.18 - 16:31
   Вафель
 
41 - 23.04.18 - 16:32
вернее в другую сторону
http://catalog.mista.ru/public/338126/
   triviumfan
 
42 - 23.04.18 - 16:34
   Fragster
 
43 - 23.04.18 - 16:39
document.getElementById
   triviumfan
 
44 - 23.04.18 - 16:42
(43) Да я уже копировал, он всё равно ругается.
В общем, победил)
<html> 
 <head>
<title>123</title>
<script type='text/javascript'>
 function blinker()
    {
        if(document.getElementById("blink"))
        {
            var d = document.getElementById("blink") ;
            d.style.color= (d.style.color=='red'?'black':'red');
            setTimeout('blinker()', 500);
        }
    }
</script>
 </head>
 <body onload="blinker();">
  <p id="blink">Траллацвфвфцв.</p>
 </body>
</html>

   triviumfan
 
45 - 23.04.18 - 16:50
(44) Правда тут ещё цикл нужен по элементам DOM, а то мигает только первый найденный элемент)
   Вафель
 
46 - 23.04.18 - 16:51
(45) jquery подключи
   triviumfan
 
47 - 23.04.18 - 16:53
(46) половина методов JS не пашет, а ты предлагаешь библиотеку?)
   Fragster
 
48 - 23.04.18 - 16:55
я сразу предложил делать это вне поля html, а просто на html страничке
   arsik
 
49 - 23.04.18 - 16:56
Простейшая страница, на сервер скрипт на php + 1С http
 
 Рекламное место пустует
   Fragster
 
50 - 23.04.18 - 16:57
(49) можно на сервер вообще ничего не класть
   triviumfan
 
51 - 23.04.18 - 17:07
(48) "сделай http сервис, а на тв браузер в полноэкранном режиме, который через js будет дергать данные раз в минуту", - можешь немного разжевать как это технически выглядит?
   Юрий Лазаренко
 
52 - 23.04.18 - 17:10
(51) Как http-сервис в 1С, который генерит html-код страницы
   Вафель
 
53 - 23.04.18 - 17:11
(52) Это прошлый век так писать
   Fragster
 
54 - 23.04.18 - 17:16
http сервис, метод генерит генерит данные (для простоты в данном случае - в виде json).
html страница может отдаваться также через http сервис 1с, но может и просто лежать в папке. js со станицы запрашивает данные из http сервиса и визуализирует их, разукрашивая новые, моргая совсем новыми и т.п.
Для работы "от данных" хорошо подходит vuejs, но не обязательно использовать его, вот пример таблички: https://ru.vuejs.org/v2/examples/grid-component.html
   Вафель
 
55 - 23.04.18 - 17:23
(54) и что vue в 1С работает?
   Fragster
 
56 - 23.04.18 - 17:26
(55) а причем тут 1с? 1с только данные отдает в браузер
   lEvGl
 
57 - 23.04.18 - 17:28
(56) упорно делают так что бы и по деньгам "нормально" было и что бы геморрой получить
   lEvGl
 
58 - 23.04.18 - 17:29
все плюсы в кучу
   Fragster
 
59 - 23.04.18 - 17:30
(58) я нифига не понимаю...
   Fragster
 
60 - 23.04.18 - 17:31
т.е. специальный человек, который перезапускает 1с в случае чего вместо секретарши, включающей смарт-тв лучше? ну и постоянно висящее соединение с сервером 1с (лицензия), отсутствие возможности нормально забрендировать, элементы управления 1с совершенно не нужные, вот это всё?
   lEvGl
 
61 - 23.04.18 - 17:31
(59) кого/чего
   Fragster
 
62 - 23.04.18 - 17:32
(91) Родительный падеж
   Вафель
 
63 - 23.04.18 - 17:33
Цена разработки такого решения конечно будет гораздо выше чем просто на 1с
   Fragster
 
64 - 23.04.18 - 17:34
(63) если честно, мы тут уже нафлудили на 2-3 таких решения...
   lEvGl
 
65 - 23.04.18 - 17:34
а, ну такая тема - сделать в 1с что бы через хтмл, то есть ветка до сотни наверно дойдет, что бы разобраться со скриптами и полноценное рабочее место "монитор иваныч" будет
   Fragster
 
66 - 23.04.18 - 17:35
(65) монитор-иваныч, отличное название для сервиса, кстати
   Fragster
 
67 - 23.04.18 - 17:35
можно я его сопру себе?
   lEvGl
 
68 - 23.04.18 - 17:37
)) но по факту будет такой пользак в базе
бери)
   triviumfan
 
69 - 23.04.18 - 17:37
(67) поздно, я уже запатентовал.
Да, ребята, я в думах-раздумьях
   Вафель
 
70 - 23.04.18 - 17:40
Тут тебя толкают встать на путь js разработчика.
Потом на 1с не захочешь возвращаться. мучаться будешь
   Fragster
 
71 - 23.04.18 - 17:45
(70) да, после промисов от одинесных "Новый ОписаниеОповещения" хочется плакать. А если еще покурить babel с webpack, то появится async/await,и становится совсем грустно.
   Вафель
 
72 - 23.04.18 - 17:50
(71) какие промисы?? async/await уже давно в ходу
   Вафель
 
73 - 23.04.18 - 17:51
Хотя я наверно к реакту привык уже, там все настроено и курит ьничео не нужно
   systemstopper
 
74 - 23.04.18 - 17:51
(70) А сам-то чего не спрыгнешь на жс? давно же ковыряешь вроде
   Fragster
 
75 - 23.04.18 - 17:52
(73) для реакта просто дофига чего настраивать нужно, а для небольших вещей на vue пару файлов подключить
   Вафель
 
76 - 23.04.18 - 17:56
(75) ты отстал: create-react-app
   Вафель
 
77 - 23.04.18 - 17:56
(74) сложно сейчас уходить в джуниоры уходить
   Fragster
 
78 - 23.04.18 - 17:57
(ну да, только вместо notepad еще надо nodejs поставить, в командной строке чего-то писать после каждого обновления, потом на условный прод копировать...
   Вафель
 
79 - 23.04.18 - 17:57
(78) ты в нотепаде код пишешь чтоли?
   Вафель
 
80 - 23.04.18 - 17:59
(78) Но если ты хотел бабель подключать, то тоже придется все это делать
   triviumfan
 
81 - 23.04.18 - 17:59
Опять 1сники замечтались...
   Fragster
 
82 - 23.04.18 - 17:59
(79) ну значит еще и ide поставить, кроме 1с :)
я в нетбинз писал в том году последнее для веба, сейчас правлю мелкие вещи в notepad++
если что-то большое надо будет делать, то придется vscode поставить, видимо, а то netbeans издох, а для hidpi поддержка в так и не выпущенной 9 версии, в 8 версии шрифты мутные и не удобно.
   triviumfan
 
83 - 23.04.18 - 18:38
А если оповещение потребуют звуковое?) Может есть готовый вебсервис (бесплатный) или встроенный спичер, который легко интегрируется с 1с?
   Fragster
 
84 - 23.04.18 - 18:42
   rphosts
 
85 - 23.04.18 - 18:49
Жесть! Дожили до того, что чел не знает ничего кроме 1С даже в общих чертах и пытается решить всё средствами 1С!
   triviumfan
 
86 - 23.04.18 - 20:40
Причем тут тег аудио. Нужно передавать строку и получать звуковой файл.
   triviumfan
 
87 - 23.04.18 - 20:41
(85) wtf?!
   Fragster
 
88 - 23.04.18 - 23:01
(86) тогда ищи по словам html javascript tts
   Fragster
 
89 - 23.04.18 - 23:03
   Юрий Лазаренко
 
90 - 23.04.18 - 23:09
(53) Для монитора достаточно. Данных мало, нагрузки никакой.
   triviumfan
 
91 - 24.04.18 - 07:18
Вчера нашёл 2 веб-сервиса синтеза речи: yandex speechkit и voicerss.
Реализация в пару строк кода:
    ВременныйФайл = ПолучитьИмяВременногоФайла("mp3");
    Соединение = Новый HTTPСоединение("api.voicerss.org");
    Запрос     = Новый HTTPЗапрос("?key="+КлючAPI+"&hl=ru-ru&src="+СтрЗаменить(СтрокаТекста, " ", "%20"));
    Ответ      = Соединение.Получить(Запрос, ВременныйФайл);
    Если Ответ.КодСостояния <> 200 Тогда
        Сообщить("Возникла ошибка. Код ответа сервера " + Ответ.КодСостояния);
    Иначе
        ЗапуститьПриложение(ВременныйФайл);
    КонецЕсли;

Но, разумеется, нужно платить за нормальный ключ без ограничений и коммерческую составляющую.
Все остальные "говорилки" по мне оказались полным говном, с такой фонетикой они только уши режут. Сама 1с вроде как рекомендует nvda. Правда я не вижу никакой интеграции. При первом запуске она читает все, на что наводишь курсор) Программной работы с ней я не нашёл.
   triviumfan
 
92 - 24.04.18 - 08:59
Может у кого-то уже есть что-то похожее и бесплатно?)
   Vladal
 
93 - 24.04.18 - 09:55
(0) Я выводил форму оповещения в виде прикрепленной к краю панели. Там и моргал всем, чем хотел. А что не моргало, заставлял моргать.
   triviumfan
 
94 - 24.04.18 - 10:49
(93) оригинально хД
   Fragster
 
95 - 24.04.18 - 10:56
(92) LOL
   triviumfan
 
96 - 24.04.18 - 11:02
(95) в смысле все платно?)
   lEvGl
 
97 - 24.04.18 - 11:35
(96) ну там библиотеки стоят не так дорого, где то видел 70-80$. зато купил раз и можно везде юзать, не только на мониторе
   Fragster
 
98 - 24.04.18 - 11:54
(97) так ведь "юзать" тоже платно, погромисты не бесплатные
   lEvGl
 
99 - 24.04.18 - 12:03
а электричество, а сервис-менеджеры - все это стоит денег
но мы то знаем, за чей счет банкет
как счастлив и платежеохотен клиент, когда слышит голос "кати, алены или юрия"
   lEvGl
 
100 - 24.04.18 - 12:05
+99 катя алена - смотрел синтезаторы, так называют голоса, кстати есть совсем бесплатные варианты, правда не углублялся - апи есть нет не увидел
https://nvda.ru/
100
  1  2   

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует