posting_pdl.py
2.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
keybend = '2084_'
if request.session['posted']==0:
row_skp = SipkdSkp()
row_skp.unitkey = SipkdUnit.get_key_by_kode(row.unit_kd)
row_skp.noskp = "%s/%s" % (row.kode, row.ref_kode)
row_skp.kdstatus = '70'
row_skp.keybend = keybend
row_skp.idxkode = '1' #pendapatan
row_skp.kenaikan = 0
row_skp.npwpd = row.npwpd[-10:]
row_skp.tglskp = row.tgl_tetap
row_skp.penyetor = row.nama
row_skp.alamat = row.alamat
row_skp.uraiskp = row.rekening_nm
row_skp.tgltempo = row.jth_tempo
#row_skp.tglvalid = datetime.now()
row_skp.bunga = row.denda+row.bunga
SipkdDBSession.add(row_skp)
SipkdDBSession.flush()
if row.pokok>0:
row_skpdet = SipkdSkpDet()
row_skpdet.unitkey = row_skp.unitkey
row_skpdet.noskp = row_skp.noskp
row_skpdet.nilai = row.pokok
row_skpdet.mtgkey = SipkdRek4.get_key_by_kode(row.rekening_kd)
row_skpdet.nojetra = '11' #Penerimaan STS/TBP
SipkdDBSession.add(row_skpdet)
SipkdDBSession.flush()
row_skp.tglvalid = row_skp.tglskp
SipkdDBSession.add(row_skp)
SipkdDBSession.flush()
row.posted = 1
DBSession.add(row)
DBSession.flush()
else:
unitkey = SipkdUnit.get_key_by_kode(row.unit_kd)
noskp = "%s/%s" % (row.kode, row.ref_kode)
row_skpdet = SipkdDBSession.query(SipkdSkpDet).\
filter_by(unitkey = unitkey,
noskp = noskp).delete()
SipkdDBSession.flush()
row_skp = SipkdDBSession.query(SipkdSkp).\
filter_by(unitkey = unitkey,
noskp = noskp).delete()
SipkdDBSession.flush()
row.posted = 0
DBSession.add(row)
DBSession.flush()