Discussion:
Kwerenda aktualizująca - problem / niezgodność typu danych?
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
hiolka
2010-12-01 12:19:07 UTC
Permalink
Witam,

mam b. aktualny i niestety palący problem związany z nowymi stawkami VAT.

Rzecz wygląda następująco: mam ogólną tabelę zawierająca kompleksowe dane o
produktach ("Produkty"). W niej znajdują się dwa pola "VAT_stary"
i "VAT_nowy", które pobierają stawki (przez kreatora odnośników) z dwóch
pomniejszych tabel. Właściwości tych pól to pojedyncza precyzja, format %, 0
miejsc po przecinku.

Teraz stoję przed koniecznością aktualizacji stawek VAT ponad 200 produktów
(w tabeli "Produkty" / pole "VAT_nowy"). W tym celu zaciągnęłam z Excela do
Accessa dodatkową tabelę ("kody_nowe") zawierającą nową stawkę VAT,
połączoną z tabelą "Produkty" kodem EAN produktu. W tej tabeli posiłkowej
pole za stawką VAT ma ten sam format co pozostałe (tzn. pojedyncza precyzja,
%, 0 miejsc po przecinku).

Teraz sedno problemu: kwerenda aktualizująca. Stworzyłam najpierw kw.
wybierającą ze starą stawką VAT (z tab. "Produkty", wyświetlają się jako np.
22%) i nową (z tab. "kody_nowe"). Wszystko gra, zamieniam kwerendę na
aktualizującą (UPDATE kodysuche_VAT INNER JOIN tbl_Produkty ON
kody_nowe.EANsztuka = tbl_Produkty.EANsztuka SET tbl_Produkty.VAT_nowy =
[kody_nowe]![VATsuche];). Standardowy komunikat: "masz zamiar zaktualizowac
x wierszy", potwierdzam i Access zwraca mi w wyniku kolumnę wypełnioną nowy
stawkami VAT sformatowanymi jako 0,08, 0,23.
Przechodzę do tabeli-matki ("Produkty"), a tam w rzeczonej kolumnie
("VAT_nowy") echo - zero danych :-/.

Pomóżcie, co jest nie tak? Mam niewłaściwy format danych w tabelach? Co
powinnam zmienić, żeby aktualizacja była efektywna? Liczę na Wasze
wskazówki. Z góry dziękuję & pozdrawiam!
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Piotr S.
2010-12-01 18:59:43 UTC
Permalink
Nigdy nie używałem wynalazków typu "kreator odnośników" bo moim
zdaniem w niczym nie pomagają. Generalnie tabele są do przechowywania
danych a nie do ich prezentacji (od tego są raporty, formularze i
ewentualnie kwerendy. Jeśli chodzi o procenty to IMO dobrym zwyczajem
jest przechowywanie w tabeli wartości liczbowej natomiast formatowanie
pola zostawiamy na samym końcu w raporcie / formularzu / kwerendzie.
Czyli w tabeli możesz mieć typ danych liczba, rozmiar pola: pojedyncza
lub podwójna precyzja, format stałoprzecinkowy, miejsca dziesiętne: 2.
Dla 22% wstaw wartość 0,22. Teraz jeśli utworzysz
raport /formularz/ kwerendę ze źródłem danych na tej tabeli i format
pola tutaj ustawisz na procentowy to otrzymasz swoje 22%.

Zaleta wg mnie jest taka, że pola tabeli z wartościami liczbowymi
będziesz mogła w dowolnej chwili używać do różnorakich przeliczeń a
wynik będzie bardziej czytelny.
No i nie będzie problemów z takimi operacjami jak aktualizacja samych
wartości w tabeli za pomocą kwerend.
hiolka
2010-12-01 21:41:33 UTC
Permalink
Dzięki za odzew, znalazłam w międzyczasie rozwiazanie problemu - należało
zaktualizować pola w tabeli nie wartosciami (stawkami VAT), ale numerami ich
kluczy (bo w ten sposób są ze sobą sprzężone tabela-matka i pomocnicze tabele
VAT-owe).

Przy okazji dzięki za podpowiedź odnośnie formatu liczbowego. To rozwiązuje mój
problem z "ogonem" wielu miejsc po przecinku takiej wartości w kwerendach,
który jest generowany przez połaczenie "pojedyncza precyzja/format procentowy".

Dzięki & pozdrawiam
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Loading...