wtorek, 25 maja 2010

Pobierz plik z Internetu i go użyj

Problem:
Aby pobrać i odczytać dane z pliku, wystawionego w Internecie    
(HTTP) trzeba:
1) uruchomić przeglądarkę internetową (1 kliknięcie + dwie    
sekundy na załadowanie)
2) przejść do strony z plikiem lub katalogu webowego (1    
kliknięcie, jeśli w 'ulubionych' + sekunda na załadowanie)
3) kliknąć na wybrany plik (1 kliknięcie)
4) potwierdzić, że chce się go zapisać, ew. wskazanie katalogu    
do zapisu (min. 1 kliknięcie)
5) otworzenie pliku np. w Excelu (min. 2 kiknięcia)
RAZEM: Min. 5 kliknięć + ok. 10 sekund życia utracone    
bezpowrotnie :(

...albo...
otwierać plik w Excelu z HTTP://...
(trzeba wpisywać ścieżkę, zwykle długą i potem zapisywać plik    
na swoim dysku poprzez 'zapisz jako')

...albo...

Film:
http://afin.net/webcasts/Demo_DownloadAFileFromInternetAndUseIt.swf

Oczywiście można tak ściągnąć dowolną ilość plików jednym    
'procesem', czyli jednym kliknięciem.

poniedziałek, 24 maja 2010

Import tekstu przez ODBC

Pokaz wydajności powyższego.

Dokładnie taki sam film, jak powyżej, ale plik tekstowy ma    
PONAD 2 MILIONY WIERSZY

Film:
http://afin.net/webcasts/Demo_ImportTextViaOdbc2M.swf


Wydajność:
Sam filtrowany import do tabeli Accessa = 40 SEKUND
(50.000 wierszy / sek)
Całość - ze wszystkimi przeróbkami, kopiami, obliczeniami,    
wyklejkami - razem 212 sekund
(Komputer: cieniutki - 1.5 GHz, 1 GB RAM)

To mniej więcej sprzedaż dużej firmy z całego roku z    
dokładnością do POZYCJI faktury, czyli "do dokumentu" = wszystko.    

4 minuty i po problemie. Nieźle.

piątek, 21 maja 2010

Import tekstu przez ODBC

Problem:
Import tekstu do Excela i do baz danych. Ogólnie.

Nie dlatego, że trudno to oprogramować - to umieją wszyscy.    
Problem jest w tym, że twórcy aplikacji transakcyjnych, z których    
takie eksporty zwykle pochodzą, wsadzają do tych tekstów ogromną    
ilość niepotrzebnych linii, dziwnych znaków, itp.
Podstawowe wady to import całości tekstu, który czasami nie    
mieści się w arkuszu oraz dalej zawiera owe 'śmieciowe' linie,    
które w Excelu trzeba dopiero rozpoznać i ręcznie usunąć -    
koszmar.

Jak się go rozwiązuje?

1) Przez BEZNADZIEJNĄ opcję Excela 'import tekstu'. Nie dość że    
jest zła, to jest zła od 20 lat, a we wszystkich książkach jest    
opisywana jako 'dostęp Excela do danych'. Kto co i jak zna, tak    
opisuje.
A kto to próbował automatyzować przez VBA wie, jakie są z tym    
problemy.

2) Przez odczyt linia-po-linii przez VBA
Efekt duuuuużo lepszy! Czytamy jak i co chcemy, wsadzamy do arkusza    
również z pełną kontrolą. Ale są problemy - dane pozostają w    
arkuszu i trudno zrobić z tego 'zbiorcza bazę danych'

3) Przez ODBC, np. kwerendą
Rozwiązania zdecydowanie poprawne, ale jest problem - trzeba    
zdefiniować plik definicji takiego importu, czyli 'schema.ini' -    
można z tego zrobić doktorat, czyli fajne, ale skomplikowane.

4) Można również wykorzystać SPECJALNE NARZĘDZIE do tego celu -    
AFIN.NET.TextConverter. Ale, czasami, warto jednak pamiętać, że    
ODBC jest po prostu bardzo szybkie...

5) A może tak? - przez ODBC, ale wielokrokowo, parametrycznie, ale    
bezpośrednio do jakiejś sensownej BAZY DANYCH, tu: do pliku    
Accessa.
Jedno, co trzeba umieć, to bardzo niewielkie podstawy SQL.

Film:
http://afin.net/webcasts/Demo_ImportTextViaOdbc1.swf

Wnioski:
Można. Dość łatwo, ale, przede wszystkim, BARDZO SZYBKO I    
WYGODNIE!
I parametrycznie - gdy pojawia się nowy plik tekstowy - dogranie go    
do bazy danych to moment.

Ale proszę jednak zwrócić uwagę na pewne novum w tej metodzie:
Import tekstu jest zwykle jednoetapowy - plik importuje się i już:    
albo otwiera w Excelu, albo czyta linia po linii, albo przez ODBC,    
definiując owo schema.ini. Novum polega na tym, że tu plik    
tekstowy zaczytuje się jednym ruchem się do bazy zewnętrznej już    
przefiltrowany, ale wszystkie dalsze ruchy: podział na kolumny i    
wszystkie poprawki robi się na tabeli w bazie danych - a tu jest    
naprawdę dużo możliwości.
Dopiero na sam koniec dane trafiają do tabeli wynikowej lub są    
eksportowane do plików zewnętrznych.

Ja lepszej metody nie znam.
A AFIN.NET to ładnie automatyzuje - jeden klik.

poniedziałek, 17 maja 2010

Publikacja raportów w Internecie 2 (+parametryzacja raportów, +automatyzacja raportowania)

Problem:

No dobrze, AFIN może publikować, tzn. zapisywać do plików    
"odafinowanych" (pozbawionych funkcji AFINA, by można było je    
otwierać 'czystym' Excelem lub nawet np. Open Office'em) - fajnie.
Potrafi także zapisywać raporty na Office Live Workspace, czyli na    
internetowej platformie wymiany dokumentów - też fajnie.

Ale...
* Raporty są zwykle odgórnie parametryzowane, czyli to operator    
nadaje (wybiera, wstawia, określa) odgórny PARAMETR dla wszystkich    
raportów - najczęściej bieżący miesiąc albo kurs jakiejś    
waluty, ale są przecież raporty specjalizowane dla poszczególnych    
grup odbiorców, itp.
* tych raportów jest cała masa - nikt nie chce powtarzać    
chociażby jednego kliknięcia 'Start' dla wszystkich raportów.

Czasami raportów do zrobienia jest N (=ilość typów raportów)    
razy tyle, ile MPKów, a co miesiąc jest inny parametr miesiąca...

Film:
http://afin.net/webcasts/HowTo_ParametrizeAndAutomatizeInternetReports.swf

Wszystko na filmie pokazano maksymalnie wolno i "od zera"    
(INSTRUKTAŻ) - stąd film jest dość długi (14 minut)


Wnioski:

1) Nie ma najmniejszego problemu w zdefiniowaniu bardzo nawet    
skomplikowanego systemu raportowania w oparciu o AFIN.NET (gotowy    
szablon!) oraz bezpłatny dostęp do platformy internetowej Office    
Live Workspace (Użytkownika/ów definiuje się w minutę).

2) Systemy raportowe w Excelu, oparte o wysyłanie skoroszytów    
Excela pocztą nie są - delikatnie mówiąc - najlepszym    
rozwiązaniem. Faktem jest, że inne rozwiązania (np. zakup    
specjalnego systemu np. budżetowania) są w gruncie rzeczy jeszcze    
gorsze i dużo, dużo droższe.

3) Nie namawiam tu nikogo do korzystania z Office Live Workspace -    
to "Internet" i "nie wiadomo, jak zabezpieczone" itd. W ramach firmy    
zwykła sieć spełnia dokładnie takie samo zadanie, czyli tym co    
maja sieć - na sieć, tym co nie mają - do Internetu!

Wszystko to w zasięgu ręki. Dostępne natychmiast.

sobota, 15 maja 2010

Publikacja raportów w Internecie

Tworzenie i publikacja raportów w internecie jest bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo,    
bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo, bardzo    
skomplikowane. Czyż nie?

Film:
http://afin.net/webcasts/Demo_PublishingOnInternet_OLW.swf


Proszę zwrócić uwagę na:

1) Prostotę obsługi publikacji - JEDNO kliknięcie.

2) Możliwość publikacji dla użytkownika NIEZALOGOWANEGO. Można,    
oczywiście, tworzyć raporty i je publikować tylko osobom    
uprawnionym, tzn. zarejestrowanym użytkownikom usługi Office Live    
Workspace.
Tu pokazano raport DLA WSZYSTKICH - kto chce go zobaczyć - proszę:
http://workspace.office.live.com/?id=qACQzNGE1MDNkZi1kM2MzLTQ5NTItODA4MC1mYmVmMGRlODM5OTMAe84ySOhoOYdOtdJSu1uSuHx9e9ZStexq6TxDn3Zmyd_Zp6J9AA1hZmluNEB0bGVuLnBsABQhbg8FAct99s9xlV9_Fma0gilMTwAA&cid=40
3) Tworzenie raportów i ich przeliczanie jest DYNAMICZNE - ZERO    
ograniczeń - i on-line.

