Temat: RAPORTY ACC 2007
Na razie się odniosę do pierwszego punktu, bo już jest późno.
Potrzebna będzie dodatkowa tabela, nazwę ją tblLicznik.
Trzeba tam umieścić jedno pole o nazwie [Numer], gdzie będą liczby od 1 do (myślę, że tyle wystarczy) 50. Tego numeru będziemy używać jako licznika ilości etykiet do wydruku.
Raport powinien być oparty na kwerendzie z dwóch tabel, np. tabela paczki/opakowania i tblLicznik.
Z pierwszej tabeli bierzemy pola, które mają być na etykiecie, koniecznie jakieś ID paczki, wysyłki itp., a z drugiej bierzemy pole [Numer].
Połączenie tych dwóch niezwiązanych ze sobą tabel spowoduje, że dla każdego ID paczki/wysyłki zostaną przyporządkowane wszystkie numery z tblLicznik.
Czyli mając 10 paczek i 50 numerów w tblLicznik, powinniśmy mieć z kwerendy 500 rekordów.
Raport etykiet powinien być filtrowany do wydruku.
Najlepiej wywoływać wydruk takich etykiet z jakiegoś formularza, gdzie będą odpowiednie pola i określona ilość etykiet do wydruku (pole tekstowe - nazwijmy je [txtIlosc]).
W tym formularzu powinien być przycisk, który wywoływałby drukowanie lub podgląd raportu etykiet. Do przycisku może być przypisany kod VBA albo makro, gdzie wywołamy akcję otwierania raportu etykiet, ale z filtrem wyników.
Filtr określimy przez odpowiedni wpis dla argumentu WhereCondition w VBA albo WHERE w makrze.
Wartość dla argumentu filtra: gdyby np. były to etykiety produktu, paczki, to potrzebne będzie przefiltrowanie na jakieś ID produktu czy paczki, dla której chcemy wydrukować etykiety, z dodatkowym warunkiem "AND" dla numeru.
Przykład:
"[IDPaczki]=" & Me.IDPaczki & " And [Numer]<=" & Me.txtIlosc
W powyższym zapisie uwaga na znaki cudzysłowu w odpowiednich miejscach.
Spowoduje to, że otrzymamy etykietę tylko konkretnej paczki w takiej ilości, w jakiej jest to zdefiniowanie w polu [txtIlosc].
Inny sposób, to skorzystanie z korespondencji seryjnej - drukowanie etykiet w Wordzie poprzez uruchomienie druku w MS Access - przy pomocy makra czy kodu VBA. Tutaj potrzebny byłby szablon etykiet z już wybranymi polami korespondencji seryjnej.
Monika M. edytował(a) ten post dnia 06.07.10 o godzinie 19:53