record saven in hoofdformulier terwijl focus op een ander formulier is.

Status
Niet open voor verdere reacties.

pdater

Gebruiker
Lid geworden
10 mei 2010
Berichten
55
Beste forumleden,
blijkbaar is het toch niet zo eenvoudig om een record in een hoofdformulier(formA) met subformulier(formA1) op te slaan vanuit een ander formulier.
ik schets even de situatie:
in mijn databank kunnen leerkrachten toetsen (en dus punten ingeven)
het hoofdformulier is dit van de toetsen met de naam van de leerling. in een subformulier staan dus alle items van de toets waarop punten worden gegeven.
de manier van punten geven gebeurt op de volgende manier:
men dubbelklikt op een item --> er opent zich dan een nieuw klein formuliertje met de punten die kunnen gegeven worden voor dit item. door dubbel te klikken wordt de waarde via vba gecopieerd naar het subformulier waarop alle items staan. dit alles gaat zeer goed. Ik zou echter willen dat deze record direct wordt gesaved zodat ik ook nog andere acties direct kan uitvoeren. dus in het kort de record in het subformulier moet direct opgeslagen worden.
ik heb dit al geprobeerd door: "DoCmd.RunCommand acCmdSaveRecord "te doen maar dit gaat natuurlijk niet omdat de focus niet op dit document zit.
Ook heb ik al geprobeerd om deze code te zetten in het subformulier bij de actie " bij gewijzigd" of "na bijwerken" maar ook dit helpt niet.
ook heb ik al geprobeerd met Me.Dirty = False
Ik denk dat ik de focus eerst moet verleggen naar het subformulier maar hoe doe je dit in vba?
Alvast bedankt voor de hulp.
groeten,
Rik
 
Dus je hebt een subformulier waarin je een cijfer moet invoeren d.m.v. dubbelklikken op een item (ik neem aan dat je een tekstveld bedoelt) waarna een popup opent waarin je uit een lijst van beschikbare cijfers kunt kiezen (ik neem aan tussen 0 en 10?) waarop je moet dubbelklikken waarna het formulier moet sluiten met de aangeklikte waarde in het tekstveld?
Wel eens overwogen om de gebruiker het cijfer gewoon te laten typen in het tekstveld?
 
Dus je hebt een subformulier waarin je een cijfer moet invoeren d.m.v. dubbelklikken op een item (ik neem aan dat je een tekstveld bedoelt) waarna een popup opent waarin je uit een lijst van beschikbare cijfers kunt kiezen (ik neem aan tussen 0 en 10?) waarop je moet dubbelklikken waarna het formulier moet sluiten met de aangeklikte waarde in het tekstveld?
Wel eens overwogen om de gebruiker het cijfer gewoon te laten typen in het tekstveld?

Michel,

De manier waarop jij het weergeeft klopt ongeveer met wat ik heb gemaakt, wel is het een nummeriek veld (scoreID ) ipv een tekstveld. de reden waarom ik de gebruikers zelf geen cijfer laat intypen is omdat de score niet altijd tot 10 gaat (soms slechts tot 5 of zelfs tot 20, soms met komma sommige niet) ook heb ik naast deze score ook og een veld met verklaring (vb : zeer zwak) het gaat niet steeds om vakken die moeten beoordeeld worden.
ik wil natuurlijk dat het subformulier waarin het cijfer moet komen direct refreshed (ik doe dit door de functie "Requery" de bedoeling is dat ik via een ander subformulier dan kan berekenen hoeveel items de test bevat en hoeveel er al beoordeeld zijn. (vb 8 items van de 10) eens dat de acht naar 10 springt dan is deze LL volledig geevalueerd en als alle leerlingen geëvalueerd zijn dan kan men de evaluatie afsluiten. ( dus maw veel omwegen maar dit is nodig om de gebruikers via een foolproof gebruiksvriendelijk systeem te sturen.
groeten,
Rik
 
Michel,

De manier waarop jij het weergeeft klopt ongeveer met wat ik heb gemaakt, wel is het een nummeriek veld (scoreID ) ipv een tekstveld. de reden waarom ik de gebruikers zelf geen cijfer laat intypen is omdat de score niet altijd tot 10 gaat (soms slechts tot 5 of zelfs tot 20, soms met komma sommige niet) ook heb ik naast deze score ook og een veld met verklaring (vb : zeer zwak) het gaat niet steeds om vakken die moeten beoordeeld worden.
ik wil natuurlijk dat het subformulier waarin het cijfer moet komen direct refreshed (ik doe dit door de functie "Requery" de bedoeling is dat ik via een ander subformulier dan kan berekenen hoeveel items de test bevat en hoeveel er al beoordeeld zijn. (vb 8 items van de 10) eens dat de acht naar 10 springt dan is deze LL volledig geevalueerd en als alle leerlingen geëvalueerd zijn dan kan men de evaluatie afsluiten. ( dus maw veel omwegen maar dit is nodig om de gebruikers via een foolproof gebruiksvriendelijk systeem te sturen.
groeten,
Rik

nog even meegeven, de scores zijn opgeslagen in een aparte tabel, ook is het geen echte pop up maar een klein formumiertje met de juiste scoreschaal afhankelijk van het item en als men dubbelklikt op de score wordt dit scoreformuliertje ook direct gesloten. deze manier van werken gaat zeer vlot ( de gebruikers kunnen ook nooit een verkeerde schaal geven. alleen zou ik graag hebben dat het subformulier diret wordt gerefreshed van zodra het scoreformulier gesloten wordt. probleem is dat de record met de nieuw ingebrachte score (in het subform) nog niet gesaved is en dus ik kan het ook niet direct een requery doen hierop. (nochthans, het was mij wel in het begin gelukt maar nu slaag ik er niet in)
 
Je zou ondertussen kunnen weten dat nodeloos quooten niet nodig is, en niet op prijs wordt gesteld. En jezelf quooten is dan natuurlijk helemaal uit den boze :) Dus graag de quoots verwijderen, want ze maken het draadje er bepaald niet leesbaarder op.
Om bij de vraag te blijven: als je een wisselende waarderingsschaal nodig hebt, zul je die vast ergens hebben vastgelegd, bij voorkeur in een aparte tabel waarin je de vraag opneemt en de toegestane waarden. Op basis daarvan maak je dan in je subformulier een keuzelijst die de juiste antwoorden ophaalt. En dan heb je dus nog steeds geen apart formulier nodig. Eigenlijk gebruik je de techniek uit het popuo formulier dus in de keuzelijst.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan