Moi,
Datasetissä tauluja, mm.TAULUa ja TAULUb.
TAULUa:ssa on datasetin designerissä luotu sarake, jossa laskukaava (expression) laskee, montako kertaa kyseisen rivin id on merkattu toiseen tauluun(TAULUb).
TAULUa
- ID
- LASKURISARAKE (expression = iif(count(child(FK_TAULUa_TAULUb).TAULUaID) = 0,null,count(child(FK_TAULUa_TAULUb).TAULUaID))
TAULUb
- ID
- TAULUaID
Kun lisään TAULUb:hen rivin jossa kelvollinen TAULUaID, toimii laskuri kuin pitääkin. Laskuri toimii myös kun poistan rivin TAULUb:stä.
MUTTA,jos poistan rivin käyttämällä TAULUb.RejectChanges, ei laskuri enää toimikkaan. Rivi kyllä poistuu TAULUb:stä mutta TAULUa:n laskurisarake ei päivity. Sama homma jos kutsun Dataset.RejectChanges.
Asettamalla laskukaavan uudelleen aina RejectChanges metodin jälkeen, päivittää laskurisarakkeen (TAULUa.LASKURISARAKE.Expression = TAULUa.LASKURISARAKE.Expression).
En mitenkään voi uskoa, että tämä olisi oikea ratkaisu ongelmaan. Tietääkö/keksiikö joku parempaa ratkaisua?
Aihe on jo aika vanha, joten et voi enää vastata siihen.