AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Unter einer Procedure eine andere Procedur aufrufen
Thema durchsuchen
Ansicht
Themen-Optionen

Unter einer Procedure eine andere Procedur aufrufen

Ein Thema von EMS · begonnen am 30. Dez 2012 · letzter Beitrag vom 1. Jan 2013
 
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#9

AW: Unter einer Procedure eine andere Procedur aufrufen

  Alt 31. Dez 2012, 20:43
Dann läßt sich auch gut mit dem bei manchen verpönten "with" arbeiten.
"With" grundsätzlich nicht zu benutzen, das ist ja auch völlig überzogen. Man schaue sich das mal an :

Delphi-Quellcode:
procedure TAusg.FormShow(Sender: TObject);
begin
  with DataModule1.Dataset1 do begin
    Close;
    SelectSQL.Clear;
    SelectSQL.Add ('SELECT A.NR,A.BEZ, SP.* FROM ART8 A,')
    SelectSQL.Add ('A1,')
    SelectSQL.Add ('A2,')
...
    SelectSQL.Add ('SONDER8 SP ');
    SelectSQL.Add ('WHERE (A.ID = SP.ID_ART) AND...');
    SelectSQL.Add ('AND A.NR >= :VonArtNr');
    SelectSQL.Add ('AND A.NR <= :BisArtNr');
    SelectSQL.Add ('ORDER BY A.NR');
    ParamByName...
    ParamByName...
    ParamByName...
    Open;
  end;
  inherited; // erst hier, sonst DS noch nicht besetzt
end;
Und dann das :

Delphi-Quellcode:
procedure TAusg.FormShow(Sender: TObject);
begin
  DataModule1.Dataset1.Close;
  DataModule1.Dataset1.SelectSQL.Clear;
  DataModule1.Dataset1.SelectSQL.Add ('SELECT A.NR,A.BEZ, SP.* FROM ART8 A,')
  DataModule1.Dataset1.SelectSQL.Add ('A1,')
  DataModule1.Dataset1.SelectSQL.Add ('A2,')
...
  DataModule1.Dataset1.SelectSQL.Add ('SHOPKUSONDER8 SP ');
  DataModule1.Dataset1.SelectSQL.Add ('WHERE (A.ID = SP.ID_ART) AND...');
  DataModule1.Dataset1.SelectSQL.Add ('AND A.NR >= :VonArtNr');
  DataModule1.Dataset1.SelectSQL.Add ('AND A.NR <= :BisArtNr');
  DataModule1.Dataset1.SelectSQL.Add ('ORDER BY A.NR');
  DataModule1.Dataset1.ParamByName...
  DataModule1.Dataset1.ParamByName...
  DataModule1.Dataset1.ParamByName...
  DataModule1.Dataset1.Open;
  inherited; // erst hier, sonst DS noch nicht besetzt
end;
Wer da das with ignoriert und alles ausschreibt, der ist selber Schuld. So etwas hilft höchstens den Monitorherstellern. Für unnötigerweise lange Zeilen hilft ja schon ein 32" Monitor, um alles direkt zu sehen. Beim Drucken gehts dann eben wieder von vorne los.
Gruß
Hansa
  Mit Zitat antworten Zitat
 


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 02:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz