diff --git a/ChangeLog b/ChangeLog index 91adb92420..1a10b5df68 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,24 @@ +2000-03-04 Dave Peticolas + + * src/guile/gnucash.c (main): load the locale from the environment + with setlocale. This is needed so that guile can find the locale. + + * Docs/: reorganized the Docs directory. Then english language + stuff moved to the "C" directory. The french stuff goes under + "fr". The "En" and "Fr" directories are gone. The standard for + country codes uses lower-cases letters, so we should stick to + that. The graphics files go under "pix" directories under their + respective language directories. + + * src/scm/path.scm: create documentation search paths based on the + current locale. The default "C" locale is always searched last. + + * src/reports/File.c (gncFindFile): take out dead code. + 2000-03-03 Dave Peticolas + * src/register/pricecell.c (PriceMV): accept thousands separators. + * src/scm/c-interface.scm: new functionality for registering translatable strings and saving them to a file in a suitable format for po creation. This touched a bunch of other .scm diff --git a/Docs/C/bofa-mym.html b/Docs/C/bofa-mym.html new file mode 100644 index 0000000000..61b85b9f7b --- /dev/null +++ b/Docs/C/bofa-mym.html @@ -0,0 +1,41 @@ + + + +Importing MYM Files + + +

Managing Your Money --> GNUCash

+ +I have finally put the Perl script that allowed me to use GNUCash +up on a web site. I had a couple years of data in Managing Your +Money 2.x that I didn't want to reenter. The script will output a +single QIF file with all transactions, accounts, and categories. +(Currently only non-investment transactions are handled.) The QIF +file can be imported to xacc-1.0.18 if a small patch is applied to +QIFIO.c. The site is + +

+MyMdump

+ +

Duplicate Transactions

+ +I also have a script that I use to remove duplicate transactions at +the QIF level. I use this script because Xacc is very strict about +duplicates (which is good) and because editing imported +transactions will cause a re-import of the same transactions to +produce duplicates. (I download the same month's transactions from +my bank several times each month, so each downloaded QIF +file--after the first--contains transactions I have already +imported. I don't want to rely on the bank sending me the +transactions in the same order or with the same formatting.) The +site is + +

+qifuniq

+ +

I hope others find these scripts useful.

+ +

Ken Yamaguchi October 1998

+ + + diff --git a/Docs/appr-asset1.gif b/Docs/C/pix/appr-asset1.gif similarity index 100% rename from Docs/appr-asset1.gif rename to Docs/C/pix/appr-asset1.gif diff --git a/Docs/appr-asset2.gif b/Docs/C/pix/appr-asset2.gif similarity index 100% rename from Docs/appr-asset2.gif rename to Docs/C/pix/appr-asset2.gif diff --git a/Docs/appr-income.gif b/Docs/C/pix/appr-income.gif similarity index 100% rename from Docs/appr-income.gif rename to Docs/C/pix/appr-income.gif diff --git a/Docs/appr-main1.gif b/Docs/C/pix/appr-main1.gif similarity index 100% rename from Docs/appr-main1.gif rename to Docs/C/pix/appr-main1.gif diff --git a/Docs/appr-main2.gif b/Docs/C/pix/appr-main2.gif similarity index 100% rename from Docs/appr-main2.gif rename to Docs/C/pix/appr-main2.gif diff --git a/Docs/contract.gif b/Docs/C/pix/contract.gif similarity index 100% rename from Docs/contract.gif rename to Docs/C/pix/contract.gif diff --git a/Docs/depr-asset.gif b/Docs/C/pix/depr-asset.gif similarity index 100% rename from Docs/depr-asset.gif rename to Docs/C/pix/depr-asset.gif diff --git a/Docs/depr-main.gif b/Docs/C/pix/depr-main.gif similarity index 100% rename from Docs/depr-main.gif rename to Docs/C/pix/depr-main.gif diff --git a/Docs/expand.gif b/Docs/C/pix/expand.gif similarity index 100% rename from Docs/expand.gif rename to Docs/C/pix/expand.gif diff --git a/Docs/foliowin-single.gif b/Docs/C/pix/foliowin-single.gif similarity index 100% rename from Docs/foliowin-single.gif rename to Docs/C/pix/foliowin-single.gif diff --git a/Docs/foliowin.gif b/Docs/C/pix/foliowin.gif similarity index 100% rename from Docs/foliowin.gif rename to Docs/C/pix/foliowin.gif diff --git a/Docs/newaccwin-code.gif b/Docs/C/pix/newaccwin-code.gif similarity index 100% rename from Docs/newaccwin-code.gif rename to Docs/C/pix/newaccwin-code.gif diff --git a/Docs/newaccwin-trade.gif b/Docs/C/pix/newaccwin-trade.gif similarity index 100% rename from Docs/newaccwin-trade.gif rename to Docs/C/pix/newaccwin-trade.gif diff --git a/Docs/newaccwin.gif b/Docs/C/pix/newaccwin.gif similarity index 100% rename from Docs/newaccwin.gif rename to Docs/C/pix/newaccwin.gif diff --git a/Docs/recnwin.gif b/Docs/C/pix/recnwin.gif similarity index 100% rename from Docs/recnwin.gif rename to Docs/C/pix/recnwin.gif diff --git a/Docs/regwin-double.gif b/Docs/C/pix/regwin-double.gif similarity index 100% rename from Docs/regwin-double.gif rename to Docs/C/pix/regwin-double.gif diff --git a/Docs/regwin-multi.gif b/Docs/C/pix/regwin-multi.gif similarity index 100% rename from Docs/regwin-multi.gif rename to Docs/C/pix/regwin-multi.gif diff --git a/Docs/regwin-single.gif b/Docs/C/pix/regwin-single.gif similarity index 100% rename from Docs/regwin-single.gif rename to Docs/C/pix/regwin-single.gif diff --git a/Docs/regwin-single2.gif b/Docs/C/pix/regwin-single2.gif similarity index 100% rename from Docs/regwin-single2.gif rename to Docs/C/pix/regwin-single2.gif diff --git a/Docs/regwin.gif b/Docs/C/pix/regwin.gif similarity index 100% rename from Docs/regwin.gif rename to Docs/C/pix/regwin.gif diff --git a/Docs/report-baln.gif b/Docs/C/pix/report-baln.gif similarity index 100% rename from Docs/report-baln.gif rename to Docs/C/pix/report-baln.gif diff --git a/Docs/report-folio.gif b/Docs/C/pix/report-folio.gif similarity index 100% rename from Docs/report-folio.gif rename to Docs/C/pix/report-folio.gif diff --git a/Docs/report-option.gif b/Docs/C/pix/report-option.gif similarity index 100% rename from Docs/report-option.gif rename to Docs/C/pix/report-option.gif diff --git a/Docs/reportwin.gif b/Docs/C/pix/reportwin.gif similarity index 100% rename from Docs/reportwin.gif rename to Docs/C/pix/reportwin.gif diff --git a/Docs/ticker-a.gif b/Docs/C/pix/ticker-a.gif similarity index 100% rename from Docs/ticker-a.gif rename to Docs/C/pix/ticker-a.gif diff --git a/Docs/ticker-b.gif b/Docs/C/pix/ticker-b.gif similarity index 100% rename from Docs/ticker-b.gif rename to Docs/C/pix/ticker-b.gif diff --git a/Docs/C/projects.html b/Docs/C/projects.html new file mode 100644 index 0000000000..f8182424d0 --- /dev/null +++ b/Docs/C/projects.html @@ -0,0 +1,1558 @@ + + + + + GnuCash Project Goals + + + + + +

GnuCash Project Goals

+ +

The people behind GnuCash aim + to create a world-class GPL'ed Open Source Personal Financial + Application for GNU/Linux and other Unix's. This page aims to + review some of the technical and development issues surrounding + this product, representing a sort of FAQ for developers and + contributors, to suggest directions when developers are trying to + determine how to implement new functionality.

+ +

To get a better idea of what + GnuCash is and what it does, visit its home page.

+ +

There are currently several different versions of + GnuCash.

+ + + +

The latest Gnome version, and latest versions in general, + are currently available only via CVS.

+ +

Precompiled versions are available, but usually + only for the stable releases. Don't use the unstable versions + unless you are ready for excitement and adventure, and are + prepared to cope with a need to keep extensive backups.

+ +

This document is divided into several sections.

+ +
    +
  1. Architectural Goals
  2. + +
  3. Feature Requirements
  4. + +
  5. Features
  6. +
+
+ +

Architectural Goals

+ There are some over-reaching design principles + and philosophies that we intend to maintain. Some of these + concepts and terms are introduced in this section. + +

Separation of GUI and Data

+ First, we must maintain a clean separation between the data + structures and the GUI that manipulates them, along the lines + of the Model-View-Controller paradigm. + + + +

GnuCash also needs to deal with multiple distributed data + sources: stock quotations from the net or transaction + confirmations from online banks and brokerage houses, or from + more mundane sources, such as file imports, or merger of data + from several users.

+ +

Amongst these terms, the concept of a global Model-View is + dated, and somewhat inappropriate. Rather, we need to be + concerned about how data is represented in the local address + space of the GUI, how the GUI manipulates it, how data is + brought in and merged from external sources, and how that data + is again output, whether to a file or a local or remote + database.

+ +

Thus, the View essentially represents a local data + cache of the data that is immediately present and being + displayed, reported, and manipulated. The Model is the + abstraction of that data that the GUI (the controller) can act + on.

+ +

The Financial Engine

+ In GnuCash, the Model is implemented via the Engine API, + and the View is the data that is currently in the + Engine. Thus, the Engine is a set of programming API's that + the GUI (or a script, or even a clever command-line-addict) can + use to manipulate the data. + +

Currently, the Engine is fairly poor, and is tightly tied + to the data structures that the GUI manipulates. These data + structures include:

+ + + The Engine has a very simple apply/commit model, and a simple + query mechanism for generating reports and views. + +

The Engine currently handles only a small set of data + sources:

+ + + +

However, since the Engine is meant to be the interface + between the GUI and the financial data, it is really intended + to be able to do much more.

+ +

In particular, it should be possible to back the Engine + onto an SQL database, and thereby enable multiple users and/or + interface to more complex accounting systems. The engine should + also be expandable to handle other sources of data, such as + OFX, Integrion GOLD, the Open Trading Protocol, the OMG CORBA + General Ledger submission, the IBM San Francisco business + objects, or closer to home, Linux Kontor. In particular, it + should be possible to use GnuCash not only to view data from + these sources, but also to manipulate it and send it back.

+ +

Modularity, Extensibility and Customization

+ +

The above structure should leads us to view GnuCash not so + much as a tightly integrated application, but rather as a loose + confederation of component objects, libraries and + interfaces.

+ +

In order to facilitate the gluing together of these parts, + as well as simplify the questions of customizability, change + and rapid development, GnuCash makes use of an extension + language to glue the pieces together.

+ +

The extension language that is most central to Gnucash is + + Scheme, and in particular, the FSF implementation, Guile, + although some of the interfaces are also available through Perl.

+ +

Markets and Users

+ Implicit in this desire for extensibility is the need to build + financial applications supporting two major classes of users: + + + They may use some of the same financial terminology, and + hopefully might share a fair bit of code, but have quite + different goals and requirements. + +

Personal Finance Needs

+ +

Important properties of a personal finance system + include:

+ + + +

Small Business Needs

+ + + +

Reconciling Those Needs

+ +

A seemingly contradictory factor is that the kinds of + sophistication that are required vary considerably. + Consider:

+ + + +

It may be that these will require completely + different systems, and that GnuCash cannot be "all things to + all people." This remains to be seen.

+ +

Feature Requirements

+ + +

Personal Financial Application

+ Below are listed the technical work items needed to implement + the features that home users might hope to have. They are + listed in approximate order of priority. + +

The right hand column shows a sizing guesstimate. pm == + person-months

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureSizing
+
InternationalizationSmall
Graphs, ReportsMedium
Simplified Stock LedgerSmall
Themes, Icons, GlitzMedium
Books, Accounting PeriodsSmall
Check PrintingSmall
User PreferencesMedium
Extension Language SupportMedium
Bonds and Interest Bearing + InstrumentsSmall
401K etc.Small
Annotate with Investment NewsSmall
Loan and Mortgage CalculatorsSmall
BudgetingMedium
Alerts, Recurring + TransactionsMedium
Quicken(TM) ExportSmall
Stock Quotes, Price QuotesSmall
OFX, Online Banking, Trading, + BillpayLarge
Multiple CurrenciesMedium
Double Entry AccountingSmall
Tab-delimited ASCII exportSmall
Tax PreparationLarge
Sync with Palm Pilot + organizersMedium
Emergency Records OrganizerSmall
+ +

Small Business Features

+ Features that small/medium businesses expect. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureSizing
+
Enhanced Engine, Financial + ObjectsLarge
SQL I/OMedium
Multi-User SupportMedium
A/R, A/P Accounts Payable, + ReceivableMedium
PayrollMedium
InvoicingMedium
Job CostingMedium
Expense AccountsLarge
+ +

Features and Functions

+ +
+
+ +
Internationalization
+ +
+ All menus, markup and help-text should be + internationalized, so that GnuCash may be usable in any + country. This would include the printing of currency values + in the local country conventions. + +

Current status:

+ +
    +
  • Most English-language messages have been + #defined and moved to a single header file + include/messages_en.h
  • + +
  • Plan to use gnu gettext() for the message + catalogs.
  • + +
  • Looking for routines that can parse and print + monetary values in different formats, as well as + date/time parsing/printing routines. (gnucash contains + such parsing routines, but they're not very powerful or + i18n'ed.)
  • + +
  • Henning Spruth has translated the README into + German.
  • + +
  • Yannick Le Ny <y-le-ny@ifrance.com> traduction + en francais et include/messages_fr.h
  • +
+
+ +
Graphs, Reports
+ +
+ Add a variety of reports, including Net Worth, Balance + Sheets, and Profit and Loss statements. These should be + printable: it might be best to create them as ordinary HTML + pages, and use the printing abilities of the browser. These + should be easy to customize. Ideally, even novice users + should be able to create custom reports. + +

Other output format possibilities include SGML and Extensible + Markup Language - XML. In the long run, these are + preferable to HTML, since DSSSL tools such as Jade (James DSSSL + Engine) can be used to convert to RTF, Postscript, + etc.

+ +

Add to this the consideration that XML is the basis for + the Document Object + Model, which is being integrated into many web-based + applications, and we can see that XML is an increasingly + significant format as we look to the future.

+ +

The Report Generator should be a separate but + "dockable" subsystem of the whole.

+ +

Thus, it should be possible to run the report generator + in a stand-alone, read-only fashion without having to start + up the main application.

+ +

Graphs, charts, etc. too ...

+ +

Asset allocation pie chart.

+ +

Graph portfolio value vs. cost

+ +

One difficult aspect of reporting is designing a + configurable interface, so that people can build custom + reports. The New + Reporting Infrastructure is seeking to build this up + using Guile.

+ +

Stock portfolio tools should include a Cost Averaging + report, Market Index report, Stock Option values, + Estimation of capital gains tax liabilities.

+ +

Status:

+ +
    +
  • A simple HTML output form has been implemented; + GnuCash can act as a very simple web server.
  • + +
  • Reports for Profit/Loss, Balance Sheet, and portfolio + valuation implemented as HTML-embedded Perl scripts. Being re-written in + Scheme.
  • +
+
+ +
Simplified Stock Ledger
+ +
+ Stocks and Mutual funds are handled by placing them each in + their own account. Each account can be viewed individually. + If all of the stock accounts are children of a master + trading account, then the trading account can be viewed and + modified in a General Ledger window. The current stock + general ledger window is a bit obtuse, and difficult to + understand and use. A simplified but still powerful ledger + window is desperately needed. + +

Question: How to most simply allow the user to + enter loads and fees?

+ +

Answer: Through splits. Unfortunately, some + users may not properly understand splits, at least not + initially. Thus, a little popup is needed to allow the user + to type in the sales load or fee and such, and then + auto-create the needed splits.

+ +

Note the current transfer window does NOT + allow a share price to be specified !! Needs fixing ...

+ +

