Podczas wypełniania dokumentu sprzedaży program oblicza końcowa cenę sprzedaży na podstawie danych dotyczących cen, upustów oraz warunków sprzedaży zapisanych w kartotekach towarów i kontrahentów. Cena ta obliczana jest w trzech etapach:
W pierwszym etapie na podstawie danych zawartych w kartotece kontrahentów i kartotece towarów wybierane są odpowiednie wartości ceny i rabatu, umieszcza je w kolumnach Cennik i Rabat po czym oblicza na podstawie tych wartości cenę końcową (kolumna Cena... ) według wzoru:
cena = cennik * (100 - rabat) / 100
W drugim etapie program poszukuje indywidualnych cen i upustów. Wyszukiwanie jest prowadzone w następującej kolejności:
1.Ceny/upusty dla konkretnego kontrahenta na konkretny towar.
2.Ceny/upusty dla konkretnego kontrahenta na konkretny rodzaj towaru.
3.Ceny/upusty dla konkretnego rodzaju kontrahenta na konkretny towar.
4.Ceny/upusty dla konkretnego rodzaju kontrahenta na konkretny rodzaj towaru.
Do dalszych obliczeń wykorzystywana jest pierwsza znaleziona wartość. Jeśli jest to wartość upustu, program umieszcza ją w kolumnie Rabat; jeśli jest to cena – w kolumnie Cennik (przy cenniku w pozycji towarowej wyświetlany jest wówczas symbol ), po czym przelicza cenę końcową według wzoru podanego w punkcie 1.
W trzecim etapie program poszukuje upustów ilościowych. Wyszukiwanie jest prowadzone w następującej kolejności:
1.Upusty dla konkretnego towaru.
2.Upusty dla rodzaju towarów.
Do dalszych obliczeń wykorzystywana jest pierwsza znaleziona wartość. Jeśli jest to wartość procentowa, program dodaje ją do wartości w kolumnie Rabat, po czym przelicza cenę końcową według wzoru podanego w punkcie 1; jeśli jest to wartość kwotowa – program odejmuje ją od wartości w kolumnie Cena.