AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Kleines Problem mit Schleife, finde Fehler einfach nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Kleines Problem mit Schleife, finde Fehler einfach nicht

Ein Thema von mafiaente · begonnen am 16. Jan 2007 · letzter Beitrag vom 16. Jan 2007
Antwort Antwort
Seite 1 von 2  1 2      
mafiaente

Registriert seit: 16. Jan 2007
35 Beiträge
 
#1

Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:14
Datenbank: Paradox7 • Zugriff über: TTable
Guten Tag,
also ich bin neu hier im Forum und hoffe mir kann bei meinem Problem geholfen werden.
Ich verscuhe grad mir delphi mehr oder weniger selbst beizubringen und hab grad nen kleinen hänger...
Ich habe ein Stringgrid mit 5 Spalten gegen, wobei sich die Zeilenanzahl variieren lässt. Die erste Zeile enthält die Zeilenköpfe.
Ich möchte nun die Spalte 1 und 4 eine meine Datentabelle 2 übertragen un habe mir dabei folgende Schleife überlegt:

Delphi-Quellcode:
k:=stringgrid1.rowCount;
table2.open;
for k:=1 to (k-1) do
    begin
    table2.append;
    table2['Re.Nr.']:=table3.fieldbyname('Re.Nr.').asstring;
    table2['Art.Nr.']:=stringgrid1.cells[0,k];
    table2['Anzahl']:=stringgrid1.cells[3,k];
    table2.post;
    end;
also zuerst soll die zeilenanzahl ermittelt werden, damit ich weiß wie oft die schleife durchlaufen soll. für mich erscheint es logisch, doch erscheint "indexfehler" als fehlermeldung! ich hoffe mir kann geholfen werden!
thx schonma im vorraus...
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:16
Delphi-Quellcode:
k:=stringgrid1.rowCount;
...
for k:=1 to (k-1) do
Kommt dir bei diesen 2 Zeilen nicht etwas komisch vor? k soll die Anzahl der Rows enthalten und wird als Schleifenvariable verwendet.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mafiaente

Registriert seit: 16. Jan 2007
35 Beiträge
 
#3

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:20
na klaR! man bin ich bekloppt!naja sitz schon den ganzen tag dran, da kann man sowas schonma übersehen^^

habs jetz aber geändert un nun kommt trotzdem noch ne fehlermeldung mit der ich nichts anfangen kann:
'Indexfehler'

noch ne kleine hilfe bitte!!!

Delphi-Quellcode:
k:=stringgrid1.rowCount;
table2.open;
for i:=1 to (k-1) do
    begin
    table2.append;
    table2['Re.Nr.']:=table3.fieldbyname('Re.Nr.').asstring;
    table2['Art.Nr.']:=stringgrid1.cells[0,i];
    table2['Anzahl']:=stringgrid1.cells[3,i];
    table2.post;
    end;
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:22
An welcher Zeile genau kommt die Exception?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:25
Wieviel Spalten hat das Grid?
BTW.: sollte es nicht for i:=0 to (k-1) do heißen?
Markus Kinzler
  Mit Zitat antworten Zitat
mafiaente

Registriert seit: 16. Jan 2007
35 Beiträge
 
#6

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:26
nee, in der obersten zeile befindet sich ja der kopf der tabelle, also muss ich doch erst mit der 1 anfangen, oder?

"...exception der klasse EDBEngineError aufgetreten. Meldung: 'indexfehler'..."
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:29
Vielleicht:

Delphi-Quellcode:
table2['Art.Nr.']:=stringgrid1.cells[i,0];
table2['Anzahl']:=stringgrid1.cells[i,3];
Erst Zeile, dann Spalte.
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:31
Kann es sein, dass in der DB ein Primärschlüssel oder ein Unique-Index existiert (z.B. für RegNr)? Dann kannst du jede Nummer nur einmal vergeben. Und wenn du zweimal den selben Eintrag machts, kommt so eine Fehlermeldung.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
IngoD7

Registriert seit: 16. Feb 2004
464 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:34
Zitat von Bernhard Geyer:
Delphi-Quellcode:
k:=stringgrid1.rowCount;
...
for k:=1 to (k-1) do
Kommt dir bei diesen 2 Zeilen nicht etwas komisch vor? k soll die Anzahl der Rows enthalten und wird als Schleifenvariable verwendet.
Zitat von mafiaente:
na klaR! man bin ich bekloppt!naja sitz schon den ganzen tag dran, da kann man sowas schonma übersehen^^
Ruhig Blut. Das war zwar nicht hübsch, diese "doppelte" Verwendung von k, die du da hattest, aber es war auch nicht falsch, sondern funktionierte.

Deinen Fehler hattest du ja auch unverändert behalten.
  Mit Zitat antworten Zitat
mafiaente

Registriert seit: 16. Jan 2007
35 Beiträge
 
#10

Re: Kleines Problem mit Schleife, finde Fehler einfach nicht

  Alt 16. Jan 2007, 20:36
ok programm läuft jetzt so wie es soll! viele ndank für eure hilfe! thema kann nun geschlossen werden

-closed-
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 16:15 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