Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Feldwert in IB Automatisch berechnen duch sp. (https://www.delphipraxis.net/71857-feldwert-ib-automatisch-berechnen-duch-sp.html)

mojo777 21. Jun 2006 23:28

Re: Feldwert in IB Automatisch berechnen duch sp.
 
:-) naja. eigentlich ist das nur so eine prinzipielle frage gewesen. so zum spielen.
wollte halt einfach die computed by felder in ib besser kennen lernen.

es ist manchmal super bequem aktionen auf interbase zu verladen.

ok. gut nacht.
:-)

danke dir!

mkinzler 21. Jun 2006 23:31

Re: Feldwert in IB Automatisch berechnen duch sp.
 
Zitat:

hmm.. ich dachte view geht nur nach statischen inhalten... also kann nur mit parametern arbeiten, die auch fest irgendwo gespeichert sind.... Confused
Wie meinst du das? Du kannst für einen View einen SQL-Query nehmen. Und dieser würde in diesem fall halt ein Join zwischen der Artikeldatenbank und der Summe der Verkäufe sein.

mojo777 21. Jun 2006 23:43

Re: Feldwert in IB Automatisch berechnen duch sp.
 
also wenn ich eine abfrage über eine ganze tabelle mache und die zeilen unterscheiden sich z.b. nach kunden, dann muss ja die view immer den aktuellen (zeiger) kunden beachten. kann sie das denn?
ich wüsste keine möglichkeit. :-(

Hansa 22. Jun 2006 04:15

Re: Feldwert in IB Automatisch berechnen duch sp.
 
So was ist doch nur ein SQL 3-Zeiler und in Delphi mit einem TDataset schnell auszulesen :

SQL-Code:
SELECT A.NR, SUM (V.UMSATZ) AS VKU FROM VERKAUF V JOIN ART A ON (A.ID = V.ID_ART) WHERE ... group by A.NR
Ohne Gewähr (nicht getestet) ! Ob das jetzt mit einem Dataset gemacht wird ("SELECT * FROM DS"), oder es gibt eine SP und ein Dataset ("SELECT * FROM SP") spielt keine große Rolle. Habe mir angewöhnt, bei langen Feldlisten und wenigen Rückgabewerten, das eher mit SPs zu machen. Ist viel besser für Source, wegen Tibbvehler, ''''''''' vergessener Parameter usw. Für Anfänger aber eher nicht voreilig zu empfehlen.

mkinzler 22. Jun 2006 07:03

Re: Feldwert in IB Automatisch berechnen duch sp.
 
Zitat:

Zitat von mojo777
also wenn ich eine abfrage über eine ganze tabelle mache und die zeilen unterscheiden sich z.b. nach kunden, dann muss ja die view immer den aktuellen (zeiger) kunden beachten. kann sie das denn?
ich wüsste keine möglichkeit. :-(

Natürlich geht das, in dem du die Abfrage, die du machen würdest (z.B. die von Hansa) als Code des Views nimmst.

TBx 22. Jun 2006 07:09

Re: Feldwert in IB Automatisch berechnen duch sp.
 
.. und Du kannst natürlich auch ein Computed By Feld erstellen, daß Dir die gewünschten Werte liefert,
aber wie schon gesagt, Du machst Dir die Performance der Datenbank damit zunichte, da für jeden Datensatz, der ausgelesen wird, gerechnet werden muß.

Gruß

onlinekater

mojo777 22. Jun 2006 10:51

Re: Feldwert in IB Automatisch berechnen duch sp.
 
ja, aber was soll ich mit einem view nur für eine person aus der db?
oder kann ich das where kriterium dynamisch variieren? ich denke nicht. :-(
+

Hansa 22. Jun 2006 11:39

Re: Feldwert in IB Automatisch berechnen duch sp.
 
Zitat:

Zitat von mojo777
...oder kann ich das where kriterium dynamisch variieren? ich denke nicht. :-(
+

Natürlich geht das. Ersetze die ... in dem SELECT z.B. so:
SQL-Code:
K.NR = :PAR_KUNR
Im Programm steht dann so was :

Delphi-Quellcode:
VkDS.ParamByName ('PAR_KUNR').AsString := edKuNr.Text;
Genauso gut kann man das dynamisch erweitern bspw. so :

Delphi-Quellcode:
VkDs.Close;
VkDs.SelectSql.Clear;
VkDs.SelectSql.Add ('Select ...');
...
if CheckBoxAlpha.checked then
  VkDs.SelectSql.Add ('ORDER BY NAME');
else
  VkDs.SelectSql.Add ('ORDER BY NR');
VkDs.Open;
Ja, Der View. Was soll der View ? :shock: Was soll der denn hier nützen ?

mojo777 22. Jun 2006 11:43

Re: Feldwert in IB Automatisch berechnen duch sp.
 
aha!
also mit parametern IM view ;-) ist mir neu. geil!
das ist sehr gut, sehr gut...

Hansa 22. Jun 2006 12:42

Re: Feldwert in IB Automatisch berechnen duch sp.
 
Zitat:

Zitat von mojo777
...ist mir neu. geil!
das ist sehr gut, sehr gut...

:shock: Es ist nicht zu fassen. :wall: :nerd: :lol: :lol:


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:34 Uhr.
Seite 2 von 2     12   

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