Uitdaging database.

Status
Niet open voor verdere reacties.
de originele data wordt ingevoerd als alles werkt, is een nieuwe invoer methode voor de brandweer voor het opslaan en beheren van redplannen.
Dan wordt het nu tijd om eens inhoudelijk naar je probleem te kijken, want ik begin langzaam een idee te krijgen wat je wilt zien. Je hebt een hoofdformulier en een invulformulier in je db, en een rapport. Allemaal gebaseerd op één tabel: [Gegevens redplannen].
Hierin heb je een aantal datumvelden, waarvan ik op basis van de naam niet altijd kan opmaken wat de datums voorstellen, zoals [Datum2] en [Datum3], maar die zullen hopelijk voor de vraag niet relevant zijn. Verder heb je velden [Datum], [Aanvang werkzaamheden] en [Einde werkzaamheden] (merk op dat ik bij alle veldnamen de : heb weggehaald; is een heel slecht idee om een dubbele punt in veldnamen te zetten). En ik vermoed daarom dat de velden [Aanvang werkzaamheden] en [Einde werkzaamheden] het eigenlijke onderwerp zijn, en dat je een overzicht wilt zien van alle plannen die actief zijn op de actuele datum.
Dus wat je m.i. dan nodig hebt, is een formulier waarop je een overzicht ziet van de rapporten die actief zijn, en die je, als je er op klikt, worden geopend. Althans: zo zou jij dat omschrijven (zie eerste bericht). Wat je feitelijk ziet in die lijst is een overzicht van actieve redplannen. En daar gaat je tabel een beetje mank, want ik zie in je tabel niet zo snel een veld dat die redplannen beschrijft. Ik zie een veld [Apparaatcode] en een veld [Nummer reddingsplan], maar daar houdt het wel zo'n beetje op. Ik zou van [Nummer reddingsplan] overigens wel een sleutelveld maken, want je hebt in ieder geval een sleutelveld nodig om het juiste record te kunnen openen in je rapport.

Maar mijn vraag is dus: zit ik op het goede spoor? En wat zijn de velden die je nodig hebt om vanuit het zoekformulier het juiste redplan te openen? Want die moet je dus kunnen zien in de overzichtslijst.
 
Ik hoor even niks (goed nieuws: je hebt het druk. Slecht nieuws: er is veel brand ;) ) dus ik heb even een voorbeeldje gemaakt met hoe ik het zou doen.
 

Bijlagen

Klop drukke dag, hele dag trainingen, ik zal vanavond kijken naar de files, en ja je slaat de nagel op de kop met wat de bedoeling is. De zoekveld en moetten zijn redplannummer apparaatcode locatie(plant) aanvangsdatum werkzaamheden en einddatum werkzaamheden. Dit zijn ook de datums die er om doen. De andere datums zijn niet belangrijk hier voor.
 
dit ziet er goed uit, alleen nu werkt het printen, het mailen en de automatische nummering niet in jouw files krijg ik foutmeldingen. Zou je hier nog eens naar kunnen kijken. Als die 3 dingen werken is het helemaal top :thumb:
 
Ik heb er wat uitgesloopt om de dB wat meer ‘genormaliseerd’ te krijgen. Printen en mailen heb ik verder nog niet naar gekeken. De functie zou overigens moeten werken. Waarschijnlijk werkt-ie niet omdat je : hebt gebruikt in de veldnamen, en die zijn nu weg. Doe dat nooit meer :).
 
Inderdaad hier en daar nog wat : weggehaald en nu werkt alles, behalve de mail als ik het popup venster krijg en daar het email adres invul krijg ik de fout melding zoals op de bij gevoegde foto. Voor de rest werkt nu alles super, zou je voor de mail eens kunnen kijken wat er mis is.fout mail.jpg
 
Ik snap eerlijk gezegd niet waarom je twee formulieren gebruikt; je kunt makkelijk met één formulier af dat je in verschillende modi opent. Ik heb je voorbeeldje daarop aangepast. De mailcode zit daar overigens nog niet bij, doe ik vanavond wel.
 

Bijlagen

het idee is dat er dan geen bestaande redplannen per ongeluk worden veranderd daarom via 2 formulieren.
Bedankt dat je nog naar het mail probleem wil kijken het is de bedoeling dat het rapport wat voor staat bij het zoeken gemaild wordt dus 1 enkel rapport niet allemaal.
 
het idee is dat er dan geen bestaande redplannen per ongeluk worden veranderd daarom via 2 formulieren.
Dat snap ik, maar jouw ‘oplossing’ is geen goede oplossing voor dit probleem. Een probleem analiseren betekent dat je eerst kijkt wat het probleem is, en dan hoe je dat binnen de bestaande structuur kan oplossen. Als dat niet lukt, ga je naar alternatieven zoeken. In dit geval is de oplossing heel simpel: 1 formulier dat je afwisselend opent in toevoegmodus (records toevoegen) en, met een andere knop, in Edit/Opzoek modus.

Want dat laatste kan ook, met een derde knop: het formulier openen in een status waarin je niks kunt wijzigen, alleen op kunt zoeken. Afhankelijk van de modus waarin je een formulier opent, kun je dan knoppen tonen of verbergen. En, nog veel mooier, je kunt als je met gebruikers met rechten werkt, ook nog eens de knoppen en handelingen beperken op basis van de gebruikersrechten. Dus een gebruiker die geen nieuwe records mag aanmaken, ziet de knop <Nieuw record> niet. En omdat je geen nieuwe records kunt aanmaken met de andere knoppen, kan er ook niks fout gaan.
 
oke daar heb je gelijk in ga ik eens beter bekijken.
Nu het volgende als ik het afdrukvoorbeeld wil afsluiten krijg ik de melding zoals op de toegevoegde foto. dit is als ik wil printen. Als ik in het hoofdmenu een redplan aan klik en dan doe sluiten gaat access wel gewoon terug naar het hoofdmenu.

afdrukvoorbeeld sluiten.jpg
 
Dat is nog een klein ‘foutje’ dat in het formulier zit: hij gaat er vanuit dat het hoofdmenu is geopend en van daaruit de andere ‘formulieren’ worden geopend. Als je het invulformulier gelijk opent, is dat niet het geval. En dan kan het hoofdmenu niet zichtbaar worden gemaakt. Zet er een On Error die op de fout triggert, en alsnog het hoofdmenu opent en het is opgelost.
 
yes alles werkt nu alleen het emailen nog top:thumb:

Nu me nog even verdiepen hoe ik dat moet doen om knoppen te verbergen.
 
Dat doe ik door bij de gebeurtenis <Bij laden> te controleren in welke staat het formulier wordt geopend. Je kunt bijvoorbeeld alle knoppen op het formulier onzichtbaar maken, en ze bij een bepaalde status weer zichtbaar maken.
Code:
    If Me.AllowAdditions = True Then Me.Knop94.Visible = True
    If Me.AllowEdits = True Then 'etc.
    If Me.NewRecord Then 'etc.
Uiteraard kun je ook codes combineren voor beter combinaties.
 
Ik zie trouwens aan de mailcode niet zoveel fout; op welke regel krijg je de foutmelding?
 
De knoppen verbergen is gelukt :thumb:
Wat de mail betreft krijg ik geen fout opsporing waar het mis gaat heb jij via de DB een mail kunnen sturen?
 
Laatst bewerkt:
Normaal gesproken wel, maar mijn configuratie is naar de knoppen zodat Outlook sowieso niet meer werkt. Kan dus niet zelf testen. Het is code die dus wel gewerkt heeft.
 
Oke nou ik ga nog wel wat stoeien met dat mailen, de DB is verder helemaal naar wens dank zij jou :thumb: ik wil je hartelijk danken voor alle goeie hulp het was erg leerzaam hulde voor jou OctaFish.
Duizend maal dank :thumb::thumb:
 
Dat mailen werkt bij mij op het werk prima, mits je twee dingen doet: 1) de naam van het rapport invullen in de regel DoCmd.OutputTo acOutputReport, "Rapport redplan", acFormatPDF, sFile (hier dus wel gedaan) en zorgt dat er een map <Rapporten> is op de plek waar de db staat. Ik gebruik altijd CurrentProject.Path & "\Rapporten" of iets vergelijkbaars, zodat de rapporten voor mij gelijk op de goede plek staan. Dat mag natuurlijk elke map zijn waar de db in mag schrijven.
 
Ik zou uw invulformulier (dat je nu openen in modus "toevoegen") weggooien en alleen verder werken met je "invulformulier" 2 en daar een knop "nieuwe record" aan toevoegen samen met wat keuzelijsten bovenaan om een en ander op te zoeken en verder je rapportknop een pop-up formuliertje laten openen waar je een aantal selectiecriteria kunt inbouwen waar de gebruiker uit kan kiezen om een gepast gefilterd rapport te krijgen. En waarom heb je geopteerd om een dubbelpunt te gebruiken in iedere veldnaam van de records in je tabel? Voor wat gebruik je trouwens die Facebook verwijzingen, etc.... in je VBA code?
 
Ik zou uw invulformulier (dat je nu openen in modus "toevoegen") weggooien en alleen verder werken met je "invulformulier" 2 en daar een knop "nieuwe record" aan toevoegen samen met wat keuzelijsten bovenaan om een en ander op te zoeken en verder je rapportknop een pop-up formuliertje laten openen waar je een aantal selectiecriteria kunt inbouwen waar de gebruiker uit kan kiezen om een gepast gefilterd rapport te krijgen. En waarom heb je geopteerd om een dubbelpunt te gebruiken in iedere veldnaam van de records in je tabel? Voor wat gebruik je trouwens die Facebook verwijzingen, etc.... in je VBA code?
Je hebt zeker wat berichtjes gemist. Ik heb in #27 al aangegeven dat TS beter met één formulier kan werken :). En de opmerking over de dubbele punten zelfs al eerder :D. Enniweee, en de bijlage die in #27 staat zijn beide suggesties al verwerkt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan