Update20221122

This commit is contained in:
bcomsugi 2024-11-22 03:54:50 +07:00
parent be74d44e81
commit 603b998eb9
2 changed files with 34 additions and 10 deletions

View File

@ -628,7 +628,8 @@ class TransactionQuery(baseQBQuery):
self.QBDict[self.classNameRq]["TransactionDateRangeFilter"]={'FromTxnDate':kwargs.get('TransactionDateRangeFilter_FromTxnDate', ""), 'ToTxnDate':kwargs.get('TransactionDateRangeFilter_ToTxnDate', "")}
elif 'TransactionDateRangeFilter_DateMacro' in kwargs:
self.QBDict[self.classNameRq]["TransactionDateRangeFilter"]={'DateMacro':kwargs['TransactionDateRangeFilter_DateMacro']}
# <!-- EntityTypeFilter may have one of the following values: Customer, Employee, OtherName, Vendor -->
if 'TransactionEntityFilter_EntityTypeFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionEntityFilter"]={'EntityTypeFilter':kwargs['TransactionEntityFilter_EntityTypeFilter']}
elif 'TransactionEntityFilter_ListID' in kwargs:
@ -639,7 +640,8 @@ class TransactionQuery(baseQBQuery):
self.QBDict[self.classNameRq]["TransactionEntityFilter"]={'ListIDWithChildren':kwargs['TransactionEntityFilter_ListIDWithChildren']}
elif 'TransactionEntityFilter_FullNameWithChildren' in kwargs:
self.QBDict[self.classNameRq]["TransactionEntityFilter"]={'FullNameWithChildren':kwargs['TransactionEntityFilter_FullNameWithChildren']}
# <!-- AccountTypeFilter may have one of the following values: AccountsPayable, AccountsReceivable, AllowedFor1099, APAndSalesTax, APOrCreditCard, ARAndAP, Asset, BalanceSheet, Bank, BankAndARAndAPAndUF, BankAndUF, CostOfSales, CreditCard, CurrentAsset, CurrentAssetAndExpense, CurrentLiability, Equity, EquityAndIncomeAndExpense, ExpenseAndOtherExpense, FixedAsset, IncomeAndExpense, IncomeAndOtherIncome, Liability, LiabilityAndEquity, LongTermLiability, NonPosting, OrdinaryExpense, OrdinaryIncome, OrdinaryIncomeAndCOGS, OrdinaryIncomeAndExpense, OtherAsset, OtherCurrentAsset, OtherCurrentLiability, OtherExpense, OtherIncome, OtherIncomeOrExpense -->
if 'TransactionAccountFilter_AccountTypeFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionAccountFilter"]={'AccountTypeFilter':kwargs['TransactionAccountFilter_AccountTypeFilter']}
elif 'TransactionAccountFilter_ListID' in kwargs:
@ -651,6 +653,7 @@ class TransactionQuery(baseQBQuery):
elif 'TransactionAccountFilter_FullNameWithChildren' in kwargs:
self.QBDict[self.classNameRq]["TransactionAccountFilter"]={'FullNameWithChildren':kwargs['TransactionAccountFilter_FullNameWithChildren']}
# <!-- ItemTypeFilter may have one of the following values: AllExceptFixedAsset, Assembly, Discount, FixedAsset, Inventory, InventoryAndAssembly, NonInventory, OtherCharge, Payment, Sales, SalesTax, Service -->
if 'TransactionItemFilter_ItemTypeFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionItemFilter"]={'ItemTypeFilter':kwargs['TransactionItemFilter_ItemTypeFilter']}
elif 'TransactionItemFilter_ListID' in kwargs:
@ -661,7 +664,7 @@ class TransactionQuery(baseQBQuery):
self.QBDict[self.classNameRq]["TransactionItemFilter"]={'ListIDWithChildren':kwargs['TransactionItemFilter_ListIDWithChildren']}
elif 'TransactionItemFilter_FullNameWithChildren' in kwargs:
self.QBDict[self.classNameRq]["TransactionItemFilter"]={'FullNameWithChildren':kwargs['TransactionItemFilter_FullNameWithChildren']}
if 'TransactionClassFilter_ListID' in kwargs:
self.QBDict[self.classNameRq]["TransactionClassFilter"]={'ListID':kwargs['TransactionClassFilter_ListID']}
elif 'TransactionClassFilter_FullName' in kwargs:
@ -670,16 +673,20 @@ class TransactionQuery(baseQBQuery):
self.QBDict[self.classNameRq]["TransactionClassFilter"]={'ListIDWithChildren':kwargs['TransactionClassFilter_ListIDWithChildren']}
elif 'TransactionClassFilter_FullNameWithChildren' in kwargs:
self.QBDict[self.classNameRq]["TransactionClassFilter"]={'FullNameWithChildren':kwargs['TransactionClassFilter_FullNameWithChildren']}
# <!-- TxnTypeFilter may have one of the following values: All, ARRefundCreditCard, Bill, BillPaymentCheck, BillPaymentCreditCard, BuildAssembly, Charge, Check, CreditCardCharge, CreditCardCredit, CreditMemo, Deposit, Estimate, InventoryAdjustment, Invoice, ItemReceipt, JournalEntry, LiabilityAdjustment, Paycheck, PayrollLiabilityCheck, PurchaseOrder, ReceivePayment, SalesOrder, SalesReceipt, SalesTaxPaymentCheck, Transfer, VendorCredit, YTDAdjustment -->
if 'TransactionTypeFilter_TxnTypeFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionTypeFilter"]={'TxnTypeFilter':kwargs['TransactionTypeFilter_TxnTypeFilter']}
# <!-- TransactionDetailLevelFilter may have one of the following values: All, SummaryOnly [DEFAULT], AllExceptSummary -->
if 'TransactionDetailLevelFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionDetailLevelFilter"]=kwargs['TransactionDetailLevelFilter']
# <!-- TransactionPostingStatusFilter may have one of the following values: Either [DEFAULT], NonPosting, Posting -->
if 'TransactionPostingStatusFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionPostingStatusFilter"]=kwargs['TransactionPostingStatusFilter']
# <!-- TransactionPaidStatusFilter may have one of the following values: Either [DEFAULT], Closed, Open -->
if 'TransactionPaidStatusFilter' in kwargs:
self.QBDict[self.classNameRq]["TransactionPaidStatusFilter"]=kwargs['TransactionPaidStatusFilter']
@ -945,8 +952,8 @@ class SalesOrderAdd(baseQBQuery):
elif 'PriceLevelRef_FullName' in eachLineAdd:
self.LineAddDict["PriceLevelRef"]={'FullName': eachLineAdd['PriceLevelRef_FullName']}
if 'Amount' in eachLineAdd:
self.LineAddDict["Amount"]=eachLineAdd['Amount']
if 'Amount ' in eachLineAdd:
self.LineAddDict["Amount "]=eachLineAdd['Amount ']
# Others
if 'Other1' in eachLineAdd:
self.LineAddDict["Other1"]=eachLineAdd['Other1']
@ -1205,7 +1212,7 @@ def InventoryStockStatusByVendor(ReportEntityFilter_FullName:str='TACO') -> dict
ND=coldata['@value'] #Next Delivery Date
dt[FullName]={'ShortName':ShortName, 'QOH':QOH, 'QOSO':QOSO, 'QA':QA, 'QOPO':QOPO, 'UOM':UOM, 'min':min, 'max':max, 'ND':ND}
# print(f'{dt = }')
# print(len(dt))
print(f'InventoryStockStatusByVendor {len(dt) = }')
return dt
"""
{'@rowNumber': '1016',

19
main.py
View File

@ -18,7 +18,7 @@ import pdfexcel4DNwithxlrd
from ItemInventoryQuery import ItemInventoryQuery
from SO_to_Inv import readSO, CustomerQuery
import os
from QBClass.QBClasses import SalesOrderAdd, InventoryStockStatusByVendor, PriceLevelQuery
from QBClass.QBClasses import SalesOrderAdd, InventoryStockStatusByVendor, PriceLevelQuery, TransactionQuery
from QBClass.QBClasses import CustomerQuery as CQ
import pprint
@ -297,3 +297,20 @@ async def salesorderadd(request: Request):
return so.all()
@app.post('/dasa2/transactionquery')
async def transactionquery(request: Request):
transactiondict = await request.body()
print("")
try:
transactiondict = json.loads(transactiondict)
except:
print('error TransactionQuery()')
return {'message':'error getting TransactionQuery Data. it is not json'}
print(f'{type(transactiondict)}, {transactiondict = }')
print(f'{transactiondict = }')
tq = TransactionQuery(**transactiondict)
print(tq.all())
print(f'{len(tq.to_json()) = }')
return tq.all()