Marcin Molga

Marcin Molga Senior Solution
Architect, IBM.

Temat: Fakturomat

Andrzej K.:
Tak, chcę się nauczyć pisać aplikacje desktopowe.

Desktopowe to nie moja działka, więc tylko przekieruję do wątku na temat wyboru technologii:
http://www.goldenline.pl/forum/1945290/swing-od-czego-...

Pozdrawiam.
Daniel Częstki

Daniel Częstki senior php developer

Temat: Fakturomat

będę przerabiał fakturomat na MySQL

Temat: Fakturomat

Odgrzebię temat.
Jest już działający program w Javie (w sumie to powinienem zmienić grupę na jakąś javową :)))

http://adesign.8p.pl/down/fakturomat-0.4.jar

Z pewnością są jeszcze błędy i niedoróbki (plik pomocy czeka na napisanie), ale za to wczoraj wystawiłem w nim już pierwszą fakturę :)

Graficznie wygląda jak wygląda i pewnie za szybko się to nie zmieni. Korzystałem ze Swinga, który nie jest IMO zbyt fajny (albo jeszcze nie potrafię z niego więcej wycisnąć - Javę zgłębiam dopiero jakieś 2 miechy), ale podobno jest uniwersalny i teoretycznie powinno się dać odpalić program na każdej maszynie.

Czy ktoś pracujący na Macu lub po Linuxem mógłby wyrazić swoją opinię?

Z góry wielkie dzięki.
Maciej W.

Maciej W. Ruby on what?!

Temat: Fakturomat


Obrazek

Tak wyglada ten formularz ktory wypelnia sie na starcie, przycisk dodaj jest niewidoczny, przypadkowo kliknalem na gdzies dole i wtedy sie pokazal.


Obrazek

Tutaj ten sam problem ale tym razem juz nie udalo mi sie znalezc przyciskow ;)


Obrazek

Tutaj sa przyciski ale kwota brutto pokazuje sie taka jak netto (dopiero po dodaniu sie przelicza).


Obrazek

Tak to wyglada ogolnie.

Temat: Fakturomat

Hmmm... Widzę, że ten Swing nie jest tak uniwersalny, jak miał być.
A podobno wszystko miałoby tak samo czyli rysowane przez Javę a nie system.
Przyciski generalnie powinny być na dole. Wygląda na to, że na Maku wszystkie elementy są nieco większe.

Błąd z ceną netto/brutto oczywiście do poprawy. Dzięki.
Maciej W.

Maciej W. Ruby on what?!

Temat: Fakturomat

Skaczac tabem udalo mi sie dodac klienta :)


Obrazek

Przydalby sie jakis feedback po klikaniu na przyciski PDFow bo nie wiadomo czy cos sie zapisalo i jesli tak to gdzie.


Obrazek

Znalazlem tez takie cos w katalogu mojego uzytkownika. Ah ten Windows i jego slashe w zla strone :P

Generalnie widzialem soft w Javie ktory wygladal gorzej. Jak na jedna osobe ktora w dodatku robi to pod Windows to nie jest zle :)Maciej W. edytował(a) ten post dnia 16.03.11 o godzinie 15:33

Temat: Fakturomat

Maciej W.:
Przydalby sie jakis feedback po klikaniu na przyciski PDFow bo nie wiadomo czy cos sie zapisalo i jesli tak to gdzie.

Pliki PDF są zapisywane w folderze PDF w katalogu, gdzie znajduje się program. Przynajmniej pod Windowsem. Zresztą takie rzeczy będą opisane w helpie.

Obrazek

Znalazlem tez takie cos w katalogu mojego uzytkownika. Ah ten Windows i jego slashe w zla strone :P

Znaczy się co? Zapisuje się nie tam, gdzie powinno?
Wg dokumentacji używałem "\\" co powinno działać pod każdym systemem. Teoretycznie :)

Generalnie widzialem soft w Javie ktory wygladal gorzej. Jak na jedna osobe ktora w dodatku robi to pod Windows to nie jest zle :)

Toś mnie dowartościował :))))
Ale OK. Za Javę wziąłem się nie tak dawno a to moja pierwsza aplikacja. Potrzebowałem na szybko działającego programu do faktur, który będzie robił je wg mojego uznania (Calc z OOo nie spełniał moich wymagań). Po naprawieniu najważniejszych niedoróbek będę szlifował wygląd, usability itp. Najgorsza jest ta różnica międzysystemowa, z czym będzie problem, bo mam tylko Windowsa.

