Gestion de compte bancaire

Description

une gestion de compte bancaire avec planification de mouvements périodiques. Exemple d'application d'une petite classe de base de donnée fichier facile a utiliser compatible avec kylix et Delphi7

la sources contient:
- ravagedb 1 base simple compatible avec le type record (sauf reels)
- ravageidb 1 base héritée indexée avec structure

codee avec des pointeurs.

Source / Exemple :


{*------------------------------------------------------------------------------
  ravageidb.pas v0.1 for Kylix3 and Delphi7 - 12/06/2007
 
  ravagedb database is under the terms of the GNU General Public License
  please see licence.txt
 
  depend of ravagelib.pas
  
 
  exemple:
 
  procedure TForm1.FormCreate(Sender: TObject);
  Var
    db : TRavageiDB;       // ravage database
    id,id0 : Integer;
  begin
    db := TRavageiDB.create;
    if Not FileExists('database.dat') then
      db.init('database.dat', 'driver,car,track,version,conditions,date',
                   '19,13,4,19,1,6',
                   's,s,s,s,I,i'   );
    db.load('database.dat');
 
    // to add an element
    id0 := db.add;
    db.update(id0,'driver','gaston');
    db.update(id0,'car','mac laren');
  
    // to find an element
    db.add_finditem('driver','gaston','=');
    db.add_finditem('car','mac laren*','like');
   
    id := db.findfirst();
    while id <> 0 do
    begin
      Lst3Find.Items.Add(FloatToStr(id) + ' ' + db.get(id,'driver') + ',' +
                         db.get(id,'car'));
      id := db.findnext();
    end;
  
    // to remove an element
    db.remove(id0);
    
    db.close;
  end;
 
  Note: On crash the base can contain invalid data, dont forget to check data
  Like that:
 
  for index := 1 to db.MaxEntries do
  begin
    tmp := db.get(index,'j');
    if tmp <> '' then
    begin
      d := StrToInt(db.get(index,'j'));
      m := StrToInt(db.get(index,'m'));
      y := StrToInt(db.get(index,'aa'));
     db.get
     if (d<1) or (d>31) or (m<1) or
       (m>12) or (y<2006) or (y>9999) then
     begin
       db.remove(index);
       continue;
     end;
  end;
 
  NB: The Source Code is commented in french
  @author alvaroc
  @version 0.1
-------------------------------------------------------------------------------}
unit ravageidb;

interface

uses
   SysUtils, StrUtils,
   QDialogs,QControls,   // pour application CLX
   //Dialogs,Controls,     // pour application windows
   ravagedb,ravagelib,pc1;

const
  KEY_BYTES = 3; // de 1 a 4   1:256 2:65536 3:8388608 4:4294967296
--------------------------------------------------
dans ravagedb
RESERVE_SPACE = 2048; // de 0 a 65535 espace RAM de reserve.

Conclusion :


pour application simple nécessitant une base sans installer de client.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.