AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Nummernkreise

Ein Thema von LOMBI · begonnen am 9. Aug 2006 · letzter Beitrag vom 10. Aug 2006
Antwort Antwort
LOMBI
(Gast)

n/a Beiträge
 
#1

Nummernkreise

  Alt 9. Aug 2006, 15:20
Datenbank: Paradox • Version: 7 • Zugriff über: TQuery, TDataSource
Hi,

auf der Form Einstellungen möchte ich die Anfangswerte für BelegNummern
eingeben und den jeweiligen Edits auf den Forms zuweisen.

Delphi-Quellcode:
procedure TFEinstellungen.EditRNr.Change(Sender: TObject);
begin //Anfangswert für Rechnungen
  FRechnungen.QueryRechnungen.FieldByName('RNr').asInteger:=
  StartKey('RNr', 'Einstellungen');
end;
Mit diesem Code hat es leider nicht geklappt.
Wer kann mir bitte in dieser Sache weiterhelfen?

Gruß
Lombi
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Nummernkreise

  Alt 9. Aug 2006, 15:34
Hallo Lombi,

ich würde erstens kein DB-Code direkt in Forms ausführen.
Das macht den Code unübersichtlich und schwer portierbar.
Weil du ja demnächst weg von Paradox musst

Der Code ist ansonsten viel zu wenig, um einen Fehler zu finden.
Aber naja.

Bsp.-Code mit einer anderen Query
Ich gehe mal davon aus, dass
die Tabelle "Einstellungen" nur einen Record haben soll das Feld "RNr" heisst.

Delphi-Quellcode:
procedure SetNo(const theNumber: Integer);
var
  bExists: Boolean;
begin
  with Query do
  begin
   // Anzahl der Records prüfen
    SQL.Clear;
    SQL.Add('Select Count(*) From Einstellungen');
    Open;
    try
      bExists:= Fields[0].AsInteger>0;
    finally
      Close;
    end;

   // update oder insert
    SQL.Clear;
    if bExists then
    begin
      SQL.Add('Update Einstellungen Set RNr=:RNr');
    end
    else
    begin
      SQL.Add('Insert Into Einstellungen(RNr) Values(:RNr)');
    end;
    ParamByName('RNr').AsInteger:= theNumber;

    ExecSQL;
  end;
end;

Heiko
Heiko
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Nummernkreise

  Alt 9. Aug 2006, 15:49
Hallo hoika,

wenn man jetzt noch das Add weglässt, wird es noch übersichtlicher... (dann ist auch der Umstieg auf andere Komponenten leichter, dort ist man nämlich wieder von TStrings weggegangen)

Delphi-Quellcode:
procedure SetNo(const theNumber: Integer);
var
  bExists: Boolean;
begin
  // Anzahl der Records prüfen
  Query.SQL.Text:=
    'SELECT COUNT(*)'#13 +
    'FROM Einstellungen';
  Query.Open;
  try
    bExists:= (Query.Fields[0].AsInteger > 0);
  finally
    Query.Close;
  end;

  // update oder insert
  if bExists then
    Query.SQL.Text:=
      'UPDATE Einstellungen'#13 +
      'SET RNr = :RNr'
  else
    Query.SQL.Text:=
      'INSERT INTO Einstellungen(RNr)'#13 +
      'VALUES(:RNr)';

  Query.ParamByName('RNr').AsInteger:= theNumber;

  Query.ExecSQL;
end;
Gruss
Thorsten
  Mit Zitat antworten Zitat
LOMBI
(Gast)

n/a Beiträge
 
#4

Re: Nummernkreise

  Alt 10. Aug 2006, 14:51
Hallo Heiko + Thorsten,

danke für Eure Nachricht. Ich habe mir das so vorgestellt, dass ich auf die FormEinstellungen alle Anfangswerte für die Belege setze:

z.B.:
Lieferscheine ab Nr.: (TEditLSNr)
Rechnungen ab Nr : (TEditRNr)
...

Dazu habe ich in der Datenbankoberfläche die TabelleEinstellungen ange-
legt:

Bezeichnung A(lphaNumerisch) z.B.: RechnungsNr..
Anfangswert I(nteger)

Wäre das denn so in Ordnung?

Gruß
Lombi
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz