VBA-Access vraagje

Alles over programmeren en development binnen de IT-wereld
Plaats reactie
Gebruikersavatar
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

Ik ben bezig een applicatie volledig op access te bouwen. Een helpdesk-ticketing systeem dat op ms access moet draaien.

Nu, dat werkt allemaal prima, is al ver gevorderd. Is maar kwestie van wat forms maken, querys maken, relaties leggen etc.

Maar nu zit ik beke met een probleempje:

Ik zit met een formulier dat overzicht geeft op de tickets. Daarin kan je de tickets beheren. Er is een paneel aanwezig met (open, save, refresh, next, previous, change status, en PRINT).

Die print daar zit ik beke mee blok, allez blok.. ik wil het nog meer autmatiseren :)

Die printknop staat ingesteld dat hij een rapport gaat afprinten. Dat rapport is gebasseerd op een selectiequery met parameter. Dus als je die query of dat rapport opent dan vraagt em 1parameter en dan toont hij enkel de gegevens of het rapport van die 1parameter (in mijn geval: ticket_id)

Nu, als ik op knopke print klop, dan print em, maar vraagt em dus steeds eerst die parmater. De vraag is nu, of ik die parameter popup automatisch kan laten vullen. Vb door wat te klooien in die VB code :)

Code: Selecteer alles

Private Sub print_Click()
On Error GoTo Err_print_Click

    Dim stDocName As String

    stDocName = "TicketSelection"
    DoCmd.OpenReport stDocName, acViewNormal

Exit_print_Click:
    Exit Sub

Err_print_Click:
    MsgBox Err.Description
    Resume Exit_print_Click
    
End Sub
Als ik die parmeter ingeef, print hij enkel dat ticket, dus das ideaal..doet wat hij moet doen. Print mooi rapport = ticket

Maar ik wil die popup weg zien :p Maw ik zou de ticket_id ergens te voren willen meegeven, maar kweet niet goed waar of hoe. All ideas are welcome.
I love it when a plan comes together!
Gebruikersavatar
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

Potverdikke, al 14views, maar geen posts, :cry: :cry:

Niemand geen idee of een tip die me in de goeie richting stuurt ?

Allez seg.. ik weet het is niet echt code, code.. maar tis eens iets anders :)
I love it when a plan comes together!
Gebruikersavatar
Weetgraag
Erelid
Erelid
Berichten: 2117
Lid geworden op: 15 sep 2002, 08:50
Locatie: Zelzate Belgie

Als je die Msgbox weglaat zou dat de oplossing niet zijn
of geeft hij dan ook een fout??
Normaal loopt hij dan toch over de error zonder msgbox??
Ik weet het ook allemaal vragen maar ik ben er niet zo goed in thuis meer, ga me toch weer een beetje op code moeten werpen geloof ik.

Greetz
Weetgraag :wink:
"Carpe Diem"
Gebruikersavatar
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

Code: Selecteer alles

MsgBox Err.Description
zorgt er enkel voor dat indien zich een error voordoet dat er een MsgBox getoond wordt. Dit heeft dus niks te zien met mijn parmater pop-up, die ik weg wil :p

IK vermoed dat het knoeien is in deze lijn(en):

Code: Selecteer alles

 stDocName = "TicketSelection" 
 DoCmd.OpenReport stDocName, acViewNormal 
Anyone an idea? Ook andere manier om enkel het juiste ticket van het rapport te printen zijn welkom eh.. sta open voor nieuwe ideeën.
I love it when a plan comes together!
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

Euh, iets heel omslachtig, om de indruk te wekken dat er ideeen op komen...

Ge laat als ge op de printknop duwt een schermke zien met zogezegde samenvatting of afdrukvoorbeeld wat hij zou gaan printen, ge laat hem daar ne schermafdruk van maken en ge drukt diene schermafdruk af ? :roll: :wink:
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Gebruikersavatar
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

lol PiR²,

hetgeen gij zegt dat is totaal niet van toepassing.. is zelf niet doenbaar.

Het zit zo: in een access-formuleer beheer ik de ticket. Daarin zit een printknop (self-built) en die printknop zal een formulier printen dat op basis van de tabel 'tickets' wordt gegenereerd. Uit deze tabel wordt ook het formulier opgemaakt.

Nu, bij het printen heb ik niet alle tickets nodig, maar enkel de ticket waar ik op sta. Maw een selectiequery met een parameter. Als je nu dus probeert afte drukken vraagt hij u dus gewoon om die parameter == ticket nummer.

Nu is de vraag gewoon die parameter al mee te geven in de vba-code. Zodat die popup niet meer komt en toch slechts 1, doch de juiste ticket wordt geprint.

