Jeg ved ikke om dette emne har været oppe i forummet før, men jeg prøver lykken!
Jeg har generelt 3 ting jeg har problemer med.
1. Jeg har to typer produktionsrapporter der bruges alt efter hvilken type produktion der er tale om. I en formular har jeg 4 kombo bokse der arbejder sammen, nr 1 vælger produktionstype, nr 2 vælger kunde, nr 3 vælger værktøj og nr 4 vælger kritisk reservedel. Når jeg har valgt alle muligheder ned til kritisk reservedel skal jeg have vist en produktions rapport, men denne skal ændres alt afhængig af hvilken produktionstype der er valgt, hvordan gør jeg dette?
2. Når jeg vil printe en af disse produktionsrapporter, så får jeg kun vist værktøjs ID'et og ikke værktøjsnavnet ved udskrift, samt får kun vist rapporten for det første værktøj og ikke den jeg har valgt. Hvad skal jeg ændre for at rette dette?
3. I mine to typer produktionsrapport bliver der tastet et tal for hvor mange emner et værktøj har produceret. Disse tal skal bruges til at regne den resterende levetid ud. Hvordan henter jeg hele tiden den nyeste værdi for et værktøj og får dem lagt sammen indtil de overstiger den værdi jeg har valgt som maks værdi, når jeg næsten har ramt en maks værdi skal jeg have en besked om at værktøjet skal skiftes, når værktøjet så er skiftet skal levetiden nulstilles.
Håber det gav mening ellers uddyber jeg det gerne.
Nu skriver du jo ikke noget som helst om selve rapporterne; men hvis vi går ud fra at en given rapport er baseret på en forespørgsel, som samler alle relevante data, og at dine kombobokse er baseret på visse af disse data, må problemet kunne koges ned til:
Hvis du bare fyrer din rapport af, ser du alle kombinationer af produktionstyper, kunder, værktøj og reservedele. Hvordan begrænser du så rapporten til kun at omhandlede de valgte værdier?
Løsningen må være at kalde rapporten med WHERE-værdier, f.eks.:
Private Sub VisRapport_Click() Dim F As Form Set F = Forms!DinFormular DoCmd.OpenReport "DinRapport", acViewPreview, , "Produktionstype='" & F!Kombo1 & "' AND Kunde='" & F!Kombo2 & "' AND Værktøj='" & F!Kombo3 & "' AND Reservedel='" & F!Kombo4 & "'" Set F = Nothing End Sub
(udskift selv diverse navne)
Dit sidste punkt er ikke helt klart.
Du skriver "I mine to typer produktionsrapport bliver der tastet et tal". Normalt kan man jo ikke taste noget ind i en rapport. Værdierne må vel blive gemt i en eller anden tabel. Hvis posterne i tabellen har et unikt ID, må den seneste (altså højeste id) være den nyeste værdi. Den finder du med: MaxID = DMax("ID","DinTabel","Værktøj='" & SøgeVærdi & "'") AntalProduceret = DLookup("EtTal","DinTabel","ID=" & MaxVærdi)
Men, du skriver samtidig: "Hvordan henter jeg hele tiden den nyeste værdi for et værktøj og får dem lagt sammen". Det lugter af at du vil summere alle værdier for et givét værktøj: AntalProduceret = DSum("EtTal","DinTabel","Værktøj='" & SøgeVærdi & "'")
Håber, det bringer dig videre. Ellers må du nok forklare lidt mere.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.