Sinn/Zweck einer Funktion

Eigentlich ist mir die Frage peinlich, aber es kann sonst niemand helfen ... :)

Moderator: Moderatoren

Sinn/Zweck einer Funktion

Beitragvon Wonderer » Do, 07. Apr 2016 13:53

Hallo,

im mir vorliegenden Code habe ich eine Funktion gefunden die einen interessanten Namen hat und aus der ich aber trotz Kürze nicht schlau werde.

Vielleicht hat jemand eine Idee wofür das gut sein soll?

Code: Alles auswählen
*****************
function Fpos_bug
*****************
local Mrel:=DbRSelect(1),;
      Mselect

if Mrel#0
 Mselect:=select()
 select (Mrel)
 if .not. eof()
  DbGoto( recno())
 endif
 select (Mselect)
endif
return (NIL)


Das mit den Relations im XBase muss ich mir noch anschauen, habe ich gerade gestern das erste mal davon gelesen.
Wonderer
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 107
Registriert: Do, 06. Jul 2006 12:24

Re: Sinn/Zweck einer Funktion

Beitragvon georg » Do, 07. Apr 2016 14:10

Hallo,


wahrscheinlich wird mit der Funktion ein Positionierungsbug (möglicherweise auch nur aus der Sicht des Programmierers) behoben.

Möglicherweise soll hier der Datensatz in der abhängigen Datei aktualisiert werden, was in einem Netzwerkumfeld nicht automatisch passiert, wenn an einem anderen PC Änderungen vorgenommen werden.

Durch das Positionieren auf den gleichen Satz werden die Feldinhalte neu aus der Datei gelesen. Ohne die Positionierung werden die Feldinhalte aus dem (möglicherweise) veralteten Puffer gelesen.
Liebe Grüsse aus der Eifel,

Georg
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 1751
Registriert: Fr, 08. Feb 2008 21:29

Re: Sinn/Zweck einer Funktion

Beitragvon Herbert » Do, 07. Apr 2016 14:54

Falls in area(1) eine tabelle geöffnet wird, wird dort der bereits aktuelle Datensatz nochmals gelesen.
Wie Georg vermutet, war vielleicht einmal ein Problem mit der Positionierung, das mir allerdings nicht bekannt ist.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 1756
Registriert: Mi, 13. Aug 2008 23:22
Wohnort: Gmunden am Traunsee, Österreich

Re: Sinn/Zweck einer Funktion

Beitragvon brandelh » Do, 07. Apr 2016 15:04

da von BUG und REL die Rede ist betrifft es wohl den Bug in der RELEATION, der in 1.80 oder 1.82 enthalten war.
Die 1.90.331 hat den nicht mehr.

Auch ich war damals davon betroffen ...

1. Hauptsatz, wird angesprungen und angezeigt.
2. In der abhängigen Datei sind z.B. 3 Sätze zu diesem enthalten.
3. Der Anwender blättert zum 2. oder 3. ... und will nun Daten ändern (auf dem Monitor sind Daten aus dem Hauptsatz und dem abhängigen ...
4. Das Programm sperrt den Haupt und den gewählten Kinddatensatz und schreibt die Änderungen weg ...

leider hat aber der RLOCK() des Hauptsatzes, ein automatisches dbSeek() des Kindsatzes durchgeführt ...

und die Kinddaten wurden in den ersten statt dem richtigen geschrieben ...
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13201
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: Sinn/Zweck einer Funktion

Beitragvon Wonderer » Fr, 08. Apr 2016 8:43

danke!

@Hubert Ok, ich glaube das habe ich verstanden :)
Wonderer
Rekursionen-Architekt
Rekursionen-Architekt
 
Beiträge: 107
Registriert: Do, 06. Jul 2006 12:24


Zurück zu Newbie

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron