Вверх ↑
Этот топик читают: Гость
Ответов: 182
Рейтинг: 14
#1: 2020-10-20 23:03:34 ЛС | профиль | цитата
Приветствую умные головы.
Пришла тут идея блокировать программу написанную в Hiasmi, по 12 часовому графику смен с 7:30 до 19:30 и 19:30 до 7:30, определенной бригады.
То есть в определенные дни и часы программа вырубается и не запускается.
Возможно такое сделать?
карма: 0

0
Ответов: 8921
Рейтинг: 823
#2: 2020-10-21 01:09:22 ЛС | профиль | цитата
Stalevar, шихта по расчёту?
Заготовку приложил. Время работы в StrList.
Первая колонка -- День недели, вторая -- Время. Это начало работы
Третья колонка -- День недели, четвёртая -- Время. Это окончание работы
"1" -- Понедельник, 2--Вторник...
Время в долях суток, 7:30 = (7*3600 + 30*60)/86400 = 0.3125, например:
3;0.8125;4;0.3125 -- начинаем в 19:30 среды, заканчиваем 7:30 четверга.
Заготовка


Add(MainForm,2953706,161,105)
{
link(onCreate,10635605:doEvent1,[])
}
Add(Time,3050763,294,56)
{
Time_Date=1
Format="W"
Point(DateTime)
}
Add(Timer,5933353,238,126)
{
Interval=30000
Enable=1
link(onTimer,16002078:doWork2,[])
}
Add(Hub,10635605,203,119)
{
link(onEvent1,16002078:doWork1,[(277,125)])
link(onEvent2,5933353:doTimer,[])
}
Add(StrList,615605,350,56)
{
Strings=#17:1;0.3125;1;0.8125|17:3;0.8125;4;0.3125|18:5;0.3125;5;0.8125 |
}
Add(MathParse,4174473,294,126)
{
MathStr="%1 + frac(%2)"
link(onResult,6234702:doEnum,[])
link(X1,3050763:FormatTime,[])
link(X2,3050763:DateTime,[])
}
Add(HubEx,16002078,273,126)
{
link(onEvent,4174473:doCalc,[])
}
Add(ArrayEnum,6234702,343,126)
{
link(onItem,8908942:doSplit,[])
link(Array,615605:Array,[(349,110)(370,110)])
}
Add(MultiStrPart,8908942,406,126)
{
Count=4
link(onSplit,16073842:doCalc,[(445,132)(445,146)(396,146)(396,195)])
}
Add(MathParse,16073842,406,189)
{
MathStr="%1 + frac(%2)"
link(onResult,16093291:doCompare,[])
link(X1,8908942:Part1,[])
link(X2,8908942:Part2,[])
}
Add(MathParse,14874395,504,189)
{
MathStr="%1 + frac(%2)"
link(onResult,731921:doCompare,[])
link(X1,8908942:Part3,[(510,173)(426,173)])
link(X2,8908942:Part4,[(517,166)(433,166)])
}
Add(If_else,16093291,455,189)
{
Type=1
link(onTrue,14874395:doCalc,[])
link(Op1,2919603:Var2,[])
}
Add(If_else,731921,553,189)
{
Type=2
link(onTrue,2953706:doClose,[(592,195)(592,230)(151,230)(151,132)])
link(Op1,2919603:Var3,[(559,180)])
}
Add(GetDataEx,2919603,455,175)
{
Angle=3
link(Data,4174473:Result,[(300,180)])
}

карма: 19

1
Голосовали:Stalevar
Ответов: 182
Рейтинг: 14
#3: 2020-10-21 06:44:24 ЛС | профиль | цитата
Леонид, шихту так и не осилил, вернусь еще к ней
А график на год к примеру можно куда засунуть?
День недели не нужно.

карма: 0

0
Ответов: 16884
Рейтинг: 1239
#4: 2020-10-21 08:58:33 ЛС | профиль | цитата
Планировщик заданий в любой Винде.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 182
Рейтинг: 14
#5: 2020-10-21 18:50:38 ЛС | профиль | цитата
Tad писал(а):
Планировщик заданий в любой Винде.

В Hiasm не как?
карма: 0

0
Ответов: 8921
Рейтинг: 823
#6: 2020-10-21 19:37:49 ЛС | профиль | цитата
Stalevar, пример: https://forum.hiasm.com/getfile/39162
Сам график в *.ini файле, при заполнении придерживаться такого же формата.
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#7: 2020-10-21 19:41:16 ЛС | профиль | цитата
Stalevar писал(а):
В Hiasm не как?
Запросто. Если делать нечего, то пишешь свой "Планировщик заданий" на HiAsm.

--- Добавлено в 2020-10-21 20:04:21

Леонид, отработало doClose и ...

Редактировалось 1 раз(а), последний 2020-10-21 20:04:21
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 5227
Рейтинг: 587
#8: 2020-10-21 20:06:56 ЛС | профиль | цитата
Tad, не смешно, заведи учётку юзера и тренируйся до усери своим планировщиком
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 8921
Рейтинг: 823
#9: 2020-10-21 20:32:21 ЛС | профиль | цитата
Tad писал(а):
отработало doClose и ...

И закрылась на фиг (см ТЗ)
карма: 19

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#10: 2020-10-22 02:38:28 ЛС | профиль | цитата
Stalevar писал(а):
В Hiasm не как?

Кто мешает использовать стандартную команду планировщика Wind'ы -- SCHTASKS с набором ключей и параметров через компонент WinExec?

Редактировалось 1 раз(а), последний 2020-10-22 02:38:42
карма: 22

0
Ответов: 182
Рейтинг: 14
#11: 2020-10-22 20:02:59 ЛС | профиль | цитата
Леонид Спасибо за помощь и понимание.
Леонид, а как вы ini файл заполняли, в ручную?


Редактировалось 2 раз(а), последний 2020-10-22 20:03:54
карма: 0

0
Ответов: 8921
Рейтинг: 823
#12: 2020-10-22 22:40:45 ЛС | профиль | цитата
Stalevar, ну что вы "вручную", цикл из 8-дней, два раза днём, два выходных, два в ночь и два выходных, совсем маленькая программка, не стоящая и сохранения
Да и приходилось работать в смену, причём с разными периодами, 3х8 часов + выходной, и 4х8 + два выходных, и 4х6 часов + выходной, разные графики. Но 2 дня по 12 часов -- это нарушение трудового законодательства, правда не знаю, есть-ли оно сейчас
карма: 19

0
Ответов: 182
Рейтинг: 14
#13: 2020-10-23 10:23:21 ЛС | профиль | цитата
Леонид У нас график день, ночь, отсыпной, выходной.
21.10.2020;7:30;21.10.2020;19:30 - день
22.10.2020;19:30;23.10.2020;7:30 - ночь
25.10.2020;7:30;25.10.2020;19:30 - день
26.10.2020;19:30;27.10.2020;7:30 - ночь
карма: 0

0
Ответов: 182
Рейтинг: 14
#14: 2020-10-23 15:02:33 ЛС | профиль | цитата
Понять не могу, почему Time в real формате выдает 2019 год?

Add(MainForm,2953706,21,105)
{
link(onActivate,124608:doText,[(142,111)(142,153)])
}
Add(Time,2411568,224,77)
{
Time_Date=1
Format="D.M.Y"
Point(DateTime)
}
Add(Edit,124608,231,147)
{
Left=105
Top=120
Width=165
link(onChange,2661268:doText,[(275,153)(275,191)(193,191)(193,209)])
link(Str,2411568:DateTime,[])
}
Add(Edit,2661268,210,203)
{
Left=105
Top=85
Width=165
link(Str,2411568:FormatTime,[(216,131)(230,131)])
}

карма: 0

0
Ответов: 16884
Рейтинг: 1239
#15: 2020-10-23 15:49:20 ЛС | профиль | цитата
Stalevar писал(а):
почему Time в real формате выдает 2019 год?
Как узнал?

Редактировалось 1 раз(а), последний 2020-10-23 15:57:48
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)