4) Publikować można tylko te arkusze, które chcemy - wystarczy    
dodać do nazwy przyrostek '.priv' i arkusz nie jest publikowany.    
Proste?

5) Można to wszystko zautomatyzować, czyli przeliczać i    
publikować wiele raportów naraz - to będzie na innym    
filmie.

piątek, 14 maja 2010

Excel 2010

Zapraszam do SZERSZEJ dyskusji nt. Excela/Office'a 2010

Ja, na razie, jestem porażony papką marketingową MS.

Przykład:
http://wm.ms-studiosmedia.com/a10065/o9/msstudio_W14/Poland/Office/w14_O_BestProdPCPhoneBrowser_500k_v1_PL-PL.wmv
Nie można współdzielić plików w taki sposób!
Jeśli chcemy mieć współpracę w sieci, tzn. wielu użytkowników    
naraz, to żaden system oparty na grubym kliencie, nie jest w stanie    
nam tego zapewnić.
Nie jest w stanie, nie twierdzę, że to MS robi to źle, a ktoś    
inny lepiej - używanie grubego klienta do tego jest po prostu    
błędne z założenia.
Google Docs wychodzi z innego założenia - "wszystko w Internecie"    
- i akurat tu (i chyba tylko tu) się to doskonale sprawdza. Nie    
mówię o efektywności takiej pracy - próbowałem, kiepsko idzie,    
mówię o tym, co O2010 ZACHWALA JAKO IDEAŁ.
(Poza tym, jeszcze nikt tego nie miał okazji tak naprawdę    
sprawdzić - Office jest DWA dni po premierze. Wiem, że był    
wcześniej w Becie i to dość długo, ale nikt go nie miał jako    
rozwiązania korporacyjnego.)

poniedziałek, 10 maja 2010

Internetowa baza danych MySQL

Tamat 1.
Ładowanie danych na serwer

Film:
http://afin.net/webcasts/Demo_UploadDataOntoInternetDB_MySql.swf

Prosty szablon AFIN.NET, darmowa baza

Wystarczy tylko CHCIEĆ, żeby korzystać z dobrodziejstw    
pełnowymiarowej, dobrze zabezpieczonej, łatwo dostępnej i    
darmowej, internetowej bazy danych.

Do czego to służy?
1. Konsolidacja rozproszonych danych excelowych - temat    
rozwiązywalny raz na zawsze w 5 minut - budżety, plany (np.    
urlopowe), setki innych zastosowań.
2. Zapewnienie systemu wewnątrzfirmowej informacji dla pracowników    
w terenie, np. informacji o zaległościach w płatnościach    
poszczególnych klientów dla przedstawicieli handlowych

Oczywiście to, co opisano powyżej, to już standard we wszystkich    
programach handlowych, ERPach itp.
ALE ŻEBY ZA DARMO? I TO Z EXCELA? Świat nie widział...

Baza danych MySQL w Internecie nie jest bazą "ogólnodostepną".    
Jest Administrator (w bazie testowej 'afin_open' - firma AFIN), jest    
system zabezpieczeń, jest replikacja, archiwa i wszelkie opcje    
bazodanowe.
Korzystanie z tej bazy z poziomu Excela DAJE WYGODĘ. Każdy ma,    
nikt nie musi się niczego uczyć - wystarczy    
klikać.

piątek, 7 maja 2010

Konsolidacja danych rozproszonych w bazie internetowej

DARMOWA (*)  infrastruktura do konsolidacji danych z plików    
Excela w sieci rozległej (budżety(!), plany, wszelkie dane    
tabelaryczne od 'ludzi w terenie', itp.)

(Darmowa, dobrze zabezpieczona, bardzo szybka do wdrożenia)

Problem:
Jak konsolidować dane w sieci rozległej?
(Np. budżety sprzedaży albo nawet zamówienia kilkudziesięciu    
przedstawicieli handlowych / sklepów / oddziałów, itp., itd.)

