In [2]:
from adabas.api import *
from adabas.datamap import *
a=Adabas(rbl=256,fbl=64,sbl=32,vbl=128,ibl=0)
a.cb.dbid=12
a.cb.fnr=11
In [24]:
a.cb.isn=0
try:
for c in xrange(10):
a.fb.value='AQC,002,B.'
a.readByIsn(getnext=1)
if a.rb.value:
aqc=int(a.rb.value.encode('hex') )
a.fb.value='ARL1,002,B.'
a.get(isn=a.cb.isn)
aql=int(a.rb.value.encode('hex') )
exec ("row = Datamap('Rows', {})".format("String('ar{}', {l})," * aqc).format(*range(1,aqc+1), l=aql))
print '{:08} - occurs {} times'.format(a.cb.isn, aqc)
row.buffer = a.rb
a.fb.value='AR1-{}.'.format(int(aqc))
a.get(isn=a.cb.isn)
print eval("'{:08} {}'.format({})".format(a.cb.isn, '- {} ' * aqc, ('row.ar{}, '* aqc).format(*range(1,aqc+1))))
except DataEnd:
print 'acabou'
In [10]:
a.cb.isn=201
a.fb.value='ARL1,2,B.'
a.get(isn=201)
a.rb.value.encode('hex')
Out[10]:
In [ ]:
In [ ]:
print '{} - {}'.format(a.rb.value[:8],
date.fromordinal(int(a.rb.value[10:])-364))
In [ ]:
data =date(1956,06,24)
toord = data.toordinal()
toord
In [ ]:
datan =date(1955,06,26)
toordn = datan.toordinal()
toordn
In [ ]:
toord - toordn
In [ ]:
datetime.datetime.toordinal(datetime.datetime.today())
In [ ]:
datetime.datetime.date(736487)