Autorski članci
uređuju Dragan Grbić i Branislav Mihaljev, MVP

Bookmark and Share
Matična strana sajta
  Novo na sajtu
  Mapa sajta
  Beleške
  Kontakt
  Pretraga MSKB

 Blog Praktikuma
  RSS feed
  P@W @Tw

  Izvezi stranicu u PDF
 
Office Praktikum

Autorski članci
 


Skoro svakodnevno slušamo
  Radio Paradise:
  eklektični muzički online radio bez reklama!
 

 
       

Sponzori sajta

SBB CS 1.6 game server: 82.117.200.1
 
Connectivity by SBB

 
Suština pasijansa
Suština pasijansa
 


 

Informacije

NOVOSTI

I još dva nova priloga o Excelu
Novi prilozi o Wordu
Novi i prilozi u temi "razno o Officeu"
Novi članci o novostima u Officeu 2010!

SADRŽAJI ZA PREUZIMANJE

Lokalizacija Total Commandera 7.51Obe jezičke školjke za popularni program na srpskom sad funkcionišu u bilo kojoj varijanti Windowsa!
RNDalica.ExcelDodatak za Excel 2007/2010 za generisanje slučajnih podataka!
YuConv.ExcelDodatak za Excel 2007/2010 za konverziju pisama!
YuConvNetDodatak za Word 2007/2010 za konverziju pisama i kodnih rasporeda!

SKREĆEMO PAŽNJU

Kako pretraživati MSKB
a pronaći ćete i još mnogo novih sadržaja...

KONTAKT

Da li znate za pravila koja važe pri kontaktu sa nama? Molimo vas da se obavestite o tome!
 
POZIVAMO VAS

i prenesite svoja iskustva. Najbolji prilozi će biti objavljeni.

  (C) 2000-2010 Praktikum na Webu
 

Microsoft Office InfoPath 2003: Struktura sa stilom

Nivo:  NIVO 2 - klinite za objašnjenje


Piše: Dragan Grbić

Ako ste više puta do sada pomislili "probao bih XML, ali nemam strpljenja da se borim sa tim strukturama", možda je vreme da preispitate svoj stav: Microsoft vam nudi način da ovladate XML tehnologijom u grafičkom okruženju.

Neupućenima može da zvuči kao čudan podatak, ali istina je: unos podataka predstavlja jedan od najozbiljnijih problema svakog modernog informacionog sistema. Iako je, u tehničkom smislu, organizacija unosa podataka vrlo jednostavan zahvat, kritični atributi u tom poslu su brzina, tačnost i kompletnost. Ti problemi se rešavaju na brojne načine, aplikativnim ili organizacionim rešenjima, a ponekad i posebnim hardverom kao što su OCR i bar-kod čitači. Poslednjih godina, traže se bolja rešenja i u domenu relativno novih, fleksibilnih standarda u domenu transfera podataka. Jedan od njih je standard primene metajezika XML. Da vas ukratko podsetimo: reč je o načinu strukturnog zapisivanja podataka tako da se uz sam podatak prenosi i njegov kontekst, tj. značenje u nekom zadatom okviru; zapisani podatak se prenosi u aplikaciju koja može da pročita vrednost i kontekst, interpretirajući ih na valjan način. Jedna od prednosti XML-a je u tome što je to načelno tekstualni zapis, čitljiv na mnogim platformama i u mnogim programima, što čini takvo rešenje prikladnim za najšire primene.

Prethodnih godina, širenje primene XML-a u praksi je teklo relativno sporo, što je uglavnom bila posledica nedostajućih alata koji bi pomogli u izradi struktura. Većini onih koji su probali primenu koncepta smetalo je to što je neophodno zadovoljiti strogu sintaksu zapisivanja. Čekalo se na pojavu nekog efikasnog vizuelnog alata koji će preuzeti na sebe mnoge poslove "ispod haube". Mada nije baš prikladno porediti, očekivalo se da će se desiti vidljiviji pomak, kao kada su se tokom 1996. godine pojavili prvi vizuelni HTML editori. Posle ne baš malog čekanja, pojavio se jedan pravi vizuelni podsistem za izradu i primenu obrazaca na Windows platformi po principima XML: To je program Microsoft Office InfoPath 2003. Iz imena vidite da je reč o članu sistema Microsoft Office; to je jedan od dva potpuno nova programa koji su promovisani tokom 2003. godine (drugi je OneNote 2003), a danas ga je moguće nabaviti kao nezavisni paket ili kao deo jednog od većih varijeteta sistema Microsoft Office 2003.

