PCPROG.6

25 Sep 1995 - 24 Dec 1999

Topics

  1. algoritmi (449)
  2. baze.podataka (309)
  3. ms.dos (17)
  4. windows (294)
  5. asembler (553)
  6. basic (458)
  7. jezici (42)
  8. pascal (1297)
  9. cccc (522)
  10. cpp (299)
  11. clipper (601)
  12. fox (70)
  13. cavo (14)
  14. delphi (1130)
  15. java (100)
  16. razno (776)
  17. unknown (127)

Messages - clipper

clipper.309 rale.s, -> #308, jolicm
>> Internal error 999 ?????? IE 999 - Attempt to execute invalid code... Mogući uzroci: - Imaš obj-ove iz više verzija -> treba ih svesti na istu - Greška u obj fajlu -> treba rekompajlirati kod - Koristiš verziju biblioteke koja nije prilagođena verziji Clipp-a - Pozivaš u makrou ili bloku koda f-ju koja nije REQUESTED - Sve to piše i u odgovarajućim .ng fajlovima. r.
clipper.310 bstevan, -> #306, dvesic
==>Šta koristiš od spoljnih biblioteka ? ==> ==>Možda neka spoljna biblioteka nije usklađena sa protected mode ==>programima ... Koristim build.bat iz FW19, koji nisam menjao i fivewin.lnk, gde sam probao sa zadnjim redom za biblioteke, program je tutor02.prg-odnosno primer iz FW19. LIB FiveWin,WinApi,ExoSpace,Clipper,Extend,DbfNtx,Terminal,501_520 zatim, LIB FiveWin,WinApi,Clipper,Extend,DbfNtx,Terminal,501_520 i LIB FiveWin,WinApi,Clipper,Extend,DbfNtx,Terminal ali bez rezultata. Probao sam i iz DEFBEGIN-DEFEND, da brišem redove segment, ali i to nije pomoglo. Radi se o Clipper-u 5.3 ---POZDRAV--- ---BSTEVAN---
clipper.311 bulaja, -> #303, mradovic
│Probao sam i sa Blinkerom i ExoSpaceom, ali sve jednostavno │ostaje u text moöu :(, imaä li neku ideju éaäto? └─── Izvinjavam se na zakasnelom odgovoru :), ali da li si naveo LLIBG.LIB u link script-u? Blinker i ExoSpace to ne ubacuju automatski (kao što rade sa standardnim bibliotekama - clipper.lib, extend.lib,..), a ovo ponašanje programa baš liči na taj problem.
clipper.312 mradovic, -> #311, bulaja
> Izvinjavam se na zakasnelom odgovoru :), ali da li si naveo LLIBG.LIB > u link script-u? Blinker i Exospace to ne ubacuju automatski (kao äto Evo konkreno primera: #include "llibg.ch" SET VIDEOMODE TO LLG_VIDEO_VGA_640_480_16 gline(0, 0, 20, 20, 6, LLG_MODE_SET) SET VIDEOMODE TO LLG_VIDEO_TXT Linkovanje: blinker file test lib clipper, extend, llibg Kada se program startuje, ekran se izbriäe (i dalje text mod) i to bi bilo sve ! Jel' treba joä neäto dodati u link script? Ako je verovati NG-u, navedeni LIB-obi su dovoljni. Da situacija bude joä üudnija, poziv gmode() funkcije u cilju dobijanja informacija o video modu, potpuno blokira maäinu. Postoje li neka ograniüenja u vezi video kartice (mislim iskljuüivo na LLIBG.LIB koji se isporuüuje uz Clipper 5.3)? Pozdrav, Mirko.
clipper.313 snemcev, -> #312, mradovic
>> Kada se program startuje, ekran se izbriše (i dalje text mod) >> i to bi bilo sve ! Ne videh nigde pauzu u onom tvom programu. Da se program ne izvrši toliko brzo da ti i ne primetiš da on ode u grafički mod, iscrta liniju i vrati se u tekst mod?
clipper.314 mradovic, -> #313, snemcev
> Ne videh nigde pauzu u onom tvom programu. Da se program ne izvrsi > toliko brzo da ti i ne primetis da on ode u graficki mod, iscrta liniju > i vrati se u tekst mod? Ne, linije koje slede posle poziva gline() se uopste ne izvrsavaju. Pozivi svih funkcija koje rade u grafickom modu ili blokiraju masinu, ili dovode do pucanja programa, sto znaci da do prebacivanja u graficki mod uopste ne dolazi! Pozdrav, Mirko.
clipper.315 nitro,
Programiram u Clipper-u 5.2c i desava mi se da u direktorijumu u kome se nalazi neki moj program sam racunar stvori neki fajl bez ekstenzije i sa nazivom bez ikakvog smisla SFAFGFD i td. i slicno.Jel to Clipper nevalja ili moji programi nevaljaju Ko zna u cemu je problem nek mi ja vi na , bolje na MAIL unapred hvala
clipper.316 sobrenovic, -> #315, nitro
Nista ne brini... :) Programi radjeni u clipper-u povremeno prave upravo pomenute fajlove sa blesavim nazivom od 8 slova bez ekstenzije i to su u stvari temp. fajlovi, nesto nalik virtuelnoj memoriji koju Windows pravi na hard disku. Ti fajlovi gube vaznost (u slucaju clippera!) po izlasku iz programa i mozes ih po kratkom postupku obrisati. Pozdrav, Sasa. P.S. Zna li neko po kom algoritmu clipper formira nazive upravo pomenutih fajlova?
clipper.317 zeljkoj, -> #316, sobrenovic
> P.S. Zna li neko po kom algoritmu clipper formira nazive upravo > pomenutih fajlova? Ne kreira ih Clipper, postoji DOS funkcija za otvaranje fajla sa takvim rnd nazivom. :) Ako treba, mogu da pogledam koja je tačno...
clipper.318 nitro,
hi svim CLIPPOVIMA Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad nije pritisnut taster vec duze vreme .imam funkciju zvezdanog neba ali neznam kako da namestim da se ona aktivira u meniju ili u nekom slicnom delu programa ako nista nije pritisnuto pr.5 min. ko zna nek mi javi na mail ili u conf unapred zahvalan
clipper.319 mmarkovic, -> #317, zeljkoj
> Ne kreira ih Clipper, postoji DOS funkcija za otvaranje fajla > sa takvim rnd nazivom. :) Ako treba, mogu da pogledam koja je tačno... Da. A ako je linkovano blinkerom, fajlovi se zovu $Tnnnnnn
clipper.320 arazumenic, -> #315, nitro
-> Programiram u Clipper-u 5.2c i desava mi se da u direktorijumu -> u kome se nalazi neki moj program sam racunar stvori neki fajl -> bez ekstenzije i sa nazivom bez ikakvog smisla SFAFGFD i td. i -> slicno.Jel to Clipper nevalja ili moji programi nevaljaju A da mu postavis da te fajlove trpa u neki temp direktorijum? Onda, s vremena na vreme obrises ceo temp direktorium.
clipper.321 arazumenic, -> #318, nitro
-> Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad -> nije pritisnut taster vec duze vreme .imam funkciju zvezdanog Imas opisano u nekom od starijih brojeva racunara, a pogledaj malo i po starim konferencijama, i naci ces kako. Ukratko, mora se menjati sam nacin kako Clipper tretira stanje cekanja. Tu postoji jedno jedino inkey(0), i to treba prepraviti u poziv tvoje funkcije koja ce raditi isti posao, ali koja ce ti omoguciti bas ono sto ti zelis.
clipper.322 mmarkovic, -> #318, nitro
> Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad > nije pritisnut taster vec duze vreme .imam funkciju zvezdanog Predefiniši GETSYS.PRG tako da se ne poziva inkey(), nego neka tvoja f-ja koja poziva inkey(). U svojoj f-ji ispituj vreme od zadnjeg pritiska na taster.
clipper.323 cnenad, -> #318, nitro
=> Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad => nije pritisnut taster vec duze vreme .imam funkciju zvezdanog Baš zanimljivo :) jedno vreme su u modi bile baš ovakve stvari u Clipper programima kao i satić, da bi tu ulogu preuzeli rezidentni programčići. Sad kad imamo W95 opet su iste ove stvari u modi jer nije zgodno trpati kao rezidentne satić i screen saver. Kako god bilo mišljenja sam da onome kome je stalo do šminkanja svog programa, treba ovo da ubaci jer ima i korisnika koji ne znaju da instaliraju tj. strpaju rezidentne programe u AUTOEXEC a kamoli da podese njihove parametre. => neba ali neznam kako da namestim da se ona aktivira u meniju ili => ko zna nek mi javi na mail ili u conf Na mail nećeš dobiti jer ima još ljudi koje ovo interesuje pa zato nemoj više kod nekog pitanja pisati tu čuvenu opasku NA MAIL. Ovako ćeš pratiti i konf. i učestvovati u raspravi ili barem naučiti mnogo novih stvari. Clipper-ov sistem menija ne podržava zamenu inkey() tvojom funkcijom pa za takve stvari moraš recimo iskoristiti BuMenu 1.4 i zato ovaj primer ide upravo za BuMenu. Napravićeš svoju funkciju koja će zameniti INKEY() i nju pozivati svugde gde je stavljeno INKEY() (zapravo, ovde ćeš dobiti gotovu funkciju ;) pa je samo iskompajliraj. Dakle, primer vezivanja sa menijem. #include "BUMENU.CH" ... WHILE .T. bu_setinkey( { || NInkey( 0 ) } ) @ 22, 0 PROMPT 'Datoteke' HOTKEY 't' MESSAGE 'UNOS, BRISANJE...' @ 22, 11 PROMPT 'Podešavanja' HOTKEY 'P' MESSAGE 'PARAMETARI ZA RAD PROGRAMA' CLEAR TYPEAHEAD MENU TO ln_Meni DO CASE CASE ln_Meni == 0 ; EXIT CASE ln_Meni == 1 ; Datoteke() ... END CASE END WHILE Evo ti i funkcije koja dalje realizuje skaniranje tastature, aktivira screen saver i slično. Na tebi je da dalje razradiš istu prema svojim potrebama i ugradiš željeni screen saver, satić i slično... - ovaj samo zatamni ekran i čeka na pritisak tastera. STATIC TimeOut := 5 // vreme u sec. nakon kojeg se aktivira screen saver STATIC RunMode :=1 FUNC Ninkey(N) LOCAL Ch DO CASE CASE N == NIL Ch := Inkey () CASE N > 0 DO CASE CASE RunMode == 1 Ch := Inkey (N) END CASE CASE N == 0 DO CASE CASE RunMode == 1 WHILE (Ch := Inkey (TimeOut)) == 0 ln_Cursor := setcursor() setcursor( 0 ) lc_Stari_ekran := savescreen( 0, 0, maxrow() maxcol() ) CLS inkey( 0 ) restscreen( 0, 0, maxrow(), maxcol(), lc_Stari_ekran ) setcursor( ln_Cursor ) END DO END CASE END CASE RETURN( Ch )
clipper.324 pdeze,
Pozdrav! Imam jedan problemcic, a glasi ovako: U jednom dosta glomaznom programu, porebno mi je da se jedna procedura izvrsi svaki put kada korisnik sedne za kompjuter (tj. pritisne taster), kao jedan TSR, pa sam to izveo sa SET KEY 13 TO ... (ENTER, jer je on najcesci), ali to naravno tako ne odgovara svrsi, posto SET KEY ne proverava tastauru vec je cita (tj. destructive read). Znaci proc koji se izvsava pri pritisku na recimo ENTER a ne smeta procedurama koje se tada trebaju izvrsiti. Kako mogu ovo resiti?
clipper.325 livan, -> #324, pdeze
-> Imam jedan problemcic, a glasi ovako: -> U jednom dosta glomaznom programu, porebno mi je da se jedna procedura Nisam siguran da sam najbolje razumeo šta hoćeć, ali probaj ovo: ******************** #include "InKey.ch" PROCEDURE Main() LOCAL GetList:=šć,nBroj:=0, cString:=Space(10) CLEAR SCREEN DO WHILE .T. Ž 10,5 SAY "Unesi broj ..............:" GET nBroj PICT "9999"; WHEN šđđ HotEnter() ć Ž 11,5 SAY "Unesi string.............:" GET cString; WHEN šđđ HotEnter() ć READ IF LastKey()==K_ESC EXIT ENDIF nBroj:=0 cString:=Space(10) ENDDO RETURN PROCEDURE Bilo_sta() /* Ovo bi bila ta tvoja procedura */ LOCAL i:=0 SET KEY K_ENTER TO WHILE i < 3 Tone(200+10*i,1) i++ ENDDO KEYBOARD Chr(K_ENTER) RETURN FUNCTION HotEnter() SET KEY K_ENTER TO Bilo_sta() RETURN .T. ******************* Samo onda moraš za svaki GET da stavljaš ovaj WHEN blok ! Šta ti radi ta procedura kad si je stavio na ENTER ?!?
clipper.326 sasab, -> #319, mmarkovic
> > Ne kreira ih Clipper, postoji DOS funkcija za otvaranje fajla > > sa takvim rnd nazivom. :) Ako treba, mogu da pogledam koja je tačno... > Da. A ako je linkovano blinkerom, fajlovi se zovu $Tnnnnnn ++++++++++++++++++++++++++++ Novelovi temporary fajlovi imaju ovakvo ime. Inače kreira ih DOS f-ja 5Ah (i bez novela, naravno) Function 5Ah (90) Create Unique File ˛ DOS 3.0 Creates a unique filename, then opens that file in the specified directory. On entry: AH 5Ah CX File attribute DS:DX Pointer to path ending in Đ (ASCIIZ string) Returns: DS:DX Pointer to filename (ASCIIZ string) AX Error code, if CF is set Bogi
clipper.327 sasab, -> #320, arazumenic
> A da mu postavis da te fajlove trpa u neki temp direktorijum? > Onda, s vremena na vreme obrises ceo temp direktorium. Ako je program na mreži obavezno temp direktorijum na lokalnom disku. Drastično smanjuje saobraćaj na mreži, što se, jelte, drastično odrazi na brzinu (u pozitivnom smislu naravno). set clipper=//swappath:'c:Đtemp' //temppath:'c:Đtemp' .... Paziti pri tome da na disku ima dovoljno slobodnog prostora. U NG kaže da za temppath (temporary fajlovi prilikom indeksiranja, pakovanja i sortiranja baza) slobodan prostor mora da bude makar dva puta veći od dužine najvećeg indeksa koji se kreira ili baze koja se pakuje/sortira. VM swap fajl u "normalnom" programu retko kad pređe par stotina KB. E sad ako neko pretera sa nizovima... Teorijsko ograničenje je 64MB. Uzgred rečeno, pri regularnom završetku programa ti fajlovi se automatski brišu, pa do gomilanja ne bi trebalo da dođe. Bogi
clipper.328 pdeze, -> #325, livan
> Samo onda moras za svaki GET da stavljas ovaj WHEN blok ! > Sta ti radi ta procedura kad si je stavio na ENTER ?!? Da, a bas to hocu da zaobidjem: modifikaciju svake procedure u kojoj bih pozivao ovu proc koja se aktivizira na ENTER. Zapravo hteo bih da izvrsavanje ovog modula bude nezavisno od bilo koje tekuce procedure. To bi vec zapravo bio TSR, pa vise i nisam siguran da je problem resiv unutar CLIPPERa. Jel' sam u pravu? Inace to (proc) je provera pristiglog e-maila (posto je stvar na mrezi) sa ostalih radnih stanica. Mozda je bolji nacin onda vremenska kontrola (da proverava pristigle poruke u vremenskim intervalima) ?
clipper.329 nenadovic, -> #318, nitro
Imam dosta zanimljiv algoritam za rešavanje ovog problema u READ naredbi. Međutim on ne funkcioniše u menijima. S druge strane nemam nikakav SCREEN SAVER poput tog zvezdanog neba. Pozivam zainteresovane na dalju diskusiju po ovom pitanju.
clipper.330 nenadovic,
Ako ima nekoga ko je radio sa clipper 5.3 i exospace-om, koji neverovatno radi sa extended memorijom i da je uspeo da strpa bilo kakav program da radi efektno na 2 MB nek mi se javi. Uzgred nijedan program koji zahteva puno ext. memorije ne radi kako valja pod windows-om (npr. grafički programi). Funkcija MEMORY() iz programa pod windows-om uopšte ne vidi ext. memoriju, koliko god da je ima. Zna li neko kako se ovo sređuje.
clipper.331 mmarkovic, -> #326, sasab
>> Da. A ako je linkovano blinkerom, fajlovi se zovu $Tnnnnnn > Novelovi temporary fajlovi imaju ovakvo ime. Tačno, greška... nije zbog blinkera...
clipper.332 cnenad, -> #327, sasab
=> set clipper=//swappath:'c:Đtemp' //temppath:'c:Đtemp' .... => => Paziti pri tome da na disku ima dovoljno slobodnog prostora. U NG Da li je moguće strpati u BLINKER EXECUTABLE CLIPPER direktivu za TEMP direktorijum koja se odnosi na deklarisanu TEMP enviroment promenljivu u AUTOEXEC.BAT datoteci. Znači nešto poput: BLI EXE CLI //TEMPPATH:%TEMP% Znači, ovo bi bilo slično SET CLIPPER==//temppath s time što ja ne moram da razmišljam gde je kome TEMP dir. osim ako SET TEMP ne postoji u AUTOEXEC-u ?
clipper.333 sobrenovic,
HELP HELP HELP HELP HELP HELP Jedan od (mojih) instaliranih programa povremeno (ne uvek na istim mestima ali uvek u toku pisanja/izmena na disku ili azuriranja indeksa) javi CORRUPTION DETECTED. Znam sta to znaci, ali ne znam zasto. Svi ostali programi rade ok, windows radio ok... Ploca je 386SX, 4 Mb RAM, disk 520 Mb itd. Clipper je, mislim, 5.2c. Da nije bag u clipper-u? Datoteke izgledaju sasvim normalno a, uz put, ni jedna nema vise od 1500 slogova. Bug inside? Yes.
clipper.334 nitro,
HI svim CLIPOVIMA Jel bi neko mogao da mi napise sta je sve potrebno da napravim program za PP na veliko i kako se radi to njihovo knjigovodstvo i kakvi izvodi se tu prave . Ili najbolje ako neko vec ima neki program da mi da da pogledam samo kako to izgleda sa korisnicke strane ,a ja cu po uzoru na taj program napraviti slican program za PP na veliko Unapred zahvalan svakom ko nesto uradi po ovom pitanju pozdrav, Vesko
clipper.335 nitro,
HI RESIO SAM ONO SA ZVEZDANIM NEBOM evo kako potreban vam ce CA-TOOL biblioteka CT.lib primer Set Key K_F12 To Scr_Saver() // pozivanje zvezdanog neba sa tasterom F12 KEYSEC(K_F12,Br_Secundi,-1,.T.) // Ceka broj sekundi i ako nije nista pritisnuto simulira pritisak taster F12 PROC Scr_Saver Set Key K_F12 To KEYSEC() ........ I DALJE SE NALAZI ZV.NEBO ........ RETURN
clipper.336 whitie, -> #328, pdeze
> Inace to (proc) je provera pristiglog e-maila sa ostalih radnih stanica. Provera? Ako u mreznom selu ne naredis drugacije, poruka ce ti uleteti u svaki kliper program. Ako ti je poruka namenjena programu a ne korisniku ( simuliranje semafora, neki specificni trigeri po slogovima, obrada rifre- sa ... ), onda svakako koristis neku od biblioteka za rad na mrezi. Sam kliper je tu dosta tanak. Ja koristim ne tako populare Ca-Cliper Tools i tu postoji NNETMSGKEY() koji u stanju cekanja imitira SET KEY. Poruku u bekgraundu primi kliper, a dalju obradu poruke pristigle u bafer radi tvoja proc. > To bi vec zapravo bio TSR i nisam siguran da je problem resiv unutar CLIPPERa Da to je TSR. Preseca se jedan interapt. Sto te to muci. Cisto programiraj i ne brini... previse ;-) ! Dzaranje po mrezi i video memoriji graficke kar- tice, setanje po ext memoriji i sl. uopste nisu elegantne i lake rabote. Al' su zato slatke. A ko voli lepe stvari mora se navici na likru u carapama. ;-) Bljak. :-(((( ko ih izmisli ...
clipper.337 livan, -> #328, pdeze
-> To bi vec zapravo bio TSR, pa vise i nisam siguran da je problem resiv -> unutar CLIPPERa. Jel' sam u pravu? Mislim da je bolje da to uradiš u Clipperu nego da upetljavaš nekakve TSR-ove. Pogledaj kako je to Batoćanin rešio. Ima članak o tome u majskom broju PC PRESS-a. Nisam analizirao njegovo rešenje, ali verovatno ti može pomoći.
clipper.338 mr.cikila,
Hi! Molim vas da mi odgovorita na ovo pitanje. Razvijam neku aplikaciju te su mi default clipper boje dosadile. Uz pomoc Funky-a, sam procitao da mogu da menjam boje u opsegu od 200.000 i kusur. E sada kako to uraditi da recimo kada dam SetColor('N/RB') u mom listungu ne dobijem crvenu na nekoj roze podlozi, vec neku boju na nekoj boji koju sam ja unapred definisao sa r,g i b komponentom. Pomalo ni je hitno, pa ko zna neka nakaci. Every best!
clipper.339 nenadovic, -> #338, mr.cikila
ne znam koju verziju koristiš. u 5.3 sa grafikom postoji prosta naredba GSETPAL koja svakoj od 16 boja daje određene RGB karakteristike. za ranije verzije mislim da se problem može rešiti preko CLIPPER TOOLS biblioteke
clipper.340 sasab, -> #332, cnenad
> Da li je moguće strpati u BLINKER EXECUTABLE CLIPPER direktivu > za TEMP direktorijum koja se odnosi na deklarisanu TEMP > enviroment promenljivu u AUTOEXEC.BAT datoteci. Znači nešto > poput: BLI EXE CLI //TEMPPATH:%TEMP% Ovo ne može, jer se %TEMP% u toku linkovanja razvija (evaluira), tj. u exe će biti upisan tekući sadržaj environment promenljive TEMP. Znači ako si imao set temp=c:Đtrtmrt blinker fi myapp bli exe clipper //temppath:%temp% prilikom izvršavanja aplikacije tražiće se direktorijum c:Đtrtmrt, bez obzira na šta trenutno ukazivala prom TEMP. > Znači, ovo bi bilo slično SET CLIPPER==//temppath s time što > ja ne moram da razmišljam gde je kome TEMP dir. osim ako SET > TEMP ne postoji u AUTOEXEC-u ? A da aplikaciju startuješ batch fajlom myapp //swappath:%temp% //temppath:%temp% .... Samo pazi, ako direktorijum na koji ukazuje swappath ne postoji, pozdraviće te Internal Error 5311 - VMM unable to create swap file. Za temppath Internal Error 4424 - Temp file creation error. To se neće javiti odmah po startovanju aplikacije nego tek (i ako) zatreba swap ili temp fajl. Bogi
clipper.341 dvesic, -> #333, sobrenovic
> Jedan od (mojih) instaliranih programa povremeno (ne uvek na istim > mestima ali uvek u toku pisanja/izmena na disku ili azuriranja > indeksa) javi CORRUPTION DETECTED. Znam sta to znaci, ali ne znam > zasto. Svi ostali programi rade ok, windows radio ok... Ploca je Koji RDD, koji indeksi ? Da li na mestu gde radiš izmenu sloga stoji aktivan neki indeks i da li menjaš po ključu tog indeksa ?. Generalna je preporuka da kada se radi Replace po polju koje ulazi u aktivni indeks, uradite jedno Set Order To 0, Replace pa vratite indeks Dodaj još koju informaciju za detaljniji pregled.
clipper.342 cnenad, -> #340, sasab
=> Ovo ne može, jer se %TEMP% u toku linkovanja razvija (evaluira), Pretpostavio sam da je tako, ali me mrzelo O:) da proveravam. => A da aplikaciju startuješ batch fajlom Izvodljivo je samo u nekim situacijama jer se ponekad programu prosleđuju argumenti sa komandne linije.
clipper.343 mmarkovic, -> #333, sobrenovic
> Jedan od (mojih) instaliranih programa povremeno (ne uvek na > istim mestima ali uvek u toku pisanja/izmena na disku ili > azuriranja indeksa) javi CORRUPTION DETECTED. Ova greška obično znači da na nekom mestu nisi otvorio sve indeksne fajlove, a dodavao si slogove. "Centralizuj" otvaranje fajlova tako da ne možeš da zaboraviš neki... > Clipper je, mislim, 5.2c. Da nije bag u clipper-u? Možda, ali teško. Prelazi pod hitno na 5.2e. Ovaj bag mi ne deluje da je do Clippera, ali ima drugih... > Datoteke izgledaju sasvim normalno a, uz put, ni jedna nema vise od 1500 > slogova. .dbf da, ali neki .ntx (ili šta već koristiš) nije... A kad iz DBU-a otvoriš isti .dbf i sve pripadajuće indexe, javlja li se greška? Ako je moja pretpostavka dobra, trebalo bi pri kretanju kroz browse ili kod seek...
clipper.344 mmarkovic, -> #342, cnenad
> Izvodljivo je samo u nekim situacijama jer se ponekad programu > prosleđuju argumenti sa komandne linije. Nema veze, napravi ovako APP.BAT: @echo off myapp %1 %2 %3 %4 %5 //swappath:%temp% //temppath:%temp% Uopšte ne smeta ako ima manje od 5 parametara. Teraj dalje ako treba.
clipper.345 cnenad, -> #344, mmarkovic
=> myapp %1 %2 %3 %4 %5 //swappath:%temp% //temppath:%temp% Pazi, stvarno radi :) Mislio sam da će problem napraviti deo mog programa koji kontroliše šta je uneto kao prekidač ali je izgleda Clipper bacio negde u nebesa ono //info ili šta si ti naveo gore :)
clipper.346 mr.cikila,
Hi! Posle celih pet godina rada sa klipetom, resih da komplet prepravim razne I/O,meni,... funkcije, pa stigoh do generisanja izvestaja. Intresuje me kako da automatizujem pravljenje odgovarajucih formi, tj. da ne vezujem za svaki pregled po jednu proceduru za stampanje, a ne izgleda mi dovoljno elegantno da izvestaj stampam u txt fajl koji cu prvo da prikazem na ekranu(sa svim kontrolnim kodovima za bold,...), pa zatim da stampam na stampacu. Na pamet mi pade neka proc. koja u zavisnosti od oa se on seta. Intresovalo bi me kako bi se to radilo sa bazom od cirka 20000 stavki, tj. brzina. Znam da je naporno, ali udf se ne rade tako cesto. Bye!
clipper.348 nitro,
HI svim Clipovima Dali neko zna kako u Clipper programima da uvacim da se izvrsava neka od mojih funkcija a da program nastavi dalje sa radom da se neka pozvana funkcija izvrsava sve vreme rada programa . I kako da namestim zvuk da program odsvira dobrodoslicu a da neceka da se zavrsi muzika vec da nastavi sa radom a muzika kad se zavrsi zavrsi . Nadm se da ste razumeli sta sam hteo da kazem , ako nisam ponovicu ponovo unapred hvala svakom ko zna nesto sto pomaze Pozdrav , Vesko
clipper.349 sasab, -> #342, cnenad
> => A da aplikaciju startuješ batch fajlom > > Izvodljivo je samo u nekim situacijama jer se ponekad programu > prosleđuju argumenti sa komandne linije. myapp %1 %2 %3 %4 %5 %6 %7 .... //swappath:%temp% //temppath:%temp% .... ili ako postoji 4DOS/NDOS myapp %& //swappath:%temp% //temppath:%temp% .... Argumenti sa prefiksom // su iz programa nevidljivi. Proc Main(cP1) ? cP1 quit pozvan sa myapp //trtmrt daće NIL Bogi
clipper.350 mr.cikila, -> #339, nenadovic
Hi! Mora da mi je promakla ta naredba iz clp-a, ali posto sam vec sve razvio, onda je sada vec kasno. Inace imao sam jedan previd, te se izvinjavam svima koji su izgubili vreme citajuci moju poruku, naime u ja nisam uopste ulinkovao fajl koji sadrzi program za inicijalizaciju boja, a nisam poziv procedure nisam izveo, te nije ni cudo sto prg. nije radio :)) U svakom slucaju, hvala jod jednom. Every best!
clipper.351 mr.cikila,
Hi! Da li ste primetili ovo. Clp 5.3+Blinker 3.1+Funcky Maska karikirano izgleda ovako: ┌───────────────────────────────────────────── │ Sifra ________ Opis _____________________ .... I sta se desava? Kada sam na prvom polju 'Sifra' sve je Ok. Cim stisnem Enter, i predjem na polje 'Opis', brise mi se slovo O, te ostaje 'pis' :))). Intresuje me da li neko zna, zasto se ovo dogadja, i postoji li mogucnost da se to zaobidje, jer sam ostavio 4 polja razmaka izmedju zavrsetka get-a za sifru i Opis-a. Every best! P.S. Da li je slucajno menjao getsys.prg koji se dobija uz clp5.3, tako da u vecim getovima, umesto space-a se pojave male boginje (tako od miloste zovem one tackice, koje popunjavaju tu prazninu, cek i u "najobicnijem" Norton Commanderu!)
clipper.352 dr.grba,
Six 3 Eval za Clipper 5.2, preneto sa PRO-a po želji mog druga Peacocka, koji se pati u kontaktu sa predmetnim sistemom. Kolega modulatore, daj nalog da se prenese u direktorijum. six3eval.zip
clipper.354 goxx,
da li bi neko mogao da okaci inkey.ch iz poslednje verizje clipper-a? hitno mi je potreban, a ne mogu da samo zbog njega skidam arhivu sa sezama. Goran
clipper.355 tomil, -> #354, goxx
> da li bi neko mogao da okaci inkey.ch iz poslednje verizje > clipper-a? Evo za verziju 5.2e. inkey52e.zip
clipper.356 goxx, -> #355, tomil
puno hvala za inkey.ch Goran
clipper.357 nenadovic, -> #351, mr.cikila
proveri picture za polje sifra, negde ti se u ~itanju menja du`ina `iveo clipper, dole fox !!
clipper.358 nenadovic,
Narode zna li neko gde da na|em standard ili professional verziju LLIBG za clipper? 'o}u grafiku !
clipper.359 dr.grba,
Za mog nestrpljivog prijatelja Peacocka i za sezamovsku populaciju, Blinker 3.3 Update, via SezamPro. bli330en.zip
clipper.360 tvucko, -> #358, nenadovic
EditsofT , 21000 Novi Sad, Vojvodjanskih brigada 7/XIII Tel. (021) 29-857
clipper.361 stameni,
Interesuju me "lične karte" Clippera 5.2 i starijih verzija, odnosno koliko su veliki i kakav im je hardver potreban.
clipper.362 kamioni,
Interesuje me kako u Clipperu 5.3 da napravim mogucnost da vidim slike PCX ili nekog drugog formata, ali da ne koristim one fajlove koji se nalaze na Sezamu jer traze registraciju LIB-a. Unapred zahvalan.
clipper.363 mmarkovic, -> #361, stameni
> Interesuju me "lične karte" Clippera 5.2 i starijih verzija, > odnosno koliko su veliki i kakav im je hardver potreban. Najnovija verzija je 5.2e (ima i 5.3, ali pitaš za 5.2), sasvim se udobno radi na 386DX-40MHz sa 2-4 MB RAM-a. Obavezno uzmi i BLINKER linker i SIX biblioteku... Aplikacije takođe odlično rade na ovoj platformi, mada može čak i skromnija. Instalacija ide na 3 x 1.44 diskete. P.S. Zanemari starije verzije (eventualno može 5.01a), i ovo je već pregaženo...
clipper.364 cnenad, -> #363, mmarkovic
=> Aplikacije takođe odlično rade na ovoj platformi, mada može čak i => skromnija. Ipak je na 286 mnogo sporo pa treba izbegavati. Ako je još disk stariji, pa makina ima samo 1 Mb, ma treba zaboraviti. => P.S. Zanemari starije verzije (eventualno može 5.01a), Najbolja je varijanta koju si opisao: 5.2 + patch na 5.2e Blinker 3.2 Six RDD 2 + patch(evi)
clipper.365 arazumenic, -> #363, mmarkovic
-> Najnovija verzija je 5.2e (ima i 5.3, ali pitas za 5.2), -> sasvim se udobno radi na 386DX-40MHz sa 2-4 MB RAM-a. Sasvim udobno radi i na 286 sa 1Mb RAM-a. -> Obavezno uzmi i BLINKER linker i SIX biblioteku... Zavisi. Ako ne treba da radi u protected modu, onda je (po meni) ipak bolji rtlink koji stize uz sam Clipper.
clipper.366 mmarkovic, -> #365, arazumenic
> -> Obavezno uzmi i BLINKER linker i SIX biblioteku... > Zavisi. Ako ne treba da radi u protected modu, onda je (po > meni) ipak bolji rtlink koji stize uz sam Clipper. BLINKER _ne znači_ obavezno protected mod. Preporučio sam ga zbog inkrementalnog linkovanja, brzine! Ako je bitna veličina EXE-a, onda je RTLINK u PLL modu bolji...
clipper.367 arazumenic, -> #366, mmarkovic
-> BLINKER _ne znaci_ obavezno protected mod. Preporucio sam ga -> zbog inkrementalnog linkovanja, brzine! Naravno da blinker ne znaci obavezno protected mod. Ja sam govorio o izvrsnim verzijama programa a ne razvojnim. Za razvoj je blinker neuporedivo bolji. Takodje ako je ciljni racunar 386 sa 4 MB memorije, ili bolji, onda je opet blinker zbog protected moda u prednosti. Ali, s obzirom da se i dan danas koriste 286 i 386SX racunari sa 1-2MB RAM-a, onda je tu bolji rtlink. -> Ako je bitna velicina EXE-a, onda je RTLINK u PLL modu bolji... PLL nisam u nikada koristio, osim kada sam ga probao da vidim kako radi. Nesto mi se tu nije svidelo, ali sada vise ne znam sta.
clipper.368 mmarkovic, -> #367, arazumenic
> Naravno da blinker ne znaci obavezno protected mod. Učinilo mi se da si to rekao i da bi čovek tako mogao da shvati. >-> Ako je bitna velicina EXE-a, onda je RTLINK u PLL modu bolji... > PLL nisam u nikada koristio, osim kada sam ga probao da vidim kako radi. > Nesto mi se tu nije svidelo, ali sada vise ne znam sta. Za RTLINK u PLL modu: Mogle su da ti se ne svide sledeće stvari: 1. Kad god izvršiš update clippera, stari programi ne rade do kompajliranja i linkovanja sa novoizgrađenom .PLL bibliotekom 2. Takav EXE traži nešto više RAM-a pošto su u PLL-u i neke "višak" stvari za konkretan program 3. Obzirom da u RAM-u ima i nepotrebnih stvari, sigurno je da program radi sporije nego što bi trebalo (mada ovo nisam merio...) Mogle su da ti se svide sledeće stvari (u PLL modu): 1. _Mnogo_ brže linkovanje... 2. _Mnogo_ manji EXE...
clipper.369 arazumenic, -> #368, mmarkovic
-> 1. Kad god izvrsis update clippera, stari programi ne rade -> do kompajliranja i linkovanja sa novoizgradenom .PLL bibliotekom BINGO! To je to. Upravo mi se to desilo, i zbog toga sam ga i batalio.
clipper.370 bokir,
Ima li novosti o Six-u za Clipper 5.3?
clipper.371 bokir,
Kako da u protected mode programu dobijem moju funkciju za obradu grešaka, a ne "Protection Error". ErrorBlock() mi radi samo u real modu. Koristim Clipper 5.2e + Blinker 3.3
clipper.372 arazumenic, -> #368, mmarkovic
-> 1. Kad god izvrsis update clippera, stari programi ne rade -> do kompajliranja i linkovanja sa novoizgradenom .PLL bibliotekom BINGO! To je to. Upravo mi se to desilo, i zbog toga sam ga i batalio.
clipper.373 dvesic, -> #367, arazumenic
> ili bolji, onda je opet blinker zbog protected moda u prednosti. > Ali, s obzirom da se i dan danas koriste 286 i 386SX racunari sa > 1-2MB RAM-a, onda je tu bolji rtlink. Zašto ? Ako može malo detaljnije ...
clipper.374 bokir,
Ima li neko podršku za srpski jezik za Six 2.03?
clipper.375 arazumenic, -> #373, dvesic
-> Zasto ? -> -> Ako moze malo detaljnije ... Onaj famozni VMIF, koji se mnogo cesce javlja sa blinkerom nego sa rtlinkom.
clipper.376 tomil,
Šta znači greška: Unrecoverable error 650: Processor stack fault ? Nije opisano u NG. Clipper 5.2e + Blinker 3.1, eksterna biblioteka Artful Gold.
clipper.377 mvincic, -> #376, tomil
> Šta znači greška: > > Unrecoverable error 650: Processor stack fault ? Ova poruka se javlja ako postoji greška u Clipper sistemu za obradu run time grešaka ErrorHandler (u Errorsys.prg) . U situaciji kad ti se javi prva greška, automatski se poziva ErrorHandler, koji i sam ima grešku, pa rekurzivno poziva samog sebe, dok ga konačno ne izbaci poruka processor stack fault.
clipper.378 sasab,
--- Odgovor na baze.podataka.167, mmarkovic >> Clipper, Fox i slične alatke šibaju kroz mrežu celu tabelu >> (DBF i indeksne fajlove), pa se onda ista na radnoj stanici >> pretražuje i tek onda sabiraju vrednosti polja. > > Samo u slučaju loše napisanih obrada-selekcija sa upotrebom > FOR klauzule (ili SET FILTER). Ako koristiš neki optimizator > upita (SIX RDD sa MachSIX, Comix), čak ni to. Onda FOR u > Clipperu postaje jednako efikasan kao WHERE u SQL-u. Dakle, > šalju se stvarno samo slogovi koji ispunjavaju uslov, > analizirajući indekse. Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz novel mrežu ide cela tabela. Optimizacija, filtriranje, scope... sve se to radi u lokalu. Za filtriranje direktno na serveru ti treba neki NLM (verovatno onaj koga tražiš pitaj boga od kada :). --- Odgovor na baze.podataka.183, dvesic > Nema tu neke magije, MachSix ili Comix koristi dostupne > informacije o postojećim indeksima nad tabelom i pokušava da > suzi broj slogova koe treba obraditi. Ali se taj pokušaj vrši lokalno. Sa servera se opet dovlači cela tabela. Bogi
clipper.379 mmarkovic, -> #378, sasab
> Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz > novel mrežu ide cela tabela. Optimizacija, filtriranje, > scope... sve se to radi u lokalu. Za filtriranje direktno na > serveru ti treba neki NLM (verovatno onaj koga tražiš pitaj > boga od kada :). Nisi u pravu, a zbog skepticizma imam utisak da nisi ni probao. ;) I ja sam bio skeptik, ali proba me je razuverila. Analizom indeksa, a u indeksu samo jedno-dva-tri polja (pa je mnogo manji) optimizator dolazi do brojeva slogova, pa dovlači samo njih. Taj NLM može da bude strašno efikasan kada se od njega zahteva, recimo, indeksiranje. Obavlja se na "lokalnom" disku (naravno, sa stanovišta servera). Filteri i uslovne naredbe, takođe mogu da budu efikasnije, ali ne verujem baš toliko. Zato se i nisam tako mnogo trudio da nabavim NLM. Ozbiljni Clipper programeri nikada nisu ni koristili filtere i FOR klauzule. Scope sam realizovao custom skiperima u Tbrowse objektima. Zato prosto linkovanje i ne daje rezultate kada su programi pisani tako da ne računaju na ove naredbe. Ali! Kada računaš na ove osobine, rezultati umeju da budu fenomenalni. > Ali se taj pokušaj vrši lokalno. Sa servera se opet dovlači cela tabela. Kao što rekoh, jok mori! P.S. Sećaš se daaavne diskusije na niškom BBS-u Tangram? Six-MachSix kao da su napisali po mojim željama! Ma, ko li im je javio?!? ;)))
clipper.380 whitie, -> #378, sasab
>>> Clipper, Fox i slicne alatke sibaju kroz mrezu celu tabelu >>> (DBF i indeksne fajlove), pa se onda ista na radnoj stanici >>> pretrazuje i tek onda sabiraju vrednosti polja. >> ... > Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz > novel mrezu ide cela tabela. Optimizacija, filtriranje, > scope... sve se to radi u lokalu. :-) Moze biti, mada, neces mi verovati, ta ista cela tabela kroz eternet proleti 100 puta brze kada je ukljucen indeks. :-) Da ne dokazujemo nesto sto je jasno. Kroz mrezu ide ceo indeksni fajl, a dbf i ostali indeksi samo ono sto ti treba.
clipper.381 madamov, -> #378, sasab
> Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz > novel mrežu ide cela tabela. Optimizacija, filtriranje, scope... > sve se to radi u lokalu. Uze mi reč, tj. pitanje, sa tastature. Otud i moje pitanje u temi baze.podataka da li se nešto mora instalirati i na serveru.
clipper.382 madamov, -> #379, mmarkovic
> Analizom indeksa, a u indeksu samo jedno-dva-tri polja (pa je mnogo > manji) optimizator dolazi do brojeva slogova, pa dovlači samo njih. Znači on interno, bez pomoći servera, pošto dovuče ceo indeksni fajl preko mreže, vrši sam seek-ovanje po fajlu tabele kojeg normalno otvori kao i svaki drugi fajl sa mrežnog diska? Novell, pretpostavljam, ima neku komandu s kojom se ovo može optimizovati da razlike u brzini budu primetne i na manjim fajlovima? Ovakva tehnika ima rezultate na velikim tabelama (mada je onda i indeksni fajl velik, a njega mora celog da dovuče na radnu stanicu da bi obavio pretraživanje), na malim je to priličan overhead, što bi rekli anglosaksonci.
clipper.383 madamov, -> #380, whitie
> Kroz mrezu ide ceo indeksni fajl, a dbf i ostali indeksi samo ono sto ti treba. Što će reći da čim upotrebiš pretraživanje po polju koje nije indeksirano, eto tebi cele tabele preko mreže na radnu stanicu da ona izvrši pretraživanje.
clipper.384 mmarkovic, -> #380, whitie
> Da ne dokazujemo nesto sto je jasno. Kroz mrezu ide ceo > indeksni fajl, a dbf i ostali indeksi samo ono sto ti treba. Ma čak ni on! Idu samo slogovi koji ispunjavaju uslov ako je ključ indexa pogodan. Naravno, paziš šta ti je ključ i kako postavljaš uslove...
clipper.385 mmarkovic, -> #382, madamov
> Ovakva tehnika ima rezultate na velikim tabelama (mada je onda i > indeksni fajl velik, a njega mora celog da dovuče na radnu > stanicu da bi obavio pretraživanje), ... Ma, odakle vam ideja da kopira ceo indeksni fajl na radnu stanicu?!? Indeksni fajl je binarno stablo, pristup fajlovima je random, nema nikakve potrebe da se dovlači ceo indeksni fajl. Clipper mrežni disk vidi potpuno isto kao lokalni, samo u današnjim uslovima sporiji. Lockovi su mogući i na lokalnom disku (DOS SHARE), a Clipper i NetWare poštuju DOS pozive. Obaviću sutra experiment sa recimo, 100.000 slogova i rezultatima.
clipper.386 mmarkovic, -> #383, madamov
> Što će reći da čim upotrebiš pretraživanje po polju koje > nije indeksirano, eto tebi cele tabele preko mreže na > radnu stanicu da ona izvrši pretraživanje. Ovo je tačno. A gde bi moglo drugačije?
clipper.387 whitie, -> #383, madamov
>> Kroz mrezu ide ceo indeksni fajl, > > Sto ce reci da cim upotrebis pretrazivanje po polju koje nije > indeksirano, eto tebi cele tabele preko mreze na radnu stanicu Prvo,- scope komande ce u tom slucaju izazvati gresku i prekid pro- grama, pa na stanicu ne stize nista :-) . Drugo,- ovako se nesto radi ili kad neznas da organizujes podatke, ili kad ti je to pretrazivanje potrebno jednom u sto godina. U svim drugim slucajevima indeks postoji. I trece,- u realnim uslovima ( transakcije, semafori, provera prava prisustva, formirani pogledi, medjuserverna saradnja, miroring ... ) ovaj ce zahtev zamrznuti svaki DB server ma kako se on zvao ...
clipper.388 whitie, -> #384, mmarkovic
>> Kroz mrezu ide ceo indeksni fajl, > > Ma cak ni on! Ma jasno. Htedoh reci da se DBF fajl 'ubode' tacno u potreban slog, a za indeks treba da se prosetas po 'drvcetu' da ubodes ono sto ti treba. Ako si vec na pravom mestu nema mrdanja.
clipper.389 firus, -> #385, mmarkovic
> Indeksni fajl je binarno stablo, pristup fajlovima je random, > nema nikakve potrebe da se dovlaci ceo indeksni fajl. BTW, ne bih smeo da se zakunem (nikada nisam koristio doticni), al' verujem da je _i_ kod Clipper-a, kao kod 99% ostalih DBMS-a za PC (ako ih smem tako nazvati, posto se ne uklapaju svi bas u potpunosti u definiciju) indeksni fajl B-stablo koje _nije_ ista stvar kao i binarno stablo (u sustini, u vrlo specijalnim okolnostima, binarno stablo _jeste_ poseban slucaj B-stabla). Jes' da ovo sto sam rek'o nema direktne veze sa temom, al' mislim da je korisno znati.
clipper.393 mmarkovic, -> #389, firus
>> Indeksni fajl je binarno stablo, pristup fajlovima je random, >> nema nikakve potrebe da se dovlaci ceo indeksni fajl. > > BTW, ne bih smeo da se zakunem (nikada nisam koristio > doticni), al' verujem da je _i_ kod Clipper-a, kao kod 99% > ostalih DBMS-a za PC (ako ih smem tako nazvati, posto se ne > uklapaju svi bas u potpunosti u definiciju)... Apsolutno si u pravu. Clipper je samo programski jezik, daleko odmakao od dBase-a, posebno dobro prilagođen obradi podataka, ali definitivno nije DBMS. > ...indeksni fajl B-stablo koje _nije_ ista stvar kao i binarno stablo > (u sustini, u vrlo specijalnim okolnostima, binarno stablo _jeste_ > poseban slucaj B-stabla). Nisam se ovim nikada detaljno bavio, bilo mi je dovoljno da stvar funkcioniše. Ali, bilo bi lepo, ako te ne mrzi, da opširnije napišeš jednu porukicu ;) o B-stablima, binarnim stablima > Jes' da ovo sto sam rek'o nema direktne veze sa temom, al' > mislim da je korisno znati. Ima, kako da nema! Nećemo valjda da samo razmenjujemo cenovnike.
clipper.395 sasab, -> #380, whitie
> Da ne dokazujemo nesto sto je jasno. Kroz mrezu ide ceo > indeksni fajl, a dbf i ostali indeksi samo ono sto ti treba. Ne moramo da dokazujemo, ali bilo bi OK da se da razjašnjenje. Probaću sutra. Linkovaću sa i bez optimizacije i proveriti koliko je kila sa servera stiglo stanici.
clipper.396 madamov, -> #385, mmarkovic
> Ma, odakle vam ideja da kopira ceo indeksni fajl na radnu stanicu?!? Najlogičnije je, malo je previše da radi i SEEK po indeksima, jer je to jedini način da, bez ičega instaliranog na serveru, sam obavi posao brže od kopiranja cele tabele i svih indeksa preko mreže.
clipper.397 madamov, -> #386, mmarkovic
> > Što će reći da čim upotrebiš pretraživanje po polju koje > > nije indeksirano, eto tebi cele tabele preko mreže na > > radnu stanicu da ona izvrši pretraživanje. > > Ovo je tačno. A gde bi moglo drugačije? Drugačije je kod svega što ima klijent-server arhitekturu. Bez obzira kakvo je polje, indeksirano ili ne, pretraživanje uvek obavlja server, klijent samo šalje upit i dobija rezultat u obliku dinamičke selekcije slogova na serveru. On posle na toj selekciji može da vrši dodatna pretraživanja da bi je suzio, bez da išta prođe kroz mrežu, osim eventualno samo prvog sloga te selekcije.
clipper.398 madamov, -> #387, whitie
> Drugo,- ovako se nesto radi ili kad neznas da organizujes podatke, > ili kad ti je to pretrazivanje potrebno jednom u sto godina. U svim > drugim slucajevima indeks postoji. Nije tačno, tvoj rezon na kraju dovodi do toga da se svako polje indeksira što je bespotrebno trošenje prostora i resursa. Moguće je da korisnik pokrene pretraživanje po neindeksiranom polju, dakle umesto po šifri kupca krene po punom nazivu kupca koji nije indeksiran. Naravno, ako se takva pretraživanja često ponavljaju, onda polje svakako treba indeksirati. > I trece,- u realnim uslovima ( transakcije, semafori, provera prava > prisustva, formirani pogledi, medjuserverna saradnja, miroring ... ) > ovaj ce zahtev zamrznuti svaki DB server ma kako se on zvao ... Ja znam za jednog kojeg neće, iz moje prakse na uzorku od 300.000 slogova, a iz tuđe na nekih 4.000.000 slogova.
clipper.399 sasab, -> #379, mmarkovic
> Nisi u pravu, a zbog skepticizma imam utisak da nisi ni probao. Ma probao sam, ali dobici baš i nisu spektakularni. Doduše u uputstvu i piše da su rezultati najbolji kada nije selektovan ni jedan tag, ali meni u 99% posto slučajeva trebaju rezultati po nekom redosledu. Linkujem MachSix čisto nek se nađe, ali nešto ne vidim efekte. > P.S. Sećaš se daaavne diskusije na niškom BBS-u Tangram? > Six-MachSix kao da su napisali po mojim željama! Ma, ko li im Eh, tada me Clipper nije mnogo zanimao, pa nisam pratio. Bogi
clipper.400 sasab, -> #388, whitie
>>> Kroz mrezu ide ceo indeksni fajl, >> >> Ma cak ni on! > > Ma jasno. Htedoh reci da se DBF fajl 'ubode' tacno u potreban > slog, a za indeks treba da se prosetas po 'drvcetu' da ubodes > ono sto ti treba. Ako si vec na pravom mestu nema mrdanja. Hm, ima logike. Nije mi palo na pamet da razmišljam ovako. Jednostavno sam posle par primera, primio rezultate (prilično slabe) zdravo za gotovo. Kao što rekoh, probaću ponovo. Bogi
clipper.401 mmarkovic, -> #385, mmarkovic
> Obaviću sutra experiment sa recimo, 100.000 slogova i rezultatima. Pošto znam da bi vas mrzelo da probate, u prilogu je fajl za Neverne Tome ;). SIXOPT.ARJ = PROBA.LNK, PROBA.RMK i PROBA.PRG... Prevedite sa RMAKE PROBA Prvi put ga pokrenite sa PROBA /C 100000 a kasnije samo sa PROBA Rezultati sa optimizacijom su 0.2-0.3 : 20 sekundi, a sa porastom broja slogova, odnos je još i bolji. Na mrežnom disku su rezultati oko 2.5x slabiji što je i odnos brzina pristupa lokalni HD/mrežni HD. Potreban vam je Clipper 5.2, Six 2, Blinker 3.1... P.S. Ako treba, da šaljem PROBA.EXE (oko 500K) ? madamov? P.S." Hrabriji i strpljiviji neka skinu * sa BROWSE(), i, neka probaju da se kreću kroz tabelu... ;) sixopt.arj
clipper.402 mmarkovic, -> #396, madamov
>> Ma, odakle vam ideja da kopira ceo indeksni fajl na radnu stanicu?!? > > Najlogičnije je, malo je previše da radi i SEEK po indeksima, jer je to > jedini način da, bez ičega instaliranog na serveru, sam obavi posao brže > od kopiranja cele tabele i svih indeksa preko mreže. E, baš to radi... :) Dobra biblioteka!
clipper.403 mmarkovic, -> #399, sasab
>> Nisi u pravu, a zbog skepticizma imam utisak da nisi ni probao. > > Ma probao sam, ali dobici baš i nisu spektakularni. Doduše u > uputstvu i piše da su rezultati najbolji kada nije selektovan > ni jedan tag, ali meni u 99% posto slučajeva trebaju rezultati > po nekom redosledu. Linkujem MachSix čisto nek se nađe, ali > nešto ne vidim efekte. Nemaš u programima naredbe na kojima bi efekti bili drastični. Ni u mom BIS-u efekata ne bi bilo, SIX/MACHSIX tada nisu postajali i sve je rađeno klasično: seek <key> ; while <uslov>; ... ;end
clipper.404 mmarkovic, -> #397, madamov
>> Ovo je tačno. A gde bi moglo drugačije? > > Drugačije je kod svega što ima klijent-server arhitekturu. Bez > obzira kakvo je polje, indeksirano ili ne, pretraživanje uvek > obavlja server, klijent samo šalje upit i dobija rezultat u > obliku dinamičke selekcije slogova na serveru. On posle na toj > selekciji može da vrši dodatna pretraživanja da bi je suzio, > bez da išta prođe kroz mrežu, osim eventualno samo prvog sloga > te selekcije. Brzina pretraživanja na serveru može da bude samo nekoliko puta veća. Ovde govorimo o dobicima od nekoliko desetina do stotina puta (ako se koristi indeks). Dakle, ako se ne koriste indeksi, ne pomažu ni kožne gaće, a kamo li klijent-server arhitektura... ;)
clipper.405 mmarkovic, -> #398, madamov
> Nije tačno, tvoj rezon na kraju dovodi do toga da se svako > polje indeksira što je bespotrebno trošenje prostora i resursa. Naravno da ovde treba biti umeren.
clipper.406 firus, -> #393, mmarkovic
>> ...indeksni fajl B-stablo koje _nije_ ista stvar kao i binarno >> stablo (u sustini, u vrlo specijalnim okolnostima, binarno >> stablo _jeste_ poseban slucaj B-stabla). > > Nisam se ovim nikada detaljno bavio, bilo mi je dovoljno > da stvar funkcionise. Ali, bilo bi lepo, ako te ne mrzi, da > opsirnije napises jednu porukicu ;) o B-stablima, binarnim > stablima Ne mrzi me, al' malko sam u frci ovih dana - pokusavam da navucem uslov za upis godine, tako da ce ovo morati da priceka do, otprilike, 02.01. tekuce godine. Posle toga cu pripremiti par tekstova o ovome, uz malo sorsa u (najverovatnije) C-u, premda mi Pascal (ili Modula 2) deluje kao razumnije resenje za predstavljanje i ilustraciju nekog algoritma - zato na ostalima je da odluce: C ili Pascal !? Zahvaljujem na razumevanju ... B)))
clipper.407 firus, -> #406, firus
> priceka do, otprilike, 02.01. tekuce godine. Posle toga ^^ Mali lapsus tastaturas ... Ocigledno je da treba 10. ...
clipper.408 mmarkovic, -> #399, sasab
> Ma probao sam, ali dobici baš i nisu spektakularni. Doduše u > uputstvu i piše da su rezultati najbolji kada nije selektovan > ni jedan tag, ali meni u 99% posto slučajeva trebaju rezultati > po nekom redosledu. Razlika nije tako velika. Ako ti u obradi nije važno kojim redom ide, isplati se da redosled bude "natural". U svakom slučaju, nije neka razlika. Efikasan je i ovako i onako. > Linkujem MachSix čisto nek se nađe, ali nešto ne vidim efekte. Samo ga ti linkuj, pogotovu ako imaš situaciju da korisnik "sam" sastavlja filter.
clipper.409 madamov, -> #401, mmarkovic
> P.S. Ako treba, da šaljem PROBA.EXE (oko 500K) ? madamov? Hvala, ali nema potrebe. Jedino ako neko drug iizrazi želju.
clipper.410 madamov, -> #404, mmarkovic
> Brzina pretraživanja na serveru može da bude samo nekoliko puta veća. Od čega? Brzine pretraživanja na radnoj stanici? Samo pretraživanje možda, što zavisi od toga kakvu konfiguraciju servera i radne stanice imaš, ali da bi radna stanica dobila ono što treba da pretraži, to mora da prođe kroz mrežu. Bilo koji server će pre da opsluži 100 zahteva za određenom selekcijom, nego što će slogovi koje treba pretražiti proći kroz mrežu do radne stanice. > Dakle, ako se ne koriste indeksi, ne pomažu ni kožne gaće, a kamo > li klijent-server arhitektura... ;) Pomaže, itekako, samim tim što sve to ne prolazi kroz mrežu da bi se posle pretražilo na klijentu.
clipper.411 madamov, -> #405, mmarkovic
> Naravno da ovde treba biti umeren. Što ne znači da ti nekom prilikom, ma koliko ona retka bila, neće biti potrebno pretraživanje po neindeksiranom polju.
clipper.412 mmarkovic, -> #406, firus
> Posle toga cu pripremiti par tekstova o ovome, uz malo sorsa u > (najverovatnije) C-u, premda mi Pascal (ili Modula 2) deluje > kao razumnije resenje za predstavljanje i ilustraciju nekog > algoritma - zato na ostalima je da odluce: C ili Pascal !? Pošto sam te povukao za jezik ;), predlažem ipak Pascal - naj- čitljivije je. Kompajleri su rasprostranjeniji, ako treba nešto iskompajlirati (nego za Modulu 2). Takođe, predlažem da pređeš sa teme PCPROG.6/clipper na PCPROG.6/razno, biće više čitalaca. > Zahvaljujem na razumevanju ... B))) Ništa, ništa... ;) Čekamo ;)
clipper.413 mmarkovic, -> #410, madamov
> Od čega? Brzine pretraživanja na radnoj stanici? Samo > pretraživanje možda, što zavisi od toga kakvu konfiguraciju > servera i radne stanice imaš, ali da bi radna stanica dobila > ono što treba da pretraži, to mora da prođe kroz mrežu. Da, mislio sam na to da je protok podataka 2-3 puta veći i da je server 2-3 puta brži. To daje brzinu veću 4-9 puta, što i nije nešto posebno. Čak i da je odnos još par puta bolji, ne menja suštinu. Suština je: ne mogu da poverujem da je nešto bazirano na klijent-server arhitekturi, a da ne koristi indekse za selekciju. Ili drugačije: čak i ne-klijent-server baza podataka (npr baza realizovana Clipperom kao sredstvom), će potući po performansama i klijent-server bazu, AKO ona ne koristi indekse (što ne verujem...) > Bilo koji server će pre da opsluži 100 zahteva za određenom > selekcijom, nego što će slogovi koje treba pretražiti proći > kroz mrežu do radne stanice. Ne znam sa kojom bazom i kojim DBMS-om ti radiš. Ja radim u banci i garantujem da operateri bar 90% vremena provode u unosu podataka. 100 zahteva za nekom selekcijom? Teško... Mreža nije bila usko grlo.
clipper.414 mmarkovic, -> #409, madamov
>> P.S. Ako treba, da šaljem PROBA.EXE (oko 500K) ? madamov? > Hvala, ali nema potrebe. Jedino ako neko drug iizrazi želju. Šaljem ipak, pogotovu što je veličina ipak duplo manja kad se arhivira... ;) proba.arj