UWAGA:
Zawartość tego rozdziału jest przeznaczona dla użytkowników Systemu MaFi dobrze znających system operacyjny DOS oraz zasady tworzenia plików i manipulowania plikami.
KONSTRUKCJA FORMATEK EKRANOWYCH i DRUKÓW
Zasady gospodarowania formularzami w programach
Zasady tworzenia formularzy
; - komentarz; ten wiersz jest pomijany na ekranie i druku,
~ - wiersz z rozkazem, znakiem rozpoznawczym rozkazu jest pierwsza litera rozkazu np.: a - adres i opis adresu (opis niżej),
inny znak - tekst formularza.
W tekście formularza wyróżnia się pola z formułami po
staci:@EDnnnOPISY@
gdzie:
obszary ograniczone mogą nie występować,
@
- znacznik początku, obszaru i końca pola,E
- typ pola na ekranie, określa znaki dopuszczalne do wpisania, sposób przeliczania i wypisania pola na ekranie,D - sposób umieszczenia napisu w polu na wydruku,
nnn - numer pola lub +
oznaczający numer następny po ostatnio użytymOpisy
- inne opisy w formacie \Topis (opis niżej).
Opis szczegółowy
E
= typ pola na ekranie:n: napis
c
: liczba całkowita (maks. 18 cyfr)r: liczba rzeczywista (maks 26 cyfr)
C,R -jak c, r ale zakaz wpisania znaku “-”
s
: pola o wartości wyliczanej jako suma kolumny powyżej.w
: pole waluta (złote z groszami)v
: pole złote słownied
: data w formacie DD-MM-RRp
: parking - umożliwia zatrzymanie kursorai : iloczyn pól o numerach aktualny-1 i aktualny-2
g
: pole z formułą umieszczoną w wierszu z rozkazemf
: formuła - wartość wyrażenia jest liczona na podstawie formuły zawartej w opisie pola. w opisie formuły analizowany jest tekst postaci:\fE=formula
gdzie:
\f
-znacznik opisu formuły.E -sposób wypisania:
s
- wypisz słownie (tylko całkowite),v
- złote słowniec
- całkowite,r - rzeczywiste,
=
- znacznik początku formułyformuła - wyrażenie matematyczne, w którym pole jest reprezentowane przez napis Wnnn.
Przykłady
:@fp12\s10\fc=(w10+w11)/2@
rozpoznaje formułę (w10+w11)/2 i jeśli w polu
w10 jest napis 2,000, a w11- -3,000, to analizator przekształca formułę pola na napis (2000+(-3000))/2 i przekazuje ten tekst do obliczenia przez procedury kalkulatora. Jeśli obliczenia zakończą się błędem, to wypisywany jest ciąg “_______”.
UWAGA
: Obliczenia wykonywane są na liczbach typu “real” (zakres do 1E38, (11-12 dokładnych), ale poprawnie są wypisywane w zależności od typu pola:s
- (słownie) do bilionów,r
- 1E25, 11-12 cyfr dokładnych,c
- 9.2E18, 11-12 cyfr dokładnych.
D
= format pola na druku: (jest analizowane przez procedurę drukującą)
1. Umieszczanie napisów w polach:
d,D - (dynamiczn
a) pole na wydruku ma długość tekstu,l,L
- (lewo) dosuń do lewej strony pola,p,P
- (prawo) dosuń do prawej,c,C
- (centruj) umieszczenie napisu w środku pola,o,O
- (odetnij/uzupełnij) pole na wydruku ma szerokość pola na formularzu zbyt długie napisy sa obcinane,
Duża litera oznacza odcięcie ewentualnych zbędnych spacji od strony dosunięcia napisu przed jego dosunięciem i dopiero następnie dosunięcie do lewej lub prawej strony.
Przykłady
:Tekst w węźle 1 na ekranie:
12.345.678
Opis pola wraz z jego otoczeniem:
AAA@c?1@@@@@@@@@@@@@@@@BBB
Tekst na wydruku przy umieszczeniu zamiast ? znaku:
d AAA 12.345.678BBB
D AAA12.345.678BBB
l , o AAA 12.345.678 BBB
L, o AAA12.345.678 BBB
p, P AAA 12.345.678BBB
c, C AAA 12.345.678 BBB
Tekst w węźle 1 na ekranie:
Program Druki umieszcza tekst w polu
Opis pola:
AAA@n?1@@@@@@@@@@@@@@@@BBB
Tekst na wydruku przy umieszczeniu zamiast ? znaku:
d, D AAAProgram Druki umieszcza tekst w poluBBB
o, o AAAProgram Druki umieszBBB
2. Podział dokumentu na strony:
m
,M - nowa strona i wysunięcie następnej o margines górny (ustawiany w programie),n,N
- nowa strona, wysuń kartkę (ważne w opcji y i drukowanie na formularzu),- ciąg wysyłany do drukarki, (ważne w opcji y) np.: @nx0do drukarki@ ` drukuje: “do drukarki” - na ekranie nie ma tego napisu.x,X
3. Sposób druku:
y - drukuj tylko pola
Y
- drukuj tło i pola (domyślny )z - drukuj tło a pola wypełnij '_________'
4. Pomijanie wiersza tekstu; można pomijać wiersze w całości jeśli węzeł nie jest wypełniony:
k
,K - pomijanie linii tekstu, w opisie pola typu k musi znaleźć się opis \knnn (nnn - numer analizowanego pola).Wiersz jest pomijany jeśli pole nie zawiera żadnego znaku lub jest wypełnione znakami pustymi “____”. Pomijanie wiersza nie działa w trybie druku z (druk pustego formularza).
Przykład
:Tu można wpisać @nl10@@@@@@@@@@@@ Ten wiersz @nk0\k10@
(ten też) będzie wypisany tylko wtedy gdy @nk0\k10@
(i ten też) w polu 10 będzie wpisany jakikolwiek
znak @nk0\k10@Pominie wszystkie wiersze jeśli w polu 10 nie będzie napisu.
nnn - numer pola od 0 do 16000 lub znak +
Pola są numerowane w zakresie od 1 do 16000 i nie może być na formularzu ekr
anu dwóch pól o tych samych numerach. Na formatce druku oznacza numer pola, z którego pobierać tekst (dla D=d,D, l,L, p,P, o,O, c,C), dla pozostałych typów pól druku nieistotne i może być równe 0. Pola o numerze 0 nie są umieszczane na ekranie i mogą się występować wielokrotnie na formularzu wspólnym dla ekranu i druku. Znak + oznacza numer pola o 1 większy od ostatnio użytego numeru pola.
Pola przeliczane są w kolejności
:I. Po odczytaniu formatki przeliczane są wszystkie pola w kolejności ich numerów i są oznaczane jako
przeliczone.II. Po wpisaniu tekstu do pola:
1. Przeliczane jest pole, do którego wpisano tekst i jest ono oznaczane jako zmieniane,
2. Sprawdzane są pola z formułami w kolejności ich numerów i jeśli rozpoznano zmianę pola, do którego odwołuje się formuła obliczeniowa, przeliczane jest sprawdzane pole (dlatego w opisie formuły pola nie może wystąpić pole o numerze większym od jego numeru). Ustawiany jest znac
znik zmienione.3. Zmieniane są znaczniki wszystkich pól z
zmienione na przeliczone
Inne = inne informacje o polu w formacie:
\Topis: gdzie \ - separator
T - typ
Procedura analizująca rozpoznaje typy:
Snn
lub snn - szerokość pola, gdy jest inna od długości opisu pola (np \s15 pole ma długość 15 znaków),Enn
lub enn - sposób edycji lub wyliczania:Jeśli liczbę
nn wyrazić w systemie dwójkowym to:bit 0 wyliczane formułą / wpisywane
bit 0 = 0 - pole wyliczane przez formułę lub wstawiane przez procedurę inicj
ującą, nie można wpisywać do tego pola,= 1 - (wartość 1) można wpisywać, formuła obliczeniowa
w tych polach jest zablokowana,bit 1 - czy można zmieniać stan bita 0;
bit 1 = 0 - nie wolno zmieniać bitu 0 w wyniku naciśnięcia klaw
isza CTRL-B.= 1 - (wartośc 2) wolno zmieniać bit 0.
Np:
\E0 powoduje zakaz wpisywania do tego pola , ale pole to
może być wypełniane z bazy danych lub jeśli jest typu f, to formuła jest aktywna i nie można jej zablokować.\E2
wartość domyślna dla pól typu f i g(wartość domyślna dla pól pozostałych typów) jeśli węzeł jest typu f, to zachowuje się jak węzeł typu c lub r (można wpisywać liczby z klawiatury) ale po naciśnięciu Ctrl-B zostanie uaktywniona formuła a zablokowane wpisywanie (do powtórnego naciśnięcia Ctrl-B lub wyjścia z formatki).\E3
UWAGA
: Formuły w polach z formułami można zablokować automatyczne obliczanie pola (aby móc wpisać wartość) naciskając Ctrl-B.
- precyzja liczb rzeczywistych, liczba nn oznacza ilość miejsc po przecinku wypisywanych w liczbie rzeczywistej. Jeśli nie umieszczono w opisie pola typu rzeczywistego opisu precyzji, to przyjmuje się wypisywanie z 2 miejscami po rzecinku. Opis ten jest analizowany tylko w polach typu rzeczywiste (r) i formuła (f) z wypisywaniem liczby jako rzeczywistej (\fr=..).\rnn
PRZYKŁADY OBLICZANIA FORMUŁ:
Formuły obliczeniowe rozpoznają:
1.Operatory:
+, -, *, /, zao (zaokróglanie)
2. Funkcje:
SQR(X) - kwadrat X,
SQRT(X) - pierwiastek kwadratowy z X,
LN(X) - logarytm naturalny X,
INT(X) - część całkowita X,
EXP(X) - funkcja ekspotencjalna (e^X),
ABS(X) - wartość bezwzględna X,
SGN(X) = -1 dl
a liczb ujemnych, 1 w pozostałych przypadkachSIN(), COS(), TG(), CTG(), ARCTAN() - funkcje trygonometryczne
PI, E - liczba pi i e
3.Relacje
<, =, >, <=, >=, <>, AND, OR, NOT, XOR
przy czym wartość 0 oznacza FAŁSZ, 1 oznacza PRAWDĘ
Przykład
:1. Suma
pól 21 i 22, jeśli mniejsze od 0 wpisać 0((w21+w22)>0)*(w21+w22)
2. Różnica pól 21 i 22 zaokrąglić do 10
w21 - w22 zao 10
UWAGI RÓŻNE
1. w czasie wpisywania liczb do pól liczbowych można w celu zwiększenia prze
jrzystości wpisywać spacje, np. napis 12 000 jest uznawany za poprawny i równoważny 12000.2. Jeżeli w trakcie obliczeń pól typu
f formuła nie jest poprawnym wyrażeniem, to pole to zostanie wypełnione znakami podkreślenia “____”, a gdy procesor wykaże przekroczenie zakresu liczb znakami gwiazdki “******”,
ZMIANA POSTACI DRUKÓW
Użytkownik może w pewnym zakresie zmieniać postać druków generowanych przez programy. Szczególnie użyteczne jest to w przypadku programów generują
cych dokumenty dla klienta (FAKTUROWANIE, FAKTUROWANIE VAT, SPRZEDAŻ i DRUKI, przy czym program SPRZEDAŻ korzysta z wzorców druków programów fakturujących).
Postać druku jest określona przez wzorzec druku zapisany w odpowiedniej kart
otece w pliku o rozszerzeniu .WZR, np. wzór druku faktury VAT znajduje się w kartotece FAKTURA.DAT w pliku FAKTURA.WZR . Pliki te są utworzone zgodnie z opisanymi wcześniej zasadami tworzenia formatek druków. Użytkownik może zmieniać położenie pól na formularzu oraz dodawać w tekście stałym kody sterujące drukarki. w zależności od posiadanej drukarki można uzyskać efekty typu drukowanie kursywą nazwy firmy klienta, drukowanie nazwy własnej firmy pismem konturowym itp. Największe możliwości dają drukarki laserowe i atramentowe.
Oto przykład. Dopisanie w pliku FAKTURA.WZR przed polem @D@@@@@ ciągu kodów ESC E, a za tym polem ESC F spowoduje (dla drukarek igłowych zgodnych z Epson) drukowanie nazwy firmy sprzedawcy drukiem wytłuszczonym (kod ESC E włącza druk wytłuszcz
ony, ESC F wyłącza).Podczas dopisywania kodów sterujących drukarki należy pamiętać, że:
Możliwość modyfikowania wzorców druków pozwala także na wprowadzenie zmian w postaci druków deklaracji podatkowych. Jeżeli standardowa postać dr
uku nie pozwala wypełnić pól typowego formularza (zaznaczmy, że można spotkać np. druki PIT-5 o różnych rozmiarach!), można dodać lub usunąć wiersze ze wzorca druku oraz dokonać przesunięcia pól w lewo lub w prawo dodając lub usuwając spacje. Dla wzorców deklaracji przyjęto numerację pól zgodną z odpowiednim formularzem (PIT lub VAT).
Wzorce deklaracji są umieszczane w plikach o rozszerzeniu .FDR zapisanymi zgodnie ze standardami tworzenia formatek druków (por. wcześniejsze opisy). Występujące tu symbole ~Wnn oznaczają wysunięcie kartki o
nn milimetrów. Jeżeli dany formularz drukuje tylko zawartości pól (jak w deklaracji PIT-5), to dla wysłania do drukarki tekstu lub kodów sterujących należy umieścić je w polu o formacie @nxto-do-drukarki@.
INFORMACJE O PROGRAMIE DRUKI
W przypadku zmiany formatki dane z poprzedniej będą wpisywane do pól o tych samych numerach - może to powodować przekroczenie wartości. Podobny efekt może też wystąpić w przypadku wystąpienia błędu odczytu danych z dysku.
Konstrukcja danych programu (pliki)
Z każdym pismem są związane pliki o takiej samej nazwie a różniące się rozsz
erzeniem nazwy, pogrupowane tematycznie w podkartotekach kartoteki PISMA.DAT:nazwa.FEK - formularz ekranu,
nazwa.FDR - formularz druku, występuje wtedy, gdy formularz ekranowy różni się od formularza druku,
nazwa.DUS - ustawienie druku względem kartki, pliki te są zakładane w wyniku wywołania operacji ustawiania druku (
F7), brak pliku nie generuje błędu lecz przyjęty zostaje brak przesunięcia druku.W kartotece każdego podatnika program tworzy kartotekę
PISMA i w tej kartotece tworzy strukturę kartotek odpowiadającą strukturze w kartotece PISMA.DAT. Umieszczane są w nich pliki bazy danych dla każdego używanego formularza. Pliki te (nazwa.BAZ) mogą być kasowane (łącznie z kartotekami), jeśli dane zapisane w nich nie będą już potrzebne.
Średnio wprawny użytkownik może napisać za pomocą edytora generującego tekst w standardzie Mazovia (np. ED.EXE dołączony
do Systemu MaFi) formatki ekranu i druku. Opis konstrukcji formularzy przestawiono wcześniej. PPU Micro może przygotować formularze na specjalne zamówienie każdego licencjonowanego użytkownika Systemu MaFi.
MAKROPOLECENIA
Podczas tworzenia Systemu MaFi pr
zyjęto zasadę, że jak najwięcej operacji związanych z kopiowaniem, drukowaniem itp. wykonywanych będzie za pomocą plików makropoleceń (wsadowe, *.BAT). Można dowolnie modyfikować te pliki zmieniając np. sposób tworzenia kopii archiwalnych czy też program drukowania plików tekstowych. Pliki makropoleceń danego programu umieszczone w jego kartotece (*.DAT). Polecamy zapoznanie się z treścią makropoleceń. Są one wspólne dla wszystkich podatników. Szczególnie dotyczy to drukowania i przeglądania, które są realizowane przez wspólne dla wszystkich programów DRUK.BAT, DRUK-GRF.BAT oraz PRZEGL.BAT z kartoteki SYSTEM.DAT .
Drukowanie tekstowe (por. DRUK.BAT) jest realizowane przez program, który drukuje wskazany plik dokonując ewentualnej konwersji kodów sterujących EPSON na HP oraz konwersji kodów. Szczegółowe informacje można uzyskać uruchamiając bezp
ośrednio program. Drukowanie graficzne (por. DRUK-GRF.BAT) z obrotem strony o 90° wykonuje program WIDOK. Obsługuje on wyłącznie drukarki igłowe. Dla drukarek zgodnych z HPIIp (laserowe lub atramentowe) wykonywany jest druk tekstowy (DRUK.BAT) z dodaniem w plikach druków rozkazu set landscape na początku pliku i set portrait na końcu. Obydwa programy drukujące kończą drukowanie wysyłając do drukarki kod RESET (ESC @ dla IBM Proprinter/Epson lub ESC E dla HPIIp).
Za przeglądanie plików na ekranie odpowiada PRZEGL.BAT uruchamiający pr
ogram BROWSE.COM . Można wykorzystać inne programy przeglądające lub nawet dołączany edytor tekstu ED.EXE. Należy jednak zwrócić uwagę, jak duże pliki mogą obsługiwać takie programy - niektóre druki zestawień pomocniczych (np. OD-DO z Księgi Podatkowej) mogą w skrajnych przypadkach przekroczyć 64KB objętości.
Archiwacja plików jest przeprowadzana za pomocą makropoleceń uruchamiają
cych program LHARC. Jest to program FreeWare o dość dobrych parametrach pakowania plików. w makropoleceniach można zastosować inne programy pakujące (np. PKZIP lub ARJ). w razie zmiany programu pakującego należy pamiętać o odpowiednim ustawieniu parametrów pakowania (szczególnie pakowanie podkartotek), które są różne dla różnych programów. Np. wywołanie może mieć postać:PKZIP -p -r
pozostałe parametrylub
ARJ a -p -r
pozostałe parametrya rozpakowanie odpowiednio:
PKUNZIP -d parametry
ARJ x parametry
gdzie parametry
oznaczają pozostałe parametry umieszczone w wywołaniu LHARC. Pliki archiwizujące programu System znajdują się w podkartotece SYSTEM.DAT .
Wszystkie makropolecenia można modyfikować według własnych potrzeb. Należy jedynie pamiętać o przechowaniu standardowej treści zmienianego makropolec
enia w celu ewentualnego przywrócenia pierwotnej zawartości. Wykonywane polecenia systemu operacyjnego umieszczone w makropoleceniach nie powinny zostawiać śladów na ekranie (wyjątkiem są makropolecenia PRZEGL.BAT, które wyświetlają zawartość pliku). Stąd też (tryb DOS) polecenia umieszczane w plikach .BAT powinny przyjmować postać:@polecenie [parametry] >NUL
tzn. nie pozostawiać śladu polecenia na ekranie (@) i kierować komunikaty do urządzenia pustego (>NUL). Jednakże jeżeli chce się mieć możliwość śledzenia wykonywania poleceń, można zrezygnować z tych zasad.
UWAGA
: Po zakończeniu wykonywania makropolecenia program powinien znajdować się w tej samej kartotece, w której był przed wykonaniem makropolecenia!
Pliki makropoleceń w programach Księga Podatkowa i Ryczałt.
Oto pliki makropoleceń, z których korzystają te programy:
- obsługa kopii zapasowych plików danych:
KOPIA.BAT, Z-KOPII.BAT
- zamykanie okresów: Z-MIES.BAT - miesiąca
Z-ROKU.BAT - roku
- obsługa archiwum: DO-ARCH.BAT, Z-ARCH.BAT
- do wykorzystania w innych celach (według uznania użytkownika)
WOLNE.BAT (uruchamiany poprzez Alt-F10)
Poniżej opisano pokrótce operacje, w których programy wykorzystują pliki makropoleceń.
KP-dd-mm - kopia utworzona danego dnia poleceniem DO ARCHIWUM
(dd - dzień, mm - miesiąc pobrane z zegara systemowego komputera)KP-MC-mm - kopia utworzona poleceniem
ZAMKNIĘCIE MIESIĄCA (mm - numer miesiąca)KP-rrrr - kopia utworzona poleceniem KONIEC ROKU (rrrr to rok).
UWAGA
: ingerencje bezpośrednio w kod programu czy w zawartość plików danych mogą spowodować uszkodzenie programu i zniszczenie danych!