Načela angažovanja i primene

Kako bi bilo najlakše opisati InfoPath nekome ko je naviknut isključivo na tradicionalne oblike dokumenata ili baza podataka? Možemo reći ovako: to je integrisana alatka za izradu i primenu obrazaca za masovno prikupljanje i pregled podataka koji koristi univerzalni standard (tj. XML) u pozadini i tako obezbeđuje širok dijapazon čitljivosti tih podataka na raznim sistemima. Podatak koji se unese u obrazac može biti sačuvan lokalno, ali i direktno u nekom skladištu podataka (npr. Access ili SQL Server); šta znače ove dve opcije, objasnićemo malo kasnije. Obrazac može da se izrađuje na osnovu proste skice, ali i u direktnom dodiru sa matičnim skladištem, gde se objekti, atributi i pravila doslovno prenose u šemu koja predstavlja logičku celinu. Osim toga, svakoj kontroli obrasca (polje za unos, polje za potvrdu, opcije, padajuće liste, itd) mogu se dodeliti razne osobine i interaktivnost, kao što su direktne logičke kontrole ispravnosti unetog podatka, izvođenje na osnovu nekih povezanih podataka (relacije) ili izračunavanja.

Načelno, InfoPath je zamišljen kao podsistem na strani klijenta u korporativnom okruženju. Glavna ideja počiva na zahtevu da obezbedi veću fleksibilnost i tačnost nego većina sličnih sistema koji mogu da posluže za istu namenu; istovremeno, zahtevano je da sve pripremne radnje (priprema obrasca, logičke kontrole, itd.) budu vrlo pristupačne i lake za upotrebu. Najzad, svaki modul za prikupljanje podataka u InfoPathu mora da obezbedi robustnost u uslovima dinamične promene okoline, pa makar se to ticalo i promena u strukturama baze podataka na koju se obrazac oslanja.

Ako budete razumeli opravdanost ovih zahteva, verovatno vam neće biti teško ni da razumete opravdanost "dodavanja još jednog programa, i to komercijalnog, u spisak postojećih" u poslovno okruženje. Ako ste ikada bili u potrebi da što pre konvertujete velike količine sirovih podataka u nekom "sasvim šestom" obliku, XML datoteka koja ih čuva bi mogla da predstavlja direktni korak. Ako već koristite neki programirani obrazac u Internet Exploreru, verovatno uživate u tome što se svi podaci koje unosite direktno i valjano ažuriraju u centralnom skladištu podataka... sve dok ne ponesete svoj notebook na teren, na mesto gde nemate pristup tom skladištu i gde online koncept pada u vodu. XML obrazac može biti orijentisan ka Web servisu ili drugom mrežnom resursu, ali u opštem slučaju možete da nastavite da ga koristite i offline, ažurirajući podatke u centralnom skladištu onog časa kad vratite notebook u mrežu. Najzad, prema standardu važi da XML podaci ne moraju nužno biti kompletni u času ažuriranja, osim ako ste postavili dodatne uslove: ažuriranjem obrasca, koji je datoteka dovoljno mala da je možete dobiti i e-poštom, možete naknadno dodatni nedostajuće podatke popunom novih polja. Uz samo malo radne discipline koja počiva na organizaciji poslovanja, primenom programa InfoPath biće u potpunosti zadovoljeni efikasnost, tačnost i kompletnost, što su tri ključna cilja pri unosu podataka.

Implementacija tehnologije

 Izrada predloška Kao deo sistema Microsoft Office 2003, InfoPath 2003 očekivano deli mnoge vizuelne i funkcionalne sličnosti sa drugim programima sistema; trake komandi su uobičajeno fleksibilne, postoje okna zadataka (Task Pane), kao i mnogi čarobnjaci koji vas vode kroz razne ključne poslove. U tom svetlu, rad u ovom programu bi (vrlo slobodnim rečima) mogao da se opiše kao izvesni presek između pripreme tabele u Excelu, forme u Accessu i uređene tabelarne HTML strukture.

