Odpowiedzi na najczęściej zadawane pytania... i na te zadawane rzadziej,
ale również istotne.
- Co zrobić z tym pobranym plikiem?
- Gdzie jest jakiś manual, lub instrukcja?
- Zainstalowałem - ale nie umiem tego uruchomić.
Po instalacji przechodzę na swoje konto, uruchamiam program - a tu wyskakuje
mi jakieś okienko z informacją, żebym dokonał "ustawień globalnych"(?),
zaraz potem mam na ekranie maskę ustawień, gdzie je wpisuję - ale po
ponownym uruchomieniu mam to samo.
- Problem przy instalacji - brak(?) pliku bibliotecznego
(np. libpq.so.3)
- Co z pakietami dla dystrybucji Slackware?
- Instalacja OK - ale przy próbie uruchomienia program
zgłasza brak biblioteki libpq.so.3
- Skąd taka niecodzienna nazwa?
- Znaki semigraficzne (w zasadzie chodzi o ramki)
zastąpione jakimiś "farfoclami"
- Czy program umożliwi mi zdalną pracę na centralnym
serwerze z dowolnego miejsca na świecie?
- Czy Smabi obsługuje pełną księgowość?
- Czy program posiada filtry importu / exportu do programu XYZ ?
- Czy Smabi obsługuje drukarkę fiskalną?
- Wykorzystanie czytników kodów kreskowych
- Czy program będzie przenoszony pod DOS / Windows?
- Czy przewidujecie uwzględnienie w następnej wersji możliwości
XYZ?
- Jakie nowe możliwości będzie miała następna wersja programu?
- Czy cena tej (hipotetycznej) nowej wersji będzie taka sama?
- Straciłem (zgubiłem, skradziono mi, zniszczył mi się - niepotrzebne skreślić)
oryginalny kompakt z programem. Czy moglibyście "odtworzyć" mi
go za jakąś wyraźnie niższą opłatą (np. 10%)?
- Ile instalacji mogę wykonać z zakupionego CD?
- Proszę o dostarczenie programu razem ze "źródłami" do kompilacji
- Posiadam drukarkę firmy ABC, model XYZ. Czy Smabi obsługuje taką drukarkę?
- Mam problemy z drukowaniem
- Mam drukarkę działającą w trybie znakowym, ale na wydruku
pojawiają się "schodki". Co robić?
- Czy w trakcie wystawiania faktury towar mogę wybrać z rozwijanego menu
jedynie po nazwie? A czy można byłoby według symbolu?
- Problem z instalacją Smabi-ego pod Fedora Core 1 (libpq.so.3)
- Program nie daje mi możliwości wpisania numeru PKWiU! Co robić?
- Pewne operacje (choćby przy instalacji) muszę wykonać jako użytkownik
postgres - a tymczasem nie da się w systemie tak
zalogować... :(
- Nie mogę uruchomić programu! Smabi melduje błąd I/O error 101 in _ERRCALLER (186) file open error...
Rety, co się dzieje?! :-O
- Nie mogę jakoś uruchomić serwera PostgreSQL :( - używam dystrybucji Mandrake...
- Problemy z niektórymi klawiszami przy korzystaniu ze Smabiego "zdalnie",
za pośrednictwem putty
- Chciałbym móc przygotować faktury "na później". Czy dałoby się wbudować
możliwość wystawiania faktur z datą późniejszą?
- Jak wyglądają faktury i rachunki przygotowane przez program?
- Czy można zmienić wygląd drukowanych faktur/rachunków?
- Rozporządzenie Ministra Finansów "w sprawie sposobu i warunków
wystawiania oraz przesyłania faktur w formie elektronicznej" mówi o tym, że
e-faktury mają być zabezpieczane "podpisem elektronicznym" - a
program tego nie uwzględnia!
- W trakcie próby uruchomienia programu otrzymuję błąd symbol lookup error: ./smabi: undefined symbol: ESCDELAY
(lub podobny). Co robić? :(
- Czy istnieje 64-bitowa wersja programu?
- Pobrałem od Was demo, jest to plik z jakimś dziwnym
rozszerzeniem (rpm czy tak jakoś...), i nie chce się uruchomić. Jak się
korzysta z tego programu? Jestem początkującym użytkownikiem Linuksa, dlatego
proszę o pomoc
Wszystkim początkującym użytkownikom Linuksa wyjaśniamy, że pliki
z rozszerzeniem rpm lub deb to w rzeczywistości archiwa plików.
Aby zainstalować nasz program należy:
- Zalogować się jako użytkownik `root'
- Przejść do tego katalogu, w którym znajduje się pobrany od nas plik
- Jeśli pobrano archiwum rpm - wstukać polecenie:
rpm -i nazwa_tego_pobranego_pliku.rpm
- Jeśli pobrano archiwum deb - wstukać polecenie:
dpkg -i nazwa_tego_pobranego_pliku.deb
- No dobrze, udało mi się zainstalować program,
ale co dalej? Czy moglibyście przesłać jakąś instrukcję? Proszę zrozumieć:
jestem początkującym użytkownikiem Linuksa.
Instrukcja jest już w programie załączona. Zaraz po instalacji programu
w powyżej opisany sposób, instrukcja - do poczytania, lub do wydrukowania
(zalecamy) - znajduje się w katalogu /usr/share/doc/smabi.
Jest w pliku o nazwie instrukcja.txt - zalecamy uważną lekturę.
W ogóle radzimy zwrócić uwagę, że cały katalog /usr/share/doc jest
zbiorem rozmaitych instrukcji obsługi prawie wszystkiego, co w danej
chwili jest zainstalowane na dysku. Prosimy zrozumieć: rozumiemy trudności
początkujących użytkowników Linuksa, ale nie damy rady każdemu chętnemu
zafundować bezpłatnego telefonicznego kursu "Linux dla początkujących".
Zalecamy lekturę zawartości /usr/share/doc/howto oraz częste wizyty
w serwisie www.jtz.org.pl
- Mam problem z uruchomieniem. Co zrobić, żeby
móc pracować z programem?
Najpraktyczniej byłoby - w przypadku niepewności, co też się takiego dzieje
- sięgnąć do instrukcji (która przecież zaraz po instalacji programu jest
osiągalna w katalogu /usr/share/doc/smabi), a w szczególności do jej
rozdziałów: Instalacja,
Podstawowe zasady korzystania z programu,
oraz Opcje / Ustawienia -
choć w sumie zaleca się lekturę całości instrukcji. W znakomitej
większości wypadków zgłaszane "problemy z korzystaniem" wynikły z niechęci
użytkowników do zapoznania się z nią.
Skoro już jednak omawiamy ten temat - odnieśmy się do wspomnianego
przypadku:
Otóż, gdyby użytkownik zajrzał choćby do w/w rozdziałów instrukcji,
wiedziałby, że ten szablon, który pojawił się na ekranie, jest maską
edycyjną ustawień lokalnych (czyli specyficznych dla danego
użytkownika; dla użytkownika konkretnego konta - a nie dla całego systemu
i ogółu operatorów korzystających z programu), bowiem ustawienia globalne
mogą być zmieniane jedynie przy uruchomieniu programu po uprzednim
zalogowaniu się na koncie postgres. Dlaczego? Otóż, Smabi nie
przechowuje danych w plikach (np. w dbf-ach...), a w bazie założonej
na serwerze PostgreSQL. Serwer ten nie jest "podległy" w swojej
funkcjonalności programowi, a jest dla niego raczej "równorzędnym
partnerem". Z tego też względu konieczne jest dokonywanie pewnego minimum
czynności administracyjnych.
Szablon, który pojawił się na ekranie, dotyczy "ustawień lokalnych" z dwóch
powodów:
- bo program nie został uruchomiony z konta "postgres" - ale
istotniejsze jest, że:
- bo użytkownik mógł omyłkowo wpisać błędną nazwę bazy, serwera, port - co
w ogóle czyniłoby nonsensownymi próby dokonywania ustawień
globalnych - dotyczy to także (a może przede wszystkim) użytkownika
"postgres". Dlatego przy tego rodzaju niejasności program daje możliwość
podania właściwych parametrów.
Wiemy już zatem, że bezpośrednio po instalacji programu z pobranego pakietu
należy przelogować się "z root-a na postgresa" (np. poleceniem su
postgres), uruchomić program, i przede wszystkim dodać
użytkownika bazy danych. Chodzi o to, aby - korzystając z menu
"Ustawień globalnych" -
dopisać, jako rzeczonego użytkownika, nazwę tego konta, na którym zwykle
logujemy się pracując, i z którego będziemy korzystać z programu. Uwaga:
w drugim polu okienka, które pojawi się po wydaniu polecenia "Dodaj
użytkownika", nie należy wpisywać hasła "systemowego" (jeśli nie wiadomo w
tej chwili, o czym mowa - pomińmy to pole...) - bo nie o to hasło tam chodzi
(szczegóły w instrukcji)!
Oczywistą sprawą jest, że skoro już korzysta się z modułu "Ustawień globalnych",
należy od razu wpisać dane wystawcy faktur/rachunków (po prostu dane firmy -
użytkownika programu).
Użytkownikom początkującym zwracamy uwagę, że konta o nazwie "postgres" nie
trzeba specjalnie zakładać w systemie; ponieważ mamy zainstalowany serwer
PostgreSQL (a skoro dało się zainstalować program - to pewnie mamy... ;),
to takie konto w systemie już jest. Być może nie jest znane hasło do niego;
to też nie jest problem - będąc zalogowanym jako root wydajmy polecenie
passwd postgres, i nadajmy temu kontu nowe hasło.
Program w trakcie instalacji z pobranych pakietów zakłada dwie bazy danych
(roboczą i "ćwiczebną"), o domyślnie ustalonych nazwach "smabi"
i "smabitest" (Dawes zakłada te bazy pod nazwami: "sales"
i "salestest"). W przypadku jakichkolwiek wątpliwości co do ich obecności
na serwerze, możemy łatwo to zweryfikować wydaniem polecenia psql -l.
Jeśli, pośród innych, w/w nazwy nie pojawią się na ekranie, należy:
- Upewnić się, że mamy zainstalowany (i uruchomiony w danej chwili)
serwer PostgreSQL
- Zalogować się jako postgres
- W wierszu poleceń terminala wpisać: smabi /tabele
...i powrócić do początku niniejszej odpowiedzi, aby powtórzyć jej lekturę.
- Problemy przy instalacji - instalator zgłasza brak
biblioteki libpq.so.3 (albo jakiejś innej).
Czy Smabi nie będzie działać z moją dystrybucją Linuksa?
Być może te biblioteki znajdują się na harddysku, ale to jeszcze wcale nie znaczy,
że są poprawnie zainstalowane. Nagminnym błędem jest pominięcie "końcowego
akordu" przy instalacji bibliotek, to jest pominięcie wywołania ldconfig.
Jeśli faktycznie występuje taki objaw, jak w pytaniu powyżej, wpisanie
(oczywiście, po zalogowaniu jako root) takiego "zaklęcia" załatwia
sprawę.
Jeśli jednak, mimo ich obecności problem się powtarza, może to znaczyć, że
system (a konkretnie mówiąc - rpm), odnotował obecność tych plików w bazie
pakietów zainstalowanych pod nieco innymi nazwami, lub nie wpisał ich tam
w ogóle (jeśli np. były instalowane poprzez kompilację ze "źródeł",
a nie z archiwów rpm). Jeśli mamy pewność co do obecności i prawidłowości
instalacji tych plików, które ciągle są wskazywane jako brakujące, możemy
wymusić instalację bez sprawdzania zależności poprzez:
rpm -i --nodeps nazwa_pliku_ze_smabim.rpm
- Używam Slackware'a, a Wy udostępniacie program
tylko w archiwach rpm i deb. Jak mam to zainstalować?
Skorzystać z narzędzia rpm2tgz - przecież chyba każda kolejna
dystrybucja Slackware go zawiera
- Program dał się zainstalować z pakietu rpm, ale przy
próbie uruchomienia zgłasza brak biblioteki libpq.so.3. Sprawdziłem,
że w katalogu /usr/lib mam plik o podobnej nazwie, ale z innym "numerkiem"
(np. libpq.so.4.0). Co robić?
Po pierwsze: nie panikować. Po drugie: zalogować się jako root. Po
trzecie: przejść do katalogu zawierającego pliki biblioteczne i "dosztukować"
link symboliczny o oczekiwanej przez program nazwie. A więc, odnosząc się do
przykładu podanego powyżej:
cd /usr/lib
ln -s libpq.so.4.0 libpq.so.3
- Skąd taka niecodzienna nazwa?
Po prostu od określenia docelowego odbiorcy - czyli drobnego i średniego
przedsiębiorcy (SMAll BusIness).
- Znaki semigraficzne (w zasadzie chodzi o ramki)
zastąpione jakimiś "farfoclami", np. w przypadku uruchomienia Smabiego pod
MDK 9.2.
- Przed uruchomieniem programu wyeksportować "ręcznie" zmienną TERMINFO
wpisaniem polecenia export TERMINFO=/usr/share/terminfo (a najlepiej
wpisać to na stałe do ~/.bashrc)
- Jeśli jeszcze nie pomogło - to w katalogu /usr/share/terminfo
"dowiązać" link symboliczny FSchrmap.def do pliku FSchrmap.mdk
(skasować FSchrmap.def i wpisać - jako root - polecenie
ln -s FSchrmap.mdk FSchrmap.def)
- Gdyby dalej był problem: zapoznać się z instrukcją ("Tips and tricks" na
jej ostatnich stronach)
- Czy program umożliwi mi zdalną pracę na centralnym
serwerze z dowolnego miejsca na świecie?
Tak, dzięki możliwości podania adresu IP serwera baz danych i ustawienia
dostępu do niego na hasło, można np. wystawić fakturę klientowi będąc u niego,
poza siedzibą własnej firmy. Można w taki sposób scentralizować obsługę stanowisk
sprzedaży w firmie wielooddziałowej.
- Czy Smabi obsługuje pełną księgowość?
Nie, zgodnie z charakterystyką programu, Smabi jest programem obsługi
handlowo-magazynowej - co prawda, z szeregiem możliwości powodujących,
iż znakomicie sprawdza się w praktyce działalności typowo usługowej. Można
jednak wyeksportować z niego dane do programów księgowych
firmy CDN, oraz do Rachmistrza 5
f-my InsERT.
- Czy Smabi posiada filtry importu / exportu do programu XYZ ?
Tak, jak wyżej zaznaczono - do oprogramowania księgowego CDN-u.
- Czy Smabi obsługuje drukarkę fiskalną?
Korzysta z najpopularniejszych na krajowym rynku drukarek Posnet "Thermal",
Elzab "Omega" (lub Elzab FP-600), Emar "Duo Pro" (AKA "Torell
Duo Pro), Optimus (użytkownicy programu stwiedzili bezproblemową
współpracę np. z modelem Optimus "Vivo"), oraz Innova "Profit".
- Czy Smabi obsługuje czytniki kodów kreskowych?
Tak - te, które są podłączane przez port klawiatury.
- Czy program będzie przenoszony pod DOS / Windows?
Wprawdzie takich planów nie ma, i zapewne wersja dla wspomnianych systemów
chyba nie ujrzy światła dziennego, jednakże użytkownicy DOS / Windows również mogą korzystać z możliwości Smabi-ego
- Czy przewidujecie uwzględnienie w następnej wersji możliwości
XYZ?
Nie udzielamy takich informacji, prosimy program oceniać przez pryzmat
możliwości jego wersji bieżącej - po to właśnie udostępniamy wersję
demonstracyjną. Jeśli program komuś się podoba - miło nam, jeśli
nie - trudno. Wszelako można zasygnalizować nam ew. potrzebę dodania takiej
czy innej możliwości. A jeśli sygnały jej dotyczące będą się powtarzać -
niewykluczone, że uwzględnimy.
- Jakie nowe możliwości będzie miała następna wersja programu?
J.w.
- Czy cena tej (prawdopodobnej) nowej wersji będzie taka sama?
Nie obiecujemy - może być utrzymana, ale i może być, ze względu na nakład
pracy i powiększone możliwości programu, nieco wyższa. Ale nie musi - jednak
okaże się to dopiero tuż przed jej wypuszczeniem na rynek.
- Straciłem (zgubiłem, skradziono mi, zniszczył mi się - niepotrzebne
skreślić) oryginalny kompakt z programem. Czy moglibyście "odtworzyć" mi go
za jakąś wyraźnie niższą opłatą (np. 10%)?
Niestety, w przypadku utraty własnej kopii programu pozostaje po prostu...
kupić następną - i nie przewidujemy tu żadnych rabatów z takiej "okazji".
Dlaczego? Otóż:
- Cena programu nie obejmuje tego rodzaju usługi.
- Nie mamy możliwości weryfikacji prawdziwości tego rodzaju deklaracji,
a nawet, gdyby jakimś cudem taka możliwość była - przepraszamy, nie damy
rady angażować czasu w jakiekolwiek "dochodzenia" tego typu.
- Zwracamy uwagę, że nie sama faktura za zakup programu, ale właśnie przede
wszystkim oryginalny, przygotowany przez nas CD zawierający program jest
licencją na korzystanie z niego. Choćby i dlatego, że nabywca mógł program
kupić dla kogoś (samemu nie będąc końcowym użytkownikiem) - dlatego zasadniczym
miarodajnym kryterium, świadczącym o legalności użytkowania programu,
jest posiadanie oryginalnego nośnika, program zawierającego.
- Wszelkie oczekiwania co do naszej materialnej odpowiedzialności za szkody
poniesione przez nabywcę programu np. w wypadku kradzieży nośnika, to jakieś
- delikatnie mówiąc - nieporozumienie. Na ewentualność wystąpienia tego typu
problemu najlepiej odpowiednio wcześniej zawrzeć umowę z którąś z firm
ubezpieczeniowych.
- Ile instalacji mogę wykonać z zakupionego CD?
Jedną. Otrzymany od nas dysk CD jest licencją, uprawniającą użytkownika programu
do dokonania pojedyńczej instalacji na jednym stanowisku pracy. Po dokonaniu
takiej instalacji płytka "wędruje na półkę", i może służyć tylko do ew.
reinstalacji, np. w razie awarii sprzętu. W przypadku konieczności
dokonania kolejnej instalacji programu, należy dokonać zakupu kolejnej
płytki. Oczywiście, przed instalacją.
- Proszę o dostarczenie programu razem ze "źródłami" do kompilacji
Nie ma takiej możliwości. Program jest rozprowadzany wyłącznie w postaci
pakietów .rpm oraz .deb zawierających binaria.
- Czy Smabi obsługuje taką-to-a-taką drukarkę?
Proszę Państwa: nasz program działa przecież pod Linuksem - a nie pod DOS-em.
Smabi nie obsługuje w ogóle żadnej drukarki (wyjątkiem są drukarki
fiskalne, w których obsługę w samej rzeczy program jest bardziej bezpośrednio
zaangażowany). Obsługą drukarki zajmuje się tzw. "demon wydruku" (składnik
systemu) - aby upewnić się, że nie będzie z nią kłopotów, należy po pierwsze
sprawdzić w linuxprinting.org, czy
demon wydruku, z którego korzystamy, współpracuje z taką drukarką, a po
drugie, aby mieć pewność, że nie będzie kłopotu z wydrukami w znakowym trybie
pracy drukarki (a w szczególności z uzyskaniem na wydrukach generowanych przez
Smabiego polskich znaków diakrytycznych), należy sprawdzić, czy omawiana
drukarka spełnia warunki, jasno wyłożone w dziale
"Drukarki" instrukcji obsługi.
- Mam problemy z drukowaniem - wpisałem, jako polecenie wydruku, po
prostu lpr. Nadmieniam, że gdy z shell-a wpisuje lpr
jakaś_nazwa_pliku drukarka wyrzuca poprawnie zawartość tego pliku.
Natomiast Smabi nic mi nie drukuje.
Zapewne ustawiony jest jakiś filtr wydruku, którego działanie może być
takie, może być siakie - albo nawet owakie. A kto to wie "na niewidziane"?
"Co dystrybucja - to wynalazek", ale np. Debian Woody (a ściślej mówiąc
- prawidłowo skonfigurowany filtr "tradycyjnego" demona lpr, tamże
zainstalowanego) sam potrafi rozpoznać, czy idą dane "znakowe", czy "strumień
grafiki".
Prawdopodobną przyczyną jest ustawienie wyłącznie graficznego trybu wydruku.
Należy w takim razie dodać tzw. kolejkę "raw" - do druku znakowego - i wpisać
w menu "Opcji lokalnych" Smabiego taki rozkaz, jaki niezbędny będzie do
skierowania danych do tej właśnie kolejki.
I jeszcze jedno: na wszelki wypadek można ustawić na "Tak" opcję "Wysunąć
kartkę?" (jeśli akurat była ustawiona na "nie"). Gdyby drukarka niepotrzebnie
"wypluwała" dodatkową, pustą stronę z końcem wydruku - zawsze można cofnąć.
Wszelako jeśli demon wydruku nie dokłada "od siebie" znaku "Form-Feed" na
koniec drukowania - drukarka (dotyczy to atramentowych czy laserowych komp.
z H-P) faktycznie może robić wrażenie, jakby nie chciała drukować, niby-to
na coś czekając.
- W trakcie wydruku w trybie znakowym pojawiają się
"schodki" - tzn. po wydrukowaniu jakiegoś wiersza, drukarka nie "wraca" do
początku następnego wiersza, tylko drukuje wprawdzie w wierszu niżej, ale
w odległości (licząc od lewego marginesu) równej ilości znaków w wierszu
dopiero-co wydrukowanym. Jak to usunąć?
Chodzi o znany staircase effect, występujący wtedy, gdy drukarka nie
reaguje na odebranie znaku przejścia do następnego wiersza LF
jednoczesnym "powrotem karetki". Najczęściej program konfiguracyjny drukarki
(albo któryś z jej DIP-switch-y, jeśli drukarka tak jest ustawiana),
odpowiada za włączenie funkcji określanej przeważnie jako: LF->CR+LF.
Jeśli jednak drukarka "sama z siebie" takich możliwości nie posiada, można
użyć prościutkiego filtra, który spowoduje przesłanie drukarce dodatkowo
znaku CR (carriage return - czyli "powrót karetki"):
#!/bin/sh
# filtr eliminujący "efekt schodków"
awk '{print $0, "\r"}'
Tekst j.w. zapisujemy w pliku o nazwie np. dosfilter, i umieszczamy w
określonym katalogu, np. w /var/spool/lpd/raw/ (jeśli mamy utworzoną
taką kolejkę wydruku), albo po prostu w /usr/local/bin/, a następnie
nadajemy odpowiednie prawa dostępu poleceniem:
chmod 755 /usr/local/bin/dosfilter
Potem należy ten filtr "podłączyć" odpowiednim wpisem w /etc/printcap
- a mianowicie, wyszukujemy w tymże pliku definicję kolejki "raw" (jeśli jest
tam tylko jedna-jedyna definicja - nie naszukamy się wiele...), i zaraz za
wierszem, zawierającym wpis w rodzaju:
:lp=/dev/lp0:\
(może być też :lp=/dev/usb/lp0:\ - lub jakoś podobnie), wstawiamy
wiersz o brzmieniu:
:if=/usr/local/bin/dosfilter:\
- W trakcie wystawiania faktury towar mogę wybrać
z rozwijanego menu jedynie po nazwie... nie zawsze jest to wygodne, bo mogę
mieć wiele towarów o podobnej nazwie, a np. różniących się jedynie końcówką
oznaczenia... co robić? A można byłoby wstawiać nowe pozycje do faktury
posługując się symbolem?
Naturalnie - cel ten można osiągnąć dwojako:
- jeśli użytkownik chce stale dokonywać wyboru pozycji cennika "według
symbolu", należy zmienić w "ustawieniach lokalnych" wartość opcji "Nazwa,
symbol" na N ("Nie")
- gdy chodzi jedynie o "potrzebę chwili": wybierając towar do sprzedaży można,
zamiast wskazywać go z rozwijanego menu, skorzystać bezpośrednio z czytnika
kodów kreskowych. Jeśli takowego nie używamy - należy nacisnąć klawisz
odpowiadający znakowi "Prefiks czytnika kodu kreskowego" (domyślnie program
przyjmuje znak o kodzie 041, czyli ")" - "zamknij nawias" - a następnie
wpisać "ręcznie" kod towaru, i zatwierdzić Enter-em - ot, i wszystko...
- Ściągnąłem wersję "demo" - jednak ona nie chce zainstalować
się na Fedora Core 1. Sprawdziłem, że mam w systemie plik libpq.so.3. Co robić?
Z "paczkowaniem" rozmaitych pakietów w różnych dystrybucjach rozmaicie to
bywa... "maintainerzy" co i raz wprowadzają jakieś własne "wynalazki" albo
"innowacje". libpq3 najczęściej figuruje jako osobny pakiet.
Zawsze można spróbować możliwości instalacji z ignorowaniem zależności,
poprzez rpm -i --nodeps smabi-wersja.rpm - i jeśli tylko w systemie
libpq3 jest obecna, to wszystko będzie OK. Jeśli jej nie ma - program
z momentu odmówi współpracy.
A więc, jeśli (w sytuacji wątpliwości do co libpq) program się
w ogóle uruchomi - to zależności można uznać za spełnione
-
Program nie daje(?) mi możliwości wpisania numeru PKWiU! Co robić?
Daje, daje - bez przesady (moduł "Cennik").
Numer PKWiU ma (w najdłuższej "wersji") postać: XX.YY.ZZ-AA.BB. Otóż
wystawcę faktury, w tych przypadkach, gdzie przepisy nakazują dodanie na fakturze
numeru PKWiU (bo i to nie zawsze...) obowiązuje podanie pierwszej grupy cyfr
i pierwszej cyfry grupy drugiej. Oznacza to, że wystawca musi wstawić PKWiU
w postaci co najwyżej XX.Y - resztę można opuścić (przykład: usługodawcy
Internetowi najczęściej używają oznaczenia "64.2").
Jeśli wystawca - z jakichkolwiek względów - bardzo chce wstawić
uszczegółowione PKWiU, to w dalszym ciągu Smabi daje miejsce na wpisanie
numeru postaci XX.YY.ZZ (przykład: TPSA w przypadku Neostrady wpisuje na
fakturze "64.20.1") - nie ma natomiast żadnej potrzeby (ani obowiązku...)
wpisywania "tego, co po myślniku". W każdym razie żaden przepis nie wymaga,
by tak długi numer PKWiU figurował na fakturze.
Smabi działa w zgodzie zarówno z techniką, jak i z obowiązującymi na dzień
dzisiejszy (uwaga dodana 12 IV 2004) regulacjami prawnymi.
- Nie mogę zalogować się w systemie jako użytkownik postgres...
Spokojnie. Po pierwsze należy upewnić się, że mamy zainstalowany serwer
PostgreSQL - gdyż tylko w takim wypadku użytkownik postgres w
ogóle jest obecny w systemie. Po drugie, upewnijmy się, że ten zainstalowany
serwer, jest w danej chwili uruchomiony - bo wprawdzie przy niedziałającym
(ale zainstalowanym) serwerze też będzie można się zalogować, ale wiele dalej
nie da się zdziałać. Po trzecie: gdy już powyższe zrobimy, to jako postgres
możemy zalogować się na 2, w sumie bardzo zbliżone sposoby:
- mając już w jakimkolwiek oknie terminala (lub którejś z konsol
tekstowych) prawa root-a, wydajemy polecenie: su postgres, i
jeszcze zaraz potem: cd - dzięki temu będziemy obecni w systemie jako
użytkownik serwera PostgreSQL, i znajdziemy się w jego katalogu
domowym
- alternatywą - i w sumie "bardziej elegancką" - będzie nadanie
użytkownikowi postgres znanego nam hasła. Zalogujmy się jako root,
i wydajmy polecenie passwd postgres - podajmy hasło, jakie ma mieć
tenże użytkownik. W efekcie z dowolnej konsoli możemy potem logować się jako
postgres już bezpośrednio, bez tego etapu "najpierw root, potem `su
postgres' ".
Można będzie także "z poziomu" jakiegokolwiek innego użytkownika wydać
polecenie su postgres - bo inaczej, niż przy przechodzeniu "przez
su z root-a", system tym razem już zapyta o hasło
W każdym przypadku "zmiany bieżącego użytkownika" wydaniem polecenia
su należy pamiętać o wpisaniu zaraz potem polecenia cd, aby
przejść do właściwego katalogu "domowego"
- Zaraz po uruchomieniu Smabi melduje błąd
I/O error 101 in _ERRCALLER (186) file open error.... Co robić? :-O
Taki meldunek spowodowany jest próbą uruchomienia programu przez użytkownika,
który w danej chwili nie znajduje się w swoim katalogu "domowym" - a tam,
gdzie w danej chwili jest - nie ma praw zapisu.
We wszystkich znanych nam przypadkach taki error spowodowany jest (nagminnym
wprost, jeśli chodzi o początkujących użytkowników...) pominięciem wydania
polecenia cd, po uprzednim przelogowaniu się z jakiegoś innego
użytkownika (jak np. w przypadku omówionym w poprzednim pytaniu) poprzez
su. Lekarstwo: wstukać cd, co przeprowadzi nas do właściwego
katalogu domowego - i uruchomić program jeszcze raz.
- Jak uruchomić serwer PostgreSQL w przypadku dystrybucji Mandrake?
Jako root:
- po pierwsze sprawdzić, czy na pewno nie działa - czy w przypadku wykonania
polecenia ps aux można znaleźć jakikolwiek proces należący do
użytkownika postgres? Np. coś takiego, jak /usr/lib/postgresql/bin/postmaster?
- jeśli jednak nic takiego nie ma - zastosować "inwokację":
/etc/rc.d/init.d/postgresql start - należy pamiętać, że serwer
PostgreSQL musi być uruchomiony przed każdym skorzystaniem ze Smabiego
- Dzieją się dziwne rzeczy, gdy korzystam ze Smabiego -
zainstalowanego na serwerze - "zdalnie", spod Windowsów, korzystając ze
znanego klienta telnet/ssh putty. Mianowicie program nie reaguje na
niektóre z klawiszy funkcyjnych, a - na domiar złego - klawisz "Backspace"
potrafi w niektórych przypadkach "zjeść" cały wyraz, zamiast pojedyńczej
litery.
Sprawa w ogóle nie jest związana z programem, tylko należy właściwie sobie
ustawić translację znaków w putty. Co do "problemu Backspace'a", to w menu
konfiguracyjnym putty należy ustawić opcję:
"Category/Terminal/Keyboard/Backspace Key" na: "Control-H"
...i problem występować przestaje.
Co do klawiszy funkcyjnych: należy wskazać właściwy typ terminala. Rzecz
prosta, "Category/Terminal/Keyboard/Function Keys and keypad"
ustalamy na "Linux". Gdyby - pomimo takiego ustawienia - dalej był
problem z właściwą reakcją na klawisze funkcyjne, można zastosować
"workaround" w postaci wyboru (dla konta, na które się logujemy na serwerze
- należy dodać stosowny wpis w ~/.bashrc albo w ~/.profile tegoż
konta) terminala "xterm", oraz ustawienia "Function Keys and keypad"
w putty-m na "XtermR6".
Natomiast nie ma mowy, żeby wystąpił jakikolwiek tego typu problem przy
połączeniu przez ssh "z Linuksa do Linuksa", przy wykorzystaniu "tradycyjnego",
konsolowego klienta ssh.
Putty - do dziś dnia (informacja z dnia 29.09.2006) - ma z bliżej
nieokreślonego powodu "zepsute" kody klawiszy Home oraz End
(na co zresztą użytkownicy putty zwrócili uwagę na
"Putty known bugs and wish list). I jest to problem z putty - a nie ze
Smabim. Problemu tego nie ma natomiast krajowy produkt - program
A-Term Secure firmy JT-Soft
- i zastosowanie A-Term-a jest najszybszym sposobem na zdalną pracę ze Smabim
ze stanowiska "klienckiego" działającego pod kontrolą Windows.
- Czy dałoby się wyposażyć program w możliwość
wystawiania faktur z datą późniejszą, niż aktualna?
"Smabi" nie jest programem ot, po prostu "do faktur" - efektem wystawienia
faktury może być konieczność dokonania jeszcze kilku innych manipulacji
danymi (jak aktualizacja stanów magazynowych, wystawienie PZ/WZ, wystawienie
KP/KW, odnotowanie stosownego zdarzenia w dzienniku przepływu towaru itd.).
Aby można było - w razie potrzeby, np. najzwyczajniejszej w świecie kontroli
- precyzyjnie odtworzyć przebieg zdarzeń, większość z nich odnotowywana jest
w bazie razem z czasem ich zajścia. Dodatkowo, w celu zapewnienia spójności
danych, czas lokalny (komputera operatora) jest przy starcie programu
dodatkowo porównywany z czasem serwera PostgreSQL, który-to serwer przecież
nie musi znajdować się na tej samej maszynie.
Postulowana opcja mogłaby spowodować naruszenie spójności danych, w celu jej
realizacji należałoby po prostu z opisanej wyżej weryfikacji czasu operacji
zrezygnować. Czy to znaczy, że nie da się przygotować faktury "na jutro"?
Owszem, da się:
- chyba najprostszą metodą będzie przestawienie czasu lokalnego komputera
na datę, kiedy-to miałaby być wystawiona owa faktura (jeśli serwer
PostgreSQL jest na innej maszynie - to i datę zegara tamtego komputera
należy stosownie przestawić)
- jeśli chodzi o krótki dystans czasowy, to takie kombinacje są w ogóle
niepotrzebne - warto wiedzieć, że obowiązujące przepisy zezwalają na
wystawienie faktury z datą sprzedaży (nie mylić z datą wystawienia
faktury) różniącą się do 7 dni "w przód" od daty wystawienia faktury
(informacja aktualna na dzień 10.VII.2005.)
- oczywiście, zawsze jeszcze pozostaje (niezbyt wygodna, przyznajmy)
możliwość "ręcznego" wypisania faktury na typowym blankiecie, i potem jedynie
późniejszego wprowadzenia jej danych do bazy, już bez drukowania
- oraz - "last, but not least" - jeśli posiadamy notebooka, zawsze możemy
przez Internet połączyć się z biura klienta z naszym firmowym serwerem
PostgreSQL, i wydrukować fakturę na poczekaniu, bezpośrednio u klienta
A zatem, odwołując się do najpraktyczniejszego chyba rozwiązania nr 2:
w przypadku, gdy np. w piątek uzgodniliśmy "robotę na wyjeździe" u
klienta, która odbędzie się np. w poniedziałek, uzgodniono warunki, i chcemy
zaraz po dostawie wręczyć uprzednio przygotowaną fakturę - nie mają
uzasadnienia żadne "kombinacje" z datą wystawienia faktury. Faktura może być
przygotowana - wystawiona i wydrukowana - w piątek (data wystawienia), i
zawierać zestawienie towarów/usług dostarczonych w poniedziałek (data
sprzedaży).
Nie wspominając już o tym, że wobec zniesienia obowiązku podpisywania faktur
(po "unijnym akcesie") możemy taką fakturę przygotować już "po robocie",
wyeksportować do pliku, i wysłać odbiorcy jako załącznik w mailu,
"do samodzielnego wydrukowania".
- Wygląd drukowanych faktur i rachunków.
Tak wygląda faktura (wydrukowana z podziałem
oryginał/kopia), tak wygląda duplikat tej samej
faktury, tak wygląda rachunek (tym razem przykład
druku bez podziału "oryginał/kopia", gdy np. drukuje się na "składance z
przebitką"), a tak wygląda faktura korygująca
(również bez podziału "O/K").
- Możliwość zmiany wyglądu drukowanych faktur
Owszem, istnieje taka możliwość - choć nie bezpośrednio. Dlaczego?
Otóż wykorzystywanie przez program znakowego trybu druku (na drukarkach
ESC/P oraz HP/PCL) ogranicza możliwości manewrowania rozmieszczeniem
informacji. Obecna postać faktury/rachunku uwzględnia konieczność zawarcia
na fakturze niezbędnych danych, zachowania czytelności (dlatego najważniejsze
informacje drukowane są czcionką o normalnej wielkości) - a jednocześnie
zachowania zwartej postaci faktury. Po prostu nie bardzo jest jak inaczej
"upchnąć" wymaganą ilość danych na tak małej przestrzeni. Poza tym przyjmuje
się, iż wydrukowana faktura musi być gotowa do ew. wysyłki (do umieszczenia
jej w kopercie z "okienkiem z prawej") bez konieczności dodatkowego pisania
adresu odbiorcy - a więc narzuca to położenie tego adresu. A skoro tak,
to i adresu wystawcy (nie można go wpisać w dowolne miejsce, tylko trzeba
umieścić w tym niewykorzystanym) - i tak powstaje pewien łańcuszek zależności,
bardzo trudny do obejścia. Podkreślić należy, że najpoważniejsze ograniczenia
wprowadza znakowy tryb wydruku - którego jednak inne zalety (najważniejsza to
szybkość drukowania) trudno zignorować.
Program oferuje wszakże dwie możliwości zmiany wyglądu drukowanych faktur:
- Skorzystanie z opcji "papier firmowy" spowoduje zaniechanie drukowania
nagłówka wystawcy, gdyż zakłada się w takim przypadku, że te dane znajdują
się już na takim właśnie, specjalnie zamówionym papierze
- Możliwością dającą prawie nieograniczone możliwości "manewrowania"
postacią wydruku, jest "export do formatu XML" (bezpośrednio z modułu
"Sprzedaż"). Wtedy użytkownik potrzebuje jedynie opisać wygląd oczekiwanej
przez niego postaci faktury, układając plik XSL, o domyślnie
przyjętej nazwie faktura.xsl. Zaś wydruk następuje z przeglądarki WWW
pracującej w trybie graficznym, rzecz jasna po uprzednim wczytaniu tak
wyeksportowanej faktury.
- Sprawa "podpisu elektronicznego" przy korzystaniu z
możliwości udostępnianej przez Smabiego przesyłania faktur jako załączników
w mailu
Tutaj zachodzi pewne nieporozumienie: w krajach unijnych (tej "starej Unii")
e-fakturą może być po prostu faktura wręcz "wklejona" do maila - natomiast
wspomniane "Rozporządzenie" z 14.VII.2005. określa sprawę bardzo drobiazgowo
- pamiętajmy bowiem o tym, iż: "Rozporządzenie określa warunki jakie należy
spełnić przy przesyłaniu i przechowywaniu faktur w formie elektronicznej,
czyli przesyłania lub udostępniania faktur odbiorcy i ich przechowywania z
zastosowaniem elektronicznych urządzeń do przetwarzania i przechowywania
danych. Wykorzystać do tego można techniki łączności przewodowej, radiowej,
technologii optycznych a także innych środków elekromagnetycznych".
Tak więc kwestia nie leży w samym sposobie przekazania tak zdefiniowanej
"e-faktury" (która, nawiasem mówiąc, miałaby być przekazywana w formacie XML),
ale jest to w ogóle rezygnacja z papieru jako nośnika informacji (zauważmy,
iż mowa jest także o przechowywaniu faktur w "postaci elektronicznej",
udostępnianiu dokumentów w tej postaci Urzędowi Skarbowemu, itd.) - natomiast
nasza propozycja dotyczy tylko sposobu przekazania faktury: załącznik
PDF do e-maila zamiast wysyłki faktury pocztą, i samodzielny wydruk faktury
przez odbiorcę; a więc zaraz po odbiorze następuje powrót faktury do "postaci
papierowej". Pomimo czego - jak można chyba domniemywać - i tak zachodzi
znaczące ułatwienie w przekazywaniu faktur.
W każdym razie, w myśl wspomnianego Rozporządzenia, e-mail z załącznikiem
PDF tzw. "e-fakturą" nie jest (jest to, nazwijmy to, całkowicie prywatny
list), w związku z czym żadnymi "e-podpisami" opatrywany być nie musi - nie
ma bowiem, póki-co, jakiegoś ustawowego obowiązku opatrywania takimi podpisami
wszelkich e-maili. Na marginesie: od momentu akcesu Polski do Wspólnoty
Europejskiej w ogóle zniesiono ("prymat prawa unijnego nad krajowym") obowiązek
podpisywania faktur. A w ogóle pamiętajmy, że "co nie jest zabronione - to
jest dozwolone".
- Próbując uruchomić program otrzymuję meldunek błędu
"symbol lookup error: ./smabi: undefined symbol: ESCDELAY"
W niektórych dystrybucjach mogą zdarzyć się błędy wynikające z problemu ze
znalezieniem w systemie niezbędnych bibliotek (w opisywanym przykładzie
chodziło o ncurses); wynika to zapewne z nieuwagi maintainerów.
Rada jest dość prosta:
- Sprawdzić, w jakim katalogu znajduje się ta nieodnaleziona biblioteka (a
może w ogóle jej, z jakiegoś powodu, brakuje? To doinstalować...)
- Jeśli jednak jest obecna w systemie - załóżmy, że znajduje się ona
w katalogu /usr/lib - dodajemy w skrypcie startowym programu
/usr/bin/smabi, zaraz poniżej wiersza o brzmieniu export UID,
wiersz brzmiący:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib
...i to w zasadzie wszystko. Mimo ew. błędu w systemie, takie ręczne
podanie lokalizacji pliku bibliotecznego umożliwi programowi skorzystanie z
niego.
- Korzystam z 64-bitowej wersji Linuksa. Czy jest
osiągalna 64-bitowa wersja programu?
Na dzień obecny (uwaga dodana 05.04.2008.) nie ma 64-bitowej wersji
kompilatora FlagShip,
którym Smabi jest przygotowywany - tak więc nie ma możliwości przygotowania
specjalnej, dedykowanej wersji 64-bitowej. Wszakże uruchamianie programów
32-bitowych w systemie 64-bitowym nie jest trudne; przykładowy opis można znaleźć w
The Debian GNU/Linux AMD64 HOW-TO, szczególnie chodzi o rozdział
Using an IA32 chroot to run 32bit applications.
Zastosowanie się do zawartych tamże wskazówek pozwala na bezproblemową pracę.
Powrót