mirror of
https://github.com/bcomsugi/Quickbooks-API.git
synced 2026-01-09 09:42:40 +07:00
75 lines
4.4 KiB
Python
75 lines
4.4 KiB
Python
from server import baseQBQuery
|
|
|
|
class ItemInventoryQuery(baseQBQuery):
|
|
def __init__(self, *args, **kwargs):
|
|
print(f'{args = }')
|
|
print(f'{kwargs = }')
|
|
super().__init__(*args, **kwargs)
|
|
self.QBDict[self.__class__.__name__ + "Rq"]={}
|
|
print(self.QBDict)
|
|
if 'ListID' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ListID"]=kwargs['ListID']
|
|
elif 'FullName' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["FullName"]=kwargs['FullName']
|
|
else:
|
|
if 'MaxReturned' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["MaxReturned"]=kwargs['MaxReturned']
|
|
if 'ActiveStatus' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ActiveStatus"]=kwargs['ActiveStatus']
|
|
if 'FromModifiedDate' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["FromModifiedDate"]=kwargs['FromModifiedDate']
|
|
if 'ToModifiedDate' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ToModifiedDate"]=kwargs['ToModifiedDate']
|
|
if 'MatchCriterion' in kwargs and 'Name' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["NameFilter"]={'MatchCriterion':kwargs['MatchCriterion', 'Name':kwargs['Name']]}
|
|
if 'FromName' in kwargs or 'ToName' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["NameRangeFilter"]={'FromName':kwargs.get('FromName', ""), 'ToName':kwargs.get('ToName', "")}
|
|
if 'IncludeRetElement' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["IncludeRetElement"]=kwargs['IncludeRetElement']
|
|
if 'OwnerID' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["OwnerID"]=kwargs['OwnerID']
|
|
|
|
print(self.__class__.__name__ + "Rq")
|
|
print(self.QBDict)
|
|
|
|
class GeneralSummaryReportQuery(baseQBQuery):
|
|
def __init__(self, *args, **kwargs):
|
|
print(f'{args = }')
|
|
print(f'{kwargs = }')
|
|
super().__init__(*args, **kwargs)
|
|
self.QBDict[self.__class__.__name__ + "Rq"]={}
|
|
print(self.QBDict)
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["GeneralSummaryReportType"]="InventoryStockStatusByItem"
|
|
if 'GeneralSummaryReportType' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["GeneralSummaryReportType"]=kwargs['GeneralSummaryReportType']
|
|
if 'FromReportDate' in kwargs or 'ToReportDate' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ReportPeriod"]={'FromReportDate':kwargs.get('FromReportDate', ""), 'ToReportDate':kwargs.get('ToReportDate', "")}
|
|
elif 'ReportDateMacro' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ReportDateMacro"]=kwargs.get('FromReportDate', "")
|
|
|
|
elif 'FullName' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["FullName"]=kwargs['FullName']
|
|
else:
|
|
if 'MaxReturned' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["MaxReturned"]=kwargs['MaxReturned']
|
|
if 'ActiveStatus' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ActiveStatus"]=kwargs['ActiveStatus']
|
|
if 'FromModifiedDate' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["FromModifiedDate"]=kwargs['FromModifiedDate']
|
|
if 'ToModifiedDate' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["ToModifiedDate"]=kwargs['ToModifiedDate']
|
|
if 'MatchCriterion' in kwargs and 'Name' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["NameFilter"]={'MatchCriterion':kwargs['MatchCriterion', 'Name':kwargs['Name']]}
|
|
if 'FromName' in kwargs or 'ToName' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["NameRangeFilter"]={'FromName':kwargs.get('FromName', ""), 'ToName':kwargs.get('ToName', "")}
|
|
if 'IncludeRetElement' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["IncludeRetElement"]=kwargs['IncludeRetElement']
|
|
if 'OwnerID' in kwargs:
|
|
self.QBDict[self.__class__.__name__ + "Rq"]["OwnerID"]=kwargs['OwnerID']
|
|
|
|
print(self.__class__.__name__ + "Rq")
|
|
print(self.QBDict)
|
|
|
|
x=ItemInventoryQuery('bagus', 'kedua', key5=5, key2="hore", FullName1='hooooo', FromName1="sg", ToName1="sugi", IncludeRetElement=['Name', 'FullName'], MaxReturned="2")
|
|
x.create_QBXML()
|
|
x.connect_to_quickbooks() |