A mówili, że Java jest taka uniwersalna ;)

konto usunięte

Temat: Fakturomat

Będzie możliwy jakiś import faktur z poprzedniej wersji 0.3?

Temat: Fakturomat

Michał B.:
Będzie możliwy jakiś import faktur z poprzedniej wersji 0.3?

Póki co format plików jest NIEMAL identyczny, chociaż zmieniły się nazwy plików, ale to można ręcznie poprawić :)
W samej budowie różnica jest taka, że w pliku z fakturami (fak.bz) trzeba wstawić drugą kolumnę wypełnioną zerami (przyda się w przyszłości). Póki program jest w fazie beta, nie dbam za bardzo o jakąkolwiek zgodność, bo nie ma do czego :)
Maciej W.

Maciej W. Ruby on what?!

Temat: Fakturomat

Andrzej K.:
Znaczy się co? Zapisuje się nie tam, gdzie powinno?
Wg dokumentacji używałem "\\" co powinno działać pod każdym systemem. Teoretycznie :)

To co widzisz to nazwy plikow i katalogow. Nie utworzyl w katalogu Downloads podkatalogow base i pdf, tylko nowe katalogi o nazwie "Downloads\base\" i "Downloads\pdf\". To samo z plikamiMaciej W. edytował(a) ten post dnia 16.03.11 o godzinie 16:39

Temat: Fakturomat

Maciej W.:
Andrzej K.:
Znaczy się co? Zapisuje się nie tam, gdzie powinno?
Wg dokumentacji używałem "\\" co powinno działać pod każdym systemem. Teoretycznie :)

To co widzisz to nazwy plikow i katalogow. Nie utworzyl w katalogu Downloads podkatalogow base i pdf, tylko nowe katalogi o nazwie "Downloads\base\" i "Downloads\pdf\". To samo z plikamiMaciej W. edytował(a) ten post dnia 16.03.11 o godzinie 16:39

Naniosłem kilka drobnych poprawek, ale już nie zmieniałem wersji - plik dostępny pod tym samym adresem. Dodałem też plik pomocy, może nieco chaotyczny, ale powinien wyjaśnić niejasności. Możesz sprawdzić, jak teraz działa? Zwłaszcza wyświelanie buttonów (okienko powinno się dopasować do ilości treści) i tworzenie katalogów (typ slashy jest odczytywany z systemu).

konto usunięte

Temat: Fakturomat

Jestem pod wrażeniem szybkości powstawania tej aplikacji biorąc pod uwagę, że naukę Javy dopiero rozpoczynasz. Postępy na prawdę szybkie :)

Tak się prezentuje w zdefiniowanym przez Ciebie minimalny rozmiarze na Ubuntu:


Obrazek


Na kwestie uniwersalności swing'a też się naciąłem. U mnie to było chyba nawet bardziej odczuwalne, gdyż przełączałem na natywny lookAndFell dla danego systemu. W windows mieściłem się w 800x600, a po odpaleniu na ubuntu 1024x768 było na styk. W windowsie czcionki są mniejsze i stąd rozpychanie GUI pod linuxem.

Andrzej K.:

Pliki PDF są zapisywane w folderze PDF w katalogu, gdzie znajduje się program. Przynajmniej pod Windowsem. Zresztą takie rzeczy będą opisane w helpie.

Pod linux'em właśnie niekoniecznie. Miałem to samo. Apikacja pod windows zapisywała w katalogu z jar'em, jednak na linuxie zawsze zapisywało w głównym katalogu user'a. A przynajmniej po kliknięciu w jar'a niezależnie od tego, gdzie go umieściłem. Jeśli uruchamiałem z konsoli przez "java -jar program.jar", wtedy zapisywało w katalogu, w którym znajdowałem się podczas wpisywania tej komendy. Twój program aktualnie zapisuje w ten sam sposób. Jako kompromis, przyjąłem zapisywanie w katalogu user'a w ukrytym podkatalogu. Ścieżkę w javie uzyskuję w ten sposób:
System.getProperty("user.home") + File.separator + ".podkatalog";

I od razu widać, że w kwestii separatorów lepiej używać File.separator.

Trafiły mi się dwa błędy w trakcie użytkowania, więc przekazuję info:

Gdy na start dodałem klienta i spróbowałem wyświetlić jego listę faktur, otrzymałem wyjątek:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at fakturomat.EkrFaktury.MakeTable(EkrFaktury.java:227)
at fakturomat.EkrKlienci.actionPerformed(EkrKlienci.java:267)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
...


Po dodaniu faktury, opłaceniu i kliknięciu w podgląd:

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1
at ctrl.Sys.GetSlownie(Sys.java:92)
at fakturomat.AboutFak.<init>(AboutFak.java:193)
at fakturomat.EkrFaktury.actionPerformed(EkrFaktury.java:264)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
...


Po restarcie nadal taki sam wyjątek, więc do podglądu nie mogę się na razie dostać. Mam przeczucie, że przyczyną drugiego może być separator części dziesiętnych w kwotach. Używam anglojęzycznego systemu operacyjnego i także w moim programie separatory na windows i linux są różne.
Andrzej K.:
[...] Najgorsza jest ta różnica międzysystemowa, z czym będzie problem, bo mam tylko Windowsa.

A mówili, że Java jest taka uniwersalna ;)

Początkowy slogan "Write Once, Run Anywhere" z czasem został przerobiony na "Write Once, Debug Everywhere" przez rosnącą frustrację developer'ów ;)Tomek Gubała edytował(a) ten post dnia 20.03.11 o godzinie 12:22

Temat: Fakturomat

Tomek Gubała:
Jestem pod wrażeniem szybkości powstawania tej aplikacji biorąc pod uwagę, że naukę Javy dopiero rozpoczynasz. Postępy na prawdę szybkie :)

Dzięki. To pewnie wynika z tego, że znam C, PHP i nie musiałem się uczyć od nowa składni i innych podstaw tylko sposobu myślenia w Javie. A do tego wystarczyła jedna książka i tutorial. Zresztą przy każdym większym problemie google bardzo pomagają. Dlatego właśnie wybrałem Javę w nie Pythona, o czym już dyskutowałem w innym wątku.

A fakt, że dopiero zaczynam widać w różnych błędach. No i w kodzie, którego pokazywać nie będę :) Ale z czasem będę go dopieszczał.

Tak się prezentuje w zdefiniowanym przez Ciebie minimalny rozmiarze na Ubuntu:

No i już widzę różnicę w wielkości czcionek. Na razie nie mam pomysłu, jak sobie z tym poradzić. Zmniejszać pod linuxem czcionki o 1pt? Bez sensu, bo chyba musiałbym obudować wszystkie kontrolki...

Pliki PDF są zapisywane w folderze PDF w katalogu, gdzie znajduje się program. Przynajmniej pod Windowsem. Zresztą takie rzeczy będą opisane w helpie.

Pod linux'em właśnie niekoniecznie. Miałem to samo. Apikacja pod windows zapisywała w katalogu z jar'em, jednak na linuxie zawsze zapisywało w głównym katalogu user'a. A przynajmniej po kliknięciu w jar'a, jeśli uruchamiałem z konsoli przez "java -jar program.jar", wtedy zapisywało w katalogu, w którym znajdowałem się podczas wpisywania tej komendy. Jako kompromis, przyjąłem zapisywanie w katalogu user'a w ukrytym podkatalogu. Ścieżkę w javie uzyskuję w ten sposób:
System.getProperty("user.home") + File.separator + ".podkatalog";

Ja korzystam z "user.dir" który pod Windą wskazuje na folder w programem właśnie.
I od razu widać, że w kwestii separatorów lepiej używać File.separator.

Jup. Właśnie tak już zrobiłem po informacji o problemach na Maku.
Trafiły mi się dwa błędy w trakcie użytkowania, więc przekazuję info:

Dzięki. Pierwszy jest oczywisty - zapomniałem sprawdzić, że otrzymałem NULL zamiast tablicy faktur i próbuję z tego zrobić pętlę :)

Drugi faktycznie może dotyczyć separatora. Chociaż niekoniecznie. Bo obliczenia i tak robię zawsze na kropce. A podczas pobierania tekstu (czy to z kontrolki czy z bazy) zamieniam ewentualne przecinki na kropki. Możesz mi spakować pliki bazy i wysłać na maila?

konto usunięte

Temat: Fakturomat

Archeolog



Wyślij zaproszenie do