[gelöst] Sprung auf Datensatz

24. September 2008 11:02

Hallo!

ich möchte per c/al Code in einer Form auf den nächsten,vorherigen bzw. auf einen bestimmten (vorher fest definierten Datensatz via Variable) springen.

Eigentlich genau die Funktionalität, welche ich durch die Pfeile oben in der Leiste erreiche. ich möchte dies aber gerne auf einen Button legen. Zusätzlich möchte ich, wie oben beschrieben, auf einen vorher fest definierten Datensatz springen.

Ich such mir gerade nen Wolf. Das kann doch nicht so schwer sein ;)

ich tendiere zu einer eigenschaft von CurrForm aber damit hatte ich leider keinen Erfolg.
Zuletzt geändert von msp am 24. September 2008 11:36, insgesamt 1-mal geändert.

Re: Sprung auf Datensatz

24. September 2008 11:04

Versuche es einfach mal Rec.NEXT; bzw. Rec.NEXT(-1);
Eventuell ist noch ein anschließendes CurrForm.UPDATE(FALSE); nötig.

Re: Sprung auf Datensatz

24. September 2008 11:08

Bei dem Sprung auf den bestimmten Datensatz (in einer Form) bin ich mir nicht 100%ig sicher, aber versuch es doch mal mit GET.
GET hat den Vorteil, dass du keine Filter setzt und daher theoretisch NEXT danach noch immer funktionieren müsste.

Wenn GET nicht geht, dann würd ichs nach diesem Schema ausprobieren:
Code:
Rec2.GET(...); // hole deinen bestimmten Datensatz in eine zweite Variable;
Rec := Rec2;
CurrForm.UPDATE(FALSE);

Re: Sprung auf Datensatz

24. September 2008 11:15

Also der Ansatz von Timo funktioniert leider nicht.

@ Nathalie

ich habe bei meiner Problemstellung bereits mit get gearbeitet:

Code:
   IF Bücher.GET(Suche) THEN
      MESSAGE('Die Buchnummer %1 wurde gefunden, dass dazugehörige Buch ist: %2', Bücher.Buchnummer, Bücher.Titel)

   ELSE
      ERROR('Die Buchnummer %1 wurde nicht gefunden!', Suche);


unter Message soll er jetzt noch in der Form auf den gefunden Datensatz springen. Dies müsste doch mit CurrForm gehen?!

Re: Sprung auf Datensatz

24. September 2008 11:19

msp hat geschrieben:unter Message soll er jetzt noch in der Form auf den gefunden Datensatz springen. Dies müsste doch mit CurrForm gehen?!

Nein, das hat mit CurrForm nichts zu tun. Nimm wirklich den Quelltext, den Timo und ich dir gesagt haben. Dieser muss direkt auf der Form aufgerufen werden, weil nur dann die Befehle eine Auswirkung auf die Anzeige in der Form haben.

Rec ist in Navision (u.a.) der aktuelle auf der Form angezeigte Datensatz.
Rec.NEXT springt also zum nächsten Datensatz, kann aber auch einfach als NEXT geschrieben werden - solange es sich um die Variable Rec handelt!

An welcher Stelle (also in welchem Form-Trigger) befindet sich denn dein bisheriger Quelltext?

Re: Sprung auf Datensatz

24. September 2008 11:27

hast du eine source table in der form hinterlegt? wenn ja, dann brauchst du keine recordvariable (man kann auch rec. verwenden), du brauchst also nur ein get und next

Re: Sprung auf Datensatz

24. September 2008 11:36

Ich dachte die ganze Zeit ihr meint mit "Rec" meine Recordvariablen, also Bücher.next und nicht rec.next ;)

Code:
   IF Bücher.GET(Suche) THEN
      BEGIN
         MESSAGE('Die Buchnummer %1 wurde gefunden, dass dazugehörige Buch ist: %2', Bücher.Buchnummer, Bücher.Titel);
         Rec.Get(Suche)
      END
   ELSE
      ERROR('Die Buchnummer %1 wurde nicht gefunden!', Suche);


das geht nun wunderbar

Das ganze liegt übrigens ALLES auf einem Button.... ich musste nichts in der Form hinterlegen.

vielen dank =)

Re: [gelöst] Sprung auf Datensatz

24. September 2008 11:41

wenn du eine neue form erstellst, kann man schon vor dem designen eine tabelle als quelle hinterlegen

Re: [gelöst] Sprung auf Datensatz

24. September 2008 11:53

@ Sebastian

ja das ist doch logisch, dass ich eine Tabelle als Source eines Forms angebe. Ich benutze aber gerne Recordvariablen, alleine der übersichtlichkeit halber. Muss ja nicht überall immer nur "rec" stehen ;)

das Problem hier war jedoch, dass "Bücher.get" nicht ging, wobei "Rec.get" ging. Das find ich recht seltsam, aber es funktioniert ja jetzt :roll:

Re: [gelöst] Sprung auf Datensatz

24. September 2008 11:58

msp hat geschrieben:das Problem hier war jedoch, dass "Bücher.get" nicht ging, wobei "Rec.get" ging. Das find ich recht seltsam

:-) ... auf der Form angezeigt wird nur der Inhalt der Rec-Variable. Der Form ist es völlig egal, was in übrigen Variablen, wie z.B. Bücher, steht.

Re: [gelöst] Sprung auf Datensatz

24. September 2008 12:01

wollte gerade editieren und erwähnen, dass ich vollkommenen Schwachsinn geschrieben habe. Natalie hat natürlich recht und jetzt macht auch das Rec.get Sinn ;)

man lernt nie aus =)