Zawsze, oczywiście, można kupić    
www.JakiśStrasznieDrogiProgram.com ...
Zawsze można też zrobić sieć rozległą, komutowaną, z    
wbudowanym systemem zabezpieczeń i 5 informatykami do obsługi...
Zafundowanie sobie hardcore'u pt. przesyłanie excelków pocztą i    
sklejanie ich ręcznie też wchodzi w grę, jak ktoś ma czas i    
ochotę...

Albo...
...założyć sobie można własną bazę MySQL, tzn. tyle baz ile    
się chce do jakiegoś tam bardzo dużego limitu, za 40 PLN/rok    
(+VAT) na http://linuxpl.com/ (reklama)
...i jechać:

Film:
http://afin.net/webcasts/Demo_CollectDataOnInternetDB%28MySQL%29.swf

Każdy z użytkowników musi mieć co najmniej dwa pliki:
1) z danymi (takich plików może być wiele) - można go (je)    
wypełniać pod zwykłym Excelem, a nawet OpenOffice'm
2) Plik sterujący załadowaniem danych na serwer - tu musi być    
Excel i AFIN.NET. Można ładować dane z wielu plików naraz.

Konsolidowanie danych może odbywać się jeszcze gdzie indziej i    
przez kogoś innego.
Służy do tego skoroszyt UploadExample_ConsolidationFile.xls
Jego obsługa to naciśnięcie przycisku 'Start'.
I dane do ślicznej tabeli przestawnej na tacy.

UWAGI:
Działa w niezarejestrowanej (darmowej) wersji AFIN.NET.
Baza MySQL użyta przykładowo - może być każda inna, byle    
dostępna przez Internet.

Technikalia:
Na filmie pokazuję to na przemian na różnych wersjach Excela,    
tzn. na AFINIE, pracującym raz pod E2003PL, raz pod E2007EN - nie    
ma jak inaczej pokazać, że to może być na różnych komputerach    
w różnych lokalizacjach, u różnych użytkowników.

(*) Wymaga uzyskania darmowego dostępu do bazy MySQL.
http://www.goldenline.pl/forum/afin-net/1222632/s/1#31808994
(Zainteresowanych proszę o kontakt bezpośredni.)

środa, 5 maja 2010

Konsolidacja plików Excela - przykład bardzo prosty

JESZCZE PROŚCIEJ !!!

Specjalny szablon, konsoliduje od razu do pliku Excela.

Film:
http://afin.net/webcasts/Demo_ExcelFilesConsolidation_ToExcelFile.swf

Są 2 foldery
W każdym po 3 pliki Excela
W każdym pliku 2 arkusze
W każdym arkuszu po 100 wierszy
(dane losowe)

RAZEM: 2 * 3 * 2 * 100 = 1.200 wierszy = ok. 10 sekund

"A tych wagonów (znaczy, folderów - dop.WG) jest ze czterdzieści,
Sam nie wiem, co się w nich jeszcze mieści."

Czy można prościej?
(Pytanie serio, chcę wiedzieć, co jeszcze możnaby    
uprościć...)

wtorek, 4 maja 2010

Konsolidacja plików Excela - przykład bardzo prosty

Dalej w temacie:
http://www.goldenline.pl/forum/afin-net/1411050/s/1#31657728

SQL Server (Express) jako baza danych analityka

C.d. wykorzystania SQL Servera w pracy analityka.

CEL: Prostota do bólu.

Film:
http://afin.net/webcasts/Demo_ExcelDataConsolidationInSQLS.swf

1. "Bezpieczeństwo" danych zapewnione (SQLS)
2. Wygoda jest - otwórz szablon, wpisz parametry i naciśnij    
'Start' i nie myśl za dużo (...analityku, bo nie za myślenie o    
tym ci płacą).

3. I - najważniejsze - baza...:

3a. może być ZASILANA SIECIOWO (w tym przez Internet, uwaga:    
ZWYKŁY Internet, nie żadne tam łącza komutowane - zapewnia to    
wystarczające bezpieczeństwo, podpytajcie informatyków - wiem,    
będą się krzywić, ale niech wydzielą bazę budżetową jako    
osobno udostępnioną i już)

3b. może być ODCZYTYWANA sieciowo, w tym jak wyżej, w tym przez    
DOWOLNĄ ILOŚĆ OSÓB NARAZ - SQLS tym zarządza i robi to dobrze.

3c. może działać na tym NIE TYLKO NASZE raportowanie Excelowe -    
staje się to INTEGRALNĄ częścią systemu bazodanowego firmy (np.    
do dalszych przeróbek danych - kostki OLAP, raporty, inne...)

Edit: kosmetyka.