+
+ +
Themes, Icons, Glitz
+ +
+ A variety of finer touches need work: + +
    +
  • + Themes. + +

    A set of themes would be desirable for the Gnome + version.

    +
  • + +
  • + Button Bar + +

    A user-configurable button-bar would be nice + too.

    +
  • + +
  • + Categories + +

    Provide a default list of "Categories" + (Income/Expense Accounts). These are categories such as + "Automobile Expense", "Bank Interest Income", and + "Employment Income". The user should be able to select + a default set of accounts, and have those created + automatically.

    + +

    To actually implement this, it might be best to + simply create a file with these in them, and load that + file. A mechanism should be provided to allow the user + to weed out undesired accounts whilst not preventing + them from using them at a later date, if desired.

    +
  • + +
  • + Household Assets + +

    Add an example showing how regular household assets + (house, car, jewelry, etc.) should be treated. In + particular, show how appreciation and depreciation + should be treated.

    +
  • + +
  • + Navigation + +

    Menu navigation using the keyboard should be + possible.

    + +

    Although menu mnemonics exist, they seem to be + broken.

    + +

    Similarly, tab-key navigation should be possible. + Currently, it is possible to use the tab key to + navigate from field to field in the register window, to + user arrow keys to navigate menus, and quick-fill to + automatically complete fields. However, it is not + possible to tab over to the "Commit" button.

    + +

    It should be.

    +
  • + +
  • + Folder Tabs + +

    Currently, Income/Expense accounts can be shown or + hidden by selecting from a menu. It would be nice to be + able to examine different account types (Asset, + Liability, Income, Expense, Payables, Receivables, + Inventory) by selecting a tab folder.

    +
  • + +
  • + Fly-Over Help + +

    When the user pauses the mouse over a button, + "fly-over" pop-up help windows should appear.

    +
  • + +
  • + Grayed-out Form Help + +

    Create grayed out entries in the ledger, titled + "Memo", "Description", etc, helping users understand + what should be typed into each field.

    +
  • + +
  • + emacs, vi, + motif, KDE, gnome Key Bindings for Text Fields + +

    Make sure that text fields can handle the vi and + emacs key bindings, so that e.g. emacs-style + ctrl-a, ctrl-k does the right thing.

    +
  • +
+ +

+
+ +
Books, Accounting Periods
+ +
+ Ability to close the book at end of the fiscal year. + +

i.e. Ability to permanently lock records as + non-editable. This should be straight-forward by using the + reconciled field to indicate a locked + value, and not allowing the GUI to edit locked records.

+ +

Also need to report closed books slightly differently. + Need to bring balances forward too...

+ +

+
+ +
Check Printing
+ +
Create a check-printing ability.
+ +
User Preferences
+ +
+ Create menu system and file format for manipulating user + preferences. + +

Preferences include things like showing/not showing + categories, forcing double-entry, etc.

+ +

Current status:

+ +
    +
  • Rob Browning has put together a basic infrastructure + that unifies command-line flags with scheme-based config + files.
  • + +
  • Rob also is auto-generating the GUI ...
  • +
+
+ +
Extension Language Support
+ +
+ The application is wired together partly with C, partly + with Scheme. The architecture of the wiring and how scheme + is fit in needs to be reviewed, with a general overview + created so that additional extensions may be added in a + straightforward manner. + +

The overall architecture is envisioned thus:

+ +

All code, including the transaction engine, the file + I/O routines, the menus, and the ledger, will be abstracted + into compact modules that can function independently of + each other. At the highest level, there will be a + infrastructure with extension language interfaces that will + "wire together" the various modules.

+ +

Such "wiring together" will consist of a dispatch + infrastructure that will allow arbitrary menu entries to be + hooked to arbitrary modules. The configuration for menu + entries, and their associated callbacks, will be specified + in an extension-language configuration file. At the final + stages, it is highly desirable to be able to, in + some manner, import new modules without requiring + that the application itself be recompiled and relinked.

+ +

Status:

+ +
    +
  • Scheme/Guile is the central extension language.
  • + +
  • Optional interfaces to the data engine can be + generated using + SWIG.
  • + +
  • Rob Browning is the reigning expert.
  • +
+ +

+
+ +
Bonds and Interest Bearing Instruments
+ +
+ Support should be added for Mortgages, Bonds, CD's and + other instruments (e.g. savings accounts) that pay interest + on a regular basis. It should be possible to specify the + interest rate, the payment schedule, and other regularly + recurring transactions. + +

This should be handled by having a way of bouncing out + to some Guile code to generate transactions with computed + values.

+
+ +
401(k), RRSP
+ +
Retirement Savings Plans often do not put a high priority + on tracking costs, as the tax implication is that amounts are + taxable upon withdrawal, meaning that there is little + necessity to track capital gains.
+ +
Annotate with News Stories
+ +
+ Download, save, annotate investment news and research. + Provide a way of storing news stories with accounts, and + possibly annotating individual transactions in the same + way. + +

+
+ +
Loan and Mortgage Calculators
+ +
+ Provide a variety of simple GUI utilities to allow user to + calculate the future value of loans, mortgage payments, + interest payments, etc. + +

Status:

+ +
    +
  • Not Started.
  • +
+ +

+
+ +
Alerts, Recurring Transactions
+ +
+ Provide pop-up notification of deadlines, events, upcoming + payments. + +

Add support for automatic, recurring transactions, + e.g. mortgage payments, fixed-interest bonds, bank + accounts, etc.

+ +

Note that the design for this could be very different, + depending on whether the multi-user functions are available + or not.

+ +

Design/implementation for this is tricky. It should + probably leverage crontab, but this can lead to + difficulties and bugs.

+ +

May need interfaces to email for emailed alerts.

+ +

Interfaces into calendaring systems? Current + status:

+ +
    +
  • April 1998 -- Design Doc contributed by Bob + Drzyzgula. See src/budget.txt
  • +
+ +

+
+ +
Budgeting
+ +
+ Ability to create a budget (i.e. estimates of future + expenditures). Reconcile actual expenditures against future + expenditures. Create simple, step-by-step 'financial plan' + budgeting GUI's: + +
    +
  • Home purchase planner
  • + +
  • Retirement planner
  • + +
  • College tuition planner
  • + +
  • Debt reduction planner
  • + +
  • Scrimp-n-Save planner
  • + +
  • Special purchase planner (big ticket items)
  • +
+ Create a summary budget/track-record budget report that a + professional financial planner/advisor could use. + +

Note that the above 'step-by-step' budgeters will have + a very very different GUI than what the budgeting system + required for a small-business might look like.

+ +

Status:

+ +
    +
  • A design doc has been submitted by Bob Drzyzgula. + Take a look at ./src/budget.txt in the source + directory.
  • +
+ +

+
+ +
Quicken(TM) Export
+ +
+ Ability to export Quicken QIF files. Quicken import is + implemented and mostly works. + +

+
+ +
Stock Quotes, Price Quotes
+ +
+ Add ability to download stock quotes, other price quotes. + Add ability to download historical prices as well. (e.g. + get 5-year history of mutual fund performance vs. djia). + +

Status:

+ +
    +
  • Can obtain stock quotes from Yahoo (NYSE), Fidelity + Investments, T.Rowe Price, and do automated update of + GnuCash data files (with the gnc-price perl + script). Need to add more data sources. See + src/quotes/Quote.pm and + src/quotes/gnc-price for details.
  • + +
  • + Need to integrate with GUI. + +

    Right now, this is a stand-alone perl script run + from crontab.

    +
  • +
+ +

+
+ +
OFX support
+ +
+ Provide the SGML DTD parsers to handle the OFX reports that + many banking institutions are providing, or will soon be + providing, to retail customers. See below for OFX + references. + +

OFX is an open spec from Microsoft, Intuit, and + Checkfree, and which will be supported by Integrion. The + OFX DTD's are included in the 1.1 distributions. See OFX Home Page for + details.

+ +

There are two ways to build an OFX parser. One way is + to build a compile-time DTD parser that treats the DTD as + if it were an IDL, and generates C language stubs for a + parser.

+ +

This approach was attempted and abandoned because it + leads to fragile C code and a very large binary.

+ +
    +
  • The parser is fragile because minor DTD + non-compliances are hard to parse, handle and recover + from.
  • + +
  • The parser is huge because the DTD results in + hundreds of (C++) objects being generated.
  • +
+ The other method would be to perform run-time DTD parsing. + This is attractive particularly because it is a more + commonly-used approach; there are a variety of XML tools + available that provide this function. + +

Run-time parsing may be slower, but on the OFX client + side, this should not be a bottleneck.

+ +

Status:

+ +
    +
  • A compile-time parser was developed and + abandoned.
  • +
+ +

Note that the organizations developing OFX are looking + to use XML as their "formats of the future;" this may + encourage the use of one of the many XML parsers available + for UNIX.

+
+ +
Multiple Currencies
+ +
+ Need to support multiple currencies. Work is needed in the + and the GUI. The engine currently supports multiple + currencies by treating them as securities, and thus + allowing currency trading. The currency-trading register + needs a complete overhaul. + +

+
+ +
Forced Double-Entry
+ +
+ The system supports double-entry: every transaction + indicates a pair of accounts: one is debited, and one is + credited. + +

Double-entry is a powerful way of ensuring the + integrity of of the financial data. Currently, while + double-entry is supported, its use is not enforced: the + user can create dangling transactions, where only + one account is indicated.

+ +

Although this is acceptable for home use (even + desirable, since it allows the casual user the simplicity + they desire), it is not acceptable for business use.

+ +

It must be possible to enable forced-double entry, so + that a transaction cannot be completed until two accounts + have been specified.

+ +

Current status:

+ +
    +
  • April 1998 -- The engine has a couple of flags in it + that control double-entry behavior: it can be made lax, + or strict: however, they are compiled in, there is no way + to change them from the GUI.
  • + +
  • Dec 1998 -- Scrubber functions implemented to crawl + through data, and find all unbalanced or orphaned + transactions.
  • +
+ +

+
+ +
Tab-delimited ASCII file format
+ +
+ People like to be able to read file contents in + ASCII; there are many Unix tools for manipulating ASCII. An + ASCII equivalent of the current file format should be easy + to develop ... just substitute the writes with + printf()s. + +

The tab-delimited format should be compatible with that + of /rdb, aka RAND/Hobbs /rdb or + + NoSQL. (NoSQL is available as part of the Debian GNU/Linux distribution, + for instance.)

+ +

The /rdb format is thus:

+
+field-name  tab  fieldname  tab fieldname   \n
+------------------------------------------  \n
+value       tab   value     tab value       \n
+value       tab   value     tab value       \n
+etc ...
+
+ +

It is a very simple, very basic flat table format. The + use of /rdb with GnuCash should try to match with + SQL schemas as much as possible in order to minimize I/O + complexity and incompatibility.

+
+ +
Tax Preparation
+ +
+ Gotta prepare those taxes. + +
    +
  • + TurboTax + +

    categorize items according to different tax + schedules

    +
  • + +
  • VAT
  • + +
  • estimate income taxes
  • + +
  • estimate itemized deductions, find potential + deductions, categorize them
  • +
+
+ +
Sync with Palm Pilot + organizers
+ +
There are Quicken-workalikes that run on the + PalmComputing platform; it would be good to interoperate with + this.
+ +
Emergency Records Organizer
+ +
+ Put together a single-page report showing critical info + about accounts, etc. + +

+
+ +
Enriched Engine, Financial Objects
+ +
+ The current system makes a distinction between the data + (account, transaction) and they GUI that displays it. The + data is embedded within and controlled by the "Engine", + which is a set of routines to access accounts, + transactions, etc. The engine serves as a kind of a dynamic + cache between the permanent data repository (file, sql db) + and the GUI. + +

The current engine is rather simple: it provides + support for accounts, account hierarchies and transactions + consisting of multiple entries.

+ +

Many of the features described elsewhere will require + that the engine have a far richer, more sophisticated data + model, including such things as:

+ +
    +
  • Linking to "Address Info" ( e.g. names, + addresses)
  • + +
  • Transaction identifiers
  • + +
  • Part numbers, SKU IDs
  • + +
  • Interest rates
  • + +
  • Budget policy
  • +
+ +

Note: it makes no sense at this point to make the + engine API much richer than what the GUI can currently + support.

+ +
    +
  • Locks When splits are implemented, and the + parent transaction has been marked as cleared, the record + should be locked, so that further modifications to the + amount can't be performed (or at least, a warning is + generated. This prevents accidental garbaging up of old + transactions.)
  • + +
  • + Books Ability to close a book at the end of the + fiscal year, thus indicating that nobody is permitted + to "mess around" with that old data. + +

    In a business environment, the auditors may have + "signed off" on the validity of the data; at that + point, the ability to modify audited data should be + very tightly controlled, or even downright + forbidden.

    +
  • +
+ +

Current Status:

+ +
    +
  • The basic engine has been detangled from the GUI + elements, as of version gnucash-1.1.4.
  • + +
  • Binary file I/O mostly detangled into a separate + module.
  • + +
  • Crude transaction logging in place; should be + suitable for error/crash recovery but has not been "tried + by fire."
  • + +
  • Backup files automatically created and + time-stamped.
  • + +
  • + BeginEdit()/RollbackEdit()/CommitEdit() + routines mostly in place, + +

    These "Transaction processing constructs" should + simplify creation of an SQL back end, or some other + more sophisticated database engine.

    +
  • + +
  • Multiple currency support is present but still pretty + "raw."
  • + +
  • Query engine is minimal/sparse in capabilities.
  • + +
  • Linas <linas@linas.org> is maintaining the + engine code.
  • +
+ +

+
+ +
SQL I/O
+ +
+ A module is necessary to allow data to be fetched from an + SQL database, and for that database to be updated. Some + thoughts: SQL databases do not need to be locked during + editing: instead, an optimistic approach, similar to that + employed by CVS (concurrent version system, a mechanism for + storing versions of source code) could be used: if the + edits conflict with changes made by others, the edit could + be rejected en-masse, allowing the user to merge and + correct their changes. This is a very important note: + updating SQL does NOT require locks to be held for long + periods of time! + +

There has been much discussion about this on + mailing lists both for GnuCash and CBB. Major + points have included:

+ +
    +
  • + Those SQL databases available on Linux tend to involve + considerable administrative overhead in terms + of getting them set up. + +

    This may be a minor cost to a business enterprise + that hires DataBase Administrators.

    + +

    It is not acceptable to require this of + naive users that may find "simple" things like

    +
    +% su -
    +Password:
    +# cd /tmp
    +# rpm -i gnucash-4.1.3.i386.rpm
    +# exit
    +
    + to be challenging. +
  • + +
  • The real need may be to use an embedded + database engine like unto Sleepycat DB, cdb, or + something like Open + Group - ISAM.
  • + +
  • + GnuCash presently uses a document-oriented model, where + the entire set of books are loaded in, and + dumped out, all at one fell swoop. + +

    Changing GnuCash to be suited to use a DBMS in + other than a "load-it-all" / "dump-it-all" manner, but + to rather update the database in a transactional + manner.

    + +

    That being said, it may be possible to recast the + GnuCash engine functionality so as to handle + storage in a transactional manner.

    +
  • +
+
+ +
Multi-user Support
+ +
+ Multi-user support should be added with either an SQL + backend to the engine, and/or through CORBA interfaces to + the engine. Project Kontor and also FreeMoney is working on + SQL schemas; Kontor is also working on Java RMI/CORBA + interfaces. Another possibility is to create a + web-application-server, and have users do much/most of I/O + with a web interface, possibly using the register object as + a browser plugin. + +

The following industrial-strength features are + needed:

+ +
    +
  • transaction-oriented queuing of updates
  • + +
  • event subscription channel for updates
  • + +
  • user authentication
  • + +
  • user authorization
  • + +
  • non-repudiability
  • + +
  • encryption of network connections
  • +
+ +
    +
  • Stephan Lichtenauer + <s_lichtenauer@muenchen.org> is working on CORBA + interfaces.
  • + +
  • "Alexander L. Belikoff" <abel@bfr.co.il> may + start work on CORBA
  • +
+
+ +
Accounts Payable, + Receivable
+ +
Add features to track sales receipts and other pending + sources of income, as well as owed sums.
+ +
Payroll
+ +
+ Payroll introduces a sizable amount of complexity + in terms of the need to comply with constantly-changing + government regulations in whatever country one is in. + +

While the GnuCash "engine" might remain free, + maintenance of payroll functionality would require + "subscribing" to an update scheme; it might be troublesome + to try to provide such a "subscription" free of charge.

+
+ +
Invoicing
+ +
Invoicing.
+ +
Job Costing
+ +
Ability to prepare and track estimates.
+ +
Expense Accounts
+ +
Expense Account Automation, including air, car, hotel, + dining. Receipts, reservations, cancellations.
+
+ +

References

+ + +
+ Draft version 0.35 -- November 1999 + +

Linas Vepstas + linas@linas.org
+

+
+ Revised December 1999 + +

Christopher Browne + cbbrowne@ntlug.org
+

+ + + diff --git a/Docs/En/tidy-up b/Docs/C/tidy-up similarity index 100% rename from Docs/En/tidy-up rename to Docs/C/tidy-up diff --git a/Docs/En/xacc-about.html b/Docs/C/xacc-about.html similarity index 100% rename from Docs/En/xacc-about.html rename to Docs/C/xacc-about.html diff --git a/Docs/En/xacc-accountedit.html b/Docs/C/xacc-accountedit.html similarity index 100% rename from Docs/En/xacc-accountedit.html rename to Docs/C/xacc-accountedit.html diff --git a/Docs/En/xacc-acctypes.html b/Docs/C/xacc-acctypes.html similarity index 100% rename from Docs/En/xacc-acctypes.html rename to Docs/C/xacc-acctypes.html diff --git a/Docs/En/xacc-accwin.html b/Docs/C/xacc-accwin.html similarity index 100% rename from Docs/En/xacc-accwin.html rename to Docs/C/xacc-accwin.html diff --git a/Docs/En/xacc-adjbwin.html b/Docs/C/xacc-adjbwin.html similarity index 100% rename from Docs/En/xacc-adjbwin.html rename to Docs/C/xacc-adjbwin.html diff --git a/Docs/En/xacc-apar.html b/Docs/C/xacc-apar.html similarity index 100% rename from Docs/En/xacc-apar.html rename to Docs/C/xacc-apar.html diff --git a/Docs/En/xacc-apprdepr.html b/Docs/C/xacc-apprdepr.html similarity index 100% rename from Docs/En/xacc-apprdepr.html rename to Docs/C/xacc-apprdepr.html diff --git a/Docs/En/xacc-bal_tracker.html b/Docs/C/xacc-bal_tracker.html similarity index 100% rename from Docs/En/xacc-bal_tracker.html rename to Docs/C/xacc-bal_tracker.html diff --git a/Docs/En/xacc-balsheet.html b/Docs/C/xacc-balsheet.html similarity index 100% rename from Docs/En/xacc-balsheet.html rename to Docs/C/xacc-balsheet.html diff --git a/Docs/En/xacc-currency.html b/Docs/C/xacc-currency.html similarity index 100% rename from Docs/En/xacc-currency.html rename to Docs/C/xacc-currency.html diff --git a/Docs/En/xacc-date.html b/Docs/C/xacc-date.html similarity index 100% rename from Docs/En/xacc-date.html rename to Docs/C/xacc-date.html diff --git a/Docs/En/xacc-double.html b/Docs/C/xacc-double.html similarity index 100% rename from Docs/En/xacc-double.html rename to Docs/C/xacc-double.html diff --git a/Docs/En/xacc-expense.html b/Docs/C/xacc-expense.html similarity index 100% rename from Docs/En/xacc-expense.html rename to Docs/C/xacc-expense.html diff --git a/Docs/En/xacc-globalprefs.html b/Docs/C/xacc-globalprefs.html similarity index 100% rename from Docs/En/xacc-globalprefs.html rename to Docs/C/xacc-globalprefs.html diff --git a/Docs/En/xacc-globalprops.html b/Docs/C/xacc-globalprops.html similarity index 100% rename from Docs/En/xacc-globalprops.html rename to Docs/C/xacc-globalprops.html diff --git a/Docs/En/xacc-gpl.html b/Docs/C/xacc-gpl.html similarity index 100% rename from Docs/En/xacc-gpl.html rename to Docs/C/xacc-gpl.html diff --git a/Docs/En/xacc-groups.html b/Docs/C/xacc-groups.html similarity index 100% rename from Docs/En/xacc-groups.html rename to Docs/C/xacc-groups.html diff --git a/Docs/En/xacc-main.html b/Docs/C/xacc-main.html similarity index 100% rename from Docs/En/xacc-main.html rename to Docs/C/xacc-main.html diff --git a/Docs/En/xacc-mainwin.html b/Docs/C/xacc-mainwin.html similarity index 100% rename from Docs/En/xacc-mainwin.html rename to Docs/C/xacc-mainwin.html diff --git a/Docs/En/xacc-pnl.html b/Docs/C/xacc-pnl.html similarity index 100% rename from Docs/En/xacc-pnl.html rename to Docs/C/xacc-pnl.html diff --git a/Docs/En/xacc-print.html b/Docs/C/xacc-print.html similarity index 100% rename from Docs/En/xacc-print.html rename to Docs/C/xacc-print.html diff --git a/Docs/En/xacc-quicken.html b/Docs/C/xacc-quicken.html similarity index 100% rename from Docs/En/xacc-quicken.html rename to Docs/C/xacc-quicken.html diff --git a/Docs/En/xacc-recnwin.html b/Docs/C/xacc-recnwin.html similarity index 100% rename from Docs/En/xacc-recnwin.html rename to Docs/C/xacc-recnwin.html diff --git a/Docs/En/xacc-regwin.html b/Docs/C/xacc-regwin.html similarity index 100% rename from Docs/En/xacc-regwin.html rename to Docs/C/xacc-regwin.html diff --git a/Docs/En/xacc-reports.html b/Docs/C/xacc-reports.html similarity index 100% rename from Docs/En/xacc-reports.html rename to Docs/C/xacc-reports.html diff --git a/Docs/En/xacc-ticker.html b/Docs/C/xacc-ticker.html similarity index 100% rename from Docs/En/xacc-ticker.html rename to Docs/C/xacc-ticker.html diff --git a/Docs/En/xacc-trans_report.html b/Docs/C/xacc-trans_report.html similarity index 100% rename from Docs/En/xacc-trans_report.html rename to Docs/C/xacc-trans_report.html diff --git a/Docs/En/xacc-y2k.html b/Docs/C/xacc-y2k.html similarity index 100% rename from Docs/En/xacc-y2k.html rename to Docs/C/xacc-y2k.html diff --git a/Docs/fr/bofa-mym.html b/Docs/fr/bofa-mym.html new file mode 100644 index 0000000000..5a25cf9251 --- /dev/null +++ b/Docs/fr/bofa-mym.html @@ -0,0 +1,38 @@ + + + + + + Importing MYM Files + + + +

+Managing Your Money --> GNUCash

+J'ai finallement produit le script Perl qui me permet d'utiliser GNUCash +jusque sur un site web. J'ai deux années de données dans +Managing Your Money 2.x que je ne veux pas réentrer. Le script sortira +un simple fichier QIF avec toutes les transactions, comptes, et catégories. +(Actuellement seulement les transactions de non-investissement sont traitées.) +Le fichier QIF peut être importé vers xacc-1.0.18 si un petit +patch est appliqué à QIFIO.c. Le site est: +

http://www-cad.eecs.berkeley.edu/~gooch/mymdump.html +

+Transactions dupliquées

+J'ai aussi un script que j'utilise pour enlever les transactions dupliquées +au niveau du QIF. J'utilise ce script parce que Xacc est très strict +à propos des duplications (ce qui est très bon) et parce +qu'éditer des transactions importées causera une ré-importation +des mêmes transactions qui produiront des doubles. (Je télécharge +les transactions du même mois depuis ma  banque plusieurs fois +chaque mois, alors chaque fichier QIF téléchargé --après +le premier--contient des transactions que j'ai  déjà +importé. Je ne veux pas compter sur ma banque pour m'envoyer les +transactions dans le même ordre ou avec le même  formatage.) +Le site est +

http://www-cad.eecs.berkeley.edu/~gooch/qifuniq.html +

J'espère que les autres trouveront ces scripts facile à +utiliser. +

Ken Yamaguchi Octobre 1998 + + diff --git a/Docs/fr/pix/contract.gif b/Docs/fr/pix/contract.gif new file mode 100644 index 0000000000..fe672fc3b5 Binary files /dev/null and b/Docs/fr/pix/contract.gif differ diff --git a/Docs/fr/pix/expand.gif b/Docs/fr/pix/expand.gif new file mode 100644 index 0000000000..7af4876747 Binary files /dev/null and b/Docs/fr/pix/expand.gif differ diff --git a/Docs/fr/pix/foliowin-single.gif b/Docs/fr/pix/foliowin-single.gif new file mode 100644 index 0000000000..3a18e56a0b Binary files /dev/null and b/Docs/fr/pix/foliowin-single.gif differ diff --git a/Docs/fr/pix/foliowin.gif b/Docs/fr/pix/foliowin.gif new file mode 100644 index 0000000000..e8a9e52c79 Binary files /dev/null and b/Docs/fr/pix/foliowin.gif differ diff --git a/Docs/fr/pix/newaccwin-code.gif b/Docs/fr/pix/newaccwin-code.gif new file mode 100644 index 0000000000..ba004075d2 Binary files /dev/null and b/Docs/fr/pix/newaccwin-code.gif differ diff --git a/Docs/fr/pix/newaccwin-trade.gif b/Docs/fr/pix/newaccwin-trade.gif new file mode 100644 index 0000000000..c71bba0f7c Binary files /dev/null and b/Docs/fr/pix/newaccwin-trade.gif differ diff --git a/Docs/fr/pix/newaccwin.gif b/Docs/fr/pix/newaccwin.gif new file mode 100644 index 0000000000..ba004075d2 Binary files /dev/null and b/Docs/fr/pix/newaccwin.gif differ diff --git a/Docs/fr/pix/recnwin.gif b/Docs/fr/pix/recnwin.gif new file mode 100644 index 0000000000..83899b8357 Binary files /dev/null and b/Docs/fr/pix/recnwin.gif differ diff --git a/Docs/fr/pix/regwin-double.gif b/Docs/fr/pix/regwin-double.gif new file mode 100644 index 0000000000..f0a4ea3469 Binary files /dev/null and b/Docs/fr/pix/regwin-double.gif differ diff --git a/Docs/fr/pix/regwin-multi.gif b/Docs/fr/pix/regwin-multi.gif new file mode 100644 index 0000000000..2e0a51527f Binary files /dev/null and b/Docs/fr/pix/regwin-multi.gif differ diff --git a/Docs/fr/pix/regwin-single.gif b/Docs/fr/pix/regwin-single.gif new file mode 100644 index 0000000000..55d901d4b4 Binary files /dev/null and b/Docs/fr/pix/regwin-single.gif differ diff --git a/Docs/fr/pix/regwin.gif b/Docs/fr/pix/regwin.gif new file mode 100644 index 0000000000..b0adac908d Binary files /dev/null and b/Docs/fr/pix/regwin.gif differ diff --git a/Docs/fr/pix/report-baln.gif b/Docs/fr/pix/report-baln.gif new file mode 100644 index 0000000000..4a217ddae6 Binary files /dev/null and b/Docs/fr/pix/report-baln.gif differ diff --git a/Docs/fr/pix/report-folio.gif b/Docs/fr/pix/report-folio.gif new file mode 100644 index 0000000000..ee783f9a01 Binary files /dev/null and b/Docs/fr/pix/report-folio.gif differ diff --git a/Docs/fr/pix/ticker-a.gif b/Docs/fr/pix/ticker-a.gif new file mode 100644 index 0000000000..929d67a516 Binary files /dev/null and b/Docs/fr/pix/ticker-a.gif differ diff --git a/Docs/fr/pix/ticker-b.gif b/Docs/fr/pix/ticker-b.gif new file mode 100644 index 0000000000..f0e86e075c Binary files /dev/null and b/Docs/fr/pix/ticker-b.gif differ diff --git a/Docs/fr/projects.html b/Docs/fr/projects.html new file mode 100644 index 0000000000..73afead5b6 --- /dev/null +++ b/Docs/fr/projects.html @@ -0,0 +1,817 @@ + + +GnuCash Project Goals + + + + + + +

GnuCash Project Goals

+GnuCash +(previously known as X-Accountant) is a personal finance +accounting application. The project goals are to create a world-class +GPL'ed Open Source personal financial application for GNU/Linux and other +Unix's. The project is the result of a merger +of the GnoMoney project with X-Accountant development. There are currently +two versions: xacc-1.0.18, and gnucash-1.1.x. Version xacc-1.0.18 +is written in Motif, and is considered to be stable/production quality. +You can read more about X-Accountant at its home page + +http://www.cs.hmc.edu/~rclark/xacc/index.html. Versions +numbered as gnucash-1.1.x are the current development +versions, and are unstable. GnuCash is in active development; +this page is an effort to summarize the project goals and status. + +

+The GnuCash pages +provide overview & introductory material about GnuCash, and in +general present a glossier, more accessilbe format. This page is +aimed at developers, not users. +

+We believe that a GNU GPL project should provide goals and motivations +at both the large and the small scales, in order to focus and motivate +the developers. Over-arching and grand goals are difficult to grasp +and carry out; yet their lack serves only to dissuade the grand +thinkers. A list of detailed goals may be mind-numbing to the casual +reader; yet, without them, the roll-up-your-sleeves-and-do-it +coder cannot know where to begin. Detailed goals lend a concreteness +to the discussion: they can be architected, designed and coded at any time +by coders of any ability. Thus, we present a list of goals, large and +small, with the hope that the small goals will fall quickly, and the +large ones shall turn into a multitude of small ones. +

+ +

News

+
+
September 1998 +
Version 1.1.18 is begining to get stable; most things work the way they're + supposed to. New features include variety of ways of viewing an account, + a simple query engine, and support for multiple currencies. +

+ +

April 1998 +
The domain "gnucash.org" has been registered; web site is up. +

+ +

10 April 1998 +
Work on OFX support, and user-prefrences, has begun in earnest. +

+ +

10 March 1998 +
Source is available with CVS. See instructions at bottom. +

+ +

4 March 1998 +
The folks involved with + + WaterMark, + GnoMoney, + and + + X-Accountant + have tentatively agreed to join forces to work on a unified + personal-finance project. Subscribe to the xacc mailing list + for more info. +

+

+ +

Meta-Architecture Goals

+ + + + +

Concrete Architectural and Development Goals

+The following is a list of the larger, more abstract, and more difficult +architectural goals. + +
+
Graphs, Reports +
Add the whole host of reports, including Net Worth statements, + Balance Sheets, and Profit & Loss statements. These should be + printable: it might be best to create them as ordinary HTML pages, + and use the printing abilities of the browser. In an ideal + situation, the user should be able to create custom reports. +