Dus qua ergonomie druk ik liever dan de ticket nummer in, dan jouw methode te proberen toepassen ;-)
I love it when a plan comes together!
Gebruikersavatar
meon
Administrator
Administrator
Berichten: 16757
Lid geworden op: 18 feb 2003, 22:02
Twitter: meon
Locatie: Bree
Uitgedeelde bedankjes: 582 keer
Bedankt: 780 keer
Provider

The Oddity schreef:en die printknop zal een formulier printen dat op basis van de tabel 'tickets' wordt gegenereerd. Uit deze tabel wordt ook het formulier opgemaakt.
Ik neem aan dat ge een report bedoelt en niet een formulier?
Gebruikersavatar
Pi R²
Elite Poster
Elite Poster
Berichten: 811
Lid geworden op: 03 jan 2003, 17:15
Locatie: Sint-Niklaas
Contacteer:

Kunt ge dat report ofzo wat dat ook mag zijn niet naar een php-fileke laten verwijzen (zoals nukem zijn skytool vroeger nog via een php-bestandje ging) en daar gewoon met een javascriptje print ofwat het ook mag zijn laten afdrukken?

(ik snap eigenlijk niet wat ge wilt maken, maar ja :roll: )
Lang Leve Mijn Eigen! Het geheim voor een lang leven: niet stoppen met ademen
Gebruikersavatar
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

Ja sorry foutje.. tis een rapport dat afgedrukt wordt. Beetje verstrooid geweest.

Wat ik wil maken: een helpdesk ticket systeem, die gebouwd wordt onder en runtime-access versie. maw alle mogelijke functies van access benutten om daar een volwaardige dbase applicatie op te draaien.

Nu, klant is koning en klant wil in eerste instantie access :) Dus krijgt em access :). Tweede stap is een online php/mysql submission systeem voor klanten. Die twee systemen moeten in samenwerking komen via dagelijkse synchronisatie.

Het is perfect mogelijk hetgeen ik hier aant doen ben in access in asp/mysql, php/mysql, ... te doen. Er bestaan hier reeds veel gratis systemen van op het net enzo.. maar ik doe het deze keer zelf zowel voor mijn eigen als voor de klant :)

Denk dat ik trouwens een oplossing gevonden heb:

Code: Selecteer alles

DoCmd.OpenReport stDocName, acViewNormal
Hetz zou mogelijk zijn bij die OpenReport een 'WHERE' conditition in te stellen.. dat maakt mijn parameter overbodig.. dus ik ga dat deze weekend wel eens uitzoeken. Zal laten weten als ik et zelf vind :)
I love it when a plan comes together!
Gebruikersavatar
SIR
Pro Member
Pro Member
Berichten: 321
Lid geworden op: 27 nov 2003, 14:47
Locatie: Borsbeek, A'pen

Ik denk dat de WhereCondition de goede weg is.

Als je je SQL-statement goed formuleert (let wel op de 256 character beperking) zal de OpenReport methode de parameter uit het statement halen en de popup overbodig zijn.

Voor meer info over printen van reports met de OpenRecord methode :
http://msdn.microsoft.com/library/defau ... S5A192.asp
en
http://msdn.microsoft.com/library/defau ... S5A191.asp

Ik hoop dat het lukt.
Squirtle
Plus Member
Plus Member
Berichten: 166
Lid geworden op: 22 jan 2004, 08:27

Je kan bvb je query string eerst zelf samenstellen met vba code en die dan aan je rapport plakken, of je kan in de query ook naar form controls verwijzen.
Als je rapport aan een query object gelinked is kan je dit ook laten overschrijven met de query die je wil printen, op die wijze hoef je niets van code in je report te steken.
Lukse
Premium Member
Premium Member
Berichten: 662
Lid geworden op: 28 okt 2003, 20:51

Zeg mannen, ik denk dat ie het ondertussen wel gevonden heeft ze.
Da is al meer as een half jaar geleden... :wink:
Gebruikersavatar
The Oddity
Elite Poster
Elite Poster
Berichten: 5008
Lid geworden op: 15 sep 2002, 17:58
Locatie: Belgium, Ghent
Contacteer:

lol,

Lukske heeft gelijk.. dat programmaatje draait idd al lang en is al ferm improved ;-). Was idd gewoon Where condition gebruiken, was gewoon bij de help beetje onduidelijk en zal er wel paar keer overgekeken hebben om het just te doen werken :p.

Ge geraakt altijd wel eens vast als ge nen ganse weekend werkt aan iets dat snel af moet :).
I love it when a plan comes together!
Squirtle
Plus Member
Plus Member
Berichten: 166
Lid geworden op: 22 jan 2004, 08:27

hehe,
in't vervolg beter eerst naar de datum van den 1e post kijken ;)
Gebruikersavatar
SIR
Pro Member
Pro Member
Berichten: 321
Lid geworden op: 27 nov 2003, 14:47
Locatie: Borsbeek, A'pen

Oeps, mijn fout.
Plaats reactie

Terug naar “Development”