Пожалуйста, ознакомьтесь с приведенными ниже кодами. Это именно то, что я искал для единой выписки по кредитному дебетовому балансу. Всякий раз, когда происходит приток денег, дебет обнуляется, а при возникновении расходов кредит вынужденбыть равным нулю. Кредит и дебет остаются нулевыми только в первой строке выходных данных, перенесенных с предыдущего месяца. Это похоже на концепцию, когда есть входные данные, выходные данные отключены, а всякий раз, когда есть выходные данные, входные данныеПожалуйста, запустите файл Cash_001.py.
#Classdef_Cash_001.py
class Cash:
def __init__(self, DATE, VOUCHER, SPECIFICATION, INITIAL_AMOUNT, CREDIT,DEBIT,
REMARKS, BALANCE):
self.DATE = DATE
self.VOUCHER = VOUCHER
self.SPECIFICATION = SPECIFICATION
self.CREDIT = CREDIT
self.DEBIT = DEBIT
self.REMARKS = REMARKS
self.BALANCE = INITIAL_AMOUNT
def Spending(self,DATE,VOUCHER,SPECIFICATION,DEBIT,CREDIT,REMARKS):
self.DATE = DATE
self.VOUCHER = VOUCHER
self.SPECIFICATION = SPECIFICATION
self.REMARKS = REMARKS
self.DEBIT = DEBIT
self.CREDIT = 0
self.BALANCE -= DEBIT
def CashInflow(self,DATE,VOUCHER,SPECIFICATION,CREDIT,DEBIT,REMARKS):
self.DATE = DATE
self.VOUCHER = VOUCHER
self.SPECIFICATION = SPECIFICATION
self.REMARKS = REMARKS
self.CREDIT = CREDIT
self.DEBIT = 0
self.BALANCE += CREDIT
def dump(self):
s = 'DATE: %s, VOUCHER: %s, SPECIFICATION: %s , CREDIT: %s ,DEBIT: %s
,REMARKS :%s ,BALANCE :%s ' % \
(self.DATE,self.VOUCHER, self.SPECIFICATION, self.CREDIT, self.DEBIT,
self.REMARKS, self.BALANCE)
print s
#Cash_001.py
from Classdef_Cash_001 import Cash
p1=Cash('01/10/2018','000','CARRY FORWARD',2000,0,0,'REMAINDER',0)
p1.dump()
p1.Spending('01/10/2018','001','OIL',200,0,'JOHN')
p1.dump()
p1.CashInflow('02/10/2018','002','SALES',1000,0,'REF179800')
p1.dump()
p1.Spending('03/10/2018','003','GAS',200,0,'GEORGE')
p1.dump()
p1.CashInflow('03/10/2018','004','SALES',5000,0,'REF179801')
p1.dump()