+ Other output format possibilities include SGML and XML. In the + long run, these are preferable to HTML, since DSSSL and + Jade (James DSSSL Engine + can be used to convert to RTF, Postscript, etc. XML is the wave + of the future. +

+ The Report Generator should be a "dockable" subsystem of the + whole. Thus, it should be possible to run the report generator + in a stand-alone, read-only fashion without having to start up the main + application. +

+ Graphs, charts, etc. too ... +

+ One hard part of reporting is designing a configurable interface, + so that people can build custom reports. +

+ Status: +

    +
  • Simple HTML output is implemented. GnuCash will even act as a one-shot + web server. +
  • Reports for profit & loss, balance sheet, & portfolio valuation + implemented as html-embedded perl scripts. +
+

+ +

Web Site Maintenance & Marketing +
Put together an active, relevent web site. Mailing list archives. + Screen shots. Announces on c.o.l.a, freshmeat. Put minor news items, + etc. on web site news. Bug tracker. Maintain repository of + co-requisite tools & packages. +

+ Status: +

    +
  • Jeremy Collins + jcollins@gnucash.org + has put together the web site and is the current maintainer. + Almost everything on the list above is now available. Thanks Jeremy! +
  • Dec 1998 -- Yannick LE NY has provided French tranlations of the + lead web pages. +
  • Nov 1998 -- Many thanks to Patrick Condron + <pcondon@rackspace.com> + and rackspace.com forgh-bandwidth hosting of the web + site. +
+

+ +

OFX support +
Provide the SGML DTD parsers to handle the OFX reports that many + banking institutions are providing, or will soon be providing, to + retail customers. See below for OFX references. OFX is an open spec + from Microsoft, Intuit, & Checkfree, and will be supported by Integrion. + The OFX DTD's are included in the 1.1 distributions. See + OFX HomePage for details. +

+ Status: +

    +
  • Work on an OFX DTD parser has begun. headers generated + correctly. Constrcutors generated almost correctly. + Parser work done by Linas. +
  • Simple scripts have been run against real-live OFX servers. + Ueli Rutishauser <urutishauser@bigfoot.com> + has been able to do e*trade transactions to a real account. +
  • how it will intereact with the GUI is a wide-open question. +
+

+ +

Budgeting +
Ability to handle budgeted future transactions. +

+ Status: +

    +
  • A design doc has been submitted by Bob Drzyzgula. + Take a look at ./src/budget.txt in the source directory. +

    + +

    Ledger Widget +
    Create a more powerful ledger widget. Currently, the X-Accountant + uses the powerful XbaeMatrix widget to display the ledger windows. + This is a good widget for displaying and maintaining tables. + However, it could, and should, be further customized to handle + the needs of accounting use. Thus, it should be possible to + designate cells as being date cells, and provide completely + automated handling of date entry within these cells. Similarly, + it should be possible to designate monetary cells which can handle + input. General text fields, for the description and the memo, + should be endowed with quick-fill abilities, allowing completion + by comparing the current types text to previous entries. Finally, + there should be pull-down (combo-box) cells that can contain + pull-down item lists. Each of these functions are currently + implemented in X-Accountant; however, there is no separation between + these features and the specific accounting functions. A clean + separation would make the design and implementation of new ledger + windows much simpler and easier. +

    + Current Status: the latest beta-development releases (version + 1.1.x) contain such an object. +

      +
    • Currently Motif-based +
    • GTK port mostly work, but is hung up on the inadequacies of + underlying table widget. +
    • No Qt port yet of the register. +
    • the simple single-account ledgers (incl. stock ledgers) seem + to be working correctly, but no heavy testing yet. +
    • The multiple-account ledger is very broken. +
    • The multi-split ledger seems to work. One can display + one line per transaction, two lines per transaction, one line + per split, or a dynamic-expansion version of these. +
    • GTK version published, thanks to Rob Browning. + (other comments above are for motif version). +
    • No curses or emacs version yet. +
    • Taxes: For handling e.g. new zealand GST tax (12.5%) or british VAT, + it would be enough to add a checkbox to say y/n, add tax ... + (of course other schemes would be more sophisticated.) +
    • Linas Vepstas <linas@linas.org> is handling the "GUI-independent" + parts of the register, as well as the Motif code. +
    • Ted Lemon <mellon@hoffman.vix.com> + is creating/fixing/extending + the underlying gtk widget to have the features that GnuCash needs. +
    +

    + +

    Engine, Financial Objects +
    The current system makes a distinction between the data (account, + transaction) and they GUI that displays it. The data is embeded + within and controlled by the "Engine", which is a set of routines + to access accounts, transactions, etc. The flexibility and features + of the engine can be improved, and in particular, the sophistication of + the query generator, and the level of multiple-currency support. + But possibly the most important task is to review the paradigm + and adjust it to bring it in line with a transaction-processing + model. +

    + Current Status: +

      +
    • The basic engine has been detangled from + the GUI elements, as of version gnucash-1.1.4. +
    • Binary file I/O mostly detangled into a separate module. +
    • Crude transaction logging in place; should be suitable + for error/crash recovery but has not been tried by fire. +
    • Backup files automatically created & timestamped. +
    • BeginEdit()/RoolbackEdit()/CommitEdit() routines mostly in place, + These "Transaction processing constructs" + should simplify creation of an SQL back end. +
    • Multiple currency support is present but shaky/untested. +
    • Query engine is minimal/sparse in capabilities. +
    • Linas <linas@linas.org> is maintaining the engine code. +
    + +

    + +

    Extension Language Support +
    Currently, the application is wired together entirely with + C code. A goal of the project is to replace this wiring with + a highly-configurable extension-language interface. +

    + The overall architecture is envisioned to be as so: + All code, including the transaction engine, the file I/O routines, + the menus, and the ledger, will be abstracted into + compact modules that can function independently of each other. + At the highest level, there will be a infrastructure with + extension language interfaces that will "wire together" the + various modules. +

    + Such "wiring together" will consist of a dispatch infrastructure + that will allow arbitrary menu entries to be hooked to arbitrary + modules. The configuration for menu entries, and thier associated + callbacks, will be specified in an ext-lang configuration file. + At the final stages, it is hoped that new modules can be imported + without requiring that the application itself be recompiled & relinked. +

    + Status: +

      +
    • Work has begun. +
    • The transaction engine interfaces are avaialable via + + SWIG. +
    • The main loop is controlled by the Guile scheme interpreter. +
    • Rob Browning is the reigning expert. +
    +

    + +

    Multi-user Support +
    Multi-user support should be added with either an SQL backend + to the engine, and/or through CORBA interfaces to the engine. + Project Kontor and also FreeMoney is working on SQL schemas; + Kontor is also working on Java RMI/CORBA interfaces. +

    + The following industrial-strength features are still needed: +

      +
    • transaction-oriented queuing of updates +
    • event subscription channel for updates +
    • user authentication +
    • user authorization +
    • non-repudiability +
    • encryption of network connections +
    +

    +

      +
    • Stephan Lichtenauer <s_lichtenauer@muenchen.org> + is working on corba interfaces. +
    • "Alexander L. Belikoff" <abel@bfr.co.il> may start work on corba +
    + +

    + +

    SQL I/O +
    A module is necessary to allow data to be fetched from an SQL + database, and for that database to be updated. Some thoughts: + SQL databases do not need to be locked during editing: instead, + an optimistic approach, similar to that employed by CVS (concurrent + version system, a mechanism for storing versions of source code) + could be used: if the edits conflict with changes made by others, + the edit could be rejected en-masse, allowing the user to merge and + correct their changes. This is a very important note: updating + SQL does NOT require locks to be held for long periods of time! +

    + +

    Network Banking +
    Add ability to do on-line banking, billpay, etc. +

    + Status: +

      +
    • Can obtain stock quotes from Yahoo (NYSE), Fidelity Investments, + T.Rowe Price, and do automated update of GnuCash data files + (with the gnc-price perl script). Need to add more data sources. + See src/quotes/Quote.pm and src/quotes/gnc-price for details. +
    +

    + +

+ +

Incremental Development Goals

+The following is a list of goals and "bug fixes" that should be solved +immediately, independent of the major goals. + +
+
User Interface Ports +
Port the package as a whole to gtk/gnome, Qt, Emacs. +

+ Status: +

    +
  • Currently, the most functional interface is the Motif interface. + This primarily due to historical reasons, i.e. the Motif interface was + inherited from X-Accountant. Maintained by Linas Vepstas. +
  • The gnome/gtk version is second in line. It frequently doesn't + compile, although sometimes it runs. The #1 showstopper for this + port is the lack of a suitable table widget that can be used + as a Ledger. The ledger currently uses the gtk_clist widget, + but this isn't really powerful enough. Volunteers? +

    + Most of the work has been done by + Jeremy Collins, with considerable help from Rob Browning. + Daniel R Risacher <magnus@alum.mit.edu> keeps threatening to + do something ... +

  • First draft of Qt code submitted by + Dirk Schoenberger <schoenberger@signsoft.com>. +
  • Jim Pick <jimpick@jimpick.com> may be working on an emacs version... +
+ +

+ +

Internationalization +
All menus, markup and help-text should be internationalized, + so that GnuCash could be usable in any country. This + would include the printing of currency values in the local + country conventions. +

+ Current status: +

    +
  • Most English-language messages have been + #defined and moved to a single header file + include/messages_en.h +
  • Plan to use gnu gettext() for the message catalogues. +
  • Looking for routines that can parse and print + monetary values in different formats, as well as date/time + parsing/printing routines. (gnucash contains such parsing + routines, but they're not very powerful or i18n'ed.) +
  • Henning Spruth has translated the README into German. +
  • Yannick Le Ny <y-le-ny@ifrance.com> traduction en francais + et include/messages_fr.h +
+

+ +

Icons, Glitz, Icons, Glitz +
A set of pretty icons and button pixmaps should be created for + minimized windows, and for the various buttons. A user-configurable + button-bar would be nice too. This should probably be coupled with + the creation of an X resource file, which does not currently exist. +

+ +

User Preferences +
Create menu system & file format for manipulating user + preferences. Preferences include things like showing/not + showing categories, forcing double-entry, etc. +

+ Current status: +

    +
  • Rob Browning has put together a basic infrastructure + that unifies command-line flags with sceme-based config files. +
  • Rob also is auto-generating the GUI ... +
+

+ +

Categories +
Provide a default list of "Categories" (Income/Expense Accounts). + These are categories such as "Automobile Expense", "Bank Interest + Income", and "Employment Income". The user should be able to + select a default set of accounts, and have those be created. + To actually implement this, it might be best to simple create + a file with these in them, and load that file. A mechanism should + be provided to allow the user to weed-out the unwanted accounts + without hampering their ability to use them at a later date, if + desired. +

+ Current status: +

    +
  • There exists the ability to merge + accounts from multiple files, and the ability to hide/show + Income/Expense Account types. +
+

+ +

Recurring Transactions +
Add support for automatic, recurring transactions, e.g. + mortgage payments, fixed-interest bonds, bank accounts, etc. + Note that the design for this could be very different, depending on + whether the multi-user functions are available or not. + Note also, maybe the engine needs to support two dates per + transaction: expected, and actual ?? + Current status: +
    +
  • April 1998 -- Design Doc contributed by Bob Drzyzgula. See + src/budget.txt +
+

+ +

Navigation +
Menu navigation using the keyboard should be possible. + Although menu mnomenics exist, they seem to be broken. + Similarly, tab-key navigation should be possible. Currently, + it is possible to use the tab key to navigate from field to + field in the register window, to user arrow keys to navigate menus, + and quick-fill to automatically complete fields. However, + it is not possible to tab over to the "Commit" button. It should be. +

+ +

Folder Tabs +
Currently, Income/Expense accounts can be shown or hidden by + selecting from a menu. It would be nice to be able to examine + different account types (Asset, Liability, Income, Expense, + Payables, Receivables, Inventory) by selecting a tab folder. +

+ +

Fly-Over Help +
When the user pauses the mouse over a button, "fly-over" pop-up + help windows should appear. +

+ +

Simplified Stock Ledger +
Stocks and Mutual funds are handled by placing them each in their + own account. Each account can be viewed individually. If all of + the stock accounts are children of a master trading account, then + the trading account can be viewed and modified in a General Ledger + window. The current stock general ledger window is a bit obtuse, + and difficult to understand and use. A simplified but still + powerful ledger window is desperately needed. +

+ +

Forced Double-Entry +
The system supports double-entry: every transaction + indicates a pair of accounts: one is debited, and one is credited. + Double-entry is a powerful way of ensuring the integrity of + of the financial data. Currently, while double-entry is supported, + its use is not forced: the user can create dangling transactions, + where only one account is indicated. Although this is acceptable + for home use (even desirable, since it allows the casual user + the simplicity they desire), it is not acceptable for business use. + It must be possible to enable forced-double entry, so that a + transaction cannot be completed until two accounts have been specified. +

+ Current status: +

    +
  • April 1998 -- The engine has a couple of flags in it that control + double-entry behaviour: it can be made lax, or strict: + however, they are compiled in, there is no way to change them + from the gui. +
  • Dec 1998 -- Scruber functions implemented to crawl through data, + and find all unbalanced or orphaned transactions. +
+

+ +

emacs, vi, motif, kde, gnome Key Bindings for Text Fields +
Make sure that text fields can handle the vi & emacs key bindings, + so that e.g. emacs-style ctrl-a, ctrl-k does the right thing. +

+ +

Bonds & Interest Bearing Instruments +
Support should be added for Mortgages, Bonds, CD's and other + instruments (e.g. savings accounts) that pay interest on a regular + basis. It should be possible to specify the interest rate, + the payment schedule, and other regularly recurring transactions. +

+ +

Household Assets +
Add an example showing how regular household assets (house, car, + jewelry, etc.) should be treated. In particular, show how + appreciation and depreciation should be treated. +

+ +

Inventory, Job Costing +
Add the business features needed to maintain a stock of items for + sale, estimating jobs. +

+ +

Payables & Receivables +
Add features to track sales receipts and other pending sources + of income, as well as owed sums. +

+ +

Check Printing +
Create a check-printing ability. +

+ +

Locks +
When splits are implemented, and the parent transaction has been + marked as cleared, the record should be locked, so that further + modifications to the amount can't be performed (or at least, a warning + is generated. This prevents accidental garbaging up of old + transactions.) +

+ +

Grayed-out Form Help +
Create grayed out entries in the ledger, titled "Memo", + "Description", etc, helping users understand what should be typed into + each field. +

+ +

Accounting Periods +
Ability to permanently lock records as non-editable. This should + be straight-forward by using the "reconciled" field to hold + "locked", and not allowing the GUI to edit locked records. +

+ +

Quicken(TM) Export +
Ability to export Quicken QIF files. Quicken import is implemented + and mostly works. + (Note: Quicken import worked in v 1.0, but got slightly broken in v 1.1 + It no longer merges duplicate transactions when importing two or + more QIF files. This should be easy to fix, as the "merge" routine + is there in the code somewhere; its just not called because it was + never restructured for the vv 1.1 engine.) +

+ +

Transaction Window Fixes +
The transaction window should allow the user to specify a share + price (when purchasing/selling shares) as well as the load + and/or fees associated with the purchase. Fees, of course, + are handled as separate transactions: however, it should + still be possible to specify the fees, the transfer, and other + details from a single window. +

+ Status: Some basic reorganization of register was done to + support mixed multi-line split display. However, the actual + display of such things remaions unimplemented. +

+ +

Tab-delimited ASCII file format +
People *like* to be able to read file contents in ASCII. There are + many Unix tools for manipulating ASCII. An ASCII equivalent of the + current file format should be easy to develop ... just substitute + the writes with printf's. The tab-delimited format should + be compatible with that of /rdb. The /rdb format is like so: +
+    field-name  tab  fieldname  tab fieldname   \n
+    ------------------------------------------  \n
+    value       tab   value     tab value       \n
+    value       tab   value     tab value       \n
+    etc ...
+
+ Its a very simple, very basic flat table format. It should match + the SQL schemas in order to minimize I/O complexity and incompatibility. +

+ + +

+

+ +

Status

+Well, just to show that we are getting things done. + +
+
Getting Source with CVS +
A read-only version of the cvs tree is available on the net. + To access it, first, login, as so: +
+     cvs -d :pserver:cvs@linas.org:/home/cvs/cvsroot login
+     
+ The password is "guest". To get a copy of the source, do a +
+     cvs -d :pserver:cvs@linas.org:/home/cvs/cvsroot checkout xacc
+     
+ Note that various versions can be accessed with tags. + For example, the tag xacc-10b17 will get you version + 1.0.17 and the tag xacc-11b6 will get you version 1.1.6 + In particular, the latest code in the 1.0.x series (the stable series) + is available on the branch xacc-10-patch. For historical + record, you can view Robin Clark's original source from October 1997 + at xacc-09a. Things have changed a *lot* since then. +

+ (March 1988) +

+ + +

Version 1.1 Alpha +
The Alpha development version 1.1 is out. Features include: +
    +
  • Data engine cleanly separated from GUI +
  • Redesigned register infrastructure will make it much easier to + create new/customer register displays, and to port to other GUI's. +
  • Splits have been added to the engine; the GUI does not yet expose them. +
  • Source available via anonymous CVS +
  • Work on GTK ports have begun (thanks to Jeremy Collins & Rob + Browning) +
+ (January 1998) +

+ +

New Improved Web Site +
We now have a spiffy web site, with good graphics and + exciting text, a mailing list, mailing list archives, and a read-only + CVS tree. (December 1997) +

+ +

Splits +
When performing a transfer, it is well-useful to allow the transfer + to be "split" between several accounts. To implement a split, + the best direction might be to have each transaction be a pointer + to a set of splits, with each split having its own distinct + credited account, memo field and currency value. Suggestion is to + leave the debited account pointer in the main transaction, and have one + credited account pointer in each of the splits. Also, suggest + leaving a "cleared" flag in the main transaction, *and* putting a + separate cleared flag in each split as well. This allows the + cleared flag to be independently set for both the debited & credited + accounts. +

+ Status: Essentially more-or-less done (July/August 1998) +

+ +

+ +

Misc Bugs

+ + +

Volunteers

+Your name here as project contributor! + +This list only mentions some of the recently active developers; many, +many others have contributed fixes and patches both large and small. +I've tried to credit them in the README. +

+ +

References

+ + +
+Draft version 0.25 -- October 1998
+Linas Vepstas linas@linas.org
+ + diff --git a/Docs/fr/tidy-up b/Docs/fr/tidy-up new file mode 100755 index 0000000000..d39a9d3efd --- /dev/null +++ b/Docs/fr/tidy-up @@ -0,0 +1,7 @@ +#!/bin/ksh +# $ID$ +# If you have Dave Raggett's "tidy" utility, this will tidy up +# the HTML files here. +for i in *.html ; do + tidy -m -i $i +done \ No newline at end of file diff --git a/Docs/fr/xacc-about.html b/Docs/fr/xacc-about.html new file mode 100644 index 0000000000..9de8fc5983 --- /dev/null +++ b/Docs/fr/xacc-about.html @@ -0,0 +1,393 @@ + + + + + + A propos de X-Accountant + + + + +

+A propos de GnuCash

+ +
GnuCash est un programme de suivis de vos finances personnelles. Quelques +une de ces fonctions sont : +
    +
  • +Des comptes multiples , qui peuvent être ouverts en même temps. +Créez un compte xacc pour chacun de vos comptes bancaires.
  • + +
  • +Chaque compte garde un solde actuel en plus d'un solde de pointage, alors +vous pouvez suivre les transactions qui n'ont pas encore été +pointés, comme les chèques en cours de règlement qui +n'ont pas encore été débités de votre compte.
  • + +
  • +Interface facile à utiliser. Si vous savez utiliser le talon de +votre carnet de chèques , vous savez utiliser xacc.
  • + +
  • +Rapprochement automatique du compte. A la fin du mois , ouvrez la fenêtre +de rapprochement , entrez le solde final de votre relevé bancaire, +et pointez les transactions qui apparaissent sur le relevé bancaire. +Celà rend facile le dépistage de n'importe quelle écart +ou erreurs.
  • + +
  • +QuickFill (saisie rapide)... lorsque vous commencez une saisie dans les +champs de description , s'il retrouve une précédente transaction, +il vous la propose,frappez <TAB> copiera alors la précédente +transaction. Commode si vous avez des transactions semblables assez régulierement +.
  • + +
  • +Portefeuille d'actions/de societes d'investissements (n.d.t: pour ces dernieres +FCP et SICAV en France). Suivis d'actions individuellement (une par compte)ou +dans un portefeuille de comptes (un groupe de comptes qui peuvent etre +affichés ensemble ).
  • + +
  • +Support pour de multiples monnaies et comptes d'achat/vente de devises +. (partiel, toujours défaillant). Les comptes bancaires peuvent +être établient dans différentes monnaies, et vendus/achetés +avec les prix indiqués qui peuvent être fait, comme les actions +doivent être vendus/achetés.
  • + +
  • +Importation des fichiers de Quicken . Importation +des fichiers QIF de Quicken Version 3.0 .
  • + +
  • +Rapports. Affiche ou produit en HTML les +rapports du solde et pertes/profits.
  • +
+ +

+Fonctions Avancées

+X-Accountant possède quelques une des fonctions qui ne se trouve +pas habituellement dans un simple logiciel de gestion de finances personnelles: +
    +
  • +Sous-comptes: Un compte principal peut avoir un classement de petits comptes +ou de comptes specialisés au-dessous de lui. Cela permet d'avoir +des types de comptes semblables (par exemple : Espèces, Banque, +Actions) qui peuvent etre groupés dans un compte principal (par +exemple: Possessions ou Avoirs).
  • + +
  • +Double livret: Chaque transaction peut apparaitre +dans deux comptes; un compte est debité et l'autre est credité +avec exactement le même montant. Avec le double livret , une transaction +affichée dans une fenêtre sera automatiquement mise à +jour dans toutes les autres fenêtres montrant cette transaction, +et dans les deux comptes.
  • + +
  • +Types de comptes revenus/dépenses (Catégories). +Correctement utilisés avec la fonction du double livret, ils peuvent +être utilisés pour créer un Bilan et un rapport des +Profits et des Pertes Par example, l'épargne des interets du compte, +les dividendes d'actions, ou la feuille de paie peuvent etre marqué +l'un et l'autre comme depot dans un compte bancaire , et comme gains/revenus +dans un compte de type Revenus, utilisant la fonction du double livret +(transfert). De la meme maniere, les paiements par la carte de credit peuvent +etre notés dans un compte de carte de crédit , en plus du +compte correspondant aux dépenses.
  • + +
  • +Registre general/Grand livre : Des comptes multiples peuvent être +affichés dans une fenetre registre au même moment. Cela peut +soulager de l'ennui du depistage d'erreurs de saisie ou d'enregistrement +.Il permet aussi une vision pratique d'un portefeuile de beaucoup d'actions, +en y montrant toutes les transactions dans ce portefeuille.
  • +
+ +

+Version

+Cette version est gnucash-1.2.x, et est la dernière version stable +de GnuCash. +
  +

+Développeurs principaux

+ +
+
+Robin Clark <rclark@hmc.edu>
+ +
+a écrit le X-Accountant originel en Motif comme un projet scolaire, +l'amenant jusqu'à la version 0.9 en Octobre 1997.
+ +
+Linas Vepstas <linas@linas.org>
+ +
+comme il le dit: le GUI était léger, le code était +documenté et bien structuré, et il était entièrement +sous GPL. Et aussi il le ré-écrit : ajoutant des widgets +de cellules avec XbaeMatrix, alors que les combobox et flèches devaient +faire de nouveau une même GUI légère, réécrivant +le code interne de X-Accountant pour lui ajouter la double-entrée, +une hiérarchie de comptes, l'augmenta d'un mini moteur de transaction, +ajouta le support pour les actions, et ajouta les menus d'aide. C'était +la version 1.0 de Janvier 1998. Depuis lors, pour la version 1.1, le moteur +fut étandu et redéfini , et le code de la fenêtre d'enregistrement +fut completement reconçu et fait pour la plupart en Motif et independent +du GUI. Présentant un certain prototype de OFX fonctionnant.
+ +
+Jeremy Collins <jcollins@gnucash.org>
+ +
+fit connaitre au public largement et grandement le projet GnoMoney, et +alors changea son nom en GnuCash. Jeremy créa le site web de gnucash.org, +enregistra le domaine, fit fonctionner le code initial en GTK/gnome.
+ +
+Rob Browning <rlb@cs.utexas.edu>
+ +
+abusa tout le monde pour ne pas utiliser perl, et alors ajouta le support +guile/scheme. Rob maintient l'infrastructure de construction, traite de +toute chose qui touche au langage d'extension guile/perl, et traite de +configuration et  configurabilité.
+ +
+Dirk Schoenberger <schoenberger@signsoft.com>
+ +
          travaillle sur +le portage en Qt/KDE +

Yannick Le Ny  <y-le-ny@ifrance.com> +
           Localise +(traduction et adaptation) de Xacc et Gnucash pour la France et les pays +francophones. +
           Travail +effectué :traduction du Readme, des messages et de l'aide en ligne +de Gnucash en français +
           Essaie +de finir de traduire tout le site web de Gnucash en français sauf +la liste de courriers et de le maintenir à jour

+ +

+Correctifs et patches

+Andrew Arensburger <arensb@cfar.umd.edu> for FreeBSD & other patches +
Matt Armstrong <matt_armstrong@bigfoot.com> for misc fixes +
Fred Baube <fred@moremagic.com> for attempted Java port/MoneyDance +
Christopher B. Browne <cbbrowne@hex.net> for perl stock scripts +
Graham Chapman <grahamc@zeta.org.au> for the xacc-rpts addon package +
George Chen <georgec@sco.com> for MS-Money QIF's & fixes +
Jeremey Collins <jcollins@gnucash.org> for GnoMoney & GTK port +
Patrick Condron <pcondon@rackspace.com> for webserver and T1 connection. +
Ciaran Deignan <Ciaran.Deignan@bull.net> for AIX binary version +
Tyson Dowd <tyson@tyse.net> for config/make patches & debian +maint. +
Koen D'Hondt <ripley@xs4all.nl> for Solaris patches to XmHTML +
Bob Drzyzgula <bob@mostly.com> for budgeting design notes +
Jan-Uwe Finck <ju_finck@mail.netwave.de> for German message translation +
Ron Forrester <rjf@aracnet.com> for gnome patches +
Dave Freese <DFreese@osc.uscg.mil> for leap-year fix +
Otto Hammersmith <otto@bug.redhat.com> for RedHat RPM version +
Alexandru Harsanyi <haral@codec.ro> for misc core dumps & lockups. +
Jon K}re Hellan <jk@isdn-a33.itea.ntnu.no> misc core dump fixes +
Prakash Kailasa <PrakashK@bigfoot.com> for gnome build fixes +
Tom Kludy <tkludy@csd.sgi.com> for SGI Irix port +
Sven Kuenzler <sk@xgm.de> for SuSE README file +
Ted Lemon <mellon@andare.fugue.com> for NetBSD port +
Yannick Le Ny <y-le-ny@ifrance.com> pour la traduction en francais +
G. Allen Morris III <gam3@ann.softgams.com> for QIF core dump +
Peter Norton <spacey@inch.com> for a valiant attempt at a GTK port +
OmNiBuS <webmaster@obsidian.uia.net> web site graphics & content +
Myroslav Opyr <mopyr@IPM.Lviv.UA> for misc patches +
Alain Peyrat <Alain.Peyrat@nmu.alcatel.fr> for configure.in patches +
Gavin Porter <maufk@csv.warwick.ac.uk> for euro style dates +
Ron Record <rr@sco.com> for SCO Unixware & OpenServer binaries +
Christopher Seawood <cls@seawood.org> for XbaeMatrix core dump +
Mike Simons <msimons@fsimons01.erols.com> misc configure.in patches +
Richard Skelton <rich@brake.demon.co.uk> for Solaris cleanup +
Henning Spruth <spruth@bigfoot.com> for German text & euro date +rework +
Ken Yamaguchi <gooch@ic.EECS.Berkeley.EDU> QIF import fixes; MYM +import +
  +

+Systèmes d'exploitation supportés

+gnucash-1.0.18 (ex xacc-1.0.18) est conu pour fonctioner dans ces différentes +configurations: +
Linux 2.0.x -- Intel w/ RedHat Motif +
Linux 2.0.x -- Intel w/ Lesstif v0.81 +
Linux Debian -- Intel w/ Lesstif v0.81 +
SGI IRIX -- MIPS +
IBM AIX 4.1.5 -- RS/6000 +
SCO Unixware 7 -- Intel +
SCO OpenServer 5.0.4 -- Intel +
NetBSD -- Intel +
  +

+

+Historique

+Le tableau ci-dessous montre quelques historiques de lignes de code et +le nombre de fichiers comptés pour le dévelopement du projet +X-Accountant/GnuCash + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Statistiques de l'historique du dévelopement
Version moteur registre grand livre motif prefs (scm) docs (html) divers Total 
xacc-0.9 +
Sept 97 
34 fichiers +
(7.5+0.9) 
5 fichiers +
(0.4) 
39 fichiers +
(8.8) 
xacc-0.9w +
Dec 97 
51 fichiers +
(13.8+1.5) 
9 fichiers +
(0.8) 
60 fichiers +
(16.1) 
xacc-1.0.17 +
Fev 98
52 files +
(14.8+1.8) 
12 files +
(1.4) 
64 files +
(18.0) 
gnucash-1.1.15 +
Aou 98 
24 fichiers +
(6.2+1.5) 
31 fichiers +
(6.1+1.7) 
5 fichiers +
(1.4+0.4) 
30 fichiers +
(7.4+0.7) 
3 fichiers +
(0.3) 
16 fichiers +
(1.9) 
non compté +
(>1.0) 
109 fichiers +
(32.9) 
gnucash-1.2.2 +
Aou 99 
41 fichiers +
(10.2+3.6) 
28 fichiers +
(5.5+1.7) 
14 fichiers +
(2.4+0.6) 
26 fichiers +
(8.7+0.5) 
14 fichiers +
(1.4) 
30 fichiers +
(2.6) 
non compté +
(>1.0) 
153 fichiers +
(37.2) 
+ +

Chaque cellule contient: +

nombre de fichiers *c et *.h +
(KLOCS dans *.c + KLOCS dans *.h), +

où KLOC == kilo-lignes-de-code, comme rapported par wc. +
  + + diff --git a/Docs/fr/xacc-acctypes.html b/Docs/fr/xacc-acctypes.html new file mode 100644 index 0000000000..19a9c314e0 --- /dev/null +++ b/Docs/fr/xacc-acctypes.html @@ -0,0 +1,83 @@ + + + + + + Account Types + + + +

+Types de comptes

+ +
+
+Banque
+ +
+Le type de compte banque contient l'épargne ou  le compte chèques +détenu dans une banque. Souvent rémunéré(n.d.t +: pas en france).
+ +
+Liquidités
+ +
+Le type de compte liquidités est utilisé pour contenir une +réserve , une boite à chaussures ou une taie d'oreiller bourré +d'argent/ liquidités .
+ +
+Carte de crédit
+ +
+Le compte carte de crédit est utilisé pour contenir des comptes +de carte de credit (par exemple american express) et debit (par exemple +visa, eurocard/mastercard, carte bleue).
+ +
+Avoir, Dette
+ +
+Les compte avoir et dette indique des comptes généralisés, +générique qui ne sont dans aucun de ceux ci-dessus.
+ +
+Actions, OPCVM (SICAV et FCP)
+ +
+Les comptes d'actions et OPCVM seront typiquement montré dans des +registres qui montreront trois colonnes: cours, nombre de titres, et montant.
+ +
+Revenus, Dépenses
+ +
+Les comptes de revenus et dépenses sont utilisés pour contenir +les revenus et dépenses. Ainsi, quand les données dans ces +comptes sont affichées, le signe des entrées est inversé +par rapport à l'usage habituel.
+ +
+Capitaux propres
+ +
+Le compte capitaux propres est utilisé pour équilibrer la +feuille du bilan.
+ +
+Devises
+ +
+Les comptes de devises sont utilisés pour faire du commerce/spéculer +sur les devises. Dans beaucoup de cas, ils se comportent comme les actions, +excepter que le calcul de la valeur est différent. Noter que les +transferts ne peuvent pas être fait directement entre deux comptes +libellés dans des monnaies/devises différentes. De tel transferts +ne peuvent être seulement fait qu'à l'intérieur de +comptes de commerce de devises. (Les vérification de sécurité +pevent être en partie toujours défaillantes ... )
+
+ + + diff --git a/Docs/fr/xacc-accwin.html b/Docs/fr/xacc-accwin.html new file mode 100644 index 0000000000..22d6b1532e --- /dev/null +++ b/Docs/fr/xacc-accwin.html @@ -0,0 +1,32 @@ + + + + + + Fenêtre nouveau compte + + + + +

+Fenêtre Nouveau Compte

+ +


Ci-dessous se trouve à quoi ressemble une fenêtre nouveau +compte : +
  +

+

Choisissez trier +par ordre pour le compte quand il apparait dans un rapport ou dans +le Tableau de comptes. +

L'image ci-dessus montre un exemple pour un compte d'actions ou de d'achat/ventes +de monnaies/devises. Noter que le champ  Security n'est pas grisé, +et que vous pouvez entrer une valeur. Cette valeur est typiquement un code +de valeur d'une action, ou un code monétaire à trois lettres +ISO. +
  +

+
  +
  +
  + + diff --git a/Docs/fr/xacc-adjbwin.html b/Docs/fr/xacc-adjbwin.html new file mode 100644 index 0000000000..b91d76a22a --- /dev/null +++ b/Docs/fr/xacc-adjbwin.html @@ -0,0 +1,20 @@ + + + + Fenêtre d'ajustement du solde + + + + + +

CE FICHIER EST VIDE

+ +

Fenêtre d'ajustement du solde. Utiliser la pour ajuster le +solde. Entrez le montant en francs , et une entrée dans le +registre sera créée qui mettra le solde courant +équivalent à ce nouveau solde. Ajouter plus de +documentation ici. +


+

+ + diff --git a/Docs/fr/xacc-apar.html b/Docs/fr/xacc-apar.html new file mode 100644 index 0000000000..a60cbf0bbb --- /dev/null +++ b/Docs/fr/xacc-apar.html @@ -0,0 +1,54 @@ + + + + + + + + +

+Dettes (dus aux) fournisseurs et crédit ( à recevevoir des)  +fournisseurs

+C/F et  D/F sont des types en profondeur, +

En tous cas, considérons C/F. Nous ne pouvons rien réellement +raconter sur les D/F parce que nous payons toujours *nos* factures à +temps, n'est ce pas ? :-) +

Ainsi de toute façon, disons que nous donnons à nos clients +30 jours pour payer. +

Quand nous faisons une vente, les deux comptes affectés sont +les Ventes (un compte revenus) et C/F. C/F est un avoir, mais il n'est +pas liquide, et il n'est pas forcément en espèces/argent +comptant. +

Alors quand ils réusissent à payer leurs factures, diminuant/déposant +un gros sac de vingt dollars de factures, nous transférons le montant +depuis C/F vers liquidités. +

La raison pour laquelle nous le faisons en deux étapes est que +nous avons decidés de faire notre comptabilité sur une base  +d'accumulation et non sur une base de liquidités, parce que , et +bien, la plupart de nos transactions ne sont pas en liquidités, +ce sont des engagements. +

Nous reportons les ventes dans nos chiffres de ventes au moment où +nous les faisons, mais si l'auditeur veut savoir à propos de ou +si nous les avions récupérer avec des erreurs (stuck)  +avec de mauvais débits, nous brisons ces A/R par une durée +telle qu'ils ont : 0-30 supposés, 31-60 supposés, etc. A +un certain point quand un débit particulier est  "nul ou annulé", +comme quand les salauds qui en n'ont marre vont en faillite, nous coupons/arrimons +ensemble C/F et les ventes, ainsi nous reprenons et arrangeons (ou plutôt, +"désarrangeons") le compte ventes pour montrer que les ventes  +n'était jamais très bonnes. +

Nous pouvons utiliser la même technique pour les choses que nous +payons à l'avance. Si nous devons payer six mois de location en +avance, c'est un "avoir accru", et tandis qu'il porte une atteinte saine +dans le compte de liquidités, il apparait sur les livres comme un +avoir. Et if nous avons été collecter les taxes des feuilles +de paie de nos employés et les conservont dans un compte bancaire +spécial, l'argent n'est pas réellement le nôtre, alors +nous avons une augmentation dans le compte des liquidités  +d'un coté, et une augmentation dans un compte nommé Liquidités +accumulés, et les Taxes de la feuille de paie à payer d'un +autre côté. Quand nous envoyons le chèque trimestriel +aux Impots (ndt : aux USA) ainsi qu'ils peuvent faire une feuille de paie +aussi, notre dette chute et ainsi de même pour notre compte de Liquidités. + + diff --git a/Docs/fr/xacc-currency.html b/Docs/fr/xacc-currency.html new file mode 100644 index 0000000000..17b0418ba3 --- /dev/null +++ b/Docs/fr/xacc-currency.html @@ -0,0 +1,43 @@ + + + + + + + +Un système à double entrée stocke les valeurs ensemble +
(et effectue le solde/bilan des transactions): +

états de la double entrée où value1+value2+value3+ +... = 0 +
et dont chaque valeur est enregistrée dans un compte différent. +
Une valeur est : valeur=Taux de change*montant (pour les comptes de +devises/monnaies) +
           valeur=cours*nombre +de parts (pour les actions/FCP et SICAV) +

Ainsi, acheter un gadget au japon et utiliser des dollars pour le payer +devrait apparaitre +
commme ceci: +

SpendAcct: (un compte banque/liquidités ordinaire libellé +en USD) +
---------- +
Date    transfert depuis       +mémo               +cout +
1/5/99    [YenAcct]       +Achat gadget        $1.00 +
  +

YenAcct: (un compte d'achat/vente de devises libellé en yen) +
-------- +
Date    transfert depuis       +mémo           +achat       taux +
1/5/99    [SpendAcct]     Buy widget          +Y150       0.00667 +
  +

Le moteur lie ,toutes les trois, ces valeurs ensemble (1.0, 150, 0.00667) +
en permanence et les rend imposssible à changer sans en changer +une autre, +
ainsi que la grande addition est toujours zéro. +
  + + diff --git a/Docs/fr/xacc-date.html b/Docs/fr/xacc-date.html new file mode 100644 index 0000000000..fc242a06f9 --- /dev/null +++ b/Docs/fr/xacc-date.html @@ -0,0 +1,45 @@ + + + + + + + + +

+L'entrée de date

+La cellule/case de la date fonctionne avec les raccourcis clavier suivant +: +
       '+':
+       '=':     incrémente d'un jour 
+
+       '_':
+       '-':     décremente d'un jour
+
+       '}':
+       ']':     incrémente d'u mois 
+
+       '{':
+       '[':     décrémente d'un mois 
+
+       'M':
+       'm':     début du mois 
+
+       'H':
+       'h':     fin du mois 
+
+       'Y':
+       'y':     début de l'année 
+
+       'R':
+       'r':     fin de l'année 
+
+       'T':
+       't':     aujourd'hui
+
+
+GnuCash peut-être compiler pour comprendre/utiliser soit les dates +au format européen ou les dates au format américain . Chercher +UK_DATES dans dates.h + + diff --git a/Docs/fr/xacc-double.html b/Docs/fr/xacc-double.html new file mode 100644 index 0000000000..8cac6247eb --- /dev/null +++ b/Docs/fr/xacc-double.html @@ -0,0 +1,75 @@ + + + + + + Utilisation de la fonction de la double entrée + + + + +

+Qu'est-ce que c'est la Double Entrée?

+La double entrée est une méthodologie comptable utilisée +par les professionnels pour s'assurer que tous les comptes sont correctement +equilibré/égaux . Quand les comptes s'équilibrent +, la probabilité qu'une erreur sur les données entrées +est été faite est beaucoup moindre. Pour les grands et complexes +comptes avec beaucoup de transactions , il est facile de faire des erreurs +qui peuvent continuer à rester undétectées pendant +longtemps. La double-entrée est une technologie décisive +pour retrouver ces erreurs . +

Une transaction à double entrée est une transaction qui +apparaît dans deux comptes . Un compte est débité d'un +montant exactement égal à celui qui est crédité. +Ainsi , toutes les transactions sont toujours transférées +entre deux comptes . Depuis qu'ils apparaisent toujours avec un signe plus +dans un compte , et un signe moins dans l'autre , le total global des comptes +sera toujours zero, et ainsi , les comptes équilibrés sont +garantis. +

La double entrée est déjà familiaire à beaucoup +de gens comme un transfert d'un compte bancaire vers un autre , où +l'argent est retiré d'un compte et déposé dans un +autre. Beaucoup moins familier est l'idée que la double entrée +peut être utilisée pour le suivi des revenus et dépenses +aussi bien que pour les transferts bancaires . Regardez la fenêtre +d'aide "Revenu/Dépense" pour +plus d'information. +

+Utiliser la Double Entrée

+Pour utiliser la double entrée, cliquez sur le bouton dans la colonne +marqué "Transfert depuis" sur le côté gauche du registre. +Un menu se déroulera , listant tous les comptes depuis lequel un +transfert peut être réalisée. Selectionnez-en un. Quand +vous enregistrez la transaction, la double entrée sera automatiquement +réalisée, et la transaction apparaîtra automatiquement +dans toutes les fenêtres montrant les comptes transféré-depuis +et transféré-vers. +

Pour changer une transaction à double entrée, afficher +la dans n'importe quelle fenêtre dans laquelle elle apparait. N'importe +quel changement effectué sera automatiquement reflété +dans l'ensemble des comptes et toutes les fenêtres affichant la transaction. +Similairement, quand une transaction à double entrée est +supprimée , elle esr supprimée depuis l'ensemble des comptes +; les soldes sont automatiquement recalculés pour l'ensemble des +comptes . +

Pour changer le compte de transfert, sélectionnez simplement +un nouveau compte depuis le menu déroulant . Quand vous enregistrez +la transaction, elle sera automatiquement selectionnée depuis le +vieux compte , et insérée dans le nouveau compte . +

+Nettoyage impeccable

+GnuCash peut être configuré pour être strict à +propos de la double entrée, ou d'être relaché. En mode +relaché, vous pouvez créer des transactions anormales, c'est +à dire, les transactions qui ne s'apparie pas avec une entrée +appariée, et ainsi ne s'équilibre pour faire zéro. +Pour nettoyer ces transactions anormales, vous pouvez nettoyer le +compte pour être net en choisissant "Nettoyage" à partir de +la fenêtre du menu. Celà examinera chaque transaction; si +la transaction ne s'équilibre pas, une entrée divisée +sera créée et placée dans un compte nommé "Anormal". +Vous pouvez alors revoir ces divisions et les déplacer vers leurs +comptes appropriés. + + diff --git a/Docs/fr/xacc-expense.html b/Docs/fr/xacc-expense.html new file mode 100644 index 0000000000..a7ed0b4373 --- /dev/null +++ b/Docs/fr/xacc-expense.html @@ -0,0 +1,89 @@ + + + + Utilisation des comptes Revenus/Dépenses + + + + +

Qu'est-ce qu'un compte Revenu/Dépense?

+ +

Les mots "Revenu" et "Dépenses " sont bigrement simple; +n'importe qui sait ce qu'ils veulent dire. Ne les laisser pas vous +amuser: ils ont une signification spéciale quand ils sont +appliqué à un compte à double entrée. +

+ +

Pour enregistrer correctement les revenus et dépenses dans +un système à double entrée , deux comptes +spéciaux doivent être créés: un de type +"Revenu" et un de type "Dépenses ". Les Revenus de ce genre: +salaire, primes , intérêt bancaire et les dividendes +d'actions sont alors enregistrés comme transferts depuis un +compte revenus vers un compte bancaire (ou +générallement actif(avoirs)) . Semblablement, les +dépenses sont enregistrés comme des transferts depuis +un compte de carte de crédit (ou générallement, +un compte de passif(dettes)).

+ +

Pourquoi les comptes de type "Revenu" et "Dépenses " sont +considérés comme speciaux? La réponse ruse avec +la nature de la double entrée. Avec une transaction à +double entrée, un compte est toujours crédité, +et un autre compte est toujours débité. Quand le +salaire est déposé dans un compte bancaire , le compte +bancaire est crédité, et le compte revenus est +débité. Afin de faire apparaitre revenus comme positif +(ce qu'il est), et dépenses paraissant négatives, la +signification de "débit" et "crédit" est +renversée pour les comptes de revenus et dépenses . +Celà les rends spéciaux.

+ +

Une autre manière de voir dans laquelle les comptes revenus +et dépenses sont spéciaux est que leurs totaux de +compte n'apparaissent pas sur le bilan. Un bilan montre "Valeur nette +": la somme de tous les actifs(avoirs) moins les passifs(dettes). +Depuis lors revenus et dépenses ne sont ni actifs(avoirs) ni +passifs(dettes), ils n'apparaissent pas sur le bilan. Il y a +différente sorte de rapport, un rapport "Profit et Pertes" +(P&P) , qui montre revenus et dépenses . Le profit total +(ou pertes) est le total des revenus moins le total des +dépenses. Depuis lors actifs(avoirs) et passifs(dettes) ne +sont ni revenus ni dépenses, ils n'apparaissent pas sur +l'état des P&P.

+ +

Même si malgré tout les comptes peuvent être +"spéciaux", vous n'avez pas besoin de faire quelque chose de +"spécial" pour utiliser les comptes revenus et dépenses +. Tout est traité automatiquement , tant que vous vous +souvenez de transférer revenus et dépenses entre les +comptes de revenus/dépenses et les comptes bancaire +courant/Actif/Carte(de crédit)/Passif(dettes).

+ +

Utiliser les comptes Revenus/Dépenses

+ +

Pour utiliser un compte revenus/dépenses, créez -en +un simplement depuis la fenêtre de dialogue "Nouveau Compte" , +et alors soyez sûr de transférer revenus/dépenses +vers celui oû vous enregistrez feuille de paie , +intérêt, etc.

+ +

Si vous avez un arrangement complexe de compte, vous pouvez +vouloir creer des comptes multiples de revenus/dépenses . Un +peut être utilisé pour enregistrer le salaire , et +seulement le salaire , un autre pour enregistrer seulement les +intérêts de banque, et un troisième seulement +pour enregistrer les dividendes d'actions. Ce partitionnement est +particulièrement utile quand le temps des impôts arrive. +

+ +

Notes

+ +

Les utilisateurs des produits Quicken (TM) doivent réaliser +que ce que Quicken appelle "Catégories" sont juste +réellement des comptes Revenus/Dépenses . Ainsi , si +vous utilisez la spécification d'une catégorie dans +Quicken, créez juste un compte revenus/dépenses du +même nom dans X-Accountant, et utilisez le.

+ + diff --git a/Docs/fr/xacc-gpl.html b/Docs/fr/xacc-gpl.html new file mode 100644 index 0000000000..2668ebc497 --- /dev/null +++ b/Docs/fr/xacc-gpl.html @@ -0,0 +1,334 @@ + + + + GNU General Public License + + + +

GNU General Public License

+

Version 2, June 1991

+ +
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 675 Mass Ave, Cambridge, MA 02139, USA

+ Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed.

+

+

+

Preamble

+ +

+ The licenses for most software are designed to take away your + freedom to share and change it. By contrast, the GNU General Public + License is intended to guarantee your freedom to share and change free + software--to make sure the software is free for all its users. This + General Public License applies to most of the Free Software + Foundation's software and to any other program whose authors commit to + using it. (Some other Free Software Foundation software is covered by + the GNU Library General Public License instead.) You can apply it to + your programs, too. + +

+ When we speak of free software, we are referring to freedom, not + price. Our General Public Licenses are designed to make sure that you + have the freedom to distribute copies of free software (and charge for + this service if you wish), that you receive source code or can get it + if you want it, that you can change the software or use pieces of it + in new free programs; and that you know you can do these things. + +

+ To protect your rights, we need to make restrictions that forbid + anyone to deny you these rights or to ask you to surrender the rights. + These restrictions translate to certain responsibilities for you if you + distribute copies of the software, or if you modify it. + +

+ For example, if you distribute copies of such a program, whether + gratis or for a fee, you must give the recipients all the rights that + you have. You must make sure that they, too, receive or can get the + source code. And you must show them these terms so they know their + rights. + +

+ We protect your rights with two steps: (1) copyright the software, and + (2) offer you this license which gives you legal permission to copy, + distribute and/or modify the software. + +

+ Also, for each author's protection and ours, we want to make certain + that everyone understands that there is no warranty for this free + software. If the software is modified by someone else and passed on, we + want its recipients to know that what they have is not the original, so + that any problems introduced by others will not reflect on the original + authors' reputations. + +

+ Finally, any free program is threatened constantly by software + patents. We wish to avoid the danger that redistributors of a free + program will individually obtain patent licenses, in effect making the + program proprietary. To prevent this, we have made it clear that any + patent must be licensed for everyone's free use or not licensed at all. + +

+ The precise terms and conditions for copying, distribution and + modification follow. +

+
+

GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

+ +

+ 0. This License applies to any program or other work which contains + a notice placed by the copyright holder saying it may be distributed + under the terms of this General Public License. The "Program", below, + refers to any such program or work, and a "work based on the Program" + means either the Program or any derivative work under copyright law: + that is to say, a work containing the Program or a portion of it, + either verbatim or with modifications and/or translated into another + language. (Hereinafter, translation is included without limitation in + the term "modification".) Each licensee is addressed as "you". + +

+ Activities other than copying, distribution and modification are not + covered by this License; they are outside its scope. The act of + running the Program is not restricted, and the output from the Program + is covered only if its contents constitute a work based on the + Program (independent of having been made by running the Program). + Whether that is true depends on what the Program does. + +

+ 1. You may copy and distribute verbatim copies of the Program's + source code as you receive it, in any medium, provided that you + conspicuously and appropriately publish on each copy an appropriate + copyright notice and disclaimer of warranty; keep intact all the + notices that refer to this License and to the absence of any warranty; + and give any other recipients of the Program a copy of this License + along with the Program. + +

+ You may charge a fee for the physical act of transferring a copy, and + you may at your option offer warranty protection in exchange for a fee. + +

+ 2. You may modify your copy or copies of the Program or any portion + of it, thus forming a work based on the Program, and copy and + distribute such modifications or work under the terms of Section 1 + above, provided that you also meet all of these conditions: + +

+ a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. +

+ b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. +

+ c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) +

+
+ +
+ These requirements apply to the modified work as a whole. If + identifiable sections of that work are not derived from the Program, + and can be reasonably considered independent and separate works in + themselves, then this License, and its terms, do not apply to those + sections when you distribute them as separate works. But when you + distribute the same sections as part of a whole which is a work based + on the Program, the distribution of the whole must be on the terms of + this License, whose permissions for other licensees extend to the + entire whole, and thus to each and every part regardless of who wrote it. + +

+ Thus, it is not the intent of this section to claim rights or contest + your rights to work written entirely by you; rather, the intent is to + exercise the right to control the distribution of derivative or + collective works based on the Program. + +

+ In addition, mere aggregation of another work not based on the Program + with the Program (or with a work based on the Program) on a volume of + a storage or distribution medium does not bring the other work under + the scope of this License. + +

+ 3. You may copy and distribute the Program (or a work based on it, + under Section 2) in object code or executable form under the terms of + Sections 1 and 2 above provided that you also do one of the following: + +

+ a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, +

+ b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, +

+ c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) +

+ +

+ The source code for a work means the preferred form of the work for + making modifications to it. For an executable work, complete source + code means all the source code for all modules it contains, plus any + associated interface definition files, plus the scripts used to + control compilation and installation of the executable. However, as a + special exception, the source code distributed need not include + anything that is normally distributed (in either source or binary + form) with the major components (compiler, kernel, and so on) of the + operating system on which the executable runs, unless that component + itself accompanies the executable. + +

+ If distribution of executable or object code is made by offering + access to copy from a designated place, then offering equivalent + access to copy the source code from the same place counts as + distribution of the source code, even though third parties are not + compelled to copy the source along with the object code. +

+ +
+ 4. You may not copy, modify, sublicense, or distribute the Program + except as expressly provided under this License. Any attempt + otherwise to copy, modify, sublicense or distribute the Program is + void, and will automatically terminate your rights under this License. + However, parties who have received copies, or rights, from you under + this License will not have their licenses terminated so long as such + parties remain in full compliance. + +

+ 5. You are not required to accept this License, since you have not + signed it. However, nothing else grants you permission to modify or + distribute the Program or its derivative works. These actions are + prohibited by law if you do not accept this License. Therefore, by + modifying or distributing the Program (or any work based on the + Program), you indicate your acceptance of this License to do so, and + all its terms and conditions for copying, distributing or modifying + the Program or works based on it. + +

+ 6. Each time you redistribute the Program (or any work based on the + Program), the recipient automatically receives a license from the + original licensor to copy, distribute or modify the Program subject to + these terms and conditions. You may not impose any further + restrictions on the recipients' exercise of the rights granted herein. + You are not responsible for enforcing compliance by third parties to + this License. + +

