Deps updates, handle more tables + LK code
This commit is contained in:
parent
f649b5f953
commit
5fe140714e
14 changed files with 583 additions and 79 deletions
|
|
@ -26,10 +26,11 @@ logger.info("Reading Jeeves DB structure")
|
|||
|
||||
meta = MetaData()
|
||||
try:
|
||||
meta.reflect(bind=db.raw.connection(),
|
||||
only=['ar', 'ars', 'xae', 'xare', 'fr', 'kus', 'x1k',
|
||||
meta.reflect(bind=db.raw_session.connection(),
|
||||
only=['ar', 'ars', 'arsh', 'arean', 'xae', 'xare', 'fr', 'kus', 'x1k',
|
||||
'oh', 'orp', 'lp', 'vg', 'xp', 'xm', 'prh', 'prl',
|
||||
'kp', 'kpw', 'cr', 'X4', 'xw', 'X1'])
|
||||
'kp', 'kpw', 'cr', 'X4', 'xw', 'X1',
|
||||
'JAPP_EWMS_Item_Replenishment_Levels'])
|
||||
except OperationalError as e:
|
||||
logger.error("Failed to read Jeeves DB structure")
|
||||
raise e
|
||||
|
|
@ -194,3 +195,6 @@ def receive_attribute_instrument(cls, key, inst):
|
|||
"listen for the 'attribute_instrument' event"
|
||||
|
||||
install_validator_listner(cls, key, inst)
|
||||
|
||||
|
||||
db.set_model_class(RawBaseModel)
|
||||
|
|
|
|||
|
|
@ -52,3 +52,5 @@ class LengthValidator():
|
|||
state.__class__.__name__, state.__class__._map_columns(self.col_name),
|
||||
len(value), self.max_length))
|
||||
return value
|
||||
|
||||
# Add more validators, such as type for ints.
|
||||
|
|
|
|||
|
|
@ -67,8 +67,8 @@ class ArticleUnit(RawBaseModel):
|
|||
|
||||
ArtNr = Column(String, ForeignKey('ar.ArtNr'), primary_key=True)
|
||||
|
||||
AltEnhetKod = Column(Integer, ForeignKey('xae.AltEnhetKod'), primary_key=True)
|
||||
ArticleAlternativeUnit = relationship(ArticleAlternativeUnit)
|
||||
AltEnhetKod = Column(String, ForeignKey('xae.AltEnhetKod'), primary_key=True)
|
||||
ArticleAlternativeUnit = relationship(ArticleAlternativeUnit, lazy='joined')
|
||||
|
||||
|
||||
class ArticleBalance(RawBaseModel):
|
||||
|
|
@ -89,6 +89,30 @@ class ArticleBalance(RawBaseModel):
|
|||
ArtNr = Column(Integer, ForeignKey('ar.ArtNr'), primary_key=True)
|
||||
|
||||
|
||||
class ArticleEAN(RawBaseModel):
|
||||
__tablename__ = 'arean'
|
||||
__column_map__ = {'ArtNrEAN': 'EAN', 'ArtNr': 'ArticleNumber'}
|
||||
__to_dict_only__ = ('ArtNr', 'ArtNrEAN', 'ArticleUnit')
|
||||
|
||||
ArtNr = Column(String, ForeignKey('ar.ArtNr'), primary_key=True)
|
||||
ArtNrEAN = Column(String, primary_key=True)
|
||||
AltEnhetKod = Column(String, ForeignKey('xare.AltEnhetKod'))
|
||||
|
||||
ArticleUnit = relationship(ArticleUnit, lazy='joined')
|
||||
|
||||
|
||||
class ArticleShelf(RawBaseModel):
|
||||
__tablename__ = 'arsh'
|
||||
__column_map__ = {'LagPlats': 'Shelf',
|
||||
'LagStalle': 'WarehouseID',
|
||||
'JAPP_EWMS_zoneid': 'WMSZoneID',
|
||||
'ArtNr': 'ArticleNumber'}
|
||||
__to_dict_only__ = ('LagPlats', 'LagStalle', 'JAPP_EWMS_zoneid', 'ArtNr')
|
||||
|
||||
LagPlats = Column(String, ForeignKey('ar.ArtNr'), primary_key=True)
|
||||
LagStalle = Column(String, ForeignKey('ar.ArtNr'), primary_key=True)
|
||||
|
||||
|
||||
class VATRate(RawBaseModel):
|
||||
__tablename__ = 'X1'
|
||||
__column_map__ = {'MomsKod': 'VATID', 'MomsSats': 'VATRate'}
|
||||
|
|
@ -200,12 +224,12 @@ class Article(RawBaseModel):
|
|||
except TypeError:
|
||||
logger.debug("NoneType error, %s" % self.ArtNr)
|
||||
|
||||
@classmethod
|
||||
def _base_filters(self, obj):
|
||||
return RawBaseModel._base_filters(
|
||||
obj,
|
||||
and_(obj.ItemStatusCode == 0)
|
||||
)
|
||||
# @classmethod
|
||||
# def _base_filters(self, obj):
|
||||
# return RawBaseModel._base_filters(
|
||||
# obj,
|
||||
# and_(obj.ItemStatusCode == 0)
|
||||
# )
|
||||
|
||||
|
||||
class ContactInformationType(RawBaseModel):
|
||||
|
|
@ -535,3 +559,16 @@ class OrderItem(RawBaseModel):
|
|||
pers_sign=self['PersSign']).callproc()
|
||||
self['OrdRadNr'] = row_no
|
||||
return self
|
||||
|
||||
|
||||
class ItemReplenishmentLevels(RawBaseModel):
|
||||
# __table_args__ = {'mssql_autoincrement': False, 'extend_existing': True}
|
||||
# __table_args__ = {'implicit_returning': False, 'extend_existing': True}
|
||||
__tablename__ = 'JAPP_EWMS_Item_Replenishment_Levels'
|
||||
__column_map__ = {'ArtNr': 'ArticleNumber', 'LagPlats': 'Shelf', 'LagStalle': 'WarehouseID'}
|
||||
__to_dict_only__ = ('LagPlats', 'ArtNr')
|
||||
|
||||
# Workaround for:
|
||||
# "Table 'JAPP_EWMS_Item_Replenishment_Levels' does not have the identity property.
|
||||
# Cannot perform SET operation."
|
||||
ForetagKod = Column(Integer, primary_key=True, autoincrement=False)
|
||||
|
|
|
|||
|
|
@ -24,9 +24,11 @@ class StoredProcedure(OrderedDict):
|
|||
FROM sys.objects AS SO
|
||||
INNER JOIN sys.parameters AS P
|
||||
ON SO.OBJECT_ID = P.OBJECT_ID
|
||||
WHERE SO.name LIKE '%Jeeves_Esales_%' OR
|
||||
SO.name LIKE '%JAPP_spr_LogTrade_%' AND
|
||||
SO.OBJECT_ID IN ( SELECT OBJECT_ID
|
||||
WHERE (
|
||||
SO.name LIKE '%Jeeves_Esales_%' OR
|
||||
SO.name LIKE '%JAPP_spr_LogTrade_%'
|
||||
) AND
|
||||
SO.OBJECT_ID IN ( SELECT OBJECT_ID
|
||||
FROM sys.objects
|
||||
WHERE TYPE IN ('P','FN'))
|
||||
ORDER BY [Schema], SO.name, P.parameter_id"""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue