bis dahin läuft alles sauber. ich habe vorher nochmal ein close data gesetzt. aber es passiert nichts.
Code: Alles auswählen
use spker New Exclusive
set index to "spker.cdx"
spker->(OrdSetFocus("begriff"))
nZaehler:=0
// eintrag suchen nach Inventur und die Differenz wird aufaddiert.
Spker->(DbGoTop())
Do while Spker->(!eof())
nZaehler++
If nZaehler % 5 == 0
oAStatic:setcaption("Inventur suchen: "+Spker->Wg)
nZaehler:=0
Endif
If Spker->SA="A"
nSatz:=Spker->(Recno())
nMengeVor:=Spker->Gesmebe
nEkVor:=Spker->Ekbest
nVkVor:=Spker->Vkbest
cIndex:=substr(Spker->Begriff,1,13)+"I"
If Spker->(DbSeek(cIndex))
If Spker->WeMenge <0
nMengeVor+=abs(Spker->Wemge)
nEkVor+=abs(Spker->WeDmEk)
nVkVor+=abs(Spker->WedmVk)
Else
nMengeVor-=Spker->Menge
nEkVor-=Spker->WeEmEk
nVkVor-=spker->Wedmvk
Endif
Spker->(DbGoTo(nSatz))
Spker->Gesmebe:=nMengeVor
Spker->EkBest:=nEkVor
Spker->Vkbest:=nVkVor
Endif
Endif
Spker->(DbSkip(+1))
sleep(100)
Enddo
Close Data