clipper.513nbatocanin,
-> #490, cnenad> u principu, ako si vec tako nesto dozvolio bio bi red da
> te i pomenu u dokumentaciji programa - cisto to smatram
> kao moralnu obavezu (ha, cuj moral !?!? - sta je to ?)
> onoga ko koristi tvoj kod)
Kao što rekoh: ko hoće, ok; ko neće nije obavezno. Važno je da se
nešto radi :)
clipper.512nbatocanin,
-> #474, stosic>> SIx driver, Clip4Win, ...
>
> Sta rade doticni?
SIx drajver je drajver za Clipper koji omogućava korišćenje Fox
kompatibilnih indeksa i ima masu korisnih funkcija za rad sa istim.
Veoma hvaljen proizvod. Clip4Win je biblioteka (?) koja omogućava da
u Clipper-u pišete aplikacije koje će raditi pod Windowsima u
protected modu.
clipper.514nbatocanin,
-> #494, cnenad> Interesuje me (i ranije sam pitao) da li je neko uspeo da
> resi problem ispisa realnog vremena (casovnik).
Preporučujem rešenje u čistom Clipper-u. Imaš objašnjenje u ovoj
temi, a imaš i u "Računarima" (tekst "Programi koji sami rade"). Ako
ti nešto ne bude jasno, pitaj!
clipper.515arazumenic,
-> #495, dr.grba-> A GUGOLPLEKS je deset na gugol stepen. Toliko je besmisleno velik...
-> ...kada bi kugla prečnika petnaest milijardi svetlosnih godina bila
-> ispunjena elektronima u stanju mirovanja, dakle bez praznog prostora,
-> bilo bi ih jedva 10 na 3000 (ups! da li je 300 ili 3000, moram da
-> pronađem, zaboravio sam...).
Ovo mi više liči da je za temu misterije.
A što se tiče tih velikih brojeva, negde sam nekad pročitao (Galaksija?)
da je ukupan broj čestica u svemiru reda veličine 10 na 80 stepen, ili
tako nešto (davno je bilo). E pa sad vidite kome trebaju toliki brojevi.
Saša
clipper.516neman,
-> #512, nbatocanin> Veoma hvaljen proizvod. Clip4Win je biblioteka (?) koja
> omogucava da u Clipper-u pisete aplikacije koje ce raditi
> pod Windowsima u protected modu.
Jeste za Windowse, al' ne za One :)) vec za Clipper - ove. Inace
mi se demo za to dosta svideo, prozori su u tekst modu i svaki
predstavlja neki Clipper proces ;)
neman
clipper.517aquarius,
Vec sam pitao, al' izgleda da moram opet...
CLIPPER 5.2c
\clipper5\obj\NTXLOCK2.OBJ
\clipper5\obj\CDXLOCK.OBJ
Cemu i kako sluze ova dva OBJ-a.
Aquarius
clipper.518gari,
-> #516, neman>> Veoma hvaljen proizvod. Clip4Win je biblioteka (?) koja
>> omogucava da u Clipper-u pisete aplikacije koje ce raditi
>> pod Windowsima u protected modu.
> Jeste za Windowse, al' ne za One :)) vec za Clipper - ove.
> Inace mi se demo za to dosta svideo, prozori su u tekst
> modu i svaki predstavlja neki Clipper proces ;)
Svojevremeno sam sa Mojster-a skinuo DEMO verziju
cliper-a koja RADI pod WIN 3.0 (ONAJ WIN)...
Ima li ko verziju koja nije demo?
pozdrav, Gari.
clipper.519eotek,
EMM386 i Clipper
================
Programi u S87 i TLINK ne rade (poruka: nedovoljno memorije ??),
odnosno rade samo pod windows ili dosshell.
Onda uzmem 5.01 i Blinker - rade. Sreci nema kraja....
Ali:>>> kada uradi pack, ili dbedit vece baze sa brzim pregledom
program se zblesira, pa ili pisti ko lud ili blokira, onda opet pod
win
ili dosshell - sada opet radi. Isto se desava i sa dbu, kada
pregledam
vecu bazu "brzim" PgDn (ako ide polako: ne!?). Isti problem i sa
Rtlink...
E sad se ja zblesiram >.
Ako neko ima resenje molim da ga da, verujem da ce i drugima
da
bude interesantno.
THX
ps.: ako zatreba, prilog con'.sys i a'.bat
konfgsfx.execlipper.520dr.grba,
-> #515, arazumenic>> tako nešto (davno je bilo). E pa sad vidite kome trebaju toliki
>> brojevi.
Polu Krneti, da opiše perfomanse Alfe.
clipper.521drdjokic,
Da li postoji mogucnost startovanja programa (koji je napisan u CLIPPER-u 5.01)
u expanded EMS ili extended XMS memoriji i KAKo ?
Unapred hvala
clipper.522dvesic,
-> #521, drdjokic> Da li postoji mogucnost startovanja programa (koji je napisan u
> CLIPPER-u 5.01) u expanded EMS ili extended XMS memoriji i KAKo
> ?
Pitanje nije bas najjasnije.
1. Clipper programi se (kao i svi ostali) izvrsavaju u
osnovnoj memoriji (u onih 640 - 704 k).
2. Clipper-ov MM (memory manager) automatski koristi svu
EMS memoriju za privremeni prostor (kreiranje indeksa,
sortiranje baze, itd...); to mu se moze eksplicitno
zabraniti sa SET CLIPPER=E:0 ili sa
APLIKACIJA.EXE //E:0 .. ostali parametri aplikacije ...
Umesto 0 moze da stoji kolicina (u Kb) EMS memorije
koju odvajas za program.
3. Parametri SWAPK i SWAPPATH (imac detalje u NG bazi za
CLIPPER UTILITIES) omogucuju da privremene fajlove
smesta na RAM disk ( i time indirektno koristi EMS/XMS
memoriju). Paznja : Ovo radi samo ako imas poveliki
ram disk (> 1Mb), jer privremeni fajlovi znaju da budu
poveliki.
Nadam se da ti ovo koristi. Ako su ti potrebni detalji,
mail write dvesic.
Pozdrav,
Dejan.
clipper.523nbatocanin,
-> #516, neman> Jeste za Windowse, al' ne za One :)) vec za Clipper - ove.
> Inace mi se demo za to dosta svideo, prozori su u tekst
> modu i svaki predstavlja neki Clipper proces ;)
Da nisi možda pomešao sa nekim drugim programom? Trenutno su ovakvi
programi modni hit, pa može biti da ih ima više sa sličnim imenima.
Jeste da sam za ovaj saznao iz reklame, ali bih ipak rekao da su
"oni" Njindonjsi: "Clip4Win application will perform significantly
faster than those created by Windows conversion products, because
Clip4Win provides direct acces to the Windows API". U spisku uslova
za korišćenje stoji da treba imati Clipper 5.01, Windows 3.1, 4MB RAM
i Windows kompatibilni linker. Pravi ga firma Grumpfish inc.
clipper.524stosic,
Cekajuci Clipper ++
Ako pokusate da pravite objekte uz pomoc CLASSYVS.LIB-a
dobicete ovo:
Class(y) - Copyright (c) Anton van Straaten 1991, 1992
All rights reserved.
This program incorporates a runtime version of Class(y),
the object oriented extension for Clipper 5.01. This
runtime version does not allow you to create your own
classes, or modify the structure of the classes provided.
Class(y) is published by Integrated Development Corporation.
For more information, please call us at (603) 329-5522.
Integrated Development Corporation
190 Main Street, Hampstead, NH 03841 USA
Moze li neko da okrene broj i raspita se o verzijama (za 5.2c) i ceni ?
Slaba mi konverzacija :)
clipper.525neman,
-> #523, nbatocanin> za koriscenje stoji da treba imati Clipper 5.01, Windows
> 3.1, 4MB RAM i Windows kompatibilni linker. Pravi ga firma
> Grumpfish inc.
Pa izgleda da se radi o dva razlicita proizvoda. A sto se tice
Grumpfisha, njima svaka cast. Apropo ovoga, jel neko ima demo ;)
neman
clipper.526d.petrovic,
-> #521, drdjokicĂ> Da li postoji mogucnost startovanja programa (koji je napisan u
Ă> CLIPPER-u 5.01) u expanded EMS ili extended XMS memoriji i KAKo ?
Pokušaj da formulišeš pitanje drugačije. Program se startuje u
osnovnoj memoriji, a koristi EMS i XMS. žak mislim da korsiti
iextended memoruju bez himen.sys-a.
clipper.527drdjokic,
-> #526, d.petrovic Ono sto me je zanimalo je sledece. Zelim da iz svog CLIPPER programa
pozovem neki drugi komercijalni softver. Kada to uradim ispise se poruka
Out of memory i pukne program. Zato sam zeleo, ako je to moguce da svoj
program pokrenem u XMS ili EMS memoriji, tako da mi convencionalna
memorija ostane slobodna.
clipper.528bulaja,
-> #527, drdjokicKoristi Blinker i SwpRunCmd().
clipper.529drdjokic,
-> #528, bulaja> Koristi Blinker i SwpRunCmd().
Da li mozes nesto blize da mi odgovoris. Imam Blinker ali neznam kako
da ga iskoristim za linkovanje. ?????? SwpRunCmd()
Hvala unapred !
clipper.530dejanr,
-> #529, drdjokic>> Da li mozes nesto blize da mi odgovoris. Imam Blinker ali neznam kako
>> da ga iskoristim za linkovanje. ?????? SwpRunCmd()
U programu staviš nešto kao
r:=swpruncmd("PKZIP -P&f A:BACKUP *.DBF", 300, "", "")
i... radi.
A za "kako se linkuje BLINKER-om", moraćeš malo da prelistaš uputstvo
ili Norton Guide. Nije mnogo različito od RTLINK-a, verujem da ćeš se
brzo snaći. A da se isplati, naročito što se tiče brzine linkovanja,
isplati se itekako!
Pogledaj i tekst o BLINKER-u iz "Računara 90", strana 32.
clipper.531d.petrovic,
-> #527, drdjokicĂ> Out of memory i pukne program. Zato sam zeleo, ako je to moguce
Ă> da svoj program pokrenem u XMS ili EMS memoriji, tako da mi
Ă> convencionalna memorija ostane slobodna.
Stavi u SET CLIPPER=... jedno rnnn (nnn broj kilobajta koliko treba
da ostane free, kad poziva dos) ili koristi blinker i swpruncmd()
funkciju iz samog linkera
clipper.532d.petrovic,
-> #530, dejanrĂ> brzo snaći. A da se isplati, naročito što se tiče brzine
Ă> linkovanja, isplati se itekako!
Zato sto mu nkerementalno linkovanje radi kako treba, za razliku od
rtlink-a, inace, deluje mi nesigurno za raznorazne racunare gde ce
program raditi.
clipper.533marzi,
Hi,
Zna li neko kako mogu da povezem CLIPPER 5.01 za Borlandovim C-om ?
Pozdrav.
clipper.534dvesic,
-> #530, dejanr> isplati se itekako!
Normalno da se isplati !
Ali za razvoj programa :)
Iz iskustava koje sam imao sa ovim linkerom i
Clipperom (5.01 & 5.2) sledi da je on savrsen
za razvoj programa (neprevazidjeno inkrementalno
linkovanje !) ali da je finalnu verziju ipak
bolje linkovati sa RTlinkom.
Kod velikih baza je prilikom indeksiranja (link sa
Blinker-om) doslo do pucanja programa ( cuvena
5333 IE) dok je sa RTLinkom sve bilo OK.
Ako su ti bas neophodne egzibicije tipa (a potrebne su :)
RUN ("VELIKI.EXE")
postoje razni programi (ja koristim SHROOM) koji se ucitaju
PRE tvoje aplikacije, detektuju zahtev za novim shell-om,
swapuju tvoju aplikaciju u mem/disk, izvrse VELIKI.EXE i
vrate aplikaciju u memoriju (Uf, kolika recenica).
Pozdrav, Dejan.
P.S. Pisi ako hoces shroom.
clipper.535dvesic,
-> #533, marzi> Zna li neko kako mogu da povezem CLIPPER 5.01 za Borlandovim
> C-om ?
Vrlo tesko ! Ja sam uspevao da povezem Turbo C 2.0 i
Clipper 5.01 ali ne potpuno korektno :
Linker javlja neke neresene reference, ali sve radi
naizgled ok.
Ako ikako mozes, predji na MS C 5.1 /6.0.
Ako vec hoces da pokusas koristi :
- LARGE model
- Alt math (bez koprocesora)
- bez startup koda.
Pozdrav,
Dejan.
clipper.536dr.grba,
-> #527, drdjokic>> Ono sto me je zanimalo je sledece. Zelim da iz svog CLIPPER
>> programa pozovem neki drugi komercijalni softver. Kada to uradim
Ovo je definitivno posao za Blinker. Posle vrlo kratkog dvoumljenja,
totalno sam se preorijentisao na njega. SwpRunCmd() i "Vozi, Miško..."
clipper.538dr.grba,
-> #534, dvesic>> linkovanje !) ali da je finalnu verziju ipak
>> bolje linkovati sa RTlinkom.
Toliko pod kožu uđu stvari omogućene BLinkerom, da ja više neću bez njega.
Već i sama mogućnost propuštanja parametara tipa BLINKER EXECUTABLE SERIAL
me oduševljava...
>> Kod velikih baza je prilikom indeksiranja (link sa
>> Blinker-om) doslo do pucanja programa ( cuvena
>> 5333 IE) dok je sa RTLinkom sve bilo OK.
Posle par nekompletnih rasprava po ovom pitanju, voleo bih da neko da
poslednju reč o ovom problemu, sa posebnim osvrtom na Clipper 5.2.
>> postoje razni programi (ja koristim SHROOM) koji se ucitaju
>> PRE tvoje aplikacije, detektuju zahtev za novim shell-om,
>> swapuju tvoju aplikaciju u mem/disk, izvrse VELIKI.EXE i
>> vrate aplikaciju u memoriju (Uf, kolika recenica).
Ovo definitivno nije valjano rešenje za integritet aplikacije. A razlog
što sam kategoričan u ovoj tvrdnji je verovatno već ubeležen u iskustvu
nekih od vas: pre ili kasnije neka lujka po paljenju mašine otkrije
editor, koji po nepisanom Marfijevom pravilu isprobava na CONFIG.SYS i
AUTOEXEC.BAT. Da ne govorimo o gomili osnovaca koji posle dva sata staža
na PC-ju u maminoj firmi odluče da optimizuju mašinu, pa onda padne slučaj
"ovo ovde ne treba". Pa onda ti kroz tri dana, po kiši, a autobusa nema pa
nema, odšpaciraš osam kilometara na intervenciju koja se sastoji u vraćanju
jednog u AUTOEXEC.BAT, a nedajbože i čupanju podataka iz posrnule aplikacije.
Zato, zasuci rukave i reši stvar na nivoJu programiranja.
clipper.537dr.grba,
-> #532, d.petrovic>> Zato sto mu nkerementalno linkovanje radi kako treba, za razliku od
>> rtlink-a, inace, deluje mi nesigurno za raznorazne racunare gde ce
>> program raditi.
Ne znam kako se ti ophodiš prema inkrementalnom linku. Ja ga, boga mi,
upotrebljavam samo u toku razvoja programa, gde uz pomoć Blinkera,
par svičeva u .RMK datoteci i par valjano osmišljenih BAT datoteka
dobijam skoro interpretersku okolinu (:
Šalu na stranu, definitivne i valjano testirane verzije programa valja
kompajlirati sa /l opcijom, a bez /b opcije. Veličina .EXE fajla je
manja i manje opterećena nepotrebnim stvarima. A na inkrementalni link
se tada ne bi trebalo oslanjati...
clipper.539dvesic,
-> #538, dr.grba>> Posle par nekompletnih rasprava po ovom pitanju, voleo bih da
>> neko da poslednju rec o ovom problemu, sa posebnim osvrtom na
>> Clipper 5.2.
Evo ovako : covek je imao instaliran Novell Lite 1.0 (znam
da je stara verzija itd itd ali mu je radila posao) na
486/50 sa 8 Mb i 210 Mb diskom kao glavnim racunarom (386SX
su bila dva terminala).
Aplikacija je pratila njegovo komplet poslovanje. U najvecoj
bazi je imao oko 25.000 slogova (samo).
Aplikacija je radjena u Clipper 5.2 verziji. Duzina EXE fajla:
oko 800k linkovano sa Blinkerom. (ja autor aplikacije).
Tip mi je s vremena na vreme prijavljivao pucanje programa i to
uvek u razlicitim situacijama.
Posto sam ugradio error handler, i posto on nikad nista nije
javljao
-> mora da je interna greska ili slicna, koja kroz regularni
handler ne prolazi. (pri tom sam se NORMALNO obezbedio od sitacija
tipa : nema mesta sa svapovanje i slicno).
Jedina intervencija koja mi je prosla je re-link sa RTLinkom.
Od tada, nijedna fantom greska se nije ponovila !
>> Ovo definitivno nije valjano resenje za integritet aplikacije.
>> A razlog
Ne shvatam zasto ovo nije resenje. Isti postupak primenjuje i
SwpRunCmd.
>> editor, koji po nepisanom Marfijevom pravilu isprobava na
>> CONFIG.SYS i AUTOEXEC.BAT. Da ne govorimo o gomili osnovaca
>> koji posle dva sata staza
Kakve veze ovde imaju AutoExec i Config ?
Umesto da se aplikacija stratuje sa :
APP.EXE //f:65 /Mono ...
startuje se sa :
shroom -q -w APP.EXE //f:65 /Mono ...
Stavis lepo Shroom u direktorijum aplikacije, napravis ga
Hid/Read Only i zaboravis na njega. Ako ga klinci vec izbrisu,
ti TeleReplicu - pa prebacis coveku preko modema novu kopiju :))
Pozdrav,
Dejan.
P.S. A da Blinker ima strava opcije - ima. Ne jednom sam pozalio za
njima !
PP.S Verzija Blinkera je 2.01.
clipper.540gari,
Da li bi neko mogao da stavi ovde komentar
u vezi novih datoteka u dir r:\ibmpc\database:
pcf70.a01 ... pcf70.a07
Posto je telefonski impuls veoma skup za akrobaciju
skidanja ovih fajlova u Novi Sad, voleo bih
da znam o cemu se konkretno radi i
vredi li skidati to...
pozdrav, Gari.
clipper.541bulaja,
**** new file ****
R:\IBMPC\CLIPPER\*.*
----------------------
tbmore zip 7699 Objasnjenje interne strukture TBrowse objekata
A description of the internal TBrowse-structure as far as I know it,
plus code of 10 funcs I use to access TBrowse-internals
clipper.542d.petrovic,
-> #537, dr.grbaĂ> Ne znam kako se ti ophodiš prema inkrementalnom linku. Ja ga,
Ă> boga mi, upotrebljavam samo u toku razvoja programa, gde uz pomoć
Ă> Blinkera,
Možda nisam bio jasan:
Blinker koristim samo pri razvoju i samo za inkrementalno linkovanje.
Svičevi /l i <bez>/b su mi default I PRI RAZVOJU, treba baš da
zaglavim da bih to izmenjao. Za Rtlink i izvršnu verziju mi je po
tome dovoljan samo jedan .bat fajl, samo još ostaje da ručno izbacim
višak koda ;))). Neverovatno je koliko nepotrebnih funkcija zna da mi
ostane u jednom programu kad ga završim ;)))
clipper.543d.petrovic,
-> #533, marziĂ> Zna li neko kako mogu da povezem CLIPPER 5.01 za Borlandovim C-om
Ă> ? Pozdrav.
Ma jel ti ja rekoh svoja iskustva? ;))
Ne sećam se šta me je zezalo, delimično je radilo, ali znam šta sam
naučio iz toga:
"Zaboravi na Borland + Clipper"
clipper.544dvesic,
Evo za zainteresovane, SHROOM !
Pozdrav,
Dejan.
shroom2d.zipclipper.545dsisic,
-> #536, dr.grba
>>> Ono sto me je zanimalo je sledece. Zelim da iz svog CLIPPER
>>> programa pozovem neki drugi komercijalni softver.
> Ovo je definitivno posao za Blinker. Posle vrlo kratkog
> dvoumljenja, totalno sam se preorijentisao na njega.
> SwpRunCmd() i "Vozi, Misko..."
The OverLay() Library for Clipper Ć The OverLay() Library Ć Function Library
────────────────────────────────────────────────────────────────────────────
Syntax: <log Successful> = OverLay( [<char Program>]
[, <num Memory>]
[, <char Pathname(s)>]
[, <char Environment>] )
Purpose: To run an external program or shell to DOS with the
requested amount of memory free.
Args: <char Program> is a string containing the name of the
program you want to run and its parameters. If it is an
empty string, the function will shell out to DOS.
<num Memory> is the amount of memory in K that you want
to free up. Specify 0 or a number greater than available
memory to free up all the memory possible.
<char Pathname> is a string containing one or two DOS
path specifications (separated by a semi-colon) to tell
OverLay() where to place the temporary disk file(s)
produced by OverLay() (if OverLay() needs to use a disk
file).
<char Environment> is a set of environment strings
(separated by CHR(0)s) to modify the parent environment.
This can be used to add, delete, or change any
environment string in the parent environment.
Returns: A logical value. .T. means the function succeeded, and
.F. means the function call encountered an error. When
a .F. value is returned, the O_ErrMajor() function should
be used to determine the cause of the failure.
Usage: This function is the main reason for purchasing The
OverLay() Library. It allows you to run another large
program from your Clipper application. The behavior of
this function can be controlled by many of the other 30+
library functions.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Dobra stvar, jel tako ?!!!
clipper.546dr.grba,
-> #539, dvesic>> Kakve veze ovde imaju AutoExec i Config ?
>> Umesto da se aplikacija stratuje sa :
>>
>> APP.EXE //f:65 /Mono ...
>>
>> startuje se sa :
>>
>> shroom -q -w APP.EXE //f:65 /Mono ...
OK, OK, OK, nisam znao za ovo, NHF, nadam se. Samo sam zagovarao neko
"čisto" rešenje...
clipper.547dr.grba,
-> #542, d.petrovic>> višak koda ;))). Neverovatno je koliko nepotrebnih funkcija zna da
>> mi ostane u jednom programu kad ga završim ;)))
Ajde, leba ti, pričaj mi malo o tome (:
Ja jednom kranuo da čistim smeće iz aplikacije. Sutra oko podne sam odustao...
clipper.548dr.grba,
-> #545, dsisic>> The OverLay() Library for Clipper Ć The OverLay() Library Ć
>> Function Library
...
>> Dobra stvar, jel tako ?!!!
?
A tek boja tapeta u predsoblju mog ujaka! (:
Dae gu de gi vidime.
clipper.549d.petrovic,
-> #547, dr.grbaĂ> Ja jednom kranuo da čistim smeće iz aplikacije. Sutra oko podne
Ă> sam odustao...
Negde sam pročitao nešto kao neka pravila...
- Teško da će program da proradi iz prve.
- Ako proradi velika je verovatnoća da ne radi korektno
- Ako radi korektno sigurno će ostati gomila nepotrebnih funkcija
....
sad... nisam to baš lepo interpretirao... :(((
clipper.550ndragan,
-> #547, dr.grba/ Ja jednom kranuo da čistim smeće iz aplikacije. Sutra oko podne sam
/ odustao...
Opšti deo:
Imam rešenje: napišeš generator dokumentacije, da ti napravi kompletan
spisak svih fajlova, rutina, .trt i .mrt fajlova koji čine aplikaciju,
pa onda kreneš da premeštaš nepotrebne u poddirektorij (ili da ih
brišeš, ako imaš arhivu).
E onda probaš da li ti je aplikacija i dalje kompletna.
Deo za Foksovce:
Iz fajlera (like *.prg) lepo pogledam šta ima, i to po starosti;
najstarije rutine potražim (ctrl-f) i ako se ne spominju nigde u
aplikaciji, ladno brišem.
Epilog:
Uspeo sam da svedem neke aplikacije sa 180K zipa na 115, a neke na
samo 45.
clipper.551eotek,
-> #540, gari> Da li bi neko mogao da stavi ovde komentar
> u vezi novih datoteka u dir r:\ibmpc\database:
> pcf70.a01 ... pcf70.a07
Prvi utisci:
radi se o nekoj vrsti lepseg dBase III+ sa sledecim dodacima:
- radi u tekstualnom i grafickom rezimu, u boji i c/b, podrzava
misa,vrsi import i export 6-7 formata (starijih, ne previse zna-
cajnih),moguc je telefon dial iz baze (radi i na nasim vezama),
moguca izrada grafikona (u grafickom modu) sa nekoliko standardnih
opcija na osnovu postojece baze podataka, uz naziv baze daje se
i mogucnost dodavanja opisa baze (cca 50 ch), podrzava dovoljan
broj stampaca (osnovna lista).
- sam .exe ima oko 900 kb, a napisan je - koliko vidim - u
Borland C++ i Clipper, uz koriscenje nekih dodatnih drajvera
za graficke kartice. ceo program zauzima oko 2 MB na disku.
- program je shareware, naznaceno je 60 dana (ne znam sta ce
biti nakon toga, ali izgleda da ce traziti serijski broj i/ili
sifru), kosta ispod 100 USD (single user) ili oko 500
za LAN (koji, kako - nisam bas nasao)...
- down ili ne: pa, informativno je.
rgds
:)
eotek
clipper.552domana,
Postovane kolege,
Cuo sam da postoji Btrieve record drajver za Clipper
pod imenom RASQL/B firme Horizon.
Da li je jos neko o tome nesto nacuo...
Btrive je inace poznat po klijet-server nacinu rada
sto je neobicno bitno za Clipper u mrezi !
Ako imate BILO KAKVU informaciju - makar i kontakt tel.
molio bih Vas da mi je prosledite na licnu postu...
Domana
clipper.553dvesic,
Cao narode !
Da li neko zna zasto sledeci red NE PROIZVODI gresku ( ni
prilikom kompajliranja ni prilikom startovanja ) :
? AllTrim (9)
Da podsetim : AllTrim bi trebala da radi samo sa stringovima NE i sa
brojevima !
Dejan.
clipper.554gari,
Skinut fazon sa telepathy_home BBS-a (USA):
Ako imate problema sa LIB-ovima (CLIPPER501)
stavite u source:
ANNOUNCE CLIPPER501
Oni tvrde da ovo sljaka...
Ko bude ispitao, neka javi o utiscima...
pozdrav, Gari.
clipper.555snemcev,
-> #552, domana>> Ako imate BILO KAKVU informaciju - makar i kontakt tel.
>> molio bih Vas da mi je prosledite na licnu postu...
Ne, ne, ne i po sto puta neeeeee! ;)
Zanima još nekog, dajte u conf.
clipper.556dr.grba,
-> #553, dvesic>> Da li neko zna zasto sledeci red NE PROIZVODI gresku ( ni
>> prilikom kompajliranja ni prilikom startovanja ) :
>>
>> ? AllTrim (9)
>>
>> Da podsetim : AllTrim bi trebala da radi samo sa stringovima NE i
>> sa brojevima !
Ne znamkako tačno Clipper interpretira ovu situaciju, bilo bi zgodno zaviriti
pod haubu pa ispitati. Ono što je moguće kod nekih kompajlera jeste da broj
mogu u sličnoj situaciji interpretirati kao string.
Baš zanimljivo.
clipper.557dr.grba,
Da li se nekoigrao sa ORDBAGxxx() funkcijama indeksnih drajvera u Clipperu
5.2 i da li je pokušavao da otkrije neka suštinska poboljšanja njihovim
korišenjem?
I najzad, da li se neko bavio posebnim sortnim rasporedima u Clipperu? Znam
za neka rešenja, ali najpre vas da čujem.
clipper.558ndragan,
-> #553, dvesic/ ? AllTrim (9)
Foks lepo javlja "Illegal parameter type, or count". Šta bi Kliperu?
clipper.559aquarius,
-> #556, dr.grba<> pod haubu pa ispitati. Ono sto je moguce kod nekih kompajlera
<> jeste da broj mogu u slicnoj situaciji interpretirati kao
<> string.
<>
<> Bas zanimljivo.
Da li su samo brojevi u pitanju ?
? ValType( AllTrim( Date() ) ) =-> C
? Len( AllTrim( Date() ) ) =-> 0
? ValType( AllTrim( .T. ) ) =-> C
? Len( AllTrim( .T. ) ) =-> 0
? ValType( AllTrim( { |b| b +1 } ) ) =-> C
? Len( AllTrim( { |b| b +1 } ) ) =-> 0
? ValType( AllTrim( { 1, 2, 3 } ) ) =-> C
? Len( AllTrim( { 1, 2, 3 } ) ) =-> 0
Gde smo sada ?
Aquarius :(
clipper.560aquarius,
-> #548, dr.grba<> A tek boja tapeta u predsoblju mog ujaka! (:
<>
<> Dae gu de gi vidime.
dr Grbi i svim zainteresovanima !
Ne znam za tapete tvog ujaka, ni da li ima predsoblje, ali
sto se tice Overlay()-a, evo ga, pa javi iskustva.
Aquarius :)
overlay.arjclipper.561jorad,
Wideo sam u V.Six demou kalendar koji mi se dopao pa sam uradio
nešto slično. Evo ga kao prilog, pa ko voli nek izvoli...
Rade
kalendar.zipclipper.562nbatocanin,
-> #557, dr.grba> Da li se nekoigrao sa ORDBAGxxx() funkcijama indeksnih
> drajvera u Clipperu 5.2 i da li je pokušavao da otkrije
> neka suštinska poboljšanja njihovim korišenjem?
Pa, suštinska poboljšanja zavise od RDD-a koji koristiš. Na primer,
ako koristiš DBFNTX, ne dobija se ništa naročito, ali ako koristiš
DBFCDX, dobija se. Najatraktivnija stvar je trpanje više indeksa
(ordera) u jednu datoteku. Inače, sve ove funkcije se koriste
indirektno u naredbama INDEX, USE, ORDER, ...
clipper.563dr.grba,
-> #560, aquarius>> Ne znam za tapete tvog ujaka, ni da li ima predsoblje, ali
>> sto se tice Overlay()-a, evo ga, pa javi iskustva.
Skinuću taj fajl i poigrati se njime prvom prilikom.
Zašto se vređaš? Samo sam malo ironično hteo da podržim konstruktivnost
u raspravi.
clipper.564nesa,
Šaljem ovu rutinu u MSC, koja čita i/ili postavlja atribute POSTOJEĆEM
fajlu! Iz Clipper-a se poziva sa (npr.):
cdos_setfi("file.ext", _A_HIDDEN + _A_RDONLY)
Nevolja je što sa C kompajlerom iz verzije 6.0 nakon ove kobasice:
CL fileattr.c /c/AL/Gs/Zl/FPa -link /NOE/se:512
dobijam poruku:
Command line error D2002:Conflict in memory model ili tako nešto.
Svi parametri su po pravilima za povezivanje C sa Clipperom (po Rick
Spenc-u). žuo sam da je razlog to što nemam C verziju 5.1!
Ovo mi je potrebno hitno. UKOLIKO ima dobrih duša koje će ovo uspešno
prevesti i povezati i poslati .OBJ fajl (uz dodatna obaveštenja gde da
nadjem C5.1)!
Evo i programa:
/***
* Dobijanje i definisanje atributa datoteke
*/
#include "extend.h"
#include "dos.h"
/***
* BROJNI cdos_getfi(path, attribute)
*
* ZNAKOVNI path Puna putanja
* BROJNI *attributes Broj za smestanje atributa.
* Mora biti prenet preko reference.
*
* Odredjivanje atributa datoteke ili direktorijuma. Atributi su u
* attribute (mora biti prenet preko reference). Rezultat funkcije
* je 0 ako je ok, u suprotnom je broj greske.
*/
CLIPPER cdos_getfi()
{
unsigned attributes, errcode;
/* Poziv funkcije iz biblioteke */
errcode = _dos_getfileattr(_parc(1), &attributes);
/* Smestanje atributa u parametar prenet preko reference */
_storni(attributes, 2);
/* Vracanje kôda greske u Clipper */
_retni(errcode);
}
/***
* BROJNI cdos_setfi(path, attribute)
*
* ZNAKOVNI path Puna putanja
* BROJNI attribute Novi atributi
*
* Definise atribute datoteke ili direktorijuma.
* Vraca 0 ako je ok, u suprotnom je broj greske.*/
CLIPPER cdos_setfi()
{
_retni(_dos_setfileattr(_parc(1), _parni(2)));
}
hederi.zipclipper.565nesa,
Postoji li neka asemblerska funkcija za set atributa postojećem fajlu!
Pozdrav!
clipper.566peca.st,
-> #565, nesa!-> Postoji li neka asemblerska funkcija za set atributa postojećem
!-> fajlu!
Postoji, naravno. :)
DOS funkcija 43h :
Postavljanje atributa:
AH 43h
AL 01h
CX atributi
DS:DX seg:off na ime fajla.
Int 21h
U AX će vratiti grešku, ako je ima.
Atribute setuješ ovako:
00h - normal
01h - read only
02h - hidden
04h - system
20h - archive
Ako hoćeš kombinaciju nekih, samo ih saberi.
Greške koje mogu da se vrate u AX:
1 - Invalid function code
2 - file not found
3 - path not found
5 - access denied
Ako hoćeš da čitaš atribute, sve je isto, samo što će ti u CX
biti vraćeni atributi tog fajla.
Peđa.
clipper.567dcolak,
Momci, potrebna mi je pomoć...
Koristi li neko BRIEF pri programiranju u (jel'te) Clipper-u?
Potrebni su mi neki makroi napravljeni da bi olakšali programiranje
u Clipper-u.. Zovu se DBF*** (zaboravih ime) ili tako nekako, ali
uglavnom kao olakšavaju pisanje .prg...
So, ako neko ima neke makroe, neka ne bude zamoljen...
Sledge DAMMIR!
clipper.568ematic,
-> #565, nesa> Postoji li neka asemblerska funkcija za set atributa postojećem
> fajlu!
Evo. Poziva se kao [nRetVal :=] CHMOD(cImeFajla, nAtributi). Vraća 0
ako je uspelo, broj greške ako nije. Ovo je samo osnova, ko hoće može
da doda proveru parametara ili da izmeni funkciju tako da može i da
vraća atribute(onda u al ide 0 a atributi se vraćaju u cx)
;--------------------<chmod.asm>------------------------------------
INCLUDE EXTENDA.INC
CLpublic <CHMOD>
CLfunc int CHMOD <char ime, int atributi>
CLcode
push ds
lds dx, ime
mov cx, atributi
mov ax, 4301h
int 21h
jc greska
mov ax, 0
greska: pop ds
CLret ax
END
;--------------------<chmod.asm>------------------------------------
Zgodno je da se atributi definišu u heder fajlu, nešto kao:
//--------------------<atributi.ch>------------------------------------
#define _A_RDONLY 01
#define _A_HIDDEN 02
#define _A_SYSTEM 04
#define _A_ARCH 16
//--------------------<atributi.ch>------------------------------------
Kombinacije atributa se dobijaju sabiranjem. Npr. pera :=
chmod("mika.xyz", _A_RDONLY+_A_HIDDEN)
pozdrav
emil :)
clipper.569ematic,
-> #568, ematic># define _A_ARCH 16
Bože mili, tek sad videh :( Treba 32 umesto 16. Izvinjavam se zbog
greške jer sam kucao napamet is sora.
clipper.570peca.st,
-> #566, peca.st!-> Ako hoćeš da čitaš atribute, sve je isto, samo što će ti u CX
!-> biti vraćeni atributi tog fajla.
Izvinjavam se, tek sad videh...
Nije baš sve isto, u AL se umesto 01h stavlja 00h
Sori na grešci...
Peđa.
clipper.571gari,
-> #567, dcolakAko mislis na Dbrief, imam ga, pa ako ti treba, javi...
pozdrav, Gari.
clipper.572qleq,
U file-u SELFJOIN.ZIP se nalazi primer realizacije rekurzivnog
preslikavanja objekta u modelu objekt-veza
( E(ntity)-R(elationship) model ), realizovan na Clipper-u :
Tabela(relacija) RADNIK(.Dbf) sadrzi dva atributa(kolone)
semanticki
slicnog sadrzaja : 'SRADNIK' i 'SRUKOV' - prvo jaĐprimarni kljuc
tekuceg record-a (radnika), drugo je spoljni(sekundarni) kljuc,
koji referencira na (istu) tabelu (RADNIK) i sadrzi ID(sifru)
radnika nadredjenog 'tekucem (radniku)', dakle referencira na neki
drugi record u RADNIK.Dbf .
Radnik.DBF se otvara u dva radna podrucja, a veza se uspostavlja
SET RELATION komandom.
Prirodno, CHILD AREA je indeksiran po SRADNIK.
PARENT AREA je indeksiran po SRUKOV da bi redosled listanja bio
identican kao u izvoru (vidi : SelfJoin.Inf, u SelfJoin.Zip).
┌──────────────┐ (0,1)
│ RADNIK ├────────┐
└──────┬───────┘ │ NAD
(0,M) │ │
│ ╔══════╗
└─────────────║ STRU ║ //single box : Entity
POD ╚══════╝ //double box : Relation
Pozvao bih sve, koji kreiranje svog aplikativnog software-a na
Clipper-u
zasnivaju na bilo kojoj metodologiji projektovanja baza podataka
( BP - informacionih sistema, aplikacija, programa - termin nije
bitan)
( relacioni,mrezni,hijerarhijski model, strukturna sistem analiza,
model objekt-veza i sl.), da saopste svoja iskustva, savete,
misljenja,
podsmehe i sl. - kako to cine, zasto to ima i/ili nema smisla itd.
B.Vulin
P.S. Primer se zasniva na teoriji za cije navodjenje nema mesta,
Sam izvor je informativan u tom smislu.
Onima kojima je navedeno u primeru poznato : zao mi je zbog
Vaseg utroska vremena,prostora,para(phone).
selfjoin.zipclipper.574dr.grba,
-> #572, qleq>> Pozvao bih sve, koji kreiranje svog aplikativnog software-a na
>> Clipper-u
>> zasnivaju na bilo kojoj metodologiji projektovanja baza podataka
...
>> P.S. Primer se zasniva na teoriji za cije navodjenje nema mesta,
>> Sam izvor je informativan u tom smislu.
Primer je zanimljiv, ima smisla.
Ali ima i grešku: gde ti je Jovan u levoj tabeli? I kako razrešavaš taj
momenat - kada ne postoji nadređeni radnik? Pripazi na takve momente...
Na kraju, kroz postupak normalizacije veza već u drugoj normalnoj formi se
prepoznaju ovakve tačke, ako se dobro sećam. Kako si obavio normalizaciju?
I na kraju jedno pitanje: da li se stvarno vrsta relacije označava kao
(0,1) i (0,M)? Koliko je meni poznato, u toku projektovanja baze podataka
nakon normalizacije (već u trećoj normalnoj formi) se prepoznaju sledeći
odnosi:
1 : 1 - jednom entitetu korespondira jedna i samo jedna relacija
po datom ključu (opšti matični podaci na osnovu ključa;
postoji npr. jedan i samo jedan vlasnik vozila reg.
tablice XY-123456)
1 : C - jednom entitetu korespondira jedna ili nijedna relacija
po datom ključu (slučaj koji se dešava u tvom primeru - postoji
samo jedan ili nijedan rukovodilac radniku);
1 : M - jednom entitetu korespondira nepoznat broj relacija (0 - n)
po datom ključu (komitent 123456 je ostvario promet na 0 - n
transakcija);
a sve ostale kombinacije ispadaju iz kombinacije nakon normalizacije.
Malo me zbunila nomenklatura (0,1)... jer mi je nepoznata.
P.S. I stavi SET EDITOR DOD, da ti ne bi pravio one seckalice po tekstu.
Takođe, onolika leva margina kroz ceo tekst je sasvim izlišna.
clipper.575ndragan,
-> #572, qleq/ P.S. Primer se zasniva na teoriji za cije navodjenje nema mesta,
Ova rečenica je podjednako dobra za navod kao i bilo koja druga.
Teorija je malo opširnija, ali u praksi čak nije neophodno potrebno
otvaranje baze dvaput - dovoljno je definisati do koje dubine se ide u
samopozivanju, te brojeve slogova od kojih smo krenuli u dubinu pamtiti
na nekoj vrsti steka (u nizu, najbolje).
Tako se u običnoj .dbf bazi sa _jednim_ indeksom može napraviti
razgranata struktura (drvo), s tim što ja to radim obrnutom logikom, u
drugom polju navodim indeksni pojam sloga nižeg nivoa, tako da bi se u
tvom primeru rukovodilac pojavio onoliko puta koliko ima neposredno
podređenih, svaki od njegovih podređenih onoliko puta koliko _on_ ima
neposredno podređenih i tako do nekog nivoa na kojem bismo imali radnika
bez podređenih, dakle sa praznim drugim poljem.
Za stvar za koju je koristim, ova organizacija je sasvim ok, mada je
obrnuta od tvoje, ali logika je ista.
clipper.576domana,
B00000000000000
Imam jedan predlog "na Clipper programere"...
Sve oko nas je otprilike prilicno ruzno a ide Nova godina
i verovatno je da nismo u prilici kao nekad' i kako bi smo zeleli...
'Ajde da svaki Clipper programer na Sezamu POKLONI ostalim
Clipper programerima (na istom) po neko parce simpaticnog koda
nastalog u ovoj neveseloj godini,
bez takmicenja ciji je naj* i tako to,
jednostavno samo poklon...
Eto, pogledajte kod uz ovu poruku "u to ime"...
/*****************************************************
* *
* Sretna <novaGodina> svim Clipper programatorima ! *
* *
*****************************************************/
Ojasnjenje preUpotrebe,
...piste Clipper aplikaciju koristeci nizove
i Clipper umetanje niza u niz u niz u niz u ...
...sigurno Vam je zatrebalo da vidite sadrzaj te
carobne tvorevine umetanja SVE SA KOORDINATAMA
(indeksima) svakog krajnjeg clana (koji nije niz)
i tipom istog...
...fajl koji ide uz ovaj tekst, jedna lepa gledalica
umetnutih nizova, je upravo to - umesto:
┌──────────────────────────┐
│ aEval(aNiz,{|q|qout(q)}) │
└──────────────────────────┘
gde vidite samo prvi sloj kazete:
╔═════════════╗
║ aVidi(aNiz) ║
╚═════════════╝
i uzivate...
Domana
avidi.prgclipper.577dvesic,
Cao !
Evo nesto za poklon !
Mala ASM rutina (Sat.Obj - 344 bajta) za rezidentan satic
koji mozete da ukljucujete/iskljucujete. Fino radi.
Ako je vec bilo (ja sam od skora ovde) ili vam se ne svidja,
pisite ... poslacu vam neki drugi pokloncic !
Pozdrav,
Dejan.
sat.arjclipper.578dejanr,
Jedno iskustvo sa Clipper-om, možda će nekome pomoći u sličnoj prilici.
Računar je AT 12 MHz (zvani kanta ;) sa 1 M memorije, na sebi ima relativno
nov IDE disk od 120 mega (pre je imao matori disk primeren sebi, ali je isti
crkao pa je bar to moralo da se podmladi) i osmobitnu Arcnet kartu. Vezan je
u mrežu koja radi pod Novell-om 2.11 (k'o što vidite, sve same stare verzije
al' šta da se radi, tako je :)
Na njegovom lokalnom disku je DBF fajl od svojih 90 megabajta, podaci o svim
privatnim firmama u Srbiji. Njih oko 95,000. Ukazala se potreba da se ta
baza podeli na dve baze, jedna sa firmama čiji je matični broj manji od
7,000,000 a druga sa firmama čiji je matični broj između 7,000,000 i
8,000,000. Ima ih otprilike podjednako, onih manjih oko 45,000, većih
50,000.
Krenem ja da izdvajam firme ispod 7,000,000, otprilike ovakvim Clipper
programom:
use f:srbija6
append from c:srbija for matbroj<=7000000
quit
Krene on da žvaće, žvaće i sažvaće za cca 15 minuta, što je bilo izuzetno
prijatno iznenađenje, ja očekivao bar sat. E sad krenem da brišem te firme
iz baze, otprilike ovako:
use c:srbija
delete for matbroj<=7000000
quit
Krene to da radi, radi, radi, ... , radi, prošlo 15 minuta, pola sata,
sat, sat ipo! i ja ga najzad prekinem, da vidim šta se dešava. A on
tek prešao 20,000 firmi. Probao sam posle iz dbase-a III (čisto da vidim
jel' moguće da je toliko sporo, moguće je), probao da napravim petlju
da briše slog po slog, ma sve gore od goreg. Ispalo je po nekom proračunu
da bi trebalo 5 sati da se to obavi, ne računajući posle PACK koji tek
mogu misliti koliko bi trajao. Onda nekako oslobodih 50 mega na mrežnom
disku, pa napravim jedno:
use f:srbija7
append from c:srbija for matbroj>7000000
quit
I to se opet završi za 15-20 minuta posle čega sam originalnu bazu prosto
obrisao. E sad, kako je moguće da je 20 puta brže da podatke "pregura"
preko spore Arcnet mreže, nego da samo setuje slogovima jedan bit da su
obrisani, to je van moje moći sfatanja.
clipper.579dvesic,
Pozdravi !
Evo za korisnike Brief editora (v3.1, a verovatno radi i sa 3.0)
jedan simpatican makro za clipper programe.
Ideja je da vam ubrza pisanje programa, inteligentno dopunjavajuci
ono sto pisete ("Template Editing").
Primer : Ako otkucate : F<space>, na ekranu cete dobiti :
Function ()
Return
i slicne sitnice...
Ako vam se dopadne i ako budete zeleli neke izmene, pisite.
Vise nego rado cu vam izaci u susret.
Autor makroa je moja malenkost; makro je nastao po ugledu na
Pascal.Cb; Autori : Dave Nanian i Michael Strickman.
Dejan.
macro.arjclipper.580gavros,
-> #578, dejanr> preko spore Arcnet mreže, nego da samo setuje slogovima jedan
> bit da su obrisani, to je van moje moći sfatanja.
Vrlo dobro,ja sam zbog tog jednog bita dobio šest iz Informacionih
struktura i procesa,u stvari šta je bilo:
Odem ja na usmeni,kao idem da razbijem,nakon dobrog pismenog (85 od 100)
i pita me profa zašto kod serijske datoteke nije iskorišćenje 100%.
Ja reko' pa to je logično,jer se slogovi ne brišu fizički,već logički.
Dakle,kad brišemo bit da li postoji slog,slog i dalje fizički postoji.
On reče BIT??????
tu se rastegla rasprava,kao da sam rek'o bar terabajt i nakon
20-minutnog DAVLJENJA,pita on jednog kolegu i ovaj reče bajt.
Bajt,kolega,bajt,reče profa.
Pozdrav.
P.S. Nisam proveravao,ali ako je bit poješću se.
clipper.581dejanr,
-> #580, gavros>> > nego da samo setuje slogovima jedan bit da su obrisani, to je
>> > van moje moći sfatanja.
>>
>> Vrlo dobro,ja sam zbog tog jednog bita dobio šest iz Informacionih
>> struktura i procesa,u stvari šta je bilo:
>> ...
>> On reče BIT??????
>> tu se rastegla rasprava,kao da sam rek'o bar terabajt i nakon
>> 20-minutnog DAVLJENJA,pita on jednog kolegu i ovaj reče bajt.
>> Bajt,kolega,bajt,reče profa.
>> P.S. Nisam proveravao,ali ako je bit poješću se.
Hm, hm, jel se jedeš ako je DVA bita?
Naime, ako me dobro sećanje služi, kod DBF formata svaki slog počinje
bajtom 20 (ascii blanko). Ako je slog obrisan, počinje sa 2A (ascii *).
Brojevi se, dakle, razlikuju na prvom i trećem bitu (brojano sa desna,
počevši od nultog bita). žini mi se da se ostali bitovi tog bajta ne
koriste, tako da se na neki način može reći da čitav bajt služi da se
obeleži da li je slog obrisan ili ne.
Naravno, u nekoj drugoj implementaciji formata baza podataka moglo bi
se zamisliti i neko drugačije kodiranje. Najzad, informacija obrisan/
nijeobrisan i jeste jedan bit po prirodi stvari.
clipper.582arazumenic,
-> #576, domanaEvo, da ti se pridružim, podržavajući tvoju ideju.
==================== ovde iseći ===============================
// Funkcija ZAMENA
// Ulazni parametri: nBroj, cOpis
// Poziv: ML_ZAMENA (nBroj, cOpis)
// Opis: Ovo je zamena za funkciju TRANSFORM i ima iste ulazne parametere
// kao i ona, ali ispisuje brojeve u nasem formatu:
// hiljade su razdvojene tackom, a decimale od celog dela broja zarezom
FUNCTION ml_zamena (Broj, Prikaz)
return
strtran(strtran(strtran(transform(Broj,Prikaz),'.','!'),',','.'),'!',',')
==================== ovde iseći ===============================
Primer: nBroj = 123456.789
cOpis = "999,999.999"
ML_ZAMENA(nBroj, cOpis) daje 123.456,789
Nadam se da će nekom trebati.
Saša
clipper.583svaba,
-> #497, bulaja>>> Da li je za update sa Clipper 5.2 na Clipper 5.2c dovoljan
>>> samo 52cus.exe ili je (kao sto se u readme kaze) potreban i
>>> PATCH.EXE ? │Ako je potreban, gde se moze nabaviti ?
>>>
>>> Potreban je i patch.exe. Ako ga nema u top 5.2c update
>>> paketu, onda ga sigurno ima u dogradnjama za verzije 5.2a i
>>> 5.2b (neka od njih je valjda jos na Sezamu:). Pogledacu danas
>>> da ubacim u odvojen patch.exe u dir, pa da se pobrisu ti
>>> stari update-ovi.
E svo vreme potroših tražeći taj famozni PATCH.EXE. Zna li neko
da napiše TAžNO gde se on može naći ???
clipper.584bulaja,
-> #582, arazumenic│Opis: Ovo je zamena za funkciju TRANSFORM i ima iste ulazne parametere
│ kao i ona, ali ispisuje brojeve u nasem formatu:
│ hiljade su razdvojene tackom, a decimale od celog dela broja zarezom
└───
Moze to i Clipper :), uz koriscnje @E funkcije u SAY/GET ili Transform(),
npr.
Transform(nBroj, "@E 999,999,999.99".
clipper.585dr.grba,
-> #583, svaba>> E svo vreme potroših tražeći taj famozni PATCH.EXE. Zna li neko
>> da napiše TAžNO gde se on može naći ???
U Update za Clipper 5.2 b. Inače, Bulaja je zaboravio da ga tutne solo u dir.
clipper.586bulaja,
-> #585, dr.grba│U Update za Clipper 5.2 b. Inace, Bulaja je zaboravio da ga tutne solo u dir.
└───
Priznajem da sam zaboravio :). Bice sutra u dir-u, treba konacno da
prebacim jos neke zanimljive stvari za Clip koje smo dovukli iz sveta.
clipper.587toma,
-> #579, dvesic■> Ako vam se dopadne i ako budete zeleli neke izmene, pisite.
■> Vise nego rado cu vam izaci u susret.
Pa valjda je glavna snaga svakog Brief macro-a u njegova
otvorenost za moguće izmene. Dakle, očekujemo source!
clipper.588gavros,
-> #581, dejanr> Hm, hm, jel se jedeš ako je DVA bita?
Ako je DVA bita, definitivno se ne jedem. :))
clipper.589ndragan,
-> #578, dejanr/ I to se opet završi za 15-20 minuta posle čega sam originalnu bazu
/ prosto obrisao. E sad, kako je moguće da je 20 puta brže da podatke
/ "pregura"
Beats me. Da nije to što kod brisanja sloga pristupa pojedinom slogu,
upisuje taj jedan bajt &td, a kod masovnog kopiranja gura u nekakve
bafere i ponaša se kulturnije?
Set exclusive on? Možda je za njega kopiranje u drugu bazu lepša
operacija jer jednu otvara zaključavanjem, a drugu samo za čitanje, dok
kod brisanja ima i kontroline kontrole kontrolu?
clipper.590ndragan,
-> #582, arazumenic/ strtran(strtran(strtran(transform(Broj,Prikaz),'.','!'),',','.'),'!',',
Za FoksPro:
ChrTran(Transform(num,pic),",.",".,")
ali je i ovo nepotrebno, jer postoje naredbe
Set Point To ","
Set Separator To "."
...posle kojih Tran(234552.23,"999,999,999.99") daje 234.552,23 bez
pozivanja bilo kakvih UDF. Umesto tačke i zareza može se ubaciti i nešto
egzotičnije. Ovo podešavanje preporučujem da se uradi za štampu; za
ekran je malo nezgodno, jer onda tokom unosa traži decimalni _zarez_,
koji baš nije blizu na tastaturi, što se opet može rešiti sa
On Key Label "." Keyb ","
ali je malo nezgodno ako zaboravite da ga skinete.
Još jedna zgodna stvar: ako koristite juski, često vam zatreba ž (levi
apostrof, chr(96)). U foksovom editoru to je prefiks za kontrolne znake,
a ako vam treba baš ž, morate ga otkucati dvaput. E, ne mora:
On Key Label "ž" keyb "žž" Plain
Bez poslednje reči puca sa "do nesting too deep" čim kucnete ž. Ko
razume shvatiće :)
clipper.591dvesic,
-> #587, toma>> otvorenost za moguce izmene. Dakle, ocekujemo source!
Sto se sorsa tice :))) dobicete ga kada ta kobasica od 22Kb bude
licila na bilo sta pristojno - to je pisano '92 kao test znanja
Brief macro jezika - i s obzirom da je radila u kucnoj radinosti,
ispustena je komercijalizacija ! :)))))
Kad uredim source, dobicete ga ! (Kad i novu verziju Sezam softvera ;)
Pozdrav,
Dejan.
clipper.592svaba,
-> #585, dr.grba==>..>> E svo vreme potroših tražeći taj famozni PATCH.EXE. Zna
==>..>> li neko da napiše TAžNO gde se on može naći ???
==>..
==>.. U Update za Clipper 5.2 b. Inače, Bulaja je zaboravio da ga
==>.. tutne solo u dir.
Volim jezgrovito izražavanje, ali ne i kada ono dovodi do nepreciznosti.
Dakle, skinem ja obe ove datoteke, jerbo ne znam šta je pesnik hteo da
kaže sa "Update za Clipper 5.2 b".
R:ĐIBMPCĐCLIPPERĐ*.*
----------------------
52abus exe 147952 CA-Clipper 5.2b update sa US verzije 5.2a
52bus exe 160619 CA-Clipper 5.2b update sa US verzije 5.2
Raspakujem ja njih:
PKSFX (R) FAST! Self Extract Utility Version 2.04c 12-28-92
Copr. 1989-1992 PKWARE Inc. All Rights Reserved. Shareware version
PKSFX Reg. U.S. Pat. and Tm. Off.
Searching EXE: C:/TELIX/DOWN/CL52ABC/52ABUS.EXE -
┌───────────Ě SEZAM ■ Racunari ■ Beograd ┌───┐
│ S E Z A M ║ +38 11 64-84-22 ■ 15 lines │ o │
ď═══════════╝ 2400/1200 bps ■ N81 ■ MNP5 └─┴─┘
Inflating: 52BRL.EXE
Inflating: 52BSAMPL.EXE
Inflating: NTXLOCK2.OBJ
Inflating: DBUNET.PRG
Inflating: 52ABBIN.RTP
Inflating: 52ABINC.RTP
Inflating: 52ABLIB.RTP
Inflating: 52BNG.RTP
Inflating: 52ABUS.TXT
PKSFX (R) FAST! Self Extract Utility Version 2.04c 12-28-92
Copr. 1989-1992 PKWARE Inc. All Rights Reserved. Shareware version
PKSFX Reg. U.S. Pat. and Tm. Off.
Searching EXE: C:/TELIX/DOWN/CL52ABC/52BUS.EXE -
┌───────────Ě SEZAM ■ Racunari ■ Beograd ┌───┐
│ S E Z A M ║ +38 11 64-84-22 ■ 15 lines │ o │
ď═══════════╝ 2400/1200 bps ■ N81 ■ MNP5 └─┴─┘
Inflating: 52BUS.TXT
Inflating: 52BBIN.RTP
Inflating: 52BINC.RTP
Inflating: 52BLIB.RTP
Inflating: NTXLOCK2.OBJ
Inflating: DBUNET.PRG
Inflating: 52BRL.EXE
Inflating: 52BSAMPL.EXE
Inflating: 52BNG.RTP
I posle toga napišem svoju gorepomenutu žalopojku.
P.S. Problem je dalje nije rešen, tj. i dalje tražim PATCH.EXE.
clipper.593bulaja,
R:\IBMPC\CLIPPER\*.*
----------------------
clpatch zip 45402 PATCH.EXE program potreban za Clipper 5.2x update
:)
clipper.594gari,
-> #584, bulaja>> @E tralala yu slova...
Ovo pisem iz glave:
FUNCTION Trans_yu(nBroj,cPicture)
RETURN
left(transform(nBroj,cPicture),len(transform(nBroj,cPicture))-2)+".-"
Ovo bi trebalo da radi sledece:
? trans_yu(123456.80,"@E 999,999,999.99") && 123.456.-
pozdrav, Gari.
p.s. Posto ovo direktno kucam potkrala se mala greska
u liniji RETURN... -> umesto -2 treba -3
clipper.595dr.grba,
-> #576, domana>> 'Ajde da svaki Clipper programer na Sezamu POKLONI ostalim
>> Clipper programerima (na istom) po neko parce simpaticnog koda
>> nastalog u ovoj neveseloj godini,
>> bez takmicenja ciji je naj* i tako to,
>> jednostavno samo poklon...
Odgovaram na retko lepu inicijativu svojim skromnim prilogom.
Naime, beše ovde pre par meseci neka rasprava o okruženju Clippera, kako
raditi udobnije itd, itd... Svela se priča na našu lenjost da pripremimo
neko standardno okruženje za svoj rad. A LNK i RMK fajlovi su, znamo svi,
bogom dati za tako nešto.
Ja sam za svoje potrebe (tek pre mesec ipo dana) napravio četiri fajla:
TEMPLATE.PRG, TEMPLATE.LNK, TEMPLATE.RMK i R.BAT. Kad kod se zalećem
u pisanije nekog programa, prvo nad njima bajam pet minuta, i nikad više dok
radim sa programom, osim ako dodajem neki novi modul...
Da ne bih slao prazan template, popunio sam ga jednom glupošću, koju možete
iskoristiti ako vas interesuju likovnei aspekti primene CLippera (((: A zgodno
je i za neke intro ekrane... Taj posao sam iseckao u više .PRG datoteka, u
demonstracione svrhe. Obratite pažnju na vodeći .PRG. Ideja je da u njemu
postoji samo kontrola tipa kompilacije (radna, demo, final), poziv vodećeg
radnog modula i deklaracije init proc i exit proc. A sav ostali teret nosi
vodeći radni modul...
Ako nešto nije jasno, a vi pitajte. Tu sam. Mislim da se isplati da oni među
vama koji se bave Clipperom, a još nisu počeli ovo da primenjuju, da malo
prouče sadržaj. Vrlo je na korist.
U ovoj prilici, po ko zna koji put, upućujem svoj naklon kolegi Nenadu
Batoćaninu, koji je moj nesuđeni Pigmalion. Skrećem vam pažnju na ranije
brojeve "Računara", i jedan u kome je Nenad vrlo zanimljivo opisao praktičnu
korist onih svičeva radna/demo/final.
paleta.zipclipper.596dzoric,
Hi :)
Imam malečko problemče. Naime na jednoj klasičnoj krš mašini
(286/12) trči aplikacija pisana u Clipper-u 5.01. S' vremena na
vreme aplikacija pukne sa porukom "Internal stack overflow" :(((
i posle resetovanja mašine nekad mi "samo" ostane uništena jedna
sistemska baza( uvek na istom slogu upiše "TTTTT" a nekad mi
ostane da plačem jer je uništena FAT tabela.
Petljao sam sa STACKS u CONFIG.SYS-u, menjao sam DOS 5.0 na 6.0
ali bez promena.
Napominjem da ista aplikacija trči na još desetak mašina bez problema
i da nema virusa na dotičnoj mašini.
clipper.597aquarius,
-> #563, dr.grba<> Zasto se vredas? Samo sam malo ironicno hteo da podrzim
<> konstruktivnost u raspravi.
Nema ljutis, nego probaj ti to, pa javi kao ti izgleda.
btw - kakve su tapete ? :)
Aquarius
clipper.598aquarius,
-> #590, ndragan<> ...posle kojih Tran(234552.23,"999,999,999.99") daje
<> 234.552,23 bez pozivanja bilo kakvih UDF. Umesto tacke i
<> zareza moze se ubaciti i nesto egzoticnije. Ovo podesavanje
<> preporucujem da se uradi za stampu; za ekran je malo nezgodno,
^^^^^^^^^^^^^^^^^^^^^^^^^
<> jer onda tokom unosa trazi decimalni _zarez_, koji bas nije
^^^^^^^^^^^^^^^^^^^^^^^
<> blizu na tastaturi, sto se opet moze resiti sa
<>
<> On Key Label "." Keyb ","
<>
<> ali je malo nezgodno ako zaboravite da ga skinete.
Jest' nezgodno to u FOX-u, al' zato nije u Clipperu. :) Ujedno
koristim priliku da se pridruzim inicijativi Domane kao i da cestitam
svim Sezamovcima Novu:Godinu !!! Ako ima daljih pitanja ili primedbi,
tu sam.
Fajl Num2Calc - moze li na GET-u da se simulira kalkulator i jos
po nesto? Moz' da bide, al' ne mora da znaci! :)
Aquarius
num2calc.zipclipper.599nbatocanin,
Uz poruku je prikačen listing greškom izostavljen u poslednjem
"Savetniku".
cls.zipclipper.600gari,
Svim korisnicima (i korisnicama) sezam-a, zelim sretnu
Novu 1994. godinu i saljem moj mali prilog inicijativi
"svako po nesto".
Uz poruku idi nesto u stili clipper + c, ALI!
direktno sa File Bank-a (US) (ne znam ko ce platiti PTT :)
pozdrav, Gari.
clip_c.zipclipper.601gari,
-> #600, gariPosto nije beg cicija (kako se to malo nize kaze ;)
onda mi bilo zao da samo ja imam demo primer
tBrowse -> printer, pa posto je Nova Godina blizu
ja reko malo...
pozdrav, Gari.
tbr2prn.zipclipper.602snemcev,
Pridružujući se čestitkama za Novu 1994. godinu, evo mog prvog priloga:
;Name CRC32.ASM
;Author (C) 1986 Gary S. Brown. No restrictions apply.
;1992.04.19 Rewrite - Bruce Gavin Translated C -> ASM.
;1992.11.3 Rewrite - Terry Carmen re-wrote to be callable
; from Clipper S'87 or 5.01
; CRC32 takes a single argument as a string, and returns
; the CRC32 to Clipper as an 8 digit character string
; Returns NIL if called with incorrect arguments or an empty string
; CRC32 polynomial is edb88320h, and will produce identical CRCs as PKIZP
crc32.zipclipper.603bulaja,
-> #602, snemcevCRC32 si verovatno preuzeo iz \ibmpc\clipper, ali si to zaboravio :).
Inace poslacu i ja neke .prg cestitke kad nadjem vremena ovih dana
da skrpim nesto :).
clipper.604dr.grba,
-> #597, aquarius>> Nema ljutis, nego probaj ti to, pa javi kao ti izgleda.
>> btw - kakve su tapete ? :)
Od jute, sa aplikacijama od plute (((:
clipper.605dr.grba,
-> #603, bulaja>> Inace poslacu i ja neke .prg cestitke kad nadjem vremena ovih dana
>> da skrpim nesto :).
BuMenu 1.4?
(((:
E, sad bez zezanja... Ovo se događa samo u Clipper temi. Treba da se ponosimo
ovom temom, a čoveku koji je inicirao spektakl (domana) da se zahvalimo.
clipper.606arazumenic,
-> #584, bulaja-> Transform(nBroj, "čE 999,999,999.99".
Ovo sam probao pre jedno dve, dve i po godine sa Summer 87 i iz nekog
razloga mi nije uspelo. Onda sam napisao onu funkciju, bio zadovoljan
kako radi, tako da dalje više nisam razradjivao tu temu.
Saša
clipper.607arazumenic,
-> #594, gari-> FUNCTION Trans_yu(nBroj,cPicture)
-> RETURN
-> left(transform(nBroj,cPicture),len(transform(nBroj,cPicture))-2)+".-"
-> ? trans_yu(123456.80,"čE 999,999,999.99") && 123.456.-
Ja to radim malo drugačije.
Napravio sam heder datoteku "brojevi.ch" koja izgleda ovako:
#define OP_PD_8 "99,999,999.- "
#define OP_PD_9 "999,999,999.- " itd.
U programu korisitm sledeći način ispisa:
#include "brojevi.ch"
....
? ml_zamena(nBroj, OP_PD_9)
Prednost je u tome što na prvi pogled vidim koji je najveći broj koji se
može prikazati, pa ako mi treba veći, jedno Search&Replace obavi posao.
Ovako kako si dao je mnogo teže menjati program.
Saša
P.S. Nije ništa lično, slično sam i ja u početku radio, sve dok nisu počele
da se pojavljuju zvezdice. Tada sam morao ručno da vršim ispravke u svakoj
PICTURE i ML_ZAMENA. Tada sam napravio heder datoteku, u celom programu
izmenjao opise i kada mi je zatrebala prva sledeća izmena - pevao sam.
clipper.608bulaja,
**** new file ****
R:\IBMPC\CLIPPER\*.*
----------------------
fxcolor arj 55257 Specijalni efekti sa bojama na VGA za Clipper 5.x
FXCOLOR
Special Color Effects For The VGA System Using Clipper 5.01
Written by Jim Fowler
April 16, 1992
FxColor omogucava promenu VGA palete, fade in/out i slicne zezalice :).
Prilozen je i ASM source.
clipper.609bulaja,
**** new file ****
R:\IBMPC\CLIPPER\*.*
----------------------
rcmplb11 zip 20088 RCmpLib v1.1: Clipper biblioteka za kompresiju datoteka
The compression and decompression functions of RCmpLib are based on
the so-called Lempel-Ziv principle, to be specific the LZW algorithm.
This base principle is used by almost all famous compression programs
(as LHARC, ARJ and PKZIP).
----------------------
Stepen kompresije je sasvim zadovoljavajuci, brzina takodje, sto znaci
da je biblioteka prilicno upotrebljiva :). Jedini problem je sto je
shareware i povremeno izbacuje poruku za registraciju, sto sigurno nije
zgodno za ugradnju u aplikacije :). Registracija je svega 10 USD, al'
je problem kako to sad poslati.
clipper.610snemcev,
-> #603, bulaja>> CRC32 si verovatno preuzeo iz \ibmpc\clipper, ali si to zaboravio :).
Sorry ako je tako. Imam bar pet verzija tih cvrcova i kud baš da pogodim
onu iz direktorijuma... :((
I'll send something else, ok?
clipper.611bulaja,
**** new file ****
R:\IBMPC\CLIPPER\*.*
----------------------
pushbu arj 20796 Push (radio) buttons za ubacivanje u GET system
Awhile back I wrote a little program PUSHBU.PRG to produce pushbuttons with
pop-out action and a number of people (including myself) have used them
without any compaints. Nonetheless, PUSHBU.PRG was really never properly
integrated into the Get System, mainly because of the way it handled
the waitstate.
Meanwhile, another public domain offering by Dan Comeau (RADIOBTN.PRG) is
well integrated with the get system, but does not include any push buttons,
and if you're not already using RADIOBTN.PRG you may wish to take a look
at it. Anyway, to make a long story shorter, I finally have gotten around
to putting my push buttons into a modified version of Dan's button engine.
The buttons seems to work well based on the way I routinely use them;
however, no one else has tested them, so let me know if you find any bugs.
All testing of PUSHBUTN.PRG has been done with Clipper 5.01a and RTLINK.
clipper.612dvesic,
Evo moj mali doprinos radu konferencije ...
Nadam se da ce nekom koristiti ...
Moja iskustva u radu sa CDX ideksima
Verovatno je vecina Vas citala Nenadov (NBatocanin) tekst o
novinama u Clipper 5.2 . Ovaj mali tekst je tu da Vam pomogne
oko koriscenja istih. (sto bi rekli, prakticna iskustva)
Najveca novost (bar za mene) su RDD (replaceable database
drivers). E sad, jedan od njih je i DBFCDX, drajver za rad sa
FoxPro bazama i indeksima. Baze su normalne, DBF tipa (uz
izuzetak za MEMO polja) ali su indeksi ono pravo. Da ne duzim,
*.CDX indeksi imaju tri vrlo lepe osobine :
I. Svi indeksi nad JEDNOM bazom idu u JEDNU CDX datoteku
(sto odmah smanjuje broj otvorenih datoteka; sto se opet
itekako da osetiti u mreznom okruzenju)
II. Indeksi su *mnogo* manji - kod CDX-a se za susedni slog
smesta samo razlika u kljucu u odnosu na kljuc prethodnog
sloga (koliko to mnogo : Npr. NTX indeksi u velicini od
2.4 Mb su se konvertovali u 0.7 Mb CDX pandana; naravno,
sve zavisi i od tipa kljuca, ali cete ustedeti bar pola)
III. Postavljanje aktivnog indeksa mozete vrsiti po imenu
umesto po rednom broju (bogu hvala!) : Umesto :
Set Order To 34 koristite Set Order To Tag Po_Datumu
Osnovno piranje : Kako sto bezbolnije preci na CDX ? Evo
nekoliko saveta :
Za pocetak, u vasoj aplikaciji nije potrebno nista posebno
menjati. Samo u delu za indeksiranje umesto
Use Radna
Index On Izr1 To Ind1
Index On Izr2 To Ind2
...
Index On Izrn To Indn
....
Use Radna Index Ind1,Ind2,...,Indn
Napisite
Use Radna Via 'DBFCDX'
Index On Izr1 Tag Ind1 // BITNO
Index On Izr2 Tag Ind2 // JE DA REDOSLED KREIRANJA
... // INDEKSA BUDE IDENTICAN
Index On Izrn Tag Indn // REDOSLEDU OTVARANJA INDEKSA UZ
// BAZU ....
Use Radna Via 'DBFCDX' Index Radna // Slozeni indeks po
// defaultu ima ime baze uz
// koju se vezuje
U jednom od PRG fajlova, dodajte i
REQUEST DBFCDX
cisto kao naznaku linkeru da vam treba i ta biblioteka.
Jos jedan mali savet : Prilikom ponovnog kreiranja indeksa
nemojte koristiti REINDEX (ovo je inace opsta primedba,
nevezana za RDD; REINDEX ne radi korektno ako je ostecen
heder indeks datoteke) vec ponovo INDEX ON. Pre toga
obavezno OBRISITE stare CDX indekse, sa npr. :
aEval(Directory("*.cdx"),{|o|fErase(o[1])})
Razlog : desava se da stari indeks ostane u cdx datoteci,
neaktivan (vazeci je novoizgradjeni) pa samo dzabe zauzima
mesto )
Pre nego sto startujete program, moracete da baze koje koriste
memo polja prekopirate preko CDX drajvera (razlicita
struktura) tj. otvorie originalnu bazu preko NTX drajvera,
pomocnu preko CDX drajvera, prekopirate u pomocnu, izbrisete
originalnu i preimenujete pomocnu.
Posle toga, probajte !
Svi oni Set Order To nnn ce normalno raditi; moze da posluzi
dok se definitivno ne prebacite na TAG-ove :)
Pozdrav,
Dejan.
P.S. Izvinjavam se onima koji ovo gledaju drugi ili treci put !