Вход | Регистрация

  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   

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