Week en dag van vandaag automatisch invoeren

Status
Niet open voor verdere reacties.
en welke naam moet het vak in het formulier hebben en welke code?
want hier krijg ik een foutmelding.
 
ook worden alle vakjes in het formulier groen aangeduid als wijze van foutmelding.
ook heb ik de oude wk/dag voor ik begon uit de hoofd tabel verwijdert.
 
Laatst bewerkt:
Maak er even een voorbeeldje van, dan kijk ik er wel even naar.... Volgens mij ben je nu teveel dingen tegelijk aan het verbouwen ;)
 
Bekijk bijlage Database voorbeeld 4.rar

het is 2007 maar ik zag geen manier om het in 2000 te veranderen

Niet schrikken hoor ik heb niet alle querys bijgevoegd anders zou het erg veel worden.
hierdoor zullen de filters niet werken. maar het belangrijkste zijn de foutmeldingen en de fusie tussen query QHoofdtabel en het formulier: Bestellingsoverzicht
de code in de velden wk/dag klopt niet meer omdat ik die erg vaak heb verandert om te kijken of dat iets zou helpen.

Jesse
 
Ik kan vanavond naar de db kijken; wij werken nog met 2003.
 
ik weet het;)
en bedankt voor je grote bijdrage aan mijn access ontwikkeling
 
Met een paar kleine aanpassingen doet-ie het.

1. Functies moet je opslaan in een Module (<Hulpmiddelen voor databases>, <Visual Basic>. Daar plak je de code. In het voorbeeld heb ik dat alvast gedaan.
2. Verder heb ik de query die je voor het formulier aangepast, want dat bevatte de berekening nog niet.
3. Op het formulier moest het tekstvak wk/dag nog gekoppeld worden aan het nieuwe berekende veld. Ik heb dat veld uitgeschakeld, zodat je er niet per ongeluk iets uit kunt wissen.
4. De tabel heeft nu op het veld [Datum] een standaardwaarde. Zodat je automatisch een datum krijgt bij invoeren van een nieuw record.

Als je een nieuw record maakt, zie je nog niet gelijk een weeknummer; dat wordt berekend op het moment dat je daadwerkelijk iets invult. Dan 'ziet' Access dat er een nieuw record is, en kan-die rekenen.
Overigens ga je nog blij zijn dat je van de weeknotatie afstapt, want ik zie nergens hoe je het record van dag 243 van het record 243 zou moeten scheiden... Cryptisch voorbeeldje, maar ik geef het omdat je op basis van dit simpele getal geen flauw benul kan hebben uit welk jaar het record is! Ook de functie van Harry gebruikt het huidige jaar om een datum te bouwen. Oftewel: de database is alleen dit jaar bruikbaar, want volgend jaar klopt er op deze manier niks meer van de datums. En dat is exact de reden dat ik zo push om een normaal datumveld te gebruiken: daarmee ligt het exacte moment in één keer goed vast!
 

Bijlagen

  • Database voorbeeld 4.rar
    71 KB · Weergaven: 18
erg bedankt maar ik probeer nu alles wat je op hebt geschreven in mijn volledige database aangepast en nu kan ik het formulier weer openen.
alleen de filters op basis van wk/dag werken niet meer en het doel van dit alles was juist om die te behouden
 
erg bedankt ik heb nu alles wat je op hebt geschreven in mijn volledige database aangepast en nu kan ik het formulier weer openen.
alleen de filters op basis van wk/dag werken niet meer en het doel van dit alles was juist om die te behouden:confused:
als ik op een filter klik komt de popup: Hoofd Tabel.wk/dag
ook bij het openen van het formulier komt deze melding.
 
Laatst bewerkt:
Je hebt het formulier vermoedelijk nog gebaseerd op de tabel [Hoofd tabel]. Hier zit het veld [wk/dag] niet meer in. Je moet dus op basis van deze tabel een query maken, waar je een veld wk/dag aan toevoegt, met de formule WeekCode([Datum]). Zoals ik dus in het voorbeeld heb gedaan. Eigenlijk moet je alle formulieren die zijn gebaseerd op de tabel [Hoofd tabel] nu baseren op die query. Dat hoeft maar één keer te gebeuren, en die query hoef je ook maar één keer te maken.
Hetzelfde zou ook kunnen optreden als je andere queries hebt die gebruik maakten van de tabel [Hoofd tabel]; ook deze queries zou je moeten aanpassen. In die queries moet je dan de tabel [Hoofd tabel] vervangen door de query [qHoofd tabel].
 
moet ik in de querys bv alleen wk/dag aanpassen
of gewoon alles want voor de foute onderdelen staat expr1.
 
ik vraag me af of er wel via wk/dag gefilterd kan worden want ik heb een paar querys verandert,
en als ik die probeer staat er : gegevenstypen komen niet overeen in criterium expressie.
kan dit systeem op deze manier wel werken?
 
Laatst bewerkt:
Waarschijnlijk probeer je dan een tekstveld met een numeriek veld te vergelijken. De functie maakt een tekstwaarde aan (anders krijg je ook geen voorloopnul), die moet je dus filteren als een tekstveld. Dat betekent doorgaans dat er in de vergelijking ook een quootje omheen moet. Dus iets als: [wk/dag]=' & Me.txtWkDag & "'"
 
ik maak een query, ik gebruik gewoon het tekstvak wk/dag uit de bron QHoofdtabel.
daarop pas ik bijvoorbeeld deze filter toe: Between "11" And "47"
wat moet daar dan nog anders aan?
 
Aan de waarden te zien filter je op getallen; in dat geval gebruik je Between 11 And 47. Is je wk/dag waarde tekst, dan heb je een voorloopnul nodig: Between '011' And '047'.
 
en opnieuw: gegevenstypen komen niet overeen in criterium expressie
dit is erg vervelend met een kapotte database kan ik niet veel.:(
 
Laatst bewerkt:
is het niet mogelijk de codes in het oude veld wk/dag automatisch te laten invoeren bij het invoerformulier?
ik heb een recente back-up en dan heb ik geen problemen met al die foutmeldingen. misschien is me even ontgaan waarom dit ook al weer niet kon.
 
oplopend en aflopend sorteren kan ik ook wel vergeten dat doet hij ook niet.
 
Maak weer even een voorbeeldje met een of twee formulieren die het niet doen; anders kan ik er ook niet zoveel van zeggen...
 
bij het maken van het voorbeeld kwam ik achter het probleem.
doordat bij veel records uit de database geen datum was ingevoerd en dus nog geen wk/dag stond, werkte geen filter meer op basis van wk/dag
wel krijg ik nog steeds een foutmelding popup bij het laden maar dit komt waarschijnlijk door alle ongeldige querys die er nog zijn.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan