delphi datum database

Status
Niet open voor verdere reacties.

brickster

Gebruiker
Lid geworden
28 okt 2010
Berichten
11
Beste helpmij luitjes:).

Ik ben op het moment bezig met een applicatie te schrijven in delphi.
De applicatie leest vanuit een database uit welke betalingen nog voldaan moeten worden etc. Nu is het ook nog de bedoeling dat er een datum ingevoerd moet kunnen worden en dat dan van die specifieke datum de onbetaalde records getoond worden.

Ik heb echt geen flauw idee hoe ik dit moet gaan aanpakken. ik heb wel al rondgekeken naar Tdate etc maar weet nog niet echt hoe ik dit moet gaan toepassen.

De huidige code ziet er zo uit:

Code:
unit vergelijktool;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, DB, DBTables, StdCtrls, Menus, DBCtrls;

type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    Start: TButton;
    Memo1: TMemo;
    Table1: TTable;
    Label1: TLabel;
    B: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Memo2: TMemo;
    Memo3: TMemo;
    procedure ComboBox1Change(Sender: TObject);
    procedure open(Sender: TObject);
    procedure StartClick(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
   
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.open(Sender: TObject);

var
i : integer;
mystringlist : tstringlist;

begin
   memo1.clear;
   MyStringList := TStringList.Create;

  try
   Session.GetAliasNames(MyStringList);
  { fill a list box with alias names for the user to select from }
   for I := 0 to MyStringList.Count - 1 do begin
      combobox1.Items.Add(MyStringList[I]);
   end;
  finally
    MyStringList.Free;
end;
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin

try
Table1.close;

Table1.Databasename := string(combobox1.items[combobox1.ItemIndex]);

Table1.TableName := 'Verkoophandelingen.db';

Table1.open;
except
  with Application do begin
    NormalizeTopMosts;
    MessageBox('  selecteer een correcte database alias ', 'fout..', MB_OK);
    RestoreTopMosts;
    Exit;
  end;
end;

end;

procedure TForm1.StartClick(Sender: TObject);

var
Type_veld: string;
Status_veld: string;
Nummer_veld: string;

begin

  with table1 do begin
    table1.open;  //* Verkoopstatus database
    table1.first;
    while not table1.eof do begin
    //* loopt door de db heen en selecteert alle verkoopstatussen die nog behandeld moeten worden.
      if table1.fieldbyname('NogBehandelen').AsBoolean = True then begin
        memo1.lines.add(' record gelezen '+ Nummer_veld);

        Type_veld := table1.fieldbyname('Type').asstring + ';';
        Status_veld := table1.fieldbyname('Status').asstring + ';';
        Nummer_veld := table1.fieldbyname('Nummer').asstring + ';';

        memo1.lines.add(' record gelezen ' +Type_veld);
        memo2.lines.add(' record gelezen ' +Status_veld);
        memo3.lines.add('record gelezen ' +Nummer_veld);
      end
      else begin

      end;
      table1.next;
    end;
  end;
  memo1.lines.add(' Bestelstatus Gecontroleerd ');
end;

procedure TForm1.Edit1Change(Sender: TObject);

var
datum: string;

begin

   datum := Edit1.Text;
   if table1.Locate('Datum',Edit1.Text,[])then begin
   memo1.Lines.add('huidige datum');

   end;


end;
end.
 
Maak een query die de onbetaalde verkooprecords ophaalt van een bepaalde verkoopdatum.

Bijvoorbeeld:
Code:
    SELECT * FROM verkopen WHERE betaald = FALSE AND verkoopdatum = ingevoerde_datum;

Zet het resultaat in een DBGrid.

In je code uit je openingspost kan ik geen enkele samenhang of plan vinden.
Dus misschien kun je beter eerst eens rustig nadenken over hoe je programma 'op de tekentafel' moet gaan werken.

Nog een linkie over Delphi en databases.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan