04. juni 2003 - 09:51Der er
18 kommentarer og 1 løsning
Hvordan man i en form får generelt indtasningsfelt.
Jeg har lavet en form hvor jeg har en masse reporter liggende. Alle reporterne er lavet så der kommer to input boxe op en til den dato de vil se rapproten fra og en til den dato de skal se til. Nu kunne jeg godt tænke mig at lave det sådan at man kun skulle indtaste start og slut dato et sted, så det galdt i alle raporterne på en gang.
Jeg havde tænkt mig noget med to tekst felter en fra dato og en til data, og så skulle input paremeterne selv vide at de skulle bruge disse datoer.
Du mener at jeg kan lave to tekst felter der ligger i formen, og i hver rapport skal jeg skrive Between osv. Men hvor skal det stå i rapporten, for det skal vel ikke stå under Input Paremeters eller skal det.
Ja, jeg mener at du enten kan placere de 2 tekstbokse på formularen med alle rapport-knapperne. Eller du kan åbne en ny formular med felterne på. Men denne løsning er lidt svære at styre.
Rapporten er vel baseret på en forespørgsel? Du skriver at der kommer 2 inputbokse frem nu. Det går jeg ud fra, at du har angivet i et kriterie i forespørgslen? Det er i dette kriterie, at du skal skrive Between Forms!....
Okay, så skal du bare skrive: SELECT * FROM [Færdige Ordre] WHERE (Dato Between Forms![Navn på din formular]!Start And Forms![Navn på din formular]!Slut ORDER BY Dato DESC
Between Forms![Navn på din formular]!Start And Forms![Navn på din formular]!Slut fortæller access at den skal kigge i de 2 taktsbokse og derefter kun udvælge de datoer der ligger mellem
Hvorfor afviser du mit svar, når du reelt endnu ikke ved om mit svar er rigtigt? Hvad hvis du pludselig opdager, at du selv er kommet til at sætte et tegn forkert (det sker jo af og til). Så vent med at afvise til du har fået alle svar på bordet. Tak
Du mangler selv at svare på mit spørgsmål: HVordan ser det ud, hvis du viser det i design-visning? (bare linien med Between Forms!.....)
Desuden er parenteserne omkring hele kriteriet overflødige.
Hvis jeg fortstaar spoergsmaalet korrekt vil du have visning af adskillige rapporter som ligger mellem to datoer (start og slut) som kun skal indtastes en gang. Hvis det er tilfaeldet ville det ikke vaere nemmere at lave en sub-form/report. Paa hoveformen har du din start- og slut-dato. Naar de er indtastede kan du vel bare saette et filter paa sub-reporten hvorved rapporter mellem de to datoer vises.
Nu har jeg lavet en form der indeholder en subform. På hovedformen er der to tekst boxe som er fra og til dato. I subformen er der nogle faneblade som indeholder rapporterne.
Jeg kunne godt bruge en mere detaljeret forklaring på hvordan jeg får start og slut dato til at indvirke på rapporterne, der blev skrevet noget med et filter, men hvordan vil rapporterne kunne se disse paremetre osv.
Kort sagt en mere detaljeret beksrivelse af det sidste.
Ja ok her bliver det lidt tricky eftersom du ikke kan filtrere direkte paa en rapport, men jeg antager at du har en sub som finder alle de reports du vil have fremvist alligevel. Rapporterne bliver bygget vha en recordsource, som enten er din tabel eller en query. Det er paa tabellen eller query'en at filtret skal laegges, saa du skal foerst have fat i dine to vaerdier i "hovedformen" disse skal saa bruge i filtret. I eksemplet antager jeg at du arbejder en tabel:
Dette skal selvf. udfoeres naar subformen loades, saa du skal nok have noget i den retning enten paa onChange i dine datofelter i hovedformen eller en update knap ved siden af dato-felterne som udofoerer denne filtrering
Haaber det hjalper, men spoerg igen hvis der er problemer :-)
hov glemte lige at sige at du selvf. skal requery din subform efter at filteret er blevet aendret. Det er maaske en god ide at starte scriptet med at slaa FilterOn property fra (=false) hver gang brugeren aendrer datoer, derefter opdatere filteret og slaa det til igen.
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.