עבור לתוכן
Magic DevHub
ishay

איך אפשר בפשטות לגרום לכך שעמדה עם מג'יק שלא פעילה X זמן . . תצא בחוץ..?

Recommended Posts

שלום

האם יש דרך פשוטה לגרום לכך שעמדה שלא פעילה מעל X זמן, תצא בחוץ ??

אני לא מצליח לחשוב על דרך פשוטה שתבצע זאת.

תודה,

ישי

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

שלום ישי,

ניתן לבצע זאת באמצעות פונקצית IDLE.

בתוכנית ראשית מגדירים אירוע זמן שבודק האם Idle()/10>X, כאשר X - מספר שניות של חוסר פעילות. במידה וכן, יש לבצע אירוע "יציאה ממערכת".

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

המון תודה,

לא הייתי מודע לפונקציה הזאת.

זה ממש יפה. תודה.

יש פקודה שמטפלת גם בעכבר ? ה IDLE מתייחס רק להקשות מקלדת..

ישי

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

אני הוספתי תכנית שמוקפצת לאחר זמן של חוסר פעילות

התוכנית מקפיצה חלון שסופר 30 שניות לאחור אם אופציה של ביטול

בסיום הספירה התוכנית סוגרת את המגי'ק באופן אוטומטי

כך גם מי שחוסר הפעילות אצלו, נובע מצפיה, לא נפגע מהסגירה האוטומטית

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

רעיון התוכנית לפני הסגירה הוא יפה.

אבל חשבתי על בעיה אחרת :

יש במערכת מס' דוחות/תהליכים שרצים בלילות מס' שעות רב.

אם אני אבצע את הסיום לפי IDLE היישום יעוף מבלי שסיים את הפעולה.

(כמובן אפשר להוסיף למס' דוחות/תהליכים סוויץ שיטפל ב IDLE,אבל זה לא אלגנטי)

אין כמו משהו של IDLE שבודק אם יש תגובה ביישום עצמו (הקשת עכבר או תהליך שרץ וכו ..)

אין אפשרות לבדוק האם המג'יק ריצה היה פעיל X זמן ?

ישי

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

שוב, האופן הפשוט הוא להפעיל את תכנית הסגירה האוטומטית בתנאי נוסף

{שדה מקומי (שנמצא בתכנית הראשית) = TRUE}

בתחילת הרצת דו"ח, אתה מוסיף עדכון לשדה המקומי (FALES)

ובסיום הדו"ח אתה מחזיר את השדה הנ"ל ל TRUE

מקווה שהסברתי את העניין

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

בהקשר לדברים המלומדים כאן אני רוצה לומר שנתקלתי בכל הבעיות האמורות אך יש עוד בעיה:

לעתים אנשים נתקעים על מצב שגיאה (שבה צריך F2 כדי להשתחרר) ובמצב כזה המסך נשאר. במקרה כזה הארוע לא פועל. עוד דבר, כאשר מנסים לפתוח את מסך הפתיחה של מג'יק (USER וסיסמא), ונשארים עליו ללא סוף, גם אז הארועים לא מאפשרים יציאה כי האפליקציה למעשה טרם נפתחה. לדעתי, טוב יהיה אם מג'יק יגדירו בהגדרות כמה זמן יינתן לTIMEOUT בכניסה!

Thats all folks

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

היי

אני שוב אומר, מבחינתי הבעיה של IDLE שהיא בודקת רק הקשה על מקלדת.

יש המון דוחות והמון תהליכים, שאני לא רוצה שיעופו אחרי X זמן.

אני גם לא יכול לשבת ולשים בהם סוויץ' שיבטל את הפעלת סגירת היישום, כי מדובר בהרבה דוחות

ותהליכים, ועכשיו למצוא אותם ולדעת בדיוק מה מריצים זה סיפור.

בגלל זה חשבתי , למה אין כמו IDLE אבל רק ברמת מערכת של מג'יק.

שאם כלום לא זז במסך (לא תהליך BATCH לא עכבר ולא מקלדת) אז יידלק הסוויץ'

זה לדעתי יהיה הרבה יותר חכם ושמיש.

ישי

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

האפליקציה שמריצה תהליכי אצווה בלילות כנראה רצה ברקע (?). אז אפשר להתנות את היציאה ממערכת ע"י פונקציה Runmode.
במידה ולא, לתת לאפליקציה שם שונה מאפליקצית ה Client/Server (שם ברשימת האפליקציות ב INI, שם קובץ ה CTL יהיה זהה). כך אפשר להתנות את היציאה בפונקציה SYS. 

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

בפשטות,

ניתן לבדוק אם level(1)<>'' או ע"י depth()>1

בקיצור האם ישנו תהליך כלשהו שפעיל במערכת

כמובן כל זה בתנאי שתכנית היציאה הוגדרה כרוטינה עצמאית הנקראת מאירוע מערכתי תלוי זמן

שתף אשכול


קישור ישיר להודעה
שתף באתרים אחרים

התחבר או הרשם על מנת להגיב.

עליך להיות משתמש רשום על מנת להגיב

צור חשבון

צור חשבון חדש בקהילה בקלי קלות.

רישום חשבון חדש

התחבר

משתמש קיים? התחבר.

התחבר עכשיו

×