referensi.py
3.57 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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
from datetime import datetime
from sqlalchemy import (
Column,
Integer,
Text,
DateTime,
ForeignKey,
UniqueConstraint,
ForeignKeyConstraint,
String,
SmallInteger,
Float,
)
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm.exc import NoResultFound
from sqlalchemy.orm import (
relationship,
backref
)
from ..models import SipkdBase, SipkdDBSession, TABLE_ARGS
class DaftUnit(SipkdBase):
__tablename__ = 'daftunit'
unitkey = Column(String(10), primary_key=True)
kdlevel = Column(String(2))
kdunit = Column(String(30))
nmunit = Column(String(200))
akrounit = Column(String(30))
alamat = Column(String(200))
telepon = Column(String(20))
type = Column(String(2))
__table_args__ = TABLE_ARGS
@classmethod
def get_key(cls, kdunit):
row = SipkdDBSession.query(cls.unitkey).filter_by(kdunit = kdunit).first()
return row and row[0] or None
class JenisPajak(SipkdBase):
__tablename__ = 'jpajak'
pjkkey = Column(String(10), primary_key=True)
kdpajak = Column(String(10))
nmpajak = Column(String(50))
rumuspjk = Column(String(100))
__table_args__ = TABLE_ARGS
class Bank(SipkdBase):
__tablename__ = 'daftbank'
kdbank = Column(String(2), primary_key=True)
nmbank = Column(String(50))
akbank = Column(String(20))
alamat = Column(String(200))
telepon = Column(String(20))
cabang = Column(String(50))
__table_args__ = TABLE_ARGS
class Pegawai(SipkdBase):
__tablename__ = 'pegawai'
nip = Column(String(30), primary_key=True)
kdgol = Column(String(10))
unitkey = Column(String(10))
nama = Column(String(100))
alamat = Column(String(200))
jabatan = Column(String(200))
pddk = Column(String(30))
__table_args__ = TABLE_ARGS
class Bendahara(SipkdBase):
__tablename__ = 'bend'
keybend = Column(String(10), primary_key=True)
jns_bend = Column(String(2))
nip = Column(String(30), ForeignKey(Pegawai.nip))
kdbank = Column(String(2), ForeignKey(Bank.kdbank))
unitkey = Column(String(10))
jab_bend = Column(String(100))
rekbend = Column(String(100))
saldobend = Column(Float)
NPWPbend = Column(String(30))
tglstopbend = Column(DateTime(timezone=False))
saldobendt = Column(Float)
pegawai = relationship("Pegawai", backref=backref("bendahara"))
bank = relationship("Bank", backref=backref("bendahara"))
__table_args__ = TABLE_ARGS
@classmethod
def get_key(cls, unitkey, nip):
row = SipkdDBSession.query(cls.keybend).filter_by(unitkey = unitkey,
nip = nip).first()
return row and row[0] or None
class Vendor(SipkdBase):
__tablename__ = 'daftphk3'
kdp3 = Column(String(10), primary_key=True)
nmp3 = Column(String(100))
nminst = Column(String(100))
norcp3 = Column(String(50))
nmbank = Column(String(50))
jnsusaha = Column(String(50))
alamat = Column(String(200))
telepon = Column(String(20))
NPWP = Column(String(30))
unitkey = Column(String(10))
__table_args__ = TABLE_ARGS
# /****** Script for SelectTopNRows command from SSMS ******/
# SELECT TOP 1000 [KEYBEND]
# FROM [V@LID49V6_2015].[dbo].[BEND]
# SELECT TOP 1000 [KDP3]
# ,[NMP3]
# ,[NMINST]
# ,[NORCP3]
# ,[NMBANK]
# ,[JNSUSAHA]
# ,[ALAMAT]
# ,[TELEPON]
# ,[NPWP]
# ,[UNITKEY]
# FROM [V@LID49V6_2015].[dbo].[DAFTPHK3]