Link to: source code | prefs
directory
Copyright Turtle Creek Software 1996-2006. All Rights Reserved.
This class manages income preferences for the Goldenseal accounting software,
small business management software, construction
project management software and
construction
accounting software.
class CIncomePreferences : public DB_DescribedPersistent
{
public:
static CLASS_DESC *sDescriptor;
static DB_PersistentObject *MakeNew() { return TCS_NEW CIncomePreferences; }
CIncomePreferences();
virtual ~CIncomePreferences() {}
virtual NeoID GetDBClassID(void) const { return id_IncomePrefs; }
virtual NeoSize GetFileLength(const CNeoFormat *aFormat) const;
virtual void CopyFrom(DB_PersistentObject */*source*/, const UInt8 /*copyFlags*/ = 0) {}
// only one object, so we never need to copy
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 NeedsName() const { return false; } // TCS 2/3/01
virtual Boolean ForbidDuplicateNames() const { return false; } // TCS 7/25/01
virtual void FillDataReport(CTCS_Table *table, CNeoStream *stream) const;
virtual void SetEndSafetyTag() { mEndSafetyTag = tag_endsafetytag; }
protected:
DBid mDepositEscrow,
mGiftCertificateEscrow,
mProjectCommission,
mFutureLong1;
UInt8 mSalesBreakdownStart, // TCS 4/11/04
mEstimateBreakdownStart,
mFutureEnum1,
mFutureEnum2;
CMoney mBackOrderAmount,
mRainCheckAmount,
mSpecialOrderAmount,
mReturnRestockAmount,
mSpecOrderRestockAmount,
mLayawayHoldAmount,
mFutureMoney1,
mFutureMoney2;
SInt32 mLayawayExpireDays;
UInt8 mBackOrderChgType,
mRainCheckChgType,
mSpecOrderChgType,
mReturnRestockType,
mSpecOrderRestockType,
mHoldLayawayType,
mLayawayExpireType;
// *** NEVER insert members before this bitfield!!!
UInt8 mBackOrderAutoPO:1,
mRainCheckAutoPO:1,
mSpecialOrderAutoPO:1,
mSalesBranchCommish:1,
mUseDefaultProjCommish:1,
mBillingCarryover:1,
mDepositCashSales:1,
mDepositBilledSales:1;
UInt8 mJobCostIncome;
// *** NEVER insert members before this bitfield!!!
UInt8 mWarnLowInventory:1,
mFillSalesAddress:1, // TCS 12/31/02
mEstimatesStartDim:1, // TCS 1/11/03
mCommissionedSalesReps:1, // TCS 2/22/04
mEstimatesUseExperience:1, // TCS 4/11/04
mEstimatesUseModifiers:1,
mFutureBooleans:2;
// calculated members
TagType mEndSafetyTag; // TCS 9/8/02
enum
{
cCopyFileLength = 0,
cFileLength = cCopyFileLength +
5*sizeof(DBid) +
8*sizeof(CMoney) +
sizeof(SInt32) +
10*sizeof(UInt8) +
sizeof(TagType)
};
}; |