Avatar billede trinerafn Nybegynder
15. november 2004 - 14:27 Der er 19 kommentarer og
2 løsninger

Problem med at udforme Rapport til aktuel form

Jeg har en database som udfra et valg af typenr. opretter et nyt projektnr. Basen er relationel med en til mange relationer. En type kan forefindes på mange projektnumre. Et projekt kan have mange projektlinier(Tillægslinier) osv. Jeg har en form med en subform, hvor brugeren efter projektnr. er fremkommet, kan indtaste info til projektnummeret og info til projektnr-linjerne. Hvordan laver jeg en rapport over den aktuelle form med de oplysninger der er for lige det projektnr. Denne rapport skal nemlig så have en underskriftslinie på og en udskriftsknap.Håber på et detaljeret svar.
Avatar billede mugs Novice
15. november 2004 - 14:30 #1
Du kan ikke basere en rapport på en formular.

Du skal som minimum have en forespørgelse at danne din rapport på. Efterfølgende kan du evt. lave en underrapport der medtager data fra din subform (forespørgelse), og trække den ind i din hovedrapport.
Avatar billede jensen363 Forsker
15. november 2004 - 14:33 #2
Du kan godt lave en udskrift af formularen  ...

Private Sub Udskriv_Click()
Dim stDocName As String
Dim stLinkCriteria As String
   
    DoCmd.RunCommand acCmdPrint
 
    stDocName = "Formular"
    DoCmd.OpenForm stDocName, , , stLinkCriteria

End Sub

Hvis du ønsker en underskriftslinie, kan du tilføje denne på formularen, og så vælge at den kun skal medtages på udskriften
Avatar billede mugs Novice
15. november 2004 - 14:36 #3
jensen363 > Enig, hvis man vil udskrive selve skærmbilledet. Men sådan har jeg ikke forstået spørgsmålet.
Avatar billede jensen363 Forsker
15. november 2004 - 14:39 #4
Citat : Hvordan laver jeg en rapport over den aktuelle form med de oplysninger der er for lige det projektnr.
Avatar billede mugs Novice
15. november 2004 - 14:42 #5
jensen > Jeg kan godt læse ordene, men har ikke forstået spørgsmålet således :o)
Avatar billede jensen363 Forsker
15. november 2004 - 14:45 #6
Mugs > skærmprint er naturligvis også en quick´n Dirty løsning ... c",)
Avatar billede mugs Novice
15. november 2004 - 14:48 #7
Ja - Jeg anser det ikke for en optimal løsning. En rapport er jo normalt beregnet til at blive udskrevet igen og igen. Og med alle de farver m.m. som folk (uhensigtsmæssigt) lægger på formularerne, tager det alt for megen blæk og udskrive.
Avatar billede jensen363 Forsker
15. november 2004 - 14:49 #8
Hvordan får man for øvrigt en udskrifteknap med på rapporten !!!!
Avatar billede mugs Novice
15. november 2004 - 14:51 #9
Jeg læste det også, og det kan bare ikke lade sig gøre.
Avatar billede jensen363 Forsker
15. november 2004 - 14:51 #10
3D - papir ???
Avatar billede trinerafn Nybegynder
15. november 2004 - 15:48 #11
Til Jensen: Hvis man lægger den kode ind som du har skrevet skriver den godt nok ud, men 1. den skriver alle projektnumrene ud og 2. den skriver to ud på hver sin side. Jeg er kun interesseret i at få den aktuelle form med det aktuelle projektnr skrevet ud. Jeg kommer nok heller ikke ud over at lave en rapport. Jeg har allerede lavet en forespørgsel som bygger på de to forespørgsler formen er bygget over, men når jeg så laver rapporten bygget over denne forespørgsel, fremkommer alle projektnumrene linet op efter hinanden. Jeg kunne godt tænke mig en rapport som fremkom med de samme data som jeg har på min form.
Avatar billede mugs Novice
15. november 2004 - 15:52 #12
Hvis du vil udskrive en rapport bygget på en forespørgelse kun med den post der ses i formularen, kan du indsætte et kriterie i dinj udskrivningskommando:

DoCmd.OpenReport "RAPPORTNAVN", acViewPreview, , "[TABELNAVN]![ID] = " & Me!ID & ""

idet jeg antager, at hver post har et unikt numerisk ID-felt.
Avatar billede trinerafn Nybegynder
15. november 2004 - 21:45 #13
Til Mugs, Ok, jeg tester det imorgen. Har jeg forstået det ret, at jeg først skal lave en forespørgsel baseret på "Over" og "Sub" forespørgsel, som formen er dannet efter. Derefter lave en rapport på denne nye forespørgsel, og derefter lave en Print Report kommandoknap på den aktuelle form, som har din kode i sin on-click procedure?-og Ja,ID'et er unikt og numerisk, da det jo er primær nøgle i min Projekttabel :-)
Avatar billede mugs Novice
15. november 2004 - 21:52 #14
Hvis din "overform" og "subform" kommer fra samme forespørgsel, kan du blot indsætte min kode i en kommandoknap på formularen.

Hvis formularerne kommer fra 2 forskellige forespørgsler, er du nødt til at lave en underrapport. Du finder ikonet for underrapporter på menulinien. Herefter skal du definere det felt der sammenkæde rapporterne til dit ID-felt.
Avatar billede mugs Novice
15. november 2004 - 21:55 #15
Og ja - Når du vil udskrive formularens aktuelle post, skal udskrivningskommandoen ligge i en knap på formularen idet udtrykket:

"[TABELNAVN]![ID] = " & Me!ID & ""

I pseudokode betyder:

Udskriv rapporten der hvor TABELNAVN felt ID er = FORMULARENS (Me) FELT ID
Avatar billede trinerafn Nybegynder
15. november 2004 - 22:02 #16
>Mugs, Jo formularen er dannet af 2 forespørgsler, en over og en under, men det med en underrapport har jeg aldrig prøvet før, gider du præcisere hvor det lige var jeg fandt det ikon. Jeg arbejder i '97, idet der er mange af brugerne, der anvender '97 og basen jo så sidenhen kan konverteres til '2003.
Avatar billede mugs Novice
15. november 2004 - 22:08 #17
Jeg bruger Access2000.

Her (Og jeg mener det er det samme i Access97), finder du ikonet for underrapporter i værktøjskassen. Tipteksten er "Underformular / underrapport". Tipteksten fremkommer når du langsomt lader musen glide henoder ikonerne.
Avatar billede trinerafn Nybegynder
15. november 2004 - 22:19 #18
>Mugs, ok tak, så fandt jeg da den, jeg prøver det imorgen
Avatar billede mugs Novice
15. november 2004 - 22:21 #19
Fint - Jeg har ikke mulighed for at være så meget på nettet i arbejdstiden, men jeg er sikker på, at der kommer andre der kan give dig support hvis det bliver nødvendigt.
Avatar billede trinerafn Nybegynder
16. november 2004 - 22:13 #20
>Mugs, Ja så er jeg ved at være kørende, tak for hjælpen. Det skulle dog ikke være acViewPreview, som jo giver et preview af rapporten men acViewNormal eller sådan noget lignende, som giver en udskrift, og med din kode kun af den aktuelle rapport. Rigtig godt. Nu sidder jeg og kæmper med finpudsningen af rapporten, som har en hulens masse beregnede felter, som jeg havde lavet på formen, men som jeg skal lave igen. Det virker dog indtil nu som om jeg kan klare mig uden at lave en SubReport, men ellers ved jeg jo hvordan nu. Endnu engang 1000 tak, det kan være vi tales ved, der kommer nok snart et nyt spørgsmål fra mig, idet jeg skal sikre basen mod at flere brugere kan komme til at oprette det samme Projektnr (i.e. ordrenr) samtidigt.
Avatar billede mugs Novice
16. november 2004 - 22:22 #21
Selv tak og tak for point.
Jeg udskriver normalt altid til skærm, så har brugerne en mulighed for at annullere inden de bruger en regnskov hvis det alligevel ikke var den udskrift de ønskede. Men vil du skrive til printer og ikke til skærm er det netop acViewNormal du skal bruge.

M.h.t. beregnende felter kan det være en fordel at lægge dem i forespørgslen, idet du så kan genbruge dem i andre sammenhænge. Den udskrivningskode jeg gav dig, flytter jo kriteriet fra forespørgslen ind i formularen, og du kan derfor i en anden knap sætte kriteriet på et andet af formularens felter, og dermed bruge den samme forespørgsel med beregninger til flere formål.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester