AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi OnCalcfield 6x ausgelöst bei 2 Datensätzen
Thema durchsuchen
Ansicht
Themen-Optionen

OnCalcfield 6x ausgelöst bei 2 Datensätzen

Ein Thema von Karstadt · begonnen am 17. Mai 2006 · letzter Beitrag vom 18. Mai 2006
Antwort Antwort
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#1

OnCalcfield 6x ausgelöst bei 2 Datensätzen

  Alt 17. Mai 2006, 15:51
Datenbank: Mysql • Version: 4 • Zugriff über: mydac
Hallo. Wie kann ich das Ereigniss nur 1x pro datensatz auslösen?

Delphi-Quellcode:
    with Tabelle do
    begin
      ControlsDisabled;
      Tag := 1;
      refresh;
      Tag := 0;
      EnableControls;
    end;


  ONCALCFIELD
  begin
     with Tabelle do
     begin
      IF Tag = 1 then exit;
      Showmessage(''); // 6 mal bei 2 Datensätzen? WARUM?
    end;
  end;
  Mit Zitat antworten Zitat
mojo777

Registriert seit: 10. Sep 2003
402 Beiträge
 
#2

Re: OnCalcfield 6x ausgelöst bei 2 Datensätzen

  Alt 18. Mai 2006, 00:22
hmm.... kannst du die operationen nicht auf IB (oder so) verlagern? das geht dann auf jeden fall schneller.
Der Merhfache durchlauf hat etwas mit dem "scrollen" über die datensätze zu run. omputedBy und scrollen sind miteinenader verbunden und es lohnt sich (fast nie) größere Berechnungen so anzustellen.


gruß
Muh macht die kUh
  Mit Zitat antworten Zitat
Karstadt

Registriert seit: 8. Nov 2005
788 Beiträge
 
#3

Re: OnCalcfield 6x ausgelöst bei 2 Datensätzen

  Alt 18. Mai 2006, 08:09
Guten Morgen!

Delphi-Quellcode:
with Tabelle do
    begin
      ControlsDisabled;
      Tag := 1;
      Recno := Recno;
      Tag := 0;
      EnableControls;
    end;
Mit diesen Trick wird das Ereigniss nur 1x Pro ds ausgeführt.

Wenn ich das in eine Tabelle speichere muss ich so oder so diesen Wert ausrechnen...(->Lagermenge<-) die die Lagermenge zu speichern ist nicht besonder sinnvol, da die sich jedesmal mehrmals ändert.

PS diese Anwendung wird von mehr als 10 Usern verwendet.

Oder sehe ich das falsch?
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

Registriert seit: 17. Okt 2004
Ort: Berlin
1.251 Beiträge
 
Delphi 5 Standard
 
#4

Re: OnCalcfield 6x ausgelöst bei 2 Datensätzen

  Alt 18. Mai 2006, 09:30
Was Mojo meinte, war, dass du das Feld ja auch über SQL berechnen lassen kannst:

SELECT *, anzahl*groesse as lagermenge from Lager; Dann kannst du dir das OnComputed sparen.
Christian Reich
Schaut euch mein X-COM Remake X-Force: Fight For Destiny ( http://www.xforce-online.de ) an.
  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 19: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