Re: zeile immer überschrieben
Das Append hängt einen "vorläufigen" Datensatz an die Tabelle an.
Leider gibt es manchmal mit der TTable-Komponente Probleme, wenn direkt nach dem Append der Focus gewechselt wird. Den genauen Hintergrund kenn ich nicht, aber das Phänomen hatte ich in einem meiner alten Programme. Deswegen VOR dem Append, ein SetFocus auf ein Erfassungs-Feld machen. Wenn alle Daten eingetragen sind, erst dann darfst du ein Post machen. NICHT bei einem OnClick der dbComboBox. Dafür bitte einen extra-Button machen. Zum Testen kannst du ja auch mal den TDBNavigator benutzen. |
Re: zeile immer überschrieben
ich meinte auch nicht onclick bei der dbcombo sondern bei einem extra button. wie kann ich denn unterdrücken, dass der datensatz immer in den dbcombos angezeigt wird und soll der focus auf ein imaginäres feld?
|
Re: zeile immer überschrieben
Zitat:
Das mit dem Unterdrücken verstehe ich nicht ganz. Ein Beispiel mit dem Focus-Problem: Angenommen, du zeigst die Daten in einem DBGrid an und du bist gerade im DBGrid (Focus is dort). Dann teilst du dem Programm mit, dass ein neuer Datensatz erfasst werden soll (Append). Bis dahin funktioniert das alles noch. Jetzt klickst du eine Komponente an, in der du die neuen daten erfassen willst (z.B. DBComboBox, DBEdit,...). Dann interpretiert die TTable das als Erfassungs-Abbruch. Um das zu vermeiden musst du vor dem Append den Focus auf eines der Erfassungs-Elemente setzen. Nichts imaginäres. |
Re: zeile immer überschrieben
Hallo,
Zitat:
ich habe lange nicht mehr mit Table-Kompos gearbeitest, daher mal ein Bsp. mit Query's
SQL-Code:
Mit der Table Kompo sollte es mit Befehl Locate funktionieren.
Select Feld From DB WHERE Feld like Edit1.Text
If Query1.RecordCount-1 = 0 Then Begin //neues DS anlegen Query1.append; end else begin //DS editieren Query1.Edit; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:52 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