Link to: source code | transactions
directory
Copyright Turtle Creek Software 1996-2006. All Rights Reserved.
This class manages equipment hours for the Goldenseal accounting software,
time tracking software, construction
project management software and
construction
accounting software.
class CEquipmentLog : public CTimeLog
{
public:
static CLASS_DESC *sDescriptor;
static DB_PersistentObject *MakeNew() { return TCS_NEW CEquipmentLog; }
CEquipmentLog();
virtual ~CEquipmentLog() {}
virtual void CopyFrom(DB_PersistentObject *source, const UInt8 copyFlags = 0);
virtual NeoSize GetFileLength(const CNeoFormat *aFormat) const;
virtual DBid GetDBClassID(void) const { return id_EquipmentHours; }
virtual Boolean GetMemberValue(const TagType aTag, const TagType aType,
void *aValue) const;
virtual Boolean SetMemberValue(const TagType aTag, const TagType aType,
const void *aValue);
virtual void ReadObject(CNeoStream *aStream, const TagType aTag);
virtual void WriteObject(CNeoStream *aStream, const TagType aTag);
//virtual Boolean IsValidBreakdown(const UInt8 breakdownType);
virtual void FinishViewerCreate();
virtual void FinishNonViewerCreate();
virtual void FinishTemplateCreate();
virtual void FinishImportCreate();
virtual void PostNewRecord(const UInt8 creationType);
virtual void PostDeletion(const Boolean postAudit);
virtual void PostRecordActivated(const UInt8 creationType);
virtual void PostRecordCancelled(const UInt8 cancelType);
virtual void PostRecordChanging(const Boolean accountChanging,
const Boolean jobChanging);
virtual void PostVoidRecordChanging(const Boolean accountChanging,
const Boolean jobChanging, const UInt8 startStatus,
const UInt8 finalStatus);
virtual void PostRecordChanged(const CMoney &oldAmount, const Boolean accountChanged,
const Boolean jobChanged);
virtual void PostVoidRecordChanged(const CMoney &oldAmount, const Boolean accountChanged,
const Boolean jobChanged);
virtual void PostRecordVoided(const Boolean accountChanged, const Boolean jobChanged,
const UInt8 startStatus, const UInt8 finalStatus);
virtual void PostEquipmentIncome(const CMoney &changeAmount, const Boolean removeItem = false);
// there are no payables for equipment
virtual void PostPayablesAccount(const Boolean /*removeItem*/ = false) {}
virtual DBid GetDefaultExpenseAccount() const { return account_EquipmentExpenses; }
virtual void HandleTandMBilling(const DBid billID, const Boolean removeItem);
virtual void HandlePaymentMade(const CMoney &inAmount, const UInt8 sourceClass,
const DBid sourceID, const UInt8 transactionType,
const Boolean removeItem = false);
virtual CMoney GetAmountPaid() const { return GetAmount(); } // TCS 5/18/00
virtual void FinishBreakdownUpdate(CBreakdownEntry *breakdown, CBreakdownTable *table);
virtual UInt8 GetStatus() const { return mStatus; } // TCS 4/23/01
virtual void FillDataReport(CTCS_Table *table, CNeoStream *stream) const;
virtual void SetEndSafetyTag() { mEndSafetyTag = tag_endsafetytag; }
protected:
// copied members
UInt8 mStatus,
mSpareByte;
DBid mEmployee,
mTMBillingRate, // TCS moved 9/29/02
mJobCostRate;
//mAmount is the billing amount
// calculated members
TagType mEndSafetyTag; // TCS 9/8/02
enum
{
cCopyFileLength = 2*sizeof(UInt8) +
3*sizeof(DBid),
cFileLength = cCopyFileLength +
sizeof(TagType)
};
}; |