+ 7. If, as a consequence of a court judgment or allegation of patent + infringement or for any other reason (not limited to patent issues), + conditions are imposed on you (whether by court order, agreement or + otherwise) that contradict the conditions of this License, they do not + excuse you from the conditions of this License. If you cannot + distribute so as to satisfy simultaneously your obligations under this + License and any other pertinent obligations, then as a consequence you + may not distribute the Program at all. For example, if a patent + license would not permit royalty-free redistribution of the Program by + all those who receive copies directly or indirectly through you, then + the only way you could satisfy both it and this License would be to + refrain entirely from distribution of the Program. + +

+ If any portion of this section is held invalid or unenforceable under + any particular circumstance, the balance of the section is intended to + apply and the section as a whole is intended to apply in other + circumstances. + +

+ It is not the purpose of this section to induce you to infringe any + patents or other property right claims or to contest validity of any + such claims; this section has the sole purpose of protecting the + integrity of the free software distribution system, which is + implemented by public license practices. Many people have made + generous contributions to the wide range of software distributed + through that system in reliance on consistent application of that + system; it is up to the author/donor to decide if he or she is willing + to distribute software through any other system and a licensee cannot + impose that choice. +

+ +
+ This section is intended to make thoroughly clear what is believed to + be a consequence of the rest of this License. + +

+ 8. If the distribution and/or use of the Program is restricted in + certain countries either by patents or by copyrighted interfaces, the + original copyright holder who places the Program under this License + may add an explicit geographical distribution limitation excluding + those countries, so that distribution is permitted only in or among + countries not thus excluded. In such case, this License incorporates + the limitation as if written in the body of this License. + +

+ 9. The Free Software Foundation may publish revised and/or new versions + of the General Public License from time to time. Such new versions will + be similar in spirit to the present version, but may differ in detail to + address new problems or concerns. + +

+ Each version is given a distinguishing version number. If the Program + specifies a version number of this License which applies to it and "any + later version", you have the option of following the terms and conditions + either of that version or of any later version published by the Free + Software Foundation. If the Program does not specify a version number of + this License, you may choose any version ever published by the Free Software + Foundation. + +

+ 10. If you wish to incorporate parts of the Program into other free + programs whose distribution conditions are different, write to the author + to ask for permission. For software which is copyrighted by the Free + Software Foundation, write to the Free Software Foundation; we sometimes + make exceptions for this. Our decision will be guided by the two goals + of preserving the free status of all derivatives of our free software and + of promoting the sharing and reuse of software generally. +

+ +

NO WARRANTY

+ +

+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY + FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN + OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES + PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED + OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS + TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE + PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, + REPAIR OR CORRECTION. + +

+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING + WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR + REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, + INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING + OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED + TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY + YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER + PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE + POSSIBILITY OF SUCH DAMAGES. + +

END OF TERMS AND CONDITIONS

+ +
+ + diff --git a/Docs/fr/xacc-groups.html b/Docs/fr/xacc-groups.html new file mode 100644 index 0000000000..4ab4c5ee61 --- /dev/null +++ b/Docs/fr/xacc-groups.html @@ -0,0 +1,372 @@ + + + + + + Chart of Accounts and Account Numbering + + + +

+Tableau de comptes

+Typiquement les comptes sont arrangés comme un arbre, dans une forme +hiérarchique. Le tronc principal représente les catégories +ou groupes en entier, tandis que les feuillles de l'arbre contiennent des +comptes bancaires individuels ou des catégories de dépenses. +Quand un rapport sommaire est demandé, typiquement seulement les +branches principales sont montrés dans le rapport, pas chacun des +comptes individuels. Par example, un tableau de comptes devrait ressembler +à ce +
qui suit: +
        300             Dépenses
+         |
+         +--310         Dépenses en cours
+         |   |
+         |   +--311     Bière
+         |   |
+         |   +--312     Cable
+         |
+         +--320         Dépenses commerciales
+         |   |
+         |   +--321     Disquettes 8 pouces
+         |   |
+         :   :
+Noter que les comptes sont codés: quand un rapport est généré, +l'ordre de tri est déterminé entièrement par la numérotation. +Par tradition et pratique habituelle, les comptes qui ne sont des comptes +feuilles ont un nombre qui tends vers zéro; chaque niveau supérieur +a un plus zero dans le code du compte. +

Quand vous faites une création d'un +nouveau compte, GnuCash offre une possibilité de deviner à +quoi il pense que le code du compte devrait être; vous êtes +libre de le changer. GnuCash ne prévient pas la duplication de numérotation, +bien que vous êtes encouragés à l'éviter. Les +codes de compte sont traités comme des numéros, base-36: +ainsi, s'il n'y a plus de numéros, vous pouvez utiliser les lettres, +de a jusqu'à z. +

+Un gros example

+Un tableau "typique" de comptes est montré ci-dessous. C'est une +combinaison de quelques comptes commerciaux et personnels typiques. +
    +
  • +Actifs
  • + +
      +
    • +Argent à portée de main / Liquidités
    • + +
        +
      • +Compte chèques ou courant
      • + +
      • +Compte de marché monétaire
      • + +
      • +Certificat de dépôt
      • +
      + +
    • +Actifs fixes / Immobilisations
    • + +
        +
      • +Meubles
      • + +
      • +Ordinateurs
      • + +
      • +Bijoux, articles de collection
      • + +
      • +Outils, machines
      • +
      + +
    • +Investissements
    • + +
        +
      • +Actions
      • + +
      • +Obligations
      • + +
      • +Sociétés d'investissements (n.d.t.: SICAV, FCP, OPCVM, SCPI +en france)
      • + +
      • +Biens immobiliers
      • +
      +
    + +
  • +Passifs
  • + +
      +
    • +Impôt/Taxes
    • + +
        +
      • +Sécurité sociale
      • + +
      • +Impôt sur le revenu
      • + +
      • +Taxe d'habitation
      • + +
      • +Impôt foncier
      • + +
      • +Vignette automobile
      • +
      + +
    • +Carte de crédit et carte a débit différé
    • + +
        +
      • +Eurocard/MasterCard
      • + +
      • +Visa
      • + +
      • +American Express
      • + +
      • +Diner's Club
      • +
      + +
    • +Emprunts
    • + +
        +
      • +Obligations(bourse)
      • + +
      • +Prêt étudiant
      • + +
      • +Prêt personel d'oncle Jean
      • + +
      • +Prêt immobilier
      • +
      +
    + +
  • +Capitaux propres
  • + +
      +
    • +Reste de profits
    • + +
    • +Primes et profits de l'année en cours
    • + +
    • +Règlement d'une demande (justice)
    • +
    + +
  • +Revenus
  • + +
      +
    • +Revenus d'intérêts
    • + +
        +
      • +Intérêt du compte bancaire (compte rémunéré)
      • + +
      • +Certificat de depôt
      • + +
      • +Interêts d'obligations
      • +
      + +
    • +Dividendes
    • + +
        +
      • +Actions
      • + +
      • +Sociétés d'investissements (n.d.t.: SICAV, FCP, OPCVM, SCPI +en france)
      • +
      + +
    • +Consultant
    • + +
        +
      • +ABC Design
      • + +
      • +PQR Infomatics
      • +
      + +
    • +Salaire
    • + +
        +
      • +Mon travail de jour
      • +
      + +
    • +Commissions
    • + +
        +
      • +Royalties
      • +
      +
    + +
  • +Dépenses
  • + +
      +
    • +Loyer and Sevices
    • + +
        +
      • +Loyer
      • + +
      • +Intérêts sur le loyer en retard
      • + +
      • +Electricité
      • + +
      • +Gaz
      • + +
      • +Téléphone
      • + +
      • +Internet
      • + +
      • +TV par cable
      • +
      + +
    • +Dépenses de bureau
    • + +
        +
      • +Comptabilité
      • + +
      • +Avocat (pour les USA)
      • + +
      • +Logiciels
      • + +
      • +Poste
      • + +
      • +Frais bancaires
      • + +
      • +Frais de cartes de crédit
      • + +
      • +Toner, Papier, Paper Clips
      • +
      + +
    • +Dépenses automobiles
    • + +
        +
      • +Carburant
      • + +
      • +Assurance
      • + +
      • +Réparation
      • + +
      • +Location
      • +
      + +
    • +Taxes
    • + +
        +
      • +Sécurité sociale
      • + +
      • +Assurance chomage
      • + +
      • +Amende des impôts
      • +
      + +
    • +Salaires et primes
    • + +
        +
      • +Consultant
      • + +
      • +Primes
      • + +
      • +Assurance santé
      • +
      + +
    • +Voyage
    • + +
        +
      • +Avion
      • + +
      • +Hotel
      • + +
      • +Repas
      • + +
      • +Auto
      • +
      + +
    • +Marketing/Mercatique
    • + +
        +
      • +Publicité
      • + +
      • +Salon professionnel / Foire commerciale
      • + +
      • +Donations/Gadgets
      • +
      +
    +
+ + + diff --git a/Docs/fr/xacc-main.html b/Docs/fr/xacc-main.html new file mode 100644 index 0000000000..4491feac23 --- /dev/null +++ b/Docs/fr/xacc-main.html @@ -0,0 +1,81 @@ + + + + + + Aide + + + + +Pour l'aide sur un sujet en particulier: + + +
+ + diff --git a/Docs/fr/xacc-mainwin.html b/Docs/fr/xacc-mainwin.html new file mode 100644 index 0000000000..824823be0e --- /dev/null +++ b/Docs/fr/xacc-mainwin.html @@ -0,0 +1,53 @@ + + + + Fenêtre principale + + + + +

CE FICHIER EST PRESQUE VIDE

+ +

C'est la fenêtre principale du compte . Controle des comptes +depuis ici . Ajouter plus de documentation.

+ +

Ci dessous se trouve une image de la fenêtre principale , +avec seulement les comptes principaux affichés . Noté +comment "ABC Bank" a été sélectionnée par +surbrillance . Pour afficher les détails des comptes , cliquez +sur les flèches sur le coté gauche .

+ +


+ +

+ +

Ci-dessous se trouve la fenêtre principale , avec les +détails des comptes affichés.

+ +


+ +
+ +

+ +

+


+L'élément du menu "Ouvrir Sous-comptes" est +intérresant seulement si vous choisissez un compte avec des +sous-comptes (comptes détaillées). Les comptes avec des +sous-comptes aura toujours des flèches sur sa gauche . En +choisissant l'élément du menu "Ouvrir Sous-comptes" , +une fenêtre de registre général (ou +d'enregistrement est ouverte , qui affiche toutes les transactions +pour le compte principal et le compte de détail. Noté +que la fenêtre de registre général est plus +compliquée et dificile à utiliser que les registres de +comptes individuels. La fenêtre du registre +général permets une vision plus comprehensible des +comptes dans un espace plus petit. A cause de sa complexité +accrue , son utilisation est recommandé seulement pour les +experts en comptabilité.

+ + diff --git a/Docs/fr/xacc-print.html b/Docs/fr/xacc-print.html new file mode 100644 index 0000000000..39bccab16d --- /dev/null +++ b/Docs/fr/xacc-print.html @@ -0,0 +1,28 @@ + + + + + + Printing and Web Serving + + + +

+Impression et serveur web

+Actuellement, GnuCash ne supporte d'aucune sorte une sortie vers l'imprimante. +Pourtant, vous pouvez créer une sortie d'impression des éléments +de la fenêtre registre/d'enregistrement en ouvrant une fenêtre +registre et en sélectionnant "Imprimer ... Vers fichier" depuis +le menu "Fichier". +

Suivant la dernière tendance à la mode, GnuCash peut aussi +agir comme un serveur web sans valeur! Depuis une fenêtre registre +ouverte, selectionnez  "Imprimer ... Vers WWW" depuis le menu "Fichier". +Alors pointer votre navigateur à http://localhost:1080/ +ou http://mon nom de machine.com:1080/et vous verrez votre fenêtre +registre. Mais, souvenez-vous, nous disons "sans valeur": pour voir +la page de nouveau, vous devrez reprendre la procédure précédente +de nouveau. +
+


+ + diff --git a/Docs/fr/xacc-quicken.html b/Docs/fr/xacc-quicken.html new file mode 100644 index 0000000000..4e5e2f723d --- /dev/null +++ b/Docs/fr/xacc-quicken.html @@ -0,0 +1,64 @@ + + + + + + Guide de l'utilisateur de Quicken + + + + +

+Guide de l'utilisateur de Quicken (TM)

+Tous les systèmes de comptabilité n'utilise pas les mêmes +mots pour les mêmes concepts . Ci-dessous se trouve quelques notes +pour les utilisateurs habitués des produits Quicken . +

+Catégories

+Ce que Quicken appelle "Catégories" sont juste réellement +des comptes Revenus/Dépenses . Ainsi, +si vous utilisez les spécifications d'une catégorie dans +Quicken, créez juste un compte revenus/dépenses du même +nom dans X-Accountant, et utilisez le comme une catégorie. +

+Importation des fichiers QIF de Quicken

+X-Accountant supporte l'importation des Quicken Import Fichiers (QIF). +(Note: Seulement les fichiers QIF de la version 3.0 de Quicken ont été +testé). Dû à la curieuse nature de QIF, s'il vous plaît +liserz cette section prudemment, ou vous serez peut-être déçu +avec les résultats. +

Pour créer un fichier QIF avec Quicken , démarrez Quicken +(oui, il fonctionne avec Wine, et probablement avec Wabi aussi), choisissez +le menu "Fichier" et sélectionnez l'entrée du menu "Exporter..." +. Sous la version 3.0 de Quicken , vous pouvez seulement exporter un compte +à la fois , et ainsi , l'exportation démontrera être +un processus pénible . Quand vous exportez , noté que il +y a une séries de boites de vérification marqués "Transactions", +"Liste de Comptes ", "Liste de Catégories", etc. Pour de meilleurs +résultats, vous devrez etre sûr d'avoir ces trois dernières +qui soit vérifiés. Si vous ne vérifiez *pas* la boite +"Listes de Comptes ", alors le nom de votre compte sera perdu. +

Pour importer un fichier QIF de Quicken, choisissez le menu "Fichier"et +sélectionnez l'entrée "Importer QIF". Le fichier importé +sera fusionné avec quel que soit les autres données que vous +avez actuellement dans X-Accountant. Cette fusion permet aux multiples +comptes Quicken d'être importés et fusionnés dans un +groupe de compte . Notez que durant la fusion, une analyse est effectuée +pour les transactions dupliquées , et les doubles sont enlevés. +Une transaction dupliquée est une oû la date, la description +(bénéficiaire), mémo, quantitée, prix de la +part , et les comptes ou catégories débités/crédités +se retrouve exactement. Ainsi, la fusion devrait être sûr à +moins que vous ayez de multiples transactions à la même date, +au même compte , pour le même montant , avec la même +description et mémo. +

Notez que quand la "Liste des Comptes " et la "Liste de Catégories" +est exporté depuis Quicken, tous les comptes et catégories +seront exportés même si, ils sont vides , et ne contiennent +pas transactions. Quand ceux-ci sont importés, ils appazraitront +comme des comptes avec un solde de zero. Si vous n'avez pas besoin ou n'utilisez +pas ces comptes , supprimez les . Une amélioration future de X-Accountant +vous permettra de les supprimer en-masse, ou de les rendre invisible sans +les supprimer. + + diff --git a/Docs/fr/xacc-recnwin.html b/Docs/fr/xacc-recnwin.html new file mode 100644 index 0000000000..c15d2d3ad8 --- /dev/null +++ b/Docs/fr/xacc-recnwin.html @@ -0,0 +1,50 @@ + + + + + + Fenêtre de rapprochement + + + + +

+Fenêtre de rapprochement

+La fenêtre de rapprochement est utilisé pour rapprocher les +transactions pointés depuis un relevé bancaire . Entrez le +montant en francs depuis votre dernier relevé bancaire dans la fenêtre +, et alors cliquez sur OK. La fenêtre montrera alors toutes les transactions +non pointées depuis votre dernier relevé bancaire . Cette +fenêtre de rapprochement ressemble à celà: +
  +

+

La fenêtre de rapprochement est pour le rapprochement des enregistrements +des utilisateurs à la fin du mois quand le relevé bancaire +arrive. Par example, si vous écrivez un chèque pour quelqu'un +, entrez la transaction. Quand vous savez que que le chèque a été +pointé (débité de votre compte) , vous pouvez cliquez +le champ entre les champs de description et de paiement , et le changer +depuis 'n' vers 'c', indiquant que la transaction a été pointée +A la fin du mois , ouvrez la fenêtre de rapprochement , et xacc vous +suggèrera /soufflera l'entrée du solde final à partir +du relevé bancaire . Alors la fenêtre de rapprochement apparaitra +, et vous verrez une colonne de crédit et de débit qui listera +toutes les transactions non rapprochés . Vous pouvez alors pointer +les transactions qui apparaissent dans le relevé bancaire , et vérifier +que le montant des champs soit correct. En bas de la fenêtre se trouve +un champ différence , qui devrait être de 0.00F quand vous +avez fait le rapprochement . Si'il ne l'est pas alors vous avez laisser +échapper une transaction, ou un des montants est erroné (ou +faux). Quand vous cliquez sur "Ok", alors le 'n' ou 'c' dans les transactions +qui ont été pointé se changera en un 'y'. Quand vous +changez quelque chose dans une transaction de rapprochement , une boite +de dialogue de verification devrait apparaitre , mais celà ne semble +pas être encore un évènement. Aussi , le total "pointé" +en bas semble afficher F0.00 sans se soucier de ces transactions qui ont +été pointés ou rapprochés . Le total"pointé" +devrait afficher le total de seulement les transactions qui ont été +pointés ('c') ou rapprochés ('y'). +

+


+ + diff --git a/Docs/fr/xacc-regwin.html b/Docs/fr/xacc-regwin.html new file mode 100644 index 0000000000..86b14035f1 --- /dev/null +++ b/Docs/fr/xacc-regwin.html @@ -0,0 +1,97 @@ + + + + + + Fenêtre registre + + + + +

+La fenêtre registre

+C'est la fenêtre du Registre/Grand Livre(ou d'enregistrement ). Entrez +les transactions ici . Ajouter plus de documentation. +

Ci-dessus se trouve à quoi la fenêtre registre devrait +ressembler : +

+
  +

+
  +

+


+

+Rapprochement

+En bas de la fenêtre du compte, il y a deux soldes en cours, le solde +"pointé et rapproché", et le solde "total"... le solde "pointé +et rapproché " devrait correspondre à la totalité +de l'argent que la banque pense que vous ayez sur votre compte, et le solde +"total" inclut les transactions en cours de règlement. +

Le rapprochement peut être fait dans la fenêtre +de rapprochement +

(pas encore implementé) Les transactions marquées avec +un 'y' , et ne peuvent pas être éditées sans changer +en premier ce drapeau. C'est parce que une transaction de rapprochement +devrait être capable de se souvenir de tout chose qui a été +vérifiée, et donc correcte. Changer ainsi une transaction +devrait être difficile: nous voulons éviter les erreurs accidentelles. +

(pas encore implementé) Les transactions marquées avec +un 'f' sont gelées, et ne peuvent pas être éditées +dans n'importe quelle circonstances. Celles-ci ont été gelées +pendant une période du compte. C'est à dire, les livres ont +été fermés pendant cette période; ils ne peuvent +plus être réouvert pour être édités. +

+


+

+Portefeuilles d'actions

+Vous pouvez faire des transactions d'actions soit depuis une fenêtre +avec une seule valeur(nom) d'actions , ou soit depuis une fenêtre +de vue de porte-feuille , montré ci-dessous. +

+

+

Le registre du porte-feuille peut intimidé un peu au premier +abord . Si vous avez de la peine à le comprendre , alors tournez +vous vers la création de comptes qui contiennent une seule valeur +d'action. Quelques points importants à se souvenir à propos +de la fenêtre du porte-feuille: +

    +
  • +Elle montre toutes les actions de votre porte-feuille , pas juste quelques-une +. Les montants des titres montrés sont pour chaque action en particulier +.
  • + +
  • +Notez qu'elle utilise un affichage sur deux lignes . Les comptes débités +et les montants débités sont sur la ligne supérieure +, et les montants et comptes crédités sont sur la ligne inférieure.
  • + +
  • +Si vous achetez ou vendez une action avec de de l'argent d'un compte de +courtage , le solde total ne changera pas , tant que la valeur de l'action +égale le montant de l'argent échangé.
  • + +
  • +Si vous achetez ou vendez une action avec de de l'argent d'un compte de +courtage , la valeur de la transaction apparaitra deux fois , une fois +en rouge , et une fois en noir . Si les titres sont achetés , le +montant de l'argent débité d'un compte de courtage sera en +rouge, et la valeur des titres en noir . Si les titres sont vendus , alors +la valeur des titres est en rouge , et l'argent crédité dans +le compte de courtage en noir .
  • + +
  • +Si vous avez de la peine à indiquer un titre acheté/vendu +dans le registre du porte-feuille , alors soyez sûr que les comptes +"Transfert depuis" et "Transfert vers " sont dans le bon ordre . Un transfert +depuis un compte d'actions est toujours interprété comme +une vente, même si vous entrez la donnée comme un achat . +Le contraire est aussi vrai .
  • + +
  • +Un jour X-Accountant sera amélioré avec une fenêtre +simplifiée du registre du porte-feuille .
  • +
+ + + diff --git a/Docs/fr/xacc-reports.html b/Docs/fr/xacc-reports.html new file mode 100644 index 0000000000..17c77e5c19 --- /dev/null +++ b/Docs/fr/xacc-reports.html @@ -0,0 +1,35 @@ + + + + + + Reports + + + +

+Rapports

+Il ya deux types de rapports: un  Bilan  et un Compte-rendu +de profits et pertes. +

Un bilan montre Avoirs, Dettes et Capitaux propres. La sommes de tous +les possessions devrait être égale à la somme des dettes +et capitaux propres. +

Un compte-rendu de profits et pertes montre les revenus et dépenses. +La somme de tous les revenus moins toutes les dépenses est un profit +ou une perte. +

Le changement des capitaux propes de jour en jour (année en année) +devrait être égal à ce profit ou perte du jour (année). +

+ + + diff --git a/Docs/fr/xacc-ticker.html b/Docs/fr/xacc-ticker.html new file mode 100644 index 0000000000..11ac92dd1a --- /dev/null +++ b/Docs/fr/xacc-ticker.html @@ -0,0 +1,66 @@ + + + + + + Stock Ticker + + + +

+Cours des actions et codes des titres

+GnuCash actuellement fournit des possibilités de cotation d'actions +automatisé. Si un compte est correctement configuré, et l'ordinateur +hôte est connecté sur internet, l'exécutable gnc-prices +peut être utilisé pour chargerv les cotations des cours d'actions +ou FCP et SICAV à partir de divers sites web directement dans GnuCash. +

Pour utiliser cette fonctionnalité, ce qui suit doit être +fait: +

    +
  • +Créer un compte et marquer le comme étant du type "FCP/SICAV" +ou "Actions".
  • + +
  • +Entrer un code de titre valide (ndt : code SICOVAM en france) dans le champ +marqué "Valeur:"
  • + +
  • +Sélectionner une source de cotations depuis le menu déroulant. +Actuellement les sources de cotations supportés incluent Yahoo, +Fidelity Investments, T. Rowe Price et le Vanguard Group. +Noter que Yahoo fournira le cours des cotations pour la plupart des fonds +communs , incluant Fidelity, T.Rowe Price and Vanguard, et les cours/NAV +cotés  devrait être identique à ceux sur les sites +sources.
  • +
+Un exemple d'image est montré ci-dessous: +

+

Pour mettre à jour les cours stockés dans un fichier de +compte de gnucash, lancez en ligne de commande gnc-price, en specifiant +le nom du fichier; par exemple: +

    gnc-prices myaccts.xac
+En lançant cette commande, elle affichera divers messages de diagnostic +vers l'écran tandis qu'elle chargera les données. Elle fonctionnera +seulement quand l'ordinateur hôte est connecté à internet. +Elle fonctionnera si l'hôte est derrière un parefeu/firewall +de style masqué. Elle ne fonctionne pas actuellement depuis derrière +un proxy ou des parefeu de style socks. La commande peut être lancée +plusieurs fois dans une journée;  pourtant, elle mettra les +comptes à jour au maximum une fois avec la plupart des données +de cours de la journée échangé dernièrement. +Ainsi, si  gnc-prices est lancé le vendredi, samedi, dimanche +et  lundi, seulement deux chargement de cours seront effectué: +un contenant les données du vendredi, et un contenant les données +du lundi, tandis que celui du samedi et dimanche lancé retrouvera +seulement les cours de cloture du vendredi. Pour empêcher  gnc-prices +de mettre à jour un compte, tandis que vous lui permettez de mettre +à jour un autre compte, simplement marqué les données +source pour ce compte comme "(aucun)". Vous pouvez le faire depuis la fenêtre +"Afficher un compte". +

Après avoir lancé gnc-prices pendant quelques jours, vos +comptes commenceront à ressembler  à ce qui suit: +

+


+ + diff --git a/Docs/fr/xacc-y2k.html b/Docs/fr/xacc-y2k.html new file mode 100644 index 0000000000..13a461c929 --- /dev/null +++ b/Docs/fr/xacc-y2k.html @@ -0,0 +1,28 @@ + + + + + + GnuCash Y2K Readiness + + + +

+Compatibilité an 2000 de GnuCash

+La version 1.1.25 de Gnucash et suivantes stocke toutes les dates en secondes +et nanosecondes, où les secondes sont stockés comme un entier +signé de 64-bit. Celà devait suffire pour stocker les dates +du passé distant aussi bien que le futur distant, aussi longtemps +qu'il y aura moins plusieurs douzaines d'heures dans l'âge de l'univers. +

Le format de fichier pour la version 1.1.25 et suivantes stocke les +dates de la manière cité ci-dessus. +

Quelques routines internes utilisent le type time_t pour exprimer +les secondes. Noter que sur la plupart des OS, c'est une longueur de 32-bit, +et elle est limité à l'ère Unix (Déc 1901 à +Jan 2038). +

Les fichiers de sauvegarde et log sont estampillé temporellement +en utilisant la routine standard Unix ctime(), qui prend comme +argument time_t. Ainsi, le mécanisme de sauvegarde et de +log pourrait éprouver des troubles en 2038. + + diff --git a/Makefile.in b/Makefile.in index 5abffd9d33..f7e4e41d22 100644 --- a/Makefile.in +++ b/Makefile.in @@ -188,31 +188,21 @@ install: $(INSTALL_DATA) data/*.xac ${GNC_SHAREDIR}/data @mkdir -p ${GNC_SHAREDIR}/Docs - @mkdir -p ${GNC_SHAREDIR}/Docs/En - @mkdir -p ${GNC_SHAREDIR}/Docs/Fr - $(INSTALL_DATA) Docs/*.html ${GNC_SHAREDIR}/Docs - $(INSTALL_DATA) Docs/En/*.html ${GNC_SHAREDIR}/Docs/En - $(INSTALL_DATA) Docs/Fr/*.html ${GNC_SHAREDIR}/Docs/Fr -# XXX hack alert -- should fix scheme paths to find language directories. - $(INSTALL_DATA) Docs/En/*.html ${GNC_SHAREDIR}/Docs - # $(INSTALL_DATA) Docs/*.phtml ${GNC_SHAREDIR}/Docs - $(INSTALL_DATA) Docs/*.gif ${GNC_SHAREDIR}/Docs - # $(INSTALL_DATA) Docs/*.jpg ${GNC_SHAREDIR}/Docs - # $(INSTALL_DATA) Docs/*.xpm ${GNC_SHAREDIR}/Docs + @mkdir -p ${GNC_SHAREDIR}/Docs/C + @mkdir -p ${GNC_SHAREDIR}/Docs/C/pix + @mkdir -p ${GNC_SHAREDIR}/Docs/fr + @mkdir -p ${GNC_SHAREDIR}/Docs/fr/pix + $(INSTALL_DATA) Docs/C/*.html ${GNC_SHAREDIR}/Docs/C + $(INSTALL_DATA) Docs/fr/*.html ${GNC_SHAREDIR}/Docs/fr + $(INSTALL_DATA) Docs/C/pix/*.* ${GNC_SHAREDIR}/Docs/C/pix + $(INSTALL_DATA) Docs/fr/pix/*.* ${GNC_SHAREDIR}/Docs/fr/pix $(INSTALL_DATA) Docs/*.css ${GNC_SHAREDIR}/Docs - @mkdir -p ${GNC_SHAREDIR}/Docs/images - # $(INSTALL_DATA) Docs/logos/*.* ${GNC_SHAREDIR}/Docs/images @mkdir -p ${GNC_SHAREDIR}/Docs/logos $(INSTALL_DATA) Docs/logos/*.* ${GNC_SHAREDIR}/Docs/logos @mkdir -p ${GNC_SHAREDIR}/Reports $(INSTALL_DATA) Reports/*.html ${GNC_SHAREDIR}/Reports $(INSTALL_DATA) Reports/*.phtml ${GNC_SHAREDIR}/Reports - # $(INSTALL_DATA) Reports/*.gif ${GNC_SHAREDIR}/Reports - # $(INSTALL_DATA) Reports/*.jpg ${GNC_SHAREDIR}/Reports - # $(INSTALL_DATA) Reports/*.xpm ${GNC_SHAREDIR}/Reports - @mkdir -p ${GNC_SHAREDIR}/Reports/images - # $(INSTALL_DATA) Reports/logos/*.* ${GNC_SHAREDIR}/Reports/images # ------------------------------------------------------------------ # hack alert -- the config dir stuff is messed up in configure.in as well diff --git a/src/gnome/window-html.c b/src/gnome/window-html.c index a22a0b5c92..2ecbfc7ca2 100644 --- a/src/gnome/window-html.c +++ b/src/gnome/window-html.c @@ -903,11 +903,13 @@ htmlReadImageProc (GtkWidget *widget, String file, gpointer data) /* construct absolute path -- twiddle the relative path we received */ filename = gncFindFile(file); - + /* use the default proc for the hard work */ retval = XmHTMLImageDefaultProc(widget, filename, NULL, 0); - free(filename); + if (filename != NULL) + free(filename); + return retval; } diff --git a/src/register/pricecell.c b/src/register/pricecell.c index 95c795acf5..af8d981438 100644 --- a/src/register/pricecell.c +++ b/src/register/pricecell.c @@ -89,28 +89,36 @@ PriceMV (BasicCell *_cell, PriceCell *cell = (PriceCell *) _cell; struct lconv *lc = gnc_localeconv(); char decimal_point; + char thousands_sep; if (cell->monetary) decimal_point = lc->mon_decimal_point[0]; else decimal_point = lc->decimal_point[0]; + if (cell->monetary) + thousands_sep = lc->mon_thousands_sep[0]; + else + thousands_sep = lc->thousands_sep[0]; + /* accept the newval string if user action was delete, etc. */ if (change != NULL) { int i, count=0; - for (i=0; 0 != change[i]; i++) + for (i = 0; 0 != change[i]; i++) { - /* accept only numbers or a decimal point */ - if (!isdigit(change[i]) && (decimal_point != change[i])) + /* accept only numbers or a decimal point or a thousands sep */ + if (!isdigit(change[i]) && + (decimal_point != change[i]) && + (thousands_sep != change[i])) return NULL; if (decimal_point == change[i]) count++; } - for (i=0; 0 != oldval[i]; i++) + for (i = 0; 0 != oldval[i]; i++) if (decimal_point == oldval[i]) count++; diff --git a/src/scm/path.scm b/src/scm/path.scm index ebff1ca889..85e1f99d84 100644 --- a/src/scm/path.scm +++ b/src/scm/path.scm @@ -1,3 +1,26 @@ +(define (gnc:locale-prefixes) + (let* ((locale (setlocale LC_MESSAGES)) + (strings (cond ((not (string? locale)) ()) + ((equal? locale "C") ()) + ((<= (string-length locale) 2) (list locale)) + (else (list (substring locale 0 2) locale))))) + (reverse (cons "C" strings)))) + +(define (gnc:default-doc-dirs) + (let ((user-paths (list + (list (getenv "HOME") ".gnucash" "doc"))) + (locale-paths (map (lambda (prefix) + (list gnc:_share-dir-default_ "Docs" prefix)) + (gnc:locale-prefixes))) + (pix-paths (map (lambda (prefix) + (list gnc:_share-dir-default_ "Docs" prefix "pix")) + (gnc:locale-prefixes))) + (base-paths (list + (list gnc:_share-dir-default_ "Docs"))) + (report-paths (list + (list gnc:_share-dir-default_ "Reports")))) + (map (lambda (paths) (apply build-path paths)) + (append user-paths locale-paths pix-paths base-paths report-paths)))) (define (gnc:_expand-doc-path_ new-path) ;; FIXME: Bad items should probably cause this to abort with #f or @@ -8,12 +31,7 @@ (cond ((string? item) (list item)) ((symbol? item) (case item - ((default) - (list - (build-path (getenv "HOME") ".gnucash" "doc") - (build-path gnc:_share-dir-default_ "Docs" "En") - (build-path gnc:_share-dir-default_ "Docs") - (build-path gnc:_share-dir-default_ "Reports"))) + ((default) (gnc:default-doc-dirs)) ((current) (gnc:config-var-value-get gnc:*doc-path*)) (else