baze.podataka.1djelovic,
Treba mi Progress programer za jedan projekat. Javite mi se na 533-8174 ili
533-6632 za detalje.
baze.podataka.2gaston,
Za sta sluzi FOXBIND.EXE ?
baze.podataka.3sikima,
Da li se neko bavi programiranjem u Paradox-u ? Intersuje me kakva su
iskustva. Imam par pitanja pa ako moze neko da mi pomogne bio bih zahvalan.
baze.podataka.4timot,
REPLY ON 11.519
>> na neku neobicnost koja je mozda bug a mozda i ne. Predlozio
>> bih da malo vise razmenjujemo ova iskustva, svima ce biti
>> korisna. A mozda jednog lepog dana i ljudi koji na sezam
>> dovlace tone raznih patch-eva za clipper prenesu i neku od
>> patch baza za fox.
Jedan od 'bugova' u foxprou 2.0 - 2.6 ( pretpostavljam da je
bug iako ga nisam našao u spisku ispravki FP2.6a patcha )....
Kada browser sadrži makar jedan calc. field nikako ne uspeva
da zapamti PREFERENCE već se stalno postavlja na default prikaz.
Nikakvom kombinacijom klauzula nismo uspeli da ga nateramo da
sačuva poziciju na ekranu, podelu 'particija' i sl. osim kada je
calc. field definisan u FORMAT fajlu ( BTW, kako se u tom slučaju
postavljaju zaglavlja kolona? ).
baze.podataka.5kum.zoki,
-> #3, sikima>* Da li se neko bavi programiranjem u Paradox-u ? Intersuje me
>* kakva su iskustva. Imam par pitanja pa ako moze neko da mi
>* pomogne bio bih zahvalan.
Koristim Paradox Engine pa pitaj mozda nesto mogu i da pomognem.
baze.podataka.6borko,
Pokrenuo bih pitanje univerzalnih generatora aplikacija . Znaci CASE
alata nezavisnih od konkretnog dbase jezika . Ja sam za sada video samo
UI 2.1 iz 1990 koji generise programe za CLIPPER ,FOX i DBASE III i ,
ali je zastareo u odnosu na dizajnere iz CLARIONA ,
FOX-a , VISUAL OBJECTS pa me zanima li novijih verzija i.t.d
baze.podataka.7vgenije,
-> #3, sikima> Da li se neko bavi programiranjem u Paradox-u ? Intersuje me
> kakva su iskustva. Imam par pitanja pa ako moze neko da mi
> pomogne bio bih zahvalan.
I mene zanima slicna stvar,stim sto ne mislim na OBJECTpal vec na
objektno programiranje u samom paradox-u(pravljenje menija itd...)
Inace imam knjigu PAscal for windows 4.5,nije nesto pa ako
zainteresovani nameravaju da se usavrsavaju u ovoj oblasti ne bi im
preporucio ovu knjigu..
baze.podataka.8vlador,
-> #7, vgenije> objektno programiranje u samom paradox-u(pravljenje menija itd...)
Paradox Engine nije programski jezik nego biblioteka namenjena radu
sa bazama podataka kompatibilnim sa .DB formatom koji koristi Borlandov
paket Paradox (obrati se s pažnjom da važi "Paradox"<>"Paradox Engine"). Tu
biblioteku možeš koristiti iz svojih Pascal ili C programa za DOS ili
Windows, volja ti.
Prema tome, pomoću PXENGa ne možeš praviti menije, već to radiš iz Pascala.
Inače, ja sam Paradox za sada batalio. Bolje da sačekam VO. :)
---
■ VLADOR ■ Prodajem savest - garantovano ne grize.
baze.podataka.9vgenije,
>
> Koristim Paradox Engine pa pitaj mozda nesto mogu i da
> pomognem.
Mogao bih da preporucis neku literaturu ...
p.s.pre mozda 6-7 meseci gledao sam kako covek pomocu paradoxa za
desetak minuta napravi program za vodenje biblioteke sa sve menijima
itd..Pa ako bih mogao da opises malo kako se to radi-da se napravi svoja
baza podataka u windowsu koja ce samo izvorni source imati u paradoxu a
da moze sama da radi nezavisno od njega.
NE mislim na kompletan opis nego samo odakle da krenemo..
baze.podataka.10peacock,
-> #9, vgenije#### itd..Pa ako bih mogao da opises malo kako se to radi-da se
#### napravi svoja baza podataka u windowsu koja ce samo izvorni
#### source imati u paradoxu a da moze sama da radi nezavisno od
#### njega.
Nova verzija Paradoxa za Win (5.0) ima i dodatak Paradox
development edition koji sadrži sve alate za razvoj aplikacija
uključujući debager i kompajler. Kupuje se ili uz Paradox ili
posebno. Paradox je inače jako zahvalno okruženje za rad, moćno i
jednostavno za upotrebu. Ako misliš ozbiljno da se pozabaviš njime,
moraš da ga kupiš jer nije skup, a bez literature teško da možeš
bilo šta da radiš.
Da ne gušimo mnogo ovde, preselimo se u mail.
baze.podataka.11misa.m,
-> #4, timot>> Kada browser sadrži makar jedan calc. field nikako ne uspeva
>> da zapamti PREFERENCE već se stalno postavlja na default prikaz.
Da, ustvari pamti sve osim pozicije calc polja, kod mene ga uvek
stavi kao zadnje polje BROWSa. isto se ponaša i sa LAST pa sam
odavno odustao od varijante korišćenja resource datoteke za tu
namenu. A i nije baš previše zgodna u mreži.
Kada smo već kod sitnih nedoslednosti, da li ste primetili da neradi
PICT "@!" kod EDIT polja.
baze.podataka.12ndragan,
-> #2, gaston/ Za sta sluzi FOXBIND.EXE ?
Taj bi trebalo da pokupi sve potprograme u proceduru koja ih poziva;
nisam se nikad gnjavio sa tim jer sam napisao svoju :).
Evo još malo doqmentacije, ovog puta struktura memo (*.fpt) fajla:
Memo files contain one header record and any number of block structures.
The header record contains a pointer to the next free block and the size
of the block in bytes. The size is determined by the Set Blocksize
command when the file is created. The header record starts at file
position zero and occupies 512 bytes.
Following the header record are the blocks that contain a block header
and the text of the memo. The table file contains block numbers that are
used to reference the memo blocks. The position of the block in the memo
file is determined by multiplying the block number by the block size
(found in the memo file header record). All memo blocks start at even
block boundary addresses. A memo block can occupy more than one
consecutive block.
header:
00-03 location of next free block (*)
04-05 unused
06-07 block size (bytes per block) (*)
08-511 unused
block:
00-03 block signature (*), indicates type of data in block:
0 = picture field type
1 = text field type
04-07 length (*) of memo in bytes
08-n text (n=length)
(*) number represented in left to right order in hexadecimal.
Kad uvatim vremena, sledi i opis kompaktnog indeksa (malo je duži...).
baze.podataka.13ndragan,
(prog.4 11.178)
/ (Zar ne bi bilo sjajno kada bi napravili univerzalnu f-ju za otvaranje
/ baza, a ako joj je slučajno oštećen heder ili neki indeks sve se
Evo napravio ja, zasad sam našao samo dve kršne baze koje je ladno
opravio. Za jednu je javljao "not a database file", za drugu "memo file
missing/invalid". Onoj prvoj ne znam šta je falilo, a drugoj se skenjo
heder (u prvih osam bajtova memo polja bilo nešto bez veze).
Parametar je ime baze, difolt ekstenzija .dbf, za ostale očekuje da
imaju ekstenziju .??x pa da nađe .??t; ako nemaju memo onda može bilo
koja ekstenzija. Pošto se stara (oštećena) čuva kao par .bak/.tbk, i to
via Rename (stara) to (.bak), ne znam kako se ponaša ako nije na tekućem
direktoriju.
For Sezam and veselo društvo u ćošku, tri, četiri: zašto majmun... ovaj,
ne, RebFpt.prg (tj. samo .fxp, moram i ja od nečeg da živim).
p.s. od ove poruke pa nadalje batalio sam juski i prešao na 852.
rebfpt.fxpbaze.podataka.14kum.zoki,
-> #9, vgenijeYou> Mogao bih da preporucis neku literaturu ...
You> p.s.pre mozda 6-7 meseci gledao sam kako covek pomocu
You> paradoxa za desetak minuta napravi program za vodenje
You> biblioteke sa sve menijima itd..Pa ako bih mogao da opises
You> malo kako se to radi-da se napravi svoja baza podataka u
You> windowsu koja ce samo izvorni source imati u paradoxu a
Pazi, rekao sam da koristim Paradox Engine (ver 3.0),
sto se tice takvih programa Borland je dao sasvim dovoljan broj
biblioteka za izradu menija, a sa Paradox Engine-om odradis i
baze i to je sve. Da bi odradio deo koji se tice baza treba ti
10 - 20 programskih linija, a menije radis iz paskala ili C - a
(zavisi sta koristis uz Paradox Engine, jer ti Paradox Engine
omogucava da koristis Paradox baze u svojim programima radjenim
u paskalu, paskalu za Win, C - u, C++ - u, C - u za Win ili
C++ - u za Win. Za rad sa objektima ima posebnu biblioteku.
Uz njega se dobija i program Cristal Reports koga rade kanadjani
inace sluzi za pravljenje izvestaja pod Win. Moguca je i izrada
baza koje rade pod mrezama.)
U stvari evo nesto o Paradox Engine - u:
The Paradox Engine is a unique software solution that opens the
architecture of Paradox to Pascal, C, C++, and Microsoft Windows
developers. It is the onlu high-level programming tool that lets
you integrate your applications with the power of Paradox. The
Engine is a cornerstone in Borland's strategy to acheive inter-
operability and compatibility between its busines applications
and the Borland family of languagues.
Extracted from the core of Paradox's data handling and multiuser
concurrency technology, the Paradox Engine provides the pro-
grammer with a prcedural Applications Programing Interface
(API) of over 90 functions and an API that provides object-
oriented programing (OOP) acces to the Paradox Engine
(provided in the Database Framework). These functions let you
manipulate Paradox tables in a single-user, multiuser, and other
shared environments.
Data acces is at the heart of most business operations, but there
are limitations in existing data management tools. For example,
many tools maintain data that can be shared only with some
degree of discontinuity-files from one environment must be
exported to the format of another before the data can be shared,
and ported back when the user is through eith it. The problems
of data exchange and maintaining data integrity continue to
plague users when they try to merge information from two or
more systems.
The Engine removes such limitations by opening the architecture
of Paradox data to programs written in its supported languages.
Your applications can now take advantage of existing PAradox
data and at the same time coexist with the current generation of
Paradox applications. You can choose the appropriate toll for the
task at hand without creating many separate pools of data.
The Paradox Engine provides C, Pascal, and OOP APIs that let
your programs
*create, read, and write Paradox tables, records, and filds in
DOS, Windows, and network environments
*create, read, and write Paradox BLOB fields
*support explicit file and record locking, and concurrent
execution with interactive Paradox and Paradox Application
Language (PAL) applications, as well as other Paradox Engine
applications
*support other Paradox features such as password protection,
encrypted tables, date encoding, searching, and error handling
*import data into Paradox tables through serial communications,
such as when downloading from mainframes or from external
devices that cannot be reached from PAL
*create standalone applications or applications that can be run
with the PAL RUN command
*have an unlimited, royality-free, run-time licence ......etc.etc.
Toliko za sada, ako vas nesto specijalno interesuje pitajte!!!
Pozdrav!!!
baze.podataka.15ndragan,
-> #6, borko/ Pokrenuo bih pitanje univerzalnih generatora aplikacija . Znaci CASE
Napisao sam ja jedan za FoxPro (dobro, ne sasvim od nule, još se vuče
nekih 6-7% generatora iz prethodne firme). Još nije zaokružen kao
proizvod, nije preterano ljubazan sa korisnikom, ali zato generiše
svašta. Ima svoj help fajl, rečnik podataka, bazu menija, generiše
prostije .scx i .frx fajlove, iz .scx i svoje baze sa dodatnim
parametrima generiše proizvoljne maske za unos, sa grupnim poljima,
linijskim poljima, individualnim biranjem prenosa za svako polje,
automatskim upisom sloga u bazu (ne mora pola svakog ekrana da zauzima
onaj niz dugmića sa naredbama), te automatskim ažuriranjem grupnih polja
duž svih slogova u jednom dokumentu.
Ima tri rutine za pretragu (dve rade na brauz, jedna na SAY) koje same
sebi generišu potprograme i sa njima rade (ono što sam kasnije čuo da se
zove) inkrementalno pretraživanje sa mogućnošću promene aktivnog indeksa
u trku, generiše program za indeksiranje, za generisanje baza,
specifikacijski fajl za arhiviranje korisnikovih podataka i drugi za
programera, help bazu za korisnika, ima kontekstno osetljiv help,
podršku za više jezika, za prevođenje aplikacije na drugi jezik, gomilu
rutina za validaciju, časovnu aritmetiku, popapove, sitan unos dve-tri
promenljive (takođe sam sebi izgeneriše program), za popunjavanje .pjx
fajla (pošto radi gomilu makro zamena i imenskih izraza), za
popunjavanje baze menija difolt menijima, generiše dokumentaciju, izraze
za SQL pretrage, program koji poziva generator maski da izgeneriše sve,
itd itd.
Hm, ponešto sam zaboravio, al' nema veze. Paket se zove GenerAll i ovde
je vlasništvo moje firme ALAS d.o.o.; rutina RebFpt koju sam poslao
prošli put se automatski ugrađuje u rutinu za indeksiranje.
Ne znam da li smo kao firma zainteresovani da to prodajemo ovde, zbog
poznate situacije sa zaštitom autorskih prava i slično. Ne prodajemo ga
još ni u Mađarskoj, nego se koristi samo za po kući (samo naši ljudi).
Zasad se dobro drži, u njemu je urađeno dvadesetak aplikacija od kojih
su neke zdravo komplikovane (program za specijalističku polikliniku, gde
se u osnovnoj masci čak sedam objekata otvara u zasebne prozore, od
kojih su dva simulacije brauza i četiri memo teksta, tri popapa, te još
tri-četiri simulirana brauza sa pretragom uz neka druga polja, radi u
mreži sa dvadesetak stanica a treba da ih bude uskoro pedeset; zubarski
program gde u glavnoj masci ima skoro sto objekata... itd).
U načelu sam raspoložen za razgovor o generatorima kao takvim.
baze.podataka.16frant,
-> #7, vgenije> I mene zanima slicna stvar,stim sto ne mislim na OBJECTpal vec na
> objektno programiranje u samom paradox-u(pravljenje menija itd...)
Nisam baš razumeo šta ti je potrebno. Kao prvo, da li koristiš
Paradox for Windows ili for DOS? Ja sam pre godinu dana koristio
Paradox for Windows (verziju 1.0). Tu možeš da praviš vrlo
interesantne stvari i BEZ direktnog programiranja. Ako te to zanima,
mislim da ugrađeni Help objašnjava većinu stvari. Ako hoćeš da
koristiš ObjectPAL, Help definitivno ne vredi i moraćeš da proučiš
literaturu koju si dobio uz programski paket ;>. Radi se o jeziku
koji do besvesti koristi objektnu strukturu Paradox-a. Iako je,
koliko sam video, vrlo moćan, taj programski jezik je čudan i
nezgodan. Pošto sam bio lišen bilo kakve literature, morao sam da
napustim Paradox. Drugi problem je što Paradox GUTA MEMORIJU, pa je
sa 4 MB neupotrebljiv.
Frant
baze.podataka.17mradic,
Fox-ovci, help!
Primetio sam da u FoxPro-u neke varijable ne zahtevaju definisanje
(dodeljivane vrednosti) pre upotrebe. Tu sam se nasao i pre konkretnim
problemom: kako da znam (u okviru programa koji se izvrsava) koja je varijabla
definisana, a koja ne -- ako pokusam da citam iz nepostojece, program puca.
Primer: matrica mi se puni podacima iz tabele, zavisno od upita. Nijedan
podatak ne odgovara upitu, tako da nece biti kreirana dinamicka matrica.
Kasnije pozivam funkciju za vracanje vrednosti duzine matriuice ALEN(), i,
jasno, tu program puca.
Sta da radim?! ;)
HVALA!
baze.podataka.18djelovic,
-> #17, mradic> definisana, a koja ne -- ako pokusam da citam iz nepostojece, program puca.
A zašto jednostavno ne inicijalizuješ matricu na neke "default" vrednosti
pre nego šro smeestiš podatke u nju?
baze.podataka.19vgenije,
-> #14, kum.zoki> Toliko za sada, ako vas nesto specijalno interesuje pitajte!!!
Hvala ali cu ipak sacekati 5.0 verziju ...kazu da ima debuger itd..
baze.podataka.20stosic,
SuccessWare-ov proizvod za prozore ne zove se SIX vec ROCKET. Podrzava sve
DLL/VBX sisteme i moze se direktno ukljuciti u Visual Basic. Izgleda da je
napolju VB poodavno stekao simpatije kao alat za razvoj windows data based
aplikacija (uz pomoc npr. TrueGrid Pro VBX-a za brows).
Jos jedan tool zasluzuje paznju: Class:VBX omogucava da se VBX kontrole
koriste u VO na isti nacin kao u VB.
baze.podataka.22stosic,
Ima li koga da je radio/radi sa VB, a ima neki VB add-on?
- "Compatibility Layer" za vezu sa Access 2.0 bazama (COMLYR.EXE).
- TrueGrid Pro
- Data Widgets
- VBAssist
- Designer Widgets
- VSVBX
...
baze.podataka.23dr.grba,
-> #20, stosic>> napolju VB poodavno stekao simpatije kao alat za razvoj windows data based
>> aplikacija (uz pomoc npr. TrueGrid Pro VBX-a za brows).
Broj third-party proizvoda koji služe kao proširenje VB raste rapidno.
Najveći broj je posvećen baš razvoju baza podataka. Koliko mi se čini,
a i nakon izvesnog iskustva u radu sa VB, verovatno je presudila
činjenica da je odnos brzine programiranja i mogućnosti/snage
dobijenog rezultata nešto sasvim novo. Kako god okreneš, voleli mi
ujka-Bilija ili ne, njegova ideja je pobedila. Basic živi i dalje.
====================
-----> "VBRUN300.DLL? Pa šta?"
baze.podataka.24dr.grba,
-> #22, stosic>> Ima li koga da je radio/radi sa VB, a ima neki VB add-on?
>>
>> - "Compatibility Layer" za vezu sa Access 2.0 bazama (COMLYR.EXE).
VB zna šta je ODBC (Open Database Connectivity). Prema tome, veza sa
Access bazama živi u "plain vanila" VB-u.
Prijateljski savet, koji sam dao sam sebi kada sam se sreo sa VB:
ne zatrpavati se third party proizvodima dok se ne prouče strukture
već dobijene uz VB (pritom, naravno, mislim prevashodno na custom
controls); dooooooobro razmisliti pre nego štose upotrebi neki od
takvih. Najmanje zato, što reče nbatocanin u kontekstu Clippera, što
nastaju peripetije prilikom odlukke da se pređe na novu verziju
kompajlera.
baze.podataka.25vlador,
-> #24, dr.grba> VB zna šta je ODBC (Open Database Connectivity). Prema tome, veza sa
Je l' ima neka biblioteka za C++ ili Pascal koja koristi ODBC? Ili, da li
postoji neki info o njemu?
---
■ VLADOR ■ This tagline is umop apisdn
baze.podataka.26jovca.car,
-> #25, vlador/* Je l' ima neka biblioteka za C++ ili Pascal koja koristi ODBC? Ili, da li
MFC 2.5 i 3.0
baze.podataka.27mradic,
-> #18, djelovic* FoxPro:
█ A zašto jednostavno ne inicijalizuješ matricu na neke
█ "default" vrednosti pre nego šro smeestiš podatke u nju?
Potrebna mi je dinamička matrica -- njena
veličina trebalo bi da bude određena brojem podataka koji
će se u nju smestiti, a ovi, opet, zavise od upita. So,
kako da znam da li je 'default' vrednost 10 ili
10.000.000? Uzgred, ako je jednom definišem (recimo,
simboličnom veličinom 1), ona se posle više neće ponašati
kao dinamička, zar ne? (Ne znam.)
Dakle, u toku izvršavanja programa nekim se
promenljivima dodeljuju vrednosti (one se definišu,
inicijaliuju), a kasnije potražujem podatke iz njih, ne
znajući da li su definisane ili ne. Potraživanje podataka
iz neinicijalizovanih rezultuje greškom.
Da li razumete moj problem? Da li ga deklarisanje
rešava i kako se odražava na dinamičku strukturu?
HVALA!
baze.podataka.28stosic,
-> #24, dr.grba> Prijateljski savet, koji sam dao sam sebi kada sam se sreo sa VB:
> ne zatrpavati se third party proizvodima dok se ne prouce strukture
> vec dobijene uz VB (pritom, naravno, mislim prevashodno na custom
Za proucavanje VBX-ova koji idu uz VB ne treba ti puno vremena.
Demo primeri su vise nego dovoljni (ne secam se da sam uz neki
softver video bolje napisane)!!!
TruePro Grid VBX (npr.) daje ti mogucnost da biras izmedju VO i VB!
> controls); dooooooobro razmisliti pre nego stose upotrebi neki od
> takvih. Najmanje zato, sto rece nbatocanin u kontekstu Clippera, sto
> nastaju peripetije prilikom odlukke da se prede na novu verziju
> kompajlera.
Svaka cast Nenadu, ali moji putevi su drugi:)
Uz pomoc VB-a napravio sam program za prozore koji radi sa Touch terminalima
preko serijskog porta. Brzo, lako i efikasno! VB 4.0 nestrpljivo ocekujem i
ni malo me ne brine moguca nekompatibilnost sa prethodnom verzijom - program
RADI u VB 3.0 i radice i dalje.
Novi softver i nove verzije donose samo JEDNO pitanje za razmisljanje:
da li mogu, u odredjenom vremenskom roku, da napravim ono sto zelim?
baze.podataka.29stosic,
Citam neki clanak o Wall Data's SALSA business unit-u, pa se pitam sta se
od softvera za modeliranje podataka vrti na nasim prostorima?
baze.podataka.30mdrazic,
-> #29, stosic> Citam neki clanak o Wall Data's SALSA business unit-u, pa se pitam sta se
> od softvera za modeliranje podataka vrti na nasim prostorima?
Semantički objekti, je li? :)) I meni je članak ("Business Modeling
with Semantic Objects", Data Based Advisor, Dec 94) veoma zanimljiv ali
sa teorijskog aspekta, ne sa praktične primene pomenutog alata. Zato
da li znaš (ili neko drugi), koji je to rad na koji se poziva autor
članka David M. Kroenke? Naveden je lakonski kao "article by Hammer
and McLeod" (str.67) a tematika je "semantic data modeling". Ako neko
nađe referencu (ili članak) molim da se javi.
Jedna informacija za xBase fanove :) U biblioteci Matematičkog instituta
SANU od kraja prošle godine dobijaju Data Based Advisor, mesečni časopis
posvećen bazama podataka prvenstveno na PC opremi. Ima tu teorijskih
članaka (kao gore pomenuti), prikaza softvera, specijalizovanih članaka
o Clipperu, VO, PowerBuilderu, dBase V, Paradox, Access, VB na oko
170 strana.
Konkretno, za modelovanje podataka predlažem da se koristi neki CASE alat
ali ne za generisanje koda ili (ne daj bože) aplikacije, već za izradu
projektne dokumentacije. System Architect 2.3 je dosta mali i dovoljno
obuhvatan da može da posluži u te svrhe. Verzija 3.X istog je još bolja
ali je još nemamo (ili je neko već ima?).
Milan
baze.podataka.31vpaunovic,
Imam jedno pitanje za korisnike Access-a. Dejan Ristanović je u
zadnjim Računarima napisao da se iz Access-a mogu koristiti druge baze
(DBF, Btrieve, Oracle, ...) preko ODBC-a. Konkretno me zanima Btrieve.
Recimo da se na Novell serveru nalazi baza podataka pod Btrieve-om. Da
li tim datotekama Access pristupa preko veze Brequest - Btrieve ili ima
svoj fajl menadžer koji direktno pristupa Btrieve datotekama? Ovo me
interesuje jer sam stekao utisak, čitajući prikaz Access-a, da na
Novell-u Access nema klijent-server arhitekturu, a da bi preko veze
Brequest - Btrieve to moglo da se postigne.
Pozdrav od Miška
baze.podataka.32djelovic,
-> #31, vpaunovic> Recimo da se na Novell serveru nalazi baza podataka pod Btrieve-om. Da
> li tim datotekama Access pristupa preko veze Brequest - Btrieve ili ima
> svoj fajl menadžer koji direktno pristupa Btrieve datotekama.
Pristupa preko Brequesta koji, fala bogu, ne radi kao TSR već kao DLL
> interesuje jer sam stekao utisak, čitajući prikaz Access-a, da na
> Novell-u Access nema klijent-server arhitekturu, a da bi preko veze
> Brequest - Btrieve to moglo da se postigne.
Naravno da može :).
baze.podataka.33ppekovic,
-> #31, vpaunovic>> Recimo da se na Novell serveru nalazi baza podataka pod Btrieve-om. Da
>> li tim datotekama Access pristupa preko veze Brequest - Btrieve ili ima
>> svoj fajl menadžer koji direktno pristupa Btrieve datotekama? Ovo me
Evo šta ima na MS ftp server-u o vezi Access-a i Btrieva.
Access koristi Btrieve usluge preko Btrieve client-server
mehanizma. Ipak, ima i određenih ograničenja.
Paya
btrieve.zipbaze.podataka.34mjova,
-> #33, ppekovic> Evo šta ima na MS ftp server-u o vezi Access-a i
> Btrieva. Access koristi Btrieve usluge preko
> Btrieve client-server mehanizma. Ipak, ima i određenih
> ograničenja.
kakvo mišljenje ste stekli o ODBC-u? u početku sam imao utisak da
je to lepo rešenje, ali ne znam koliko je primenljivo. posrednika
od aplikacije do datoteke je sve više, a to povećava verovatnoću
pojave greške. ima li neko iskustva o tome?
baze.podataka.35hobit,
-> #33, ppekovic> Evo šta ima na MS ftp server-u o vezi Access-a i Btrieva.
Da li bi mi mogao reci na koji nacin moze da se pristupi istom ako
imam prikljucak za JUPAK?
baze.podataka.36ppekovic,
-> #34, mjova>> kakvo mišljenje ste stekli o ODBC-u? u početku sam imao utisak da
>> je to lepo rešenje, ali ne znam koliko je primenljivo. posrednika
>> od aplikacije do datoteke je sve više, a to povećava verovatnoću
>> pojave greške. ima li neko iskustva o tome?
Sa greškama nisam imao problema, ali zato sa performansama
jesam. Razlog je baš kao što si naveo - mnogo posrednika, pa se ne
može računati na razne optimizacije.
Paya
baze.podataka.37mdrazic,
-> #34, mjova> kakvo mišljenje ste stekli o ODBC-u? u početku sam imao utisak da
> je to lepo rešenje, ali ne znam koliko je primenljivo. posrednika
> od aplikacije do datoteke je sve više, a to povećava verovatnoću
> pojave greške.
Primenljivo je vrlo. Kao što su se nekad dogovorili oko ASCII kodova
znakova (a editora sve više:), tako su se dogovorili (ili se samo
veliki brat dogovorio, sve jedno) oko standarda za pristup bazama.
Standardno rešenje ustvari smanjuje verovatnoću greške i omogućava
pravljenje 'front-end' aplikacija za postojeće i buduće DBMS koji
podržavaju taj standard. Zbog standardizacije se verovatno posebni
DBMS ne mogu iskorišćavati sa svim specifičnim rešenjima koji su im
davali neku posebnost i/ili brzinu, ali otvaraju veoma široko polje
za razvoj 'front-end' alata i aplikacija. ( VB, VO, PB, MSVC++,...).
baze.podataka.38ppekovic,
-> #35, hobit>> Da li bi mi mogao reci na koji nacin moze da se pristupi istom ako
>> imam prikljucak za JUPAK?
Moraš da imaš račun negde u svetu i da pronađeš X.25 - Internet
gateway.
Paya
baze.podataka.39ndragan,
-> #17, mradic/ Kasnije pozivam funkciju za vracanje vrednosti duzine matriuice
/ ALEN(), i,
/ Sta da radim?! ;)
Izbroj. Tj, to ti je uradeo sam foks: svaki put kad radiš nešto sa više
od jednog sloga, broj obrađenih slogova ti se čuva u sistemskoj
promenljivoj _tally. Treba da odvojiš jednu granu za
if _tally = 0
* poruka: nismo ništa našli
else
* ovo ako je prošlo ok
endif
baze.podataka.40max.headroom,
l<FoxPro for Windows
Evo i alatljike koja vrši kompresiju / dekompresiju podataka pod Fox
-om za Windows-e. Poziva FOXTOOLS biblioteku. Uz sam programčić (EDI)
nalazi se i praktičan primer (DOCUMENT.PRG) njegove upotrebe. Eto, u
slučaju da smeštate tekst i slike, a ispada da zauzimaju previše pro-
stora, EDILZSSA je prava stvar :)
EDI LZSSLib v1.00
=================
LZSSLib is a compression library (DLL) for Windows programmers.
You have access to compression/decompression functions permitting
file-to-file operations. LZSSLib uses the LZSS algorithm with
various modifications each providing different enhancements.
Very simple to use: LZSSPackFile('PROG.EXE', 'PROG.LZS')
Works with any language that supports DLL calling, such as
Turbo Pascal, C/C++, Actor, Visual Basic, Realizer, even
ObjectVision.
edilzssa.arjbaze.podataka.41max.headroom,
FoxPro for Windows Developers Guide
(copyright 1993, Sams Publishing)
____________________________________________________
FoxMasters magazine special edition
Vol2 Num 0
(copyright 1992, Tetra Press)
This disk contains the sample programs from Jeb
Long's FoxPro for Windows Developers Guide. It is
contained within a sample issue of FoxMasters
Magazine. FoxMasters runs within the FoxPro for
Windows environment.
foxdiges.arjbaze.podataka.42max.headroom,
FOXPRO v2.0 (DOS)
EXTENDED I EXPANDED MEMORIJA
Prvo i najvažnije od svega jeste činjenica da je FoxPro sposoban da
koristi svako parče memorije koje mu korisnik stavi na raspolaganje.
PC kompjuteri mogu posedovati tri "tipa" memorije: konvencionalnu,
expanded i extended memoriju.
Konvencionalna memorija
-----------------------
Svaka PC mašina poseduje određenu količinu tzv. konvencionalne
memorije (tj. memorije čiji je gornji limit 640 KB). To je memorija u
koju se programi najčešće učitavaju, i iz koje se pokreću. Standardna
verzija FoxPro-a zahteva minimalno 512 KB raspoložive konvencionalne
memorije, odn. bar 420 KB slobodnog prostora posle učitavanja ev.
rezidentnih programa.
Expanded memorija
-----------------
8086 familija mikroprocesora može fizički da adresira 1024 KB, odn. 1
MB memorije. Prvih 640 KB je konvencionalna memorija (tematika iz
prethnodnog pasusa). Preostalih 384 KB se rezerviše za RAM i
raznorazne kontrolere hardvera (devices). Unutar pomenutih 384 KB
moguće je rezervisati memorijske blokove dužine 64 KB pomoću "Expanded
Memory Manager"-a, a koji se drže LIM EMS standarda (LIM =
Lotus/Intel/Microsoft).
"Expanded Memory Manager" (EMM) vrši organizaciju i raspodelu expanded
memorije, jer istu mogu koristiti više aplikacija istovremeno.
Količina EMS memorije može biti veća od one koju predviđa sposobnost
adresiranja CPU-a, tj. koristi blokove čije se mapiranje vrši kroz
konvencionalnu memoriju preko tzv. "EMS Page Frame"-a.
UMB (Upper Memory Blocks)
-------------------------
Gornjih 384 KB memorije može sadržati mapirani sadržaj RAM-a, a sve to
omogućava EMM na 80386 i 80486 mašinama (odn. neki hardverski uređaj
poput MAXIT kartice). UMB-ovi imaju "povlašćeniji" status jer
omogućavaju smeštanje više podataka u konvencionalnu memoriju (npr.
FoxPro aplikacije) po učitavanju ev. Network Shell-a i TSR programa.
Extended memorija
-----------------
Extended memorija je ona koja se prostire iznad prvog megabajta
adresnog prostora. Neki operativni sistemi je mogu koristiti i
direktno (OS/2 i UNIX), dok joj DOS ne može pristupiti bez korišćenja
XMS (Extended Memory Specification) drajvera - interfejsa koji
omogućava korišćenje memorije iznad 640 KB. Aplikacije koje koriste
ovu vrstu adresnog prostora moraju raditi u tzv. "protected"
(zaštićenom) modu.
MEMORIJA I STANDARDNI FOXPRO
EMS
---
Ako se FoxPro pokreće zajedno sa TSR programima (npr. spuleri i
programi za redefinisanje tastature), potrebno je proširiti memoriju
kompjutera na više od 640 KB. Na mašinama sa LIM 4.0 EMS expanded
memorijom, Fox koristi prvih 64 KB expanded memorije za "opštu
upotrebu", i sve preko toga se koristi za ubrzavanje I/O operacija i
keširanje segmenata koda. Pomenuta "opšta upotreba" se odnosi na
čuvanje podataka Browse prozora, korisnikovih prozora, menija,
memorijskih promenljivih, programa, itd.
U slučaju da posedujete 80386 ili 80486 mašinu, postoji više programa
koji koriste extended memoriju da emuliraju EMS (npr. QEMM, 386MAX i
EMM386).
Memorija između 640 KB i 1 MB
-----------------------------
Postoji više načina da se pristupi ovoj memoriji. Ona nije jednostavni
nastavak memorije ispod 640 KB, i postoje programi koji je ne mogu
koristiti. Međutim, FoxPro može, i što je najvažnije, od velike mu je
koristi. Dodatna memorija iznad 640 KB (a da nije EMS) drastično
ubrzava I/O performanse i omogućava korišćenje većeg broja prozora,
fajlova, indeksa, stringova, itd.
U slučaju da koristite 80386SX, 80386 i 80486 procesore, primetićete
da većina EMS emulatora kao što su QEMM i 386MAX automatski pravi
dostupnim blokove memorije između 640 KB i 1 MB.
Iznad 1 MB - Extended memorija
------------------------------
Ovaj memorijski prostor nije moguće koristiti direktno, preko
standardnog FoxPro-a, osim ako se ne ponaša kao EMS. To se postiže
pokretanjem odgovarajućeg memorijskog menadžera, preko koga extended
memorija emulira EMS. Da bi se proverilo koliko EMS memorije korsiti
Fox, pokrenite SYS(23) funkciju.
FoxPro i stariji EMS emulatori
------------------------------
Određeni (stariji) EMS emulatori izazivaju probleme pri radu sa
FoxPro-om, jer se ne pridržavaju LIM 4.0 standarda. Srećom, postoje
dodatne opcije koje Fox-u omogućavaju da operiše i sa takvim,
nekompletnim EMS emulatorima, ali one ne omogućvavaju optimalnu
konfiguraciju (npr. ubrzavaju se samo I/O operacije). U slučaju da
posedujete baš takav EMS emulator, u CONFIG.FP fajl možete dodati
sledeće opcije:
EMS64 = OFF
Sva raspoloživa expanded memorija će se koristiti za ubrzavanje I/O
operacija. Ako ovo ne pomogne, pokušajte sledeće:
EMS=64
Sva expanded memorija se ignoriše, osim prvih 64 KB, a koji služe za
"opštu upotrebu".
MEMORIJA I EXTENDED FOXPRO
Extended verzija FoxPro-a može iskoristiti prednost posedovanja
extended memorije, ili extended memorije koja se ponaša kao expanded,
ali ne može koristiti oba pristupa odjednom. U slučaju da se samo deo
extended memorije ponaša kao expanded mem, Extended FoxPro će
koristiti samo taj, manji deo. Npr. ako imate 8 MB memorije, a samo 1
MB se ponaša kao expanded mem, Extended verzija neće imati pristup u
onih preostalih 7 MB.
FoxPro (X) koristi modifikovanu verziju Ergo OS386 DOS Extender-a da
bi radio u 386 protected modu. DOS Extender-i omogućavaju operisanje u
najrazličitijim sredinama. Kada se Extender startuje, on proverava
postojanje sledećih memorijskih okruženja, i to po ovom rasporedu:
- DPMI Server (DOS Protected Mode Interface) - Windows 3.x je DPMI
Server. U slučaju da je DPMI Server prisutan, FoxPro Extended se ne
može pokrenuti jer on koristi Ergo OS386, a koji ne podržava DPMI.
Dakle, pod Windows-ima koristite standardnu verziju Fox-a.
- VCPI Server (Virtual Control Program Interface) - 386MAX, BlueMax,
QEMM386, EMM386.EXE i CEMM su VCPI Serveri.
- XMS drajver (eXtended Memory Specification) - HIMEM.SYS, HIMEM.EXE,
386MAX, BlueMax i QEMM386 su XMS drajveri.
- INT 15 - kada ni jedan memorijski menadžer nije prisutan, koriste
ovaj interapt za pristup extended memoriji, i preko njega je
alociraju.
DOS HIMEM.SYS i EMM386.EXE
--------------------------
U slučaju da ih koristite zajedno, EMM386.EXE preuzima svu memoriju od
XMS memorije, a koju nudi HIMEM.SYS. Bez parametara, omogućeno je
korišćenje samo 256 KB VCPI memorije (prikazana kao EMS). To nije
dovoljno da bi se pokrenula FoxPro Extended verzija. žak i da je
preostalih 3 MB extended memorije dostupno kao XMS (HIMEM.SYS), OS386
će ih ignorisati - on koristi samo prvi mem. menadžer na koji naleti
(baš kao što je gore navedeno).
U slučaju da želite da koristite EMM386.EXE sa FoxPro Extended
verzijom, potrebno je navesti i numerički parametar u
DEVICE=EMM386.SYS liniju. Broj bi trebao da predstavlja količinu
extended memorije u kilobajtima, pomnoženo sa 16. Ako pri butovanju
EMM386 prijavi preračunavanje u neku drugu vrednost, prenesite ovako
prikazanu cifru u CONFIG.SYS i poruka se više neće pojavljivati.
NEMOJTE koristiti NOEMS parametar.
U slučaju da su vam dostupni, radije koristite 386MAX, BlueMax ili
QEMM386. U principu su brži od EMM386.EXE (probajte da sa DISPLAY
STATUS uporedite brzinu remapiranja EMS emulatora izraženu u
mikrosekundama).
baze.podataka.43max.headroom,
NOVOSTI FOXPRO FOR WINDOWS v2.6 (ukratko)
-----------------------------------------
Šta novo nudi FoxPro for Windows v2.6 u odnosu na verziju 2.5?
* Tzv. "Catalog Manager", tj. korisnički interfejs pomoću koga se la-
kše pristupa bazama i raznoraznim delovima Fox sistema. Omogućava
jednostavno konvertovanje dBASE fajlova.
* Skup "Wizard"-a koji olakšavaju česte operacije nad bazama.
* Dodatne komande koje kompatibilnost sa dBASE IV čine još boljom.
Nove/poboljšane komande:
ON BAR ON EXIT BAR ON EXIT MENU
ON EXIT PAD ON EXIT POPUP ON MENU
ON MOUSE ON PAD ON POPUP
SET CPCOMPILE SET CPDIALOG SET COLLATE
SET DIRECTORY SET FIELDS SET FORMAT
SET KEY SET NOCPTRANS SET VIEW
Nove/poboljšane funkcije:
BARCOUNT( ) BARPROMPT( ) BLANK CPCURRENT()
CPDBF() CPCONVERT() DESCENDING( ) FLDCOUNT( )
FOR( ) FTIME( ) HOME( ) ID( )
IDXCOLLATE() ISBLANK( ) ISMOUSE( ) KEYMATCH( )
MEMORY(0) MEMORY(1) MEMORY(2) MEMORY(3)
MEMORY(4) MEMORY(5) MEMORY(6) MEMORY(7)
PADPROMPT( ) PCOUNT( ) PRTINFO( ) RUN( )
SYS(1037) TAG( ) TAGCOUNT( ) TAGNO( )
UNIQUE( ) WINDOW( )
SET("ATTRIBUTES") SET("DIRECTORY") SET("DISPLAY")
SET("LIBRARY") SET MBLOCK SET("MBLOCK")
Nove/poboljšane sistemske promenljive:
_ASSIST
_SHELL
Saveti (Catalog Manager):
* U slučaju da želite da iz Catalog Manager-a startujete određeni pro-
gram ili funkciju, potrudite se da se navedeni prg/f-ja NE zove ova-
ko:
ABORT ACTTHERM ADDALIAS ADDBS
ADDFILE ADDTASK ANALYZE CLEANUP
CONTROL DELUSER DUMMY ERRHAND
ESCHAND EXECUTE EXPORT FILEEXT
FINDFILE FORCEEXT GETSQL GETSTAMP
GETWPARM IMPORT INDEX ISMAC
ISSPR JUSTEXT JUSTFNAME JUSTPATH
MENUPROC MIGRATE MODIFY MSGBOX
ORDER PARSFIL PRINT REMOVE
SAVEPREF SETTINGS SETTOPIC SHUTDOWN
TOUCHED TRASHCAN UPDTHERM VRUN
Jerbo se tako zovu komponente samog Catalog Manager-a.
* U slučaju da koristite određenu API biblioteku, budite spremni na
sledeće - Catalog Manager otvara/zatvara API biblioteke u sledećim
slučajevima:
1. Kada se Catalog Manager startuje, sve API biblioteke se zatvaraju.
2. Kada se iz C.M.-a startuje program, sve API bibl. koje su bile
otvorene pre nego što je C.M. startovan ostaju otvorene. Posle
izvršenja programa API bibl. se zatvaraju.
3. Posle izlaska (exit) iz C.M.-a, sve API bibl. otvorene pre sta-
rtovanja C.M.-a ostaju otvorene.
WIZARD-i:
Štampanje pomoću REPORT i LABEL Wizard-a
----------------------------------------
Da bi se pomenuti Wizard-i koristili, potrebno je imati instaliran
printer pod Windows-ima, inače se pojavljuje greška "Printer not
ready". Instaliranje printera se vrši biranjem "Print Setup" opcije iz
"File" menija, te odabiranjem željenog printera.
Štampanje pomoću REPORT i LABEL Wizard-a na laserskom štampaču
--------------------------------------------------------------
"Label Wizard" je dizajniran da štampa nalepnice koje se ne nalaze na
beskonačnom papiru (dakle, pojedinačni listovi sa nalepnicama), i to
sa marginama čiju širinu diktiraju mogućnosti laserskog printera. U
slučaju da se tekst nalepnica štampa preko dozvoljene margine,
potrebno je pomoću Report Writer-a modifikovati Label-u tako da se
štampa isključivo u dozvoljenim granicama. Da bi se ovo postiglo,
potrebno je uraditi sledeće:
1. Modifikovati Label fajl koristeći Report Writer.
2. Iz "Report" menija izabrati "Page Layout" opciju.
3. U sekciji "Print Area" iz "Page Layout" dijaloga izabrati "Pri-
ntable Page" radio button.
Ako se želi dalje modifikovanje Label fajla, to se mora činiti kroz
Report Writer, a ne "Label Wizard".
MEMO / General polja i Label Wizard
-----------------------------------
Da bi se dodala MEMO, odn. General polja, Label fajl se mora
modifikovati pomoću Report Writer-a, a ne preko Label Wizard-a.
Makroi u FoxPro-u 2.6
---------------------
Kombinacije tastera Alt+1 do Alt+9 se ne mogu predefinisati makro ko-
mandama.
Import MS EXCEL fajlova u FoxPro
--------------------------------
FoxPro može da import-uje fajlove MS EXCEL-a v4.0, dok je za import
fajlova MS EXCEL-a v5.0 potrebno prvo, kroz sam EXCEL, željeni fajl
konvertovati u v4.0 format, pa ga tek tada ubaciti u FoxPro. Kolone iz
fajla postaju polja, a redovi - zapisi u bazi.
Pokretanje dBASE aplikacija pod FoxPro-om
-----------------------------------------
Da bi se pokrenule dBASE III i dBASE IV aplikacije pdo FoxPro-om,
potrebno je prvo konvertovati individualne komponente originalne
aplikacije, pa ih tek potom re-kompajlirati pod FoxPro-om. Za
konvertovanje dBASE III i IV fajlova koristiti Catalog Manager.
baze.podataka.45max.headroom,
Tetris za FoxPro. Source (.PRG) included.
poptris.arjbaze.podataka.46max.headroom,
PSSQA.TXT
**********************************************************
Answers to Commonly Asked Question About
Microsoft(R) FoxPro(R) for MS-DOS(R) Version 2.6
(C)1994 Microsoft Corporation. All Rights Reserved.
**********************************************************
========
CONTENTS
========
Part Description
---- -----------
1 Network Issues
2 Converting from FoxPro 2.0 to FoxPro 2.6 for MS-DOS
3 Printing Issues
4 Screens
5 Importing Data
6 BROWSE Command
7 Creating Applications
----------------------------------------------------------
pssqa.arjbaze.podataka.47max.headroom,
FoxPro primer #001: PISANJE PISAMA I CIRKULARA
žesto se ukaže potreba za pisanjem pisama većem broju ljudi čije fi-
rme, adrese ili imena imate već pohranjene u bazi. FoxPro nudi mogu-
ćnost korišćenja tih podataka u svrhe sastavljanja cirkulara, odn.
pojedinačnih pisama, a uz pomoć komande SET TEXTMERGE. Ona vrši redi-
rekciju ispisa u fajl (ekran, prozor...) koji se, potom, može otšta-
mpati ili poslati faksom. Ono što sledi je jednostavan primer upotre-
be navedene komande, i, uz malo eksperimentisanja, moguće je kreirati
moćan sistem koji će, umesto vas, sastavljati ponude, ugovore, ili
jednostavne novogodišnje čestitike :)
Baza: KUPCI.DBF
Polja: FIRMA C(20) - naziv firme-primaoca
ADRESA C(20) - adresa -//-
IME C(15) - ime i prezime primaoca
----------------------------------------------------------------------
CLEAR
m.od = "Maksim Sestic"
SET TEXTMERGE ON
SET TEXTMERGE TO pismo.txt
SELECT 0
USE kupci
Đ <<REPLICATE(" ",50)>>
ĐĐ<<MDY(DATE())>>
Đ<<kupci.firma>>
Đ<<kupci.adresa>>
Đ
ĐZa: <<kupci.ime>>
Đ
ĐPrilažemo najsvežije informacije o našem proizvodnom programu.
Đ
Đ Srdačno Vaš
Đ <<m.od>>
Đ<<CHR(12)>>
USE
baze.podataka.48vpaunovic,
Da li se neko bavio ili zna nekog ko jeste, migracijom sa
mrežno-hijerarhijske baze tipa CODASIL na relacionu?
Pozdrav od Miroslava
baze.podataka.49mradic,
Hi!
FoxPro for Windows 2.6 problem: napravio sam
masku (Screen) za unos podataka, i na njoj više polja
(Imput Field). Korisnik u njih unosi podatke opciono (ne
mora ništa da unese u neka). Kako da znam da li su neka
od tih polja, po napuštanju maske, ostala bez unetih
vrednosti ili ne? ;)
Glupo rešenje: po otvaranju maske dodelim
poljima (tj. promenljivim) neke glupe vrednosti (nule,
recimo) i onda pitam da li je u polju nula ili ne, i tako
znam da li je izmenjeno. Postoji li neki način
build-in-Fox? ;)
Thanx.
baze.podataka.50djelovic,
-> #40, max.headroom> Evo i alatljike koja vrši kompresiju / dekompresiju podataka pod Fo
> -om za Windows-e. Poziva FOXTOOLS biblioteku. Uz sam programčić (EDI
> nalazi se i praktičan primer (DOCUMENT.PRG) njegove upotrebe
Ovo je sa Windowsima 3.11 postalo nepotrebno. Naime, Win 3.1 sadrži u sebi
LZExpand biblioteku koja se brine za kompresiju i dekompresiju. Pošto FoxPro
može da pristupa Windows API-ju, onda mi se čini nepotrebno opterećivati
program paralelnim i (verovatno) lošijim bibliotekama nego što su one koje daje
Majkrosoft.
baze.podataka.51bulaja,
-> #46, max.headroom│ Answers to Commonly Asked Question About
│ Microsoft(R) FoxPro(R) for MS-DOS(R) Version 2.6
└───
Prebačeno je u R:\DATABASE, hvala na prilogu :).
baze.podataka.52max.headroom,
-> #50, djelovic> može da pristupa Windows API-ju, onda mi se čini
> nepotrebno opterećivati program paralelnim i (verovatno)
> lošijim bibliotekama nego što su one koje daje Majkrosoft.
Gnjah :) Jedini problem, tada, ostaje opis tih 500 Windows f-ja i
način njihove upotrebe :) (kroz praktične primere su u Fox-u 2.6 for
Win opisane čitave TRI funkcije)...
baze.podataka.53zoranv,
-> #24, dr.grba> VB zna šta je ODBC (Open Database Connectivity). Prema tome, veza sa
> Access bazama živi u "plain vanila" VB-u.
Ovo važi samo za Access baze verzija 1.0 i 1.1.
Postoji produkt Compatibility Layer i koji se isporučuje
zajedno sa Access Dev. Kitom 2.0, koji omogućuje da se stvari
zakrpe, (čak mogu da se koriste i neke nove stvari iz JetEngine-a
2.0), ali će puna podrška da bude ugrađena tek u VB 4.0. (recimo
ne radi Cascade Update i Cascade delete itd.)
baze.podataka.54djelovic,
-> #52, max.headroom> Gnjah :) Jedini problem, tada, ostaje opis tih 500 Windows f-ja i
> način njihove upotrebe :) (kroz praktične primere su u Fox-u 2.6 for
> Win opisane čitave TRI funkcije)...
Ondak ti treba WINAPI.HLP i Sezam. Ovaj prvi za spisak svih Windows poziva,
a ovaj drugi kao idealna Search & Retreval alatka:
- 'Teo bi da vršim arhviranje podataka ali ne znam kako:
- Niks frks, mon, trebau ti funkcije LZOpen, LZCopy i LZClose. Potraži ih u
WINAPI helpu.
baze.podataka.55mradic,
-> #39, ndragan█ Izbroj. Tj, to ti je uradeo sam foks: svaki put kad radiš
█ nešto sa više od jednog sloga, broj obrađenih slogova ti se
█ čuva u sistemskoj promenljivoj _tally.
Tako je! ;) Svi moji problemi s matricama su
reseni zahvaljujuci ovom savetu. Tek sam sada video da je
i max.headroom istu ovu stvar napisao pre pola godine.
Tako mi i treba kad nisam na vreme pratio konferenciju. ;)
Pozdrav.
baze.podataka.56mradic,
Hi!
Skoro sam postavio pitanje kako da znam da li mi
je korisnik u FoxPro maski (Input Field-u) uneo neki
podatak ili ne. Odmah sam dosao i do rešenja:
IF EMPTY (<naziv polja>)
...
END IF
I to je sve. Izvinite što sam vas gnjavio ovakim
stvarima. ;)
baze.podataka.57mradic,
Hi!
Mislim da je broj poruka o Fox-u u
PC.PROG/baze.podataka dosegao dovoljan broj da
bi se mogla otvoriti zasebna tema vezana za Fox
u PC.PROG konferenciji.
Usput, koja je razlika između tema:
PC.PROG/baze.podataka i
PC.USER/baze.podataka?
Pozdrav!
baze.podataka.58djelovic,
-> #57, mradic> Usput, koja je razlika između tema
> PC.PROG/baze.podataka
> PC.USER/baze.podataka
Otprilike kao razlika između starog dBASE-a i Clippera: Jedan je za rad sa
bazama podataka, a drugi za programiranje baza podataka :).
baze.podataka.59ndragan,
Elem, imam novosti: u petak (3.2.) sam bio u Pešti na Majkrosoftovoj
programerskoj konferenciji (tj. bukvalni prevod i sa mađarskog i sa
engleskog bi bio 'razvijačkoj' - Developers' conferrence). Hotel Mariot
(bivši Hajat, pošto se ovaj preselio u drugo zdanje) na obali, nizvodno
od Sečenjijevog lančanog mosta. Oko 400 ljudi (čuo sam i za 700, ali mi
se ne čini da je gužva bila _baš_ tolika).
Novosti: udarni hardver koji su prikazali su Didžitalove Alfe kao WinNT
serveri. Dobio sam katalog sa preko 1000 paketa koji su (tvrde) ladno
prekompajlirani za Alfu, i rade sve u 0x0010 (mrzi me da pišem sva 64
bita). Ono što sam video na ekranu, trči toliko glatko da uopšte ne liči
na pendžere (inače radim na 486/40 sa 16M i svim mogućim ubrzivačima -
ovo je za dva reda veličine brže od toga).
Među ostalim materijalom se nalazi i izjava Bidže Gejtsa kako se
raduje saradnji sa Didžitalom, jerbo zna da može da se osloni na njihov
kvalitet (jel to i on počeo da zeza Intel?).
Naglasak je na Aksesu - pola sata je dato samo za mađarsku firmu koja ga
je prevela na mađarski. Imaju jedan divan problem sa tim prevodom, što
se već odomaćilo da se direktorij prevodi kao könyvtár - knjižara,
biblioteka. Sad je problem kako prevesti 'library' da se razlikuje.
Drugi problem su nizovi za indeksiranje, pošto ima stravično mnogo
izuzetaka od bilo kog algoritma: kombinacija ssz, naprimer, može da
predstavlja dugačko s, a možda i šs (ako je deo složenice u kojoj se
onda baš tako i izgovara), pa onda treba različito da se ponaša u tim
slučajevima. Njihova Akademija nauka uveliko lupa glavu oko tog
problema, već neku godinu.
Majkrosoft se očigledno dao u posao da od Aksesa napravi nešto ozbiljno,
pošto je dosad kanda štogod slabije prolazio s njim. Novost (možda, ne
pratim Akses naročito) je što prihvata proširenja rađena u VBejziku.
Glavni štos je ono što nazivaju Upsizing Tools, što je u stvari jedna
omanja aplikacija (tipa čarobnjaka), rađena verovatno u samom Aksesu,
koja treba da u jednom prolazu pohvata koje baze više nisu u lokalu,
nego će se zahvatati sa SQL servera (e sad ne znam da li samo sa
Majkrosoftovog ili bilo kojeg). Zvuči kao da samo protrčava kroz
aplikaciju i ubacuje serije zamena (nešto kroz sors, nešto kroz
parametarske baze) tako što baza "trt mrt" postaje "trt_mrt_remote" gde
treba, a lokalna kopija se sad zove "trt_mrt_remote". Podvlake nastaju
zato što sadašnja verzija servera ne prihvata nezgodne znake u nazivima
(važi i za kose znake iz 852/1250, ni njih neće).
Nešto su prikazivali i svoj SQL server, ali mi je taj deo promakao -
možda sam ga i preskočio, jer sam bio u hodniku, videće se zašto.
Za Foks je prezentaciju održao Alfredo Picirani (Pizzirani), neverovatan
šmeker sa tvrdim italijanskim naglaskom, koji je prikazao Visual Fox
3.0. žak su i domaćini bili iznenađeni, pošto ni oni još nisu ni čuli za
to čudo - tip ga je doneo na svom lep topu.
Elem, novosti su što je foks dobio klase, prelazi štogod u OOP vode, što
će instalacija pojesti minimum 10M, što će da ždere još memorije itd. U
skrin dizajneru je moguće otvoriti više prozora odjednom. Pojavljuju se
i neki novi tipovi objekata koje je moguće ubaciti, naprimer tabovi - to
je ono kako se ređa više slika jedna preko druge sa izvučenim 'jahačem'
iznad. Tvrde da će jedna, recimo, šestoslojna maska trošiti manje
memorije nego šest jednoslojnih. Sve skupa, sve redom treba da počne da
liči na Vord 6.0, bez obzira u kom Majkrosoftovom jeziku je rađeno.
Ukida se generator, sav kod se izvodi u trku, čitajući direktno iz .scx
fajla (ovo mi je rekao u hodniku), koji će verovatno sadržati .fxp u
sebi za svaki potreban komad sorsa ubačen u memo polja. Takođe, when,
valid, message i ostalo iz Read naredbe postaju samo događaji koji
okidaju sa višim prioritetom od ostalih - foks postaje vođen događajima,
tako da napokon počinje da se uklapa u Pendžere.
Obećavaju 100% kompatibilnost sa starijim verzijama, jedino što niko ne
spominje DOS verziju. Nezvanično čujem da je neće ni biti, pošto se
ekipa razišla.
CD sa ostalim materijalom koji smo dobili nemam trenutno na čemu da
pregledam, tako da će to sačekati dok ga odnesem nazad u Mađarsku.
Toliko za večeras,
Bue_ Ndragan
baze.podataka.60djelovic,
-> #59, ndragan> u petak (3.2.) sam bio u Pešti na Majkrosoftovoj programerskoj konferenciji
Hvala na nadasve zanimljivom prilogu!
baze.podataka.62max.headroom,
-> #59, ndragan> okidaju sa višim prioritetom od ostalih - foks postaje
> vođen događajima, tako da napokon počinje da se uklapa u
> Pendžere.
Kad već reče Events - mislim da ne bi bilo zgoreg da ostavim nešto
teksta vezano za iste (Fox for Win v2.5). Naravno, u pitanju je inte-
rna organizacija događaja (mislim da postoji i poneki primer koji se
dobija uz instalaciju; nešto u fazonu "evo, ovo vam je event driven,
pa kuj je razumeo - razumeo, kuj nije - bolje da ni ne pokušava" :) ).
baze.podataka.63ndragan,
-> #49, mradic/ mora ništa da unese u neka). Kako da znam da li su neka
/ od tih polja, po napuštanju maske, ostala bez unetih
Hm, a šta te se to tiče ;). Mislim, ako si dozvolio prazna polja, znači
da si ih proglasio legalnim.
Mislim da je najzgodnija funkcija Empty() - vraća .f. ako je parametar
prazan, i to bez obzira na tip parametra (što će biti jako zgodno ako
promeniš strukturu - ne moraš ništa da diraš). Prazne vrednosti su nula,
.f., {} (prazan datum), "" (prazan string), karakter polje ili string
napunjen blenkovima.
/ znam da li je izmenjeno. Postoji li neki način
/ build-in-Fox? ;)
Ako hoćeš na nivou valida u samom polju, onda ReadKey() vraća vrednost
uvećanu za 256 ako je polje menjano. Takođe, vidi funkciju Updated().
baze.podataka.64ndragan,
-> #62, max.headroom/ dobija uz instalaciju; nešto u fazonu "evo, ovo vam je event driven,
/ pa kuj je razumeo - razumeo, kuj nije - bolje da ni ne pokušava" :) ).
Da, a već četiri godine, od v1.00 stoji u helpu "to što je vođenje
događajem bilo uopšte potrebno, stvar je loše osmišljenog programskog
zahteva; a to što je uopšte proradilo, stvar je zadivljujuće
programerske veštine".
Odnosi se na događajem vođene aplikacije u dosadašnjim verzijama foksa.
baze.podataka.65gaston,
Dragi moji Fox-ovci,
evo malog primera koji usput moze i da bude koristan. Radi se o programu
koji u browsu prikazuje sve otvorene radne oblasti i baze u njima. Pritiskom
na Ctrl-W mozete izaci uz biranje nove radne oblasti, ili se pritiskom na Esc
vratiti u trenutnu radnu oblast. Uostalom, program je ionako iskomentarisan
do besvesti.
Najbolje je da ga vezete za neki taster ON KEY LABEL, napravite makro ili
ga stavite na dno Database menija.
Mislim da je ideja zgodna, cak stavise mislim da bi trebalo javnuti preko
COMPUSERVE, GO FOXFORUM, i onima iz Malog Mekanog pa da ovako nesto nadjemo
u Database meniju u nekoj od buducih verzija Fox-a. Uostalom, oni ce znati da
problem rese preko tajnih sistemskih promenljivih, a ne ovako kao ja preko
indeksirane promenljive i privremene baze podataka.
OUP (Onako Uz Put - BTW), ako neko zna dali i kako se moze sadrzaj indeksirane
promenljive prikazati u browsu (kao u Clipper-u) neka nam svima javne.
Program koji sledi je apsolutno u javnom vlasnistvu, mozete mu raditi ama bas
sta god hocete, osim da ga prodajete drugome. Ako vam se svidi, spomenite me
negde kod nekoga (mozda i dobijem posao), ili mi javnite by mail, bicu srecan
ako znam da je nekome koristan. Uostalom, program je ionako zgodan samo za
komandni mod rada.
Sve kritike i sugestije su dobrodosle.
Pozdrav, Vas
Nesa Gaston
Posto max ionako salje vrrrlooo dugacke poruke, mogu valjda i ja.
Evo texta primera:
*:*****************************************************************************
*:
*: Procedure file: E:\FOXPAKET\FINANAL\LISTZONE.PRG
*:
*: System: listzone.prg
*: Author: dipl.ing. informatike Nebojsa Andrejic
*: Copyright (c) 1995, PP Darsi Aleksandrovac, 037/ 751 - 485
*:
*: PROGRAM JE SA DOZVOLOM AUTORA DAT U POTPUNO JAVNO VLASNISTVO.
*: MOZETE GA SLOBODNO MENJATI, KORISTITI U SVOJIM PROGRAMIMA, DAVATI
*: DRUGIMA KORISNICIMA, ALI POTPUNO BESPLATNO !
*:
*: NADAM SE DA CE NEKOME BITI OD KORISTI. AKO BUDE BIO, MOZETE MI JAVITI
*: BY MAIL NA SEZAM, BEOGRAD, USER NAME GASTON. SVE KRITIKE I SUGESTIJE
*: SU APSOLUTNO DOBRODOSLE !
*:
*:*****************************************************************************
*!*****************************************************************************
*!
*! Listanje otvorenih radnih oblasti.
*!
*! Program pregleda sve radne oblasti i podatke o otvorenim bazama smesta
*! u bazu LISTZONE, koju zatim prikazuje u browse prozoru. Pritiskom na
*! Ctrl-W korisnik moze izabrati radnu oblast ili se pritiskom na Esc
*! vratiti u trenutnu radnu oblast.
*!
*! U browse prozoru se prikazuju sledeci podaci:
*! listzone.zonenum Area # - broj radne
oblasti
*! listzone.name DBF name - pravo ime
otvorenog DBF fajla
*! listzone.alias DBF alias - alias pod kojim
je DBF fajl otvoren
*! listzone.index_type Index type - postojeci tipovi
indeksa - CDX i IDX
*! listzone.tag_name Active index - trenutni aktivni
indeks
*! listzone.key Active index key - kljucni izraz
trenutno aktivnog indeksa
*! listzone.for For index expression- indeksni filter aktivnog
indeksa
*!
*! Program je najbolje vezati za neku kombinaciju tastera (kao sto je Ctrl-L),
*! pomocu ON KEY LABEL, napraviti odgovarajuci makro ili ga ubaciti u
*! Database meni.
*!
*! Program je namenjen za koriscenje prvenstveno iz command moda rada
*! FOX-a, mada se moze koristiti i iz programa. Mislim da moze biti
*! jako koristan u fazi testiranja nekog programa, kada je isti prekinut
*! u radu, a otvoreno je dosta radnih oblasti. Tada se lako pomocu ovog
*! programa mozete setati izmedju radnih zona i izabrati neku od njih.
*!
*! Pored informacija o broju radne zone, imenu baze i aliasu, ubacio sam
*! i informaciju o tipovima indeksa koji su vezani za bazu, kao i o aktivnom
*! indeksu, njegovom kljucu i filteru.
*!
*! Program me je sam vukao da dodam i citanje svih tagova iz CDX fajla i
*! njihovo prikazivanje, ali sam mislio da bih time ugnjavio jednostavnost
*! upotrebe programa. Uostalom, to mozete dodati i sami, a ako vas mrzi, eto
*! mene sa resenjem za koji dan.
*!
*! Razlozi za slanje izvornog koda na BBS-ove i davanje programa u javno
*! vlasnistvo su sledeci:
*!
*! 1) Ne mislim da sam otkrio toplu vodu ovom idejom i primerom, ali mislim
*! da ima dosta onih koji pocinju sa FOX-om i ovakav primer im moze
*! biti od koristi.
*!
*! 2) Posto radim (izmedju ostalog) kao profesor informatike u srednjoj skoli,
*! moje pobude su izmedju ostalog i pedagoske prirode: mislim da neko moze
*! nesto korisno odavde nauciti.
*!
*! 3) Kada bih imao pristup na strane sisteme, konkretno na COMPUSERVE, uradio
*! bih jedan GO FOXFORUM i izlozio ovu ideju. Mislim da bi Mali Mekani
*! ovako nesto da ugradi o Database meni u nekoj od sledecih verzija
Fox-a.
*!
*!*****************************************************************************
procedure listzone
* sve promenljive u programu su privatne i pocinju sa lz...
private all like lz*
* polje (indeksirana promenljiva) u koje ce biti smestani podaci o otvorenoj
bazi
dimension lz_array[1, 7]
* trenutna aktivna zona
lz_zone = select(0)
* najveci broj radne oblasti raspolozive za otvaranje baze - do tog broja treba
traziti
lz_end = select(1)
* brojac dodatih radnih zona u polje lz_array
lz_added = 0
for lz_i = 1 to lz_end
select (lz_i)
* dobijanje imena baze otvorene u trenutnoj radnoj oblasti
lz_name = alltrim( dbf(lz_i) )
* ako je ime prazno, idi na sledecu radnu oblast
if empty(lz_name)
loop
endif
* ako je radna oblast koja se ispituje trenutno aktivna,
* onda u broju stavi oznaku
if lz_i == lz_zone
lz_zonenum = "" + alltrim( str(lz_i))
else
lz_zonenum = alltrim( str(lz_i))
endif
* dobijanje samo imena baze iz full path name
lz_name = substr( lz_name, rat("\", lz_name) + 1, len(lz_name) )
lz_name = substr( lz_name, 1, rat(".", lz_name)-1 )
* dobijanje aliasa pod kojim je baza otvorena
lz_alias = alias(lz_i)
* indikator postojanja CDX indeksa
lz_cdx = cdx(1)
* indikator postojanja IDX indeksa
lz_idx = ndx(1)
* davanje vrednosti polju za oznaku postojecih tipova indeksa
do case
case not empty(lz_cdx) and not empty(lz_idx)
lz_it = "CDX/IDX"
case not empty(lz_cdx) and empty(lz_idx)
lz_it = "CDX"
case empty(lz_cdx) and not empty(lz_idx)
lz_it = "IDX"
otherwise
lz_it = "NO CDX/IDX"
endcase
* sys(21) - ime aktivnog indeksa, bilo da je rec o tagu iz CDX ili o IDX
* dobijanje imena trenutno aktivnog indeksa,njegovog kljuca i filtera
if val( sys(21) ) <> 0
lz_tag = tag( val( sys(21) ) )
lz_key = key( val( sys(21) ) )
lz_for = sys(2021, val( sys(21) ) )
else
lz_tag = ""
lz_key = ""
lz_for = ""
endif
* ako ime baze nije prazno, treba smestiti podatke u polje
if not empty( lz_name)
* brojac koliko je vrednosti dodano
lz_added = lz_added + 1
* povecavanje dimenzije polja za 1
* dimension ima vrlo zgodnu osobinu da pri prosirivanje velicine
* polja ne brise prethodni sadrzaj - ovu osobinu treba zato
* sto vise (zlo)upotrebljavati u programima
dimension lz_array[lz_added, 7]
* popunjavanje polja vrednostima
lz_array[lz_added, 1] = lz_zonenum
lz_array[lz_added, 2] = lz_name
lz_array[lz_added, 3] = lz_alias
lz_array[lz_added, 4] = lz_it
lz_array[lz_added, 5] = lz_tag
lz_array[lz_added, 6] = lz_key
lz_array[lz_added, 7] = lz_for
endif
next
* ako je polje ima samo jedan red ...
if alen( lz_array) == 7
* pa jos ako je prvi element tog reda (ime) prazan ...
if empty( lz_array[1,1] )
wait "NEMA OTVORENIH BAZA !" window nowait
select(lz_zone)
release all like lz*
return .t.
endif
endif
* u suprotnom treba kreirati bazu LISTZONE, popuniti je vrednostima i
* prikazati pomocu browse
* Na ovom mestu ne mogu a da ne primetim da bi najbolje bilo kada bi mogli
* prikazati sadrzaj polja lz_array u browsu (kao u Clipper-u)
* ako neko zna da li i kako to moze u Fox-u, neka mi obavezno javi !!!
if file("LISTZONE.DBF")
if used("listzone")
select listzone
else
select 0
use listzone
endif
zap
else
create table listzone ;
( zonenum c(5), ;
name c(8), ;
alias c(10), ;
index_type c(10), ;
tag_name c(10), ;
key c(80), ;
for c(80) )
endif
select listzone
go top
* racunanje broja redova u polju
lz_end = alen( lz_array, 1)
* popunjavanje polja baze vrednostima iz lz_array
for lz_i = 1 to lz_end
append blank
replace listzone.zonenum with lz_array[lz_i, 1],;
listzone.name with lz_array[lz_i, 2],;
listzone.alias with lz_array[lz_i, 3],;
listzone.index_type with lz_array[lz_i, 4],;
listzone.tag_name with lz_array[lz_i, 5],;
listzone.key with lz_array[lz_i, 6],;
listzone.for with lz_array[lz_i, 7]
next
browse fields;
zonenum :h="Area #" ,;
name :h="DBF name" ,;
alias :h="DBF alias",;
index_type :h="Index type" ,;
tag_name :h="Active index",;
key :h="Active index key" ,;
for :h="For index expression" ;
noappend nodelete noedit last;
title "WORKING AREAS LISTING: Ctrl-W choose area, Esc - curent area"
lz_lk = lastkey()
* zona je izabrana samo ako je pregled zavrsen pritiskom na Ctrl-W,
* inace se treba vratiti u predjasnju zonu
if lz_lk == 87 or lz_lk == 23 && Ctrl + malo w ili veliko W
* mozda treba iz broja zone ukloniti znak
lz_zone = iif( at("", listzone.zonenum) > 0, ;
substr(listzone.zonenum, 2, len(listzone.zonenum)), ;
listzone.zonenum )
lz_zone = val(lz_zone)
endif
select listzone
zap
use
* mozete obrisati bazu LISTZONE.DBF, mada ce ako je ostavite program raditi
brze
* erase listzone.dbf
select(lz_zone)
release all like lz*
return .t.
*: EOF: LISTZONE.PRG
baze.podataka.66dr.grba,
-> #65, gaston>>* : BY MAIL NA SEZAM, BEOGRAD, USER NAME GASTON. SVE KRITIKE I SUGESTIJE
>>* : SU APSOLUTNO DOBRODOSLE !
Sugestija: piši u fox grupi (:
baze.podataka.67oper,
Interesuje me spisak svih programa koji mogu da rade sa Paradox
4.0 formatom. Pošto nemam iskustva u ovoj oblasti, pretpostavljam
da može Clipper preko onih RDD-ova. Da li može Fox, Access i sl.?
Unapred zahvalan...
Pz Pera...
baze.podataka.68nbatocanin,
-> #67, oper> Interesuje me spisak svih programa koji mogu da rade sa
> Paradox 4.0 formatom.
Clipper 5.2 ima RDD kompatibilan sa verzijom 3.5.
baze.podataka.69ndragan,
-> #65, gaston/ OUP (Onako Uz Put - BTW), ako neko zna dali i kako se moze sadrzaj
/ indeksirane promenljive prikazati u browsu (kao u Clipper-u) neka nam
/ svima javne.
Onako na prvu ruku, iz glave:
Browse Fields ...., ključ=eval(key(1)), ...
Umesto key(1) može key(n) gde se n menja nekom OKL rutinom. Uz polje
može i dodatak, pa bi izgledalo ovako
....ključ=eval(key(1)):h=key(1), ...
da kolona ima stvarni naslov umesto reči "ključ".
BTW, kliper nema brauz naredbu.
baze.podataka.70ndragan,
-> #66, dr.grba/ Sugestija: piši u fox grupi (:
Ima dve, a sve što se tamo pojavi, posle neko traži ovde, tako da su
grupe uspavane.
baze.podataka.71dr.grba,
-> #70, ndragan>> / Sugestija: piši u fox grupi (:
>>
>> Ima dve, a sve što se tamo pojavi, posle neko traži ovde, tako da su
>> grupe uspavane.
Htedoh reći "u fox temi", ali tek sad videh da sam pogrešio.
baze.podataka.72nbatocanin,
-> #69, ndragan> BTW, kliper nema brauz naredbu.
Ima Browse() funkciju, ali je veoma skromna po mogućnostima.
baze.podataka.73ndragan,
Imali smo slučaj pre neki dan, da je jedna selekt naredba u prvoj
verziji radila oko 350 sekundi, pa smo onda malo doterali uslov, pa je
radila 80. I onda primetim da je kolega napisao
...where left(sifra,4)=m.sf1+m.sf2
Pitam koliko mu je dugačka desna strana, kaže 4. Pa koji će ti onaj
left() onda. Kaže, nije siguran da je set exact off. Budi siguran, to je
difolt. I skinemo onaj left, i dobijemo čist izraz po tegu (Rašmor
optimizabilan (joj da me vidi ministar za o.jeziku pa da mi izvuče uši
ispred pet zagrada, ala sam ga i preveo)), tj ovako
.. where sifra=m.sf1+m.sf2
I dobijemo vreme od 0 (nula) sekundi (funkcija seconds() nije promenila
vrednost). Radi se o bazi sa desetak hiljada slogova.
Naravoučenije: kad u helpu kaže _čist_ izraz po tegu, tako i misli.
baze.podataka.74max.headroom,
-> #73, ndragan> Naravoučenije: kad u helpu kaže _čist_ izraz po tegu, tako
> i misli.
:) Eh, da nisam pisao na zadatu temu onol'ko, pa još i da ćutim. Evo
još jedne (naravno, pogrešne) upotrebe SQL SELECT:
... WHERE godine+0 = 10
Šta vredi što je tag "godine", u suštini, ostao vrednosno nepromenjen,
kada blesavi SQL parser nije u stanju to i da dokuči. Ne bi bilo loše
da razvojni tim koji se bavi Rushmore optimizacijom uzme u obzir i
ovakve programerske propuste... te nam prezentira neku vrstu poluinte-
ligentne optimizacije ;)
baze.podataka.76st.pol,
Evo dela pisma, od drugara iz Kanade, mozda nekome bude
interesantan...
>Pre desetak dana sam bio na demonstraciji novog ORACLE-a:
>ORACLE 2000. To je ORACLE koncipiran za personalne racunare.
>Ide na Windows for Workgroups, Windows NT, NetWare, OS/s,
>SCO, Solaris. Postoji verzija za izolovani racunar
>(Personal Oracle - PO) na kojoj mozes da razvijes celu
>aplikaciju i posle, kako oni tvrde, da je vrlo jednostavno
>upload-ujes na bilo koju drugu masinu. Ono sto je posebno
>zanimljivo je da potpuno ista database engine (to je Oracle 7)
>ide na personalnom racunaru i na mainframe-u. Koncepsijski je
>dosta moderan sa objektima uz pomoc kojih pravis aplikaciju
>(slicno ostalim objektnim Windows aplikacijama - Visual C,
>Basic, PowerBuilder). Podrzan je OLE 2.0 tako da mozes lako
>da komuniciras sa drugim Windows aplikacijama i da pristupas
>ORACLU iz Visual Basic-s, C-a ili Access-a. Ono sto je meni
>bio jedan od fascinantnijih delova prezentacije je cena.
>PO kosta 580$ (svi $ su CAN), a do kraja marta imaju promociju
>od 280$. Mrezna verzija kosta 580$ plus 280$ za svaki
>konkurentan pristup (tj. 280 puta maksimalni broj user-a koji
>ce istovremeno da rade na sistemu). Nisam 100% siguran,
>ali vrlo izvesno je da na radnim stanicama koje
>pristupaju mreznom ORACLE-u ti ne treba Personal ORACLE.
>Inace Personal O zahteva 486-cu (moze eventualno i 386
>mada verovatno sa katastrofalnim performansama) sa 4M RAM-a
>(bolje je 8). Planiram da verovatno pazarim PO dok traje
>ova promocija. Problem mi je sto mi je racunar kod kuce
>pun do guse pa moram prvo njega da prosirim (nameravam da
>dodam disk od 1G sto mi sada izgleda enormno,
>ali ce verovatno i to uskoro da bude malo).
>Ovde softver ne cirkulise onako kao u YU, ali ako ti nesto
>treba i malo se potrudis moze sve da se nadje.
Dakle, to je bilo pre desetak dana. Jel' PO stigao u YU,
ili da sacekamo jos 2-3 dana ;)
baze.podataka.77ndragan,
Ako nekom treba da izračuna prvi i poslednji datum prethodnog meseca,
izvolte:
* prvo računamo prvi u sadašnjem mesecu
store date()-day(date())+1 to _mzav
* pa mesec dana pre toga (ovo je Foksova funkcija GoMonth(dExp, nExp),
vraća datum nExp meseci od datuma dExp):
store gomo(_mzav,-1) to _mpoc
* pa dan pre prvog u sadašnjem mesecu
store _mzav-1 to _mzav
A evo i prvog sledećeg ponedeljka (d1), i prve nedelje posle njega (d2).
Ako je danas ponedeljak, dobijate danas; ako vam treba prvi ponedeljak
posle nekog datuma, strpajte taj datum umesto date() u d.
d=date()
store d+(2-dow(d))%7 to d1
store d1+6 to d2
baze.podataka.78jasicp,
-> #5, kum.zoki> Koristim Paradox Engine pa pitaj mozda nesto mogu i da pomognem.
Oformio sam grupu za to. Ako si zainteresovan, reci. Do sada nije
pocela diskusija.
baze.podataka.79kum.zoki,
-> #78, jasicpYou --> Oformio sam grupu za to. Ako si zainteresovan, reci.
You --> Do sada nije pocela diskusija.
Normalno da sam zainteresovan.
baze.podataka.80pirke,
Hi. Zanima me nesto oko accessa-a (tek pocinjem da cunjam po njemu).
- Da li je ikako moguce da napravim neku svoju strukturu podataka
(ono dim array itd...) i da istu snimim u svoj neki_tamo_fajl
pa da to kasnije i ucitavam po potrebi, ili je neophodno da
sve podatke strpam u tabele i tako snimam i koristim? Kako
da napravim u tabeli jednu matricu (array) od npr 3 dimenzije:
0..700,0..7,0..10 i da to tako i snimim i koristim? Izvin'te
ako pitam gluposti, nov sam u ovom polju. Thanx.
Zoran.
baze.podataka.81mmitrovic,
-> #78, jasicpŮ█▀█Ţ Oformio sam grupu za to. Ako si zainteresovan, reci. Do sada nije
Ů█▀█Ţ pocela diskusija.
Stavi i mene.
baze.podataka.82vitez.koja,
-> #81, mmitrovic#=> █▀█Ţ Oformio sam grupu za to. Ako si
#=> █▀█Ţ zainteresovan, reci. Do sada nije Ůpocela
#=> █▀█Ţ diskusija.
#=>
#=> Stavi i mene.
žemu konspiracija? Razgovarajte ovde, u konferenciji.
baze.podataka.83djorzor,
Da li ima neka dobra duša koja bi mogla da napravi
i pošalje program koji bi prikazivao "User name" i
i "Full name" ulogovanog korisnika? Bilo bi jako
lepo kada bi se rezultat prikazivao na "standard output"
jedinici, da bi mogao da bude preusmeren sa ">".
Koliko se sećam, u ovoj temi je bilo diskusije
o programima koji mogu da učitaju podatke iz Novell-ve
baze. Mislim da se primer odnosio na FOX.
Ovo bi mi trebalo kao deo batch fajla koji kopira
standardnu konfiguraciju za W4WG i unosi "User name"
i "Full name" u system.ini. (Namenjeno korisnicima
koji s***u svoju W4WG konfiguraciju i nemaju nekog
stručnog pri ruci.)
Veliko hvala,
baze.podataka.84sines,
Da li neko, nekim slučajem ima foxbase.exe (ili mfoxbase.exe)?
To treba da je dosta matoro, poziva programe sa extenzijom .fox
Datoteke su *.dbf sa indeksima *.idx.
Pozdrav, Siniša.
baze.podataka.85zzk.,
Drugar me zamolio da pitam:
CLARION 3.0 ű
Pri razvoju aplikacije kreirane su tabele u DBF formatu, ali se
po kompajliranju i pokretanju javlja greska u pristupu podacima
(nesto kao nelegalan zahtev).
Kada se tabele urade u nekom drugom formatu (BTRIVE) isto se desava
dok se ne ucita neki njegov fajl menadzer (ili sl.) nakon cega stvar
regularno sljaka.
Pitanje:
Da li i za rad sa DBF podacima treba uraditi nesto slicno (ako
treba sta je to)?
baze.podataka.86dbarbul,
-> #85, zzk.Nije potreban nikakav dodatni program kao u slučaju BTRIEVE drajvera.
Verovatno je greška pri zadavanju neke naredbe ili jezička konstrukcija
u samom programu, čim se greška javlja i pri kompajliranju.
CLIPPER drajver provereno radi bez dodatnih fajl menadžera i sličnih
dodatnih programa ali očigledno ima bag kod ažuriranja indeksa, veoma
je siromašan mogućnostima i slabo se uklapa u koncepciju CLARION-a,
na primer BROWSE praktično ne radi kako treba itd.
Ako želite dodatnu pomoć morate prvo reći o kojoj se tačno verziji
radi (3.004, 3007 ili neko viša) a zatim eventualno poslati deo sumnjivog
koda i više informacija o tome gde se greška javlja.
Dule.
baze.podataka.87eotek,
ms acces 2.0 - for fun & fans only
"pristup" je reklamiran kao kljuc za sve baze, od
malih do velikih, sa narocitim naglaskom na ove druge. istrpeo
sam da radi sporo i na 486/50/8/WD540, ali ovako sto ...
42MB.mdb ima 1 query koji obuhvata podatke u 260
redova i 143 kolone iz ukupno 10 tables. na osnovu tog query
pokusaj da se napravi report. dizajniranje izvestaja tece glatko
i _bez_ ikakvih upozoravajucih poruka. na kraju (posle 143 unosa,
pozicioniranja, cickanja i lickanja):
- preview: "... too complex";
- stampa: "... too complex";
- export to *.dbf: "Can't handle ..."
- autoreport: "_some_ fields are not in the report ..."
(vise od pola :<
- ex to .rtf imp in Word6.1: up to 31 columns only ...
Inace, radi se o bazi koju je napravila jedna amero-institucija,
koja vec nekoliko decenija to radi, savrseno i perfektno.
Sadizam: razbijam u manje baze, exportujem u .dbf, posle cu ih
spojiti, a zna se:
xBase rulez, xrd c:\acces.
baze.podataka.88vcalic,
-> #87, eotek>> "pristup" je reklamiran kao kljuc za sve baze, od
>> malih do velikih, sa narocitim naglaskom na ove druge. istrpeo
>> sam da radi sporo i na 486/50/8/WD540, ali ovako sto ...
Meni ovo što si napisao pre liči na nedostatak memorije ili resursa u
samom Windows-u, nego na neku grešku samo Access-a.
Mada, čuh da unaokolo kruži verzija Access-a (ili MS Office-a) koja
pravi probleme pri kreiranju izveštaja. Možda je to u pitanju?
Vlada
baze.podataka.89eotek,
-> #88, vcalic> Meni ovo sto si napisao pre lici na nedostatak memorije ili
> resursa u samom Windows-u, nego na neku gresku samo Access-a.
ako mu je malo 8MB i 26MB swapa i kada radi kao jedini
task, onda ...
> Mada, cuh da unaokolo kruzi verzija Access-a (ili MS Office-a)
> koja pravi probleme pri kreiranju izvestaja. Mozda je to u
sumnji moze biti, ali sa manjim bazama je radio 'ladno kao
i sa "predmetnom" bazom - kada radim izvestaj iz samo jedne tabele.
tnx anyhow
baze.podataka.90vcalic,
-> #89, eotek>>> Meni ovo sto si napisao pre lici na nedostatak memorije ili
>>> resursa u samom Windows-u, nego na neku gresku samo Access-a.
>> ako mu je malo 8MB i 26MB swapa i kada radi kao jedini
>> task, onda ...
Nisam mislio na nedostatak sistemske memorije, već da "nešto"
particioniše memoriju, krade resurse i slično. Probaj eventualno da pokreneš
i DOS i Win pod nekom clean konfiguracijom (Wfwg 3.11 ostavlja win.cln i
system.cln) pa vidi šta će se desiti.
>>> Mada, cuh da unaokolo kruzi verzija Access-a (ili MS Office-a)
>>> koja pravi probleme pri kreiranju izvestaja. Mozda je to u
>> sumnji moze biti, ali sa manjim bazama je radio 'ladno kao
>> i sa "predmetnom" bazom - kada radim izvestaj iz samo jedne tabele.
>> tnx anyhow
Imao sam onomad jednu ogromnu bazu u rukama (konvertovana iz DBF u
Access) i svakave egzibicije su rađene sa njom, i to prilično brzo (486DX2/66,
8M RAM-a, 16M swap) pa me zato i čudi ovo što si napisao. Access mi je
ostao baš u lepoj uspomeni za razliku od Fox Pro-a...
Vlada
baze.podataka.91eotek,
-> #90, vcalic> particionise memoriju, krade resurse i slicno. Probaj
> eventualno da pokrenes i DOS i Win pod nekom clean
prob'o jos tada - i jok. definitivno se radi o tome da je
upit bio "...to complex" za accessss i nema drugih izgovora.
> Imao sam onomad jednu ogromnu bazu u rukama (konvertovana iz
> DBF u Access) i svakave egzibicije su radene sa njom, i to
hm, rulez ...
mislim da si tu upravo na pravom tragu. access, jelte,
trpa sve i svasta u jednu bazu (fajl), proglasava baze tabletama
i slicne kerefeke. to upucuje na silesiju pointera, a kada
na to dodje i iole slozeniji query (new pointers) i izvestaj
(^ pointers) onda je "...too complex" message - prirodna stvar ?
takav pristup, a i ovo iskustvo, su me sasvim ohladili i od
same misli da bilo sta ozbiljnije trpam u *.mdb.
Inace, ima li ovde hrabrih koji su to uradili, a da to i
nesto duze radi u uslovima profesionalne eksploatacije (i ne
svodi se na ilustrovani telefonski imenik:) ?
> ovo sto si napisao. Access mi je ostao bas u lepoj uspomeni za
> razliku od Fox Pro-a...
ovo "ostao" mi zvuci posthumno, cemu se - sa pijetetom ;)-
pridruzujem.
baze.podataka.92vcalic,
-> #91, eotek>> prob'o jos tada - i jok. definitivno se radi o tome da je
>> upit bio "...to complex" za accessss i nema drugih izgovora.
E, pa, da ga nisam video na delu, možda bi me i ubedio, al' ovako
teško ;)) Sa druge strane, taj Access je jedan od najprodavanijih (jedino se
valjda novi dBase bolje prodaje) a teško da bi to bilo tako da je nepouzdan
kao što ti tvrdiš!
>> Inace, ima li ovde hrabrih koji su to uradili, a da to i
>> nesto duze radi u uslovima profesionalne eksploatacije (i ne
>> svodi se na ilustrovani telefonski imenik:) ?
Nisam se nešto previše petljao sa Access bazama, ali sam ipak često
koristio Access dok sam radio u izvesnoj firmi. E, njihove baze je održavao
jedan lep Clipper programčić, koji je međutim sadržao samo mali deo onoga što
je bilo potrebno. Da bih pare koje su bile namenjene programeru preusmerio u
svoj džep često sam radio izveštaje upravo iz Access-a. Baza je bila
sastavljena od jedne interne tabele, dok su ostale tabele bile zapravo
Attach-ovane DBF baze koje je koristio taj Clipper program. Pošto se Access
sjajno snalazi u takvim okolnostima, bilo je dovoljno da napravim desetak
query-ja koje sam naizmenično koristio, po potrebi. Tako lepo napravim
izveštaj i bačim ga u Word na obradu. Za par minuta su dobijali savršeno
formatiran izlaz na štampaču, sa sve memorandumom, i nikada im nije bilo jasno
kako to radim, jer je njihov Clipper program štampao u običnom text modu, dok
su od mene uvek dobijali izlaz sa TT fontovima ;) Mašina na kojoj sam radio je
bila 386/40 sa 16M RAM-a i na njoj je Access obavljao svoje query-je otprilike
istom brzinom kao i pomenuti Clipper program svoje izveštaje. Kasnije su
provalili Access, pa su hteli da im konvertujem baze i napravim formulare,
upite i izveštaje u Access, ali nisu hteli da plate pa im nisam to uradio.
Možda bi inače dobio odgovor na pitanje.
>> ovo "ostao" mi zvuci posthumno, cemu se - sa pijetetom ;)-
>> pridruzujem.
"Ostao" znači - trenutno ne radim sa bazama. Kada budem radio, gotovo
je sigurno da ću uzeti Access.
Vlada
P.S. E, za one koji mi ne veruju da radim u Wordu 6.0 na 386/SX-32 sa 4M, na
mašini radi i Access 2.0. Kilavo doduše, pogotovo kad se startuju Wizard-i,
ali radi!
baze.podataka.93dr.grba,
-> #91, eotek>> na to dodje i iole slozeniji query (new pointers) i izvestaj
>> (ž pointers) onda je "...too complex" message - prirodna stvar ?
O problemu je pisano više puta, a zanimljiva rasprava postoji u tekstu o
Windows bazama podataka u časopisu PC. Samo malo discipline i razmišljanja
je dovoljno da se izbegnu ovakve situacije.
A propos trpanja svega u jedan MDB, Access nudi sasvim valjan alat za
reparaciju oštećenih datoteka. Stoga, irelevantno je da li je ugrožena
jedna velika MDB ili jedna među mnogim DBF datotekama. "Problem" je samo
pitanje inkrementalnog/diferencijalnog backupa, ako korisnik ima običaj
da ga upražnjava.
baze.podataka.94madamov,
-> #93, dr.grba
> A propos trpanja svega u jedan MDB, Access nudi sasvim valjan alat za
> reparaciju oštećenih datoteka.
Nema samo Access takav pristup da sve trpa u jedan fajl, ja sad to prvi
put čujem na Sezamu. I ovo moje čedo u kojem radim (4th Dimension) tako radi,
doduše trpa u dva fajla koje naziva structure fajl i data fajl. U prvom je, kao
što ime kaže, struktura baze podataka, maske, programski kod i slično, a u
drugom su podaci i indeksi. Moje lično mišljenje je da se takav pristup bira
najviše zbog toga što u tom slučaju broj istovremeno otvorenih tabela ne zavisi
od operativnog sistema računara na kojem se program izvršava, već samo od
maksimalnog broja tabela koje softver dozvoljava da se kreiraju.
baze.podataka.95nbatocanin,
-> #94, madamov> Nema samo Access takav pristup da sve trpa u jedan fajl,
> ja sad to prvi put čujem na Sezamu. I ovo moje čedo u
> kojem radim (4th Dimension) tako radi, doduše trpa u dva
> fajla koje naziva structure fajl i data fajl.
Većina "velikih" baza podataka to radi tako.
baze.podataka.96madamov,
-> #95, nbatocanin
> Većina "velikih" baza podataka to radi tako.
I to sam čuo, čak nedavno, čini me sa na Osmehu, i pročitao, ali nisam imao
prilike da vidim u praksi.
baze.podataka.97eotek,
-> #92, vcalic> svoj dzep cesto sam radio izvestaje upravo iz Access-a. Baza je
> bila sastavljena od jedne interne tabele, dok su ostale tabele
bio sam na putu, zato docnim ...
well, ne uklanja moje sumnje: radi ok sa JEDNOM tabelom,
sto priznaces i nije neki problem, bez obzira na duzinu fajla.
prema ostalom u tvom tekstu mi se cini da je posao
ustvari odradjivao clipper, a access je sluzio vise kao nekakav
crystal reports ??
> gotovo je sigurno da cu uzeti Access.
^^^^^^
;)
baze.podataka.98eotek,
-> #93, dr.grba> O problemu je pisano vise puta, a zanimljiva rasprava postoji u
molio bih za pointer, narocito ako ima i resenja ...
> tekstu o Windows bazama podataka u casopisu PC. Samo malo
"access-ovi upiti predstavljaju svet za sebe" - hm,
moglo bi se i razlicito tumaciti ;)
> discipline i razmisljanja je dovoljno da se izbegnu ovakve
radi se o gotovoj bazi, koju su uradili top-gun prof's.
moja malenkost je htela samo jedan bedast izvestaj na papiru,
- valjda mi za to nisu potrebne visinske pripreme ;)
> inkrementalnog/diferencijalnog backupa, ako korisnik ima obicaj
> da ga upraznjava.
nisam imao prilike (& srece) da upoznam tako dobre
i disciplinovane korisnike PC racunaljki/programa (koji bi
to redovno radili).
baze.podataka.99dragulj,
Zna li neko od Access-aša kako bi se dotičan sistem naterao da radi
client-server, tj. da ne protura mnogo podataka kroz mrežu.
Pretpostavljam da bi to trebalo da bude nekakva sprega sa MS SQL
Server-om ili nečim sličnim, ali to nisam još video, pa ako neko radi
na ovaj način, neka turi ovde utiske.
baze.podataka.100.obj,
-> #99, dragulj> Zna li neko od Access-aša kako bi se dotičan sistem naterao da radi
> client-server, tj. da ne protura mnogo podataka kroz mrežu.
> Pretpostavljam da bi to trebalo da bude nekakva sprega sa MS SQL
> Server-om ili nečim sličnim, ali to nisam još video, pa ako neko
> radi na ovaj način, neka turi ovde utiske.
Treba ti neki SQL server i ODBC drajver za njega. Što se prvog tiče, toga ima
koliko 'oćeš (Microsoft, Oracle, Sybase, Watcom...). ODBC drajveri nisu
problem, pošto se dobijaju uz bilo koji od iole novijih SQL servera. Ako hoćeš
pravu stvar, uzmeš Microsoft BackOffice (Windows NT 3.5 Server + MS SQL Server
+ MS Mail Server + još mnogo toga..).
__
Drink wet cement: get stoned.
baze.podataka.101dragulj,
-> #100, .obj// pravu stvar, uzmeš Microsoft BackOffice (Windows NT 3.5 Server + MS SQL
// Server + MS Mail Server + još mnogo toga..).
Već sam uspeo da nateram Windows NT 3.5 Workstation da radi kao Remote
Access Server, ali samo za jednog korisnika (Advanced Server bi
trebalo da može da radi sa više Remote klijenata istovremeno). Moje
pitanje je da li je ista situacija i sa SUBP (al' sam mu ga dao po
pojmu), odnosno da li je za efikasno upravljanje bazom u
klijent-server maniru potrebno kupovati NT Advanced Server + 32-bitna
verzija MS Access-a + 32-bitni SQL Server, ili se to može organizovati
i sa Workstation verzijom NT-a + SQL Server.
Uzgred, da li postoji i Windows NT 3.5 Server ili si mislio na
Advanced Server? Cifru za Advanced Server sam video u nekom časopisu i
to je oko 600$ što mi je nekako malo ako je to ono što je potrebno da
bi se napravila prava centarlizovana mreža alla Novel Netware.
baze.podataka.102.obj,
-> #101, dragulj> (Advanced Server bi trebalo da može da radi sa više Remote klijenata
> istovremeno).
Može, naravno.
> Moje pitanje je da li je ista situacija i sa SUBP (al' sam mu ga dao po
> pojmu), odnosno da li je za efikasno upravljanje bazom u
> klijent-server maniru potrebno kupovati NT Advanced Server + 32-bitna
> verzija MS Access-a + 32-bitni SQL Server, ili se to može organizovati
> i sa Workstation verzijom NT-a + SQL Server.
Pa, i logično je da Workstation ("radna stanica") verzija nema serverske
mogućnosti NT Server-a. Dakle, ako ti treba server, uzmi Microsoft Windows NT
Server i Microsoft SQL Server (ili jednostavno ceo Microsoft BackOffice).
Access ne mora biti 32-bitan, pošto se on izvršava na nekoj stanici koja preko
ODBC-a i ODBC drajvera šalje komande MS SQL Serveru i uopšte nije bitno dal'
radi u Win16 ili Win32.
> Uzgred, da li postoji i Windows NT 3.5 Server ili si mislio na
> Advanced Server?
U verziji 3.5x, Microsoft koristi ime Windows NT 3.5x Server (bez onog
Advanced, valjda zato što Backward Server ne postoji ;).
Pozdrav,
Obrad
baze.podataka.103vcalic,
-> #101, dragulj>> Uzgred, da li postoji i Windows NT 3.5 Server ili si mislio na
>> Advanced Server? Cifru za Advanced Server sam video u nekom časopisu i
>> to je oko 600$ što mi je nekako malo ako je to ono što je potrebno da
>> bi se napravila prava centarlizovana mreža alla Novel Netware.
Ne postoji stvar koja se zove Windows NT 3.5 Advanced Server ;)
'Advanced' je bio u vreme Windows NT 3.1, u verzijama 3.5 dotični pridev je
nestao :)
Inače, NT 3.5 Server nudi i mnogo više nego Novell Netware, ali...
Nema koristi od zamene Netware server-a NT Server-om, jer je prvenstvena
namena Netware-a da bude file i printer server i u tome je (naročito verzije
3.x) drastično brži od NT-a. NT Server je više namenjen onim potrebama koje su
do sada obavljali razni Unix-i, dakle database server aplikacije,
komunikacioni serveri i ostalo, i u tome je neuporedivo bolji od Netware-a.
Vlada
baze.podataka.104djelovic,
-> #103, vcalic> Inače, NT 3.5 Server nudi i mnogo više nego Novell Netware, ali...
> Nema koristi od zamene Netware server-a NT Server-om, jer je prvenstvena
> namena Netware-a da bude file i printer server i u tome je (naročito verzije
> 3.x) drastično brži od NT-a. NT Server je više namenjen onim potrebama koje
su
> do sada obavljali razni Unix-i, dakle database server aplikacije,
> komunikacioni serveri i ostalo, i u tome je neuporedivo bolji od Netware-a.
Prema merenjima PC mag labaratorija NT 3.5 sa nekakvim patchom za onaj
njegov ludi fajl sistem :) daje praktično iste rezultate kao Netware kada radi
kao file server.