Ako krećete u izradu novog obrasca, možete krenuti od bogate palete gotovih predložaka ili se direktno povezati na neku bazu podataka. U potonjem slučaju, struktura baze će se pojaviti kao struktuirana šema. Postavljajući neku od sedamnaest tipova raspoloživih kontrola, možete je odmah povezati sa potrebnom strukturom; na primer, sadržaj neke padajuće liste može biti konsultaciona tabela u bazi, baš kao što biste činili u klasičnoj aplikaciji baze podataka.

 Ponavljajuće sekcije Posebno zanimljive su dve strukture obrasca koje uređujete kao ponavljajuće ili opcione sekcije. Tipičan primer ponavljajuće sekcije je red detalja u nekom formularu (npr. stavka fakture ili bilo kakav detaljni red nekog spiska); za razliku od rešenja obrazaca u Wordu ili Excelu, gde obično morate da predvidite maksimalni broj redova (i traćite prostor zbog neiskorišćenih redova) ili morate sami programski da rešite dodavanje novih, InfoPath vam omogućuje da proizvoljno dodate novu grupu podataka koliko god puta to bude potrebno, počev od prve unete. Opcione sekcije funkcionišu sasvim slično: verovatno vam se dešavalo da morate da predvidite neki poseban prostor u formularu za unos, poput mesta za unos neke napomene, pa da se to kasnije retko koristi. Ispada da tako rasipate korisni prostor radne površine (ili papira). Primenom opcione sekcije, ako ima potrebe za posebnim unosom, kliknućete na samo jednu liniju i tako otvoriti potrebni prostor za unos.

InfoPath obrasci mogu biti različitog stepena detaljnosti, shodno poslovnoj logici. Drugim rečima, možete napraviti podređeni obrazac u kome ćete prikazati više detaljnih podataka o nekoj stavki nego što je to potrebno u osnovnom obrascu. Takvo rešenje možete upotrebiti pri raznim pretragama, ali i kao opcioni element posebnog unosa podataka samo kada je to neophodno. Na raspolaganju su i razne druge funkcije aktivne pomoći, kao što je to uslovno formatiranje. Ipak, najvažnije je da imate mogućnost validacije podataka; ovo je polje gde integrisani pristup koji InfoPath nudi postaje izuzetno važan. Naime, sve kontrole se obavljaju na strani klijenta; bez dodatnog saobraćaja i angažovanja resursa na serveru (kako uglavnom rade programirana HTML rešenja), aplikativno rešenje postaje veoma efikasno u performansama.

 Postavke validacije podataka Postoje tri formalne tehnike validacije podataka u času unosa; koju od njih ćete upotrebiti, zavisi od raznih faktora. Prva opcija zadovoljava opšti standard: to je validacija zasnovana na "jeziku" W3C XML šeme; reč je o formalnoj specifikaciji koja opisuje dozvoljenu strukturu neke klase u XML dokumentu, kao i neka predefinisana ograničenja, poput tipova podataka u određenim poljima. Jedan predložak obrasca može imati jedan ili više pridruženih dokumenata W3C XML šeme. Istupajući korak iz najstrožeg standarda, uz preduslov da se predložak obrasca upotrebljava isključivo u InfoPathu, na raspolaganju su još dve metode validacije. Prva se vezuje za interfejs programa, a oslanja na W3C XML šeme: to je tzv. validacija zasnovana na pravilima. Reč je o tipičnim atributima koji se unose na uobičajen način pri definisanju kontrole (npr. vrednost mora biti veća od nule, datum ne sme biti manji od tekućeg, itd). Treći vid validacije se oslanja na činjenicu da u pozadini programa InfoPath funkcioniše jezgro programa Internet Explorer, koje donosi mogućnost programiranja u interpretativnim jezicima VBScript i JScript (VBA zbog ove osobine, nažalost, nije dostupan). Takav pristup proširuje mogućnosti u slučaju da W3C standard i dodatna validacija na interfejsu nisu dovoljni za obezbeđenje valjanosti unosa. Ovako gledano, zapravo, možete isprogramirati sve što vam padne na pamet, uključujući i inteligentno ponašanje obrasca zasnovano na vrednostima već unetog sadržaja. InfoPath raspolaže integrisanim editorom skriptova, što vam omogućuje da sve vreme radite u homogenom okruženju.

Čuvanje, distribucija i eksploatacija

Jednom formiran, obrazac se čuva kao predložak, što je nevelika binarna datoteka sa ekstenzijom XSN i otvara se kao asocirana na InfoPath. Otvaranjem u režimu za unos, predložak ostaje slobodan za čuvanje na disku u formatu XML, pod posebnim imenom. Kakav je režim povezivanja sa nekim skladištem podataka, zavisiće od programskog rešenja; u slučaju da je predviđena direktna veza posredstvom Web servisa, a ona nije trenutno omogućena, odloženo ažuriranje možete izvesti uz pomoć čarobnjaka. Da ne biste taj posao izvodili više puta, šaljući pojedine sadržaje iste strukture, biće prikladno da spojite sve njih u jedan integrisani obrazac, što se čini prostim zahvatom.

Postoji više načina da uputite predložak obrasca korisnicima. Najprostije je da ga pošaljete kao prilog uz e-poruku ili čak kao njen sadržaj (nalik slanju radnog lista iz Excela). Predložak može biti pridružen Web servisu, tako da bude povučen u lokal prilikom povezivanja sa servisom; još je jednostavnije obezbediti URL adresu sa koje obrazac može biti preuzet. Omogućeno je i publikovanje u intranet u kojem funkcioniše Windows SharePoint Services. A ako je neophodno da osigurate verodostojnost sadržaja, predlošku ćete dodeliti i digitalni certifikat, koji funkcioniše na uobičajen način.

 Povezivanje sa bazom podataka Postoji jedan posebno zanimljiv detalj u povezivanju InfoPath obrazaca sa bazama podataka. Naime, ako ste bili u prilici da angažujete Access baze u nekim Web aplikacijama, onda dobro znate koliko je zahvalno koristiti to rešenje kao vrlo jeftini pandan SQL Serveru; često takav pristup može da zadovolji i prilično ozbiljne zahteve, pogotovo ako oni ne podrazumevaju visok intenzitet ažuriranja. Međutim, ako ste stekli to iskustvo, onda znate i za jedno ozbiljno ograničenje ovog pravca primene: upiti sačuvani kao deo Access baze ne mogu se direktno upotrebiti kao element povezivanja sa HTML interfejsom, nego su na raspolaganju samo tabele. InfoPath rešava ovaj problem: sada i dalje možete ostati u režimu rada sa jeftinim, "malim" bazama, koristeći svaku Query strukturu.

Sasvim je moguće da InfoPath ne ostavlja utisak alatke kojoj ćete oberučke pohrliti, misleći da ćete tako najzad rešiti gomilu starih iskušenja. Dileme o celishodnosti primene ovog koncepta, u neku ruku, imaju smisla; može se postaviti pitanje da li napuštanje neke druge vrste aplikativnih rešenja i prelazak na "uvek poželjnu" univerzalnost daje valjane rezultate u posebnim slučajevima. Neke paralele smo već povukli, poput značajnog nedostatka Web formi u uslovima rada van mreže; na ovom polju, presudiće vaš krajnja potreba o brzini centralnog ažuriranja podataka spram cene akvizicije (online akvizicija ponekad može mnogo da košta). Možemo i dalje: na primer, primena obrazaca u Word dokumentima ostaje u prednosti ukoliko je vaš cilj da promptno odštampate uneti sadržaj na nekom predštampanom obrascu, a nemate osobitu potrebu da prenosite unete podatke u bazu podataka; s druge strane, mogućnosti tri vrste polja Word obrasca deluju mizerno spram šest puta više kontrola u InfoPathu. A pride, ako se malo potrudite, otkrićete da je moguće napraviti posebni oblik podređenog obrasca (što je, zapravo, pogled na podatke) u kome se podaci prikazuju baš na način prikladan za takvo štampanje. Ima i drugih primera vrednih pomena: iako InfoPath pruža visoku efikasnost pri izradi obrazaca, možda bi koncept Windows Forms mogao bolje da odgovori na neku namensku potrebu (recimo, kao komponenta nekog složenog aplikativnog rešenja). Konačno, moguć protivargument primeni programa InfoPath predstavlja koncept Office 2003 Smart Documents, gde Word i Excel takođe koriste W3C XML šeme kao jezgro "pametnog dokumenta". Štaviše, fleksibilnost takvih rešenja može biti veća od one koju nudi InfoPath – ali, iskusni napominju da je vreme razvoja pametnih dokumenata daleko veće, a vreme je vrlo skup resurs.

Postoji i jedan predmet rasprave koji se prilično često pominje u diskusionim grupama o InfoPathu: mnogo je projektanata rešenja koji zameraju što razvojna platforma Visual Studio Tools for Office ne može da se angažuje u pripremi XML obrazaca, čime ova rešenja često ostaju u domenu lokalnih, slabije integrisanih u smislu razvoja i održavanja. Uostalom, jezici VBScript i JScript ne mogu da koriste prednosti .NET tehnologije, pa ih "ozbiljni igrači" ne uzimaju u obzir kao razvojne platforme. Microsoft je prilično tiho, ali jasno stavio do znanja da će ovo ograničenje u neposrednoj budućnosti, već do sledeće verzije biti prevaziđeno; ostaje da sačekamo i uverimo se da li će obećanje biti ispunjeno.

Nemate kud

Ovolika navala dilema, budite sigurni, znači samo jedno: InfoPath je učvrstio svoju poziciju u domenu tehnologije kojoj je namenjen. Valja da primetimo da je XML stvorio izuzetan manevarski prostor u primeni Interneta u poslovanju, a što i kod nas polako postaje deo (dugo očekivane) svakodnevice. Svaka alatka koja skraćuje put od ideje do praktičnog rezultata na polju XML tehnologije mora da je dobrodošla, jer nije lako "pešice" se boriti sa strogom sintaksom tog metajezika. U tom svetlu, InfoPath je vrlo dobrodošao.

Čak i ako niste navikli na relativno nove koncepte i mehanizme koje je InfoPath sobom doneo, verujem da možete ostvariti mnoge koristi njegovom primenom u svom poslovnom okruženju. Bilo bi opravdano čak i da ga koristite za neke proste akvizicije podataka umesto Accessa ili Excela, jer bi to mogao da bude zametak nekog novog pravca razvoja koji ćete sutra preuzeti. Sve je više programa (pa čak i shareware proizvoda opšte namene) za koje je XML prirodni format koji mogu bar da pročitaju, da i ne pominjemo mnoge sisteme baza podataka. Osvanula je i valjana literatura o XML-u i InfoPathu, pa nemate kud ako počnete da se pravdate da vam je XML stran kao koncept. Ne bi bilo zgoreg da blagovremeno krenete sa praksom: pokazaće se da vreme uloženo u probe, pa i u neka namenska rešenja, nije uludo potrošeno.

Godinu dana od svoje promocije, Microsoft Office InfoPath 2003 se pokazao kao valjan program za korisnu namenu. Istina, kroz godinu ili dve ćemo biti u prilici da pričamo o alternativama na ovom planu (neki se sećaju kako je to bilo u vreme kada je rođen FrontPage), ali do tada će Microsoft već izaći sa novim adutima, i stara priča će se ponoviti: moći ćemo da biramo alatku za jedan te isti posao. A kada budete komentarisali konkurente koji će tada postojati, ne zaboravite koji među njima je bio prvi i pokrenuo lavinu.

 

  (C) 2000-2011 Praktikum na Webu

Objavljeno u časopisu PC #104, oktobra 2004.


 
 

Vrh stranice  Prethodna stranica  Naslovna strana  Mapa sajta  Pretraga

AFORIZAM ZA DANAS OVIH DANA SLUŠAMO...

Copyright © Praktikum na Webu, 2000-2011; Valinor Design; sva prava pridržana.