AGB  ·  Datenschutz  ·  Impressum  







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

Aufsummieren im Record

Ein Thema von Mauli · begonnen am 6. Okt 2004 · letzter Beitrag vom 7. Okt 2004
Antwort Antwort
Benutzerbild von Mauli
Mauli

Registriert seit: 7. Apr 2003
Ort: Wuppertal
160 Beiträge
 
Delphi 2005 Enterprise
 
#1

Aufsummieren im Record

  Alt 6. Okt 2004, 16:44
Hallo,

ich laufe hier nur noch im Kreis herum.

Ich beschreibe mal was ich machen möchte:

Ich habe in der Deklaration:
Delphi-Quellcode:
type TStreamKnoten = record
                       ID : Integer;
                       ISIN : String[12];
                       B_S : String[1];
                       Nominal : Double;
                       Kurs : Double;
                       Betrag : Double;
                       Commission : Double;
                     end;


var
  mstream: TMemoryStream;
  Streamknoten : TStreamKnoten;
Streamknoten habe ich aus einer Textdatei gefüllt.

Jetzt will ich die Reihen auf summieren, die die gleiche ISIN und bei B_S den gleichen Wert haben.

Also so (wenn ich eine Tabelle hätte):

SQL-Code:
Select ISIN,
       B_S,
       SUM(Nominal) as Nominal
       .....
Group by ISIN, B_S
Hat jemand eine Idee wie ich das mit diesem Record mache? - Ist bestimmt einfach. Ich sehe es nur nicht....


Danke
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Aufsummieren im Record

  Alt 6. Okt 2004, 16:51
Hallo,
ich muss mal nach fragen. Möchtest Du Die Summe Nominal für alle Records mit gleichem ISIM und B_S haben? Dann wäre das Ergebnis ein Double. Oder möchtest Du es tatsächlich so haben, wie das SQL Statement es leifern würde? Das wäre dann eine Liste von Records. Wobei jeder Record der Ergebnismenge die Summe der Records mit gleichem ISIM und B_S enthält.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von Mauli
Mauli

Registriert seit: 7. Apr 2003
Ort: Wuppertal
160 Beiträge
 
Delphi 2005 Enterprise
 
#3

Re: Aufsummieren im Record

  Alt 6. Okt 2004, 16:55
Ich möchtest die Summe Nominal usw. für alle Records mit gleicher ISIN und B_S haben.

Vielleicht verwirrt die SQL nur.

Also z.b.

ISIN1 || B || 100
ISIN2 || B || 2000
ISIN1 || B || 300
ISIN2 || S || 500

soll geben:

ISIN1 || B || 400
ISIN2 || B || 2000
ISIN2 || S || 500
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Aufsummieren im Record

  Alt 6. Okt 2004, 17:03
Hallo,
der SQL hat nicht verwirrt. Du möchtest es nämlich genau so haben.

Ich würde so vorgehen. (Das setzt voraus, dass alle Records in einer Liste (TList o. Array oder so) sind. Das nennen wir mal Ausgangsliste. Das Ergebnis wird dann in der Zielliste gespeichert.

- Itteriere über alle Records in der Ausgangsliste.
- Füge die Records in die Zielliste. Überprüfe aber vorher, ob es nicht schon
einen Record mit gleichem ISIN und B_S gibt. Wenn ja, addiere den Wert Nominal
aus der Ausgangsliste zu dem Wert Nominal in der Zielliste. Wenn nein, dann
füge den Record in die Zielliste.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von Mauli
Mauli

Registriert seit: 7. Apr 2003
Ort: Wuppertal
160 Beiträge
 
Delphi 2005 Enterprise
 
#5

Re: Aufsummieren im Record

  Alt 6. Okt 2004, 17:09
Ich habe kaum mit Records arbeiten müssen (dürfen) hättest du vielleicht auch ein bißchen code?

Danke schon mal.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#6

Re: Aufsummieren im Record

  Alt 7. Okt 2004, 08:58
Hallo,
ich habe ein kleines Beispiel gebastelt.
Ich lehne Records grundsätzlich ab. Deshalb basiert das Beispiel auf Objekten.
In der unit sum_impl.pas ist das Objekt für die Daten (TStreamNode) und das
Verwaltungsobjekt (TStreamNodes) deklariert.
Angehängte Dateien
Dateityp: zip sum.zip (217,9 KB, 4x aufgerufen)
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von Mauli
Mauli

Registriert seit: 7. Apr 2003
Ort: Wuppertal
160 Beiträge
 
Delphi 2005 Enterprise
 
#7

Re: Aufsummieren im Record

  Alt 7. Okt 2004, 09:36
Tausend Danke!!!

Du hast mir sehr geholfen!!

  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 12:42 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