PŘEVOD DAT z DB2 UDB/iSeries (AS/400)
Nabízíme převod datové základny na jiné platformy do databází (ORACLE, MS SQL Server, DB2...)
Hledáme vývojáře JAVA, vývojáře COBOL/iSeries
Podrobnější popis požadavků na JOB.ASSIST.CZ
Workshopy
K většině kurzů z naší nabídky nebo podle Vašich požadavků.
Kurzy na míru
Nabízíme Vám možnost složit si kurz podle Vašich požadavků.
Volná kapacita
Volná programátorská kapacita - zkušení programátoři systému AS/400
Jistě víte, že jedním z RUN atributů popisu úlohy je ROUTING STEP - program řídícího kroku
úlohy. Je definován pro daný subsystém v tabulce Routing Entries a aktivuje se u všech úloh,
které jsou inicializovány pod tímto subsystémem. Jeho základní vlastnosti je mimo jiné , že se mu předá
řízení vždy, když se aktivuje úloha v subsystému. Defaultně u standardních subsystémů je to
varianta programu QCMD (command processor) pro různá prostředí.
Popis problému:
V produktu 5722DG1 - IBM HTTP Server, jsme nebyli schopni předefinovat nikde v popisech pro úlohu
(*JOBD) parametr Sort Sequence Table pro korektní třídění v češtině. Což se bohužel stává u některých produktů
naportovaných do i5/OS z prostředí AIX . Úlohy pod QHTTPSVR subsystémem
navíc v systému vznikají náhodně (když se nějaký klient z internetu odkáže na vaší doménu),
takže lze velmi těžko měnit atributy aktivních úloh nějak programově např. pomocí API.
Řešení problému:
Chtěli jsme tedy modifikovat úlohu hned při jejím vzniku, když dostane řízení tzv. Routing step program.
Využili jsme vlastnosti programu definovaného jako Routing Step tak, že jsme vytvoříli svůj
vlastní program HTTPATTR pro řízení kroku úlohy, změnili jsme příslušně popis subsystému QHTTPSVR tak, že jsme
referovali místo programu QCMD námi vytvořený program. Jeho hlavní funkcí byla změna atributů právě
(náhodně) vzniklé úlohy příkazem CHGJOB... a dále samozřejmě modifikace úlohy tak aby se obnovil
standardní stav tj. aby se řídícím krokem ůlohy opět stal program QCMD. Toho lze jednoduše dosáhnout
předáním řízení pomocí příkazu TFRCTL(předání řízení jinému programu a zrušení vazeb v Call Stack Area).
Příklad programu:
HTTPATTR: PGM
CHGJOB SRTSEQ(QSYS/QLA20366S) +
CCSID(870) +
LANGID(CSY) +
CNTRYID(CZ)
TFRCTL PGM(QCMD)
ENDPGM
DSPSBSD SBSD(QHTTPSVR/QHTTPSVR)
volba 7. Routing entries
Seq Nbr Program Library Compare Value
9 HTTPATTR VYSLIB 'HTTPWWW'
10 QCMD QSYS *ANY
Další tipy a novinky pro vývojáře budou průbežně doplňovány.