Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Drukowanie biezacego rekordu

549 views
Skip to first unread message

PrzePol

unread,
Sep 30, 1999, 3:00:00 AM9/30/99
to
Co powinienem zrobic aby po wcisnieciu przycisku we formularzu
Access drukowal mi biezacy rekord (i tylko ten) z istniejacego raportu?

moze ktos z Was podsunie mi przyklad kodu do realizacji tego tematu?

tnx

Mariusz Drogosz

unread,
Sep 30, 1999, 3:00:00 AM9/30/99
to

PrzePol napisał(a):

Witam

Zobacz na http://www.mvps.org/access/reports/rpt0002.htm to chyba jest
to. Sam dziś tego szukałem.

Mariusz

Marek Miloszewski

unread,
Oct 1, 1999, 3:00:00 AM10/1/99
to

> Co powinienem zrobic aby po wcisnieciu przycisku we formularzu
> Access drukowal mi biezacy rekord (i tylko ten) z istniejacego raportu?
Tworzysz kwerende, ktora wybiera wszystkie pola z tablicy, a warunkiem jest
ID biezacego rekordu na formularzu:
SELECT id_rekordu, pole1, pole2 (...)
FROM tablica
WHERE id_rekordu=[Forms]![nazwa_formularza]![id_rekordu]
i ta kwerenda jest zrodlem danych dla raportu. Oczywiscie, jesli sprobujesz
uruchomic ta kwerende (lub raport oparty na niej) z okna bazy danych, a
formularz bedzie zamkniety, wywali Ci okienko z prosba o podanie wartosci
[Forms]![nazwa_formularza]![id_rekordu].

Pozwodzenia
Marek
--


-------------------------------------------------------------
Zaklad Energetyczny Szczecin SA
ul. Malczewskiego 5/7, 70-952 Szczecin, Poland
tel: (48 91) 424.00.71 ext.5216, fax: (48 91) 22.56.28
marek.mi...@zes.szczecin.pl
-------------------------------------------------------------
ma...@miloszewscy.z.pl
http://www.miloszewscy.z.pl
-------------------------------------------------------------

Jonathan Kazmierczak

unread,
Oct 1, 1999, 3:00:00 AM10/1/99
to
> > Co powinienem zrobic aby po wcisnieciu przycisku we formularzu
> > Access drukowal mi biezacy rekord (i tylko ten) z istniejacego raportu?
> Tworzysz kwerende, ktora wybiera wszystkie pola z tablicy, a warunkiem jest
> ID biezacego rekordu na formularzu:
> SELECT id_rekordu, pole1, pole2 (...)
> FROM tablica
> WHERE id_rekordu=[Forms]![nazwa_formularza]![id_rekordu]
> i ta kwerenda jest zrodlem danych dla raportu. Oczywiscie, jesli sprobujesz
> uruchomic ta kwerende (lub raport oparty na niej) z okna bazy danych, a
> formularz bedzie zamkniety, wywali Ci okienko z prosba o podanie wartosci
> [Forms]![nazwa_formularza]![id_rekordu].

Po co wczytywac drugi raz te same dane ?
Optymalniej jest odwolac sie w raporcie bezosrednio do pol formularza;
tzn. w property "Wartosc domyslna" pola wpisac: Forms![Nazwa formularza]![Nazwa
pola]

Johny.


Michal Fratczak 'Ender'

unread,
Oct 1, 1999, 3:00:00 AM10/1/99
to
Użytkownik PrzePol <pp...@polbox.com> w wiadomo¶ci do grup dyskusyjnych
napisał:l0II3.44939$n4.7...@news.tpnet.pl...

> Co powinienem zrobic aby po wcisnieciu przycisku we formularzu
> Access drukowal mi biezacy rekord (i tylko ten) z istniejacego
raportu?
> moze ktos z Was podsunie mi przyklad kodu do realizacji tego tematu?

Załóżmy, że masz formularze Form1, Form2, etc.
1. Utwórz kwerendy (np. 'Form1 - strona', itd.) w których podasz
warunek dla pola z kluczem (np. IDpoz), typu '=Forms![Form1]![IDpoz]'
2. W zewnętrznym module piszesz funkcję 'Druk_rap_str()'
3. Pod przyciski na formularzach, w zdarzeniu 'OnClick' wpisujesz
'=Druk_rap_str()'
- - - - - - - - - - - - - - - - - - - -
Function Druk_rap_str()
On Error GoTo blad_DRS
Dim AktForm As Form, DocName As String
Set AktForm = Screen.ActiveForm
DocName = AktForm.Name
DoCmd.OpenReport DocName, A_NORMAL, DocName & " - strona"
koniecDRS:
Exit Function
blad_DRS:
MsgBox Err.Description, 0 + 48 + 0, "UWAGA!"
Resume koniecDRS
End Function
- - - - - - - - - - - - - - - - - - - -
Szybko, łatwo i przyjemnie - dla każdego formularza :-)
--
Ender
Gdzie diabeł nie może, tam czas na Microsoft!

Drozdu

unread,
Oct 1, 1999, 3:00:00 AM10/1/99
to

PrzePol wrote:

> Co powinienem zrobic aby po wcisnieciu przycisku we formularzu
> Access drukowal mi biezacy rekord (i tylko ten) z istniejacego raportu?

Wystarczy napisac raport, pobierajacy wszystkie dane z tabeli, a 'pod
klawiszem' uruchamiac go z warunkiem WHERE. Wtedy raport nie sypie sie, gdy
mamy potrzebe wydrukowania wszystkiego, a poza tym w WHERE mozna kombinowac

przyklad:
DoCmd.OpenReport "nazwa_raportu", acViewPreview, , "[id]=" & id_transakcji

Pozdrowionka.Marcin


0 new messages