22. januar 2007 - 12:33Der er
13 kommentarer og 1 løsning
Kriterie ved udskrift af rapport
Hej,
Jeg har en opgave som jeg ikke kan løse:
jeg har en reklamations database med tabler som kontakt, reklamation, vare, inititialer osv.
jeg har fået lavet en hoved-formular som fungerer godt og også nogle rapporter som fungerer godt, nu vil jeg gerne kunne udskrive en rapport hvor jeg f.eks. kan se hvilke reklamationer som "peter" har og kun peter, jeg har allerede lavet rapporten men med alle medarbejderne på.
Jeg vil gerne have at man trykker på en kommandoknap inde fra hovedformularen og der kommer en liste med mejarbejderne, jeg kan så markere f.eks. Peter og rapporten bliver vist, grunden til det skal være en liste er at jeg vil lave det samme på kunder og dem er der mange af.
Private Sub btnUdskriv_Click() Dim strWhere As String
If lstElever = "" Or IsNull(lstElever) Then 'Hvis listen er Tom strWhere = "" Else 'Hvis et element er markeret på listen strWhere = "[elevId] = " & lstElever End If 'Vis udskrift 'Udskift rpt med dit rapport navn DoCmd.OpenReport "rpt", acViewPreview, , strWhere
Svarene i dit link synes jeg ikke jeg kan bruge, men med hensyn til ubundet kombinationsboks det tror jeg godt jeg kan bruge, det er jo lige som det link jeg skrev, jeg kan bare ikke finde ud af og lave det :-(
-Listen angives til at indeholde 2 kolonner, den første kolonnes bredde er 0 cm, næste kolonne skal angives til feks. 5 cm
-Anvend derefter en tabel eller forspørgsel som rækkekilde til din liste, medtage IDfeltet og navnet (idfeltet er skjult på listen, men skal bruges i kriteriet).
-Indsæt en kommandoknap på din form med listen og skriv/tilret nedenstående kode, det vigtigt at idfeltet er på rapporten, ellers virke det ikke:
jeg beklager den lange responstid, men jeg har lige ligget i sengen i en uge :-(
Jeg er ved at afprøve "anders's" forslag som jo er meget ens det jeg linkede til.
Her er hvad jeg har lavet indtil nu.
1. en tabel som hedder "Initialer" der indeholder feltet "IDfelt" som er autonummerering og et felt som hedder "Initialer" (tekstfelt) og et email felt.
2. En rapport som hedder "sælger" som henter de ønskede data uden nogen form for kriterier, den henter alle poster.
3. En ny form som hedder kontakt_s hvor jeg har oprettet en ubundet liste som bruger Tabellen "Initialer" og jeg har hentet IDfelt (skjult) og Initialer derfra.
4. oprettet en kommandoknap på form. kontakt_s med følgende kode:
Når jeg så trykker på kommandoknp. kommer den frem og spøger om "indtast parameterværdi og det er IDfelt den spørger om, taster jeg så f.eks. 10 som jeg ved er en der hedder psa (initialer) kommer den frem med hele rapporten og ikke kun psa?? hvis nu jeg markerer en anden og skriver 10 igen er rapporten blank??.
Jeg vil jo også gerne have udskriftknappen inde på min hovedform. og når jeg så aktiver den, åbner f.eks. min liste med initialer jeg marker psa og trykker OK og rapporten vises.
Det tyder på at ID feltet ikke er på din rapport, prøv evt. at tjekke det. Hvis det muligt er du velkommen til at sende db til mig som en .zip fil så vil jeg gerne kikke på den i aften,du kan sende til anj@bryggemail.dk
Okay, hvis du sætter IDfeltet på din rapport er jeg ret sikker på det vil virke, jeg har skruet nedenstående gennnemgang sammen til dig,hvis du følger den er jeg ret sikker på at det vil virke, altså:
1.Opret din rapport på basis af din postkilde feks. din tabel eller din forspørgsel, medtag alle relevante felter på din rapport incl. IDfeltet. Gem din rapport og navngiv den sælger
2. Opret en ny formular, denne formular skal ikke have nogen postkilde, navngiv formularen kontakt_s
3. I designvisning på din formular indsætter du en ubunden liste ,navngiv listen lstpersoner
4. I designvisning på din formular højreklikker du på din liste og vælger egenskaber, nu vises egenskabsarket for listen
5. På fanebladet format angiver du listen til at indeholde 2 kolonner, den første kolonne skal have bredden 0cm, den anden kolonne skal have bredden 5cm det skrives på denne måde 0cm;5cm
6. Klik på fanebladet data, under punktet rækkekilde klikker du på de 3 små ...
7. Vælg herefter rækkekilden (tabel eller forspørgsel), medtag IDfeltet, og initialer, gem og luk din formular.
8. Når du åbner formularen ser du alle de initialer som er i postkilden i din liste, du ser ikke IDfeltet da dette er skjult
9. Indsæt en kommandoknap på din formular, skriv herefter nedenstående koden under hændelse ved klik (On Click)
Du spørger også om dette "Jeg vil jo også gerne have udskriftknappen inde på min hovedform. og når jeg så aktiver den, åbner f.eks. min liste med initialer jeg marker psa og trykker OK og rapporten vises."
Dette gøres på følgende måde:
1. Indsæt en kommandoknap på din hoveform
2. På knappens ved klik hændelse skriver du nednestående kode:
DoCmd.OpenForm "kontakt_s"
Nu åbnes formularen med din liste, det kan være en god ide at sætte egenskaben Popup for listeformularen til "ja" dette gøres i desigvisning for formularen på fanbladet andre. Denne mestode sikre at din listeformular altid vises øverst altså oven på evt. andre formulare der måtte være åbne.
JUBIIIIII, jeg havde prøvet og indsætte IDfeltet inden du forslog det (jeg er jo ikke helt DUM :-)
men nu tog jeg den fra bunden af og nu lykkedes det, jeg knoklede med relationerne da jeg skulle indsætte initialerne og sælger, det er fordi jeg har "sælgerne" og "salgsbackup'erne" og på Tabelen Initialer har jeg alle samlet og så linket til en tabel der hedder "kontakt" som består af kundenavn, sælger, og salgsbackup, jeg havde så lavet en relation fra initialer til salbsbackup, den fejlede, jeg vil jo sikkert gerne på sigt kunne lave samme rapport hvor det er ligemeget om man vælger en sælger eller en SBU, lige nu kan man jo se alle på kontakt_s men den virker kun på sælgeren pga relationen.
Men nu virker det som jeg gerne vil ha' det, nu skal jeg blot have fundet en løsning på det andet. (nogen ideer :-)
Hej Ole, selv tak, og mange tak for point, glad for at du fik det til at virke. Det med relationer mellem tabellerne er noget mere komplekst, det svært at sige når jeg ikke ved mere om projeket, men en ting er helt sikkert, man kan kun lave relationer imellem ens datatyper, feks. tekst>tekst eller tal>tal
jeg vil gerne prøve at komme med nogle forslag til et hensigtsmæsigt databasedesign ifht. til tabeller og relationer, men som sagt er det svært uden at have et mere detaljeret indblik i din db.
Du er velkommen til at sende et screendump af dine nuværende relationer og tabeller, samt en mere detaljeret beskrivelse af hvd databsen egenligt skal håndtere, så vil gerne kikke på det, og komme med input. jeg er bortrejst i den kommende weekend, men er hjemme igen søndag. Min mailadresse er anj@bryggemail.dk
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.