Batch taszt kérdés

9 views
Skip to first unread message

Tisch Dávid

unread,
Dec 15, 2017, 10:51:19 AM12/15/17
to magic-...@googlegroups.com

Sziasztok!

Van egy batch taszkom, amit sokszor egymás után meg kell hívnom, és mindig a taszk dönti el, hogy végez-e érdemi munkát vagy sem. (Nem lehet a hívást feltételekhez kötni.) A taszk a task prefixben számol számol ezt-azt, aztán bizonyos esetekben nem megy tovább. Ezt eddig úgy oldottam meg, hogy az end task condition-be betettem a feltételeket és "before record prefix"-re tettem a feltétel kiértékelésének helyét. Ezzel az a bajom, hogy sok, nagyméretű táblából áll a rekordnézet, ami miatt az első rekord betöltésének ideje kb. 0,8 mp, vagyis tömeges hívás esetén majdnem 1-1 mp-et "fölöslegesen" várunk a taszkra, ami tetemes időveszteség.

Mit lehetne tenni? Tegyek egy exit-et a task prefix végére az end task condition-nel? Hogyan lehetne elérni, hogy a rekordokat már be se töltse, hanem rögtön kiszálljon, ha nem kell munkát végeznie? Van erre valami bevált megoldásotok?

Segítségeteket előre is köszönöm!
Üdvözlettel:

Dávid


Smohai Ferenc

unread,
Dec 15, 2017, 1:31:41 PM12/15/17
to magic-...@googlegroups.com
Kedves Dávid!

Miért nem lehet feltételekhez kötni a taszk hívását?

Az nem lehet megoldás, hogy fölé teszel egy szülő taszkot Yes After-rel, és ebben, vagy ennek egy másik altaszkjában számoltatsz ezt-azt, és a feltétel teljesülése esetén hívod az eredeti taszkot?

Üdvözlettel
Smohai Feri


--
Azért kapta ezt az üzenetet, mert feliratkozott a Google Csoportok „Magic Support Levelezőlista” csoportjára.
Az erről a csoportról és az ahhoz kapcsolódó e-mailekről való leiratkozáshoz küldjön egy e-amailt a(z) magic-support+unsubscribe@googlegroups.com címre.
Ha üzenetet szeretne küldeni ebbe a csoportba, küldjön e-mailt a(z) magic-...@googlegroups.com címre.
A csoportot a(z) https://groups.google.com/group/magic-support címen keresheti fel.
További lehetőségekért látogasson el ide: https://groups.google.com/d/optout.

Tisch Dávid

unread,
Dec 15, 2017, 2:43:41 PM12/15/17
to magic-...@googlegroups.com

Kedves Apa, Gábor és Feri! :)

Köszönöm a válaszokat!

1. Azért nem "lehet" feltételhez kötni a hívást, mert egy teljesen önálló működést megvalósító komponens batch taszkjáról van szó, és a végrehajtás a komponens belső állapotától függ. Ezért azt gondolom, hogy nagyon sérülékennyé válna a kód, ha a komponensnek ezt a belső állapotát mind a 30-40 helyen, ahonnan kívülről hívjuk, lekérdezném és kiértékelném. Ha ugyanis változik a kiértékelési logika, akkor ezeket az "outsource"-olt kódokat kéne módosítani, amit nem szeretnék.

2. Bocs, Gábor, de ez most tényleg nem jutott eszembe! :\ Mostanában sokat C++ -ozom, és valahogy az ilyen Magic-es trükkök kezdnek kikopni az ujjamból. Mindenáron egy taszk prefix utáni kikényszerített kiszálláson járt az eszem. Több tucat taszkról van szó egyébként, amiknek a többsége már most is több mélységű, és most ezért a marhaságért még tovább tördelni őket...

Köszi, ez lesz a megoldás egyébként! Azt az 1-2-t, ami a legkritikusabb, átlapátolom, aztán a többit apránként.

Köszönöm a segítségeteket!
Nyugodt, békés napokat kívánok Nektek az év hátralévő részére!
Üdv:

Dávid

Reply all
Reply to author
Forward
0 new messages