GnuCash c935c2f+
Loading...
Searching...
No Matches
Files | Functions

This file implements Accounting Policy. More...

Files

file  policy.h
 Implement Accounting Policy.
 

Functions

GNCPolicy * xaccGetFIFOPolicy (void)
 First-in, First-out Policy This policy will create FIFO Lots.
 

Detailed Description

This file implements Accounting Policy.

The Accounting Policy determines how Splits are assigned to Lots. The contents of a Lot determines the Gains on that Lot. The default policy is the FIFO policy: the first thing bought is also the first thing sold.

Function Documentation

◆ xaccGetFIFOPolicy()

GNCPolicy * xaccGetFIFOPolicy ( void  )

First-in, First-out Policy This policy will create FIFO Lots.

FIFO Lots have the following properties: – The lot is started with the earliest posted split that isn't a part of another lot already. – Splits are added to the lot in date order, with earliest splits added first. – All splits in the lot share the same transaction currency as the split that opened the lot

Definition at line 155 of file policy.cpp.

156{
157 static GNCPolicy *pcy = nullptr;
158
159 if (!pcy)
160 {
161 pcy = g_new (GNCPolicy, 1);
162 pcy->PolicyGetLot = FIFOPolicyGetLot;
163 pcy->PolicyGetSplit = FIFOPolicyGetSplit;
164 pcy->PolicyGetLotOpening = FIFOPolicyGetLotOpening;
165 pcy->PolicyIsOpeningSplit = FIFOPolicyIsOpeningSplit;
166 }
167 return pcy;
168}