zOs/REXX/ANAPOSMI
$#@
$<~wk.text(rebmiss)
$>~wk.texv(rebmiss)
call sqlConnect dbof
$for i $@[
i = strip($i)
if abbrev(i, 'NEW: ') then $@[
mbr = dsnGetMbr(word(i, 2))
iterate
$]
if \ abbrev(i, 'I - --rebindMiss ') then
call err 'bad line' i
parse value word(i, 4) with co '.' pk ':' ve
r = sql2One( ,
"select collid, name, version, type" ,
", p.validate || p.isolation || p.valid||p.operative vivo",
", p.contoken, p.timestamp, p.timestamp, p.lastUsed" ,
", case when lastUsed>current date-10 days then 'last'",
"when timestamp>current timestamp-7 days then 'creT'",
"when not exists (select 1" ,
"from sysibm.syspackage r" ,
"where r.location=p.location and r.collid=p.collid",
"and r.name = p.name" ,
"and r.timestamp > p.timestamp" ,
"and r.timestamp <= current timestamp - 7 days)",
"then 'new7' else 'no' end doRb",
"from sysibm.sysPackage p",
"where location = '' and collid = '"co"'" ,
"and name = '"pk"' and version = '"ve"'", o, , , '----')
if abbrev(r, '-') then
$$- r mbr co'.'pk'.'ve
else if m.o.collid <> co | m.o.name <> pk | m.o.version <> ve then
$$- m.o.collid'<>'co m.o.name '<>' pk m.o.version '<>' ve
else
$$- m.o.doRb mbr m.o.collid'.'m.o.name'.'m.o.version m.o.type $*+
m.o.vivo m.o.lastUsed m.o.timestamp
$]