PCPROG.5

05 Jan 1995 - 02 Oct 1995

Topics

  1. algoritmi (106)
  2. comment (2)
  3. ms.dos (27)
  4. windows (332)
  5. asembler (203)
  6. basic (228)
  7. jezici (126)
  8. pascal (1085)
  9. cccc (546)
  10. cpp (117)
  11. clipper (1048)
  12. baze.podataka (194)
  13. fox (231)
  14. cavo (192)
  15. razno (593)

Messages - clipper

clipper.416 bulaja,
CA-Visual Objects CAVO3P.HLP - 3rd Party Vendors Help File Ovo je spisak svih nezavisnih (Third Party) proizvoda vezanih za CA-Visual Objects - dodatnih biblioteka, knjiga, časopisa, kurseva i seminara,... cavo3p.zip
clipper.417 mdrazic, -> #405, dr.grba
> Jedino preostaje da se nađe onaj program za keširanje RAM diska > koji ndragan nikako da mi da, a obećao mi je. > > Ima li ga neko od vas? Ja imam jedan:) Najlepša stvar je u tome što možeš da podesiš da umesto memorije koristi swap file na disku za keširanje, pa tako ne trošiš nepotrebno memoriju. Pade mi na pamet: a da se taj swap file napravi na drugom ram disku? Milan
clipper.418 mdrazic, -> #399, dvesic
>>> Šta sve utiče na LOAD SIZE (veličina koju javlja linker na > > Celokupna memorija zatečena na startu (Realna + Ems) se zauzima > od strane Clipperovog VMM-a (Virtual Memory Manager). Pri tom se za > upravljanje ovom memorijom odvaja tabela (u realnoj mem.) i to po > 14 bajtova na svaki Kb Realne/Ems memorije. (izuzetak : korišćenje PLL > lib-ova; vidi dole). Ima logike. Posle isključivanja oko 1MB EMS load size je isti ali raspoloživ RAM (memory(0)) je veći za 9KB. > Zatim se prostor deli na Fixed i Swap space. U Fixed space idu > Space to je manji Swap space. LOAD SIZE koju javlja linker je upravo min. > veličina Swap Space-a (od realne treba odbiti Fixed deo i Eval stack kao > i deo za Private/Public varijable). > Za svaku Priv/Pub varijablu je potrebno 20 bajtova. Potrebna memorija > za ovo se odvaja od Swap Space-a tokom rada u koracima od 1Kb. To je ono > što može izazvati nedostatak memorije kroz duži rad programa. > > Tu je i Eval Stack, na kojem se kreiraju Local i Static varijable. > Local pri vrhu Eval Stacka, Static pri dnu (jer se ne uništavaju za > vreme rada programa). Veličina ES-a je < 64 Kb. > > Swap space ostaje za rad VMM-a. On alocira VM Segmente <= 64 Kb i > u njih raspoređuje dinamičke overleje. Nepotrebni overleji se sele > u EMS, tako da isključivanje EMS-a *jako* degradira performanse > većih aplikacija (zahtev za dinamičkom stranicom se uvek čita > sa diska). Kod mene je najveća degradacija :) kada SA EMS neće da radi, a BEZ nje i radi nekako. Da se zna: ne tražim pomoć, jer rešenja znam (recimo Blinker, rad bez 2 PLL-a,...), nego je interesantno znati kako 'ugrabiti' još po neki KB za rad aplikacije. > - Smanji Private/Public na račun statičkih Šta tačno dobijaš ovim: dobiješ 20B na private/public stacku ali izgubiš ??B (koliko?) na eval stacku. Kakav je dobitak na ostatak memorije koju javlja memory()? > - ako ostaješ pri RTLinku, razmisli o ručnom razbijanju > aplikacije na overleje Misliš da ima više EXE fajlova? Razmišljao sam i još uvek se ne isplati. > - Upotrebi Blinker sa min/mid/max LNK fajlovima :)) Pitanje: Postoji RUN memorija valjda oko 64K. Da li ona može da se u RTLINKovanju isključi i tako ostala memorija uveća? Milan
clipper.419 mdrazic, -> #400, djelovic
> Evo da napravimo :) deal: Vi napisite 20 poruka koje se bave VO-om > (pravih poruka, ne kukanja i simuliranja poruka?), i eto teme. Fer? Piši jedno pozitivno brojanje :) žasopis "Software development" (Jan 95) žlanak Bill Lazar "CA-Visual Objects", prikaz softvera. Kraće od nbatocaninovog, ali je interesantan pošto časopis nije orijentisan na Clipper/VO, nego je opšteg tipa. Preskačem sve ono što ste (verovatno) čuli i pročitali o dobrim stranama VO. Zato, samo ono što na drugim mestima nisam pročitao, tj. ono što ja smatram zanimljivim. - CommonView class library, which CA acquired through purchase of Glockenspiel Ltd.,... has been transformed into the GUI class library and provides efficient encapsulation of user interface elements and Windows-style event handling. CommonView's event handlers ease the burden of processing the myriad messages Windows sends to the application. - My favourite tool supplied with CA-VO is entity browser. - CA-VO has full object orientation (single inheritance only) and a set of class libraries on top. The language contains an efficient dispatcher and a good native code compilation, so the object orientation adds little overhead. In addition, you can access any standard Windows DLL as long as you make any function prototypes available to the compiler. - Some of CA-VO's more significant innovations are access and assign methods. Although this concept is not original, this is the first robust commercial implementation that bridges the gap between clean, natural representation and the need for data encapsulation. The methods provide virtual variables or state information that are better calculated on demand rather than stored. Access and assign methods can, but need not, directly correspond to instance variables. - CA-VO's ownership hierarchy is the other major structural innovation. If an ownership hierarchy message is received by an object that cannot handle it, the message is passed up the object's chain of owners (other objects) until it gets handled. - The GUI class library provides a complete application framework for CA-VO, including the event-handling system. This library replaces the massive number of C case statements that Windows applications require for message processing. In fact, most routine messages can be handled automatically by CA-VO. Occasionally, this automation gets in the way (for example, it's hard to get access to all the key and mouse events in a DataWindow), but anyone who's ever SPYed on the Windows message traffic will be happy to pass off this task. ( za dpredovica : valjda odavde teškoće sa <Esc> tasterom) - CA-VO is missing some obvious pieces, but CA is aware of these and has promised fixes in a short-term upgrades. Most significantly absent is support for any sofisticated interapplication communication, such as OLE. Second is the lack of substanial support for multideveloper teams and version control. Third, support for VBX and OCX controls is missing in the first version, although CA intends to add this. - The first generation of tools to support GUI client application development - such as Visual Basic and PowerBuilder - showed developers how to start handling the surging demand for business solutions based on this metaphor. Now, a second generation of tools is being released that encompasses the first generation's abilities while addressing many of its inadequacies. CA's commitment to OS/2, Windows NT, and Motif supports CA's promise to port CA-VO to other GUI platforms in the near future. Toliko za sada. Milan
clipper.420 bulaja, -> #410, stosic
│Finalnu verziju (: │Neko je vec ima ? └─── Za sada je 1.0a poslednja zvanična finalna verzija :). Poslednji upgrade za verziju 1.0a za koji znam je CA-VO v1.0a build 427, nosi datum 03.01.95 i ide na pet disketa (doduše peta je popunjena samo sa 100 Kb:), ali nisam siguran da je to zvanični i poslednji CAVO 1.0 patch. Pošto očigledno još uvek ima nekih problema :), pretpostavljam da će CA u dogledno vreme (možda to saznamo već ovih dana:) pustiti verziju 1.0b.
clipper.421 mdrazic, -> #409, ndragan
> Zato umesto go bottom može da ide > seek chr(255) > skip -1 > > Trebalo bi da je brže u ovakvom slučaju. Brže ide na dno, tačno je. Ali iz ličnog iskustva znam da kada ima puno zapisa sa istim ključem, običan skip i seek (i na neki drugi ključ) osetno duže radi. Valjda B-stablo nije dobro izbalansirano, ne znam tačno uzrok ovome. > Datum se pakuje u dva bajta ovakvom funkcijom: Ako dopustiš i treći bajt izbegavaš razne 'čudne' bajtove u polju, uključujući chr(0), chr(26) i ostale kontrolne kodove, a i može se smislenije šifrirati: po bajt za godinu, mesec, datum, tako da i golim okom možeš pročitati datum. A i konverzija kraće traje. > Slično bi moglo i za vreme, recimo minuti 6 bitova, plus sati 5 bitova, Ja pakujem vreme isto u tri bajta kao datum (sat, minut, sekunda) Za timestamp koristim 3B za datum + 3B za vreme. Ako nekom ne treba tolika rezolucija, može se zadržati na prvih n (n<=6) bajtova sa očiglednim značenjem podatka (dopisuje se po defaultu: 1. u mesecu, 0h, 0min, 0sec). Milan
clipper.422 snemcev,
Jedna stvar koja me je zbunila: 20-tak .obj fajlova sam strpao u jedan .lib i sad mi blinker odjednom prijavljuje 'CLIPPER.LIB(GT): Undefined symbol __beep_'. Empirijski (uh, što volim strane reči ;) sam utvrdio da je to ono Beep koje se čuje kad stigneš do kraja polja za unos, a uključeno je SET BELL ON. Ima li neko ideju zašto se ovo sad događa?
clipper.423 dvesic, -> #418, mdrazic
>> izgubiš ??B (koliko?) na eval stacku. Kakav je dobitak na >> ostatak memorije koju javlja memory()? Dobitak je u tome što je eval stack u VM segmentu koji je moguće "šetati" okolo, dok je u fixed nepokretna i permanentno zauzima memoriju >> Pitanje: Postoji RUN memorija valjda oko 64K. Da li ona može >> da se u RTLINKovanju isključi i tako ostala memorija uveća? Da li si siguran u ovo ? Do sada nisam naišao na tako nešto.
clipper.424 pyc.guy,
Subject: Blinker 3.10 Protected Program ulinkovan sa sledecim .lnk fajlom: │BLINKER HOST MESSAGE ON │ │BLINKER EXECUTABLE CLIPPER F:120 │BLINKER EXECUTABLE NODELETE │ │MAP S,A │ │BLINKER EXECUTABLE EXTENDED 2048 │ │OUTPUT ... │ │ FILE ctintp.obj │ FILE ctusp.obj │ │ FILE <mainPrg>.obj │ FILE sixcdx │ FILE <ostali>.obj │ FILE <ostali>.obj │ FILE <ostali>.obj │ FILE <ostali>.obj │ │SEARCH BLXCLP52 │LIB ctp │LIB blxratex │ │@cl520min.lnk │ │@six2.lnk javlja SAMO pri povratku u DOS: │BLX286 : 1313 : exception error 0D : general protection fault, code = 0000h │Active host is VCPI (v3.10 i386 4752kb) Jedino sto varira pri promeni kolicine eem386 memorije je zadnja brojka: 4752kb ili 6560kb ili cak 8608kb. Cudi me ova zanja jer je veca od 8Mb koliko ja imam RAMa. Gornju poruku o greski besomucno skroluje tako da masina mora da se reSetuje. Znam da je program pokusao da uradi neDozvoljenu "radnju" u zasticenom modu ali je ta radnja OBICAN izlazak/RETURN iz main procedure. Da je nesto drugo pa 'ajde da ga cackam - ali na RETURNU ne zanam sta da mu radim... Linkovano sa ExoSpace-om je sve OK. Hvala u napred!
clipper.425 dr.grba, -> #412, ndragan
>> / koji ndragan nikako da mi da, a obećao mi je. >> >> Hmmm, na kom to beše disku... ako to nije onaj što mi je riknaja >> onomadne... Ajde, šta si se stisn'o, k'o da sam ti tražio pola dedovine (:
clipper.426 dr.grba, -> #419, mdrazic
>> teams and version control. Third, support for VBX and OCX controls is >> missing in the first version, although CA intends to add this. Oho-ho, dragi gledaoci! (:
clipper.427 mkurtes, -> #393, bulaja
CAVO RAM disk i te kako ubrzava rad. NPR - u tabeli koju sam dao (brzina rada tri 486 masine) kod 486/66/16 gde su najbolji rezultati pri pretvaranju u RAM disk 2 MB (od 16) vreme pravljenja EXE filea se poboljsalo vise nego 3 puta tj. bilo je 1 min i 11 sec a sada je 31 sec kod iste aplikacije. Ram disk je napravljen sa RAMDRIVE.SYS fileom u Config-u (PC DOS 6.3) Poruka vise za temu. Pozdrav :).
clipper.428 velicko,
Treba mi rutina u ASM i C-u za sviranje 16-bitnih, 44 KHz, stereo semplova na SB kartici. Može i .obj da prođe, bitno je da šljaka sa Clipper-om. Neko je poslao tVoc klasu, ali nikako da mi sa tom bibliotekom proradi sviranje stereo semplova na 44 KHz 16-bita. Takve mi semplovi samo pište i to mnogo duže od realnog trajanja. Ajde please pomagajte. velicko
clipper.429 velicko,
/* Ovo treba brojati za VO temu naročito ako dobijem odgovor(e) */ Kako najjednostavnije iz VO-a da odsviram neki sempl na SB kartici? Nemojte da mi kažete:"Pozovi API f-ju!" pošto sam početnik u WIN programiranju. velicko
clipper.430 dpredovic, -> #413, toma
Subject: Re: eps2pcl > Epson Laser (IIp kompatibilan) > EscP --> ? > EscM --> ? Mene je mrzelo da menjam programe koji su pisani samo za epsone, (a i lakša je za ubacivanje u tuđe programe koji se održavaju), pa sam napisao programče koje to radi externo. Ako pokupite arhivu videćete da sam ubacio konverziju samo za nekoliko kodova, ali to je ono što mi je trebalo. Ako bude bilo interesovanja mogu da ga proširim. eps2pcl.zip
clipper.431 cnenad, -> #422, snemcev
ŁŁŁ .lib i sad mi blinker odjednom prijavljuje 'CLIPPER.LIB(GT): Undefined ŁŁŁ symbol __beep_'. Empirijski (uh, što volim strane reči ;) sam utvrdio da Uključi u LINK skript i liniju LIB TERMINAL Terminal.LIB je naravno iz Clipper paketa.
clipper.432 rccomp, -> #430, dpredovic
A, da li je nekako moguce umesto poznate fraze : @ prow(),pcol() say chr(27)+"W1"+"K cZaglavlje @ prow(),pcol() say chr(27)+"W0" ubaciti nesto slicno u PCL-jeziku, sto bi laser razumeo? Naravno, umesto "W1" i "W)0" tu se mogu pojaviti "E","F","G","H" i slicno.KKKKi slicno.
clipper.433 bceklic,
Pade mi na pamet. Hteo bi da lupim mali casnovnik u uglu ekrana. Koju funkciju koristite za ovakav zahvat? Ja inace imam svoju funkciju u asm-u koju ukljucujem u svoje asm programe (preuzima 1ch). Znam da neke clipper biblioteke imaju ovu funkciju a kod FOx-a je ova mogucnost standardna stvar. Clipper ima samo funkciju koja vraca vreme u obliku stringa (time()) zar ne?
clipper.434 bceklic,
Koji je najefikasniji nacin resavanja unosa stringova duzih od sirine ekrana?
clipper.435 obrada,
Primetio sam da Clipper-ova funkcija FWRITE() ne upisuje binarno na stampac, odnosno LPT1. Kada odstampam podatke (gde je i definicija YU slova) direktno iz mog programa u fajl, i na LPT1 ali sa preusmerenjem u fajl (pomocu PRN2FILE), fajlovi se razlikuju. Zapravo ako se sa FWRITE upisuje na LPT1, onda je isti efekat kao da se fajl kopira na LPT1 sa COPY fajl LPT1, a trebalo da bude COPY /B fajl LPT1. U NG pise da FWRITE() upisuje u binarni fajl, ali to izgleda nije tako, barem ne u CLIPPER-u 5.01. Da se to desava i u 5.20
clipper.436 obrada, -> #403, toma
> Koji je po vasem misljenju najbezbolniji prelazak iz EPSON > sekvenci na PCL (tako se zvase) jezik. Zavisi sta radis, odnosno sta stampas. Ja sam ranije napravio svoje drajvere, za EPSON, ali samo sto se tice bold, kondesovanih slova i pozicioniranja na papiru. To sam relativno lako prepravio za laser. Sto se tice YU slova koristio sam za HP4p njegove fontove (doduse 852 raspored). Ovi drajveri su zapravo skup funkcija koji vracaju odgovarajuci string koji predstavlja komandu za stampac. U zavisnosti od tipa stampaca inicijalizuje se staticni niz sa opisom stringova (ili blok kodova) za odredjeni tip stampaca. U principu neke osnovne stvari se mogu relativno lako preraditi i za LJ, dok je za neke veci problem uskladiti, tj. nije bas uvek samo prosta zamena kodova. Dragan
clipper.437 goxx,
Imam ponudu da pod windows-om radim jedan projekat čija će tematika biti naučnog tipa (neki proračuni iz fizike). Problem je što pod windows-om nisam još programirao (sem malo VB pod excel-om). U stvari to i nije neki problem. Pošto za posao imam nekoliko sledećih meseci imam nameru da i to naučim :). Ono što me najviše zanima i oko čega se lomim je izbor jezika. Pošto clipper dobro poznajem voleo bih da nastavim sa VO. Interesuje me nekoliko stvari kod VO: - Kako se snalazi sa grafikom. Crtanje linija, poligona... kako u prozoru tako i na papiru? - Kako se VO snalazi sa matematikom (da li je uopšte ima?), konkretno logaritmi, sinus, cosinus,... - Da li postoji neki dijalog editor (kao u excel-u i verovatno u VB-u) ili sve mora "ručno" (doduše ovo i nije tako bitno)? - Ukratko, da li bi ovaj "jezik" koji je orijentisan ka bazama podataka komotno mogao da se koristi za bilo kakve projekte (u ovom slučaju pomalo grafički orijentisan) ? Za sada sam se setio samo ovih stvari (nisam još duboko ni razmišljao o tom projektu :), a kada se setim drugih stvari biće i drugih pitanja. Uzgred, ovo bi moglo da bude PC.PROG.5:ca.vo ++ :)) Goran
clipper.438 jolicm, -> #433, bceklic
>> Ja inače imam svoju funkciju u asm-u koju uključujem u svoje asm ... E  űpa kad si već tome vičan moj savet ti je da malo prostudiraš one primere za vezu asemblera i clippera u samples ili source direktorijumu (ne mogu da se setim tačno kako se zove) i da tu tvoju funkciju jednostavno ugradiš u clipper program ! :)
clipper.439 jolicm, -> #434, bceklic
č yy, xx Get String Picture "čKS?? XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ono S?? Ti je stvarna dužina, a XXXXXXXXXXXX.. staviš koliko ti treba da se vidi. Posle toga se string pri unosu sasvim lepo skroluje levo-desno ...
clipper.440 jolicm, -> #435, obrada
>> FWRITE() ... I ja sam imao istih takvih problema baš ovih dana, meni je pomoglo COPY FILE ...
clipper.441 nbatocanin, -> #416, bulaja
> CAVO3P.HLP - 3rd Party Vendors Help File Jel' ovo onaj spisak koji ide uz VO?
clipper.442 nbatocanin, -> #415, bulaja
> CA-Visual Objects žini mi se da je prošlo nezapaženo, pa da ponovim: VO je visoko kompatibilan sa Clipper-om! To znači da će vaši programi uz 1-5% izmena biti VO programi. Na primer, i ovo radi: PROC Start ? "Zdravo, ba!" Doduše, radi u ružnom terminal prozoru, ali radi!
clipper.443 ikordic, -> #433, bceklic
RE: žasovnik => Pade mi na pamet. Hteo bi da lupim mali casnovnik u uglu ekrana. Bilo je već par puta. Ukratko, prikaz časovnika (screen saver-a, setkey blokovi, itd.) odradi iz svoje Inkey () funkcije. Tu ondak možeš da dodaš i alarm, iz nekog rokovnika na primer, ili šta ti već padne na pamet. Potpuno je sigurno i imaš veliku kontrolu nad događajima. Daklem, u petlji u kojoj se čeka na ulaz sa tastature, ispisuješ Left ( Time (), 5 ). => Koju funkciju koristite za ovakav zahvat? Ja inace imam svoju => funkciju u asm-u koju ukljucujem u svoje asm programe (preuzima 1ch). Probato i to par puta, ali se desi veselje kada Clipper program pukne a ne otkači se interapt. Pređi na čist Clipper, bezbednije je.
clipper.444 dvesic, -> #431, cnenad
>> ŁŁŁ .lib i sad mi blinker odjednom prijavljuje >> 'CLIPPER.LIB(GT): Undefined ŁŁŁ symbol __beep_'. Empirijski >> (uh, što volim strane reči ;) sam utvrdio da >> >> Uključi u LINK skript i liniju LIB TERMINAL >> >> Terminal.LIB je naravno iz Clipper paketa. Problem je bio u tome što je jednu od svojih PRG datoteka nazvao BEEP.PRG :))) i tako prekrio modul iz Terminal.lib. Problem je rešen preimenovanjem istog u BEEP2.PRG :)
clipper.445 mdrazic, -> #423, dvesic
>>> Pitanje: Postoji RUN memorija valjda oko 64K. Da li ona može > > Da li si siguran u ovo ? Do sada nisam naišao na tako nešto. Pa šta je ono memory(2) ? memory(0) - konvencionalna memorija (KB) memory(1) - najveći blok konvencionalne memorije (KB) memory(2) - RUN memorija (?) ( B ?) memory(3) - SVOS (KB) memory(4) - expanded memorija (KB) Da li za run komandu Clipper samo prazni bafere tabela i indexa ili unapred rezerviše i za to neki KB ? Stari Clipper je imao switch za podešavanje te memorije, novi nema. Milan
clipper.446 mdrazic, -> #427, mkurtes
> Poruka vise za temu. Pozdrav :). djelovic: brojiš ?
clipper.447 mdrazic, -> #434, bceklic
> Koji je najefikasniji nacin resavanja unosa stringova duzih od sirine > ekrana? memoedit() ?
clipper.448 dr.grba, -> #434, bceklic
>> Koji je najefikasniji nacin resavanja unosa stringova duzih od sirine >> ekrana? Ponovno projektovanje aplikacije. // Sorry, nisam mogao da odolim (((: //
clipper.449 aseovic, -> #432, rccomp
> A, da li je nekako moguce umesto poznate fraze : > č prow(),pcol() say chr(27)+"W1"+"K cZaglavlje > č prow(),pcol() say chr(27)+"W0" > ubaciti nesto slicno u PCL-jeziku, sto bi laser razumeo? Moguće je, naravno. Evo uz poruku fajl sa kontrolnim kodovima za EPSON, IBM Graphics i HP LaserJet. Pozdrav, Sele printers.arj
clipper.450 ikordic, -> #434, bceklic
RE: Unos dužih stringova => Koji je najefikasniji nacin resavanja unosa stringova duzih od sirine Pa MemoEdit () :) ili neka objektna zamena. Kada završi obradu, lepo string išamaraš, formatiraš i upišeš gde treba.
clipper.451 goxx, -> #439, jolicm
■ č yy, xx Get String Picture "čKS?? XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ■ ono S?? Ti je stvarna dužina, a XXXXXXXXXXXX.. staviš koliko ti treba da se ■ vidi. Posle toga se string pri unosu sasvim lepo skroluje levo-desno ... Valjda obrnuto. XXXX... je stvarna dužina stringa, a S?? je dužina koja se vidi na ekranu. Ipak je malo besmisleno stavljati, recimo, 45 X-ova. Bolje je pre unosa formatizovati string na tu dužinu (npr. PADR(string, 45) ) ako nam njegova dužina ne odgovara, pa uraditi get sa PICTURE-om "čKS??". Goran
clipper.452 goxx, -> #432, rccomp
■ č prow(),pcol() say chr(27)+"W1"+"K cZaglavlje ■ č prow(),pcol() say chr(27)+"W0" Ja ne koristim nikad PROW() i PCOL() funkcije, a pogotovo ne koristim direktno slanje kodova CHR(27)+"W1"+.... Što se tiče štampe mislim da je bolje rešenje da postoji neka vrsta "drajvera" za štampač u obliku tekstualnog fajla. Na primer: epson.drv --------- // Sekvence za Epson CONDENSED 15; kondenzovana stampa CAN_COND 18; ponistenje kondenzovane stampe BOLD Esc, "G"; masna stampa CAN_BOLD Esc, "H"; ponistenje masne stampe ... hp3.drv ------- // Sekvence za HP Laserjet III CONDENSED 27, "&", "k", "2", "S"; kondenzovana stampa CAN_COND Esc, "&k0S"; ponistenje kondenzovane stampe BOLD Esc, "(s3B"; masna stampa CAN_BOLD Esc, "(s0B"; ponistenje masne stampe ... a zatim u nekom konfiguracionom fajlu menjati vrstu štampača: Š Printer Ć Driver = "hp3.drv" ... Iz programa bi na primer bilo: ... PRINT PrinterSequence("BOLD") PRINT cZaglavlje PRINT PrinterSequence("CAN_BOLD") PRINT PrinterSequence("CONDENSED")+; "Prethodno formirani red kondenzovane stampe"+; PrinterSequence("CAN_COND") ... gde bi komanda PRINT (napravljena od neke funkcije sa #xcommand) regulisala redove, kolone, novu stranu, heder, futer, itd., a funkcija PrinterSequence() "čupala" iz određenog "drajver" fajla tražene sekvence. Ne znam da li sam ti bio od pomoći jer mi i nije bilo baš najjasnije šta tačno tražiš. Probaj ovo. Može da bude delotvorno :). Goran
clipper.453 vgenije,
hi Posto sam konacno presao sa pascala na Clipper trebalo bi mi malo uputsva da *uhvatim zalet*, elem,kako da u Clipperu editujem neki program,snimim ga i pokusam da pokrenem da vidim dali sam dobro isprogramirao zeljeni program.zvuci laicki(ne mogu da kazem da nije) ali u Clipper direktorijumu,mislim kako je organizovan nikako se ne snalazim? pozdrav Vlada Biskupljanin
clipper.454 mileusna, -> #433, bceklic
>> Pade mi na pamet. Hteo bi da lupim mali casnovnik u uglu ekrana. >> Koju funkciju koristite za ovakav zahvat? Ja inace imam svoju funkciju Da ne pričam već rečeno pogledaj poruku 10.98 made by Bulaja.
clipper.455 bceklic, -> #438, jolicm
>>> Ja inace imam svoju funkciju u asm-u koju ukljucujem u svoje > asm ... E  űpa kad si vec tome vican moj savet ti je da malo > prostudiras one primere za vezu asemblera i clippera u samples > ili source direktorijumu (ne mogu da se setim tacno kako se > zove) i da tu tvoju funkciju jednostavno ugradis u clipper > program ! :) POnekad igranje sa tajmerom moze da bude veoma nezgodno ako hendler nije napisan kako treba (posebno u slucaju kada se dos obraca disku..). Moja asm funkcija je sljakala u asm programima sasvim ok ali nisam siguran kako bi bilo u klipper okruzenju pa sam zato pozeleo da uradim neki standardizovan postupak da kasnije ne bi brinuo o posledicama.
clipper.456 bceklic, -> #439, jolicm
> Z yy, xx Get String Picture "ZKS?? > XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ono S?? Ti je stvarna > duzina, a XXXXXXXXXXXX.. stavis koliko ti treba da se vidi. > Posle toga se string pri unosu sasvim lepo skroluje levo-desno Thanx, pitanje mi je bilo po malo nejasno ali ovo je odgovor koji sam trazio. Pregledajuci picture parametre izgleda da sam prevideo ovaj pa mi se ucinilo da moram sam da pisem punkciju koja radi gore pomenuti posao. Naravno bio mi je potreban unos relativno dugog stringa (ne previse velikog jer bi tada koristio MemoEdit).
clipper.457 bceklic, -> #443, ikordic
> Bilo je vec par puta. Ukratko, prikaz casovnika (screen > saver-a, setkey blokovi, itd.) odradi iz svoje Inkey () > funkcije. Tu ondak mozes da dodas i alarm, iz nekog rokovnika > na primer, ili sta ti vec padne na pamet. Potpuno je sigurno i > imas veliku kontrolu nad dogadajima. Daklem, u petlji u kojoj > se ceka na ulaz sa tastature, ispisujes Left ( Time (), 5 ). Ovo resenje se samo po sebi namece i njega sam vec bio ugradio, ali sat stoji kada inkey nije aktivan ? :( > => Koju funkciju koristite za ovakav zahvat? Ja inace imam > svoju => funkciju u asm-u koju ukljucujem u svoje asm programe > (preuzima 1ch). > Probato i to par puta, ali se desi veselje kada Clipper program > pukne a ne otkaci se interapt. Predi na cist Clipper, > bezbednije je. Bas o ovome sam govorio u jednoj od prethodnih poruka. Zato sam i zeleo neko klipper resenje. Moje asm progrem pisem tako da su sanse da program u toku rada pukne skoro ravne nuli (preuzmem sve sto je moguce preuzeti da bi se sprecilo ovako nesto, sto zbog zastite programa sto zbog sigurnosti..)
clipper.458 bceklic, -> #447, mdrazic
>> Koji je najefikasniji nacin resavanja unosa stringova duzih od >> sirine ekrana? > memoedit() ? String nije toliko dugacak da bi koristio memoedit. Picture resava problem :)
clipper.459 bceklic, -> #448, dr.grba
>>> Koji je najefikasniji nacin resavanja unosa stringova duzih >>> od sirine ekrana? > Ponovno projektovanje aplikacije. > // Sorry, nisam mogao da odolim (((: // Try that again? Nisam te razumeo ?
clipper.460 mileusna, -> #453, vgenije
>> pokrenem da vidim dali sam dobro isprogramirao zeljeni program.zvuci >> laicki(ne mogu da kazem da nije) ali u Clipper direktorijumu,mislim kako >> je organizovan nikako se ne snalazim? Ne mogu da se zakunem da sam te baš razumeo, ali evo. U PATH staviš CLIPPER/BIN (/=obrnuta_kosa_crta=Đ po YUSCII-ju) U autoexec dodaš SET INCLUDE=C:/CLIPPER/INCLUDE SET LIB=C:/CLIPPER/LIB SET OBJ=C:/CLIPPER/OBJ SET PLL=C:/CLIPPER/PLL Kako bi naznačio Clipperu gde da traži potrebne datoteke ( .ch, .lib, .obj, .lnk, .pll). Nakon ovoga, u bilo kom direktorijumu otkucaš CLIPPER <naziv.programa>, pa zatim, ako nema grešaka RTLINK FI <naziv.programa>.OBJ i dobiješ EXE. Imaš čini mi se i neki Cl.Bat koji ovo radi automatizovano (2 reda), ali ćeš najverovatnije uskoro preći na linkovanje pomoću skript fajlova (.lnk). Ako te je ovo mučilo, onda sam ti valjda pomogao. :) BTW, koliko sesećam, Clipper sam po instalaciji dodaje ove linije u autoexec, a ti si ga verovatno presnimio sa nečijeg diska i nakačio na svoj, pa je i autoexec ostao šupalj.
clipper.461 jolicm, -> #451, goxx
>> č yy, xx Get String picture "čKS?? XXXXXXXXXX" >> ono S?? ti je stvarna duzina ... > Valjda je obrnuto .. E jeste obrnuto je, ja sam pogrešio na brzinu .. > Ipak je malo besmisleno stavljati, recimo 45 X-ova .. E nekad (skoro u svim slučajevima) šta kada Ti napraviš space(45) pa imaš neki valid, pa se u valid funkciji setiš da dostaviš get-u neku drugu vrednost, pa to ne bude 45 znakova. Najnezgodniji rad bez picture stringa je baš u tome da kada ti korisnik kuca ENTER na drugom znaku, dobiješ string od 2 znaka, i kasnije (u ponovnom) editovanju ne moze ti niko upisati veći string od ta 2 znaka.
clipper.462 jolicm, -> #455, bceklic
>> Ponekad igranje sa tajmerom moze da bude veoma nezgodno ako >> hendler nije napisan kako treba ( posebno u slučaju kada se dos >> obraća disku..) E ja čoeku napisah pretpostavku da je vičan u asembleru, a veruj mi da mi sasvim razlozno izgleda da kada VEĆ ima svoju funkciju, najlakše mu je da je ugradi u clipper i završi posao (VEĆ JE RADIO U ASEMBLERU). Ja imam u clipper okruzenju INKEY() preuzet kompletno sa mojom funkcijom. Što znači da sam morao getsys menjati, i sve ostalo što trazi tastere, ali imam problem sa achoice ... E sad gle problema sa clipperom i satom: Korisnik indeksira veliku bazu, a sat stoji (clipper varijanta), ASM varijanta..sat i dalje lepo radi.
clipper.463 jolicm,
10. clipper 458, novih 12 Gle čuda u tih 12 poruka prvi put posle nekoliko nedelja, ne videh ni reč o VO. :)
clipper.464 mdrazic, -> #437, goxx
> Imam ponudu da pod windows-om radim jedan projekat čija će tematika > biti naučnog tipa (neki proračuni iz fizike). Problem je što pod > windows-om nisam još programirao (sem malo VB pod excel-om). U stvari > Ono što me najviše zanima i oko čega se lomim je izbor jezika. > Pošto clipper dobro poznajem voleo bih da nastavim sa VO. Viđe vraga sa sedam binjiša :) Ja isto (kao poznati Clipper-aš) treba da radim nešto naučnog tipa (fizička hemija, neka fitovanja) u Excel-u :) To je unapred izabrano (tako hoće naručilac) zbog: grafike koja postoji u Excel-u, činjenice da u svetu MSOffice (Excell) predstavlja de facto standard za naučne i tehničke primene, zato što inženjeri koji će to da koriste znaju Excel, Windows, i kako sve lepo da ispovezuju. Pošto si ti već nešto radio u VB za Excell: kako stoji sa brzinom računa, mislim na suvu numeriku? Da li se VB program prevodi ili samo interpretira? > - Ukratko, da li bi ovaj "jezik" koji je orijentisan ka bazama podataka > komotno mogao da se koristi za bilo kakve projekte (u ovom slučaju > pomalo grafički orijentisan) ? U VO će ti trebati posebna grafička biblioteka, a ni matematičke funkcije nisu tu. Ne znam i da li može koprocesor da se koristi. Moj savet ti je da biraš za naučne projekte drugi jezik. Mislim da je za to i Fortran bolji. > Uzgred, ovo bi moglo da bude PC.PROG.5:ca.vo ++ :)) ca.vo:Open()
clipper.465 mdrazic,
Neko je trazio satić u uglu. Evo jednog. Milan clock.arj
clipper.466 dvesic, -> #462, jolicm
>> E sad gle problema sa clipperom i satom: Korisnik indeksira veliku bazu, a sat >> stoji (clipper varijanta), ASM varijanta..sat i dalje lepo radi. E sad :)) kakav je problem dodati jedno EVAL sa pozivom funkcije koja ispisuje famozni satić :)) ?
clipper.467 dr.grba, -> #459, bceklic
>>> // Sorry, nisam mogao da odolim (((: // >> >> Try that again? Nisam te razumeo ? Ama, video sam da ti je jolicm već odgovorio, pa sam rešio da napravim pomalo ciničnu šalu. Valjda se nisi naljutio. Ono na šta sam mislio je nevezano za Clipper ili neki konkretni programski jezik. Radi se o tome da jedno polje od 80, 90 ili 333 znaka može valjano da se podeli u više manjih polja, a da se ne izgubi na ideji. No, ako kao projektant aplikacije insistiraš na tako dugačkim stringovima, nema veze. A svakako nema štete. (:
clipper.468 bulaja, -> #427, mkurtes
PC.PROG:cavo - CA-Visual Objects │RAM disk i te kako ubrzava rad. NPR - u tabeli koju sam dao (brzina │rada tri 486 masine) kod 486/66/16 gde su najbolji rezultati pri │pretvaranju u RAM disk 2 MB (od 16) vreme pravljenja EXE filea se │poboljsalo vise nego 3 puta └─── A da li si pokušao da istu tu memoriju daš disk keš programu, ili da uključiš 32-bitni pristup disku i njemu prepustiš keširanje? Ovo dobijanje u brzini kompajliranja i linkovanja inače može imati posledice u usporavanju nekih drugih operacija (npr. aktiviranje različitih alata), pošto će zbog manje količine slobodnog RAM-a Windows češće koristiti swap file.
clipper.469 bulaja, -> #433, bceklic
│Pade mi na pamet. Hteo bi da lupim mali casnovnik u uglu ekrana. └─── Pogledaj PC.PROG.5:10.98
clipper.470 bulaja, -> #435, obrada
│U NG pise da FWRITE() upisuje u binarni fajl, ali to izgleda nije tako, │barem ne u CLIPPER-u 5.01. Da se to desava i u 5.20 └─── Ako se dobro sećam, 5.01 (Nantucket-ov) je imao neki bug u FRead/FWrite funkcijama, moguće je da je to u pitanju. Ako želiš da ostaneš na 5.01 (mada ne znam zašto bi to želeo:) probaj sa patchem za verziju 5.01a (imaš ga u R:\Clipper direktorijumu), a na 5.2 sve radi Ok (svakodnevno to koristim, valjda bi do sada primetio da ima nekih problema:).
clipper.471 bulaja, -> #437, goxx
PC.PROG:cavo - CA-Visual Objects │Interesuje me nekoliko stvari kod VO: │- Kako se snalazi sa grafikom. Crtanje linija, poligona... │ kako u prozoru tako i na papiru? └─── S ovim se nisam još bavio (u dokumentaciji/helpu je dosta šturo objašnjeno, pa treba uglavnom probati i videti šta se dešava:), ali VO ima ugrađene klase za sve to (crtanje linija, poligona, elipsa, prikaz slika,...). U krajnjem slučaju, uvek se može pozvati WinAPI funkcija (ili korisititi usluge nekog .DLL-a) da odradi posao oko raznih ctranja. Printer klasa je naslednik Windows klase, što znači printer možeš tretirati kao i radnu površinu prozora (crtati i pisati po njemu,...). Pošto se crtanje odvija na nivou tačke, moraš prilikom crtanja voditi računa i o relativnoj rezoluciji printera. Ipak za izveštaje treba koristiti CA-RET i ReportQueue klasu, samo nisam još gledao kako se oni snalaze sa grafikom. │- Kako se VO snalazi sa matematikom (da li je uopšte ima?), konkretno │ logaritmi, sinus, cosinus,... └─── Ima sve funkcije - Exp, Log, Log10, Cos, Sin, Tan,... │- Da li postoji neki dijalog editor (kao u excel-u i verovatno u VB-u) │ ili sve mora "ručno" (doduše ovo i nije tako bitno)? └─── Naravno - pa ne zove se džabe *VISUAL* Objects :). │- Ukratko, da li bi ovaj "jezik" koji je orijentisan ka bazama podataka │ komotno mogao da se koristi za bilo kakve projekte (u ovom slučaju │ pomalo grafički orijentisan) ? └─── Da razjasnim jednu predrasudu :) - CA-Visual Objects nije razvojni alat orijentisan samo ka bazama podataka. On ima ono što drugi nemaju - ugrađenu kompletnu podršku za rad sa bazama podataka, ali isto tako ima vrlo razvijene klase za korisnički interfejs i logiku za obradu događaja, što takođe fali većini razvojnih sistema za Windows.
clipper.472 bulaja, -> #442, nbatocanin
PC.PROG:cavo - CA-Visual Objects │žini mi se da je prošlo nezapaženo, pa da ponovim: VO je visoko │kompatibilan sa Clipper-om! To znači da će vaši programi uz 1-5% │izmena biti VO programi. Na primer, i ovo radi: └─── Priznajem da od kada sam prvi put video Visual Objects, nisam ni jednom došao u iskušenje da probam ovako nešto :). Jeste da uglavnom radi (sve do prvog nepremostivog problema, kao što je korišćenje neke dodatne Clipper biblioteke koja još nema svoju VO verziju), ali može dovesti do problema stvaranja vrlo ružnih navika (korišćenje Terminal emulacije) kojih će se kasnije biti teško osloboditi :). Preporučujem pravljenje kostura VO aplikacije kompletno od početka, a kasnije će biti mali problem ubaciti logiku i funkcije razvijene za Clipper program. :)
clipper.473 bulaja, -> #441, nbatocanin
PC.PROG:cavo - CA-Visual Objects │> CAVO3P.HLP - 3rd Party Vendors Help File │Jel' ovo onaj spisak koji ide uz VO? └─── Jeste, s tim što je ovo poslednja verzija koja se dobija uz VO Build 427 Update (onaj od 5 disketa, sa datumom 03.01.95, samo .HLP nosi datum 12.12.94).
clipper.474 bceklic, -> #462, jolicm
>>> Ponekad igranje sa tajmerom moze da bude veoma nezgodno ako >>> hendler nije napisan kako treba ( posebno u slucaju kada se >>> dos obraca disku..) > E ja coeku napisah pretpostavku da je vican u asembleru, a > veruj mi da mi sasvim razlozno izgleda da kada VEC ima svoju > funkciju, najlakse mu je da je ugradi u clipper i zavrsi posao > (VEC JE RADIO U ASEMBLERU). Ja imam u clipper okruzenju INKEY() Clipper programeri obicni i nisu svesni o cemu sve treba do vodi racuna jedan asm programer. Postoji gomila elementarnih stvari o kojima asm koder mora da vidi racuna za razliku od clipper kodera koji taj posao prepusta samom klipperu (cije su originalne procedure i funkcije testirane po hiljadu puta). Tipican primer je taj sto je moja asm aplikacija (program za zastitu programa i izradu instalacionih disketa) od 500 kb sourcea bila na ledu citava 3 meseca jer programi koji su bili zasticivani nisu radili na 486dx+ masinama?! Casovnik koji sam ugradjivao u taj i sve ostale asm programe koje koristim radio je besprekorno u svim okolnostima ali voleo bi da nadjem nekog ko ce mi garantovati da ce u krhkom klipper okruzenju isti raditi bez problema?! Zato sam pozeleo neko standardno klipper resenje....
clipper.475 bceklic, -> #467, dr.grba
> Ama, video sam da ti je jolicm vec odgovorio, pa sam resio da > napravim pomalo cinicnu salu. Valjda se nisi naljutio. ;) Kako u toku dana moram po nekoliko puta da menjam nacin razmisljanja jer radim na vise projekata u razlicitim jezicima cija se filozofija u potpunosti razlikuje nadam se da mi je oprosteno sto sam u clipper ng-u prevideo Sxx opciju Picture parametra? > Ono na sta sam mislio je nevezano za Clipper ili neki konkretni > programski jezik. Radi se o tome da jedno polje od 80, 90 ili > 333 znaka moze valjano da se podeli u vise manjih polja, a da > se ne izgubi na ideji. No, ako kao projektant aplikacije > insistiras na tako dugackim stringovima, nema veze. > A svakako nema stete. (: Kako ces da podelis string koji recimo treba da bude dugacak 80 bajtova (a treba da recimo sadrzi naziv teme jednog kongresa (a ti nazivi bas znaju da budu dugacki ;) a da dobijes neki koristan efekat? To secenje jednsotavno u tom slucaju nema smisla. Elem, kad sam vec tu. Ocigledno je da je u ovakvim slucajevima pregledan browse tesko izvesti pa resenje vidim u prikazivanju slog po slog (naravno uz secenje onog stringa na nekoliko linija) ili?...
clipper.476 goxx, -> #453, vgenije
■ elem,kako da u Clipperu editujem neki program,snimim ga i pokusam da ■ pokrenem da vidim dali sam dobro isprogramirao zeljeni program.zvuci ■ laicki(ne mogu da kazem da nije) ali u Clipper direktorijumu,mislim kako I odgovor će zvučati laički :) Najbolje (barem mislim da jeste jer je par ljudi na sezamu "odobrilo" takav način rada) je da za svoju aplikaciju otvoriš poseban direktorijum i na njemu da otvoriš poddirektorijume za programe (recimo, PRG) i bazu podataka. Dakle: APP ─┬── PRG ovde držiš sve *.prg, *.obj, *.clp, *.lnk, *.rmk └── DBF ovde idu *.dbf, *.ntx (ili neki drugi indeksi) i *.exe Možeš da dodaš i još neki direktorijum (recimo za backup, BAK). Program (najobičniji tekstualni fajl sa ekstenzijom .prg) se edituje običnim tekst editorom (ja lično koristim qedit jer mi nekako najviše odgovara). Znači NE POSTOJI INTEGRISANA OKOLINA kao u pascal-u. Zatim, porgram se kompajlira iz komandne linije sa CLIPPER ime_programa_sa_ekstenzijom_ili_bez_nje Š/parametar...Ć od parametara se najčešće koriste: /n ako se ne navede /n onda se podrazumeva da je ima fajla ujedno i naziv prve funkcije u fajlu. /m fajl se prevodi kao modul /p kreira se fajl .ppo u kojem je dat izgled fajla posle preprocesiranja. (ovo se najčešće koristi kad imaš neku sintaksnu grešku ili kad uvodiš nove komande u clipper /ovo je najžešća stvar :))/ ) /s proverava se samo sintaksna ispravnost fajla /l u .obj fajl se ne upisuju brojevi linija (ovo se koristi samo za finalnu verziju) Rezultat kompajliranja je .obj (laički do kraja :) normalno ako nema grešaka. Posle još samo treba linkovati .obj sa bibliotekama (da bi se dobio .exe :). A to se radi ovako RTLINK FI ime_obj_fajla ŠLIB biblioteka,...Ć Uz clipper ide rtlink linker, a mnogi koriste i blinker. Da bi malo ubrzao rad (editovanje prg -> kompajliranje -> linkovanje -> proba) za početak napravi jedan .bat u kome ćeš imati kompajliranje i linkovanje Na primer: proba.bat (stavi ga u APPĐPRG direktoriju) --------- cls clipper proba /n/m if errorlevel == 1 goto kraj rtlink fi proba if errorlevel == 1 goto kraj move *.exe ..Đdbf cd ..Đdbf :kraj proba.prg (isto u APPĐPRG) --------- // primer jedne funkcije u clipper-u // imena promenljivih i funkcija mogu biti proizvoljne dužine, ali clipper // uzima u obzir samo prvih deset znakova FUNCTION Glavna_funkcija_probe() LOCAL i := 0 CLS FOR i:=1 TO 10 ? i, "Basic-like program :))" NEXT RETURN NIL Posle kompajliranja i linkovanja dobićeš na APPĐDBF direktorijumu proba.exe, a na APPĐPRG će se formirati proba.obj. Baš mu ga dadoh po kompjuteru :) Unapred se izvinjavam ostalom auditorijumu, a tebi srećna plovidba clipper-om! Goran
clipper.477 goxx, -> #461, jolicm
■ E nekad (skoro u svim slučajevima) šta kada Ti napraviš space(45) pa imaš ■ valid, pa se u valid funkciji setiš da dostaviš get-u neku drugu vrednost, pa ■ to ne bude 45 znakova. Ja u valid klauzuli koristim isto što i pre pripreme podatka dakle var := PADR(to_što_se_dodeljuje,45) i nema nikakvih problema. ■ Najnezgodniji rad bez picture stringa je baš u tome da kada ti korisnik ■ kuca ENTER na drugom znaku, dobiješ string od 2 znaka, i kasnije ■ (u ponovnom) editovanju ne moze ti niko upisati veći string od ta 2 znaka. Ako nemaš u GET rečenici PICTURE, string će imati istu dužinu i posle izlaska iz READ-a bez obzira da li si pritisnuo na 2. ili 45. mestu enter (ovo drugo pod uslovom da je SET CONFIRM ON inače nećeš ni dočekati enter :)) Ono što je nezgodno u korišćenju XXX... je što ako je string dužine 45 (i recimo ceo je popunjen) a ti staviš "XXXX..." 40 X-ova, onda će posle editovanja, string i dalje biti dužine 45, ali poslednjih 5 slova neće moći da se edituje. Da li govorimo o istim stvarima? Ovo sam sve upravo isprobao na CLIPPER-u 5.01 Goran
clipper.478 goxx, -> #470, bulaja
■ │U NG pise da FWRITE() upisuje u binarni fajl, ali to izgleda nije tako, ■ │barem ne u CLIPPER-u 5.01. Da se to desava i u 5.20 ■ └─── Sad sam tek video ovo. Šta ne radi? ■ Ako se dobro sećam, 5.01 (Nantucket-ov) je imao neki bug u FRead/FWrite ■ funkcijama, moguće je da je to u pitanju. Ja se baš i ne sećam. I ja svakodnevno koristim ovo u clipper-u 5.01 pa mi sve radi OK. ■ Ako želiš da ostaneš na 5.01 (mada ne znam zašto bi to želeo:) probaj sa ■ patchem za verziju 5.01a Ima puno razloga zašto. :) Goran
clipper.480 goxx, -> #474, bceklic
■ voleo bi da nadjem nekog ko ce mi garantovati da ce u krhkom klipper ■ okruzenju isti raditi bez problema?! Clipper okruženje i nije baš tako krhko kao što izgleda. Ako se poštuju određeni principi sve može da bude veoma stabilno. Goran
clipper.481 goxx, -> #464, mdrazic
■ Pošto si ti već nešto radio u VB za Excell: kako stoji sa brzinom ■ računa, mislim na suvu numeriku? Da li se VB program prevodi ili ■ samo interpretira? Kad sam rekao nešto malo, stvarno sam to i mislio :). Na žalost ne mogu da dam neku ocenu o brzini (mislim da nije sporo :) Program se piše na worksheet-u, dosta je blizak makro jeziku. Sve u svemu može da bude upotrebljivo! Interpretira se. Prilikom pisanja proverava sintaksnu ispravnost (kao MS Quick Basic), ali zato može da se lupi neka metoda koja ne postoji u objektu, pa on pukne prilikom izvršenja. Help mi je malo bio konfuzan ili ja nisam imao živce i razumevanje za njega :). Bilo bi dobro da nabaviš knjigu (ako već nisi) Excel 5, Thomas Chester, prevod u izdanju Mikro knjige. Odlična je i nadasve korisna :). Goran
clipper.482 vgenije, -> #460, mileusna
> Ako te je ovo mucilo, onda sam ti valjda pomogao. :) BTW, > koliko sesecam, Clipper sam po instalaciji dodaje ove linije u > autoexec, a ti si ga verovatno Instalirao je pravilno sto znaci da ovo sto si opisao cuka,mada mene interesuje dali postoji u njemu deo gde cu imati pod menijima(kao u pascalu) da ga automatski kompajliram u memoriju/disk,da vidim help file da snimama,otvaram itd...
clipper.483 d.petrovic, -> #445, mdrazic
> memory(2) - RUN memorija (?) ( B ?) Raspoloživa konvencionalna memorija. If Memory(2) > 192 // tu je negde... run pkzip .... Endif
clipper.484 d.petrovic,
Će se ubijem. USE BLA NEW Set Index to bla1, bla2 // ovde je sve u redu... dbsetorder(0) // ovde su indeksi zatvoreni // ZAŠTO ??? Jesam nešto propustio ? ;(((((
clipper.485 d.petrovic, -> #461, jolicm
> E nekad (skoro u svim slučajevima) šta kada Ti napraviš > space(45) pa imaš neki valid, pa se u valid funkciji setiš da > dostaviš get-u neku drugu vrednost, pa to ne bude 45 znakova. > Najnezgodniji rad bez picture stringa je baš u tome da Loša praksa. Svaka valid funkcija treba da ispita dužinu i da vrati istu.
clipper.486 ikordic, -> #457, bceklic
RE: žasovnik => Ovo resenje se samo po sebi namece i njega sam vec bio ugradio, => ali sat stoji kada inkey nije aktivan ? :( žekaj, pa tvoja xInkey () funkcija treba biti aktivna sve vreme. Daklem, praktično jedini slučaj kada nije aktivna, jeste neko ubibože indeksiranje ili slično, kada je računar po par minuta odsutan. žak i tada možeš da napraviš neki UpdTimer () koji će na svakih npr. 1.000 slogova osvežiti prikaz sata. Obzirom da je rezolucija sata u minutima, a ne sekundama, ne bi se trebale primetiti pauze u radu.
clipper.487 mileusna, -> #475, bceklic
>> browse tesko izvesti pa resenje vidim u prikazivanju slog po slog >> (naravno uz secenje onog stringa na nekoliko linija) ili?... Napravi Browse u kome će to polje biti prikazano recimo kao LEFT(cString,60), a sa recimo <Enter> ulaziš u pregled slog po slog gde se može videti pun naziv. Sa <Esc>, normalno, vraćaš se u Browse itd. Meni se ovo čini kao najbolje rešenje, pa ga zato i koristim, naročito ako imam puno kolona.
clipper.488 mileusna, -> #482, vgenije
>> interesuje dali postoji u njemu deo gde cu imati pod menijima(kao u >> pascalu) da ga automatski kompajliram u memoriju/disk,da vidim help file >> da snimama,otvaram itd... Axa, pa tako kaži. E, tako nešto nema. Ideš editor, prevođenje+linkovanje, testiranje, i tako u krug. Sačekaj Clipper 5.3 :)
clipper.489 nbatocanin, -> #437, goxx
> - Kako se snalazi sa grafikom. Crtanje linija, poligona... > kako u prozoru tako i na papiru? U osnovnoj verziji, teško. Ima nešto za terminal mod, ali nije to to. Treba ti neka grafička biblioteka za VO, na primer, CLGraph. > - Kako se VO snalazi sa matematikom (da li je uopšte > ima?), konkretno logaritmi, sinus, cosinus,... Ima. > - Da li postoji neki dijalog editor (kao u excel-u i > verovatno u VB-u) ili sve mora "ručno" (doduše ovo i nije > tako bitno)? Ima. > - Ukratko, da li bi ovaj "jezik" koji je orijentisan ka > bazama podataka komotno mogao da se koristi za bilo kakve > projekte (u ovom slučaju pomalo grafički orijentisan) ? S obzirom da je pravi kompajler, pravi brz kod, pa bi moglo da se koristi i za takve stvari.
clipper.490 dr.grba, -> #464, mdrazic
>> Pošto si ti već nešto radio u VB za Excell: kako stoji sa brzinom >> računa, mislim na suvu numeriku? Ne bi smelo da bude ikakvih problema u brzini, pa taman i da su u pitanju neke teže funkcije. >> Da li se VB program prevodi ili samo interpretira? žisto interpretiranje. Poziva se kao makro operacija, na nekoliko mogućih načina: kroz meni, na hotkey, na definisani taster, nakon nekog događaja...
clipper.491 jolicm, -> #466, dvesic
>>> E sad ... > E sad :)) kakav je problem dodati jedno EVAL E pazi sad: Kakav je problem staviti već gotov ASM program da to radi ili Kakav je problem staviti u SVE clipperove funkcije zamenu za inkey() (browse, getSys, achoice <- e tu je problem, .... itd Ako je neko preuredio clipper kompletno sa SVOJIM funkcijama, tada to nije problem, ali ako neko to treba SAMO ZBOG SATA da uradi e vala ... E sad :)) da ti kažem kod mene nema problema jer sve što se moglo prepraviti stavio sam moje funkcije, i za taj sat mi je potrebno samo 2 linije dodati u programu ..... E sad ja prekidam (dobrovoljno) repliciranje po ovom pitanju .!
clipper.492 mkurtes, -> #468, bulaja
A da li si pokusao da istu tu memoriju das disk kes programu, ili daukljucis 32-bitni pristup disku i njemu prepustis kesiranje? Ovodobijanje u brzini kompajliranja i linkovanja inace moze imatiposledice u usporavanju nekih drugih operacija (npr. aktiviranjera HHHHHH >>>>>> 32-bitni pristup je vec ukljucen a i kes je bio u kombinaciji. Od svega je dato resenje sa RAM diskom naj brze. 16 MB RAM-a je sasvim dovoljno (bar do sada uz sve sto sam aktivirao) da podnese RAM disk bez pokretanja SWAP file-a. Sto se tice terminalnog prozora (rada starijih prevedenih aplikacija) strahovito mi smeta. Sasvim je na mestu da se od pocetka radi pod VO. Jedino sto je dosta zaj...nKK . Bice tema ili nece? Pozdrav :).
clipper.493 mdrazic, -> #462, jolicm
> E sad gle problema sa clipperom i satom: Korisnik indeksira veliku bazu, > a sat stoji (clipper varijanta), ASM varijanta..sat i dalje lepo radi. Pa da se ne vidi koliko brzo radi :) Da bude brži od Fox-a :) Poslao sam u prethodnoj poruci clock.com rezidentni satić koji radi (nema laži, nema prevare) i koristim ga kada iz app.bat startujem aplikaciju, recimo ovako: APP.BAT : čecho off set podaci=ĐappĐbaze set clipper=f50 clock + (valjda se ovako pali, pročitajte u clock.doc) appexe.exe %1 %2 %3 %4 %5 clock - if errorlevel 1 logout (za mrezni rad - kad ode duže vreme) Sa clock.com nikad nijedan problem nisam imao. Daje u gornjem desnom uglu vreme u formatu hh:mm:ss AM (ili PM) Milan
clipper.494 cnenad,
ŁŁŁ normalno instalaciono (ne mora da bude original :) ili da ga kupujem ŁŁŁ sam kod nekog pirata. Koliko videh, CAVO ne drži baš mnogo pirata, a pogotovo pravu verziju zajedno sa zakrpama. Cene su podigli do zla boga za dotični i po meni nisu primerene za nešto što bih rado uzeo da pogledam kako radi uz naravno maksimalno strpljenje zbog ograničenja u RAM-u.
clipper.495 dr.grba, -> #475, bceklic
>> Kako ces da podelis string koji recimo treba da bude dugacak 80 bajtova >> (a treba da recimo sadrzi naziv teme jednog kongresa (a ti nazivi bas >> znaju da budu dugacki ;) a da dobijes neki koristan efekat?... Kako da ga podelim? Na 3x30 znakova (((: Ako MORA (čuj: mora) da se štampa u jednom redu, odsečem spoljne blankove, ubacim jedan blanko između delova, ošinem kompresovanu štampu i vozi Miško! Koji problem? Nema potrebe da se ide dalje u ovom problemu nego kad obezbeđuješ tabelu analitičkog kontnog plana... >> To secenj jednsotavno u tom slucaju nema smisla. E, ovo je već domen ličnog ukusa i tu argumenti ne pale (: ==================== -----> E, da! Da malo lobiramo VO: uzmi manji font (((:
clipper.496 mdrazic, -> #466, dvesic
> E sad :)) kakav je problem dodati jedno EVAL sa pozivom > funkcije koja ispisuje famozni satić :)) ? A da preko EVAL malo i tetris igramo?
clipper.497 mdrazic, -> #483, d.petrovic
> If Memory(2) > 192 // tu je negde... > run pkzip .... > Endif Meni memory(2) vraća 65498 !? Milan
clipper.498 nbatocanin, -> #487, mileusna
> Napravi Browse u kome će to polje biti prikazano recimo > kao LEFT(cString,60), a sa recimo <Enter> ulaziš u pregled > slog po slog gde se može videti pun naziv. Sa <Esc>, > normalno, vraćaš se u Browse itd. Može se napraviti i TBrowse kome svaki slog ide u _više_ linija.
clipper.499 nbatocanin, -> #484, d.petrovic
> dbsetorder(0) > // ovde su indeksi zatvoreni ??? U kom Clipper-u?
clipper.500 dvesic, -> #484, d.petrovic
>> dbsetorder(0) >> >> // ovde su indeksi zatvoreni >> // ZAŠTO ??? Jesam nešto propustio ? ;((((( Kako misliš zatvoreni ? Fizički ? Ovim bi samo trebalo da postaviš na prirodni ( REcNo() ) raspored. Kako uopšte detektuješ da su zatvoreni ? ( SnoopDos ? )
clipper.501 d.petrovic, -> #499, nbatocanin
>> dbsetorder(0) >> // ovde su indeksi zatvoreni > > > ??? U kom Clipper-u? 5.2d Tek sam skoro prešao na njega, i sad mi ništa ne radi :((( Probajte ovo ljudi pa mi kažite kako radi kod vas.
clipper.502 d.petrovic, -> #500, dvesic
> Kako misliš zatvoreni ? Fizički ? Ovim bi samo trebalo da > postaviš na prirodni ( REcNo() ) raspored. Kako uopšte > detektuješ da su zatvoreni ? ( SnoopDos ? ) Prva detekcija : Puca program po svim šavovima Druga detekcija : CLD
clipper.503 d.petrovic, -> #497, mdrazic
> Meni memory(2) vraća 65498 !? Program ti se raširio pa imaš samo toliko slobodno. Smesti malo to u overleje, a nebi škodilo ni da optimizuješ mašinu ;))) MEMORY() Argument Values ──────────────────────────────────────────────────────────────────────── Value Meaning ──────────────────────────────────────────────────────────────────────── 0 Estimated total space available for character values 1 Largest contiguous block available for character values 2 Area available for RUN commands ──────────────────────────────────────────────────────────────────────── Returns MEMORY() returns an integer numeric value representing the amount of memory available, in one-kilobyte increments. Description MEMORY() is an environment function that reports various states of free pool memory. (Free pool is the dynamic region of memory that stores character strings and executes RUN commands.)
clipper.504 ndragan, -> #475, bceklic
/ Elem, kad sam vec tu. Ocigledno je da je u ovakvim slucajevima / pregledan browse tesko izvesti pa resenje vidim u prikazivanju slog po / slog (naravno Skraćeni naziv u brauzu, a memo polje (samo za tekući slog) sa punim nazivom u posebnom prozoru, lepo urepovano.
clipper.505 jolicm, -> #501, d.petrovic
>> dbsetorder(0) > Probajte ovo ljudi i kažite kako radi kod vas . 5.2d + NTX 5.2d + NSX Za ove slučajeve ti sa potpunom odgovornošću :) izjavljujem da dbsetorder(0) samo ukida redosled po bilo kojem indeksu, ali su svi indeksi i dalje aktivni i ažuriraju se automatski pri bilo kojoj promeni u bazi. Ako posle toga bilo kada kažeš bilo šta od ovog: dbsetorder(1) ... set order to 1 set order to "nazivTaga" Sve mora da radi normalno po tom indeksu ... ono (mora) mislim stvarno MORA i radi. Clipper je pun bagova u nekim drugim slučajevima, ali kod tih naredbi to radi kako treba. z :)
clipper.506 jolicm, -> #496, mdrazic
>> A da preko EVAL malo i tetris igramo? Znam da je ovo šala, al ajd da repliciramo .. šalu na stranu ja imam rešeno indeksiranje preko eval i vizualno praćenje procenata izvršenja takućeg indeksa i ukupno nad svim indeksima u bazi, ALI i dan danas se mislim dal je to uopšte dobro rešenje, jer ipak osetno uspori indeksiranje. Dobijamo neki lep efekat na ekranu za uštrb vremena. Pa se čak ovih dana mislim da napravim i tu funkciju u asembleru. A ovde se preporučuje da se nakači na tu najsporiju stvar u clipperu još i prikazivanje vremena izvedeno na clipperu. LJudi clipper je uglavnom spor za mnogo stvari, i moje ubeđeno mišljenje je da sve što se može napraviti u asembleru, a pritom ako imamo i potrebno znanje iz asm to treba uraditi baš u njemu i rasteretiti clipper što se više može. Primer zabluda: Ljudi prave čak funkcije za indeksiranje po YU rasporedu  u čistom clipperu, zar treba to odobriti samo zbog ideje o čistom clipperu ?? :) :)
clipper.507 mdrazic, -> #503, d.petrovic
>> Meni memory(2) vraća 65498 !? > > Program ti se raširio pa imaš samo toliko slobodno. Smesti malo to u > overleje, a nebi škodilo ni da optimizuješ mašinu ;))) Da parafraziramo malo Muju: 1. Znam da je program veliki. Znam i za overleje. Na mojoj mašini nije problem (sa vidram on imam oko 700K), nego je problem sa 286 stanicama gde se paket koristi (Muja: Pa i nije neki računar:). 2. Poenta moje poruke nije bila da rešim nedostatak memorije za RUN (jer mi to uopšte i ne treba) već što, za razliku od ostalih vrednosti koje memory(n) n=0-4 vraća, memory(2) izgleda ;) nije izražen u KB već u B. Testovi tipa: if memory(2) > 192 uvek prođu ;) 3. Napiši šta misliš o onome pod 2 ;)))) Milan
clipper.508 mdrazic, -> #506, jolicm
> ja imam rešeno indeksiranje preko eval i vizualno praćenje procenata > izvršenja takućeg indeksa i ukupno nad svim indeksima u bazi, ALI i dan > danas se mislim dal je to uopšte dobro rešenje, jer ipak osetno uspori > indeksiranje. Dobijamo neki lep efekat na ekranu za uštrb vremena. Pa se select TABELA nUkupno := lastrec() nSvakih := max( 1, int(nUkupno/200) ) index on Kljuc to INDFILE eval MyFunc() every nSvakih pa nema više od 200 poziva tvoje funkcije, a to ne usporava. > je da sve što se može napraviti u asembleru, a pritom ako imamo i > potrebno znanje iz asm to treba uraditi baš u njemu i rasteretiti clipper > što se više može. Ni ASM nije svemoguć pošto postoji i 'overhead' od prosleđivanja i konverzije parametara ASM <--> Clipper. U svakom slučaju treba probati i videti na delu. Milan
clipper.509 nbatocanin, -> #501, d.petrovic
>>> dbsetorder(0) > 5.2d Hm, mora biti da je nešto drugo u pitanju. Pošalji malo koda.
clipper.510 d.petrovic, -> #506, jolicm
> ja imam rešeno indeksiranje preko eval i vizualno praćenje > procenata izvršenja takućeg indeksa i ukupno nad svim indeksima > u bazi, ALI i dan danas se mislim Ja imao te muke pa me bulaja podseti... Najveće usporenje je kod prikaza na ekranu, stavi da se svaki n-ti put ispisuje na ekranu gde je n := broj slogova / dužina_trake
clipper.511 d.petrovic, -> #507, mdrazic
> već u B. Testovi tipa: if memory(2) > 192 uvek prođu ;) > 3. Napiši šta misliš o onome pod 2 ;)))) Mislim da sam ja tu funkciju napisao odavno pa me mrzelo da je gledam već sam to sročio iz glave. Što se tiče onog o memoriji, ... preterao si ;))) Kada meni treba da izvršim taj backup (poziva PKZIP) proverim koliko ima slobodne memorije pa, ako ima dovoljno ide običan RUN, a ako nema tu stupa blinker u akciju. Swapuje i drljavi pa kad stigne...
clipper.512 d.petrovic,
dbSetOrder(0) Neću da se pravdam, kriv sam ;( Greška je bila u programu, a glavni krivac za moje žalopojke je CLD iz 5.2 koji me je definitivno zbunio kad sam napisao program od 10 linija i on mi je posle dbSetOrder(0) sklonio sve indekse ispred očiju. Više nisam ni tražio grešku u programu.
clipper.513 jkurtic,
Pri prelasku sa Summer '87 na 5.2 Int'l cesto se pojavljuje poruka, Fatal error C3049 String space exhausted, koja nije dokumentovana, ako neko zna o cemu se radi neka ostavi neki odgovor. Pozdrav...
clipper.514 bceklic,
Treba da odradim clipper program koji bi trebalo da radi iskljucivo na jednoj 286 masini sa 1 mb rama. Nemojte me pitati zasto bas na ovom racunaru jer mi niko ne bi poverovao...:( Elem, treba mi koristan savet (mozda ima onih koji su se ovim bavili) da bi rad na tom sr*nju bio sto brzi i efikasniji (direktive linkeru ili sta vec..).. Jos nesto, program koji je radio ok na 386+ racunarima na jednoj 286 mi je pri otvaranju tek kreiranih baza prijavljivao gresku sa indexima (kombinacija dbfntx)?
clipper.515 d.petrovic,
Returns MEMORY() returns an integer numeric value representing the amount of memory available, in one-kilobyte increments. ============ Dovoljno ja sjebe zbunjujem sa orderima pa još i da me .... ;)))))
clipper.516 djelovic, -> #446, mdrazic
> djelovic: brojiš Ja brojim, ali vi nešto slabo pišete :).