clipper.1cnenad,
Subj. UNIQUE indeksi II put
E pa strašno. Podatak je unet, obrisan, i unosi se neki sličan ako ne i
isti, i naravno ne pojavljuje se u tabelarnom pregledu.
Glupa UNIQUE klauzula ne zna da iskoristi postojanje SET DELETED ON
clipper.3rmarjan,
Ima li neko ideju?
program je single-user, masina 386/40, Memorije 2MB nista neobicno... ali
Nekim cudom je nakon nestanka struje i naravno ponovnog indeksiranja kao
obavezna mera (program je radio neposredno pre nestanka struje) doslo do
toga da indeks ne pokazuje pravo stanje.
Baza je indeksirana na SIFRA + DTOS(DATUM)... i sada kada se startuje obrada,
datum (gledano na nacin pisanja datuma u bazi) koji je "07/10/95" se uporno
nalazi PRE datuma "01/01/95" i nema boga da se odatle pomeri!
Kako god se indeksira (iz programa, iz DBU) uvek je ista situacija. Slog nije
nista posebno i jednostavno nemam ideju sta se desilo...
Radim Clipper od 1987 godine (pre toga dBase) ali nikada slicnu stvar nisam
imao kao problem.
???
Boris
clipper.4d.petrovic,
> Ima li neko ideju?
Možda pomogne prepakivanje, t.j. baza ti je verovatno oštećena. U par
sličnih situacija primetio sam to tako što NC prikazuje jedan broj rekorda,
a DBU drugi.
clipper.5velicko,
>+ Možda pomogne prepakivanje, t.j. baza ti je verovatno
>+ oštećena. U par
Meni se ovo povremeno dešava :(.
Pomoć je DBX ( tj DBU ili čak mfox ;>> )
odradiš copy all to priv, pa onda da zameniš originalnu
datoteku novom prepakovanom privremenom.
velicko
clipper.6rmarjan,
Pazi, nije problem u tome da se stvar sredi, problem mi je sto ne znam KAKO je
moguce da nakon izrade NOVIH izndeksa (iz programa) pri cemu stare brisem,
ponovo bude ista situacija. Zanima me naime GDE se cuva taj neki glupi
pogresan pointer koji uporno bas za tih nekoliko slogova, smatra da datum
nije kao treba. To je lako videti kada neka stampa treba da se izvede pa se
odmah primeti datum koji "strci" (tako sam i ja video problem). A sta ako
baratam nekim datumima a to se u tekucem radu ili izvestaju ne vidi bas sada?
To je ono sto me brine, moze se desiti da to bude pritajena bomba...
Boris
clipper.7mdrazic,
> Subj. UNIQUE indeksi II put
>
> E pa strašno. Podatak je unet, obrisan, i unosi se neki sličan ako ne i
> isti, i naravno ne pojavljuje se u tabelarnom pregledu.
>
> Glupa UNIQUE klauzula ne zna da iskoristi postojanje SET DELETED ON
Pa jesam li lepo objasnio zašto je to tako? Indeksi ni na koji način
ne zavise od deleted flaga jer se unapred ne zna da li ćeš koristiti
set deleted on ili off, a ovaj prelaz ne sme rezultirati u nekom
reindeksiranju.
Unique nije glup, već radi kako radi, a što ponekad to nama ne
odgovara, drugi je problem. Valja samo znati kako se generiše i
zatim zaboraviti na njega. Bolje napiši malu funkciju za skipovanje.
Milan
clipper.8mileusna,
>> sličnih situacija primetio sam to tako što NC prikazuje jedan broj
>> rekorda, a DBU drugi.
BTW, dbview iz NC-a 4.0 ne prikazuje zadnji slog u tabeli. Bug.
clipper.9bristic,
Izvinite ako je ovo moje pitanje vec tretirano, ja
zelim da iz clipper aplikacije stampam izvestaj
u cirilici. Dali je ovo moguce, znam da flipper
ima razne fontove ali nemam nasu cirilicu. Ako
neko ima resenje molim ga da mi pomogne.
clipper.10mdrazic,
> Ima li neko ideju?
> Baza je indeksirana na SIFRA + DTOS(DATUM)... i sada kada se startuje
> obrada, datum (gledano na nacin pisanja datuma u bazi) koji je "07/10/95"
> se uporno nalazi PRE datuma "01/01/95" i nema boga da se odatle pomeri!
:)
Proveri tačne datume. Da nije ono 07/10/1195 ili 07/10/0995 ?
Ako u prikazu imaš samo dve cifre za godinu, zbog ovakvih stvari
može da se izludi dok se ne otkriju. Jednom je to bio uzrok 'padanja'
jednog paketa za štedno-kreditne zadruge. Nije mogao da izračuna
kamatu za kredit uzet 1192. ;)
Milan
clipper.11rmarjan,
Na zalost, sve je vise nego korektno zapisano. Prosto je neverovatno ali
istinito. Sva sreca te se radi o 6 slogova ukupno, ali me brine sto je tako
stogod uopste moguce. Da covek izludi, gledas 6 slogova koji su najnormalnijeg
izgleda a slozeni na potpuno pogresnom mestu...
clipper.12dpredovic,
> ponovo bude ista situacija. Zanima me naime GDE se cuva taj neki glupi
> pogresan pointer koji uporno bas za tih nekoliko slogova, smatra da datum
> nije kao treba. To je lako videti kada neka stampa treba da se izvede pa se
Gde se čuva? Pa u ntx fajlu, normalno... ;) Ntx-ovi su čuveni po tome što
mogu da upadnu u "nestabilno" stanje, gde ne pomaže nikakva indexacija.
Na problem sam natrčao više puta, a potrvđuje se i u onom Internal Errors
NG-u. Problem se obično rešava ažuriranjem par slogova, tek toliko da se
nešto u indexu promeni.
PS. Da li si siguran da je taj nevaljali datum XX.XX.19XX? Ovo 19 se obično
ne vidi, pa zna da pravi probleme...
clipper.13kile,
>> Sva sreca te se radi o 6 slogova ukupno, ali me brine sto je tako stogod
>> uopste moguce. Da covek izludi, gledas 6 slogova koji su najnormalnijeg
>> izgleda a slozeni na potpuno pogresnom mestu...
Pa, ako je tabela tako mala, što je ne okačiš ovde, da vidimo.
Neko će već nešto izmozgati :)
clipper.14rmarjan,
Nisi me razumeo, znam dovoljno o nacinu organizovanja NTX i ostale logike,
programiram u Clipper-u od 1986 (da i tada je postojala verzija '86), kada sam
se pitao u vezi pointera, nisam upotrebio dobar izraz. Mislo sam sta je to
moglo zbuniti NTX da od "suvog" podatka u DBF uporno misli da je to neki drugi
datum a ne pravi i da na osnovu takvog podatka, postavi svoje slaganja na takav
pogresan nacin.
Sve ovo mozda i ne vredi toliko rasprave, osim ako postoji opasnost da se to
javlja skriveno i u mnogim obradama neprimeceno, a onda proradi Murphy...
U svakom slucaju, sada detaljno pratim sve oko toga i ako nesto primetim, bice
sigurno ovde, zarad kolega.
Inace, Clipper je Ver. 5.2e
Pozdrav Boris
clipper.15rmarjan,
Nije tabela mala, naprotiv, vec je deo koji se odnosi na zapis koji nosi bas
taj datum, sadrzao 6 slogova...
Pozdrav,
clipper.16rccomp,
Da li neko ima nekakvu funkciju, koja ce u VELIKOJ bazi kupaca, indeksiranoj
po, npr. nazivu kupca, trenutno pronaci svako pojavljivanje zadatog stringa,
bez obzira da li se on nalazi na pocetku, sredini, ili na kraju naziva?
Resenja poput if(ZadatiString,NazivKupca)<>0
? NazivKupca
EndIf
ili set SoftSeek on
nisu nikakva jer su, u velikim bazama, dosta spora.
Jel' ima ideja. Zadovoljavajuce resenje je kao u Win Helpu kada se pointer
pomera sa svakim novim zadatim slovom.
Aj' da vidimo !
clipper.17cnenad,
=> po, npr. nazivu kupca, trenutno pronaci svako pojavljivanje zadatog
=> stringa, bez obzira da li se on nalazi na pocetku, sredini, ili na kraju
SixCDX => sx_wildseek()
clipper.18obrada,
> Subj. UNIQUE indeksi II put
>
> E pa strasno. Podatak je unet, obrisan, i unosi se neki slican ako
> ne i isti, i naravno ne pojavljuje se u tabelarnom pregledu.
>
> Glupa UNIQUE klauzula ne zna da iskoristi postojanje SET DELETED ON
Jedno od resenja je da uvedes jos jedno polje (logic ili C1) koje ces azurirati
kada logicki obrises taj zapis. UNIQUE indeks mora da bude i indeksiran i potom
polju. Ovo vazi ako su novi zapis i obrisani zapis imaju isti kjluc za indeks.
Tada treba da se razlikuju po dodatnom polju stim sto za obrisani zapis u tom
polju trea bti neka veca vrednost od one u neobrisanom zapisu.
Dragan
clipper.22rccomp,
Jel' ima neko SIX2.LIB ?
clipper.23nbatocanin,
> Da li neko ima nekakvu funkciju, koja ce u VELIKOJ bazi
> kupaca, indeksiranoj po, npr. nazivu kupca, trenutno
> pronaci svako pojavljivanje zadatog stringa, bez obzira da
> li se on nalazi na pocetku, sredini, ili na kraju naziva?
Rešenje za tvoj problem sigurno nije klasično indeksiranje. WILDSEEK
iz SIx-a će raditi ok, ali samo ako ne zadaš '*NESTO', što rešava i
prosto SEEK. Rešenje ti je biblioteka koja se zove Fast Text Search
ili tako nešto i koja je napravljena upravo za stvari koje tebi
trebaju. Na žalost, nisam imao priliku da vidim biblioteku. Mislim da
imam demo za neku staru verziju, pa ako ti nešto znači, kaži da
potražim. Mogao bi da pogledaš i ove nove metode pretraživanja
tekstova.
clipper.24cnenad,
=> polju. Ovo vazi ako su novi zapis i obrisani zapis imaju isti kjluc za
Misliš, obadva sloga imaju istu vrednost u polju(ima) koja ulaze u UNIQE
indeks.
=> indeks. Tada treba da se razlikuju po dodatnom polju stim sto za obrisani
=> zapis u tom polju trea bti neka veca vrednost od one u neobrisanom zapisu.
E da, i ovo je još jedna velika glupost UNIQUE indeksa.
clipper.25mdrazic,
>> Glupa UNIQUE klauzula ne zna da iskoristi postojanje SET DELETED ON
>
> Jedno od resenja je da uvedes jos jedno polje (logic ili C1) koje ces
> azurirati kada logicki obrises taj zapis. UNIQUE indeks mora da bude i
> indeksiran i potom polju. Ovo vazi ako su novi zapis i obrisani zapis
> imaju isti kjluc za indeks. Tada treba da se razlikuju po dodatnom polju
Ne treba nikakvo polje (bar ne u Clipper-u:). Dovoljno je recimo:
index on if(deleted(),'D',' ')+Kljuc to indfile unique
još bolje
index on if(deleted(),'D',' ')+Kljuc to indfile unique ;
for .not. deleted()
a možda korektno radi (proveriti) i prosto
index on Kljuc to indfile unique for .not.deleted()
Milan
clipper.26szdravko,
Da li neko zna za biblioteku u kojoj postoji C source za CLIPPER naredbu SAY
... GET. Potrebno mi je da u jednom svom programu napravim unos sa definisanim
PICTURE i VALID, RANGE, itd. Output programa je ASCII biblioteka, tako da
mi ceo CLIPPER uopste ne treba ( u osnovi program ce biti radjen u C++ ).
clipper.27d.petrovic,
> Da li neko zna za biblioteku u kojoj postoji C source za
> CLIPPER naredbu SAY ... GET. Potrebno mi je da u jednom svom
> programu napravim unos sa definisanim PICTURE i VALID, RANGE,
> itd. Output programa je ASCII biblioteka, tako da mi ceo
> CLIPPER uopste ne treba ( u osnovi program ce biti radjen u C++
> ).
Da pokušamo ovako :
u .ĐCLIPPERĐSOURCEĐSYSĐGETSYS.PRG
imaš primer kako radi klasa GET. Ako to prevedeš /b i ulinkuješ, pa
pogledaš kroz dibager koristiće kao ideja odakle da počneš, t.j. bar šta
tvoja klasa treba da sadrži.
clipper.28kzoran,
Mož li mi neko HITNO poslati spisak fajlova na instalacionim disketama
za Clipper 5.01, posebno za svaku disketu, kao i labelu svake diskete?
Pozdrav,
Zoran
clipper.29mbiresev,
Zna li ko kako se u tbrowse-u može menjati boja headsep-a ?
clipper.30saks,
Zamolio bih cenjenog moderatora da prebaci fajl jfkdoc.zip na brzi
Sezam, jer odavde nemogu nista da skinem. Na normalnom Sezamu CPS mi
je izmedju 20 i 80. Unared zahvalan
Saks
clipper.31cnenad,
=> Zna li ko kako se u tbrowse-u može menjati boja headsep-a ?
loB:colorSpec := 'W/N, ...'
i tako redom. E sad koja je boja zašta moraćeš da se igraš i isprobavaš.
Ako nisi ništa naveo koristi se ono što je objekat dobio od setcolor().
clipper.32mbiresev,
>> => Zna li ko kako se u tbrowse-u može menjati boja headsep-a ?
>> loB:colorSpec := 'W/N, ...'
Verovatno nisam bio precizan.
Dakle, podaci da su u jednoj boji, a oB:headSep u drugoj.
clipper.33d.petrovic,
> loB:colorSpec := 'W/N, ...'
Definišeš koliko boja hoćeš, a to kasnije koristiš kroz kodni blok,
IIF(SubStr(x, 5, 1) == "A", š1, 2ć, š3, 4ć)
ali koliko sam shvatio on traži nešto što ne postoji (ili postoji
nedokumentovano)
clipper.34saks,
Pogledaj u Clipper direktorijumu Sezama, fajl TbMore.zip.
Objasnjena je interna struktura TBrowse objekata.
clipper.35velicko,
Jel neko rešavao problem sa višejezičkim porukama u
programu. Treba da izbacim sve poruke u odvojenu datoteku
tako da mogu lako da se prevedu na druge jezike.
Kakva su vaša iskustva. Poruka ima mnogo, sigurno oko
200-300, ne učitavaju mi se u memoriju a sa druge strane
sistem dbf datoteke sa indexima mi ne deluje primereno.
Treći način neznam.
Šta ste koristili?
Neki predlog?
Hint?
Takođe me zanimaju drajveri za tastaturu i ekranski
fontovi za BUGARSKU i GRžKU.
Relativno hitno.
velicko
clipper.36d.petrovic,
> Kakva su vaša iskustva. Poruka ima mnogo, sigurno oko
> 200-300, ne učitavaju mi se u memoriju a sa druge strane
> sistem dbf datoteke sa indexima mi ne deluje primereno.
> Treći način neznam.
1. Poruke iz baze se pri startovanju učitaju u niz i ispisuju funkcijom
za centriranje.
2. Pretprocesorske direktive (messages.ch)
3. Sve poruke su ulinkovane, a setovanjem određuješ šta se ispisuje...
4. Ima, ima, još načina... :)
clipper.37zkrstic,
>> Jel neko rešavao problem sa višejezičkim porukama u
>> programu. Treba da izbacim sve poruke u odvojenu datoteku
>> tako da mogu lako da se prevedu na druge jezike.
>>
>> Takođe me zanimaju drajveri za tastaturu i ekranski
>> fontovi za BUGARSKU i GRžKU.
Banex & ja smo na Kipru imali podršku koja ide u
poseban dbf, tako da smo paralelno imali Grčko-Englesko-Srpsku
verziju programa što je sve dovodilo do ludila ;>
Font smo sami pravili, obzirom da grcite trpaju svoje
chr negde gore u majčinu bez veze, pa nam nije mLogo smetalo.
Morali smo da imamo dva-tri fontića i mirna Bačka.
Viči ako ti treba još koješta :)
Zkr
clipper.38cnenad,
=> Dakle, podaci da su u jednoj boji, a oB:headSep u drugoj.
Izgleda da ne može. Prva boja služi i za podatke i zaglavlje.
clipper.39mdrazic,
> Jel neko rešavao problem sa višejezičkim porukama u
> programu. Treba da izbacim sve poruke u odvojenu datoteku
> tako da mogu lako da se prevedu na druge jezike.
> Kakva su vaša iskustva. Poruka ima mnogo, sigurno oko
> 200-300, ne učitavaju mi se u memoriju a sa druge strane
tebi je to mnogo? Za toliki broj je najbrže sve ručno da se na licu
mesta prevede.
> sistem dbf datoteke sa indexima mi ne deluje primereno.
> Treći način neznam.
kombinovan.
Treba prvo da se odlučiš da li ti treba višejezička aplikacija ili
samo na jednom jeziku. A i kada je na jednom jeziku, da li treba
ista takva da bude i na nekom drugom jeziku.
Ako ista aplikacija treba da radi na više jezika istovremeno, mislim
da je najbolje da stringove staviš u DBF tabelu. Probao sam i nije
toliko sporo da se ne bi radilo. A i računari i diskovi su sve brži
pa se to za godinu-dve neće ni primećivati.
Ako je aplikacija jednojezička, ako samo prevedeš stringove teško je
dalje pratiti više jezičkih verzija istog koda. Zato i tu može da se
koristi tabela. Ako je rad preko tabele spor, može ovaj trik da
pomogne. Sve stringove pozivaj preko neke(ih) funkcije(a) čiji argumenti
pokazuju na string u tabeli (DBF). Kada središ sve stringove, tada
jednim prostim programčićem, koji sam napišeš, ove funkcije zameniš
odgovarajućim stringovima iz tabele. Nadalje radiš sa običnim stringovima
bez tabele. Drugim rečima taj mali programčić radi kao pred(pred)procesor
a izvorni source i dalje vodiš univerzalan (sa pozivima funkcijom).
Problemi koji te čekaju su različite dužine stringova pri prevođenju,
centriranje i sl. Ovo može dosta dobro da se reši ako u tabeli vodiš
i informacije o načinu poravnanja stringa i referentnoj tački koja sad
zavisi od tog poravnanja (početak za poravnavanje ulevo, kraj za udesno,
sredina za centriranje).
Ja sam u svom okruženju napravio da i na licu mesta (na 'hotkey' mogu da
menjam stringove i odmah u aplikaciji gledam kako to izgleda. Naravno,
ovde sam koristio DBF tabelu stringova u aplikaciji. Kada sve prevedeš
(ili još bolje, neki prevodilac umesto tebe kome sve objasniš kako se
na 'hotkey' menjaju stringovi), za finalnu verziju izvršiš gorepomenuto
pred(pred)procesiranje.
Milan
clipper.40nbatocanin,
> Izgleda da ne može. Prva boja služi i za podatke i
> zaglavlje.
S obzirom da se za svaku _vrednost_ u okviru kolone može birati boja,
ovo sigurno nije tako. Nisam probao, ali treba nešto probati sa ColorBlock.
clipper.41velicko,
Hvala na odgovorima :)
Biće za svaki jezik po jedan dbf koji se učitava u niz.
Index niza određen CH fajlom. ....
thanks.
velicko
clipper.42cnenad,
=> S obzirom da se za svaku _vrednost_ u okviru kolone može birati boja,
Da ali boja neke je i boja zaglavlja o čemu piše u NG-u ali nigde nije
specificirano kako posebno uraditi boju zaglavlja a posebno za podatke.
Možda bi se sa kodnim blokom nešto moglo uraditi ali ja za sada ne vidim
rešenje.
clipper.43mbiresev,
>> Da ali boja neke je i boja zaglavlja o čemu piše u NG-u ali nigde nije
>> specificirano kako posebno uraditi boju zaglavlja a posebno za podatke.
>> Možda bi se sa kodnim blokom nešto moglo uraditi ali ja za sada ne vidim
>> rešenje.
Rešio sam čim sam postavio preciznije pitanje (separator u jednoj boji
a podaci u drugoj).
Definiše se boja sa oB:colorSpec. Tu su i separatori.
Zaglavlje sa oColumn:defColor.
Kolona sa oColumn:colorBlock.
Dakle, ali baš sve je u željenoj boji.
clipper.44kile,
Imam problem:
LOCAL GetList := {}, Fields := {}, n := 0, NewGet
AADD(Fields, Tabela->POLJE1)
AADD(Fields, Tabela->POLJE2)
AADD(Fields, Tabela->POLJE3)
AADD(Fields, Tabela->POLJE4)
FOR n = 1 TO 4
NewGet = GetNew(n, 0, {|EditVal| IIF(PCOUNT() > 0, ;
Fields[n] = EditVal, Fields[n]) } )
AADD(GetList, NewGet)
NEXT
READMODAL(GetList)
Kad ovo startujem, dobijam bound error u kod bloku, jer je vrednost
promenljive n nakon izlaska iz petlje jednaka 5.
Kako mogu ovo da izbegnem a da ne treba da dodajem svaki get objekat
ručno, jer u programu nemam samo 4 nego preko 30 polja, pa još
pre-validacije, pa post-validacije, itd.
Hvala!
clipper.45bulaja,
**** new file ****
MSDOS - R:\CLIPPER
----------------------
opt_53 zip 222106 CA-Clipper 5.3: Clipper.EXE upgrade + OptEdit
1 file(s) 217 kb
Izašao je još jedan manji patch za 5.3, videću šta je menjano i vredi li
ga skidati. U CA kažu da bi uskoro (samo ne kažu tačno kada) trebao da
se pojavi patch za verziju 5.3a, gde će biti integrisane prethodne manje
zakrpe.
clipper.46mdrazic,
> Biće za svaki jezik po jedan dbf koji se učitava u niz.
> Index niza određen CH fajlom. ....
Pa opet izbor jezika zavisi od verzije programa? Pogrešno.
Stavi sve u jedan jedini DBF (ako imaš više jezika, stavi
sve đuture sa dodatnim poljem za jezik, koji može i u
indeksu da bude zbog efikasnosti) i vozi. Tada možeš i
'u letu' da menjaš jezik na kome radiš.
Milan
clipper.47mileusna,
>> Da ali boja neke je i boja zaglavlja o čemu piše u NG-u ali nigde
>> nije specificirano kako posebno uraditi boju zaglavlja a posebno za
>> podatke.
žek... Kako to? A šta ako imaš raznobojne ćelije. Recimo,
negativni brojevi crveni, a pozitivni plavi. Koje ti je boje
onda zaglavlje? Dakle, samo ćelijama daš boju, a headsep
bude osnovne boje. :) Nisam probao, ali trebalo bi tako...
clipper.48mileusna,
>> FOR n = 1 TO 4
>> NewGet = GetNew(n, 0, {|EditVal| IIF(PCOUNT() > 0, ;
>> Fields[n] = EditVal, Fields[n]) } )
>> AADD(GetList, NewGet)
>> NEXT
>> promenljive n nakon izlaska iz petlje jednaka 5.
Ako je to, onda samo ispred NEXT staviš:
IF n=4
EXIT
ENDIF
Mada onda ispada da je isto koristiti FOR/NEXT i DO
WHILE/n++, ali eto... :)
clipper.49cnenad,
=> opt_53 zip 222106 CA-Clipper 5.3: Clipper.EXE upgrade + OptEdit
=> Izašao je još jedan manji patch za 5.3, videću šta je menjano i vredi li
Onaj prvi OPT_53 krpi 5.2e EXE na 5.3 ili šta ?
Za ovaj manji pretpostavljam da krpi samo 5.3 ?
Sledeći put budi malo opširniji, nećeš osiromašiti ako otkucaš rečenicu ili
dve više ;)
clipper.50cnenad,
=> žek... Kako to? A šta ako imaš raznobojne ćelije. Recimo,
=> negativni brojevi crveni, a pozitivni plavi. Koje ti je boje
Pa kao što imenjak reče, za te fazone da neka polja budu u drugačijoj boji
se koristi kodni blok. Podrazumevano je da boja zaglavlja i podataka u jednoj
ili više kolona budu ono što se dobije od setcolor(), dakle Forg./Backg.
ili ono što si ti podesio. Izgleda da je ovo rešenje: da se kodni blok koristi
za boje podataka a ono što se dobija od setcolor() ili što ti podesiš kao boja
za zaglavlje. Međutim ovo mi deluje, neću da kažem komplikovano već
jednostavno bespotrebno.
A sad da još malo zakomplikujemo:
1. hoću da naziv kolone bude u jednoj boji
2. hoću da ona crtka ispod zaglavlja (headSep) bude u drugoj boji
3. hoću da podaci budu u trećoj, četvrtoj...zavisno od vrednosti boji ?
clipper.51nbatocanin,
> {|EditVal| IIF(PCOUNT() > 0, Fields[n] = EditVal, Fields[n]) } )
Problem je što se Fields[n] referiše na n-ti član niza, pri čemu je n
isto za sve elemente GetList-a. Tebi treba Fields[1], Fields[2], ...
Najjednostavnije je da napraviš string koji ti treba, a onda da ga
makroom "pretvoriš" u kodni blok:
c := "{ || ... Fields[" + Str(n) + "] ...}"
cb := &c
clipper.52d.petrovic,
> 1. hoću da naziv kolone bude u jednoj boji
> 2. hoću da ona crtka ispod zaglavlja (headSep) bude u drugoj boji
> 3. hoću da podaci budu u trećoj, četvrtoj...zavisno od vrednosti boji ?
Tako sam ja i shvatio prvo pitanje: Da se Naziv kolone i HeadSep razlikuju.
I još uvek mi nije jasno kako je to i dali je rešeno.
a da zakomplikijemo još malo :
Ja najbolje volim da sve smestim u jednu kolonu :
---------------------------------
Bro := TbrowseDb(11, 3, 20, 75)
a := TbColumnNew(" Karton Prezime Ime Broj knj.
JMat. Broj G.",;
šđđ IIF(Empty(Komentar), " ", "*") + BrKar + " " + Prezime + " " +;
Ime + " " + BrKnj + " " + MatBr ć)
Bro:AddColumn(a)
BroColor(Bro) // Brez zbunjivanja, ova funkcija dodeli boje š1, 2, ...ć
a:ColorBlock := šđxđ;
IIf( Len(AllTrim(Substr(x, 2, 10))) < 10, š5, 6ć,;
IIf( Empty(Right(x, 13)), š3, 4ć, š1, 2ć))ć
a:DefColor := š1, 2ć
---------------------------------
Kako ???!!!??? da sve smestim u više kolona, a da mi ceo red u zavisnosti
od jedne kolone dobije istu boju. Da ponovim ? Ako uzmem gornji listing za
primer kako da u zavisnosti od vrednosti JEDNOG polja ceo red dobije ISTU
boju.
---------------------------------
a := TbColumnNew("Karton", šđđ BrKar ć)
Bro:AddColumn(a)
a := TbColumnNew("Prezime", šđđ Prezime ć)
Bro:AddColumn(a)
---------------------------------
Kako sad da i jedan i drugi imaju istu boju u zavistnosti od toga dali je
Empty(Field -> Prezime)
clipper.53mbiresev,
>> A sad da još malo zakomplikujemo:
>> 1. hoću da naziv kolone bude u jednoj boji
>> 2. hoću da ona crtka ispod zaglavlja (headSep) bude u drugoj boji
>> 3. hoću da podaci budu u trećoj, četvrtoj...zavisno od vrednosti boji ?
Evo ovako:
1 2 3 4
oB:colorSpec := 'W/N, +GR/R, br+/gr, W+/n,...'
1 - separatori
2 - naziv kolone
3 4 - podaci
for n := 1 to Fcount()
oColumn := TBColumnNew(field(n), fieldblock(field(n)))
oColumn:defColor := š2 ć
oColumn:colorBlock := š đxđ š 3, 4ć ć
oB:AddColumn(oColumn)
next
A to možeš i za svaku kolonu, svaki podatak.
clipper.54kile,
>> Tebi treba Fields[1], Fields[2], ...
>> Najjednostavnije je da napraviš string koji ti treba, a onda da ga
>> makroom "pretvoriš" u kodni blok:
Znao sam ja šta mi treba, samo se nisam setio kako to da postignem ;)
U svakom slučaju - to je to.
Hvala!
clipper.55atech,
════════════[ PC Guard V2.10 ]═════════════
Kompletan paket za zastitu podataka na
PC racunarima. Zastita izvrsnih programa,
izrada instalacionih disketa, kriptovanje
podataka, konverzija datoteka. Dos verzija.
═══════════════════════════════════════════
Demo verzija se moze skinuti sa PRO-BA Sezama
komandom res re atech (d;).
clipper.56bulaja,
│Onaj prvi OPT_53 krpi 5.2e EXE na 5.3 ili šta ?
└───
Krpi 5.3 EXE na noviji 5.3 EXE, logično :).
clipper.57rmarjan,
Voleo bih kada bi se javio neko ko je radio ozbiljne stvari a pri tome
je koristio FLIPPER graficku biblioteku, mozda mozemo razmeniti iskustva.
Ja sam pre nekoliko nedelja, instalisao 3 programa u tri razlicite firme za
obracun plata. Aplikacija je dosta velika (radi sve sto je potrebno) a radi
i na mrezi. Do sada nije bilo nikakvih problema a ni pri rigoroznom testiranju.
Ovo pominjem zbog toga sto FLIPPER ima i svoj VM sistem, kojeg sam se plasio
u radu. Nema problema.
Interesantno bi bilo cuti, da li je jos neko radio nesto vece pomocu ove
graficke biblioteke.To stoga sto se cini mi se svi pomalo mucimo da se nekako
izborimo sa CAVO i ruku na srce, niko nije zadovoljan onim sto je ocekivao.
Sa druge strane FLIPPER recimo je DOS biblioteka ali nudi stvarno veoma
zgodne mogucnosti za izradu efektnih grafickog izgleda aplikacija.
Jednostavno se razradjuju meniji i sva ostala skalamerija a i statistika se
moze dobro primenjivati (iscrtavanje rezultata). Sve u svemu, vredelo bi da
jos neko proba.
Razlog sto se javljam u vezi FLIPPER-a (koristim verziju 6.08) je sto ne
znam da li je ko u posedu neke vece verzije a sve zbog GET_GET naredbe kojom
se unose podaci. Ona koliko sam ja mogao ustanoviti, uopste ne omogucava da
se kontrlise akcija korisnika, kada jednom udje u get neke varijable. To
je u cistom Clipper-u, moguce. Pretpostavljam da u nekoj novijoj verziji
to nije vise problem. Znam za poslednju verziju 6.2
Da li neko ima noviju veziju ili ima druga neka iskustva sa FLIPPER-om?
Boris
clipper.58nbatocanin,
>> Da li neko ima nekakvu funkciju, koja ce u VELIKOJ bazi
>> kupaca, indeksiranoj po, npr. nazivu kupca, trenutno
>> pronaci svako pojavljivanje zadatog stringa, bez obzira
>> da li se on nalazi na pocetku, sredini, ili na kraju
> naziva?
>
> Rešenje za tvoj problem sigurno nije klasično
> indeksiranje.
Evo da se malo ispravim :) Moguće je da je Clipper 5.3 rešenje za
tebe. Naime, u njemu postoji mogućnost kreiranja "custom" indeksa u
koji možeš da trpaš šta hoćeš. E, sad: kreiraš prazan indeks i u
njega potrpaš SVE reči iz cele baze koje mogu biti interesantne za
pretraživanje. Tako korisnik može da traži bilo koju reč koja se
negde pojavljuje. Što se tiče veličine indeksa, štos je da se kod
CDX-a koristi kompresija indeksa, pa veličina uopšte nije straobalna,
čak, veoma je mala. Naravno, potpuno isto problem rešava i SIx ili
neki sličan proizvod.
clipper.59ikordic,
RE: Clipper 5.3
=> Evo da se malo ispravim :) Moguće je da je Clipper 5.3 rešenje za
Šta se dešava sas ovim, jel' to radi, koja je poslednja verzija i ima li neke
negotivne momente? Apsolutno me ne zanima onaj Win IDE, nameravam da ga rabim
kao i do sada.
clipper.60stanic,
Instalirao sam Novell Lite 1.1 mrežu u jednoj firmi. Od
ranije se vrti program za proizvodnju napisan tako
da pola opcija uopšte ne radi. Pre par dana je dolazio
tip koji je program napisao(prethodno se nije
pojavljivao dve-tri godine, pa zamislite samo taj užas:
loše napisan program koji nije uopšte održavan) i navodno
ispravio greške. Problem je sada što neke opcije programa
ne rade ako je dignuta mreža. Tip misli da je problem
nedovoljno konvencionalne memorije što je bezveze, jer je
u oba slučaja 613 Kb slobodno. Program puca na mestu gde
se indexi otvaraju. Znači po meni problem je sa file
hendlovima. Svuda gde je potrebno stavljeno je f110
(stavljano čak i f250), ali problem stoji i dalje.
Pretpostavljam da ga NWLite negde zeza, al' nemam pojma
gde da čačkam jer u Server statusu piše da ih u stvari
ima dovoljno. Trenutno sam rešio na solomonski način:
kad rade sa tim opcijama ne dižu mrežu(neki sedmični
planovi). Ima li iko predlog kako rešiti ovaj problem.
clipper.61bulaja,
│Šta se dešava sas ovim, jel' to radi, koja je poslednja verzija i ima li neke
│negotivne momente? Apsolutno me ne zanima onaj Win IDE, nameravam da ga rabim
│kao i do sada.
└───
Radi :), nove stvari nisu loše (prošireni GET sistem, nekoliko klasica
za UI kontrole, osakaćeni ali upotrebljivi Light Lib, ugađeni takođe
osakaćeni Comix,..), mada su se obrukali što smo 3 godine čekali na ove
(u osnovi) sitnice. Win IDE nije loš da na brzaka provališ kako se radi
sa novim meni sistemom i GET proširenjima - u meni i form editoru
napraviš neki meni i rasporediš sve moguće kontrole po prozoru i za sve
to generišeš source. Zatim lepo na miru (iz DOS-a, naravno:) proučavaš
šta je radio i primeniš CPOP (cut/copy & paste oriented programming:)
pristup u kreiranju novih programa :). Ako uopšte nećeš Windows IDE,
startuješ Install sa pete diskete i Win deo se uopšte ne instalira.
Negativnih momenata (zbog kojih recimo ja još nisam prebacio ništa od
većih aplikacija na 5.3) ima - neke biblioteke neće raditi sa 5.3, već
se moraju ili prekopajlirati (ako imaš source) ili čekati na patch ili
novu verziju. Ne rade recimo SIx 2.x (kada će konačno ovde stići SIx 3?)
i CLText, rade Class(Y), FUNCky, NanFor, CA-Tools (za koje je neophodan
patch koji nismo još skinuli:).
clipper.62sobrenovic,
Kako da postignem sledece:
Iz jednog GET bloka pozivam neku funkcija a onda ona ponekad poziva
drugi GET blok. Kada ga pozove, desava se da program totalno
pobrljavi jer mesa stare i nove GET-ove. Dali je potrebno da nazivi
GET-promenjivih budu razliciti (iako su LOCAL) ili je potrebno nesto
drugo (i sta je to drugo)?
Pozdrav, SASA.
clipper.63pzivic,
Da li neko zna gde se nalazi clipper kod iz računara 105,
tekst Teret na lađi Gorana Zafirovića.
clipper.64nbatocanin,
> RE: Clipper 5.3
>
> Šta se dešava sas ovim, jel' to radi, koja je poslednja
> verzija i ima li neke negotivne momente? Apsolutno me ne
> zanima onaj Win IDE, nameravam da ga rabim kao i do sada.
Poslednja verzija je 5.3, negativni momenat je što nema obimniju
elektronsku literaturu, nego samo osnovne stvari. Meni je najveći
problem izmenjen GETSYS.PRG koji sam ja takođe menjao.
Ima mali milion novosti i bez Win IDE-a. Uključeni su Exospace,
Blinker, LightLib, Comix, FlexFile, OptEdit. Naravno, nisu dozvolili
kreiranje novih klasa. Što se tiče problema, cenim da će ih biti kao
i uvek, pa će 5.3a biti za širu upotrebu ;) Šalim se, nisam imao
većih problema, ali to ne znači da ih neće biti.
Pazi primer:
Proba->memo := Date() // !
Proba->memo := 123 // !!
Proba->memo := {1,2,3} // !!!
Detalji u novom PC-u :)
clipper.65nbatocanin,
> u oba slučaja 613 Kb slobodno. Program puca na mestu gde
> se indexi otvaraju.
Kako puca? Šta tačno javlja?
clipper.66bulaja,
│Iz jednog GET bloka pozivam neku funkcija a onda ona ponekad poziva
│drugi GET blok. Kada ga pozove, desava se da program totalno
│pobrljavi jer mesa stare i nove GET-ove. Dali je potrebno da nazivi
│GET-promenjivih budu razliciti (iako su LOCAL) ili je potrebno nesto
│drugo (i sta je to drugo)?
└───
Potrebno je da GetList bude LOCAL. U svaku proceduru gde definišeš
GET-ove stavi jedno LOCAL GetList := {}.
clipper.67goxx,
■ >> Tebi treba FieldsŠ1Ć, FieldsŠ2Ć, ...
■ >> Najjednostavnije je da napraviš string koji ti treba, a onda da ga
■ >> makroom "pretvoriš" u kodni blok:
■
■ Znao sam ja šta mi treba, samo se nisam setio kako to da postignem ;)
■ U svakom slučaju - to je to.
■
■ Hvala!
Sa malim zakašnjenjem. Upravo sam došao sa odmora.
Ako hoćeš da izbegneš makroe evo rešenja iz primera za tbrowse nizova
(array.prg). Koristi se osobina lokalnih promenljivih i kodnih blokova da
uzimaju vrednosti iz funkcije gde su definisani.
Dakle,
................
// Create column blocks and add TBColumn objects to the TBrowse
// (see ABrowseBlock() below)
FOR n = 1 TO LEN( aArrayŠ1Ć )
o:AddColumn( TBColumnNew("", ABrowseBlock(aArray, n)) )
NEXT
................
/***
* ABrowseBlock( <a>, <x> ) -> bColumnBlock
* Service function for ABrowse().
*
* Return a set/get block for <a>ŠnRow, <x>Ć
*
* This function works by returning a block that refers
* to local variables <a> and <x> (the parameters). In
* version 5.01 these local variables are preserved for
* use by the block even after the function has returned.
* The result is that each call to ABrowseBlock() returns
* a block which has the passed values of <a> and <x> "bound"
* to it for later use. The block defined here also refers to
* the static variable nRow, used by ABrowse() to track the
* array's "current row" while browsing.
*/
STATIC FUNCTION ABrowseBlock(a, x)
RETURN ( šđpđ IF(PCOUNT() == 0, aŠnRow, xĆ, aŠnRow, xĆ := p)ć )
................
Goran
clipper.68goxx,
■ Da li neko zna gde se nalazi clipper kod iz računara 105,
■ tekst Teret na lađi Gorana Zafirovića.
Koliko me sećanje služi, nema listinga iz nekoliko brojeva (onih
"prelomnih" :)
Evo kompletan primer. Tekst stvarno izgleda zamršeno bez sorsa i ne
verujem da ga je pročitalo više od 5 ljudi.
Goran
ter.zipclipper.69zkrstic,
>> Pretpostavljam da ga NWLite negde zeza, al' nemam pojma
>> gde da čačkam jer u Server statusu piše da ih u stvari
Pretpostavljam da SHARE je dignut bez parametara
koje smo ( sam ) ovde pominjali/o, bar tako mi liči. Ako
budeš imao još problema viči me na 402-096 u radnju da
probamo, obzirom da kopam oči ko mi dirne NWL1.1 ;)
Pozdrav, Zkr
clipper.70nbatocanin,
> Iz jednog GET bloka pozivam neku funkcija a onda ona
> ponekad poziva drugi GET blok. Kada ga pozove, desava se
> da program totalno pobrljavi jer mesa stare i nove
> GET-ove. Dali je potrebno da nazivi GET-promenjivih budu
> razliciti (iako su LOCAL) ili je potrebno nesto drugo (i
> sta je to drugo)?
Stvar je u tome što svaki READ mora da ima svoju posebnu GetList
promenljivu. Znači, na početak svake procedure za unos stavi LOCAL
GetList := {}.
clipper.71kile,
>> Sa malim zakašnjenjem. Upravo sam došao sa odmora.
>> Ako hoćeš da izbegneš makroe evo rešenja iz primera za tbrowse nizova
E, to mi treba :))
Hvala!
clipper.72whitie,
-->>> Apsolutno me ne zanima onaj Win IDE, ...
Mene bas interesuje razvijanje programa pod Win. U R-105 se
pisalo ... " o mnogim greskama i nedovrsenosti " ... Clipper
Workbench-a. Ako se ne varam tekst je zakljucen konstatacijom
"... AKO se .." to dovede do nivoa VO bice mnogo upotrebljivo
i korisno.
Sou, na cemu smo ?
clipper.73whitie,
Kako da preuzmem vrednost environment promenljive, postavljene sa
SET TEMP npr. Rekose mi da ima f-ja u Blinkeru, al' ja ne nadjoh !
clipper.74dvesic,
>> SET TEMP npr. Rekose mi da ima f-ja u Blinkeru, al' ja ne
>> nadjoh !
Ima i u Clipper-u :)
GetEnv() // GetEnv("TEMP")
clipper.75stanic,
>> u oba slučaja 613 Kb slobodno. Program puca na mestu gde
>> se indexi otvaraju.
>
> Kako puca? Šta tačno javlja?
Workarea not in use:ORDLISTADD.
Pa između ostalog javi: called from DbSetIndex(0) i
nakon toga njegova procedura gde je greška nastala.
Meni ovo liči na pokušaj da otvori index, ali zbog
nedostatka file hendlova puca. Sa dignutom mrežom
ne radi, a bez nje radi.
Evo i isečka iz autoexec-a.
lh share /f:6000 /l:200
lh lsl
lh ne2000.com
lh ipxodi a
lh server
lh client
lh nlcachex.exe 256
Problem je što source-a nema tako da nemam pojma šta
se dešava u problematičnom delu.
clipper.76dzoric,
Imam jedan problem sa Novel Lite-om 1.1. Prvi put radim sa doticnim i od
samog pocetka sam se plasio istog. Elem, u jednoj prodavnici imam dve
stanice 386 sa po 2Mb RAM-a od kojih je jedna na kasi (server). Memorija
je podignuta sa QEMM-om 7.04. Na mrezi trci Clipper aplikacija za vodjenje
radnje. Ovo je sve radilo bez problema do skoro a od nedavno imam svako-
dnevno blokiranje stanice ili corruption u bazama. Kada se analizira
corruption vidi se da je deo koda upisan u baze i verovatno je po sredi
konflikt sa memorijom.
Da li je neko imao slicnih problema sa kombinacijom Clipper-QEMM-Lite.
__Dejan__
clipper.77mdrazic,
> Potrebno je da GetList bude LOCAL. U svaku proceduru gde definišeš
> GET-ove stavi jedno LOCAL GetList := šć.
Ne, potrebno je
PRIVATE GetList:=šć
U svakoj aplikaciji postoji jedan PUBLIC GetList koji se koristi ako
se ne deklariše drugi. Sa LOCAL je lista vidljiva samo u tom modulu,
dok iz readmodal() i ostalih funkcija za obradu get liste nije.
Milan
clipper.78mdrazic,
> Proba->memo := Date() // !
> Proba->memo := 123 // !!
> Proba->memo := š1,2,3ć // !!!
>
> Detalji u novom PC-u :)
A kodni blokovi?
clipper.79stanic,
> Pretpostavljam da SHARE je dignut bez parametara
> koje smo ( sam ) ovde pominjali/o, bar tako mi liči.
Probao danas sa parametrima, spustio ga dole, ali
ista stvar. Ima li još predloga ?
clipper.80mileusna,
>> drugi GET blok. Kada ga pozove, desava se da program totalno
>> pobrljavi jer mesa stare i nove GET-ove. Dali je potrebno da nazivi
>> GET-promenjivih budu razliciti (iako su LOCAL) ili je potrebno
>> nesto drugo (i sta je to drugo)?
Na početku funkcije sa 'novim' GET-ovima turiš jedno:
LOCAL GetList:={}
clipper.81bulaja,
││LOCAL GetList := {}
│└───
│Ne, potrebno je
│PRIVATE GetList:=šć
│U svakoj aplikaciji postoji jedan PUBLIC GetList koji se koristi ako
│se ne deklariše drugi. Sa LOCAL je lista vidljiva samo u tom modulu,
│dok iz readmodal() i ostalih funkcija za obradu get liste nije.
└───
Koliko se sećam, čovek je imao problem sa preklapanjem GET lista iz
rekurzivno pozvanih READ-ova, što će rešiti LOCAL a ne PRIVATE :).
clipper.82mileusna,
>> Workarea not in use:ORDLISTADD.
>> Pa između ostalog javi: called from DbSetIndex(0) i
>> Meni ovo liči na pokušaj da otvori index, ali zbog
A da nije ovo u pitanju:
Pokušano je otvaranje datoteke u mreži. Pošto je program
'sklepan' (tako reče, jel da?:) verovatno ne proverava da li
je otvaranje zaista i uspelo. Recimo da otvaranje nije uspelo.
Program ide dalje i podrazumeva da je .dbf otvoren. Sledi
funkcija DBSETINDEX() (ili već nešto u sličnom fazonu), ali
avaj... nema otvorene baze (Workarea not in use), pa se tako
ne mogu otvoriti ni indeksi (ordListAdd(), dbSetIndex()) i
javlja se greška.
Ovakav slučaj bi trebalo da dâ identičnu grešku koju si
naveo, i da prijavi funkciju DBSETINDEX() kao krivca. Bilo
kako bilo, nađi tog programera, neka pogleda kod, pa bar da
znaš na čemu si: da li je greška u kodu ili u mreži.
clipper.83nbatocanin,
> Mene bas interesuje razvijanje programa pod Win. U R-105
> se pisalo ... " o mnogim greskama i nedovrsenosti " ...
> Clipper Workbench-a. Ako se ne varam tekst je zakljucen
> konstatacijom "... AKO se .." to dovede do nivoa VO bice
> mnogo upotrebljivo i korisno.
> Sou, na cemu smo ?
Na žalost, nisu ga doveli na nivo VO-a. Koncepti nisu do kraja razrađeni,
mada sve solidno funkcioniše. Kad bi se doteralo i napravilo za DOS,
bilo bi odlična stvar. Primera radi, DBServer (koji je odlična ideja)
nema smisla ako nemaš mogućnost kreiranja objekata iz klase tog
servera. A pošto 5.3 nema UD objekte... Ovako samo stoji i malo čemu
služi :(
clipper.84nbatocanin,
>> Proba->memo := Date() // !
>
> A kodni blokovi?
Jock. Samo string pa makro. Kako bi rešio referisanje na lokalne
promenljive u cb?
clipper.85nbatocanin,
>> Kako puca? Šta tačno javlja?
> Workarea not in use:ORDLISTADD.
Ovo znači da se traži pristup bazi koja nije otvorena. Verovatno nisu u
pitanju hendlovi, nego na primer pokušaj otvaranja iste tabele dva
puta ekskluzivno (ili zaboravio čovek da zatvori prvi put). Lek:
teško. Ne verujem da je do mreže. Probaj da ga startuješ bez mreže,
ali sa učitanim SHARE. Jedino da ga dekompajliraš, ispraviš grešku i
ponovo kompajliraš ili da ga pečuješ.
clipper.86nbatocanin,
>> definišeš GET-ove stavi jedno LOCAL GetList := šć.
> Ne, potrebno je
> PRIVATE GetList:=šć
Nema veze, GetList se prenosi kao argument u ReadModal.
clipper.87nbatocanin,
> Imam jedan problem sa Novel Lite-om 1.1. Prvi put radim sa
> doticnim i od samog pocetka sam se plasio istog. Elem, u
> jednoj prodavnici imam dve stanice 386 sa po 2Mb RAM-a od
> kojih je jedna na kasi (server). Memorija je podignuta sa
> QEMM-om 7.04. Na mrezi trci Clipper aplikacija za vodjenje
> radnje. Ovo je sve radilo bez problema do skoro a od
> nedavno imam svako- dnevno blokiranje stanice ili
> corruption u bazama. Kada se analizira corruption vidi se
> da je deo koda upisan u baze i verovatno je po sredi
> konflikt sa memorijom. Da li je neko imao slicnih problema
> sa kombinacijom Clipper-QEMM-Lite.
Meni se ovo jednom desilo, ali na jednokorisničkom računaru.
Pretpostavljam da je stvar do QEMM-a. Prepakuj sve tabele, možda
pomogne.
clipper.88zkrstic,
>> Imam jedan problem sa Novel Lite-om 1.1. Prvi put radim sa doticnim i od
>> samog pocetka sam se plasio istog. Elem, u jednoj prodavnici imam dve
>> stanice 386 sa po 2Mb RAM-a od kojih je jedna na kasi (server). Memorija
>> je podignuta sa QEMM-om 7.04. Na mrezi trci Clipper aplikacija za vodjenje
Ajde bači CONFIG & AUTOEXEC. Druga stvar koju možeš sam da
uradiš je da poteraš OPTIMIZE da traži EXCLUDE-ove, lako
moguće da se neko sproću nekoga svađa. Inače identičnu
konjfiguraciju ( sa 4MB RAM-a ) imam i ja u radnji i za zadnje
četiri godine sam imao tri ili četiri problema, sve mojom
krivicom ( turbulencija u sorsu ;> ). Tako nešto - jock.
Baj'd'vej jel imao neko frku sa SIX-om i DRIVESPACE-om ili kako
se već zove ono Majkrosoftovo čedo za pravljenje pite od
go*ana ;> ? Meni se već dva puta dešava, prvi put na Kipru
na nekoj kreten mašini, drugi put neki dan ovde. Imal' ko
kaki lek ?
Zkr
clipper.89d.petrovic,
> Workarea not in use:ORDLISTADD.
> Pa između ostalog javi: called from DbSetIndex(0) i
> nakon toga njegova procedura gde je greška nastala.
> Meni ovo liči na pokušaj da otvori index, ali zbog
> nedostatka file hendlova puca. Sa dignutom mrežom
> ne radi, a bez nje radi.
Pretpostavka :
žovek je na jednom mestu u programu otvorio otvorio neku bazu ekskluzivno.
Sada tu bazu otvara u drugoj oblasti i NorMAlno ne vrši proveru uspeva li
to uopšete. Kod otvaranja indeksa puca jer u toj novoj oblasti ništa nije
otvoreno.
Bez mreže sve to fercera, jer možeš jednu bazu ekskluzivno da otvoriš kad
god ti se nakrivi.
Objasni ti njemu da mu program ne valja, a ako i dalje ima volju da te
zaluđuje javi se da mu na NW3.12 dokažemo da je zasrao ;)))
clipper.90d.petrovic,
> PRIVATE GetList:=šć
>
> U svakoj aplikaciji postoji jedan PUBLIC GetList koji se
> koristi ako se ne deklariše drugi. Sa LOCAL je lista vidljiva
> samo u tom modulu, dok iz readmodal() i ostalih funkcija za
> obradu get liste nije.
Naprotiv, UVEK LOCAL
Šta ćeš u funkciji koju pozivaš kroz validaciju ? Promenljive koje ti
trebaju u sledećoj funkciji uvek predaješ kao parametar, a ako ti ni to
nije dosta predaj ceo GetList kao parametar ;)
clipper.91cnenad,
=> Baj'd'vej jel imao neko frku sa SIX-om i DRIVESPACE-om ili kako
Kakva frka ?
Dugo vremena (tri godine) sam sorseve i test EXE držao na kompresovanoj
particiji i nikad nije bilo nikakvih problema.
Sada su na kompresovanoj particiji Clipper i SIX, u memoriji je drajver,
doduše QEMM Stealth D*Space i nema problema.
clipper.92ndragan,
/ Šta ste koristili?
(u foksu, da se ogradim)
#define jezik getenv("jezik")
* mađarski 852
#if jezik="mag"
c_dobar_dan="Jó napot"
* ascii engleski
#elif jezik="eng"
c_dobar_dan="Good morning"
* srpski 852
#elif jezik="s8"
c_dobar_dan="Dobar dan komšija"
#else
* ...i difolt juski
c_dobar_dan="Dobar dan kom{ija"
#endif
Mana u ovoj verziji foksa je što svaka takva poruka troši po jednu
promenljivu, inače bi bilo
#elif jezik="s8"
#define c_dobar_dan "Dobar dan komšija"
Uglavnom, kompajlira se uvek samo jedna od verzija, zavisno od okolinske
promenljive jezik. Svaki program ima svoje c_* promenljive (nažalost, ne
konstante, al' može u VFP3.x).
clipper.93stanic,
Ima li neka dobra duša koja bi mogla da mi baci
na brzi Sezam primere iz Booth & Lief-Cl 5.2
mrežno programiranje. Treba mi desetak f-ja , al
iskreno reženo mrzi me da ih kucam(što mi u krajnjem
slučaju ne gine). Please...
clipper.94goxx,
pucanje index-a na lakom novelu.
možda ti fali set clipper=f100 u autoexec.bat
mene je jednom to zezalo sa istim simptomima.
Goran
clipper.95mdrazic,
> Koliko se sećam, čovek je imao problem sa preklapanjem GET lista iz
> rekurzivno pozvanih READ-ova, što će rešiti LOCAL a ne PRIVATE :).
Može i private, verujte na reč starijem čoveku :), čak omogućava i
neke prljave trikove sa GetList-om pri validiranju koje sam pravio
a za koje ne kažem da ne mogu i drugačije (čistije) da se urade.
Sa private radim još od starije verzije Clippera pa mi je prešlo u
naviku. Naravno da je više 'in' koristiti local.
Milan
clipper.97stanic,
> teško. Ne verujem da je do mreže. Probaj da ga startuješ bez mreže,
> ali sa učitanim SHARE.
Do istog zaključka sam slučajno došao i sam danas. Zaboravio sam da
zatvorim bazu, pod win-om radi vshare i identična stvar. Hvala svima
koji su mi pomogli u rešavanju ovog problema. A tipa ću za gušu što
mi dira NWLite.
> Jedino da ga dekompajliraš, ispraviš grešku i
> ponovo kompajliraš ili da ga pečuješ.
-------
Pečujem ? Kako ? Joke ? Prosvetljenje ?
clipper.98zzk.,
>> konflikt sa memorijom. Da li je neko imao slicnih problema
>> sa kombinacijom Clipper-QEMM-Lite.
> Meni se ovo jednom desilo, ali na jednokorisničkom računaru.
> Pretpostavljam da je stvar do QEMM-a. Prepakuj sve tabele, možda
> pomogne.
desilo se prije nekoliko mjeseci:
clipper 5.01 + novell 3.11
(vec nekoliko godina se na 50 masina vrti ista kombinacija)
izvjestaj, koji je trebao otici u fajl _korisnicko_ime_.txt, je krenuo
u jednu od centralnih .dbf datoteka (otvorena za vrijeme izvrsavanja ove
operacije) i prepisao prvih 512 bajta :(
nista sumnjivo nisam uspio da otkrijem (operacija je i prije i poslije
ovog dogadjaja izvedena uspjesno bar po par hiljada puta), tako da sam
rijesio da okrivim duhove i udvostrucim molitve narednu nedjelju dana :)
č.
p.s.
nakon restauriranja prvih nekoliko zapisa i zaglavlja datoteke nisam
znao koliko zapisa se u njoj nalazi (program je tretirao samo onoliko
koliko je naznaceno u zaglavlju). kreiranje nove datoteke i jedno
append from _restaurirana_ je uspjelo da prikupi sve sto je trebalo :)
clipper.99sbrk,
>> Ima li neka dobra duša koja bi mogla da mi baci
>> na brzi Sezam primere iz Booth & Lief-Cl 5.2
>> mrežno programiranje.
Hau jes not. (što bi rek'o ndragan) :)
src_fox.arjclipper.100obren,
Kakva su iskustva sa pisanjem biiblioteka (ili .obj-a) za Clipper u
Borland C-u? Jel može ili mora u MSC-u?
clipper.101nbatocanin,
>> Jedino da ga dekompajliraš, ispraviš grešku i
>> ponovo kompajliraš ili da ga pečuješ.
> -------
> Pečujem ? Kako ? Joke ? Prosvetljenje ?
:)) Ideja nastala u trenutku ludosti :) Može se, na primer:
USE Test
pretvoriti u:
USE Test SHARED
tako što se izmeni par bajtova u EXE kodu. Ali, onda je problem sa
zaključavanjem pre izmene. U svakom slučaju, ako imaš autora, to ti
je najbolje rešenje.
clipper.102dpredovic,
> Baj'd'vej jel imao neko frku sa SIX-om i DRIVESPACE-om ili kako
> se već zove ono Majkrosoftovo čedo za pravljenje pite od
> go*ana ;> ? Meni se već dva puta dešava, prvi put na Kipru
> na nekoj kreten mašini, drugi put neki dan ovde. Imal' ko
> kaki lek ?
Stacker 4 :) Nije da imam nešto protiv MalogMekog, ali još nisam
(lično) video mašinu na kojoj TroubleSpace-ovi nisu zaslužili svoje
ime.
clipper.103d.petrovic,
>>> Jedino da ga dekompajliraš, ispraviš grešku i
>>> ponovo kompajliraš ili da ga pečuješ.
>> -------
>> Pečujem ? Kako ? Joke ? Prosvetljenje ?
>
> :)) Ideja nastala u trenutku ludosti :) Može se, na primer:
>
> tako što se izmeni par bajtova u EXE kodu. Ali, onda je problem
> sa zaključavanjem pre izmene. U svakom slučaju, ako imaš
> autora, to ti je najbolje rešenje.
Prva varijanta :
Naprotiv, vrlo dobra ideja, s kojom se treba pozabaviti:
Naći gde je glavni meni i pozatvarati SVE. Zatim čitati očenaš 10 puta
da ne koristi negde neku bazu koja je UVEK otvorena.
Druga varijanta :
Izmeniti kod gde vrši select pre otvaranja (Verovatno to i radi čim je baš
toliko zabrljao) i preći u oblast gde je dotična VEĆ otvorena.
clipper.104dvesic,
>> Kakva su iskustva sa pisanjem biiblioteka (ili .obj-a) za
>> Clipper u Borland C-u? Jel može ili mora u MSC-u?
Uz određenu ogradu :)) trebalo bi da može u verzijama 4.xx, uz
navođenje prekidača koji generiše OBJ datoteke kompatibilne sa
MSC-om.
clipper.105bulaja,
_Mo─e i private, verujte na re┌ starijem ┌oveku :), ┌ak omogu║ava i
_neke prljave trikove sa GetList-om pri validiranju koje sam pravio
_a za koje ne ka─em da ne mogu i druga┌ije (┌istije) da se urade.
_Sa private radim joˇ od starije verzije Clippera pa mi je preˇlo u
_naviku. Naavno da je viˇe 'in' koristiti local.
____
Ne znam koji su to prljavi trikovi :), ali sa stanoviˇta ReadModal()
nema nikakve razlike da li je GetList deklarisan kao PRIVATE ili LOCAL,
jer je funkcija deklarisana ovako:
// GetSys.prg
FUNCTION ReadModal ( GetList, nPos )
dakle GetList koji je deklarisan kao formalni parametar maskira
eventualni Public/Private GetList koji je deklarisan u pozivnim
procedurama :).
clipper.106magbet,
Ima li neko ISPRAVNU biblioteku FIVEWIN.LIB iz istoimenog kompleta
koji se nalazi na Sezamu. Ja sam to sve lepo pokupio, ali je .LIB,
koju tražim, neispravna. Biblioteka ima oko 650 Kb nekomprimovano.
Bio bih vrlo zahvalan dobroj duši, koja bi mi to poslala, na ovaj
ili onaj Sezam.
Unapred zahvaljujem, Magbet.
clipper.107zkrstic,
>> Ima li neko ISPRAVNU biblioteku FIVEWIN.LIB iz istoimenog kompleta
Ima ga na brzom sezamu, conf TEST, tema pc.prog. Traži sa
CONF LIST /T ili neku od mojih poruka.
Zkr
clipper.108stanic,
Zahvaljujem.
clipper.109stanic,
:)))))))))))))))))))))) Wow.
clipper.110pzivic,
> Evo kompletan primer. Tekst stvarno izgleda zamršeno bez sorsa
> i ne verujem da ga je pročitalo više od 5 ljudi.
Tekst stvarno izgleda zamršeno bez sorsa. Hvala.
Peđa.
clipper.111stosic,
Clipper clone of Norton Commander, prilagodjen za verziju 5.3
clipcmd.zipclipper.112magbet,
*-> Ima ga na brzom sezamu, conf TEST, tema pc.prog. Traži sa
Nađeno & preuzeto. Zahvaljujem unazad :).
clipper.113stosic,
> Izasao je jos jedan manji patch za 5.3, videcu sta je menjano i vredi li
> ga skidati.
CL53UP.ZIP
This update to CA-Clipper 5.3 fixes real-mode indexing problems experienced
with the release version of CA-Clipper 5.3.
cl53up.zipclipper.114pzivic,
Postoji li izvorni kod za fukciju ACHOICE ().
clipper.115d.petrovic,
> Postoji li izvorni kod za fukciju ACHOICE ().
tbrowsenew() i napraviš ga između užine i ručka, ako odustaneš od "potpune"
kompatibilnosti.
clipper.116kcurcic,
Problem:
Runtime greska
'Unrecoverable error 669 Eval stack fault'
nastaje u jednom delu programa. E sad, nastaje ako je koriscen Blinker.
.RTL daje ispravan program. Zna li se mozda nesto vise o ovome
(eksperimenti sa 'blinker proc depth nnn' & 'stack' samo pogorsavaju stvar
- program puca pri samom startovanju sa nekom greskom koja potice od
MSC-a (bar mislim) i cuvenim 'null pointer assignment' :))
Ah, da: kombinacija je Clipper 5.01 i Blinker 2.0
clipper.117rmarjan,
Evo ovako:
System has tried to expand the MEMVAR table, and is unable to do so
due to insufficient memory...
(by IERR.NG - CA Clipper Interna˘Ęl errors)
Napred u nove radne pobede...
Pozdrav Boris
clipper.118tvucko,
>> Spisak originalnog softwer-a i knjiga za CLIPPER, VO i DELPHI
softbook.txtclipper.119kcurcic,
> System has tried to expand the MEMVAR table, and is unable to
> do so due to insufficient memory...
Dete ga marisalo. :) Ono sto ostaje kao pitanje je zasto se
vec navedeni pozdrav pojavljuje samo posle Blink tretmana. Pokusaji sa
drugim verzijama Blinkera daju iste rezultate, tako da mi ostaje da se
manem istog. A steta, prirast'o mi srcu *ebo on mater svo'ju :)
clipper.120rmarjan,
Mislim da ti nije dobra ideja da se manes Blinkera. Mnoge stvari bez njega
ne bi ni mogao da obavim.
- Jedna stvar je da poslednja aplikacija koju razvijam, jednostavno NE moze
da se memorisjski uglavi pri startu u iole tanku m űemorijsku situaciju,
Blinker to resava kao od sale (smanjio mi je "load" velicinu za 100K
- Druga stvar je da recimo iz aplikacija "ladno" poteram ARJ u i radim neko
arhiviranje iz iste aplikacije (da jetlink i provukao aplikaciju za start) ne
bih ipak mogao ARJ ni slucajno. Blinker izmedju ostalog ima i SWMMMAP..
funkciju za startovanje ekesternih procesa...
- Itd
Dakle savet je CLIPPER 5.01 -> CLIPPER 5.2e i Blinker 2.00 -> 3.xx
Pozdrav
clipper.121magbet,
Drugar (odnosno ja za njega) skinuo FiveWin biblioteku, ali nikako da
napravi IDE. Molim uputstva...
clipper.122nbatocanin,
> Drugar (odnosno ja za njega) skinuo FiveWin biblioteku,
> ali nikako da napravi IDE. Molim uputstva...
U čemu je problem? Ima tamo neki make file, potera ga i dobije
IDE.EXE.
clipper.123magbet,
*-> U čemu je problem? Ima tamo neki make file, potera ga i dobije
*-> IDE.EXE.
Prilikom pokretanja RMAKE IDE blinker kaže:
BLINKER : 1128 : FIVEWIN.LIB(MONITOR) : unrecognised OBJ record type 00H
Error RMAKE/R2001 Exit 1: 'blinker čide.lnk'
clipper.124dvesic,
> BLINKER : 1128 : FIVEWIN.LIB(MONITOR) : unrecognised OBJ record
> type 00H Error RMAKE/R2001 Exit 1: 'blinker čide.lnk'
Koja je verzija Blinkera ? Podržava li Win programe ?
clipper.125rmarjan,
Nabavio sam Clipper 5.3 i odmah naisao na problem:
- Aplikacija pod 5.2e + Blinker 3.10 je normalno radila (koristim CDX)
- Nakon kompajliranja pod 5.3 (proslo normalno) kod linkovanja mi
Blinker prijavi problem sa DBFCDX, kao da nisam dobro podesio koji
drajber ce mi biti default. Nista nisam menjao, samo sam propustio sa
novim kompajlerom. Gde gresim
- Ima li neke razlike u odredjivanju default indeksnog drajvera u 5.3 u
odnosu na 5.2 i ako ima, zna li neko u cemu je stos. Napominjem da sam
i RDDSYS.PRG kompajlirao pod 5.3 verzijom. Ne mogu da koristim Blinker
koji ide uz 5.3 verziju jer ne preposnaje naredbu na primer BLINKER
EXECUTABLE SERIAL ...
Help, hilfe, aiuto...
clipper.126magbet,
*-> Koja je verzija Blinkera ? Podržava li Win programe ?
Toliko tip ipak zna ;). Blinker v3.20. Da malo pojasnim, rade mu
primeri (svojim očima video & probao), međutim IDE neće, pa neće.
žovek je već dobar deo programa odradio u FW-u, ali bi rado pogle-
dao IDE. Probali smo razne opcije Blinker-a, ali ništa :(((. Proba-
no i sa premeštanjem fajla MONITOR.OBJ u OBJ direktorijum, ništa.
Potom se obratih ovde...
P.S. Ima li načina da se obiđe ona nesnosna poruka o registraciji,
frendu je biblioteka vrlo potrebna i zadovoljava sve njegove
potrebe, ali ono ;).
clipper.127nbatocanin,
Šta si naveo u link skriptu? Probaj da navedeš LIB DBFCDX, _DBFCDX.
Jeste glupo, ali radi. Imaj u vidu da je CDX drajver _veoma_ izmenjen.
clipper.128rmarjan,
Problem je sto sam sve naveo kako treba , bar űem u tome imaiskustva ű
ali je smesno sto ako navedem LIB DBFCDX i JOS!!! navedem LIB _DBFCDX koji
takodje (ne znam zasto) postoji u L■˛IB direktoriju, linker ne prijavljuje
gresku ali nista ne radi jer pri prvom o űtvaranju stvar se raspadne!
Kakav je to _dbfcdx.LIB?
Osim toga nigde nije razjasnjena koncepcija ocigledno izmenjenog nazina¸│
izmene RDDSYS.PRG! Ili mozda naredbi REQUEST, ANNOUNCE i SETRDDxxx()
Ima li tu pomoci
Link skript inace ima overlay sekciju (BEGIN ...END) zatim nanfor pa nakon
toga Cl520min.LNK poziva (pre toga LIB DBFCDX)
űInteresantno jeste ali videcu sta pisu momci u PC7...
Pozdrav Boris
clipper.129nbatocanin,
> Problem je sto sam sve naveo kako treba , bar űem u tome
> imaiskustva ű ali je smesno sto ako navedem LIB DBFCDX
> i JOS!!! navedem LIB _DBFCDX koji takodje (ne znam zasto)
> postoji u L■˛IB direktoriju, linker ne prijavljuje gresku
> ali nista ne radi jer pri prvom o űtvaranju stvar se
> raspadne! Kakav je to _dbfcdx.LIB?
Štos je u sledećem: za memo polja se koristi FlexFile tehnologija. To
nije samostalni drajver, već se koristi samo za pristup memo poljima,
dok se za rad sa DBF slogovima koristi neki drugi drajver. E, DBFCDX
je u stvari, Comix kome memo poljima upravlja FlexFile. Onaj sa "_"
je osnovni Comix drajver (ako se dobro sećam).
> Osim toga nigde nije razjasnjena koncepcija ocigledno
> izmenjenog nazina¸│ izmene RDDSYS.PRG! Ili mozda naredbi
> REQUEST, ANNOUNCE i SETRDDxxx() Ima li tu pomoci
Šta je izmenjeno?
> nanfor pa nakon toga Cl520min.LNK poziva (pre toga LIB
> DBFCDX)
A što ne probaš skript za 5.3?
clipper.130rmarjan,
Jos uvek mi nije jasno STA i KADA treba u skriptu da navedem da bih radio
sa CDX indeksima kao do sada.
- Da li treba koristiti izmenjeni RDDSYS.OBJ da ga inicijalno linkujem
i da radi u startu sa CDX?
- Posto vec u RDDSYS postoji ANNOUNCE RDDSETDEFAULT() , treba li to isto
na startu glavne aplikacije (ako to ne stavim) prijavljuje unresolved
external
- U skriptu, ako izostavim _DBFCDX a ostavim samo DBFCDX prijavljuje takodje
unresolved external _DBFCDX a ako ga ulinkujem u root, nista ne radi. Ako
ga ulinkujem u BEGIN..END deo skripta za aoverlej, linkovanje prodje ali
pri tome opet ne radi...
- Osim svega navedenog, "loadable" velicina je ubedljivo veca od 5.2e pa
sam morao uvesti cl520mid umesto MIN
Mislo sam da sam te decje stvari linkovanja, skriptova, modula i slicno
prevazisao nakon prelaska sa '87 na 5.x Clipper (odvano, 88-89 g.) ali
eto ponovo mi se desavaju takve stvari.
A bas je zgodan 5.3 onako odokativno gledajuci, ima cak i gfaicke primitive
pa ga ne bi bilo zgoreg osbiljno upotrebiti...no...
Hvala na komentarima u svakom slucaju...
Boris
clipper.131kile,
Koliko je teško pročitati kriptovane tabele u SIX-u?
clipper.132cnenad,
Da li postoji regularan način da se poruke tipa: Ivalid date, Abort i slične
prevedu i kao takve ispisuju umesto u izvornom obliku ?
clipper.133jolicm,
>> prevedu i kao takve ispisuju umesto u izvornom oliku ?
Ima, tvoj errorhandle.
clipper.134rmarjan,
Posto radim softver u grafickom okruzenju za Clipper (graficka biblioteka
je za interfejs zaduzena), kako da sprecim da mi na mrezi neko ne posalje
neku poruku (pocev od poruke za kraj rada sistema), ne mogu je korektno
primiti na moj ekran ako mi je aplikacija u grafickom rezimu?
Ili ako ne mogu da je sprecim, postoji li neka mogucnost da je nekako
zahvatim pre nego sto mi krene na ekran i konvertujem poruku tako da
se moze u grafickom rezimu prikazati.
clipper.135mileusna,
>> Da li postoji regularan način da se poruke tipa: Ivalid date, Abort
>> i slične prevedu i kao takve ispisuju umesto u izvornom obliku ?
Ima. U stanju si da sam, na svoj način obradiš greške.
Pri grešci kreira se objekat Error klase, koji se prosleđuje
odgovarajućoj funkciji. Po default-u, obrada greške u
Clipper-u je realizovana preko modula C:\CLIPPER5\SOURCE\SYS\errorsys.prg
(pogledati). Ako si voljan, obradu greške možeš preusmeriti
na neku svoju funkciju na sledeći način:
ERRORBLOCK( { |oError| MyFunction(oError) } )
Nakon poziva ERRORBLOCK() funkcije, svaka greška dovodi do
izvršavanja navedenog kodnog bloka, odnosno do pozivanja
funkcije MyFunction. oError je već pomenuti objekat klase
Error. Sve o njoj i njenim objektima imaš u NG-u na 'adresi'
Language/Class/Error. Ja lično se nisam previše time zamarao,
tj. nisam ulazio u tanka crevca, samo sam malo preuredio
errorsys.prg, tako da pri pojavi greške prikaže MOJ alert box
sa 'srpskim' obaveštenjem da je došlo do greške, i da će
opis greške biti upisan u izvesnu datoteku. :) Dakle, bez
engleskih reči na ekranu, a sve je opet moguće pročitati i
videti gde je zapelo. :)
P.S. Hm... žemu li služi ovaj fajl 'Errors.Log' što zauzima 10MB... O:)
clipper.136nbatocanin,
Zašto koristiš link skriptove za 5.2? Probaj da koristiš onaj za 5.3.
Nisam upoređivao, ali možda ima neke razlike. Probaj da ulinkuješ i
DBFMEMO.LIB. Možda je uzrok zaglavljivanju drugačija tehnologija memo
polja. Jer, stari CDX drajver je koristio drugu tehniku, bez obzira
na istu ekstenziju (FPT) - sada FlexFile radi sa memo poljima. Probaj
da konvertuješ staru bazu.
clipper.137nbatocanin,
> Koliko je teško pročitati kriptovane tabele u SIX-u?
Hm, malo sam gledao i ne izgleda mi previše teško. Pogotovu ako imaš
SIx i možeš da ekperimenišeš sa promenom bajta u originalnom tekstu i
sl.
clipper.138nbatocanin,
> Da li postoji regularan način da se poruke tipa: Ivalid
> date, Abort i slične prevedu i kao takve ispisuju umesto u
> izvornom obliku ?
Izmeniš ERRORSYS.PRG ili napišeš svoju proceduru za obradu grešaka. I
jedno i drugo je jednostavno.
clipper.139nbatocanin,
> Posto radim softver u grafickom okruzenju za Clipper
> (graficka biblioteka je za interfejs zaduzena), kako da
> sprecim da mi na mrezi neko ne posalje neku poruku
CASTOFF za Novell?
clipper.140rmarjan,
Sve sam probao, jednostavno NE IDE.
Osnovna stvar je sto ne znam na kom mestu da ulinkujem CDXDBF a na kom
mestu da ulinkujem _CDXDBF. Ako oba stavim VAN BEMMMMGIN...END za ovrelay
deo, tada ne radi nista. Ako _CDXDBF stavim u overlej sekciju a CDXDBF
ostavim u root, sve se linkuje ali ne radi.
Osim toga, moram CDXDBF svakako staviti PRE Clipper.lib !?? inace mi uporno
prijavljuje gresku "inresolved external _CDXDBF"!
Memo polja za sada ne koristim pa nema potrebe za nekom preradom. Sve je
inace vise nego standardno, pa sam poceo da sumnjam da li uopste imam
sve ispravne fajlove za 5.3. (slican problem sam imao kada sam FieWin sa
Sezama skinuo neispravnog, a linker je nebuloze prijavljivao kao problem)
Da li bi mozda hteo da dobacis neki tvoj LNK gde koristis 5.3 pa da vidim jer
jednostavno nema razlike LNK za 5.2 ili 5.3 (u sustini naravno, jer imam
u BEGIN..END sekciji, gomilu MOD nardebi za "obKverlejisanje" Flipper
modula.
Veoma me cudi sto natrcavam na takve probleme a sa druge strane, jako lepe
dodatke ima 5.3 i omogucio bi mi laksi rad (da ne govorim o grafickim
primitivama koje mogu lepo ukomponovati po mojim potrebama i napraviti
sopstvene rutine grafike)
Clanak ti je u PC dobar, ali sam ocekivao bas vise o CDX sistemu.
Pozdrav Boris
clipper.141cnenad,
=>> Da li postoji regularan način da se poruke tipa: Ivalid
=>> date, Abort i slične prevedu i kao takve ispisuju umesto u
=> Izmeniš ERRORSYS.PRG ili napišeš svoju proceduru za obradu grešaka. I
=> jedno i drugo je jednostavno.
Valjda ste me razumeli šta sam hteo, ali da ponovim zarad sigurnosti još
jednom. Misli se na poruke koje se ispisuju u nultom redu kad je uključen
ScoreBoard, recimo u GET polju se unose pogrešan datum a program gore izbaci
INVALID DATE...
clipper.142mileusna,
>> ScoreBoard, recimo u GET polju se unose pogrešan datum a program
>> gore izbaci INVALID DATE...
Zar i to postoji? :) Ja još o dBase-a kucam SET STATUS OFF,
SET SCOREBOARD OFF na početku svakog programa. :))
clipper.143bulaja,
│Misli se na poruke koje se ispisuju u nultom redu kad je uključen
│ScoreBoard, recimo u GET polju se unose pogrešan datum a program gore
│izbaci INVALID DATE...
└───
To se menja u GetSys-u, dakle .\Clipper5\Source\Sys\GetSys.prg :).
clipper.144d.petrovic,
> je za interfejs zaduzena), kako da sprecim da mi na mrezi neko
> ne posalje neku poruku (pocev od poruke za kraj rada sistema),
> ne mogu je korektno
Možeš da je preuzmeš preko ISR-a. Nedavno je sele okačio ovde nešto sa
mum-a za tu namenu. Ja probao i radi, samo moraš da paziš da ga posle
SVUDA inače blokira makinu.
clipper.145cnenad,
=> Zar i to postoji? :) Ja još o dBase-a kucam SET STATUS OFF,
=> SET SCOREBOARD OFF na početku svakog programa. :))
Naravno da postoji i manje više kod pogrešno ukucanog datuma i nije
neki problem da program ništa ne ispiše ali kod memo polja i snimanja je
baš nezgodno da piše kod prekida Abort Edit Y/N pa sam zbog toga i pitao,
da se ovo izmeni.
clipper.146nbatocanin,
> Da li bi mozda hteo da dobacis neki tvoj LNK gde
> koristis 5.3 pa da vidim jer jednostavno nema razlike LNK
> za 5.2 ili 5.3 (u sustini naravno, jer imam u BEGIN..END
> sekciji, gomilu MOD nardebi za "obKverlejisanje" Flipper
> modula.
Na žalost, nemam ni jedan ozbiljan LNK za 5.3 (još radim na 5.2).
Nego, jesi li probao sa EXOSPACE-om? Naravno, probaj i da isključiš
dodatne libove. Gde se tačno zaglavljuje?
> Clanak ti je u PC dobar, ali sam ocekivao bas vise o CDX sistemu.
Pa, nisam hteo da ponavljam, dosta sam već pisao u okviru prikaza
SIx-a i 5.2, pa reko da ne davim, znaju ljudi. Šta te interesuje?
clipper.147nbatocanin,
> Valjda ste me razumeli šta sam hteo, ali da ponovim zarad
> sigurnosti još jednom. Misli se na poruke koje se ispisuju
> u nultom redu kad je uključen ScoreBoard, recimo u GET
> polju se unose pogrešan datum a program gore izbaci
> INVALID DATE...
Naravno. Imaš tamo naredbu DispOut ("Invalid Date"), pa menjaj u šta
hoćeš. Primera radi, meni kad korisnik upiše datum koji nije iz ove
godine program ispiše upozorenje "Verovatno pogrešan datum".
clipper.148cnenad,
=> To se menja u GetSys-u, dakle .\Clipper5\Source\Sys\GetSys.prg :).
Kuku lele, nije valjda da ću za svaku poruku morati da jurim određene
sors fajlove i da ih menjam... :((
clipper.149goranm,
Iz ccega se sastoji paket Clipper-a 5.3 ?
(koliko disketa, priruccnika, ...)
Gde se sve to mozze nabaviti i po kojoj ceni ?
clipper.150bulaja,
│Kuku lele, nije valjda da ću za svaku poruku morati da jurim određene
│sors fajlove i da ih menjam... :((
└───
Pa imaš samo GetSys.prg i ErrorSys.prg - u prvom se menjaju samo poruke
za invalid date i range, a u drugom izveštaji o run-time greškama.
Postoje još i neke sistemske poruke koje se mogu promeniti linkovanjeg
odgovarajućeg modula za nacionalnu podršku (msg*.obj u International
verziji Clipper-a, nema modula na srpskom:) i to je to :).
clipper.151rmarjan,
Sa EXOSPACE nisam jos probao, zavrsavam neki projekat pa nemam vremena
a i pravi protected mod programe a nisam siguran kako se Flipper ponasa
i ne znam CATOOLS kako radi kao i nanfor. Sve u svemu, neka popriceka.
Inace, veoma me interesuju BLOB fajlovi, malo mi je nejsano ono sa Root
delom BLOB zapisa. To je neki skup pointera na nesto? E to nesto je li
to poseban fajl ili u sklopu FPT, ako je u sklopu FPT, kako znam da to
nine standardni txt zapis. Jako sam bas za to zaintereovan. Imam potrebu
za smestanjem razlicitih informacija a sve to u vezi DBF.
Kad vec gnjavim, da budem dosledan :)
Za dan dva, treba da instalisem mrezu u firmi (8 racunara, 5 lasera i
3 matricna stampaca). Nema sanse da mi oni sa Olimpa dozvole da jednu masinu
proglasim kao dedicated server, pa moram na client-serve sistem. Da li da
se opredelim za Novell Lite ili Personal Netware? Aplikacije cu morati neke
preraditi da rade u mrezi a nreke sam (hvala Bogu) unapred radio za mrezu.
Naravno radi se o Clipper aplikacijama.
Da li se negde moze nabaviti neka literatura za Lite? Osim knjige
Novel Netware koju imam ali tamo je o njemu sturo. I da li Lite uopste
da koristim. Ako ne njega, STA drugo a da to bude kakva takva mreza i
da ipak ne angazujem jaku 486 za server samo? Stvarno sam u dilemi pa
mozda neko ima neki savet.
Dali Personal Netware mogu da instalisem bez traga Win95?
Pozdrav Boris
clipper.152zkrstic,
>> Za dan dva, treba da instalisem mrezu u firmi (8 racunara, 5 lasera i
>> 3 matricna stampaca). Nema sanse da mi oni sa Olimpa dozvole da jednu masinu
>> proglasim kao dedicated server, pa moram na client-serve sistem. Da li da
>> se opredelim za Novell Lite ili Personal Netware? Aplikacije cu morati neke
A da probaš da ih ubiješ ? ;>
Osam računara i bilo koja peer2peer mreža na ovom svetu pa to jednostavno
nije izvodljivo, praktično, ne teoretski.
Lec' d švorc bi vit ju!
Zkr :)
PS. Personal netware instaliraj ako nemaš baš nikakva pametnija posla. žak je i
navijanje za partizan manje naporno, dosadno i bezizlazno od toga. ;)
PPS. Malko preterah ono za navijanje... O;)
clipper.153dvesic,
>> proglasim kao dedicated server, pa moram na client-serve
>> sistem. Da li da se opredelim za Novell Lite ili Personal
>> Netware? Aplikacije cu morati neke
Preporuka: Lantastic 6.0
clipper.154rmarjan,
E lepo mi drugari savetujete :>, ZKRSTIC bi da ih pokokam (ko ce mi leba
crnog davati) a DVESIC Lantastic. A milion drugih drugara svaki ima svoju
varijantu... :<<<<<<
Ja nemam druge nego bacih dinar (nije djubre hteo da ostane u vazduhu) i
odlucih se za Personal Netware. Sutra idem u firmu da to instalisem pa
sve ce biti korak napred a dva nazad. Ne znam kako je kod vas, ali sto se
tice znanja mojih iz Olimpijakosa, ono je na nivou Ivice i Marice. Nema
druge nego teraj kako umes. Vec su me danas pitali da li je mreza gotova
i mogu li sutra da dobiju rezultate zbirne obrade sa svih stanica !!! ;>
Neki dan mi dolazi rukovodilac kreditnog i pita (8.30 ujutro) moze li se
za njih uraditi aplikacija za pracenje kredita , obrada, kamate, dinamika...
Naravno, rekoh ne sanjajuci nista opasno, a sledilo je pitanje:
A MOZE LI TO DO 14.30 DA BUDE GOTOVO PA DA MOJI LJUDI POCNU OBRADU!!!!
HSta mislite onda kako razmisljaju o mrezi? Katastrofa. I sa takvim bajnim
rukovodecim menadzmentom MI zelimo u .... valda... pa stcemo u PM pre
svega. Jedan covek na nekom savetovanju rece (za YU scenu):
Mi ne ksakamo za svetom u informatici, mi TRCIMO unazad!
Dosta zalbe i prituzbe, treba raditi koliko su zasluzili, toliko ce i
dobiti (ionako posle podne zurim kod jednog klijenta - nabacio mi je jos
jedan posao)
Hvala obojici na ramenu za plakanje ali dalje ipak moram sam..
Pozdrav Boris
clipper.155zkrstic,
>> druge nego teraj kako umes. Vec su me danas pitali da li je mreza gotova
>> i mogu li sutra da dobiju rezultate zbirne obrade sa svih stanica !!! ;>
>>
>> Neki dan mi dolazi rukovodilac kreditnog i pita (8.30 ujutro) moze li se
>> za njih uraditi aplikacija za pracenje kredita , obrada, kamate, dinamika...
Wow! Koitus bez penetracije! Abažavam apsolutno &
definitivistički ;)
Probaj da im objasniš da peer 2 peer će teško da
preživi osam stanica. To ti je jedini izlaz.
Zkr
clipper.156peacock,
#### Iz ccega se sastoji paket Clipper-a 5.3 ?
8 x 1.44
#### Gde se sve to mozze nabaviti i po kojoj ceni ?
Kod mene :) Nastavljamo u mailu.
clipper.157dr.grba,
>> Naravno, rekoh ne sanjajuci nista opasno, a sledilo je pitanje:
>> A MOZE LI TO DO 14.30 DA BUDE GOTOVO PA DA MOJI LJUDI POCNU OBRADU!!!!
Za ovo si sam kriv. Svaki razvoj informacionog sistema počinje tako što
pridobijaš direktora na svoju stranu. Drugog puta NEMA.
clipper.158d.petrovic,
Predložio bih ti ja novel 2.20, ali se bojim da će to raditi pa ćeš i
ostati na njemu. Ovako, neka se malo pate, pa onda jednom "za probu" digni
na jednoj novel ;))
clipper.159rmarjan,
Ne znam momci (hvala vam u svakom slucaju na razumevanju) gde vi svi radite,
izgleda da postizete da barem pristojno zaokruzenje dobijete, ili su ljudi
prijemciviji za razumevanje vaseg posla. Vama je kao luk i voda da TO i TO
tako ne moze (znam i ja, zato i kukam) i kvit. Ali u real life, situacija je
cesto drugacija.
Ono sto rece jedan od vas, pusti nek se malo pate, to i nameravam. Samo,
zao mi je sto tu hordu iz Olimpijakosa, ne mogu odvesti negde da vide STA
je prava mreza gde i moji programi rade, ne bi ionako nista razumeli vec
bi verovatno rekli da TAMO dakle mogu a u firmi brljekam...
Instalisao sam danas Personal Netware, radice im sve to na nivou maltene
sigurnosnog bekapa i zdravo.
BTW zasto mi jedna od kartica (Novel/Eagle NE2000) uporno pokazuje da se
nalazi na INT 3 a na adresi 300, bez memorijske adrese, a kada je tako
dignem onda se ne prepoznaje da je u mrezi. INace ostale su na int 3, adresa
300. Zna li tkogod, pa da puscam moje "clippercice" da se rastrce preko
zicica.
Pozdrav Boris
clipper.160rmarjan,
Mala ispravka, malerozna kartica se odazivlje sa adrese 340, int 3 ali
sa tim setovanjem nezna zase...
clipper.161nbatocanin,
> siguran kako se Flipper ponasa i ne znam CATOOLS kako radi
> kao i nanfor.
Da nije u ovome štos? Možda ne podržavaju verziju 5.3?
> Inace, veoma me interesuju BLOB fajlovi,
Pročitaj malo NG, imaš dosta primera.
> nejsano ono sa Root delom BLOB zapisa. To je neki skup
> pointera na nesto?
Imaš poseban drajver DBFBLOB koji ti omogućava da radiš sa memo
poljima bez osnovne DBF datoteke. Znači, sve radiš preko "niskih"
funkcija, uključujući i čuvanje pointera na "memo" polja.
> Da li da se opredelim za Novell Lite ili Personal Netware?
Uh, ja o PNW nemam baš mnogo lepih reči, ali nisam mnogo video od NL,
pa ne mogu da poredim. U odnosu na Novell 3.xx, nebo i zemlja.
clipper.162dvesic,
>> BTW zasto mi jedna od kartica (Novel/Eagle NE2000) uporno
>> pokazuje da se nalazi na INT 3 a na adresi 300, bez memorijske
>> adrese, a kada je tako
Moguće je da se port i/ili interapt određen na katici kolje sa nekim
parčetom hardvera.
clipper.163jpinta,
Nabavio sam CLIPPER 5.3 i poceo da ga testiram. Prvi problem na koji sam
naisao je da nemogu da aktiviram DEBUGGER. U paketu postoju CLDR a na help
daje sintaksu da se poziva sa CLD. Kompilacija je radjena sa parametrom /B
i linkovano sa njegovim BLINKER-om ili sa EXOSPACE-om. Program startuje i
radi ali nemoze da se aktivira debugger.
Instalacija je radjena sa originalnih disketa u punoj WIN verziji.
Masina je 486/8MB. Windows je WFWG 3.11.
Molim za pomoc gde gresim.
clipper.164banex,
Dakle, "REGISTROVAO " sam FiveWin. I sad je stvarno milina raditi. Inace
bilo je nekih nejasnoca i vezi registracije exe programa, pa u vezi sa tim
da kazem da je postupak isti kao i registracija Lib-a.Programi rade bez
problema. Zoran 403-430.
clipper.165rmarjan,
Dodatne biblioteke su u redu, probao BEZ podrske DBF i sve radi normalno.
Dakle ipak se radi o problemu u radu sa indeksima. Ne upotrebljavati
Blinker koji ide uz CL53!! Sasecen je poprilicno u odnosu na "pravi".
Jedna od vise stvari koje ne radi je na primer SET BLINKER .. SERIAL xxxxxxx
ovu komandu uopste ne poznaje.
Boris
clipper.166rmarjan,
Reseno, podesio dzampere za 5 i 340 i sve je OK na svim karticama.
Inace, da li u Windowsu za grupe, mogu vise korisnika startovati ISTI
program koji radi sa bazama i da ih dakle vise korisnika ODJEDNOM obradjuje
a ne samo cita. Ako to moze, sta ce mi PNW ili NL kad vec nemam Novel 3.xx
Boris
clipper.167vcalic,
>> Inace, da li u Windowsu za grupe, mogu vise korisnika startovati ISTI
>> program koji radi sa bazama i da ih dakle vise korisnika ODJEDNOM
>> obradjuje a ne samo cita.
Može, i radi primetno brže od ostalih, zbog famoznog vcache-a.
Samo treba se pridržavati par stvari:
- Obavezno korišćenje NDIS3 drajvera. Mnogi fantomski problemi su
nestali kad se koriste *ISKLJUžIVO* 32-bitni drajveri. Znači ništa Real
mode/Enhanced mode, već strogo Enhanced mode. (Pored imena drajvera treba da
piše NDIS3, a ne NDIS2/NDIS3). Ovo isključuje mogućnost korišćenja DOS
varijante mreže, ali od nje ionako nema mnogo vajde. Mada opet, 286 mašine
mogu prilično lepo raditi kao klijenti, ali to je za neku drugu priču.
- Najbolje da se pri instalaciji mreže postave svi direktorijumi koji
treba da budu deljeni i da se korisnicima ne dozvoli da mnogo čačkaju. To je
važno zbog sledećeg:
- Dešava se da browsing zakaže kad najmanje treba, mada se
mašine vide međusobno. Zašto se to dešava MS krije k'o blesav i za takve
slučajeve preporučuje startovanje DOS prozora i primenu komande NET u njemu.
Pomalo je tragično da se to dešava i u mešovitim Win95/Win 3.11 mrežama. Ipak,
NET bez greške rešava ovakve probleme, pa je potrebno proučiti sintaksu ove
komande.
- Ukoliko je već jedan računar bitniji od ostalih, kod njega treba
podesiti deljenje resursa na uštrb smanjivanja brzine rada aplikacija.
Naravno, poželjno da mašina bude što jača. Tu strogo zabraniti instaliranje
svega i svačega, a sjajno dodatno rešenje je objavljeno u PC-u #7 u Odabranim
bajtovima. Caka je u PROGMAN.INI u sekciji [Restrictions]. Može se zabraniti
korisniku bukvalno svaka izmena uključujući i pojavu File menija.
- Ukoliko nešto ugrozi sam Windows na centralnoj mašini, pre
uobičajenog srpskog pominjanja majke Bila Gejtsa obavestiti korisnike da što
pre završe sa radom. Win 3.11 server je u ring0 pa ga je mnogo teže
oboriti, čak i ako je Win doživeo BSOD ili onaj grozomorni plavi ekran. Dakle,
upozoriti korisnike da se malo strpe pa onda resetovati mašinu.
Kad se sve sabere i oduzme, WfWg 3.11 je najbolje DOS rešenje za p2p
mrežu, ali zahteva jake mašine, vrlo pažljivo planiranje, prilične restrikcije
u vezi budženja svega i svačega po Win-u, i dobro poznavanje samog Windows-a.
Ako tu uleti i Netware, stvari se malo menjaju, jer osnovnu snagu ove
verzije predstavljaju 32-bitni NDIS3 drajveri i 32-bfa/vcache, a ono prvo je
neupotrebljivo u saradnji sa Netware-om, dok ovo drugo radi polovično. Win95
rešava i prvu varijantu, ali ovde ne pričamo o njemu.
Vlada
clipper.168biki,
Imam drugara koji je odusevljen FiveWin-om i iz zezanja je razvio jednu
aplikaciju u njemu za koju sad ima i kupca. Nadao se da ce uspeti da
registruje FW, cak je zvao i u Madjarsku, ali nesto nije islo.
Takodje mu nije jasno sta se dogadja kad promeni masinu jer, kako mi je
objasnio, za svaku masinu se generise drugaciji broj za registarciju.
Sad ga interesuje da li postoji ikakvo resenje, jer mu je stvar jako hitna
i spreman je da ponesto plati. Da li postoji nekakvo resenje ?
clipper.169banex,
Ha, resenje se uvek nadje.:) Ovo je sasvim korektno i funckionise besprekorno.
Nek mi se javi na tel. 403-430. Zoran.
clipper.170rmarjan,
Rado bih presao na Clipper 5.3 ali jos uvek ne mogu da resim problem rada
sa CDX drajverom. Da li je neko radio njime i da li mi moze pomoci da resim
kako da ulinkujem CDX darjvere normalno.
nBatocanin mi je objasnio za CDX... i _CDX... library ali kojim se one
redosledom linkuju u skriptu, i dalje ne znam. Postoji nekoliko mogucih
kombinacija ali svaka od njih mi napravi problem.
Da li _CDX ide pre CDX, da li _CDX uopste moze u ovrelej deo, da li _CDX
posle CDX, dali _CDX uopste ulinkovati moram itd..
Neobicno mi je da odjednom imam tol°─ űiko pitanja za nesto sto bi trebalo
da fercera bez problema, pogotovo nakon Clipper 5.2 :<
Nije valda da niko nije potpuno presao na 5.3, a ako nije, sta je razlog?
Boris
clipper.171nbatocanin,
> problem na koji sam naisao je da nemogu da aktiviram
> DEBUGGER.
Za WIn dibager treba staviti SET PIPEHANDLE=0 i u SYSTEM.INI
DEVICE=CAW*.*, gde tačan naziv ovog drajvera vidite u direktorijumu
SYSTEM.
Kod DOS-a postoje dve varijante dibagera: za protected i real mod.
Ako se radi u protected modu, ne postoji eksterni dibager, nego se
ulinkuje CLD.LIB, ALI KAO _FILE_, a ne kao _LIB_. Znači,
exospace fi prog, cld.lib
Kasnije se u programu samo pritisne Alt-D i to je to. Ovo rešenje
radi i u real modu. Ako želite isključivo rad u real modu, ulinkuje
se isto ovako CLDR.LIB, posle čega se može startovati sa:
cldr prog.exe
clipper.172bulaja,
│Nije valda da niko nije potpuno presao na 5.3, a ako nije, sta je razlog?
└───
Ja nisam zato što ne radi SIx v2.0, a još uvek nemam SIx v3.0 :(.
Imam svuda gomile poziva SIx-ovih sx_ i m6_ funkcija i koristim neke
stvari koje on ima a DBFCDX u 5.3 nema (recimo kriptovanje), tako da
mi je lakše da čekam da stigne SIx 3 nego da sve konvertujem :).
clipper.173cnenad,
Da li neko zna nešto o sledećoj grešci:
dbusearea (0) Urecoverable error 669: Eval stack fault
Pojavljuje se kod otvaranja baze.
Inače, ako pre ulaska u neki deo programa koji otvara neku bazu sa F1 pozovem
HELP, dotični prikaže, onda nema pucanja. Takođe pucanja nema ni kad program
pozivam kroz dibager.
Clipper 5.2e + Six 2.03.01
clipper.174nbatocanin,
> i _CDX... library ali kojim se one redosledom linkuju u
> skriptu, i dalje ne znam.
U uputstvu kaže da se linkuje sa
exospace fi prog lib dbfcdx, _dbfcdx
e sad: kako sa Blinkerom, ne znam tačno. Sad sam video u uputstvu za
Comix, on zahteva da se navede direktiva STACK 7168 pri linkovanju
kako bi dobro radio. Probaj i ovo!
> Nije valda da niko nije potpuno
> presao na 5.3, a ako nije, sta je razlog?
Uopšte nije čudo. Stvar je dosta nova kod nas, treba videti da li ima
problema, preraditi softver, itd.
clipper.175jpinta,
Zahvaljujem se na pomoći. Probao sam i stvar radi.
Ali imam i nezadovolavajuće rezultate. Naime ako radim u real modu
nemogu da startujem dibager sa većim programima zbog nedostatka memorije.
A ako radim u protektid modu tada mi neradi parametar /S pa nemam podeljeni
ekran. Sve u svemu nisam baš zadovoljan kako su to rašili. Pod WIN-om
nisam još probao jer me zeza sa prvodjenjem postojece aplikacije a test
od dva tri reda mi nije dovoljan za ocenu.
U svakom slučaju hvala na pomoći.
clipper.176banex,
Izvinjavam se svima koji su mi poslali poruke u Mail, a nisam im odgovorio, jer
sam "lenj na kucanjnu" :).Registrovani Fivewin.lib radi samo na onoj masini na
kojoj se izvrsi registracija. Znaci uzalud je da saljem svoj registrovani
FW.lib. I da ne bi prezvakavali ovu temu unedogled( a mislim da ima razloga i
za malo 'intime' po tom pitanju) zadnji put za ONE KOJI SU STVARNO
ZAINTERESOVANI : tel. je 403-430, slobodno pozovite najbolje 0d 9-11 ili 16-20h
Pozdrav svima. Zoran.
clipper.177rmarjan,
Imam dve dileme pa ako neko moze da savetuje, rad sam da poslusam:
1. Koji je predlog za resavanje problema kada mi radi aplikacija u GRAFICKOM
rezimu, da ipak preko mreze mogu da primim poruku. Naime, ona se na ekranu
sada ne vidi, ali ako je neka vazna (spustanje sistema na primer) ja je
jednostavno MORAM videti. Ima li neki nacin da preko nekog semafora ili
slicno, moj program ustanovi da je aktivna neka poruka meni upucena i
da vidim koja je i da je konvertujem i u grafickom modu ipak prikazem?
2. Kako resavate najelegantnije situaciju prikaza promena na drugom racunaru
ako rade istim programom (simultano unose podatke) da se izmena na racunaru
A odmah ili sa malom zadrskom vidi na racunaru B. Ja to resavam sa
povremenim osvezavanjem ekrana (odredjen broj sekundi) da racunar ne
trepce previse cesto ali nisam vec duze vremena sretan takvim resenjem
koje radi potpuno korektno ali mozda ne bih trebalo da otkrivam rupu
u saksiji ako neko ima bolje resenje.
Boris
clipper.178rmarjan,
Prema NG "Clipper 5.2 internal errors:
System has tried to expand the MEMVAR table, and is unable to do so due to
insufficient memory ...
Pozdrav Boris
clipper.179ndragan,
/ ScoreBoard, recimo u GET polju se unose pogrešan datum a program gore
/ izbaci INVALID DATE...
Za foksovce, "On ReadError Do trt_mrt".
clipper.180ndragan,
/ za njih uraditi aplikacija za pracenje kredita , obrada, kamate,
/ dinamika...
Turi im običnu analitiku, samo promeni konta i naslove.
Neće primetiti :)
clipper.181d.petrovic,
> 1. Koji je predlog za resavanje problema kada mi radi
> aplikacija u GRAFICKOM rezimu, da ipak preko mreze mogu da
> primim poruku. Naime, ona se na ekranu
Pogledaj (dokle da povaljam ;) ) ovu temu unazad par meseci. Poruku je
poslao aseovic i uz nju nešto kao nw_cast.arc.
clipper.182kanki,
Ova procedura kad se pozove vrati mi karakter-broj sloga, a treba mi
numerik, i taj karakter ne mogu VAL(" ") da promijenim u numerik...
Đe griješim...
--------------------------------------------------------
#include "inkey.ch"
PROCEDURE n()
LOCAL a, polje := 0
LOCAL b := TBrowseDB(5,50,20,75)
USE dbf NEW
FOR i = 1 TO FCOUNT()
b:ADDColumn (TBColumnNew(Field(i), Fieldblock(Field(i))))
NEXT
b:colorSpec := "N/W,N/BG,B/W,B/BG,B/W,B/BG,R/W,B/R"
b:headSep := CHR(205) + CHR(209) + CHR(205)
b:colSep := CHR(32) + CHR(179) + CHR(32)
WHILE .T.
a := 0
CLEAR TYPEAHEAD
WHILE !b:Stabilize() .AND. (a := INKEY() == 0); END
If b:stable; a := INKEY(0); END
DO CASE
CASE a == K_ESC; exit
CASE a == K_UP; b:up()
CASE a == K_DOWN; b:down()
CASE a == K_LEFT; b:left()
CASE a == K_RIGHT; b:right()
CASE a == K_RETURN; ? fieldget(1) ;RETURN
ENDCASE
END
RETURN
*****************************************
clipper.183cnenad,
=> System has tried to expand the MEMVAR table, and is unable to do so due to
=> insufficient memory ...
Očigledno nisi dobro pročitao poruku koju program javlja kao grešku i jeste
da je isti broj (što sam i ja video iz IE NG-a) ali izgleda nije ista
greška.
Ovde je u pitanju dbusearrea( 0 ) Unrec. error 669 eval stack fault
BTW, jedino što se u problematičnom programu može podvesti pod MEMVAR su
deklaracije FIELD tipa i to u samo valjda jednoj proceduri, koliko se
sećam.
clipper.184cnenad,
=> CASE a == K_RETURN; ? fieldget(1) ;RETURN
=> RETURN
Promeniš prvo PROC u FUNC.
Pa onda recimo:
LOCAL lxV := ''
...
lxV := Obrada()
RETURN( lxV )
Ovako kako si sada napisao 'izjava' RETURN ne vraća nikakavu vrednost
(u stvari vrati ti NIL) u pretohdnu funkciju ili proceduru.
clipper.185d.petrovic,
Nebih ovo nazvao lepo napisanim:
Procedure ne treba da vraća ništa. Funkcija treba da vraća nešto. Zatim
lepo dodaj local nRet := 0 i kod K_RETURN nRet := ... pa na kraju vrati
Return(nRet)
clipper.186rmarjan,
U pravu si, ne slaze se opis greske i ono sto pise u NG.
Inace, slican problem sam nekad imao kada mi se desilo dok sam radio sa
NTX indeksima, da sam u jednom momentu, "updatovao" bazu koja nije imala
SVE potrebne indekse aktivirane a onda odmah zatim pokusao da radim i
referisem se na indeks koji jos nije imao podatke o novim slogovima. To
kao mogucnost problema uzmi u obzir obavzeno i proveri..
Primetio sam da se cesto kod rada sa bazama i greskama koje tada nastanu,
error sistem zbuni ponekad i javlja neku nebuloznu poruku koja stvarno
sa problemom nema veze. I tu treba biti oprezan da se ne zaletis, kao sto
se sigurno svima nama vec desavalo, pa uporno BAS tu gresku zelimo naci
a ustvari je problem potpuno druge prirode.
Meni tvoj problem mirise (iliti obratno) na nesto sa redosledmo indeksa.
Boris
clipper.187rmarjan,
Da li je neko slucajno naisao na FiveWin, vezija 2.0 ?
Boris
clipper.188bulaja,
│dbusearea (0) Urecoverable error 669: Eval stack fault
└───
Koristiš svoj prepravljeni ErrorSys? :)
Ako je tako, izbaci ga (privremeno) i probaj ponovo.
clipper.189mileusna,
>> povremenim osvezavanjem ekrana (odredjen broj sekundi) da racunar
>> ne trepce previse cesto ali nisam vec duze vremena sretan takvim
>> resenjem koje radi potpuno korektno ali mozda ne bih trebalo da
>> otkrivam rupu u saksiji ako neko ima bolje resenje.
Ako je treptanje to što te nervira, pogledaj funkcije
DISPBEGIN() i DISPEND(). Radi se o 'baferisanju' izlaza na
ekran. Primer:
DISPBEGIN() // ovde počinje punjenje 'bafera'
CLS // ┐
@ 1,1 SAY "..." // ┼ ovde se ništa ne ispisuje,
@ 0,0 TO 4,20 // ┼ niti je ekran obrisan
@ 5,7,15,34 BOX "ŮŮŮŮŮŮŮŮ" // ┘
DISPEND() // prikazuje se gotova slika
clipper.190kcurcic,
Problem: ne znam ko je ovde lud: ja ili Clipper. Obratite pažnju na
naizgled normalno parče programa:
proc Main()
local cTmp:=Space(64)
local i,h
local aArr:={}, aArr2:={}
aArr:=Array(20)
for i:=1 to 20
aArr[i]:=padr("Primer broj "+Str(i),64)
next
h:=fcreate("test.dat")
for i:=1 to 20
? aArr[i]
fwrite (h,aArr[i],64)
next
fclose (h)
h:=fopen("test.dat")
for i:=1 to 20
fread (h,@cTmp,64)
? cTmp
aArr[i] := cTmp
next
fclose (h)
for i:=1 to 20
? aArr[i]
next
return
Savršeno normalno, zar ne ? Inicijalizuje se niz od 20 stringova,
upiše u datoteku, pročita (prilikom čitanja cTmp ima ispravnu vrednost) a
posle svi elementi niza aArr imaju istu vrednost, i to onu koja je
poslednja pročitana iz fajla. Pa, ne baš normalno ako mene pitate. Verzija
je 5.2 a stari Clipper 5.01 je ovo normalno izvršavao, pa ako neko zna koji
mi je patch primenjivati... ;>> Ili možda Clipper 5.3 rešava ovaj
neprijatni feature ? ;>
clipper.191cnenad,
=> Koristiš svoj prepravljeni ErrorSys? :)
=> Ako je tako, izbaci ga (privremeno) i probaj ponovo.
Ne ali mislim da znam u čemu je problem što za razvoj i nije tako bitno.
Ubacio sam onu zamenu za F6 dibagera (za CDX/NSX, SCOPE i slično) koja
ponekad zna da puca, i to verziju koja stiže uz Successware RDD 2.0.
Starija verzija ne može da se ulinkuje jer koristi pozive funkcija koje su
u Six-u 2.0 izbačene.
clipper.192dvesic,
> Pa, ne baš normalno ako mene pitate. Verzija je 5.2 a stari Clipper 5.01
> je ovo normalno izvršavao, pa ako neko zna koji mi je patch primenjivati...
> ;>> Ili možda Clipper 5.3 rešava ovaj neprijatni feature ? ;>
Ovaj program sasvim korektno radi. Clipper 5.2e i Blinker 3.10
clipper.193kanki,
Snašao sam se sa PROCEDURE - FUNCTION ulogama (hvala!), ali imam
problem koji se nadovezuje na njih. Kad pozovem tbrowse i na enter
izaberem neki slog, e sad hoću da mi je u jednoj bazi samo numericka a u
drugoj karakter, jer sa istim tbrowsom pozivam nekoliko različitih DBFova
a u svakom slučaju on mi vrati sve kako treba ali TYPE("tbrowse") daje
' U ' i to me zajebava...
primer:
a:tbrowsedb(1,1,5,5)
.....
? a, type("a") izbaci 5 U
ili artikal U
Druga stvar koju bih htio da uradim jeste da u nekoliko GETova,
koliko mi treba, i na GET 3 pozovem tbrowse i određenu bazu i normalno
sa enter izaberem što mi treba.Problem je što maska ekrana je sastavljena
iz slogova jedne baze(polje1-5) a elementi polja 3 su iz druge baze....
primjer...
SAY polje1 GET 1
SAY polje2 GET 2
SAY polje3 GET 3
SAY polje4 GET 4
SAY polje5 GET 5
READ
ps. Sorry ako davim, ali početnik sam, pa malo jače zagrizao i lomim
sekutiće...
clipper.194cnenad,
=> a u svakom slučaju on mi vrati sve kako treba ali TYPE("tbrowse") daje
=> ' U ' i to me zajebava...
Ne ispituj šta je loB:Tbrowse nego ispituj ono što ti on vraća kao PODATAK tj.
da li je taj podatak numerik, karakter ili...
npr.
CASE lnT == K_RETURN
RETURN( ARTIKLI -> SIFRA )
...
if( valtype( Tabelarni_pregled ) == 'N', ... , ... )
=> Druga stvar koju bih htio da uradim jeste da u nekoliko GETova,
=> koliko mi treba, i na GET 3 pozovem tbrowse i određenu bazu i normalno
STATIC sx2 := '', ;
sx3 := '', ;
...
=> SAY polje2 GET sx2 VALID Izaberi_podatak( @sx2, 0 )
=> SAY polje3 GET sx3 VALID Izaberi_podatak( @sx3, 1 )
FUNC Izaberi_podatak( nA )
LOCAL llV := .F.
IF nA == 0
USE PRVA_DATOTEKA ...
ELSEIF nA == 1
USE DRUGA_DATOTEKA ...
ENDIF
//Tbrowse() ...
CASE lnT == K_RETURN
if( nA == 0, sx2 := ARTIKLI -> POLJE_1, sx2 := SIFRE -> 1 )
llV := .T.
...
ENDCASE
RETURN( llV )
Preporučujem ti da u Norton Guide-u od Clipper-a pročitaš deo koji se
bavi 'IZJAVAMA' PROCEDURE, i FUNCTIONS.
clipper.195bulaja,
│ Problem: ne znam ko je ovde lud: ja ili Clipper.
└───
Vrlo moguće Clipper :). Neka od prvih 5.2 verzija (mislim da je
oktplnjeno već u 5.2a) je imala bug u FRead koji je dovodio otprilike
do ovakvih problema. Ako imaš osnovnu (nekrpljenu) verziju 5.2 probaj
prvo da uradiš update (r:\clipper\52eusx.* ili 52eix, zavisno da li
imaš US ili Int'l verziju).
clipper.196cnenad,
=>=> SAY polje3 GET sx3 VALID Izaberi_podatak( @sx3, 1 )
=> !!!!!!!
=> FUNC Izaberi_podatak( nA )
!!!
Ovde ima jedna mala greška, ispustih kao 'prijemni' argument funkciji i
vrednost unesenu u GET tako da bi u toj varijanti nA bio ono što je ubačeno u
GET polje. Moje izvinjenje, ispravno bi bilo:
FUNC Izaberi_podatak( xA, nA )
clipper.197mbiresev,
>> Problem: ne znam ko je ovde lud: ja ili Clipper. Obratite pažnju na
Ako u međuvremenu nije rešeno, postavljam i ja isto pitanje.
Inače, radiće korektno ako se stavi npr. aArrŠiĆ := cTmp + ""
clipper.198nbatocanin,
> for i:=1 to 20
> fread (h,@cTmp,64)
> ? cTmp
> aArr[i] := cTmp
> next
> fclose (h)
Bilo je reči ranije. FRead je f-ja niskog nivoa koja samo upisuje
pročitane vrednosti u zadati bafer. Naredba := dodeljuje elementu
niza _pokazivač_ na taj bafer. Znači, na kraju ciklusa svi elementi
niza "pokazuju" na jednu memorijsku lokaciju, koja ima poslednju
pročitanu vrednost. Problem možeš rešiti na više načina. Na primer,
inicijalizuješ bafer pre svakog čitanja.
clipper.199rmarjan,
Nisam mislio na smetnje u gledanju treptanja, to je naravno moguce resiti
na vise nacina pa i na ovaj koji predlazes.
Mislio sam na situaciju da kada racunar A izmeni podatak, a racunar B treba
da VIDI izmenu. (Racunar A treba da uradi DBCOMMIT() ili/i SKIP(0)) E sad
na racunaru B ( a i na racunaru A u obratnom gledanju ako oba rade sa istom
bazom istovremeno), treba da se ugleda da je neko tu istu bazu nesto izmenio.
Za sada povremeno radim na racunaru B (ili A ako gldeam sa druge strane)
oBrowse:RefreshAll() i to je taj interval o kome pricam. Ima li neko
elegantnije resenje ili da jednostavno podesavam interval kada ce se na
racunarima u petlji cekanja na taster, izvrsavati osvezavanje ekrana da se
vidi promena koju je neki drugi korisnik uradio. Ako naime osvezim ekran tek
nakon aktiviranja neke tipke, to mi nije resenje, jer ako korisnik B duze
vremena stoji neaktivan, zelim ipak da se povremeno vidi da neko drugi ipak
radi i menja, dodaje ili brise podatke.
Boris
clipper.200kcurcic,
> Ovaj program sasvim korektno radi. Clipper 5.2e i Blinker 3.10
E, da bi korektno proradio na 5.20 + bilo koji linker mora da se doda
još jedna linija:
for i:=1 to 20
fread (h,@cTmp,64)
? cTmp
aArr[i] := cTmp
cTmp:=Space(64) <<<<<<<<<<<<<<
next
Di' su pečevi ? :)
clipper.201kanki,
>> Preporučujem ti da u Norton Guide-u od Clipper-a pročitaš deo
>> koji se bavi 'IZJAVAMA' PROCEDURE, i FUNCTIONS.
Hvala, sad ću malo da oladim dok ne skopčam foru :). A što se tiče
NG :( nisam u stanju da ga 'čitam' jer engleski mi je jedan od dva
isita koji su mi ostali :( a i njega polažem na šverc...
clipper.202kanki,
>> Vrlo moguće Clipper :). Neka od prvih 5.2 verzija (mislim da
>> je oktplnjeno već u 5.2a) je imala bug u FRead koji je dovodio
Sredio sam ovo...
clipper.203d.petrovic,
> vidi promena koju je neki drugi korisnik uradio. Ako naime
> osvezim ekran tek nakon aktiviranja neke tipke, to mi nije
> resenje, jer ako korisnik B duze vremena stoji neaktivan, zelim
> ipak da se povremeno vidi da neko drugi ipak radi i menja,
> dodaje ili brise podatke.
Upravo to bez čekanja na tipku. Može da bidu i semafori, ali mislim da je
nepotrebno.
clipper.204nbatocanin,
> vidi promena koju je neki drugi korisnik uradio. Ako naime
> osvezim ekran tek nakon aktiviranja neke tipke, to mi nije
> resenje, jer ako korisnik B duze vremena stoji neaktivan,
> zelim ipak da se povremeno vidi da neko drugi ipak radi i
> menja, dodaje ili brise podatke.
Ja imam skaniranje tastature rešeno u jednoj proceduri za sve TBrowse
preglede. Evo kako izgleda deo koji povremeno ispisuje ekran:
...
IF _MultiUser
REPEAT
IF (Ch := xKey(_ScrRate)) == 0
DispBegin()
TB:refreshAll():forceStable()
DispEnd()
END IF
UNTIL Ch <> 0
ELSE
Ch := xKey(0)
END IF
Znaci, kada je mrezna varijanta, na svakih _ScrRate se ispisuje ekran.
clipper.205bulaja,
│Bilo je reči ranije. FRead je f-ja niskog nivoa koja samo upisuje
│pročitane vrednosti u zadati bafer. Naredba := dodeljuje elementu
│niza _pokazivač_ na taj bafer.
└───
Jok :), tako radi za nizove ali ne i za stringove, čak i kad se oni prenose
po imenu (dakle preko pointera). Ono što se sa FRead() pročita ostane tipa
string (odnosno Char), a problem u ranoj 5.2 verziji je baš i bio u tome
što je FRead() menjao taj tip u pointer i pravio zbrku :).
clipper.206cnenad,
=> NG :( nisam u stanju da ga 'čitam' jer engleski mi je jedan od dva
=> isita koji su mi ostali :( a i njega polažem na šverc...
Ukratko, nije bitno znanje engleskog ali je u ovakvim poslovima poželjno.
clipper.207bulaja,
Krenuo sam na mail da nešto objasnim za ugradnju podrške za miša u
Clipper programima, a pošto sam se raspisao ostavljam poruku ovde
pošto pretpostavljam da će koristiti još nekome :). Inače ceo ovaj
postupak se odnosi pre svega na CA-Clipper 5.2 (i 5.01), pošto je u
5.3 ugrađena podrška za rad sa mišem.
Well, da krenemo :). Ne koristim FUNCky podšku za miša pošto nekad ume
prilično brlja (naročito u GET-ovima), već funkcije iz NFLib (koje se
uglavnom oslanjaju na nekoliko Int funkcija mouse drajvera, dakle nije
problem ni skrpiti u ASM-u ili preko FT_Int86() sopstvene funkcije).
Da bi inicijalizovale funkcije za rad sa mišem, treba staviti negde na
početak programa sledeće:
Mouse(.F.) // ovo ukoliko se koristi FUNCky,
// da se isključi njegov miš
FT_MINIT() // inicijalizacija iz NFLib-a
FT_MSetCoord(0,MaxCol()) // postavljanje default koordinata,
// nije obavezno
Funkcija FT_MShowCrs() uključuje prikaz mouse kurzora (kvadratić čija
se boja menja zavisno od atributa karaktera na kome je - za grafički
pointer kao npr. u NU8 je potrebno malo više petljavine tako da to ni
ja nisam ugradio pošto je verovatno već rešeno u nekoj biblioteci:),
a FT_MHideCrs() ga isključuje. Pošto može doći do brljotina na ekranu
ukoliko se miš pomera dok se nešto ispisuje na ekran, potrebno je pre
svakog ispisa isključiti kurzor i zatim ga ponovo uključiti. Iako ovo
deluje kao mnogo posla, nije tako :) pošto je dovoljno podršku mišu
ubacuti u custom Inkey() reader, gde ćeš lako staviti da se kurzor
uključuje na početku Inkey() reader-a, a isključuje na kraju.
Dakle custom Inkey() reader je najzgodnije mesto za ubacivanje rada sa
mišem, pošto onda isti reader možeš pozivati iz svih sistema koji su
zaduženi za user interface - meniji (ne možeš koristiti Clipper-ov već
neki koji omogućava promenu inkey readera, dakle (Bu)Menu:)), TBrowse
(samo u glavnoj petlji čitaš tvoj Inkey() umesto Clipper-ovog), GET (u
GetSys se Inkey() poziva samo na jednom mestu, nađeš gde i zameniš:).
Podršku za miša u inkey readeru možeš napraviti na dva načina - jedan
je da mu prenosiš i niz događaja (code block koji se razvija ako se
klikne mišem na određenim koordinatama) koje treba obrađivati kada se
klikne mišem, a drugi je da reader odmah vrati kod pritisnutog tastera
miša (definiši recimo K_MOUSE_LEFT i K_MOUSE_RIGHT sa vrednostima koje
se ne poklapaju sa kodovima tastera) i prepusti obradu sistemu koji ga
je pozvao. Prvi način je zgodan što može obrađivati i pomeraje miša
(recimo pozove event kad se miš samo dovede do nekog dela ekrana) i ja
sam ga koristio ranije, ali je drugi jednostavniji i uglavnom ga
koristim u poslednje vreme. Primer custom Inkey() reader-a sam slao
svojevremeno u PC.PROG:clipper, ne mogu da se setim da li je tamo imao
i podršku za miša, ako nije poslaću novi primer :).
Podrška mišu koja se ugrađuje u menije, browse i GET-ove je već nešto
složeniji posao. Ja sam ranije napravio pull-down sistem menija koji
radi na način sličan ovome što je ubačen u Clipper 5.3, nažalost
nikako nisam stigao da ga upristojim za javnost i pošaljem ovde :).
U TBrowse se, kao što sam već rekao :), lako ubacuje pozivanje drugog
inkey reader-a. Ja sam u browse uglavnom ubacivao samo scroll bar-ove,
dakle treba ispitati da li je mišem kliknuto na neko od njih i ako
jeste onda raditi odgovarajući dbSkip()/oTB:RefreshAll().
Ubacivanje miša u GET sistem je verovatno najveći izazov i za
korisnika najkorisnije (naročito kod velikih maski za unos), ali se na
kraju ispostavilo da to i nije neki problem. Doduše s obzirom na
priličnu otvorenost GetSys-a (nažalost zbog zaostatka iz starijih
verzija Clipper-a u njemu ima dosta zbudženih rešenja, tako da je
ponekad komplikovano snaći se:) nisam ni očekivao neke veće probleme
da se ovo uradi. Sledi uputstvo i za ubacivanje miša u GET.
U GetSys.prg Inkey() se poziva iz GetReader()-a, koji odmah zatim
prosledi obradu na GetApplyKey(), kome je uloga da zavisno od tastera
koji je prisitnut setuje odgovarajući oGet:ExitState, koji zatim
koristi Settle() za eventualnu korekciju fokusiranog GET-a u okviru
aktivnog GetList-a. U glavnu CASE petlju u GetApplyKey() treba dodati
ispitivanje da li je pritisnut taster miša, recimo:
CASE nKey == K_MOUSE_LEFT
oGet:exitState := GE_MOUSEHIT
pri čemu smo K_MOUSE_LEFT definisali kao konstantu koju vraća inkey
reader (u 5.3 je recimo K_MOUSE_LEFT 1002, a K_MOUSE_RIGHT 1004), a
GE_MOUSEHIT kao novu vrednost za GetExit konstante (standardne su
definisane u GetExit.ch).
Zatim u Settle() u glavnu CASE petlju treba dodati:
CASE (nExitState == GE_MOUSEHIT)
nPos := MouseHit (GetList, nPos)
pri čemu je MouseHit() naša funkcija koja ispituje da li je mišem
kliknuto na neko područje gde postoji GET objekat kativnog GetList-a i
ako jeste vraća poziciju tog GET objekta (po tom sistemu rade i ostale
akcije koje obrađuje GetSys-ov Settle()). MouseHit() je najzgodnije
definisati kao STATIC i dodati na kraj izmenjenog GetSys.prg.
/* ---------------------------------------- */
FUNC MouseHit (GetList, nPos)
// provera da li je misem kliknuto na deo ekrana
// gde se nalazi neki GET iz aktivne Get liste.
LOCAL oGet, i, j, nMax
LOCAL nMRow, nMCol, nSavePos
nSavePos := nPos
FT_MGetCoord (@nMRow, @nMCol)
FOR i:=1 TO Len(GetList)
oGet := GetList[i]
IF (oGet:Row == nMRow) .AND. ;
(oGet:Col <= nMCol)
oGet:SetFocus()
// moramo setovati fokus da bi saznali kolika je stvarna
// velicina get polja na ekranu. To se eventualno moglo
// saznati i iz Transform (oGet:VarGet(), oGet:Picture) ali
// Picture skup GET-a je širi nego onaj iz transform, pa je
// ovo prirodno rešenje. Pošto SetFocus() u 5.2 ne poziva
// automatski oGet:display() ovo šetanje fokusa se neće
// primetiti na ekranu
nMax := oGet:Col + Len(oGet:buffer) - 1
// sada je oGet:buffer onakav kako izgleda celo GET polje
// na ekranu, dakle znamo koje područje zauzima
IF (oGet:Col <= nMCol) .AND. (nMax >= nMCol)
IF (oGet:preBlock != NIL) .AND. ! Eval(oGet:preBlock, oGet)
// ispitivanje da li je zadovoljen WHEN blok, ako nije
// onda nema ulaska :). Btw trebalo bi na početak
// MouseHit ubaciti i proveru da li je zadovoljen
// PostBlock (VALID) aktivnog GET-a i ako nije ne
// ulaziti uopšte u dalju obradu
oGet:KillFocus()
EXIT
ENDIF
nPos := i
// nešto mi nije radilo sa direktnim dodeljivanjem vrednosti
// oGet:pos, pa je napravljena ova sledeća budževina :)
FOR j:=1 TO (nMCol - oGet:Col)
oGet:Right()
NEXT
EXIT
ENDIF
oGet:KillFocus()
ENDIF
NEXT
RETURN (nPos)
To je otprilike to :). Vrlo je moguće da sam zaboravio nešto, ako
primetite grešku javite, a ako vam nije pitajte :).
clipper.208zeljkan,
Uzeo sam SYNCRO DB za clipper , ali uz njega isam dobio nikakvo uputstvo,
niti neki .txt , .doc ... fajl , pa ako neko poseduje nesto slicno neka mi
posalje.
Hvala.
clipper.209dbarbul,
Sta je taj SYNCRO DB za clipper? Cuo sam za SYCERO DB, da nije mozda to?
Dule.
clipper.210nbatocanin,
Nešto drndam Clipper 5.3, pa da vam prenesem par iskustava:
Ono što je bio problem sa zaglavljivanjem je bag u indeksiranju u
real modu i izašao je patch koji je i okačen ovde (poruka 11.113).
Ovo rešava sve probleme oko indeksiranja. Obavezno skinite.
Druga stvar je očigledan bag Clipper-a 5.3: ako se uradi GOTO na slog
koji je van opsega (na primer, na slog 1000 u dat. od 500 slogova),
zatim REPLACE polja koje ulazi u indeks, sa visokom verovatnoćom
dobijate korumpirani indeks ;)
clipper.211d.petrovic,
> // onda nema ulaska :). Btw trebalo bi na početak
> // MouseHit ubaciti i proveru da li je zadovoljen
> // PostBlock (VALID) aktivnog GET-a i ako nije ne
> // ulaziti uopšte u dalju obradu
Alal vera na hrabrosti. Imaš ti svetlih trenutaka ;)), ali zbog valid-a sam
i odustao od toga svojevremeno. Ovako kako si uradio moguće je preskočiti
recimo drugi get koji nije smeo da prođe i otići na treći. S druge strane,
kod mene, ako uslov nije zadovoljen često ima komunikacije sa korisnikom
tako da ne mogu ni svi valid-i da se proveravaju redom. Preostaje samo žešća
intervencija na GETSYS-u, tako da mu dopuštaš da skakuće gdegod mu milo,
pamtiš dodatne informacije koji su sve uslovi zadovoljeni, a zatim na kraju
za izlaz samo uporediti. Kad bolje razmislim onaj cargo je ipak
upotrebljiv :))
clipper.212bgolusin,
Cesto mi se desava da usled pada NOVELL servera dodje do ostecenja DBF datoteke
(cudni znakovi uglavnom na kraju).Zna li neko zasto se to desava i ima li
leka ???
Drugo ,skoro sam cuo za RASQL paket s kojim se iz CLIPPER-a pristupa SQL
serveru preko SQLSPX-a.Da li je neko radio sa ovim i kako sve to radi ???
UNAPRED HVALA BANE
clipper.213bgolusin,
Ima li neko primere za LibLight i CACI posto sam nabavio CLIPPER 5.3
ali bez primera ??
clipper.214bulaja,
│Alal vera na hrabrosti. Imaš ti svetlih trenutaka ;)), ali zbog
│valid-a sam i odustao od toga svojevremeno. Ovako kako si uradio
│moguće je preskočiti recimo drugi get koji nije smeo da prođe i otići
│na treći.
└───
Ok, to se trivijalno rešava :) - samo u MouseHit() treba ubaciti u
glavnu petlju proveru oGet:postBlock za sve GET-ove posle tekućeg
(uključujući i njega).
│S druge strane, kod mene, ako uslov nije zadovoljen često ima
│komunikacije sa korisnikom tako da ne mogu ni svi valid-i da se
│proveravaju redom.
└───
Samo dodaj u svoje valide dodatni parametar koij samo vraća da li je
uslov zadovoljen bez dodatnih poruka (recimo lSamoPitam:) i stavi da
ga MouseHit() zove na taj način.
clipper.215d.petrovic,
> Ok, to se trivijalno rešava :) - samo u MouseHit() treba
> ubaciti u glavnu petlju proveru oGet:postBlock za sve GET-ove
> posle tekućeg (uključujući i njega).
Već učinjeno.
> Samo dodaj u svoje valide dodatni parametar koij samo vraća da
> li je uslov zadovoljen bez dodatnih poruka (recimo lSamoPitam:)
> i stavi da ga MouseHit() zove na taj način.
Ti si čovek mog života ;>
To je i bila prva ideja, ali sam se opsetio da je negde obavezan i redosled.
Dok je prepiska trajala proradio je crv tvrdoglavosti i rešio sam da ne
komplikujem:
Ako se nalaziš na (nPos == 1) i klikneš na (nPos := 5), a treći get zahteva
proveru zaustavi se na njemu.
Inače, crv je bio debeo, pa je bu_menu (jesi ponosan ? i nAlert ga
koristi :) ) i tbrowse dobio generalno rešenje: jes' da je puno parametara,
ali su logični:
==================================================
// Prozor u kome sme da se dešava nešto. Inače ova funkcija daje prozor
na ovim koordinatama, okvir je OKO njih
LocWin := Win_Save(6, 3, 22, 75)
// Ovo je jasno
Bro := TbrowseDb(11, 3, 20, 75)
// Ovde je skrol bar, Gornja strelica, kolona i donja strelica
Sb_Win := Sb_Att_Ve(13, 76, 20, Sb_AllRec, 1)
// Ovde su praktično prepisani brojevi sa prozora i Skorll bar-a
ZaMisa := šđđ BroMousSki(Bro, 6, 3, 22, 75, 76, 13, 20)ć
// Nije obavezno, ali je korisno
FT_MSetCoord(13, 40)
==================================================
nInkey() ima trenutno 4 parametra.
1. čik pogodi koji
2-3. opcioni za poziciju sata
4. opcioni kodni blok za pacova
Bilo je moguće dodati još štošta pa... zaludan berberin...
Screen saver se aktivira kada je pacov na 0, 79 (MaxCol() ne koristim iz
inata ;), a pacov je inicijalno postavljen na (0, 0), a vraća se u program
uvek kada ga pomeriš) Za zaludne popove ideja ima još ... ;))))
U petlji za tBrowse:
==================================================
If Bro:Stable .AND. Ch == 0
#ifdef NETWORK
While Ch == 0
Sb_Show_Ve(Sb_Win, Sb_AllRec, BroIndex)
Ch := nInkey(5,,, ZaMisa)
If Ch == 0
Go RecNo()
Fresh(Bro)
EndIf
EndDo
#else
Sb_Show_Ve(Sb_Win, Sb_AllRec, BroIndex)
Ch := nInkey(0,,, ZaMisa)
#endif
EndIf
==================================================
I Funkcija za šetnju :
Moglo je da se reši i tako što bi funkcija sama šetala po bro i uvek vraćala
nulu, ali je kanda oveko bolje. Brže se vraća di treba
==================================================
*************************************************
*
Function BroMousSki(Bro, WN_Top, WN_LeFt, WN_Bottom, WN_Right,;
SB_Col, SB_Top, Sb_Bottom)
*
*************************************************
Local nX := 0, nY := 0
Local mCh := FT_MGetCoord(čnX, čnY)
Do Case
Case Ft_MInRegion(WN_Top, WN_Left, WN_Bottom, WN_Right)
Do Case
Case Ft_MInRegion(IIF(Bro:HeadSep == NIL, Bro:nTop,;
Bro:nTop + 2), Bro:nLeft, Bro:nBottom, Bro:nRight)
// Ovo sam ostavio za neki lepši dan, kada se istreznim ;)
// Dok je u pendžeru za Browse treba da šeta za pacovom.
// To je ujedno jedini pametan razlog zašto je predat Bro
// kao parametar
Case nX < IIF(Bro:HeadSep == NIL, Bro:nTop, Bro:nTop + 2)
Return(K_UP)
Case nX > Bro:nBottom
Return(K_DOWN)
EndCase
Case nY == SB_Col
Do Case
Case nX == SB_Top
Do Case
Case FT_MDblClk()
Return(K_PGUP)
Case mCh == 1
Return(K_UP)
EndCase
Case nX == SB_Bottom
Do Case
Case FT_MDblClk()
Return(K_PGDN)
Case mCh == 1
Return(K_DOWN)
EndCase
EndCase
Case nX == (WN_Top - 1) .AND. nY == (WN_Left - 1) .AND. mCh == 1
Return(K_ESC)
EndCase
Return(0)
==================================================
U svemu ovome me malo nerviraju dve rabote:
1. FT_MDblClk() koju ranije nisam koristio ume žešće da uspori stvar, ako se
drugačije koristi
2. Nijedna od priloženih funkcija ne ume da prepozna dali je šofer za
pacova instaliran pa, ako funkciji Is_Mouse() eksplicitno ne naznačim
ima li ga program brljavi kad pacova nema, t.j. deo :
While Ch == 0
Sb_Show_Ve(Sb_Win, Sb_AllRec, BroIndex)
Ch := nInkey(5,,, ZaMisa)
If Ch == 0
Go RecNo()
Fresh(Bro)
EndIf
EndDo
blinka do ludila.
Izvint'e ako sam udavio :)
clipper.216kanki,
>> Ukratko, nije bitno znanje engleskog ali je u ovakvim
>> poslovima poželjno.
Ne bi trebalo, ali ja mu dođem 'Beginer', pa nešto i znači
clipper.217rmarjan,
Imam problem:
U jednom programu omogucio sam stampu nekih rezultata u LISTA.TXT na
primer.Nako stampe, odmah automatski pozivam neki eksterni program za
pregled sadrzaja LISTA.TXT na ekranu, a zatim se to moze poslati na
stampac. DO sada je sve OK.Problem nastaje kada se sadrzaj odstampa na
printer i nastavi rad u programu (ne izlazim dakle iz programa). Ako
ponovo setuje printer na LISTA.TXT (prethodno sam LISTA.TXT oslobodio sa
komandom SET PRINTER TO) i izvsrim ispis u tu listu, pa je pogledam na
ekranu vidim da je u PRVOM redu ukucan znak za EJECT strane (CTRL_L) i
pri ispisu na stampac, najpre se skoci za EJECT a onda stampa. Probao
sam da u bilo kom ispisu uopste ne koristim EJECT (pa ni na kraju ispisa
) ali je misteriozni CTRL_L) i dalje na prvoj liniji LISTA.TXT.
Ponavljam da se pri PRVOJ stampi i upotrebi LISTA.TXT kao smera stampe
NE POJAVI Ctrl_L na prvoj liniji ali na svakoj sledecoj upotrebi LISTA.TXT
kao izlaza stampe, pojavi se. Kako da eliminisem ovo?
Napominjem da regularni usmerim stampu na LISTA.TXT komandom SET PRINTER TO
LISTA.TXT a kada zavrsim stampu tog dokumenta, pre stampe na printer
komandom SET PRINTER TO, oslobodim LISTA.TXT. Nigde ne koristim EJECT.
Pozdrav Boris
clipper.218zkrstic,
>> ali je misteriozni CTRL_L) i dalje na prvoj liniji LISTA.TXT
Fantomsko CTRL_L se ubija tako što se pre početka
ispisa u fajlić učuka jedno SETPRC( 0, 0 )
Zkr
clipper.219evlad,
<> NE POJAVI Ctrl_L na prvoj liniji ali na svakoj sledecoj upotrebi
<> LISTA.TXT kao izlaza stampe, pojavi se. Kako da eliminisem ovo?
setprc(0,0) <--- postavljanje glave štampača na početak lista
zatim preusmeravaš ispis u fajl lista.txt sa:
set printer to lista.txt
obrazloženje: ;>
clipper automatski ubacuje eject, ako imaš ovo:
@ 10,10 say 'strana 1'
// ovde će biti ubačen eject od strane clippera
@ 1,1 say 'strana 2'
pošto pamti gde je stao sa štampom, moraš ga gornjom komandom
ubediti da počne radnju od početka ...
ovo bi moglo u odabrane bajtove, jer sam celo popodne lupao glavu
šta ga boli, a vidim nisam jedini ... :) mada ovo lepo piše u knjizi ...
clipper.220d.petrovic,
Na kraju prethodne štampe nisi regularno napisao ejsct. Kada si počeo
ponovo da štampaš od početka strane Clipper je to sam ubacio.
clipper.221dr.grba,
>> ovo bi moglo u odabrane bajtove, jer sam celo popodne lupao glavu
>> šta ga boli, a vidim nisam jedini ... :) mada ovo lepo piše u knjizi ...
A baš voliš da se vidiš u bajtovima, a? (((:
clipper.222dvesic,
> Ima li neko primere za LibLight i CACI posto sam nabavio
> CLIPPER 5.3 ali bez primera ??
Kupi nove Racunare :)
clipper.223rmarjan,
U pravu si, pise to u knjizi i sve je jasno ali bilo mi je veoma
nelogicno sto NAKON "Set printer To" i kasnije ponovne redirekcije
stampe na LISTA.txt, a pocinjem sa RED=0 i nigde nema EJECT ipak
samoinicijativno ubaci Ctrl+L.
Nisam obracao paznju na SETPRC() iz prostog razloga sto ona ima za cilj
da obavesti stampac da mu je TEKUCA pozicija stampe 0,0 a ne neka
druga. Posto u momentu otvaranja lista.txt NISAM imao nikakvu pozociju
za stampu i PRVA komanda je bila na poziciji @ red,0 (pri cemu je red=0),
nisam pretpostavljao da mu treba IPAK reci eksplicitno gde je glava stampaca.
No, bilo kako bilo, time sam resio problem, hvala u svakom slucaju.
clipper.224aquarius,
Ima li neko iskustvo sa Makedonskom cirilicom i Clipperom ???
Stvar je prilicno hitna, pa ako moze ovde ili uSEZAM PRO-BA.
Unapred zahvaljujem :)
Pozdrav Nenad
clipper.225cnenad,
=> ovo bi moglo u odabrane bajtove, jer sam celo popodne lupao glavu
=> šta ga boli, a vidim nisam jedini ... :) mada ovo lepo piše u knjizi ...
Moglo bi čisto kao podsetnik, ali je o ovom problemu već jednom i to davno
još u PC.Prog.2 ili 3 pisano i razmatrano.
clipper.226evlad,
<> A baš voliš da se vidiš u bajtovima, a? (((:
:)) ondaK, imaš razlog da dođeš na ladno p... :)))
clipper.227dr.grba,
>> <> A baš voliš da se vidiš u bajtovima, a? (((:
>>
>> :)) ondaK, imaš razlog da dođeš na ladno p... :)))
Zimi pijem vino, zemo (:
clipper.228petrovics,
Posle visegodisnjeg koriscenja Clipper-a, od skoro je poceo da
nam se javlja jedan problem.
Opis je otprilike ovakav:
S vremena na vreme (na sporijim racunarima cesce, i obrnuto)
javljaju se greske "Syntax error, &" pri cemu se prijavljuje
da smo navodno makro operatoru prosledili neki bezvezni string
(slicno kao kada listamo .exe fajl) - a inace je sve korektno
i u source-u, a i u 99% slucajeva kroz istu tacku, pod istim
uslovima lepo prolazi. Na isti nacin se pojavljuje greska
"Promenljiva nije definisana" uz navodjenje, obicno samo dela
imena, neke, inace postojece promenjive.
Kompajler Clipper v5.2 ne prijavljuje nikakve greske ni
upozorenja, kao ni linker Blinker 3.0. .EXE je (kada se
linkuje bez incrementalnog linkovanja) nesto preko 600 K.
Da li neko zna sta je u pitanju ?
P.S. Koristimo originalni, Clipper-ov drajver za rad sa datotekama
clipper.229rmarjan,
Potrebno je da navedes i sledece, pa da pokusamo...:
- Verzija Clippera 5.2?
- Koje biblioteke dodatne koristis
- Ako koristis dodatne biblioteke, kako ih linkujes (overley delovi...)
- Koji indeksni drajver koristis
- Da li imas Blinker switcheve u .LNK i koji su
- Velicine baze kojima barata u momentu gresaka
- Da li radi na mrezi
- Sve sto mislis da je bitno u vezi ovih programa koji prave problem
Secam se ponekih noci i dana kada me slicna muka napadne, pa zelim da
pomognem, dakle objasni pa da vidimo :)
Pozdrav Boris
clipper.230evlad,
<>>> <> A baš voliš da se vidiš u bajtovima, a? (((:
<>>>
<>>> :)) ondaK, imaš razlog da dođeš na ladno p... :)))
<>
<> Zimi pijem vino, zemo (:
Znam, zato stoje tačkice P... == Pivo, Piće ;) (aksiom: vino je piće :)) )
a može i toplo ako će ti prijati Ridgways - Earl Gray TEA O:)
clipper.231nbatocanin,
> mada ovo lepo piše u knjizi ...
Evo nešto što ne piše: uzmete vi lepo 5.3, probate ono INDEX
ON..CUSTOM i slične lepote, kad ono "syntax error"! U STD.CH ni traga
od ovih naredbi! U NG sve lepo piše, ali ne radi. Naravno, toliki
previd ipak nisu napravili: sve "proširene" definicije su u ORD.CH.
Jedan #include i stvar je rešena.
clipper.232nbatocanin,
čali mi se drug da ne može da štampa grafikone iz Flipper-a. Pošto
nisam radio sa ovim, ne mogu mu pomoći. Ima li neko neku ideju? žovek
tvrdi da ne rade ni priloženi primeri.
clipper.233rmarjan,
Neka mi se javi da mu pomognem koliko mogu. Ja sam stampao grafikone sve u 16
i to u raznim formatimaű█ű i pol űozajima kao i u raznim oblicima. Sve zajedno
zaista ne deluje ni malo naivno, pogotovo sto ume da odradi i nesto elementarne
statistike i izvuce odgovarajuce linije i sl.
Ne bi trebalo da ima problema, osim ako nije neispravna instalaciona verzija
ili ako je verzija veoma stara.Radim verzijom 6.08.
Neka se drugar javi i opise sta je problem, a ako moze neka posalje i neko
pa´krcence koda.
Inace SVI primeri koji idu uz LIB, rade pa je mozda sa instalcijom problem.
Pozdrav Boris
clipper.234dr.grba,
>> čali mi se drug da ne može da štampa grafikone iz Flipper-a. Pošto
>> nisam radio sa ovim, ne mogu mu pomoći. Ima li neko neku ideju? žovek
>> tvrdi da ne rade ni priloženi primeri.
Moglo bi biti da se nešto kolje oko EMS. Neka stavi Set Clipper=...;e0
Moglo bi da pomogne.
clipper.235soul,
Da li bi neko mogao da oka~i dbMax (sorry ako naziv nije ta~an). U
pitanju je shareware zamena za DBU koja bi trebalo da se dobije
uz SIX RDD.
clipper.236dordije,
Prvi put se srecem sa LANTASTIC mrezom, i imam ovaj problem:
Moj program nece da stampa sa stanice na mrezni stampac
(taj ISTI .exe na NWLITE sve dobro radi i stampa ??)
Inace, pre stampe sam stavio
SET PRINTER TO PRN
SET DEVICE TO PRINTER
SET PRINTER ON
Sama stampa se izvodi sa @ x,y SAY ...
Mrezu nisam ja postavljao, ali mislim da je sve OK. Ima pokrenut
onaj Rerouter, ima NET LPT TIMEOUT 10, itd.
Da li ima neko sa vise iskustva sa ovom mrezom ? Ova mreza ide
preko serijskog porta. Sta je u vezi nje specificno za nas kliperase ?
Sta je dobro stavljati u config.sys, i da li je dobro stavljati njen
kes program ? Hvala unapred, pozdrav !
clipper.237stanic,
Posto nema konfernecije PC.os da priupitam ovdi. Koliko je
maksimalna velicina particije pod Novell 2.15c. Sta se
desilo. Konfigurisao sam Novell particiju 500 mega i pod
njom 2 volumena. Prvi sys prepoznaje, ali drugi jock.
Prilikom mountovanja drugog voumena javlja raznorazne
greske. Volinfo ga vidi , ali kad pokusam da mu pristupim
javlja gresku. Vrepair mi se zaglavljuje tako da nemam pojma
sta dalje da radim. Predlozi....
clipper.238dvesic,
> Mrezu nisam ja postavljao, ali mislim da je sve OK. Ima pokrenut
> onaj Rerouter, ima NET LPT TIMEOUT 10, itd.
Da li je išta odštampano sa te stanice na mrežni štampač ?
Ako nije, onda nije urađen CAPTURE LPT porta na taj štampač.
clipper.239dordije,
Subject: LANTASTIC mreza + Clipper.
Jeste. Kada sa mreznom komandom NET PRINT stampas neki .TXT fajl, on
uputi stampu na mrezni stampac. Ali, kada koristis DOS-ovu PRINT
komandu, on nista ne salje vec smatra da stampaca nema (medjutim, kod
NWLITE mreze, DOS-va PRINT komanda sa stanice usmerava stampu na
mrezni stampac !?).
Kada direktno iz programa stampa ide na PRN uredjaj (ili LPT1), on
ne reaguje (tj. onaj njegov Rerouter - a to je kod njega ekvivalent
za CAPTURE kod NOVEL mreza).
U medjuvremenu mi je sugerisano resenje da i ja stampu iz programa
prvo uputim na fajl, pa odatle sa NET PRINT da idem na stampac. To
cu morati i da uradim.
Mene sve vreme buni to sto isti .EXE na NWLITE radi OK ! Medjutim,
izgleda da je ova mreza osetljivija u ovakvim slucajevima, ili je
Clipper ne vari bas najbolje. LANTASTIC mreza je mala mreza, ceo
softver staje na jednu disketu (kako mi je receno), ne zahteva
nikakve mrezne kartice vec je dovoljan jedan kabl za vezivanje
kompjutera preko npr. serijskog kabla.
Pozdrav !
clipper.240zuzelac,
Treba mi neka komunikaciona biblioteka za clipper koja
podrzava rad sa fax-modemima.
Cuo sam da je bilo govora o tome pre nekih 2 meseca u
konferenciji pc.prog, ali ne mogu da nadjem.
Ako neko zna gde se moze naci neka javi u mail.
Svaka informacija je dobrodosla.
clipper.241jolicm,
>>Biblioteka za rad sa famG]űx-modemima.
A´WťĺUn$═
Ja jedino i┼┘§Qűţ ▒└ŔČN&Ôam iskustva sa SILVERCLIP, ali nisam radio sa modemom.
SilverClip radi uop{te sa COM portovima.
Ja sam upravljao nekim ure|ajima i primao podatke sa njih preko COM
ioteke sam ¸│Ďż dobio sve ˝▄Éúwď }▒UŠ»^Ú\ćY+
clipper.242jolicm,
E {to je lo{a veza.
SILVERCLIP u Norton Guide-u ima obja{njenje za funkcije za rad sa
faksovima.
Ja sam SILVERCLIP koristio za upravljanje nekim ure|ajima preko com
portova, i sve je radilo ok, prili~no je pouzdana biblioteka.
A gde to ima, na Sezamu nema, kod svakog ozbiljnijeg pirata u
Beogradu, ima.
clipper.245dpredovic,
Ajde neko od poznavalaca 5.3 varijante neka kaže koliko je ugrađeni
comix lošiji od komercijalnog. Specijalno, da li podržava RYO indexe
i filtere?
clipper.246soul,
Hitno mi je i vrlo potrebna verzija NANFOR biblioteke
koja radi u protected modu (dakle, kada se ulinka EXOSPACEom).
U Sezam diru postoje sorsevi za to što mi treba, ali
kako nemam MS C ne mogu da ih prevedem.
So, ako neko zna kako da to uradim uz pomoć Borland TC++, neka
kaže (ili neka ćuti zauvek :)).
Bio bih *veoma* zahvalan svakom ko zakači traženi LIB ovde
(može i bez NG i sl.). 10x!
Dule
clipper.247inforts,
Da li neko zna kako iz Clipper-a 87 da otvorim datoteku sa READ ONLY
atributom. Sintaksa Clipper-a 5 (USE ime_datoteke READONLY) ne pomaze.
Pozdrav Dragan.
clipper.248rspas,
Izgleda da nema dovoljno naroda (Clipper-aša) koji su o(p)stali na
starom SEZAM-u. Ili to važi za sve? Da li se zna koliko je opao broj
članova? Da li se zna ko je zadužen za Clipper? A za CA-VO?
Ima li neko ozbiljne namere da sačuva Sistem?
clipper.249velicko,
> Da li neko zna kako iz Clipper-a 87 da otvorim datoteku sa READ
Pređi na Clipper 5.3 ili makar 5.2e
clipper.250velicko,
> Izgleda da nema dovoljno naroda (Clipper-aša) koji su o(p)stali
Ima, ima..
> opao broj članova? Da li se zna ko je zadužen za Clipper? A za
> CA-VO? Ima li neko ozbiljne namere da sačuva Sistem?
Kakve to veze ima. Nije ti ovo časopis, pa da pitaš što je
rubrika prazna... :)
clipper.251jolicm,
>>Pređi na Clipper 5.3 ili ...
Kako doći do clippera 5.3 (što jeftinije) ???????????????????????
clipper.252stanic,
Ima li neko onaj file koji dize Blinker 3.00 na 3.01 tako da se moze
uraditi upgrade na 3.10. Cini mi se da je bulaja stavljao pre
par meseci, ali ga tda nisam skinuo pa ne mogu da uradim upgrade.
Hitno mi je zbog clipper-a 5.3.
clipper.253jolicm,
>>3.00>>3.01>>3.10
Ja nisam sačuvao pomenuti upgrade, ali se sećam priče.
Bulaja je ovde stavio taj update (3.01) u dir, ali je neki korisnik
napomenuo da je u samom upgrejdu napomenuto da se ne sme
distribuirati preko BBS-a. Pa je to Bulaja vrlo brzo skinuo. :(
clipper.254mmtosic,
(stanic)
>>>> 3.00>>3.01>>3.10
>>
>> Ja nisam sačuvao pomenuti upgrade, ali se sećam priče.
>> Bulaja je ovde stavio taj update (3.01) u dir, ali je neki korisnik
>> napomenuo da je u samom upgrejdu napomenuto da se ne sme
>> distribuirati preko BBS-a. Pa je to Bulaja vrlo brzo skinuo. :(
Ovde ima dosta "dežurnih" sa "zadatkom" da ne dozvole da "zgrešimo".
Međutim, ima i drugačijih sredina. Tako recimo ovoj koga ti tražiš
bez problema boravi na FON-u.
/msdos/prog/utility
===================
blup301.zip 290794 362055 Blinker 3.01 update
Ako imaš problema da ga otuda uzmeš, javi se na mail. :)
clipper.255szinf,
da li ima neka dobra lib za starije verzije clippera za rad sa sb16?
clipper.256dpredovic,
>>> Bulaja je ovde stavio taj update (3.01) u dir, ali je neki korisnik
>>> napomenuo da je u samom upgrejdu napomenuto da se ne sme
>>> distribuirati preko BBS-a. Pa je to Bulaja vrlo brzo skinuo. :(
>
> Ovde ima dosta "dežurnih" sa "zadatkom" da ne dozvole da "zgrešimo".
> Međutim, ima i drugačijih sredina. Tako recimo ovoj koga ti tražiš
> bez problema boravi na FON-u.
Bilo je ovde već rasprave oko toga, pa je Bulaja ostao dužan da ga vrati.
Koliko se sećam, taj patch regularno može da se nađe na svako drugom bbs-u.
clipper.257rale.s,
Za one koji rade sa CA-Clip.5.2(e) pitanje:
Da li postoji objašnjenje za nerad f-je dbrlocklist(), tj.
zašto je u ovom primeru aLocks empty?
? lastRec() // 10
? empty( aLocks := dbRlockList()) // .T.
? dbRlock(3) // .T.
? empty( aLocks := dbRlockList()) // .T.
Za one koji rade sa CA-Clip.5.3 pitanje - da li prethodno
u toj verziji radi ispravno ( u 4-toj liniji .F.) ?
clipper.258dvesic,
> Da li postoji objašnjenje za nerad f-je dbrlocklist(), tj.
> zašto je u ovom primeru aLocks empty?
> ? lastRec() // 10
> ? empty( aLocks := dbRlockList()) // .T.
> ? dbRlock(3) // .T.
> ? empty( aLocks := dbRlockList()) // .T.
Funkcija sasvim korektno radi, sledeći program je dao sledeće
rezultate :
Proc Main
Local aLocks
Use2 Test New Shared
Set ORder To 0
? lastRec() // 341
? empty( aLocks := dbRlockList()) // .T.
? dbRlock(3) // .T.
? empty( aLocks := dbRlockList()) // .F.
Return
Daj ceo program i eventualno test bazu da vidimo gde je problem.
U kom okruženju radiš ? DOS ? Da li ti je učitan share ?
Win 3.x ? Koji ? itd ...
Samo mali savet: uvek daj što više informacija, pre ćeš odgovor dobiti :))
clipper.259stanic,
Ima li neka dobra dusa koja me moze usreciti update-om za Blinker.
Mail me please. Fon ne mogu da dobijem vec 7 dana.
clipper.261rale.s,
> Funkcija sasvim korektno radi, sledeći program je dao sledeće...
Hvala. Proverio sam, verujem ti. Ali,...
Radi se o DBFCDX rdd-u.
Beše DBFCDX.LIB kao verzija 3.0.(dos\clipper\CDX30i(us).zip na
SezamNET-u). Tu je navedeno da nas oslobađaju linkovanja CDXLOCK.OBJ.
I zaista: sa SHARE ili W4WG 3.11(DOS task) moglo se lock-ovati.
Dođe patch na 5.2e i tu nam vratiše obavezno CDXLOCK.OBJ. Ako si
već zaboravio na taj arhaizam (kao ja), treba vremena da se setiš,
a dotle radiš sa prethodnom LIB.
Ali, to je deo problema. Smatram nedorađenim DBFCDX rdd, jer ni
DBFMDX, DBFNTX,.. ne zahtevaju SHARE ili W4WG da bi dbrlocklist() u
primeru dala niz zaključanih slogova. Znači, ako radim aplikacije
sa DBFCDX drajverom (a radim) i univerzalnim kodom bez obzira na
(ne)instaliranu mrežu, moram da zahtevam od korisnika da, i kada
je PC neumrežen, ima instaliran SHARE.exe.
> Daj ceo program i eventualno...
Ovo je bio test primer koji pokazuje problem. Probaj sa DBFCDX.LIB,
bez cdxlock.obj ili bez share.exe (niti pod Win).
> Samo mali savet: uvek daj što više informacija,...
U pravu, si. Iskreno, nisam bio optimista po pitanju odgovaranja,
s obzirom na umrtvljenost u conf.
Da se vratim pitanju, ispravnije postavljenom: Da li u Ver 5.3
kod daje ispravan rezultat bez obzira na (ne)instaliran SHARE.exe.
Hvala. R.S.
clipper.262dvesic,
> Da se vratim pitanju, ispravnije postavljenom: Da li u Ver 5.3
> kod daje ispravan rezultat bez obzira na (ne)instaliran SHARE.exe.
Za to ne znam, ali iskreno sumnjam.
> primeru dala niz zaključanih slogova. Znači, ako radim aplikacije
> sa DBFCDX drajverom (a radim) i univerzalnim kodom bez obzira na
> (ne)instaliranu mrežu, moram da zahtevam od korisnika da, i kada
> je PC neumrežen, ima instaliran SHARE.exe.
SHARE jeste NEOPHODAN da bi funkcionisalo zaključavanje na nivou čistog
DOS-a, tako da će pre bag biti u ostalim drajverima.
To što oni vraćaju kao status da je slog zaključan, ne znači da je i
stvarno tako - ako probaš da pristupiš tako zaključanom slogu iz drugog
taska (npr. iz drugog DesqView prozora), videćeš da je to itekako moguće.
clipper.263rale.s,
> Za to ne znam, ali iskreno sumnjam.
Upravo to me zanima, da ili ne. A interesantno za CDXLOCK.obj u
52eint.txt kažu:
"The file CDXLOCK.OBJ is not needed with the DBFCDX.LIB RDD supplied by
this update. ..."
Zatim, ako ćemo mak na konac, ispravan rezultat za bilo koji RDD je
- zaključao sam slog => evo ti ažurna lista lock-ova
.or. nisam zaključao slog => nema ga u listi.
Prema ovome, ni jedan RDD nije totalno ispravan.
> SHARE jeste NEOPHODAN da bi funkcionisalo zaključavanje...
Obrati pažnju, ne radi se o funkcionisanju zaključavanja, nego o
f-ji dbrlocklist() i njenom različitom radu kod CDX rdd-a.
Ono o bagu u ostalim drajverima ne stoji - ravnopravni su, svaki
i bez SHARE-a daje: dbrlock( nSlog) = .T.. Pa, ako voliš da program
zna na čemu je (na mreži ili ne), ostaje ti INT 2Fh, fun 10h
(multiplex int),... Jednostavnije je: ako nema deljenja fajlova
(ni SHARE-a), zaključavanje je uspešno i lista lock-ota se ažurira,
a ako ima deljenja, od uspeha zaključavanja zavisi lista. Ko deli
fajlove, instaliraće i sistemsku podršku tome, ko ne deli, neće.
A program je isti za sve.
Dakle, ima li odgovora: ponašanje dbrLockList() za DBFCDX bez
SHARE.exe ili Win-DOS taska u ver 5.3.
Još nešto: radi li nekom exospace (uz 5.2e) u Win oknu?
clipper.264sgopcevic,
U cemu je stvar ?
-Danas sam instalirao clipper 5.3 i hteo sam da isprobam debager. Program
sam kompajlirao sa opcijom /b da bih dobio informacije za debager. Kada
sam probao da startujem debager navodjenjem cldr fajl.exe, na ekranu
sam dobio startovani fajl.exe, a nisam se nasao u okruzenju debagera.
Kako to?
-Posto sam imao par datoteka od kojih je kod nekih bilo promena, a kod
nekih ne, i kompajliranu datoteku koja nije u medjuvremenu menjana, clipper
kompajler ponovo kompajlira, sto u predhodnoj verziji clipper-a nije bio
slucaj.
clipper.265crnjini,
Clipper 5.3 je stavio path za svoj dibager ispred patha
dibagera starog Clip 5.2. I tako, imas s situaciju da clipper
debuggerom v5.3 ci{ tas program ve verzije 5.2, sto nece ici.
ACR
clipper.266biki,
Dobio sam FiveWin 1.9 (tri diskete 1.4)
Ima dosta noviteta pa ako ima zainteresovanih
javite se na tel. 421-814 od 18h ili mail.
Micko
clipper.267oldtimer,
> Dobio sam FiveWin 1.9 (tri diskete 1.4)
> Ima dosta noviteta pa ako ima zainteresovanih
Ima dovoljno zainteresovanih da to calex stavi u dir čim prije ;)
clipper.268bugica,
clipper.269soul,
Potrebna mi je asm/c funkcija ili biblioteka koja je sadrži,
koja radi sledeće:
Učitavanje i postavljanje alternativnih fontova (za VGA tekst mod)
Promena boja (za ovo znam da ima u dir-u, da li neko zna još neki?)
Za sad se snalazim sitnim utility programima koji su u batch-u
pre glavnog programa, ali bih to rado malo upristojio. Znam da
bulaja zna odgovor na pitanja, al' dal' će reć'? ;)
clipper.270mileusna,
>> Učitavanje i postavljanje alternativnih fontova (za VGA tekst mod)
>> Promena boja (za ovo znam da ima u dir-u, da li neko zna još neki?)
Probaj sas CA Tools-om. Postoje funkcije za učitavanje
fontova, kao i funkcije za podešavanje RGB skale boja. Kao i
još dosta toga... :)
clipper.271dpredovic,
> Probaj sas CA Tools-om. Postoje funkcije za učitavanje
> fontova, kao i funkcije za podešavanje RGB skale boja. Kao i
> još dosta toga... :)
Ili Funcky. Ima što i Tools + još mnogo, mnogo toga :)
clipper.272digi,
Error[35] General Protection Fault
code=0000 ss=0D30 ds=0D30 es=0D98
ax=791C bx=0004 cx=0001 dx=0D98 sp=6F48 bp=6F60 si=7928 di=2400
Linker: ExoSpace v1.0d
RDD SixNsx
Lib Six2 V2.0
Kako da ovo izbegnem desava se samo kada je obrada veca to jest
traje oko 40min
clipper.273dpaun,
Cliper braćo i sestre, molim za odgovor na dva pitanja:
1. Ima li kak'a knjiga na srpskom jeziku o Clipperu 5.3?
2. U principu jel mnogo komplikovano prerađivanje
programa iz Clipper5.0 u Clp5.3 ? Aj neka me neko ohrabri
i neka kaže da nije.
dPaun. =+:)O
clipper.274digi,
zar st7Úă┌̡ z═Oűvarno niko nije imao slican proble uvezi
pitanja 1.272
Objasnjenje koristio sam Linker Exospace 1.0d i biblioteki Six2
verzija V2.03.01,posle nekoliko hiljada upisa u razne baze upisa
je oko 40000 desava GPF,
Puno zahvaln Digi !! Ostaviti poruku na Mail !!
clipper.275dpredovic,
> Objasnjenje koristio sam Linker Exospace 1.0d i biblioteki Six2
> verzija V2.03.01,posle nekoliko hiljada upisa u razne baze upisa
> je oko 40000 desava GPF,
Pa tu i nema neke velike pameti niti neke velike pomoći. Mo×da neki novi patch
za Six? Linkovanje u real-modu? Blinker?
clipper.276soul,
Subj: FM.API
U sorsu NANFOR biblioteke (ver 3.05) se u nekim C funkcijama
(meni vrlo bitna dispc.c, npr.) traži FM.API. Tog APIja, međutim,
nema ni u CLIPPER/INCLUDE ni u odgovarajućem MSC direktorijumu.
Molim nekoga ko ima dotični fajl da ga pošalje. Takođe bih bio
zahvalan za ma kakve informacije o istom, u slučaju da ga nemate.
10x.
clipper.277bulaja,
│ Za sad se snalazim sitnim utility programima koji su u batch-u pre
│ glavnog programa, ali bih to rado malo upristojio. Znam da bulaja
│ zna odgovor na pitanja, al' dal' ce rec'? ;)
└───
Što ne bih rekao ;), jedino se ovde javljam nešto ređe pa nisi dobio
express odgovor. Dosta biblioteka ima funkcije za rad sa fontovima,
na primer FUNcky, CA-Tools i druge. Ako već imaš gotove VGA fontove,
najlakše ti je da koristiš funkcije za učitavanje kompletnog font-a,
ako koristiš FUNCky samo stavi:
fontLoad (0, FontHeight(), 256, 1, MemoRead(<FontFile>))
Fontovi su klasični VGA, dakle visine 16 tačaka za VGA (standardni mod
sa 25 linija), 14 tačaka za EGA i VGA u 28 linija, 12 tačaka za VGA u
40 linija.
clipper.278digi,
U vezi pitanja 11.271
Ne mogu da iskurustim rad Real modu jer mi je program i suvise
veliki za rad pod mrezom Novel javlja da nema dovoljno memorije.
Ako koristim Blinker sa dos ekstenderom greska se javlja jos i
pre.
clipper.279dvesic,
> Ako koristim Blinker sa dos ekstenderom greska se javlja jos i
> pre.
Kog tipa je greška ? Koliko slobodne memorije imaš ?
Može vrlo lako da se desi da je do neke od funkcija koje se ponašaju
nekorektno u protected modu.
clipper.280bstevan,
Imam nekoliko pitanje,
Odnosno interesuje me, sta je bolje prilikom programiranja u
Win, konkretno dali je bolje CA 5.2 + FiveWin 1.9 ili pak
Clipper 5.3.
Dali Clipper 5.3 ima vise mogucnosti od FiveWin 1.9 ?
I'sta je trenutno najbolje za programiranje u WIN-u ?
--- MAIL ---
---BSTEVAN---
clipper.281dpredovic,
> Ne mogu da iskurustim rad Real modu jer mi je program i suvise
> veliki za rad pod mrezom Novel javlja da nema dovoljno memorije.
Čekaj malo. Linkovano blinkerom u real modu nema memorije? Pa
koliko ti je to programče?
clipper.282rale.s,
Evo Fm.api-ja
r.
fm.apiclipper.283digi,
Uz poruku 11.278
Programcic je veliki oko 691kB exe file i Blinker javlja 440kB :)
Kada ga startujem pod Novell Lite-om javlja se sledeca greska
Unrecoverable error 5300:Not enough memory
clipper.284dvesic,
> Programcic je veliki oko 691kB exe file i Blinker javlja 440kB :)
Ovo (440) je suviše veliki load size. Koji link script koristiš ?
(CL520MIN, CL520MID ili CL520MAX). Kako izgleda tvoj link skript ?
Najbolje da relevantne fajlove pošalješ ovde ...
clipper.285zkrstic,
>> > Programcic je veliki oko 691kB exe file i Blinker javlja 440kB :)
>>
>> Ovo (440) je suviše veliki load size. Koji link script koristiš ?
>> (CL520MIN, CL520MID ili CL520MAX). Kako izgleda tvoj link
skript ?
>>
>> Najbolje da relevantne fajlove pošalješ ovde ...
>>
Ne koristi nikakav link skript, definitivno.
Uzgred ( ovo nije riplaj dvesicu ) to 440K znači da je
toliko memorije potrebno da bi se program samo startovao, a
kam'gu ostalo...
Pod najhitnijje na kraj LINK skripta pripali jedno
ŽCL520MAX.LNK, a da ti je pri tome C:ĐVLINKER3Đ... u SET LIB-u.
Prosto žudim da mi exe ima samo 700K.
Kao što ti već dvesic reče, daj .LNK fajl za početak.
Meni nešto tu smrdi...
Zkr
clipper.286digi,
Za pocetak hvala na odgovorima.
Ja nemam zcl520max.lnk okacitemi to na odgovor
C:dvLinker3d ?
mfin.lnkclipper.287soul,
RE: FM.API
THANX A LOT! Gde si ga našao, tj. gde se to čudo
standardno nalazi?
BTW, još ga nisam probao (online sam), nadam se da je to to.
10x again.
clipper.288rale.s,
> RE: FM.API
Nema na čemu.
Čini mi se da si tražio na pravom mestu (\include).
Ne sećam se uz koju verziju (patch) je išao dotični Api.
Ako ti zatreba nešto slično, traži.
r.
clipper.289mradovic,
Ej kliperaäi zna li neko zaäto ovo neradi:
SET VIDEOMODE TO LLG_VIDEO_VGA_640_480_16
@ 0, 0 SAY "Hello"
QUIT
Uopäte ne dolazi do prebacivanja u grafiüki mod !
Probao sam i kod ortaka, üisto da vidim da nije u pitanju moja
kartica. Epilog je izgledao ovako : :(.
Mirko.
clipper.290digi,
Poslao sam LNK fajl koji ste trazili pa pomognite vec jednom
Jos jedno pitanje da li postoji neka biblioteka za rad sa INI
fajlovima ali ne kao Six2.lib
clipper.291dvesic,
> Poslao sam LNK fajl koji ste trazili pa pomognite vec jednom
> Jos jedno pitanje da li postoji neka biblioteka za rad sa INI
> fajlovima ali ne kao Six2.lib
Ajde da vidimo sta se moze :)
- File Main izbaci PRE prvog BEGINAREA
- Ono LIB SIX2 zameni sa :
BEGINAREA
ALLOCATE SIX2.LIB
ENDAREA
MODULE swdbf1
MODULE cdxcore
MODULE nsxcore
MODULE nsxasm1
MODULE swutil3
- Javi rezultate, pa da kasapimo dalje :)
clipper.292digi,
Odgovor na 11.291
Hvala dvesic, posle promene lnk fajla mogu da ucitam program u
memoriju.
clipper.293digi,
Opet imam problema sa mrezom ovo mi se desava samo kod jednog
korisnika u pitanju je veza dva racunara pod Novell Lite-om
a desava se sledece iz ne znam kog razloga umesto u tkstualni
fajl prilikom stampanja podaci za stampu mi idu u jednu od dbf
datoteka narvno posle toga nastaje greska datoteka nije dbf
formata.Uz poruku saljem Vam i prg verziju za stampanje izvestaja
ne znam mozda ja gresim.**B00000000000000
Ő*C A█ y2editor.prg5326 6112152076 0 0 1 5326k *Ž*C A█
y2editor.prg5326 6112152076 0 0 1 5326k *Ž*C A█ y2editor.prg5326
6112152076 0 0 **B00000000000000
Ő*C A█ y2editor.prg5326 6112152076 0 0 1 5326k *Ž*C A█
y2editor.prg5326 6112152076 0
editor.prgclipper.294tomil,
Gde može da se nadje Class(y) biblioteka objekata za Clipper?
Miša.
clipper.295dpredovic,
> Gde može da se nadje Class(y) biblioteka objekata za Clipper?
Nije biblioteka objekata, nego biblioteka koja ti omogućava da sam
praviš svoje objekte.
A, da - kod svakog boljeg dilera. :)
clipper.296tomil,
Visual Interface V1.11
Da li nekog zanima ovo, pa da pošaljem ?
Miša.
vi.zipclipper.297bstevan,
Imam nekoliko pitanja,
Sa Clipper 5.3 + FW19 + Blinker 3.0, dobijem Win-program,
i kad ga pokrenem iz WINDOWS-a sledi poruka.
FIVE WIN
An error has occurred in your application.
If you choose Ignore, you should save your work in new file.
If you choose Close, your application will terminate.
Application Error
FiveWin caused a General Protection Fault in
module TUTOR02.EXE at 0002:0F9C
Program je tutor02.prg, primer iz FW19.
U'cemu je problem ?
Inace koristim za linkovanje BUILD.BAT
Dali moram da nesto menjam u fivewin.lnk ?
Kako bi trbalo da izgleda i autoexec.bat i config.sys ?
Masina je AT-386, 20 MHz, 2 MB, Hercules-kartica.
Za Blinker 3.0, pise da je Windows Linker 3.00 + DOS Extender.
--- MAIL ---
---BSTEVAN---
clipper.298dvesic,
> Sa Clipper 5.3 + FW19 + Blinker 3.0, dobijem Win-program,
> i kad ga pokrenem iz WINDOWS-a sledi poruka.
Uzmi Blinker 3.20, najverovatnije je do toga.
clipper.299easyd,
Potreban program koji pravi source code od EXE-a...
poz, easyd...
clipper.300bstevan,
==>Uzmi Blinker 3.20, najverovatnije je do toga.
Pa za Blinker 3.0, pise da je Windows Linker 3.00 + DOS Extender,
u NG-za FW19 pise da je Blinker 3.00, OK izbor.
Nerazumem sto mi ne izvrsi program iz WIN-a.
---POZDRAV---
---BSTEVAN---
clipper.301zkrstic,
>> Ej kliperaäi zna li neko zaäto ovo neradi:
>>
>> SET VIDEOMODE TO LLG_VIDEO_VGA_640_480_16
A koju to bibilioteku koristiš ? Light LIB ili ?
A da li si definisao kako treba sve na početku ?
Kako izgleda define za LLG_VIDEO_VGA_640_480_16 ?
Zkr
clipper.302cnenad,
=> Potreban program koji pravi source code od EXE-a...
Teško :) s obzirom da original košta oko 500 funti. Ovde je kružila demo
verzija koju sam imao prilike probati i koja stvarno VRAĆA sors, u ovom
slučaju najveće funkcije ili procedure ulinkovane u EXE. Proizvođači su
valjda Englezi, program se zove RESCUE 5.
clipper.303mradovic,
Taman sam pomislio da se niko neće javiti...
> A koju to bibilioteku koristiä ? Light LIB ili ?
LLIBG.LIB
> A da li si definisao kako treba sve na pocetku ?
llibg.ch je ukljucen
> Kako izgleda define za LLG_VIDEO_VGA_640_480_16 ?
#DEFINE LLG_VIÖEO_VGA_640_480_16 18
Probao sam i sa Blinkerom i ExoSpaceom, ali sve jednostavno
ostaje u text moöu :(, imaä li neku ideju éaäto?
Pozdrav, Mirko.
clipper.304velicko,
>+# DEFINE LLG_VIÖEO_VGA_640_480_16 18
Kod mene ispravno radi sledeći programčić:
#include "NiSoft.ch"
proc main()
local cHallo := space(10)
local getList := {}
set videomode to 18
cls
box say "Hallo" get cHallo
set cursor on
boxRead topTitle "Hallo there"
set cursor off
return
clipper.305bstevan,
==>Uzmi Blinker 3.20, najverovatnije je do toga.
Uzeo sam ovih dana Blinker 3.20, ali opet isto.
U cemu je problem ?
---POZDRAV---
---BSTEVAN---
clipper.306dvesic,
> Uzeo sam ovih dana Blinker 3.20, ali opet isto.
>
> U cemu je problem ?
Šta koristiš od spoljnih biblioteka ?
Možda neka spoljna biblioteka nije usklađena sa protected mode programima ...
clipper.307biki,
Ja sam se bavio sa time i mozda mogu da ti pomognem ( u zavisnosti od
linkera koji je upotrebljen). Ako ti je i dalje aktuelno javi se na
tel. 403-430 Zoran.
clipper.308jolicm,
Internal error 999 ??????
Program pisan na clipperu 5.2d + SIX2 treba da proradi na jednom XT-u
sa DOS-om 3.30
Greška se dešav pri prvom pokušaju komande USE .... EXCLUSIVE
Program sam smanjio (radi testa) na najmanju moguću meru.
Dakle da li neko zna šta je internal error 999 ?
Unapred puuunooo zahvalan. :)
clipper.309rale.s,
>> Internal error 999 ??????
IE 999 - Attempt to execute invalid code...
Mogući uzroci:
- Imaš obj-ove iz više verzija -> treba ih svesti na istu
- Greška u obj fajlu -> treba rekompajlirati kod
- Koristiš verziju biblioteke koja nije prilagođena
verziji Clipp-a
- Pozivaš u makrou ili bloku koda f-ju koja nije REQUESTED
- Sve to piše i u odgovarajućim .ng fajlovima.
r.
clipper.310bstevan,
==>Šta koristiš od spoljnih biblioteka ?
==>
==>Možda neka spoljna biblioteka nije usklađena sa protected mode
==>programima ...
Koristim build.bat iz FW19, koji nisam menjao i
fivewin.lnk, gde sam probao sa zadnjim redom za biblioteke,
program je tutor02.prg-odnosno primer iz FW19.
LIB FiveWin,WinApi,ExoSpace,Clipper,Extend,DbfNtx,Terminal,501_520
zatim,
LIB FiveWin,WinApi,Clipper,Extend,DbfNtx,Terminal,501_520
i
LIB FiveWin,WinApi,Clipper,Extend,DbfNtx,Terminal
ali bez rezultata.
Probao sam i iz DEFBEGIN-DEFEND, da brišem redove segment,
ali i to nije pomoglo.
Radi se o Clipper-u 5.3
---POZDRAV---
---BSTEVAN---
clipper.311bulaja,
│Probao sam i sa Blinkerom i ExoSpaceom, ali sve jednostavno
│ostaje u text moöu :(, imaä li neku ideju éaäto?
└───
Izvinjavam se na zakasnelom odgovoru :), ali da li si naveo LLIBG.LIB
u link script-u? Blinker i ExoSpace to ne ubacuju automatski (kao što
rade sa standardnim bibliotekama - clipper.lib, extend.lib,..), a ovo
ponašanje programa baš liči na taj problem.
clipper.312mradovic,
> Izvinjavam se na zakasnelom odgovoru :), ali da li si naveo LLIBG.LIB
> u link script-u? Blinker i Exospace to ne ubacuju automatski (kao äto
Evo konkreno primera:
#include "llibg.ch"
SET VIDEOMODE TO LLG_VIDEO_VGA_640_480_16
gline(0, 0, 20, 20, 6, LLG_MODE_SET)
SET VIDEOMODE TO LLG_VIDEO_TXT
Linkovanje:
blinker file test lib clipper, extend, llibg
Kada se program startuje, ekran se izbriäe (i dalje text mod)
i to bi bilo sve ! Jel' treba joä neäto dodati u link script?
Ako je verovati NG-u, navedeni LIB-obi su dovoljni.
Da situacija bude joä üudnija, poziv gmode() funkcije u cilju
dobijanja informacija o video modu, potpuno blokira maäinu.
Postoje li neka ograniüenja u vezi video kartice (mislim
iskljuüivo na LLIBG.LIB koji se isporuüuje uz Clipper 5.3)?
Pozdrav, Mirko.
clipper.313snemcev,
>> Kada se program startuje, ekran se izbriše (i dalje text mod)
>> i to bi bilo sve !
Ne videh nigde pauzu u onom tvom programu. Da se program ne izvrši
toliko brzo da ti i ne primetiš da on ode u grafički mod, iscrta liniju
i vrati se u tekst mod?
clipper.314mradovic,
> Ne videh nigde pauzu u onom tvom programu. Da se program ne izvrsi
> toliko brzo da ti i ne primetis da on ode u graficki mod, iscrta liniju
> i vrati se u tekst mod?
Ne, linije koje slede posle poziva gline() se uopste ne izvrsavaju.
Pozivi svih funkcija koje rade u grafickom modu ili blokiraju masinu,
ili dovode do pucanja programa, sto znaci da do prebacivanja u
graficki mod uopste ne dolazi!
Pozdrav, Mirko.
clipper.315nitro,
Programiram u Clipper-u 5.2c i desava mi se da u direktorijumu
u kome se nalazi neki moj program sam racunar stvori neki fajl
bez ekstenzije i sa nazivom bez ikakvog smisla SFAFGFD i td. i
slicno.Jel to Clipper nevalja ili moji programi nevaljaju
Ko zna u cemu je problem nek mi ja vi na , bolje na MAIL
unapred hvala
clipper.316sobrenovic,
Nista ne brini... :)
Programi radjeni u clipper-u povremeno prave upravo pomenute fajlove
sa blesavim nazivom od 8 slova bez ekstenzije i to su u stvari temp.
fajlovi, nesto nalik virtuelnoj memoriji koju Windows pravi na hard
disku. Ti fajlovi gube vaznost (u slucaju clippera!) po izlasku iz
programa i mozes ih po kratkom postupku obrisati.
Pozdrav, Sasa.
P.S. Zna li neko po kom algoritmu clipper formira nazive upravo
pomenutih fajlova?
clipper.317zeljkoj,
> P.S. Zna li neko po kom algoritmu clipper formira nazive upravo
> pomenutih fajlova?
Ne kreira ih Clipper, postoji DOS funkcija za otvaranje fajla sa takvim
rnd nazivom. :) Ako treba, mogu da pogledam koja je tačno...
clipper.318nitro,
hi svim CLIPPOVIMA
Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad
nije pritisnut taster vec duze vreme .imam funkciju zvezdanog
neba ali neznam kako da namestim da se ona aktivira u meniju ili
u nekom slicnom delu programa ako nista nije pritisnuto pr.5 min.
ko zna nek mi javi na mail ili u conf
unapred zahvalan
clipper.319mmarkovic,
> Ne kreira ih Clipper, postoji DOS funkcija za otvaranje fajla
> sa takvim rnd nazivom. :) Ako treba, mogu da pogledam koja je tačno...
Da. A ako je linkovano blinkerom, fajlovi se zovu $Tnnnnnn
clipper.320arazumenic,
-> Programiram u Clipper-u 5.2c i desava mi se da u direktorijumu
-> u kome se nalazi neki moj program sam racunar stvori neki fajl
-> bez ekstenzije i sa nazivom bez ikakvog smisla SFAFGFD i td. i
-> slicno.Jel to Clipper nevalja ili moji programi nevaljaju
A da mu postavis da te fajlove trpa u neki temp direktorijum? Onda, s vremena
na vreme obrises ceo temp direktorium.
clipper.321arazumenic,
-> Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad
-> nije pritisnut taster vec duze vreme .imam funkciju zvezdanog
Imas opisano u nekom od starijih brojeva racunara, a pogledaj malo i po
starim konferencijama, i naci ces kako.
Ukratko, mora se menjati sam nacin kako Clipper tretira stanje cekanja. Tu
postoji jedno jedino inkey(0), i to treba prepraviti u poziv tvoje funkcije
koja ce raditi isti posao, ali koja ce ti omoguciti bas ono sto ti zelis.
clipper.322mmarkovic,
> Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad
> nije pritisnut taster vec duze vreme .imam funkciju zvezdanog
Predefiniši GETSYS.PRG tako da se ne poziva inkey(), nego neka
tvoja f-ja koja poziva inkey(). U svojoj f-ji ispituj vreme od
zadnjeg pritiska na taster.
clipper.323cnenad,
=> Jel zna neko kako da ubacim Zvezdano nebo u moje programe kad
=> nije pritisnut taster vec duze vreme .imam funkciju zvezdanog
Baš zanimljivo :) jedno vreme su u modi bile baš ovakve stvari u Clipper
programima kao i satić, da bi tu ulogu preuzeli rezidentni programčići.
Sad kad imamo W95 opet su iste ove stvari u modi jer nije zgodno trpati
kao rezidentne satić i screen saver. Kako god bilo mišljenja sam da onome
kome je stalo do šminkanja svog programa, treba ovo da ubaci jer ima i
korisnika koji ne znaju da instaliraju tj. strpaju rezidentne programe u
AUTOEXEC a kamoli da podese njihove parametre.
=> neba ali neznam kako da namestim da se ona aktivira u meniju ili
=> ko zna nek mi javi na mail ili u conf
Na mail nećeš dobiti jer ima još ljudi koje ovo interesuje pa zato nemoj
više kod nekog pitanja pisati tu čuvenu opasku NA MAIL. Ovako ćeš pratiti
i konf. i učestvovati u raspravi ili barem naučiti mnogo novih stvari.
Clipper-ov sistem menija ne podržava zamenu inkey() tvojom funkcijom pa
za takve stvari moraš recimo iskoristiti BuMenu 1.4 i zato ovaj primer
ide upravo za BuMenu. Napravićeš svoju funkciju koja će zameniti INKEY()
i nju pozivati svugde gde je stavljeno INKEY() (zapravo, ovde ćeš dobiti
gotovu funkciju ;) pa je samo iskompajliraj. Dakle, primer vezivanja sa
menijem.
#include "BUMENU.CH"
...
WHILE .T.
bu_setinkey( { || NInkey( 0 ) } )
@ 22, 0 PROMPT 'Datoteke' HOTKEY 't' MESSAGE 'UNOS, BRISANJE...'
@ 22, 11 PROMPT 'Podešavanja' HOTKEY 'P' MESSAGE 'PARAMETARI ZA RAD PROGRAMA'
CLEAR TYPEAHEAD
MENU TO ln_Meni
DO CASE
CASE ln_Meni == 0 ; EXIT
CASE ln_Meni == 1 ; Datoteke()
...
END CASE
END WHILE
Evo ti i funkcije koja dalje realizuje skaniranje tastature, aktivira
screen saver i slično. Na tebi je da dalje razradiš istu prema svojim
potrebama i ugradiš željeni screen saver, satić i slično... - ovaj samo
zatamni ekran i čeka na pritisak tastera.
STATIC TimeOut := 5 // vreme u sec. nakon kojeg se aktivira screen saver
STATIC RunMode :=1
FUNC Ninkey(N)
LOCAL Ch
DO CASE
CASE N == NIL
Ch := Inkey ()
CASE N > 0
DO CASE
CASE RunMode == 1
Ch := Inkey (N)
END CASE
CASE N == 0
DO CASE
CASE RunMode == 1
WHILE (Ch := Inkey (TimeOut)) == 0
ln_Cursor := setcursor()
setcursor( 0 )
lc_Stari_ekran := savescreen( 0, 0, maxrow() maxcol() )
CLS
inkey( 0 )
restscreen( 0, 0, maxrow(), maxcol(), lc_Stari_ekran )
setcursor( ln_Cursor )
END DO
END CASE
END CASE
RETURN( Ch )
clipper.324pdeze,
Pozdrav!
Imam jedan problemcic, a glasi ovako:
U jednom dosta glomaznom programu, porebno mi je da se jedna procedura
izvrsi svaki put kada korisnik sedne za kompjuter (tj. pritisne
taster), kao jedan TSR, pa sam to izveo sa SET KEY 13 TO ... (ENTER, jer
je on najcesci), ali to naravno tako ne odgovara svrsi, posto SET KEY
ne proverava tastauru vec je cita (tj. destructive read).
Znaci proc koji se izvsava pri pritisku na recimo ENTER a ne smeta
procedurama koje se tada trebaju izvrsiti. Kako mogu ovo resiti?
clipper.325livan,
-> Imam jedan problemcic, a glasi ovako:
-> U jednom dosta glomaznom programu, porebno mi je da se jedna procedura
Nisam siguran da sam najbolje razumeo šta hoćeć, ali probaj ovo:
********************
#include "InKey.ch"
PROCEDURE Main()
LOCAL GetList:=šć,nBroj:=0, cString:=Space(10)
CLEAR SCREEN
DO WHILE .T.
Ž 10,5 SAY "Unesi broj ..............:" GET nBroj PICT "9999";
WHEN šđđ HotEnter() ć
Ž 11,5 SAY "Unesi string.............:" GET cString;
WHEN šđđ HotEnter() ć
READ
IF LastKey()==K_ESC
EXIT
ENDIF
nBroj:=0
cString:=Space(10)
ENDDO
RETURN
PROCEDURE Bilo_sta() /* Ovo bi bila ta tvoja procedura */
LOCAL i:=0
SET KEY K_ENTER TO
WHILE i < 3
Tone(200+10*i,1)
i++
ENDDO
KEYBOARD Chr(K_ENTER)
RETURN
FUNCTION HotEnter()
SET KEY K_ENTER TO Bilo_sta()
RETURN .T.
*******************
Samo onda moraš za svaki GET da stavljaš ovaj WHEN blok !
Šta ti radi ta procedura kad si je stavio na ENTER ?!?
clipper.326sasab,
> > Ne kreira ih Clipper, postoji DOS funkcija za otvaranje fajla
> > sa takvim rnd nazivom. :) Ako treba, mogu da pogledam koja je tačno...
> Da. A ako je linkovano blinkerom, fajlovi se zovu $Tnnnnnn
++++++++++++++++++++++++++++
Novelovi temporary fajlovi imaju ovakvo ime.
Inače kreira ih DOS f-ja 5Ah (i bez novela, naravno)
Function 5Ah (90) Create Unique File ˛ DOS 3.0
Creates a unique filename, then opens that file in the specified
directory.
On entry: AH 5Ah
CX File attribute
DS:DX Pointer to path ending in Đ (ASCIIZ string)
Returns: DS:DX Pointer to filename (ASCIIZ string)
AX Error code, if CF is set
Bogi
clipper.327sasab,
> A da mu postavis da te fajlove trpa u neki temp direktorijum?
> Onda, s vremena na vreme obrises ceo temp direktorium.
Ako je program na mreži obavezno temp direktorijum na lokalnom
disku. Drastično smanjuje saobraćaj na mreži, što se, jelte,
drastično odrazi na brzinu (u pozitivnom smislu naravno).
set clipper=//swappath:'c:Đtemp' //temppath:'c:Đtemp' ....
Paziti pri tome da na disku ima dovoljno slobodnog prostora. U NG
kaže da za temppath (temporary fajlovi prilikom indeksiranja,
pakovanja i sortiranja baza) slobodan prostor mora da bude makar dva
puta veći od dužine najvećeg indeksa koji se kreira ili baze koja se
pakuje/sortira.
VM swap fajl u "normalnom" programu retko kad pređe par stotina KB.
E sad ako neko pretera sa nizovima... Teorijsko ograničenje je 64MB.
Uzgred rečeno, pri regularnom završetku programa ti fajlovi se
automatski brišu, pa do gomilanja ne bi trebalo da dođe.
Bogi
clipper.328pdeze,
> Samo onda moras za svaki GET da stavljas ovaj WHEN blok !
> Sta ti radi ta procedura kad si je stavio na ENTER ?!?
Da, a bas to hocu da zaobidjem: modifikaciju svake procedure u kojoj bih
pozivao ovu proc koja se aktivizira na ENTER. Zapravo hteo bih da
izvrsavanje ovog modula bude nezavisno od bilo koje tekuce procedure.
To bi vec zapravo bio TSR, pa vise i nisam siguran da je problem resiv
unutar CLIPPERa. Jel' sam u pravu?
Inace to (proc) je provera pristiglog e-maila (posto je stvar na mrezi) sa
ostalih radnih stanica.
Mozda je bolji nacin onda vremenska kontrola (da proverava pristigle poruke
u vremenskim intervalima) ?
clipper.329nenadovic,
Imam dosta zanimljiv algoritam za rešavanje ovog problema u READ
naredbi. Međutim on ne funkcioniše u menijima. S druge strane nemam
nikakav SCREEN SAVER poput tog zvezdanog neba. Pozivam
zainteresovane na dalju diskusiju po ovom pitanju.
clipper.330nenadovic,
Ako ima nekoga ko je radio sa clipper 5.3 i exospace-om, koji
neverovatno radi sa extended memorijom i da je uspeo da strpa bilo
kakav program da radi efektno na 2 MB nek mi se javi.
Uzgred nijedan program koji zahteva puno ext. memorije ne radi kako
valja pod windows-om (npr. grafički programi). Funkcija MEMORY() iz
programa pod windows-om uopšte ne vidi ext. memoriju, koliko god da
je ima. Zna li neko kako se ovo sređuje.
clipper.331mmarkovic,
>> Da. A ako je linkovano blinkerom, fajlovi se zovu $Tnnnnnn
> Novelovi temporary fajlovi imaju ovakvo ime.
Tačno, greška... nije zbog blinkera...
clipper.332cnenad,
=> set clipper=//swappath:'c:Đtemp' //temppath:'c:Đtemp' ....
=>
=> Paziti pri tome da na disku ima dovoljno slobodnog prostora. U NG
Da li je moguće strpati u BLINKER EXECUTABLE CLIPPER direktivu za TEMP
direktorijum koja se odnosi na deklarisanu TEMP enviroment promenljivu
u AUTOEXEC.BAT datoteci. Znači nešto poput: BLI EXE CLI //TEMPPATH:%TEMP%
Znači, ovo bi bilo slično SET CLIPPER==//temppath s time što ja ne moram
da razmišljam gde je kome TEMP dir. osim ako SET TEMP ne postoji u
AUTOEXEC-u ?
clipper.333sobrenovic,
HELP HELP HELP HELP HELP HELP
Jedan od (mojih) instaliranih programa povremeno (ne uvek na istim
mestima ali uvek u toku pisanja/izmena na disku ili azuriranja
indeksa) javi CORRUPTION DETECTED. Znam sta to znaci, ali ne znam
zasto. Svi ostali programi rade ok, windows radio ok... Ploca je
386SX, 4 Mb RAM, disk 520 Mb itd.
Clipper je, mislim, 5.2c. Da nije bag u clipper-u? Datoteke
izgledaju sasvim normalno a, uz put, ni jedna nema vise od 1500
slogova.
Bug inside? Yes.
clipper.334nitro,
HI svim CLIPOVIMA
Jel bi neko mogao da mi napise sta je sve potrebno da napravim
program za PP na veliko i kako se radi to njihovo knjigovodstvo
i kakvi izvodi se tu prave .
Ili najbolje ako neko vec ima neki program da mi da da pogledam
samo kako to izgleda sa korisnicke strane ,a ja cu po uzoru na
taj program napraviti slican program za PP na veliko
Unapred zahvalan svakom ko nesto uradi po ovom pitanju
pozdrav, Vesko
clipper.335nitro,
HI
RESIO SAM ONO SA ZVEZDANIM NEBOM
evo kako potreban vam ce CA-TOOL biblioteka
CT.lib
primer
Set Key K_F12 To Scr_Saver() // pozivanje
zvezdanog neba sa
tasterom F12
KEYSEC(K_F12,Br_Secundi,-1,.T.) // Ceka broj sekundi
i ako nije nista
pritisnuto simulira
pritisak taster F12
PROC Scr_Saver
Set Key K_F12 To
KEYSEC()
........
I DALJE SE NALAZI ZV.NEBO
........
RETURN
clipper.336whitie,
> Inace to (proc) je provera pristiglog e-maila sa ostalih radnih stanica.
Provera? Ako u mreznom selu ne naredis drugacije, poruka ce ti uleteti
u svaki kliper program. Ako ti je poruka namenjena programu a ne korisniku
( simuliranje semafora, neki specificni trigeri po slogovima, obrada rifre-
sa ... ), onda svakako koristis neku od biblioteka za rad na mrezi. Sam
kliper je tu dosta tanak. Ja koristim ne tako populare Ca-Cliper Tools i
tu postoji NNETMSGKEY() koji u stanju cekanja imitira SET KEY. Poruku u
bekgraundu primi kliper, a dalju obradu poruke pristigle u bafer radi tvoja
proc.
> To bi vec zapravo bio TSR i nisam siguran da je problem resiv unutar CLIPPERa
Da to je TSR. Preseca se jedan interapt. Sto te to muci. Cisto programiraj
i ne brini... previse ;-) ! Dzaranje po mrezi i video memoriji graficke kar-
tice, setanje po ext memoriji i sl. uopste nisu elegantne i lake rabote. Al'
su zato slatke.
A ko voli lepe stvari mora se navici na likru u carapama. ;-)
Bljak. :-(((( ko ih izmisli ...
clipper.337livan,
-> To bi vec zapravo bio TSR, pa vise i nisam siguran da je problem resiv
-> unutar CLIPPERa. Jel' sam u pravu?
Mislim da je bolje da to uradiš u Clipperu nego da upetljavaš nekakve
TSR-ove. Pogledaj kako je to Batoćanin rešio. Ima članak o tome u
majskom broju PC PRESS-a. Nisam analizirao njegovo rešenje, ali
verovatno ti može pomoći.
clipper.338mr.cikila,
Hi!
Molim vas da mi odgovorita na ovo pitanje.
Razvijam neku aplikaciju te su mi default
clipper boje dosadile. Uz pomoc Funky-a,
sam procitao da mogu da menjam boje u
opsegu od 200.000 i kusur.
E sada kako to uraditi da recimo kada
dam SetColor('N/RB') u mom listungu ne
dobijem crvenu na nekoj roze podlozi,
vec neku boju na nekoj boji koju sam
ja unapred definisao sa r,g i b komponentom.
Pomalo ni je hitno, pa ko zna neka nakaci.
Every best!
clipper.339nenadovic,
ne znam koju verziju koristiš. u 5.3 sa grafikom postoji prosta
naredba GSETPAL koja svakoj od 16 boja daje određene RGB
karakteristike. za ranije verzije mislim da se problem može
rešiti preko CLIPPER TOOLS biblioteke
clipper.340sasab,
> Da li je moguće strpati u BLINKER EXECUTABLE CLIPPER direktivu
> za TEMP direktorijum koja se odnosi na deklarisanu TEMP
> enviroment promenljivu u AUTOEXEC.BAT datoteci. Znači nešto
> poput: BLI EXE CLI //TEMPPATH:%TEMP%
Ovo ne može, jer se %TEMP% u toku linkovanja razvija (evaluira),
tj. u exe će biti upisan tekući sadržaj environment promenljive
TEMP.
Znači ako si imao
set temp=c:Đtrtmrt
blinker fi myapp bli exe clipper //temppath:%temp%
prilikom izvršavanja aplikacije tražiće se direktorijum
c:Đtrtmrt, bez obzira na šta trenutno ukazivala prom TEMP.
> Znači, ovo bi bilo slično SET CLIPPER==//temppath s time što
> ja ne moram da razmišljam gde je kome TEMP dir. osim ako SET
> TEMP ne postoji u AUTOEXEC-u ?
A da aplikaciju startuješ batch fajlom
myapp //swappath:%temp% //temppath:%temp% ....
Samo pazi, ako direktorijum na koji ukazuje swappath ne postoji,
pozdraviće te Internal Error 5311 - VMM unable to create swap file.
Za temppath Internal Error 4424 - Temp file creation error.
To se neće javiti odmah po startovanju aplikacije nego tek (i ako)
zatreba swap ili temp fajl.
Bogi
clipper.341dvesic,
> Jedan od (mojih) instaliranih programa povremeno (ne uvek na istim
> mestima ali uvek u toku pisanja/izmena na disku ili azuriranja
> indeksa) javi CORRUPTION DETECTED. Znam sta to znaci, ali ne znam
> zasto. Svi ostali programi rade ok, windows radio ok... Ploca je
Koji RDD, koji indeksi ? Da li na mestu gde radiš izmenu sloga stoji
aktivan neki indeks i da li menjaš po ključu tog indeksa ?.
Generalna je preporuka da kada se radi Replace po polju koje ulazi u
aktivni indeks, uradite jedno Set Order To 0, Replace pa vratite indeks
Dodaj još koju informaciju za detaljniji pregled.
clipper.342cnenad,
=> Ovo ne može, jer se %TEMP% u toku linkovanja razvija (evaluira),
Pretpostavio sam da je tako, ali me mrzelo O:) da proveravam.
=> A da aplikaciju startuješ batch fajlom
Izvodljivo je samo u nekim situacijama jer se ponekad programu prosleđuju
argumenti sa komandne linije.
clipper.343mmarkovic,
> Jedan od (mojih) instaliranih programa povremeno (ne uvek na
> istim mestima ali uvek u toku pisanja/izmena na disku ili
> azuriranja indeksa) javi CORRUPTION DETECTED.
Ova greška obično znači da na nekom mestu nisi otvorio sve
indeksne fajlove, a dodavao si slogove. "Centralizuj" otvaranje
fajlova tako da ne možeš da zaboraviš neki...
> Clipper je, mislim, 5.2c. Da nije bag u clipper-u?
Možda, ali teško. Prelazi pod hitno na 5.2e. Ovaj bag mi ne deluje
da je do Clippera, ali ima drugih...
> Datoteke izgledaju sasvim normalno a, uz put, ni jedna nema vise od 1500
> slogova.
.dbf da, ali neki .ntx (ili šta već koristiš) nije...
A kad iz DBU-a otvoriš isti .dbf i sve pripadajuće indexe, javlja
li se greška? Ako je moja pretpostavka dobra, trebalo bi pri kretanju
kroz browse ili kod seek...
clipper.344mmarkovic,
> Izvodljivo je samo u nekim situacijama jer se ponekad programu
> prosleđuju argumenti sa komandne linije.
Nema veze, napravi ovako APP.BAT:
@echo off
myapp %1 %2 %3 %4 %5 //swappath:%temp% //temppath:%temp%
Uopšte ne smeta ako ima manje od 5 parametara. Teraj dalje ako treba.
clipper.345cnenad,
=> myapp %1 %2 %3 %4 %5 //swappath:%temp% //temppath:%temp%
Pazi, stvarno radi :) Mislio sam da će problem napraviti deo mog programa
koji kontroliše šta je uneto kao prekidač ali je izgleda Clipper bacio
negde u nebesa ono //info ili šta si ti naveo gore :)
clipper.346mr.cikila,
Hi!
Posle celih pet godina rada sa klipetom, resih da komplet
prepravim razne I/O,meni,... funkcije, pa stigoh do
generisanja izvestaja. Intresuje me kako da automatizujem
pravljenje odgovarajucih formi, tj. da ne vezujem za svaki
pregled po jednu proceduru za stampanje, a ne izgleda mi dovoljno
elegantno da izvestaj stampam u txt fajl koji cu prvo da
prikazem na ekranu(sa svim kontrolnim kodovima za bold,...),
pa zatim da stampam na stampacu.
Na pamet mi pade neka proc. koja u zavisnosti od oa se on seta.
Intresovalo bi me
kako bi se to radilo sa bazom od cirka 20000 stavki, tj.
brzina.
Znam da je naporno, ali udf se ne rade tako cesto.
Bye!
clipper.348nitro,
HI svim Clipovima
Dali neko zna kako u Clipper programima da uvacim da se izvrsava
neka od mojih funkcija a da program nastavi dalje sa radom
da se neka pozvana funkcija izvrsava sve vreme rada programa .
I kako da namestim zvuk da program odsvira dobrodoslicu a da
neceka da se zavrsi muzika vec da nastavi sa radom a muzika kad
se zavrsi zavrsi .
Nadm se da ste razumeli sta sam hteo da kazem , ako nisam
ponovicu ponovo
unapred hvala svakom ko zna nesto sto pomaze
Pozdrav , Vesko
clipper.349sasab,
> => A da aplikaciju startuješ batch fajlom
>
> Izvodljivo je samo u nekim situacijama jer se ponekad programu
> prosleđuju argumenti sa komandne linije.
myapp %1 %2 %3 %4 %5 %6 %7 .... //swappath:%temp% //temppath:%temp% ....
ili ako postoji 4DOS/NDOS
myapp %& //swappath:%temp% //temppath:%temp% ....
Argumenti sa prefiksom // su iz programa nevidljivi.
Proc Main(cP1)
? cP1
quit
pozvan sa
myapp //trtmrt
daće NIL
Bogi
clipper.350mr.cikila,
Hi!
Mora da mi je promakla ta naredba iz clp-a, ali posto sam
vec sve razvio, onda je sada vec kasno.
Inace imao sam jedan previd, te se izvinjavam svima koji
su izgubili vreme citajuci moju poruku, naime u ja nisam
uopste ulinkovao fajl koji sadrzi program za inicijalizaciju
boja, a nisam poziv procedure nisam izveo, te nije ni
cudo sto prg. nije radio :))
U svakom slucaju, hvala jod jednom.
Every best!
clipper.351mr.cikila,
Hi!
Da li ste primetili ovo. Clp 5.3+Blinker 3.1+Funcky
Maska karikirano izgleda ovako:
┌─────────────────────────────────────────────
│ Sifra ________ Opis _____________________ ....
I sta se desava?
Kada sam na prvom polju 'Sifra' sve je Ok. Cim stisnem Enter,
i predjem na polje 'Opis', brise mi se slovo O, te ostaje 'pis'
:))).
Intresuje me da li neko zna, zasto se ovo dogadja, i postoji li
mogucnost da se to zaobidje, jer sam ostavio 4 polja razmaka
izmedju zavrsetka get-a za sifru i Opis-a.
Every best!
P.S. Da li je slucajno menjao getsys.prg koji se dobija uz clp5.3,
tako da u vecim getovima, umesto space-a se pojave male boginje
(tako od miloste zovem one tackice, koje popunjavaju tu
prazninu, cek i u "najobicnijem" Norton Commanderu!)
clipper.352dr.grba,
Six 3 Eval za Clipper 5.2, preneto sa PRO-a po želji mog druga
Peacocka, koji se pati u kontaktu sa predmetnim sistemom.
Kolega modulatore, daj nalog da se prenese u direktorijum.
six3eval.zipclipper.354goxx,
da li bi neko mogao da okaci inkey.ch iz poslednje verizje clipper-a?
hitno mi je potreban, a ne mogu da samo zbog njega skidam arhivu sa
sezama.
Goran
clipper.355tomil,
> da li bi neko mogao da okaci inkey.ch iz poslednje verizje
> clipper-a?
Evo za verziju 5.2e.
inkey52e.zipclipper.356goxx,
puno hvala za inkey.ch
Goran
clipper.357nenadovic,
proveri picture za polje sifra, negde ti se u ~itanju menja
du`ina
`iveo clipper, dole fox !!
clipper.358nenadovic,
Narode zna li neko gde da na|em standard ili professional
verziju LLIBG za clipper?
'o}u grafiku !
clipper.359dr.grba,
Za mog nestrpljivog prijatelja Peacocka i za sezamovsku populaciju,
Blinker 3.3 Update, via SezamPro.
bli330en.zipclipper.360tvucko,
EditsofT , 21000 Novi Sad, Vojvodjanskih brigada 7/XIII
Tel. (021) 29-857
clipper.361stameni,
Interesuju me "lične karte" Clippera 5.2 i starijih verzija,
odnosno koliko su veliki i kakav im je hardver potreban.
clipper.362kamioni,
Interesuje me kako u Clipperu 5.3 da napravim mogucnost da vidim slike PCX ili
nekog drugog formata, ali da ne koristim one fajlove koji se nalaze na Sezamu
jer traze registraciju LIB-a.
Unapred zahvalan.
clipper.363mmarkovic,
> Interesuju me "lične karte" Clippera 5.2 i starijih verzija,
> odnosno koliko su veliki i kakav im je hardver potreban.
Najnovija verzija je 5.2e (ima i 5.3, ali pitaš za 5.2),
sasvim se udobno radi na 386DX-40MHz sa 2-4 MB RAM-a.
Obavezno uzmi i BLINKER linker i SIX biblioteku...
Aplikacije takođe odlično rade na ovoj platformi, mada može čak i
skromnija.
Instalacija ide na 3 x 1.44 diskete.
P.S. Zanemari starije verzije (eventualno može 5.01a),
i ovo je već pregaženo...
clipper.364cnenad,
=> Aplikacije takođe odlično rade na ovoj platformi, mada može čak i
=> skromnija.
Ipak je na 286 mnogo sporo pa treba izbegavati. Ako je još disk stariji, pa
makina ima samo 1 Mb, ma treba zaboraviti.
=> P.S. Zanemari starije verzije (eventualno može 5.01a),
Najbolja je varijanta koju si opisao:
5.2 + patch na 5.2e
Blinker 3.2
Six RDD 2 + patch(evi)
clipper.365arazumenic,
-> Najnovija verzija je 5.2e (ima i 5.3, ali pitas za 5.2),
-> sasvim se udobno radi na 386DX-40MHz sa 2-4 MB RAM-a.
Sasvim udobno radi i na 286 sa 1Mb RAM-a.
-> Obavezno uzmi i BLINKER linker i SIX biblioteku...
Zavisi. Ako ne treba da radi u protected modu, onda je (po meni) ipak bolji
rtlink koji stize uz sam Clipper.
clipper.366mmarkovic,
> -> Obavezno uzmi i BLINKER linker i SIX biblioteku...
> Zavisi. Ako ne treba da radi u protected modu, onda je (po
> meni) ipak bolji rtlink koji stize uz sam Clipper.
BLINKER _ne znači_ obavezno protected mod. Preporučio sam ga
zbog inkrementalnog linkovanja, brzine!
Ako je bitna veličina EXE-a, onda je RTLINK u PLL modu bolji...
clipper.367arazumenic,
-> BLINKER _ne znaci_ obavezno protected mod. Preporucio sam ga
-> zbog inkrementalnog linkovanja, brzine!
Naravno da blinker ne znaci obavezno protected mod.
Ja sam govorio o izvrsnim verzijama programa a ne razvojnim. Za razvoj je
blinker neuporedivo bolji. Takodje ako je ciljni racunar 386 sa 4 MB memorije,
ili bolji, onda je opet blinker zbog protected moda u prednosti. Ali, s
obzirom da se i dan danas koriste 286 i 386SX racunari sa 1-2MB RAM-a, onda je
tu bolji rtlink.
-> Ako je bitna velicina EXE-a, onda je RTLINK u PLL modu bolji...
PLL nisam u nikada koristio, osim kada sam ga probao da vidim kako radi.
Nesto mi se tu nije svidelo, ali sada vise ne znam sta.
clipper.368mmarkovic,
> Naravno da blinker ne znaci obavezno protected mod.
Učinilo mi se da si to rekao i da bi čovek tako
mogao da shvati.
>-> Ako je bitna velicina EXE-a, onda je RTLINK u PLL modu bolji...
> PLL nisam u nikada koristio, osim kada sam ga probao da vidim kako radi.
> Nesto mi se tu nije svidelo, ali sada vise ne znam sta.
Za RTLINK u PLL modu:
Mogle su da ti se ne svide sledeće stvari:
1. Kad god izvršiš update clippera, stari programi ne rade
do kompajliranja i linkovanja sa novoizgrađenom .PLL bibliotekom
2. Takav EXE traži nešto više RAM-a pošto su u PLL-u i
neke "višak" stvari za konkretan program
3. Obzirom da u RAM-u ima i nepotrebnih stvari, sigurno
je da program radi sporije nego što bi trebalo
(mada ovo nisam merio...)
Mogle su da ti se svide sledeće stvari (u PLL modu):
1. _Mnogo_ brže linkovanje...
2. _Mnogo_ manji EXE...
clipper.369arazumenic,
-> 1. Kad god izvrsis update clippera, stari programi ne rade
-> do kompajliranja i linkovanja sa novoizgradenom .PLL bibliotekom
BINGO!
To je to. Upravo mi se to desilo, i zbog toga sam ga i batalio.
clipper.370bokir,
Ima li novosti o Six-u za Clipper 5.3?
clipper.371bokir,
Kako da u protected mode programu dobijem moju funkciju za obradu
grešaka, a ne "Protection Error". ErrorBlock() mi radi samo u real
modu.
Koristim Clipper 5.2e + Blinker 3.3
clipper.372arazumenic,
-> 1. Kad god izvrsis update clippera, stari programi ne rade
-> do kompajliranja i linkovanja sa novoizgradenom .PLL bibliotekom
BINGO!
To je to. Upravo mi se to desilo, i zbog toga sam ga i batalio.
clipper.373dvesic,
> ili bolji, onda je opet blinker zbog protected moda u prednosti.
> Ali, s obzirom da se i dan danas koriste 286 i 386SX racunari sa
> 1-2MB RAM-a, onda je tu bolji rtlink.
Zašto ?
Ako može malo detaljnije ...
clipper.374bokir,
Ima li neko podršku za srpski jezik za Six 2.03?
clipper.375arazumenic,
-> Zasto ?
->
-> Ako moze malo detaljnije ...
Onaj famozni VMIF, koji se mnogo cesce javlja sa blinkerom nego sa rtlinkom.
clipper.376tomil,
Šta znači greška:
Unrecoverable error 650: Processor stack fault ?
Nije opisano u NG.
Clipper 5.2e + Blinker 3.1, eksterna biblioteka Artful Gold.
clipper.377mvincic,
> Šta znači greška:
>
> Unrecoverable error 650: Processor stack fault ?
Ova poruka se javlja ako postoji greška u Clipper sistemu za
obradu run time grešaka ErrorHandler (u Errorsys.prg) . U
situaciji kad ti se javi prva greška, automatski se poziva
ErrorHandler, koji i sam ima grešku, pa rekurzivno poziva
samog sebe, dok ga konačno ne izbaci poruka processor stack fault.
clipper.378sasab,
--- Odgovor na baze.podataka.167, mmarkovic
>> Clipper, Fox i slične alatke šibaju kroz mrežu celu tabelu
>> (DBF i indeksne fajlove), pa se onda ista na radnoj stanici
>> pretražuje i tek onda sabiraju vrednosti polja.
>
> Samo u slučaju loše napisanih obrada-selekcija sa upotrebom
> FOR klauzule (ili SET FILTER). Ako koristiš neki optimizator
> upita (SIX RDD sa MachSIX, Comix), čak ni to. Onda FOR u
> Clipperu postaje jednako efikasan kao WHERE u SQL-u. Dakle,
> šalju se stvarno samo slogovi koji ispunjavaju uslov,
> analizirajući indekse.
Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz
novel mrežu ide cela tabela. Optimizacija, filtriranje, scope...
sve se to radi u lokalu. Za filtriranje direktno na serveru
ti treba neki NLM (verovatno onaj koga tražiš pitaj boga od
kada :).
--- Odgovor na baze.podataka.183, dvesic
> Nema tu neke magije, MachSix ili Comix koristi dostupne
> informacije o postojećim indeksima nad tabelom i pokušava da
> suzi broj slogova koe treba obraditi.
Ali se taj pokušaj vrši lokalno. Sa servera se opet dovlači cela
tabela.
Bogi
clipper.379mmarkovic,
> Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz
> novel mrežu ide cela tabela. Optimizacija, filtriranje,
> scope... sve se to radi u lokalu. Za filtriranje direktno na
> serveru ti treba neki NLM (verovatno onaj koga tražiš pitaj
> boga od kada :).
Nisi u pravu, a zbog skepticizma imam utisak da nisi ni probao. ;)
I ja sam bio skeptik, ali proba me je razuverila.
Analizom indeksa, a u indeksu samo jedno-dva-tri polja (pa je mnogo
manji) optimizator dolazi do brojeva slogova, pa dovlači samo njih.
Taj NLM može da bude strašno efikasan kada se od njega zahteva, recimo,
indeksiranje. Obavlja se na "lokalnom" disku (naravno, sa stanovišta
servera). Filteri i uslovne naredbe, takođe mogu da budu efikasnije, ali
ne verujem baš toliko. Zato se i nisam tako mnogo trudio da nabavim
NLM.
Ozbiljni Clipper programeri nikada nisu ni koristili filtere i FOR
klauzule. Scope sam realizovao custom skiperima u Tbrowse objektima.
Zato prosto linkovanje i ne daje rezultate kada su programi pisani
tako da ne računaju na ove naredbe.
Ali! Kada računaš na ove osobine, rezultati umeju da budu fenomenalni.
> Ali se taj pokušaj vrši lokalno. Sa servera se opet dovlači cela tabela.
Kao što rekoh, jok mori!
P.S. Sećaš se daaavne diskusije na niškom BBS-u Tangram? Six-MachSix kao
da su napisali po mojim željama! Ma, ko li im je javio?!? ;)))
clipper.380whitie,
>>> Clipper, Fox i slicne alatke sibaju kroz mrezu celu tabelu
>>> (DBF i indeksne fajlove), pa se onda ista na radnoj stanici
>>> pretrazuje i tek onda sabiraju vrednosti polja.
>> ...
> Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz
> novel mrezu ide cela tabela. Optimizacija, filtriranje,
> scope... sve se to radi u lokalu.
:-)
Moze biti, mada, neces mi verovati, ta ista cela tabela
kroz eternet proleti 100 puta brze kada je ukljucen indeks. :-)
Da ne dokazujemo nesto sto je jasno. Kroz mrezu ide ceo indeksni
fajl, a dbf i ostali indeksi samo ono sto ti treba.
clipper.381madamov,
> Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz
> novel mrežu ide cela tabela. Optimizacija, filtriranje, scope...
> sve se to radi u lokalu.
Uze mi reč, tj. pitanje, sa tastature. Otud i moje pitanje u temi
baze.podataka da li se nešto mora instalirati i na serveru.
clipper.382madamov,
> Analizom indeksa, a u indeksu samo jedno-dva-tri polja (pa je mnogo
> manji) optimizator dolazi do brojeva slogova, pa dovlači samo njih.
Znači on interno, bez pomoći servera, pošto dovuče ceo indeksni fajl preko
mreže, vrši sam seek-ovanje po fajlu tabele kojeg normalno otvori kao i svaki
drugi fajl sa mrežnog diska? Novell, pretpostavljam, ima neku komandu s kojom
se ovo može optimizovati da razlike u brzini budu primetne i na manjim
fajlovima? Ovakva tehnika ima rezultate na velikim tabelama (mada je onda i
indeksni fajl velik, a njega mora celog da dovuče na radnu stanicu da bi
obavio pretraživanje), na malim je to priličan overhead, što bi rekli
anglosaksonci.
clipper.383madamov,
> Kroz mrezu ide ceo indeksni fajl, a dbf i ostali indeksi samo ono sto ti
treba.
Što će reći da čim upotrebiš pretraživanje po polju koje nije indeksirano, eto
tebi cele tabele preko mreže na radnu stanicu da ona izvrši pretraživanje.
clipper.384mmarkovic,
> Da ne dokazujemo nesto sto je jasno. Kroz mrezu ide ceo
> indeksni fajl, a dbf i ostali indeksi samo ono sto ti treba.
Ma čak ni on! Idu samo slogovi koji ispunjavaju uslov
ako je ključ indexa pogodan. Naravno, paziš šta ti je
ključ i kako postavljaš uslove...
clipper.385mmarkovic,
> Ovakva tehnika ima rezultate na velikim tabelama (mada je onda i
> indeksni fajl velik, a njega mora celog da dovuče na radnu
> stanicu da bi obavio pretraživanje), ...
Ma, odakle vam ideja da kopira ceo indeksni fajl na radnu stanicu?!?
Indeksni fajl je binarno stablo, pristup fajlovima je random,
nema nikakve potrebe da se dovlači ceo indeksni fajl.
Clipper mrežni disk vidi potpuno isto kao lokalni, samo u
današnjim uslovima sporiji. Lockovi su mogući i na lokalnom
disku (DOS SHARE), a Clipper i NetWare poštuju DOS pozive.
Obaviću sutra experiment sa recimo, 100.000 slogova i rezultatima.
clipper.386mmarkovic,
> Što će reći da čim upotrebiš pretraživanje po polju koje
> nije indeksirano, eto tebi cele tabele preko mreže na
> radnu stanicu da ona izvrši pretraživanje.
Ovo je tačno. A gde bi moglo drugačije?
clipper.387whitie,
>> Kroz mrezu ide ceo indeksni fajl,
>
> Sto ce reci da cim upotrebis pretrazivanje po polju koje nije
> indeksirano, eto tebi cele tabele preko mreze na radnu stanicu
Prvo,- scope komande ce u tom slucaju izazvati gresku i prekid pro-
grama, pa na stanicu ne stize nista :-) .
Drugo,- ovako se nesto radi ili kad neznas da organizujes podatke,
ili kad ti je to pretrazivanje potrebno jednom u sto godina. U svim
drugim slucajevima indeks postoji.
I trece,- u realnim uslovima ( transakcije, semafori, provera prava
prisustva, formirani pogledi, medjuserverna saradnja, miroring ... )
ovaj ce zahtev zamrznuti svaki DB server ma kako se on zvao ...
clipper.388whitie,
>> Kroz mrezu ide ceo indeksni fajl,
>
> Ma cak ni on!
Ma jasno. Htedoh reci da se DBF fajl 'ubode' tacno u potreban
slog, a za indeks treba da se prosetas po 'drvcetu' da ubodes ono
sto ti treba. Ako si vec na pravom mestu nema mrdanja.
clipper.389firus,
> Indeksni fajl je binarno stablo, pristup fajlovima je random,
> nema nikakve potrebe da se dovlaci ceo indeksni fajl.
BTW, ne bih smeo da se zakunem (nikada nisam koristio
doticni), al' verujem da je _i_ kod Clipper-a, kao kod 99%
ostalih DBMS-a za PC (ako ih smem tako nazvati, posto se ne
uklapaju svi bas u potpunosti u definiciju) indeksni fajl
B-stablo koje _nije_ ista stvar kao i binarno stablo (u sustini,
u vrlo specijalnim okolnostima, binarno stablo _jeste_ poseban
slucaj B-stabla).
Jes' da ovo sto sam rek'o nema direktne veze sa temom, al'
mislim da je korisno znati.
clipper.393mmarkovic,
>> Indeksni fajl je binarno stablo, pristup fajlovima je random,
>> nema nikakve potrebe da se dovlaci ceo indeksni fajl.
>
> BTW, ne bih smeo da se zakunem (nikada nisam koristio
> doticni), al' verujem da je _i_ kod Clipper-a, kao kod 99%
> ostalih DBMS-a za PC (ako ih smem tako nazvati, posto se ne
> uklapaju svi bas u potpunosti u definiciju)...
Apsolutno si u pravu. Clipper je samo programski jezik,
daleko odmakao od dBase-a, posebno dobro prilagođen obradi podataka,
ali definitivno nije DBMS.
> ...indeksni fajl B-stablo koje _nije_ ista stvar kao i binarno stablo
> (u sustini, u vrlo specijalnim okolnostima, binarno stablo _jeste_
> poseban slucaj B-stabla).
Nisam se ovim nikada detaljno bavio, bilo mi je dovoljno
da stvar funkcioniše. Ali, bilo bi lepo, ako te ne mrzi, da
opširnije napišeš jednu porukicu ;) o B-stablima, binarnim stablima
> Jes' da ovo sto sam rek'o nema direktne veze sa temom, al'
> mislim da je korisno znati.
Ima, kako da nema! Nećemo valjda da samo razmenjujemo cenovnike.
clipper.395sasab,
> Da ne dokazujemo nesto sto je jasno. Kroz mrezu ide ceo
> indeksni fajl, a dbf i ostali indeksi samo ono sto ti treba.
Ne moramo da dokazujemo, ali bilo bi OK da se da razjašnjenje.
Probaću sutra. Linkovaću sa i bez optimizacije i proveriti koliko
je kila sa servera stiglo stanici.
clipper.396madamov,
> Ma, odakle vam ideja da kopira ceo indeksni fajl na radnu stanicu?!?
Najlogičnije je, malo je previše da radi i SEEK po indeksima, jer je to jedini
način da, bez ičega instaliranog na serveru, sam obavi posao brže od kopiranja
cele tabele i svih indeksa preko mreže.
clipper.397madamov,
> > Što će reći da čim upotrebiš pretraživanje po polju koje
> > nije indeksirano, eto tebi cele tabele preko mreže na
> > radnu stanicu da ona izvrši pretraživanje.
>
> Ovo je tačno. A gde bi moglo drugačije?
Drugačije je kod svega što ima klijent-server arhitekturu. Bez obzira kakvo je
polje, indeksirano ili ne, pretraživanje uvek obavlja server, klijent samo
šalje upit i dobija rezultat u obliku dinamičke selekcije slogova na serveru.
On posle na toj selekciji može da vrši dodatna pretraživanja da bi je suzio,
bez da išta prođe kroz mrežu, osim eventualno samo prvog sloga te selekcije.
clipper.398madamov,
> Drugo,- ovako se nesto radi ili kad neznas da organizujes podatke,
> ili kad ti je to pretrazivanje potrebno jednom u sto godina. U svim
> drugim slucajevima indeks postoji.
Nije tačno, tvoj rezon na kraju dovodi do toga da se svako polje indeksira što
je bespotrebno trošenje prostora i resursa. Moguće je da korisnik pokrene
pretraživanje po neindeksiranom polju, dakle umesto po šifri kupca krene po
punom nazivu kupca koji nije indeksiran. Naravno, ako se takva pretraživanja
često ponavljaju, onda polje svakako treba indeksirati.
> I trece,- u realnim uslovima ( transakcije, semafori, provera prava
> prisustva, formirani pogledi, medjuserverna saradnja, miroring ... )
> ovaj ce zahtev zamrznuti svaki DB server ma kako se on zvao ...
Ja znam za jednog kojeg neće, iz moje prakse na uzorku od 300.000 slogova, a
iz tuđe na nekih 4.000.000 slogova.
clipper.399sasab,
> Nisi u pravu, a zbog skepticizma imam utisak da nisi ni probao.
Ma probao sam, ali dobici baš i nisu spektakularni. Doduše u
uputstvu i piše da su rezultati najbolji kada nije selektovan ni
jedan tag, ali meni u 99% posto slučajeva trebaju rezultati po nekom
redosledu. Linkujem MachSix čisto nek se nađe, ali nešto ne vidim
efekte.
> P.S. Sećaš se daaavne diskusije na niškom BBS-u Tangram?
> Six-MachSix kao da su napisali po mojim željama! Ma, ko li im
Eh, tada me Clipper nije mnogo zanimao, pa nisam pratio.
Bogi
clipper.400sasab,
>>> Kroz mrezu ide ceo indeksni fajl,
>>
>> Ma cak ni on!
>
> Ma jasno. Htedoh reci da se DBF fajl 'ubode' tacno u potreban
> slog, a za indeks treba da se prosetas po 'drvcetu' da ubodes
> ono sto ti treba. Ako si vec na pravom mestu nema mrdanja.
Hm, ima logike. Nije mi palo na pamet da razmišljam ovako.
Jednostavno sam posle par primera, primio rezultate (prilično slabe)
zdravo za gotovo.
Kao što rekoh, probaću ponovo.
Bogi
clipper.401mmarkovic,
> Obaviću sutra experiment sa recimo, 100.000 slogova i rezultatima.
Pošto znam da bi vas mrzelo da probate, u prilogu je fajl za
Neverne Tome ;).
SIXOPT.ARJ = PROBA.LNK, PROBA.RMK i PROBA.PRG...
Prevedite sa RMAKE PROBA
Prvi put ga pokrenite sa
PROBA /C 100000
a kasnije samo sa
PROBA
Rezultati sa optimizacijom su 0.2-0.3 : 20 sekundi, a sa porastom
broja slogova, odnos je još i bolji.
Na mrežnom disku su rezultati oko 2.5x slabiji što je i odnos
brzina pristupa lokalni HD/mrežni HD.
Potreban vam je Clipper 5.2, Six 2, Blinker 3.1...
P.S. Ako treba, da šaljem PROBA.EXE (oko 500K) ? madamov?
P.S." Hrabriji i strpljiviji neka skinu * sa BROWSE(), i, neka
probaju da se kreću kroz tabelu... ;)
sixopt.arjclipper.402mmarkovic,
>> Ma, odakle vam ideja da kopira ceo indeksni fajl na radnu stanicu?!?
>
> Najlogičnije je, malo je previše da radi i SEEK po indeksima, jer je to
> jedini način da, bez ičega instaliranog na serveru, sam obavi posao brže
> od kopiranja cele tabele i svih indeksa preko mreže.
E, baš to radi... :) Dobra biblioteka!
clipper.403mmarkovic,
>> Nisi u pravu, a zbog skepticizma imam utisak da nisi ni probao.
>
> Ma probao sam, ali dobici baš i nisu spektakularni. Doduše u
> uputstvu i piše da su rezultati najbolji kada nije selektovan
> ni jedan tag, ali meni u 99% posto slučajeva trebaju rezultati
> po nekom redosledu. Linkujem MachSix čisto nek se nađe, ali
> nešto ne vidim efekte.
Nemaš u programima naredbe na kojima bi efekti bili drastični.
Ni u mom BIS-u efekata ne bi bilo, SIX/MACHSIX tada nisu postajali
i sve je rađeno klasično: seek <key> ; while <uslov>; ... ;end
clipper.404mmarkovic,
>> Ovo je tačno. A gde bi moglo drugačije?
>
> Drugačije je kod svega što ima klijent-server arhitekturu. Bez
> obzira kakvo je polje, indeksirano ili ne, pretraživanje uvek
> obavlja server, klijent samo šalje upit i dobija rezultat u
> obliku dinamičke selekcije slogova na serveru. On posle na toj
> selekciji može da vrši dodatna pretraživanja da bi je suzio,
> bez da išta prođe kroz mrežu, osim eventualno samo prvog sloga
> te selekcije.
Brzina pretraživanja na serveru može da bude samo nekoliko puta veća.
Ovde govorimo o dobicima od nekoliko desetina do stotina
puta (ako se koristi indeks).
Dakle, ako se ne koriste indeksi, ne pomažu ni kožne gaće, a kamo
li klijent-server arhitektura... ;)
clipper.405mmarkovic,
> Nije tačno, tvoj rezon na kraju dovodi do toga da se svako
> polje indeksira što je bespotrebno trošenje prostora i resursa.
Naravno da ovde treba biti umeren.
clipper.406firus,
>> ...indeksni fajl B-stablo koje _nije_ ista stvar kao i binarno
>> stablo (u sustini, u vrlo specijalnim okolnostima, binarno
>> stablo _jeste_ poseban slucaj B-stabla).
>
> Nisam se ovim nikada detaljno bavio, bilo mi je dovoljno
> da stvar funkcionise. Ali, bilo bi lepo, ako te ne mrzi, da
> opsirnije napises jednu porukicu ;) o B-stablima, binarnim
> stablima
Ne mrzi me, al' malko sam u frci ovih dana - pokusavam
da navucem uslov za upis godine, tako da ce ovo morati da
priceka do, otprilike, 02.01. tekuce godine. Posle toga
cu pripremiti par tekstova o ovome, uz malo sorsa u
(najverovatnije) C-u, premda mi Pascal (ili Modula 2) deluje
kao razumnije resenje za predstavljanje i ilustraciju nekog
algoritma - zato na ostalima je da odluce: C ili Pascal !?
Zahvaljujem na razumevanju ... B)))
clipper.407firus,
> priceka do, otprilike, 02.01. tekuce godine. Posle toga
^^
Mali lapsus tastaturas ... Ocigledno je da treba 10. ...
clipper.408mmarkovic,
> Ma probao sam, ali dobici baš i nisu spektakularni. Doduše u
> uputstvu i piše da su rezultati najbolji kada nije selektovan
> ni jedan tag, ali meni u 99% posto slučajeva trebaju rezultati
> po nekom redosledu.
Razlika nije tako velika. Ako ti u obradi nije važno kojim
redom ide, isplati se da redosled bude "natural". U svakom
slučaju, nije neka razlika. Efikasan je i ovako i onako.
> Linkujem MachSix čisto nek se nađe, ali nešto ne vidim efekte.
Samo ga ti linkuj, pogotovu ako imaš situaciju da korisnik
"sam" sastavlja filter.
clipper.409madamov,
> P.S. Ako treba, da šaljem PROBA.EXE (oko 500K) ? madamov?
Hvala, ali nema potrebe. Jedino ako neko drug iizrazi želju.
clipper.410madamov,
> Brzina pretraživanja na serveru može da bude samo nekoliko puta veća.
Od čega? Brzine pretraživanja na radnoj stanici? Samo pretraživanje možda, što
zavisi od toga kakvu konfiguraciju servera i radne stanice imaš, ali da bi
radna stanica dobila ono što treba da pretraži, to mora da prođe kroz mrežu.
Bilo koji server će pre da opsluži 100 zahteva za određenom selekcijom, nego
što će slogovi koje treba pretražiti proći kroz mrežu do radne stanice.
> Dakle, ako se ne koriste indeksi, ne pomažu ni kožne gaće, a kamo
> li klijent-server arhitektura... ;)
Pomaže, itekako, samim tim što sve to ne prolazi kroz mrežu da bi se posle
pretražilo na klijentu.
clipper.411madamov,
> Naravno da ovde treba biti umeren.
Što ne znači da ti nekom prilikom, ma koliko ona retka bila, neće biti
potrebno pretraživanje po neindeksiranom polju.
clipper.412mmarkovic,
> Posle toga cu pripremiti par tekstova o ovome, uz malo sorsa u
> (najverovatnije) C-u, premda mi Pascal (ili Modula 2) deluje
> kao razumnije resenje za predstavljanje i ilustraciju nekog
> algoritma - zato na ostalima je da odluce: C ili Pascal !?
Pošto sam te povukao za jezik ;), predlažem ipak Pascal - naj-
čitljivije je. Kompajleri su rasprostranjeniji, ako treba nešto
iskompajlirati (nego za Modulu 2).
Takođe, predlažem da pređeš sa teme PCPROG.6/clipper na PCPROG.6/razno,
biće više čitalaca.
> Zahvaljujem na razumevanju ... B)))
Ništa, ništa... ;) Čekamo ;)
clipper.413mmarkovic,
> Od čega? Brzine pretraživanja na radnoj stanici? Samo
> pretraživanje možda, što zavisi od toga kakvu konfiguraciju
> servera i radne stanice imaš, ali da bi radna stanica dobila
> ono što treba da pretraži, to mora da prođe kroz mrežu.
Da, mislio sam na to da je protok podataka 2-3 puta veći i
da je server 2-3 puta brži. To daje brzinu veću 4-9 puta, što
i nije nešto posebno. Čak i da je odnos još par puta bolji, ne
menja suštinu.
Suština je: ne mogu da poverujem da je nešto bazirano na
klijent-server arhitekturi, a da ne koristi indekse za selekciju.
Ili drugačije: čak i ne-klijent-server baza podataka (npr baza
realizovana Clipperom kao sredstvom), će potući po performansama
i klijent-server bazu, AKO ona ne koristi indekse (što ne verujem...)
> Bilo koji server će pre da opsluži 100 zahteva za određenom
> selekcijom, nego što će slogovi koje treba pretražiti proći
> kroz mrežu do radne stanice.
Ne znam sa kojom bazom i kojim DBMS-om ti radiš. Ja radim u banci
i garantujem da operateri bar 90% vremena provode u unosu podataka.
100 zahteva za nekom selekcijom? Teško... Mreža nije bila usko grlo.
clipper.414mmarkovic,
>> P.S. Ako treba, da šaljem PROBA.EXE (oko 500K) ? madamov?
> Hvala, ali nema potrebe. Jedino ako neko drug iizrazi želju.
Šaljem ipak, pogotovu što je veličina ipak duplo manja
kad se arhivira... ;)
proba.arjclipper.415sasab,
> Bez obzira na optimizator (MachSIX, Rushmore...) uvek kroz
> novel mrežu ide cela tabela. Optimizacija, filtriranje,
> scope... sve se to radi u lokalu. Za filtriranje direktno na
> serveru
Khm, khm. Pokrivam se ušima.
Elem
locate for id=="55"
Tabela ima 160970 slogova - oko 25 MB i 5 indeksa u vreći dužine oko
5 MB. Slog koji zadovoljava uslov je fizički zadnji u tabeli.
Ni prvi ni drugi tag u sebi ne sadrže polje id. Sa postavljenim
prvim tagom slog pada otprilike na sredinu tabele. Sa drugim tagom
slog je opet na kraju tabele. Rezultati:
Sa Mach6 Bez Mach6
---------------------------
Order 0 0.22 s 160.49 s // Vreme izvršavanja
18 KB 24852 KB // Prevučeno sa servera
---------------------------
Order 1 5.88 s 141.49 s
368 KB 14938 KB
---------------------------
Order 2 16.81 s 828.80 s
1479 KB 81940 KB (*)
Razlog za moju u citatu navedenu zabludu: nemam naviku da u koristim
locate for/continue. Obično je to oblika
do while ...
locate REST for ...
skip ####
enddo
Kada sam prvi put testirao MachSIX koristio sam upravo ovakvu
konstrukciju, jer mi je uglavnom to jedno od uskih grla u programima.
Rezultati su bili nikakvi jer (citiram NG za MachSIX):
<scope> is the portion of the current database file in which to
perform a LOCATE. The default scope is ALL records. Mach SIx
supports the ALL scope only.
###########################
što će reći da meni upit uopšte nije ni bio optimizovan, te sam ja
brzopleto zaključio da od optimizacije nema ništa (i požurio da to
svima objavim - šta ćete kada brže kucam nego što razmišljam i čitam
dokumentaciju:).
Tolko što se tiče optimizacije. A sad ima li neko objašnjenje za
rezultat označen sa (*)? Otkud 80 i kusur mega? Obarao server,
puštao ponovo samo ovaj primer i ista brojka.
Bogi
clipper.416nenadovic,
Ako neko od prisutnih radi na clipper 5.3 i zna kako da napravi
izvr{ni fajl sa blinkerom u real modu a da ima 800 i vi{e
kilobajta nek mi se javi. Ja sam sva{ta probao i ~esto dobijao
~uvenu poruku 'conventional memory exausted'.
Isto tako interesuje me i da li je neko uspeo da napravi exe za
protected mod koji radi bez usporavanja na manje od 4 mb.
pozdrav
clipper.417mmarkovic,
> locate for id=="55"
Što "locate" crni Sale, što ne "seek" ?!?
> Ni prvi ni drugi tag u sebi ne sadrže polje id.
Da bi izraz mogao da se optimizira, BAR jedan tag mora da
počinje poljem ID, ili da bude samo po ID. Dakle, treći
tag ti je takav (order 2). Zato se i čudim šta će ti
locate umesto:
set order to 3
seek "55"
set order to X
...
> Tolko što se tiče optimizacije. A sad ima li neko
> objašnjenje za rezultat označen sa (*)? Otkud 80 i kusur mega?
Vala, možda su nešto gadno zabrljali u Nantucketu/CA... Mnogo je,
pa ukupno ima 30 mega?!?
Pošalji bitne delove strukture i test program, pa da vidimo.
Koji je RDD korišćen?
clipper.419sasab,
> Što "locate" crni Sale, što ne "seek" ?!?
Ovo je samo test. Namerno sam išao na najgori mogući
slučaj (zadnji slog u tabeli bez seek-a).
> Da bi izraz mogao da se optimizira, BAR jedan tag mora da
> počinje poljem ID, ili da bude samo po ID. Dakle, treći
Postoji order koji sadrži počinje sa ID.
> Vala, možda su nešto gadno zabrljali u Nantucketu/CA... Mnogo
> je, pa ukupno ima 30 mega?!?
#include "sixnsx.ch" // v 2.03
#include "machsix.ch" // v 2.01.02
Procedure Main()
Local nSec
sx_AutoOpen(.t.)
use f:ĐsasaĐsta9601 new
nSec:=Seconds()
locate for id=="55"
? Seconds()-nSec
quit
Bogi
clipper.420whitie,
>> Drugo, ovako se nesto radi ...
>> ... kad ti je to pretrazivanje potrebno jednom u sto godina
> Sto ne znaci da ti nekom prilikom, ma koliko ona retka bila...
Okej, prihvatam tvoju formulaciju, gornjih " ... sto godina ..."
prepraviti u " ... vrlo retka prilika ... " .
> Ja znam za jednog kojeg nece, iz moje prakse na uzorku od
> 300.000 slogova, a iz tude na nekih 4.000.000 slogova.
Broj slogova ne kaze nista o aplikaciji, programu i/li DB
serveru, pa ovo ne bi komentarisao ...
Six u svom demo programu maltretira bazu od 10000 slogova. Svi
moguci rezultati su u stotinkama sekunde, ali to niko ziv ne shvata
ozbiljno.
clipper.421whitie,
>> locate for id=="55"
>
> Sto "locate" crni Sale, sto ne "seek" ?!?
Momak testira six-ovu inteligenciju na stvarima koje nisu trivijalne.
Kao sto se vidi, radi se o ozbiljnom programu. Ne znam samo zasto ne
koristi komandu, da mu sam program da procenu, koliko moze da pomogne.
// m6_IsOptimize () //
clipper.422whitie,
> Sa Mach6 Bez Mach6
> ---------------------------
> Order 0 0.22 s 160.49 s // Vreme izvrsavanja
> 18 KB 24852 KB // Prevuceno sa servera
> ---------------------------
> Order 1 5.88 s 141.49 s
> 368 KB 14938 KB
> ---------------------------
> Order 2 16.81 s 828.80 s
> 1479 KB 81940 KB (*)
Da probamo da komentarisemo, ali bez pretenzija da sve znamo i shvatamo.
Sa siksom je dosta brze i to ne treba komentarisati. Da nije tako ne bi
ga ni koristili. // mec6 vise nije odvojena lib, pa zato pominjem siks //
Ni jedan tag nije bio onaj pravi. U protivnom, siks bi ga nasao bez
obzira na aktivan order i vremena bi bila ista. U nedostatku kreiranog,
siks kreira temporalni tag. Aktivni tag mu u tome aktivno odmaze, i kao
sto se iz tabeli vidi, i kao sto siks savetuje, u takvim prilikama treba
SET TAG TO . Ako je to koncepcijski moguce, ustede su znatne - vidi gore!
Komentar desne kolone bi se sveo na grubu silu. Vremena su proporcio-
nalna kolicini podataka. Tome treba dodati da bios cita cele sektore,
bez obzira na duzinu sloga. Zato bi saobracaj sa diskom trebao biti uvek
bitno veci od ocekivanog. Tu sad dolaze kesevi: kliperov, dosov pa novelov.
Oni dosta rasterene resurse, ali ni oni ne prezive datoteke od 25 mega.
Tada vidis koliko ti je gola snaga disk sistema. Odatle ona cifra (*).
PS.Nadam se da sad neces reci da si dao fol rezultate da nas navuces :-)))
clipper.423mmarkovic,
> Ovo je samo test. Namerno sam išao na najgori mogući
> slučaj (zadnji slog u tabeli bez seek-a).
Uf! Dobro je! Nekako mi se učini da si prvi put to imao
u aplikaciji... Ma ne bi Sale... ;)))
clipper.424mmarkovic,
> Momak testira six-ovu inteligenciju na stvarima koje nisu
> trivijalne.
Ma, ja sam loše pročitao poruku, učini mi se da u aplikaciji
ima locate, a ne seek. To je nekada retko bilo upotrebljivo,
sa mach6 već može...
Dakle, počeću da nosim naočare... :)
clipper.425velicko,
> Samo ga ti linkuj, pogotovu ako imaš situaciju da korisnik
> "sam" sastavlja filter.
Gde si tako nešto vido u IKS-u? ;>
O;)
clipper.426madamov,
> Broj slogova ne kaze nista o aplikaciji, programu i/li DB
> serveru, pa ovo ne bi komentarisao ...
Pa kako onda da ocenim da će server da se zaglavi (tvoja reč) prilikom
pretraživanja po neindeksiranom polju? O tome smo pričali, ako se ne varam,
tj. moj podatak o broju slogova je odgovor na tvoju tvrdnju da će svaki server
da se zaglavi prilikom pretraživanja po neindeksiranom polju.
clipper.427whitie,
>> Broj slogova ne kaze nista o aplikaciji, programu i/li DB
>> serveru, pa ovo ne bi komentarisao ...
>
> Pa kako onda da ocenim da ce server da se zaglavi (tvoja rec)
OK. Termin " zaglaviti " zameniti sa " drasticno usporiti ".
> prilikom pretrazivanja po neindeksiranom polju? O tome smo pricali...
Da pricali smo... O poslovanju banke sa dislociranim filijalama,
a ti si elegantno prebacio temu na glavnu knjigu neke firme. Prime-
cujes li razliku. Bilo je reci o konkretnim mehanizmima ( usporivacima)
a ti ne rece: ovo koristim - ovo ne.
Da si rekao: baza mi se sastoji od X1 tabela lociranih u X2 gradova
sirom Srbije, povezanih preko Interneta; dnevno ide X3 nanosa i X4
transakcija, sa preko X5 stampanih izvestaja; prosecan odziv na tran-
sakciju oko X5 sek. E, ja bi onda rekao BLABLABLA.
Ovako sam ostao bez komentara i strepim da mi moderator poruku ne
prebaci u temu " ko je pametniji, lepsi, seksipilniji ..." :-))
clipper.428whitie,
> Tome treba dodati da bios cita cele sektore,
Klastere, eventualno po 2 komada ... lapsus ;-< sori.
clipper.429sasab,
> zasto ne koristi komandu, da mu sam program da procenu, koliko
> moze da pomogne. // m6_IsOptimize () //
Zato što mi rezultat tipa 'fully optimizable' ne znači ništa. Ovako
vidim koliko je vremena to 'fully optimizable'.
Bogi
clipper.430sasab,
> Sa siksom je dosta brze i to ne treba komentarisati. Da nije
Fakat.
> Ni jedan tag nije bio onaj pravi. U protivnom, siks bi ga nasao
Moja greška što nisam napomenuo u poruci: postoji tag koji sadrži
polje ID na početku ključa.
> PS.Nadam se da sad neces reci da si dao fol rezultate da nas
> navuces :-)))
Zašto bih to radio? Stvar nije akademske prirode. Jednostavno više
izveštaja u programu se na postojećim bazama uz primenu grube sile
(odgovajuće indekse nije moguće postaviti bez ozbiljnih promena u
strukturama tabela) na mom računaru (486DX4 120MHz,16MB, dobar disk)
u lokalu generišu po desetak minuta. Aplikacija bi trebala da radi
na mreži gde su sve stanice SX na 30Mhz što će reći da mi je svaka
sekunda ubrzanja i te kako dragocena.
Bogi
clipper.431madamov,
> OK. Termin " zaglaviti " zameniti sa " drasticno usporiti ".
Prihvatam izmenu termina, ali tako nešto (bilo koje pretraživanje) ne bi smelo
da drastično uspori server, to je samo jedan od procesa koji on tog trenutka
izvršava, no tu već zalazimo u problematiku kako je koji server realizovan što
ne samo da je izvan teme Clipper u kojoj smo, već je možda pre za PCOS
konferenciju nego za PCPROG. B) Osim ako se ne igramo gluvih telefona pa ja
pričam o database serveru, a vi o fajl serveru na kojem se nalaze tabele
određene baze podataka.
> Da pricali smo... O poslovanju banke sa dislociranim filijalama,
> a ti si elegantno prebacio temu na glavnu knjigu neke firme.
Ja prebacio? Molim konkretnu poruku u kojoj sam ja to prebacio. A o poslovanju
banke se pričalo u temi baze.podataka, ne ovde, ono što sam tamo (a i ovde)
pričao se odnosi na klijent-server arhitekturu, pa je razgovor neko
(mmarkovic?) prebacio ovamo radi objašnjenja kako je neka bibiloteka u
Clipper-u optimizovala pristup indeskima i tabelama i kako je bliska po
performansama klijent-server arhitekturi.
clipper.432dbarbul,
Da li neko ima puni sors za program dbMAX ?
Odgovor moze i u mail!
Unapred hvala, Dule.
clipper.433kovacevicd,
Imam jedno pitanje u vezi velikoprodaje.
Postoje dve firme i jedna i druga kupuju isti proizvod po istoj ceni
npr. 100 din. za dalju prodaju. Zatim prva firma niveliše cenu tog
proizvoda 20% pa je cena 120 din, zatim jednog dana prva firma prodaje
taj prozivod za 150 din a druga isto prodaje taj proizvod za 150 din.
nekom drugom kupcu za dalju prodaju.
Pitanje da li su i jedna i druga firma ostvarila istu razliku u ceni
od 50 din. i na tu sumu treba da plate porez na usluge (10%
preračunato)
ili je prva firma je ostvarila 30 din razliku u ceni.
Firme
Datum: A / B
------------------------------------
1.1 100 100 ulaz
5.1 20% 120 100 presek
10.1 -150 -150 prodaja
------------------------------------
clipper.434cnenad,
=> npr. 100 din. za dalju prodaju. Zatim prva firma niveliše cenu tog
=> proizvoda 20% pa je cena 120 din, zatim jednog dana prva firma prodaje
=> taj prozivod za 150 din a druga isto prodaje taj proizvod za 150 din.
Obe firme u trenutku prodaje će morati da urade nivelaciju, prva sa 120 na
150 din a druga sa 100 na 150.
I jedna i druga će platiti porez na usluge, tj. na razliku u ceni od 50 din
po jedinici mere * prodata količina.
clipper.435dordije,
U vezi veleprodaje meni je poznato sledece:
- onako kako si ti naveo ispada da se zalihe robe u magacinu vode po
prodajnim cenama (nesto drugacija situacija bi bila ako se zalihe
robe u magacinu veleprodaje vode po nabavnim cenama)
- to znaci da je cena od 100 dinara prodajna cena formirana pri
nabavci robe. Pretpostavimo da je nabavna cena bila 80 dinara, sto
znaci da je ucesce razlike u ceni 20% !
- firma B: kada prodaje robu po 150 dinara, onda ona htele ne htela
ima nivelaciju od 100 do 150 dinara, tj. 50 dinara povecanja cene.
U tom povecanju ucesce razlike u ceni se racuna 20% tj. 10 dinara,
a ostalih 40 dinara ide u revalorizacione rezerve. To znaci da ce
firma B platiti porez na razliku u ceni od 30 dinara (20 dinara
u prvobitnoj ceni od 100 dinara, i 10 dinara iz povecanja cene od
50 dinara) !
- firma A: i kod nje se svodi na isto. U pocetku ima 20 dinara
razlike u ceni sto cini 20% od prodajne cene (80+20=100 din).
Posle prve nivelacije sa 100 -> 120 dinara, ima 4 dinara razlike
u ceni i 16 dinara ide u revalorizacione rezerve. Posle druge
nivelacije 120 -> 150 dinara, imamo 6 dinara razlike u ceni i 24
dinara revalorizacionih rezervi (jer se procenat ucesca razlike u
ceni nije menjao). To ukupno znaci da ce firma A u momentu prodaje
imati 20+4+6=30 dinara razlike u ceni (na koju placa porez na usluge
prometa robe na veliko), i 16+24=40 dinara revalorizacionih rezervi,
tj. isto kao i firma B !
- Ako se zalihe robe vode po nabavnim cenama, racunica je drugacija
clipper.436spantic,
> Kada se ovaj program kompajlira iz komandne linije, sve je u redu,
> ali kada se kompajlira iz samog Development Studija, on prijavljuje:
Da li si u WIndows IDE okolini formirao projekat?
clipper.437spantic,
> Kada se ovaj program kompajlira iz komandne linije, sve je u redu,
> ali kada se kompajlira iz samog Development Studija, on prijavljuje:
Da li si u WIndows IDE okolini formirao projekat?
clipper.438mmarkovic,
'Ajde da malo oživimo temu.
U prilogu je fajl koji imlementira SQL naredbu SELECT
u Clipper 5.x.
Ne očekujte mnogo, pisano još 1992. je samo da bi se
FOX-ovcima pokazao pretprocesor.
Zanemarite (c), mrzelo me da brišem. Dakle nema nikakvog
kopirajta...
Danas bi se obzirom na optimizatore (Mach6, Comix) ova
stvar mogla i ozbiljnije uraditi. Ali, DOS je mrtav...
sql.arjclipper.439mrkela,
Potrebno mi je uputstvo za povracaj datoteke ispraznjne iz DBU-a
komandom ZAP. Hitno. Hvala unapred.
clipper.440arazumenic,
> Potrebno mi je uputstvo za povracaj datoteke ispraznjne iz DBU-a
> komandom ZAP. Hitno. Hvala unapred.
Krakto i jasno: ne moze.
clipper.441sobrenovic,
#> Potrebno mi je uputstvo za povracaj datoteke ispraznjne iz DBU-a
#> komandom ZAP. Hitno. Hvala unapred.
# Krakto i jasno: ne moze.
Svojevremeno sam negde video utility koji upravo to radi.
Naravno, uslov je da se po disku nije pisalo, bar ne mnogo...
Postoji samo jedan problem, ne secam se gde i kad sam video
pomenuti programcic :(
clipper.442cnenad,
=> Potrebno mi je uputstvo za povracaj datoteke ispraznjne iz DBU-a
=> komandom ZAP. Hitno. Hvala unapred.
Nema načina osim da iskoristiš neku staru kopiju iste ili je vratiš iz
Backup-a. Sledeći put više sreće kod upotrebe ove "destruktivne" opcije
na F6.
Možda bi bilo zgodno da modifikuješ source pa da program napravi BAK
datoteke pre nego što krene nešto da radi sa njom.
Inače, probaj DBMAX 1,33 koji je mnogo bolji od DBU-a.
clipper.444zraspudic,
>* Potrebno mi je uputstvo za povracaj datoteke ispraznjne iz
>* DBU-a komandom ZAP. Hitno. Hvala unapred.
Mo`da kasnim sa odgovorom ali tvoj problem sigurno rje{ava FileFix iz
Norton- 8.0. Normalno, izme|u ZAP-a i "va|enja" ne smije biti puno pisanja
po disku, kompres itd.
clipper.445arazumenic,
> Svojevremeno sam negde video utility koji upravo to radi.
> Naravno, uslov je da se po disku nije pisalo, bar ne mnogo...
E bas bih voleo da vidim taj programcic na delu.
Ako ga nadjes, stavi ga u conf, pa da probamo.
clipper.446snemcev,
>> Posle prve nivelacije sa 100 -> 120 dinara, ima 4 dinara razlike
>> u ceni i 16 dinara ide u revalorizacione rezerve.
Ovo je ukinuto novim Zakonom o računovodstvu koji se primenjuje od
01.01.1997. godine.
clipper.447nmaricic,
Da li neko moze da mi objasni smisao poruke kompajlera :"String space
exausted"
clipper.448kovacevicd,
Hteo bih da te pitam da li se revalorizacione rezerve plaćaju na
15 dana kao porez na usluge, a što se tiče cena one se vode kao
prosečne tj. po nabavnim cenama.
clipper.449mmarkovic,
> Da li neko moze da mi objasni smisao poruke kompajlera :"String
> space exausted"
Ako je problem u prevodu, znači "prostor za stringove iscrpljen".
Ako nije u tome problem, verovatno u programu zaista imaš mnogo
stringova. Probaj da ih smestiš u .dbf-ove., ili podeli program u
više .prg-ova.
clipper.450dvesic,
> Da li neko moze da mi objasni smisao poruke kompajlera :"String
> space exausted"
Verovatno si preterao sa:
- veličinom PRG fajla
- brojem PUBLIC/PRIVATE/STATIC promenljivih na nivou fajla
- Nekim drugim simbolima koje kompajler pamti u tabeli fiksne veličine
Sve ove probleme bi trebalo da reši razbijanje u više malih PRG ( < 20Kb)
fajlova.
clipper.451cnenad,
=> Hteo bih da te pitam da li se revalorizacione rezerve plaćaju na
=> 15 dana kao porez na usluge, a što se tiče cena one se vode kao
Nisi se precizno izrazio. Plaća se porez na usluge, tj. laički rečeno na
deo za ostvarenu razliku u ceni. Ako je prodaja i fakturisajne izvršeno
u periodu od recimo 01 do 15.11 taj porez se plaća do 20 (zaključno sa njim)
novembra.
clipper.452dordije,
Porez na usluge se ne placa na rev.rezerve vec samo na fakturisanu
razliku u ceni, svakih 15 dana (kao sto rece kolega cnenad).
Jos nesto: ako se zalihe vode po nabavnoj ceni, onda nema nivelacije
cena, a time ni revalorizacionih rezervi.
Posto je ovo ipak tema za clipper, predlazem da okoncamo razmatranje
ovih racunovodstvenih problema. U svakom slucaju treba da sto vise
razgovaras sa knjigovodjama i ljudima za koje pravis program. Meni je
mnogo pomoglo i citanje knjiga za racunovodstvo za srednju skolu, pa
i za fakultet.
clipper.453whitie,
>> Da li neko moze da mi objasni smisao poruke kompajlera:
>> "String space exausted"
> Probaj da ih smestis u .dbf-ove, ili podeli program u vise .prg-ova
Ovo ce resiti problem, ali kad budes slobodan svakako skini
\dos\prog\clipper\memory.zip Korisno stivo !!
clipper.454whitie,
> Verovatno si preterao sa:
> - brojem PUBLIC/PRIVATE/STATIC promenljivih na nivou fajla
> - Nekim drugim simbolima koje kompajler pamti u tabeli fiksne velicine
String spejs, ne simbol ...
> Sve ove probleme bi trebalo da resi razbijanje u vise malih PRG fajlova.
Tabela simbola je jedinstvena za ceo program i ne pale svap i overlej
( uvek je u ROOT-u ). Kako god iseckao PRG fajlove, linker opet skupi na
gomilu. U ovom primeru se ponasao kompajler i kukao na probijen string
prostor ( 64 K ). Seckanjem fajlova resava se problem, ali bojim se da
se ovde radi o konceptualnim problemima i tamo treba i cistiti. Otprilike
da je help sistem resavan trpanjem dugih help-poruka u varijable, ili
je mnogo "ekrana" smesteno u sam kod programa.
clipper.455snemcev,
>> Hteo bih da te pitam da li se revalorizacione rezerve plaćaju na
>> 15 dana kao porez na usluge
Ovo definitivno nije pravo mesto za ovo pitanje. :(
Revalorizacione rezerve se nikome ne plaćaju.
clipper.456nmaricic,
Hvala DVesic. Resenje űje u razbijanju prg-a na manje manje
procedure.
clipper.457cnenad,
=> Jos nesto: ako se zalihe vode po nabavnoj ceni, onda nema nivelacije
=> cena, a time ni revalorizacionih rezervi.
Da samo što ne verujem da postoji firma koja će robu prodati po nabavnoj
ceni. Dakle mora doći do promene i samim tim nivelacije, a onda poreznici
uzimaju svoj deo kolača.
clipper.458nmaricic,
Kako da resim problem memorije prilikom izlaska u Dos iz aplikacije ?
Na primer, kada pozovem Arj( Run Arj m ...) javlja mi poruku Out of
memory.U Summer_u je postojala Swap funkcija.Kako se upravlja a
swap-virtuelnom memorijom u Clipper_u 5.2?■˛ ű ű ű
clipper.459livan,
-> Kako da resim problem memorije prilikom izlaska u Dos iz aplikacije ?
-> Na primer, kada pozovem Arj( Run Arj m ...) javlja mi poruku Out of
Vrlo jednostavno. Pocni da koristis Blinker. On ima funkciju SWPRUNCMD()
koja ce taj tvoj problem da resi. Ja je koristim vec godinama - radi odlicno
i na 286 sa 1Mb RAM-a.
clipper.460mmarkovic,
> Kako da resim problem memorije prilikom izlaska u Dos iz
> aplikacije ?
Upotrebom BLINKER-a i korišćenjem SWPRUNCMD()...
clipper.461dvesic,
> Kako da resim problem memorije prilikom izlaska u Dos iz aplikacije
> ? Na primer, kada pozovem Arj( Run Arj m ...) javlja mi poruku Out
Ovo rešenje najviše zavisi od linkera koji koristiš (RTLink, Blinker,
ExoSpace ...)
Npr. kod BLinkera se to radi kroz SwpRunCmd funkciju (koristim Blinker)
Postoje i eksterna rešenja: programi koji služe kao shell tvom programu
(npr. SHROOM) i detektuju zahtev za startovanjem programa, izbace tvoj
program iz memorije, izvrše traženi i vrate nazad tvoj program.
clipper.462zkrstic,
>> => Jos nesto: ako se zalihe vode po nabavnoj ceni, onda nema
nivelacije
>> => cena, a time ni revalorizacionih rezervi.
>>
>> Da samo što ne verujem da postoji firma koja će robu prodati po
nabavnoj
>> ceni. Dakle mora doći do promene i samim tim nivelacije, a onda
poreznici
>> uzimaju svoj deo kolača.
Malko drkaš pojmove.
Nabavna cena + Zarada = VP Cena
Nivelacija je povećanje ( linearno ili ne ) tvoje
nabavne cene dok je roba još tvoja, znači nije prodata,
prouzrokovano usled recimo poskupljenja hrane za papagaje
ako ti je roba papagaji.
clipper.463vper,
Nov sam ovde pa
bi zeleo ,ako neko moze, sta mi cliper nudi
Unapred Hvala!
clipper.464dr.grba,
>> Nabavna cena + Zarada = VP Cena
A troškovi? A rabati?... To što nazivaš zaradom je marža.
clipper.465cnenad,
-> Malko drkaš pojmove.
->
-> Nabavna cena + Zarada = VP Cena
Ne, samo u onom primeru koji sam ja naveo nema ni rabata ni troškova
nabavke. Zato sam i naveo da ne verujem da ima ikoga ko zalihe vodi po
nabavnoj ceni i po toj istoj NC tu robu prodaje pa makar oni bili i bolesni
papagaji ;).
clipper.466sobrenovic,
Koliko ja poznajem problematiku, trebalo bi raditi ovako:
U listi zaliha se belezi i nabavna cena, i rabat, i svi porezi
(stope), ne iznosi!... i na kraju prodajna cena. razlog za ovo bi
mogao da bude, na primer, promena poreskih stopa krajem ovog leta
gde se morala raditi nivelacija cena iako se marza nije menjala.
A da bi se sve to uradilo najlakse, treba raditi na gore navedeni
nacin.
clipper.467madamov,
> Zato sam i naveo da ne verujem da ima ikoga ko zalihe vodi po
> nabavnoj ceni i po toj istoj NC tu robu prodaje pa makar oni bili i
> bolesni papagaji ;).
Radio sam u firmi koja je zalihe vodila po nabavnoj ceni i često je prodavala
pojedine artikle i ispod nabavne cene. Zašto? Zato što su se nalazili na
fakturi teškoj par stotina hiljada dinara, pa je ukupna zarada bila važna, a
ne gubitak na određenoj poziciji.
clipper.468dr.grba,
>> nabavke. Zato sam i naveo da ne verujem da ima ikoga ko zalihe vodi po
>> nabavnoj ceni i po toj istoj NC tu robu prodaje pa makar oni bili i
Magacini repromaterijala se često vode po jednoj od metodologija
nabavne cene (npr. prosečna nabavna cena). Pošto se repromaterijal
uglavnom ne prodaje, već ugrađuje u drugi proizvod, ne vrši se ulazna
kalkulacija.
clipper.469cnenad,
-> Koliko ja poznajem problematiku, trebalo bi raditi ovako:
Koliko ja poznajem problematiku :) merodavno je samo ono što je upisano
u kalkulaciji i eventualno nivelaciji. Ti na tvojim pomoćnim listama pa i
listama zalihe možeš upisati šta god hoćeš.
-> mogao da bude, na primer, promena poreskih stopa krajem ovog leta
-> gde se morala raditi nivelacija cena iako se marza nije menjala.
Ako se cene vode po maloprodajnom iznosu, kod promene poreza se nova cena
dobija najlakše primenom koeficijenta. Postoji i najprecizniji način a to
je da se na veleprodajnu cenu primene nove poreske stope, dobije razlika
koja se dokontira i to je to.
clipper.470nmaricic,
Da li mi neko moze dati informacije u vezi koriscenja Blinkera, u
smislu-instalacije,konfigurisanja, kao i sta je sve potrebno od
softvera. Da li na Sezamu postoji regularna verzija?
clipper.471zkrstic,
>> -> Malko drkaš pojmove.
>> ->
>> -> Nabavna cena + Zarada = VP Cena
>>
>> Ne, samo u onom primeru koji sam ja naveo nema ni rabata ni
troškova
>> nabavke. Zato sam i naveo da ne verujem da ima ikoga ko zalihe
vodi po
Ko u klin ko u ploču :)
Nabavna cena je nešto što podrazumeva u seebi sve
moguće & nemoguće troškove. Znači:
Nabavna_Cena := Cena_po_dobavljaču - rabat + zavisni trošak
( gde zavisni troškovi mogu biti transport, osiguranje,
pakovanje, carina, akcize, Boga_pitaj_kakav_namet... )
Ubedljivo je najzgodnije, sa papirološke a i sa
organizacione strane voditi magacin po navanoj ceni. Kda
jednog dana mi kao poslednja država u Evropi uvedemo
standardno knjigovodstvo, tkzv "Amerikanac", biće Vam mnogo
lakše da shvatite ovo o čemu pričam.
Banalan primer: Uradiš kalkulaciju i napraviš Vele i
Maloprodajnu cenu. Super. A šta ako ja oću 1000 ili 1000000
komada od istog ? Moraćeš da se jebavaš sa popustima i sl.
Ovako, odrediš recimo za svaki artikl ili u globalu, do 10
jedna marža, 10-99 druga, 100+ treća...
A to što nema zamajavanja sa kalkulacijama, to je
čist dobitak :)
clipper.472cnenad,
-> Magacini repromaterijala se često vode po jednoj od metodologija
-> nabavne cene (npr. prosečna nabavna cena). Pošto se repromaterijal
-> uglavnom ne prodaje, već ugrađuje u drugi proizvod, ne vrši se ulazna
Jasno je valjda da pričamo o robi i trgovini a ne o repromaterijalu i
proizvodnji.
clipper.473cnenad,
-> Ko u klin ko u ploču :)
Pa izgleda da ti udaraš u klin :)
-> Nabavna_Cena := Cena_po_dobavljaču - rabat + zavisni trošak
Rekoh već, imaš situacija gde nema rabata ni zav.troškova pa je nabavna
cena ono što si platio dobavljaču.
-> Maloprodajnu cenu. Super. A šta ako ja oću 1000 ili 1000000
-> komada od istog ? Moraćeš da se jebavaš sa popustima i sl.
Šta sa komadima od istog ?
-> A to što nema zamajavanja sa kalkulacijama, to je
-> čist dobitak :)
Iz tvojih usta u božije uši. BTW, ovo zahteva kompletnu reorganizaciju
tehnike knjigovodstva i obračuna robe...
clipper.474dr.grba,
>> Jasno je valjda da pričamo o robi i trgovini a ne o repromaterijalu i
>> proizvodnji.
O trgovini? Sorry, mislio sam da je reč o metodologijama vođenja cena
u magacinu uopšte.
clipper.475cnenad,
-> O trgovini? Sorry, mislio sam da je reč o metodologijama vođenja cena
-> u magacinu uopšte.
Sve je počelo od dva artikla od kojih se jedan prodaje po ceni sa
kalkulacije dok je kod drugog bilo i nivelacije u međuvremenu...
clipper.476dr.grba,
>> Sve je počelo od dva artikla od kojih se jedan prodaje po ceni sa
>> kalkulacije dok je kod drugog bilo i nivelacije u međuvremenu...
Eh, sve je to počelo... Da je Pera odmah otišao u policiju... (:
Uh! Nevezano direktno za temu, ali moram da ispričam baš ovde.
Raspravljalo se u mojoj kancelariji nešto o fakturisanju. Naime,
po starom sistemu, kamioni su otpremali robu samo sa primercima
potpisanih naloga iz magacina, dok su fakture išle boktepita kad.
Po sistemu koji sam uveo pre nešto više od godinu dana,
faktura-otpremnica ide odmah sa robom, sve se završava u momentu,
a baza stanja je ažurna koliko god može biti. Ponekad se desi da se
spremaju velike otpreme u udaljene gradove, a vozači vole, ubio ih
bog, da voze u konvoju, pa da zajedno napadaju drumske kafane. Zbog
toga, isfolirali su zagušenje na kapiji, po njihovom mišljenju, zato
što "onaj dugokosi" traži da se tu dodaju "nekakve fakture". K'o uz
q**c, jednom se desilo da je jedan od štampača pobrljavio (pozdrav
novoj spremačici, koja nije prošla moj dril...) i da je jedna ovakva
scena na kapiji trajala celih pola sata duže.
Došla delegacija iz komercijale, sa šefom vozača i sa generalnim
direktorom u pratnji. Tražili od mene da dopustim da roba ide bez
fakture preko rampe, a ja zajogunio, pa ne dam. Temperatura se
podigla, ali niko nije smeo da podigne glas, jer sam ja jedini od
prisutnih (oduvek) bio u stanju da razgovaram sa generalnim na ravnoj
nozi.
Kad su videli da sam luđi od njih, pomirili su se sa gorkom sudbinom
(:, šef vozača je za dlaku izbegao kaznu (: a kad su krenuli napolje,
ja sam, po inerciji uzviknuo "Da je Pera odmah otišao u policiju, sve
ovo se ne bi ni desilo".
Trebalo je da ČUJETE tu tišinu, potpuni tajac koji je nastao od strane
sedam-osam prisutnih ljudi. Naime, ime generalnog direktora je Petar. (:
Samo sam odmahnuo rukom, rekao "Nisam mislio na vas" i zabio glavu
natrag u monitor. Kako sam izdržao da se ne nasmejem, ni danas mi nije
jasno (:
E, 'ajde što su me posle svi po firmi za*ebavali pola godine, ali što
me je direktor za*ebavao, ne zna se (((:
Naravoučenije: pazite kako se izražavate po magacinskim pitanjima
pred svojim direktorom (:
Naravoučenije 2: Da je Pera.... (:
clipper.477river,
=> O trgovini? Sorry, mislio sam da je reč o metodologijama
=> vođenja cena u magacinu uopšte.
A ja mislio da se govori o kliperu ;) ?
clipper.478brankost,
SET CODE NONE
HITNO!!! HITNO!!! HITNO!!! HITNO!!! HITNO!!!
Molim za pomoc
Greskom je kolega prepisao DBF + DBT praznom bazom istog
formata. DBT je igrom slucaja preziveo. DiskEdit-om sam
izvukao DBF i hex je zapisan kao tekst. Pomagajte, baza
je iz bolnice (onkologija) sa oko 2500 pacijenata ( ne
pitajte zasto nema backup-a, Marfi cuci i .ere gde ne
treba). Kako i cime da taj fajl pretvorim u DBF i povezem
sa DBT-om.
Molim mail, conf ili tel. 019/28-554 Branko
clipper.479janko,
> formata. DBT je igrom slucaja preziveo. DiskEdit-om sam
> izvukao DBF i hex je zapisan kao tekst. Pomagajte, baza
> je iz bolnice (onkologija) sa oko 2500 pacijenata ( ne
> pitajte zasto nema backup-a, Marfi cuci i .ere gde ne
> treba). Kako i cime da taj fajl pretvorim u DBF i povezem
> sa DBT-om.
Kao tekst?? Bojim se da nisi uspeo da izveš sav sadržaj fajla.
Da jesi, bilo bi lako, izgubilo bi se samo nekoliko prvih ulaza
(koliko troši razlika između prazne datoteke). Ovako si verovatno
sačuvao neki deo, ali koliki...
Relativno je lako napisati programe za rekonstrukciju, pod uslovom
da se zna šta se rekonstruiše. Samo neko to treba i da uradi. Vidim
da nisi iz Beograda...
clipper.480nenad,
> Kako i cime da taj fajl pretvorim u DBF i povezem
> sa DBT-om.
Ako je tekst zaista očuvan treba da ga formatiraš u pogodan oblik
(recimo da su polja odovojena zarezima, a novi red da predstavlja
novi zapis) i onda učitaš kao "Comma-sepparated-file" u dBase ili
bilo koji Spreadsheet program (Lotus 1-2-3, Quattro, Excel),
zatim iz njih snimiš u DBF format.
Šta beše DBT?
clipper.481brankost,
Hvala na pomoci.
Podatci su delimicno spaseni.
Pozdrav Branko
clipper.482evlad,
Y> Greskom je kolega prepisao DBF + DBT praznom bazom istog
Y> formata. DBT je igrom slucaja preziveo. DiskEdit-om sam
probaj programom filefix iz paketa norton utilities ...
(opcija dBase & Clipper)
clipper.483banga,
> Šta beše DBT?
Memo valjda
clipper.484cnenad,
Da li neko radi pod Clipper-om 5.3 iz CA-Clipper Workbench-a ali da
koristi Blinker i da to sve lepo radi ? Čim uključim Link Template i
postavim Blinker šablon, IDE okruženje pukne ko zvečka. Sa EXOSPACE-om sve
lepo prođe.
Clipper 5.3a (dakle upgrade-ovana verzija). Zanimljivo je da se nakon
Upgrade-a događa da u statusnoj liniji za neke opcije IDE okruženja više
nema opisa već piše String not found.
clipper.485kajko,
Ljudi, koristim funkciju 'VGA28' iz 'ctus.obj' u kombinaciji sa CT.LIB.
Na nekim VGA/SUPER_VGA karticama ona ocigledno ne radi!
Problem se manifestuje tako sto se ekran ponasa kao da sam presao u neki
graficki mod i program se 'zamrzne'.
Zna li neko u cemu je problem ?
clipper.486kajko,
Trenutno razvijam software koji obilno koristi usluge modema
pa me interesuje koja je biblioteka najbolja za takve stvari i
gde moze da se 'skine'. Inace, program ima mogucnost da zove,
kao i da prima pozive i automatski odgovara na njih.
Da li za CLIPPER postoji takva biblioteka ?
Ako postoji, molim da mi javite koja je, a ako je neko radio
sa njom, bio bih veoma zahvalan da mi dostavi i par primercica.
Hvala!
clipper.487evlad,
=- Da li za CLIPPER postoji takva biblioteka ?
silver clip, pointer R101, autor bulaja ... //ma se bulaja@sezampro.yu
clipper.488nmaricic,
Da li mi neko moze pomoci u sledecem problemu:
Kada otvaram datoteke sa Use ... New racunar dozvoljava otvaranje 14
datoteka a kod 15. javlja gresk űu Dos ÷║Error 4.
NMaricic
clipper.490dr.grba,
>> Kada otvaram datoteke sa Use ... New racunar dozvoljava otvaranje 14
>> datoteka a kod 15. javlja greskűu Dos ÷║Error 4.
U CONFIG.SYS stavi FILES=50 ili više, napravi dobar zazor.
U AUTOEXEC.BAT stavi SET CLIPPER=45 i nećeš imati problema.
U suštini, Clipper može da otvori 20 datoteka, ako mu nije eksplicitno
dato više. MS DOS stariji od verzije 7, čini mi se, uzimaju default
FILES=20. Sistem uzima 5 datoteka za sistemske servise, program uzima
jednu i preostane ti 14 datoteka na raspolaganju.
clipper.491kajko,
Kako da napunim Laser 5L sa mojom definicijom slova ?
Ima li neka bib. koja to radi ?
clipper.492livan,
-> Kada otvaram datoteke sa Use ... New racunar dozvoljava otvaranje 14
-> datoteka a kod 15. javlja greskűu Dos ÷║Error 4.
Stavi u autoexec.bat liniju SET CLIPPER=F:nn gde je nn broj fajlova koje
će clipper program moći da otvori. Naravno, to nn treba da bude manje
od onog što ti stoji u config.sys fajlu pod FILES=mm. Mislim da razlika mora
biti najmanje 7, ali me nemoj držati za reč.
Probaj da u autoexec.bat upišeš SET CLIPPER=F:60, a u config.sys FILES=70
i nećeš više imati problema te vrste, a ako je i to malo ti povećaj ove
vrednosti.
Broj nn koji navedeš u SET CLIPPER podrazumeva maksimalan broj DBF, DBT, NTX
i bilo kojih drugih fajlova koje otvaraš u isto vreme iz clipper programa.
clipper.493suki,
>> Da li mi neko moze pomoci u sledecem problemu:
>> Kada otvaram datoteke sa Use ... New racunar dozvoljava otvaranje 14
>> datoteka a kod 15. javlja greskűu Dos ÷║Error 4.
>> NMaricic
Probaj da postavis u config.sys veci broj za FILES=150, a ako i to ne pomogne
onda stavi u link datoteku naredbu BLINKER EXECUTABLE CLIPPER Fn, gde n
predstavlja broj datoteka koje mozes otvoriti (n=30-255), a to sve ako radis sa
blinkerom.
clipper.494bokir,
Ima li neko Class(Y) biblioteku, koju bi mogao da "podeli" sa
mnom? ;)
Odogovore na mail.
clipper.495savaerc,
Ima li neko disketu koja ide uz knjigu Rick Spense: Clipper 5 vodič
za programere. tzv. jedrenjak?
clipper.496arazumenic,
Konacno!
Clip-4-Win se moze nabaviti i u Jugoslviji.
Info na mail.
Uz poruku je prikacena eval verzija 3.01.
cl4w301.zipclipper.497arazumenic,
Clip-4-Win:
Address List Manager Demonstration
addlimgr.zipclipper.498arazumenic,
Clip-4-Win:
Time Control Win Demonstration
ticowide.zipclipper.499livan,
Malo sam gledao po direktorijumima i primetio sam da nema puno shareware
programčića za telefonski imenik, s obzirom da je to školska tema svakog
programera. Zato evo jednog koji bi se mogao tamo naći - ako se moderator
slaže. Nije u duhu WIN95, ali je jedan pristojan clipper program koji će
trčati na svemu što se zove PC a i nije komplikovan za upotrebu.
imenik.arjclipper.500gogica,
Kako u Clipperu dobiti slucajan broj (RND)?
clipper.501whitie,
> Kako u Clipperu dobiti slucajan broj (RND)?
Sam program nema funkciju za (rnd) pa mozes samo napisati kod koji je
manje ili vise slucajan. Inace, CA-Clipper je tu oblast pokrio u svojim
Tools-ima sa dve funkcije u vise modaliteta, pa ti ih preporucujem ...
OUP.Izvini za spor odziv sistema. Ljudi koji obicno odgovaraju na ovakva
pitanja, ovaj put su zakazali ... :-)
clipper.502savaerc,
Iako je ova tema zamrla, možda se nadje neko ko može i hoće da mi
pomogne.
LM, treba deo jedne aplikacije iz Fox-a da "prepevam" u Clipper.
Funkcija isprinter() služi da proverim da li je štampač na portu LPT1
spreman za rad PRE početka štampanja, ako se greška dogodi tokom štampanja
generiše se runtime greška.
1) Zašto samo na portu LPT1, kako može na LPT2 i slično?
2) Kako da zaobidjem runtime grešku? Pretpostavljam da treba da
koristim errorblock() ali kako nisam mnogo vešt, ako može neko da
mi objasni malo a još bolje bi bilo ako ima neki primer koda pa da
ga sam proučim. U Fox-u je to lako, samo se navede
on error do <ProcName>
i u <ProcName> se lepo definiše šta želiš. Pored toga, Fox-ova
funkcija printstatus() mi omogućava da pošaljem Setup kod štampaču
pa zatim proverim status štampača i zatim odlučim šta ću da radim.
O tome u Clipper-u mogu samo da sanjam.
3) Poseban problem mi predstavlja štampa na pojedinačnim listovima koji
se ručno ubacuju u štampač, jedan po jedan. U Fox-u mi na raspolaganju
stoji sistemska memorijska promenljiva _pwait a može da posluži i
"time" u konfiguracionoj datoteci Fox-a preko koje može da se definiše
vreme za koje štampač čeka karakter za štampu. Ima li nešto slično
u Clipper-u i kako se to tamo rešava?
Da napomenem na kraju da govorim o Clipper-u 5.01, ako je nešto prome-
njeno u novijim verzijama molim, prosvetlite me.
clipper.503mcikota,
Zasto mi se javlja poruka: VM Integrity Failure?!
Molio bih da mi ko zna pomogne i kaze u kojim se situacijama moze
javiti ta poruka!
Mislio sam da se javlja kad se koristi disk kes program, ali nisam
siguran!
Inace, aplikacija radi kako treba, ali s vremena na vreme, dogodi
se takva greska i program se prekine!
Pomagajte!
Kako da resim problem??
clipper.504mileusna,
>> 1) Zašto samo na portu LPT1, kako može na LPT2 i slično?
Pa, Clipper baš i nije vešt u baratanju sa štampačem ako
mu ti sam malo ne pomogneš. Najbolje bi ti bilo da nabaviš
CA-TOOLS (ili neki drugi alat) koji ima neke dodatne funkcije
za rad sa štampačem, konkretno u ovom slučaju PRINTREADY kojoj
kao argument navodiš paralelni port na kome je štampač.
>> 2) Kako da zaobidjem runtime grešku? Pretpostavljam da treba da
>> koristim errorblock() ali kako nisam mnogo vešt, ako može neko da
Dakle, isto važi i ovde. Nabavi neku dodatnu biblioteku
sa boljim funkcijama i/ili napravi svoju proceduru koja će da
štampa datoteku red po red uz stalnu proveru statusa i sl.
perverzije. :)
clipper.505arazumenic,
> Zasto mi se javlja poruka: VM Integrity Failure?!
> Molio bih da mi ko zna pomogne i kaze u kojim se situacijama moze
> javiti ta poruka!
O ovome je pre jedno 2 godne bilo dosta reci. Uglvnom, ne mozes nista :(
A za svaki slucaj, probaj da zamenis memoriju u racunaru.
Primetio sam da se u jednoj firmi to javlja iskljucivo na jednoj masini.
Kada je na toj masini prosirena memorija, pri cemu su stari cipovi izvadjeni,
i stavljeni potpuno novi, pojava je nestala.
clipper.506kajko,
Kako da napunim LX-300 našim slovima ?
Zna li ko ?
clipper.507kiklop,
Ako štampaš čisti tekst, onda sam štampač treba da ima ugrađenu
podršku za naša slova. lx-300 (koliko sam upoznat) podržava naša slova
po 852 kodnom rasporedu, tako da tu leži odgovor na tvoja pitanje.
Namesti kodnu stranu u DOS-u po tom rasporedu i prosleđuj
odgovarajuće simbole i to je to. Za detalje pogledaj konferenciju
ORKA, tema yu.kod.
clipper.508evlad,
=- Kako da napunim LX-300 našim slovima ?
teško :(
možeš promeniti samo 6 karaktera, za LQ seriju nema problema
možeš predefinisati svih 256 karaktera ...
clipper.509tomil,
> =- Kako da napunim LX-300 našim slovima ?
>
> teško :(
>
> možeš promeniti samo 6 karaktera, za LQ seriju nema problema
Može da proba i sa definicijama slova, koje mu šaljem za PICA i
ELITE po YUSCII, meni radi na EPSON FX1050 i STAR-LC10, ali ako može
da predefiniše samo 6 karaktera, jedino rešenje mu je zamena EPROM-a.
yuepson.zipclipper.510jolicm,
Epson LX300
Nikako (zadovoljavajuće) ne možeš puniti našim slovima.
Taj štampač ima definisana SVA naša slova na kodnoj strani 852 ili
850 ?
Ako pitaš kao korisnik, to ti je to.
Ako si programer, pravi programe koji mogu da rade pod svim kodnim
rasporedima (posebno ekran, posebno štampač) i nećeš više imati
problema ! :))
clipper.512kovacevicd,
__Q._ When I run Clipper applications on my
6x86-based PC, the program is stalling.
What's the solution? _
__A.__ Clipper inserts software timing loops into the
applications when the code is compiled. The 6x86
processor executes these loop instructions faster than
previous x86 CPUs which interferes with timing
dependent code in the program. Solution: Download the
pipeloop.exe[60] file and put it in your autoexec.bat
file. This utility inserts a delay in the loop
instruction. The utility is not memory resident. NOTE:
This file may not correct all timing issues. Other
solutions will be listed when available.
Da li je ovo tacna informacija da clipper programi
ne rade na cyrix 6x86 procesorima i da se mora koristiti
dati program pipeloop.exe za rad! Inace program je kratak
oko 4KB.
pozdrav Dejan.
clipper.513jjerry,
Kol'ko ja znam ,jeste...
Doduse,posto je verovatno poznato da Cyrix ima slab FPU (mozda i
lazem,ko zna :) svi programi koji malo vise "pritikaju" FPU
zastajkuju..Tako je na primer sa 3D Studiom,koji mnogo koristi FPU
i lek je taj pipeloop.exe fajl koga mozes skinuti sa Cyrix-ovog sajta.
Pozdrav !
clipper.514redneck,
Nisam siguran da li ovo treba da ide u Win ili Clipp. :))
Skinuo sam Clip4win razvojnu verziju (ver. 3.01) i krenuo da je isprobavam.
Razipovao sam fajl wbtdemo.zip (u dir. ..\SOURCE)
i probao kako to sve radi. Browse-i su
veoma lepi, ali ima jedan krupan bag! Ako se koristi vertikalni ili
horizontalni skrol-bar, pa kada dodjete na kraj (ili pocetak) baze,
ako jos jednom kliknete misem dolazi do zaglavljivanja! Jedini nacin
da se to prekine je Ctrl+Alt+Del! Ovo je krupan propust, i nije mi
jasno kako je to promaklo Skeltonovim programerima. Probao sam da
menjam neke DLL-ove (nekoliko verzija BWCC.DLL i CTL3D.DLL) ali
uzalud. Cim dodjem do kraja (ili pocetka) ako jos jednom kliknem
program upada (verovatno) u mrtvu petlju. Da li je jos neko ovo
isprobao i da li tome ima leka? Steta zbog toga, jer ta biblioteka
zaista sve ostalo dobro radi. Zamolio bih Sezamovce koji su naisli na
taj problem, ako su ga resili, da mi se jave.
P.S. Ovo se desava samo ako se koristi f-ja wbrowse(). Ostali primeri
dobro rade.
clipper.515kajko,
Kako da nateram softverski LX-300 da predje na 852 kodnu stranu ?
clipper.516aleksa,
Ako neko zna odgovor na pitanje iz fajla neka mi odgovori!!!!!
pitanje.txtclipper.517tomil,
> Kako da nateram softverski LX-300 da predje na 852 kodnu stranu ?
Za konkretan štampač nemam uputstvo, ali u opštem slučaju kod
EPSON kompatibilnih štampača promena internacionalnog seta karaktera
se radi komandom:
<ESC> "R" n
Tako bi kod mog štampača bilo:
USA <ESC> "R" CHR$(0)
Francuska <ESC> "R" CHR$(1)
Nemačka <ESC> "R" CHR$(2)
Engleska <ESC> "R" CHR$(3)
Danska1 <ESC> "R" CHR$(4)
Švedska <ESC> "R" CHR$(5)
Italija <ESC> "R" CHR$(6)
Španija1 <ESC> "R" CHR$(7)
Japan <ESC> "R" CHR$(8)
Norveška <ESC> "R" CHR$(9)
Danska2 <ESC> "R" CHR$(10)
Španija2 <ESC> "R" CHR$(11)
Latinska Amerika <ESC> "R" CHR$(12)
Danska/Norveška <ESC> "R" CHR$(13)
Ako nemaš uputstvo, a imaš štampač i možeš da probaš, variraj broj
_n_ od recimo 0 do 255 pa sam zaključi.
P.S. Verovatno znaš da je kod za ESC = 27, pa umesto <ESC> pišeš
CHR(27).
clipper.518jolicm,
>epson lx300 i 852
Ta sekvenca sigurno nije u redu, ako čovek ne nađe neka viče za 2-3
dana, pa ću da vidim u uputstvu (nije kod mene).
clipper.519whitie,
> Kako da nateram softverski LX-300 da predje na 852 kodnu stranu ?
Skoro sam u ovom konfu dao odgovor, ali mi je Sezam "pojeo" ESC-karakter,
pa da ponovim:
Assign Character Table ESC ( t 0 d1 d2 d3
Asign Character table set with d2 and d3 to table d1; d1=0,1,48 or 49
CP 437 850 852 855 866 ?
Opis USA Multi East Ciryll Russ Bulg
d2 1 3 10 6 14 32 ... itd
d3 0 0 0 0 0 0
Posle toga ide jos i:
Select Character Table ESC t n
Select Character Table n assigned by ESC ( t
Ovde n odgovara d1 u predhodnoj komandi. Obe komande su u sastavu Epson
ESC/P 2 printer kontrol lengridz-a. Mozes takodje koristiti i Tomil-ov savet
a izvodljivo je i setovanje -> drzis FONT dugme pri ukljucivanju, pa izaberes
jezik, pa tabelu F (4. od vrha), pa najzad konkretnu CP.
clipper.520kajko,
U vezi LX-300 i 852 strane...
Hvala svima na opsirnim odgovorima,
sve isprobano i ...
nista ne radi.
Ili sam ja nesposoban ili ne znam sta je...
Inace, probao sam hardverski i uspelo je, ali mi u
odredjenim trenutcima treba i normalna strana.
Zna li neko sta moze da bude ?
Inace, kodove sam probao i decimalno i HEX.
Moze li neko d mi napise tacno kako ide ?
Npr. Chr(27) + Chr(.....
Hvala svima...
clipper.521tomil,
> Inace, kodove sam probao i decimalno i HEX.
> Moze li neko d mi napise tacno kako ide ?
> Npr. Chr(27) + Chr(.....
Probaj sledeće, možda će ti pomoći:
**************************************************
PROC Main()
LOCAL n, cNasaSlova:=""
//
//Naša slova (ŠšĐđČčĆ掞) po CP852
/*
cNasaSlova:=CHR(230)+CHR(231)+CHR(209)+CHR(208) + ;
CHR(172)+CHR(159)+CHR(143)+CHR(134) + ;
CHR(166)+CHR(167)
*/
//
FOR n=32 TO 255
cNasaSlova:=cNasaSlova+CHR(n)
NEXT n
//
SET PRINTER ON
SET CONSOLE OFF
?? CHR(27)+CHR(40) //Reset printera
FOR n=0 TO 255
?? CHR(27)+"R"+CHR(n) //Promeni internac. kod
?
? "Internacionalni kod = "+ ALLTRIM(STR(n))
? cNasaSlova // ŠšĐđČčĆ掞 - treba da se vide naša slova
?
NEXT n
SET PRINTER OFF
SET CONSOLE ON
CLOSE
QUIT
**************************************************
clipper.522whitie,
> FOR n=0 TO 255
> ?? CHR(27)+"R"+CHR(n) //Promeni internac. kod
> ?
> ? "Internacionalni kod = "+ ALLTRIM(STR(n))
> ? cNasaSlova // SsDdCcCcZz - treba da se vide nasa slova
> ?
> NEXT n
Malo si preterao! n moze od 0 do 12.
A menja se defenicija samo ca karaktereza 23, 24, 40, 5B, 5C, 5D, 5E,
60, 7B, 7C, 7D i 7E.
clipper.523whitie,
Okej, idemo opet. Posalji fajl 855.prn na stampu sa copy /b. Treba da
ti se pojavi tabela 0 (italik), pre i posle definicije CP855. Ako nije tako,
ne krivi kliper i stampac. Nesto si zeznuo sa kaptiranjem, spulerom ili sl.
> Assign Character Table ESC ( t 3 0 d1 d2 d3
> Asign Character table set with d2 and d3 to table d1; d1=0,1,48 or 49
>
> CP 437 850 852 855 866 ?
> Opis USA Multi East Ciryll Russ Bulg
> d2 1 3 10 6 14 32
> d3 0 0 0 0 0 0
Dakle CHR(27)+CHR(40)+CHR(116)+CHR(3)+CHR(0)+CHR(48)+CHR(6)+CHR(0)
sto je: ESC ( t 3 0 d1 d2 d3
gde je d1=0 tabela 0, bila italik;
d2 i d3 konstante iz gornje tablice za CP855
> Posle toga ide jos i:
>
> Select Character Table ESC t n
> Select Character Table n assigned by ESC ( t
Ili CHR(27)+CHR(116)+CHR(48) za tabelu 0 -> cirilica odnosno
CHR(27)+CHR(116)+CHR(49) za tabelu 1 -> klasika CP437, nepromenjeno.
S'obzirom da se menja samo gornja polovina tabele, svaka tabela u donjoj
polovini sadrzi i CP437.
Najzad, fajl 855.prn je odstampan pre slanja i sigurno je ok. Primer je
uradjen za CP855 jer se CHR(10) ne vidi editorom i vrlo je tezak za kapiranje
kao primer. Inace stvar radi i sa CP852.!
Pozdrav. _ I ne prebacuj stampac u graficki mod. _
855.prnclipper.524biki,
Da li neko zna gde i kao se legalno moze kupiti FiveWin 1.92.
clipper.525jolicm,
Kakvi su Clip4Win i FiveWin.
Koju mašinu zahtevaju, za razvoj i korisničku ?
Kolika im je instalacija ...
clipper.526arazumenic,
> Kakvi su Clip4Win i FiveWin.
> Koju masinu zahtevaju, za razvoj i korisnicku ?
> Kolika im je instalacija ...
Sto se tice Clip4Win, dovoljna mu je bilo koja masina na kojoj radi Windows.
Sama instalacija oduzme 10,5 Mb, ali ima dosta fajlova, tako da slack moze da
oduzme jos dosta prostora.
clipper.527mmarkovic,
Koji bi program, ili dodatak Clipperu, mogao da se koristi
za stampanje bar kodova "3 od 9" iz Clipper aplikacije.
Ima li tako nešto na Sezamu?
clipper.528jitka,
PgUp4 sezam.c
clipper.529jitka,
IMAM PROBLEM -
Aplikacija u Clipperu 5.01 koja nekoliko godina radi bez problema
pod DOS-om 3.3 do 6.2 javlja grešku na mašinama koje se podižu pod
WIN95 i tek onda prelaze u DOS.
greška glasi :
OPEN ERROR
POP.DBF (DOS GREŠKA 32)
POZVANA OD DBUSEAREA(0)
i vezana je za deo programa
USE pop ALIAS pop1 INDEX pop11 NEW
USE pop ALIAS pop2 INDEX pop12 NEW
Dali je moguće da taj DOS nepodnosi Alias_ime? Mogu li rješiti problem
ako promjenim nekakve parametre, setovanje i sl.?
U prevravku programa se mi ne ulazi pošto je source ogroman i može se
pojaviti nova greška ko zna gde i kada.
Imate rješenje? Unapred hvala.
P.S.
Nepomaže ni USE pop INDEX pop11 NEW ALIAS pop1
USE pop INDEX pop12 NEW ALIAS pop2
Imam privremeno rješenje pomoću startne diskete sa DOS 6.2 (znam, nije lepo).
Ali kod zadnjeg korisnika ni to ne pomaže. Sistem se lepo digne sa diskete i
kad otkucam C: javi se INVALID DRIVE SPECIFICATION. (Disketa je ispravna).
clipper.530mmarkovic,
> OPEN ERROR
> POP.DBF (DOS GREŠKA 32)
> POZVANA OD DBUSEAREA(0)
NG kaže DOS greška 32 - sharing violation...
> USE pop ALIAS pop1 INDEX pop11 NEW
> USE pop ALIAS pop2 INDEX pop12 NEW
Fali ti klauzula SHARED ...
clipper.531jitka,
Radi - Markoviću hvala.
clipper.533livan,
Ima li ko iskustva u radu sa bar-kod čitačima?
Trebao bih da prepravim jedan svoj stari program (za video klub) tako da
može da radi sa bar-kodom.
Interesantno bi mi bilo sve što znate na tu temu. Počev od hardvera, koji,
gde i pošto se može naći, pa do povezivanja sa clipper programom.
clipper.534kenza,
>> Ima li ko iskustva u radu sa bar-kod citacima?
Ja sam svojevremeno trebao da pisem neku bazu, pa sam se malo raspitivao. U
principu je najvaznije da se bar-kod citac(barem ona sapa) vezuje zajedno
sa tastaturom i radi preko njenog bafera. Sad, tako su mi rekli ali ja
nisam imao nikakvog prakticnog iskustva s tim... Ajde bas probaj pa mi
javi, OK?
clipper.535gcurcic,
> Ima li ko iskustva u radu sa bar-kod čitačima?
Trenutno kod jednog pacijenta arče neki nemački čitač.
Princip je prost: spravica se povezuje između tastature i compa i ono što
pročita, comp shvata kao uneto sa tastature. Sve funkcioniše pouzdano.
Ne treba mu nikakav drajver (ne troši memoriju), napaja se sa džeka za
tastaturu, a podešava se iz neke knjižice sa bar kodovima (zezalice tipa
"da li da po pročitanom kodu compu bude prosleđen i CR" i slično).
Sa programerske tačke, u bazi artikala treba obezbediti jedno polje širine
13 za šifru artikla. Naravno, nemaju svi artikli bar kod, a i oni koji imaju
ponekad kao da i nemaju (jel neko uspeo da pročita bar kod sa Štarkove krem
banane?). Takođe, postoji više standarda za bar kod. Najrašireniji je
13-cifreni. Sastoji se od (ako me sećanje služi) šifre zemlje (3 cifre),
proizvođača (5), artikla (4) i kontrolne cifre po mod 11. NE TREBA vršiti
logičku kontrolu po kontrolnoj cifri, zato što postoji more standarda, a
i zbog artikala koji nemaju svoj bar kod (hleb, sve u rinfuzu itd) i kojima
će korisnik izmisliti šifru.
Jedan ortak je ovako "doradio" svoju aplikaciju:
pošto je program već duže vreme u upotrebi i artikli su prešifrirani davno
pre nego što su dobili čitač, bilo je glupo postojeće šifre artikala menjati
bar kodovima, posebno zato što su nekim artiklima (motorna ulja) od više
proizvođača ranije dodeljene jedinstvene šifre. Drugi razlog je što se računi
štampaju na POS štampaču i što je gazda insistirao da na istima bude odštam-
pana puna šifra artikla, puni naziv, jedinica mere, količina, cena i vrednost.
Red na POS štampaču je širine 40 znakova, a tu je uleteo i POS displej sa po
20 znakova u dva reda, radi sexy efekta.
Zato je mučenik uveo još jedno polje za bar kod. Pri unošenju šifre od strane
prodavca, ista se prvo potraži među bar kodovima, pa ako se ne nađe, onda se
pretraga obavi među prvobitnim šiframa. Na POS štampaču se ne printa njegov bar
kod, već glavna šifra (zato što je njena dužina 5).
Kod unosa, prodavac prinese čitač na najviše 1,5 cm od koda na artiklu,
pritisne
dugme, a iz odgovarajuće baze se pročitaju relevantni podaci (naziv, j.m.,
cena)
i izbace na displej za mušteriju. Nezgoda je bila što onda treba da unese
količinu i pritisne Enter. Žongleraj. To smo rešili tako što smo načinili tablu
sa bar kodovima za brojeve od 1 do 20. Dovoljno je da, po unosu šifre, trgovac
čitačem pročita količinu sa te tabele.
Uzgred, formirali smo i tabelu za artikle koji nemaju bar kod, sa izmišljenim
šiframa. To će ti verovatno trebati kad budeš pravio šifarnik za video klub.
Neki matrični štampači (stari Fujitsu DX2200) mogu da štampaju bar kod, a
može se i iz Wina štampati na bilo kakvom štampaču uz upotrebu posebnog fonta.
clipper.536mmarkovic,
> Princip je prost: spravica se povezuje između tastature i compa i ono
> što pročita, comp shvata kao uneto sa tastature. Sve funkcioniše
> pouzdano.
Kažem ja, najbolje je kad ja prosto!
> Neki matrični štampači (stari Fujitsu DX2200) mogu da štampaju bar kod,
> a može se i iz Wina štampati na bilo kakvom štampaču uz upotrebu posebnog
> fonta.
Možeš li da okačiš taj font ?
clipper.537livan,
-> Neki matrični štampači (stari Fujitsu DX2200) mogu da štampaju bar kod,
-> a može se i iz Wina štampati na bilo kakvom štampaču uz upotrebu
-> posebnog fonta.
Imaš li možda te fontove za štampu iz Win-a, ili još bolje neko programče
koje generiše neku sličicu sa bar-kod šarom.
Ovaj moj "pacijent" hoće da u štampariji naruči par hiljada kartica za
članove sa odštampanim petocifrenim bar-kodom. Za sada neće da lepi bar-kod
i na kasete, ali poznajući ga, mislim da će mu i to dunuti za mesec dva.
Pa rekoh, mogao bih mu ja to pripremiti za štampu ako već nije neki problem.
clipper.538banga,
>> Neki matrični štampači (stari Fujitsu DX2200) mogu da štampaju
>> bar kod, a može se i iz Wina štampati na bilo kakvom štampaču
>> uz upotrebu posebnog
> Možeš li da okačiš taj font ?
Evo pronašao sam neki 3 od 9
bcodettf.zipclipper.539mmarkovic,
> > Možeš li da okačiš taj font ?
>
> Evo pronašao sam neki 3 od 9
Xvala, mada sam tražio za svaki slučaj. Zatrebace mi nekad,
sigurno, a vidim ima još interesenata.
clipper.540livan,
-> Evo pronašao sam neki 3 od 9
Baš lepo radi. To je ono što mi treba.
Hvala!
clipper.541vule.,
Nedavno sam nabavio Clipper ali ne mogu da napravim nijedan EXE fajl.
Linker prijavljuje sledece:
-------------------------------------- - - - - - - - - - - - - - - -
.RTLink for Clipper Dynamic Overlay Linker / Pre-Linker Version
3.14B
(C) Copyright Pocket Soft Inc., 1988-1991. All Rights Reserved.
Input Parsing Error. Caret (^) shows portion of line read when error
discovered.
box.obj
^
- - ------------------ - - - - - - - - ------- - - - - - - - - - - -
U cemu je stvar ?
Hvala
clipper.542mmarkovic,
> Nedavno sam nabavio Clipper ali ne mogu da napravim nijedan EXE fajl.
> Linker prijavljuje sledece:
Verovatno ispuštaš FILE klauzulu. Sintaksa je:
RTLINK FILE f1,f2,... LIB l1,l2,...
-------------
ne mora ako se koriste samo standardne biblioteke
Dakle:
RTLINK FILE f1,box
i dobiješ F1.EXE
clipper.543vule.,
Napravio sam .EXE fajlove ali oni nista NE RADE. samo se startuje
i odmah izadje bez prijave o gresci ili tako nesto...
O cemu se radi ?
Da posaljem neki primer takvog EXE fajla ?
HVALA unapred !
clipper.544suki,
» Napravio sam .EXE fajlove ali oni nista NE RADE. samo se startuje
» i odmah izadje bez prijave o gresci ili tako nesto...
Bolje bi bilo da posaljes sors kod programa (ako nije prevelik) ili da
debagujes svoj program, pa tako vidis gde ti je greska.
Pozdrav Suad.
clipper.545jolicm,
>Neće .EXE da radi ništa ....
Verovatno si kompajlirao sa opcijom /M, a nemaš funkciju ili
proceduru "MAIN"
U stvari siguran sam da je to.
clipper.546sasab,
> » Napravio sam .EXE fajlove ali oni nista NE RADE. samo se startuje
> » i odmah izadje bez prijave o gresci ili tako nesto...
>
> Bolje bi bilo da posaljes sors kod programa (ako nije prevelik) ili da
> debagujes svoj program, pa tako vidis gde ti je greska.
clipper <source> /m /n
+- obrati pa`nju na ovaj swič ako imaš f-ju/proc
Main() u glavnom modulu.
clipper.547livan,
-> Da posaljem neki primer takvog EXE fajla ?
Pošalji source, kraće je.
clipper.548vule.,
│ Pošalji source, kraće je.
└────────────────────────────────────
Ma BOKIR mi je pomogao, ali HVALA...
clipper.549jolicm,
Ima li neko od Vas FLIPPER 6.0 ili noviju biblioteku ...
clipper.550jolicm,
MOLBA ...
Da li neko od Vas ima grafičku biblioteku za clipper pod nazivom
FLIPPER i koju verziju.
Stvar mi je prilično hitna.
clipper.551jolicm,
Dal je neko od Vas radio sa Clipper 5.2 + Flipper 6.03 ??
Kod mene neće da se setuje rad u 800*600.
Imam S3 trio 64V+.
Da li je neko naterao rad u 800*600 i kako ?
clipper.552kajko,
Treba mi neko ko zna da skine zastitu HardLock.
Naime, preko firme smo kupili izvestan software, a ja
bi zeleo da ga instaliram kod kuce. Kontaktirao sam
i distributera, ali oni kazu da dolazi u obzir samo
da ga ponovo kupim za kucnu upotrebu. (2000 DM :) )
Program je inace za Win95, i staje na 4 (cetiri) HD
diskete (1.44).
Ukoliko je to ne predstavlja problem, moze li neko da mi
objasni na Mail kako se to radi.
Unapred zahvalan,
KAJKOŽsezam.co.yu
clipper.553jolicm,
Ko se od Vas služi BLinkerom ?
Treba mi hitna pomoć u vidu mail-a :)
clipper.554milpaun,
da li neko hice da mi kaze pod kojim uslovima radi onaj five win,odnosno da li
hoce da radi pod win 3.11 i na masini 386.Pretpostavljate da ove uslove ja
imam.Imam ja ,medjutim, jos jedan problem: ja zivim u Paracinu i imam modem
2400 pa kad bih poceo sa sezama da skidam taj clipper to bi iznelo sigurno
jedno 300 din racuna.Iz ovih razloga molim sve vas koji imate skinut ovaj
program i voljni ste da mi ga date da mi se javite na mail kako bi se
dogovorili oko preuzimanja.Puno vam hvala
clipper.556sjocic,
Nemam nikakva iskustva u programiranju sa Clipper-om, i za sad
samo jedno pitanje: kako kompajlirati program koji se sastoji
iz gomile *.prg fajlova. Dakle, kako dobiti Obj fajlove, kako
to linkovati i dobiti EXE ?
Clipper je 5.2 (ide na 2 diskete) i nemam nista od dodataka.
clipper.557livan,
Problem je u sledećem:
Redovno se dešava da program linkovan sa CA Tools bibliotekom neće da radi
na mašinama sa Cyrix procesorima bez obzira na model procesora i ploče.
Odmah po startovanju prijavi grešku "Divide by zero". Isti program radi bez
problema sa Intelovim i AMD procesorima.
Ima li neko rešenje?
clipper.558livan,
-> Nemam nikakva iskustva u programiranju sa Clipper-om, i za sad
-> samo jedno pitanje: kako kompajlirati program koji se sastoji
-> iz gomile *.prg fajlova. Dakle, kako dobiti Obj fajlove, kako
-> to linkovati i dobiti EXE ?
Uf! Ajde da malo uprostimo pa da krenemo samo od jednog PRG fajla, npr.
TEST.PRG. Kompajliraš ga sa 'clipper test', a linkuješ sa 'rtlink fi test'.
Ako imaš više programskih fajlova možeš svaki od njih kompajlirati posebno
uz dodavanje opcije /m iza imena fajla, a onda sve to linkovati tako što
navedeš listu svih OBJ fajlova 'rtlink fi test,upit,stampa' ili napraviš jedan
LNK fajl - file.lnk u kome navedeš sve te OBJ fajlove jedan ispod drugog a
ispred svakog dodaš 'file':
file test
file upit
file stampa
i onda samo kucaš 'rtlink Žfile.lnk'.
Ako koristiš i neku biblioteku koja nije Clipper-ova, onda je moraš spomenuti
u tom LNK fajlu i to na kraju a ispred njenog imena dodaš 'lib', npr.
lib nanfor. Ako linkuješ ručno onda 'rtlink fi test,upit,stampa lib nanfor'.
Ako se u modulima (prg fajlovima) javljaju procedure istog imena kao i modul,
pri kompajliranju treba navesti opciju /n.
Da bi se program mogao debagovati (cld - Clipper Debugger) treba navesti i
opciju /b.
Zgodno je, prilikom kompajliranja, navesti i opciju /w jer tada kompajler
prijavljuje warning-e.
Dosta za početak. Čitaj NG, a toplo ti preporučujem da nabaviš patch za
Clipper 5.2d ili 5.2e i da umesto rtlink-a koristiš blinker.
Ako ti ovo ne pomogne, pošalji mi to na mail pa ćemo videti šta s tim.
clipper.559posejdon,
Uputite me na literaturu, bilo šta, gde bi mogao da pročitam nešto o
korišćenju SIx-ova (npr. svi brojevi Računara u kojima je pisano o SIx).
clipper.560jolicm,
Nije za ovu konferenciju, ali kad je muka ...
KAKO DA DOBIJEM NAŠA SLOVA NA HP 6L ???
clipper.561livan,
-> Nije za ovu konferenciju, ali kad je muka ...
-> KAKO DA DOBIJEM NAŠA SLOVA NA HP 6L ???
Pretpostavljam da ti treba štampanje iz nekog DOS programa, verovatno
Clipper programa. U tom slučaju, prvo promeni kodnu stranu štampača u
CP852. To se može uraditi slanjem ESC sekvence pre teksta za štampanje.
Nemam pri ruci knjigu za HPLJ 6L pa ti ne mogu reći tačno, ali ako ne
nađeš javi pa ću potražiti. Drugi korak jeste da izvedeš da ti program
šalje tekst na štampu po istom, CP852, rasporedu. Ako na to ne možeš
uticati, skini sa Sezama prnconv.zip ili neki sličan program koji vrši
konverziju u letu. Na taj način možeš štampati naša slova bez obzira
na raspored koji se koristi u programu, bitno je samo da ih
konvertuješ pri štampi u CP852.
Evo ti dva ta konvertora.
konvert.zipclipper.562pesnik,
Hi!
Pre nekoliko dana ostavih poruku u 'pchard:laseri' da ne
mogu da setujem 5L. Posle kratkog delirijuma, uzeo sam
shareware koji to radi, debagovao, i nasao sta
se prosledjuje stampacu (nisam imao tech reference manual,
pa sam morao da trazim tako :), a zatim napisao kratak
.COM u asm-u. Btw, programchich ne kontrolishe stampac i
ne prijavljuje greske (dovoljno za 130 bajtova :).
Ako neko ima bolju ideju - odlicno.
Da, uz CP852, postavlja se Courier font (po defaultu).
Napomena: Program je isproban samo na HP LaserJet 5L, pa
ne znam kako funkcionise na drugim serijama.
Btw, uputstva koja se dobivaju uz HP stampace su veoma
lose pisana; ima par osnovnih ESC sekvenci za postavljanje
strane u portrait ili landscape mod i jos neke gluposti.
Da, primetio sam, na kraju uputstva, stoji napomena:
'This appendix is not intended to provide a complete set
of printer commands. An in-depth Technical Reference
manual set may be purchased separately.'
"""""""""""""""""""""""""""
Sta jos da kazem :(.
Inache, trazio sam po shinternetu nesto o PCL-u, medjutim
ono sta ima je ili iz '88, ili se placa info.
Pozdrav,
Marko alias Pesnik
yucp5l.comclipper.563emajsijuen,
Jel zna neko kako se pravi funkcija za citanje serijskog broja diska ? Inace,
je ne programiram u clipperu i nemam veze sa istim, a ovo pitanje je od jednog
ortaka. Heeeelpppp... :)
Pozdrav, Vlada...
clipper.564pesnik,
>> Jel zna neko kako se pravi funkcija za citanje serijskog
>> broja diska ? Inace, je ne programiram u clipperu i nemam
>> veze sa istim, a ovo pitanje je od jednog ortaka.
Ovako...Sam Clipper nema funkciju za citanje serijskog broja
diska. Istu je najbolje napraviti u ASM-u, koristeci DOSovu
nedokumentovanu funkciju 69h;
mov ah, 069 ; DOS Fn 69h / GetSet disk serial no
xor al, al ; citamo serial (AL = 0)
xor bl, bl ; default disk (BL = 0)
int 021 ; call dos
...
Posle izvrsenja, citamo DoubleWord sa ds:[dx+2], koji ujedno
predstavlja serijski broj. Dalje se igramo sa konvertovanjem
BCD to ASCII ili slicno. Medjutim, mislim da sam povredio
granice ove confe :).
Drugi nacin...programerski veoma nekorektan, ali funkcionise
i dobija se koristeci samo Clipper funkcije. Stvar se sastoji
u sledecem: - preusmeriti DOS komandu 'VOL' u fajl, i sa
odredjenih koordinata procitati serial number.
Recimo ovako:
-------------- CUT HERE ----------------
LOCAL disk_id := "1111-AAAA", ; && Serijski broj zadan u programu
red := 3, ; && Red u 'opis.tmp' u kom je Serial
kolona := 26, ; && Kolona - || -
tekst, ; && Ovde ide sadrzaj fajla
tekst_red, ; && Sadrzaj reda odredjenog
; && varijablom 'red'
ctrlnum && Kontrolni Serial za poredjenje
RUN vol > opis.tmp
tekst := Memoread( "Opis.tmp") && Citamo fajl 'Opis.tmp'
tekst_red := MemoLine( tekst, 79, red) && Citamo kompletan red
// Sad citamo 9 znakova sa koordinate red, kolona == Serial
ctrlnum := Substr( tekst_red, kolona, 9)
If ctrlnum != disk_id
? 'Serijski brojevi nisu isti!'
Else
? 'Serijski brojevi su isti.'
Endif
Erase Opis.tmp
Release all
Quit
-------------- CUT HERE ----------------
Kao sto rekoh, ovo je primer programa tipa 'po svaku cenu' i
zavisi od verzije DOSa, medjutim koristan je za pocetnike i ljude
koji ne vole ASM. S druge strane, u slucaju da 'gazde' promene
kolonu ili red na kom se ispisuje serial, mora da se menja i
source. Zato bi predlozio da se ovo ipak odradi u ASM-u. S trece
strane, DOS fn 69h jeste jelte...nedokumentovana, i najbolje je da
se odustane od svega. :)
poz,
Marko alias Pesnik
clipper.565emajsijuen,
│ Ovako...Sam Clipper nema funkciju za citanje serijskog broja
│ diska. Istu je najbolje napraviti u ASM-u, koristeci DOSovu
│ nedokumentovanu funkciju 69h;
└────────────────────────────────────────────────
Ma znam ja to da napravim u pascalu (preko asm-a). Ortaku to treba bas u
clipper-u. Kaze da bi mu pomogao i neki .obj fajl. Ima li neko tako nesto ?
Pozdrav, Vlada...
clipper.566kojai,
>> Ma znam ja to da napravim u pascalu (preko asm-a). Ortaku to treba bas u
>> clipper-u. Kaze da bi mu pomogao i neki .obj fajl. Ima li neko tako nesto ?
Pa uradi program u assembleru pa ga iskompajliraj sa tasm.exe u obj...
clipper.567pesnik,
* >> Ma znam ja to da napravim u pascalu (preko asm-a). Ortaku to
* >> treba bas u clipper-u. Kaze da bi mu pomogao i neki .obj fajl.
* >> Ima li neko tako nesto ?
*
* Pa uradi program u assembleru pa ga iskompajliraj sa tasm.exe u obj...
Tacno...samo tu mogu da se pojave problemi oko komunikacije
Clipper-a sa navedenim .obj. Drugim recima, treba da se poznaju
interne Clipper f-je, (kako se pomera stack pointer, gde su
parametri i ostale djidjamidje). Najbolje je da covek pretrazi
literaturu, jer ovde nema dovoljno prostora za sve to :).
Btw, ako budem imao vremena...napravicu .obj. U poslednje vreme
sam nesto van forme (citaj nemam vremena), pa ne znam kad bi isti
mogao da bude gotov. Inace, sam serial treba da se koristi zajedno
sa ostalim sredstvima za zastitu programa (ako je to u pitanju)
jer sam ne predstavlja veliki problem krekerima. :)
poz,
Marko alias Pesnik
clipper.569pesnik,
Evo...nesto mi djavo nije dao Miru...ovaj...mira, pa
sedoh i napisah programcic u ASM-u za uporedjivanje serijskog
broja aktivnog diska sa nekim, zadatim, kao i jednostavno
citanje istog. Izvinite zbog lupetanja u 'read.me'...ali to je
nesto sto mi je pre neko vreme donelo gadne neprilike
(mislim...neposedovanje istog). :)
poz,
Marko alias Pesnik
serialno.arjclipper.570sjocic,
Koju bi knjigu preporucili za ucenje Clipper-a?
Ne neko silno teoretisanje, vec primena kroz primere.
clipper.571kostja,
=> Koju bi knjigu preporucili za ucenje Clipper-a?
=> Ne neko silno teoretisanje, vec primena kroz primere.
Za svagda i zanavjek: Rick Spence "Clipper 5 - Vodič
za programere" izdanje Mikro Knjige.
clipper.572jolicm,
Zdravo.
Rešio sam da predjem na CLIP4WIN.
Instalirao sam ga, podesio staze i set naredbe ...
ali na samom startu videh u primerima da traži neki RC.EXE,
kaže da je to resource compiler ...
Pitanje i molba: da li neko od Vas ima taj RC.exe i ako ga ima odmah i
velika molba !!!.
Da li će mi još koji alat trebati ... ?
Uopšte kakva su iskustva sa CLIP4WIN ...
šta je sve potrebno osim exe ffajla prebaciti na korisničku mašinu ...
clipper.573jolicm,
Ajde ljudi ko ima 16 bitni resourse kompajler. Treba mi zbog Clip4Win.
Velika molba pa na mail.
clipper.574drbuca,
a lis neko zna da mik kaze zasto mi ispisuje procesor stack fault u
sred zivrsavanja programa.Ako neko zna molim neka mi dogori!!!!!!
clipper.575udav,
Mnogo cesto se gubi memorija pri izvrsavanju programa,i prikazije
greska processor stack fault ili uncoverable error 650.Molim vas
recite mi kako ovo da popravim
p.s.
(ova adresa je pozajmljena)
clipper.576pesnik,
>> Mnogo cesto se gubi memorija pri izvrsavanju programa,i prikazije
>> greska processor stack fault ili uncoverable error 650.Molim vas
>> recite mi kako ovo da popravim
Kako se gubi memorija?
Jel radis pod w95 u DOS-u?
Jel imas neke ASM/C alatke u samom .EXE?
Prvo odgovori na ova dva pitanjca...pa cemo da vidimo...inace...ne
znam koliko se bavis Clipper-om...no...pogledaj koliko program
zahteva memorije...Taj podatak dobijas neposredno posle linkovanja.
Inace...clipperova boljka su ogromni .exe.
Na primer:
>> .RTLink for Clipper Dynamic Overlay Linker/Pre-Linker Version 3.14B
>> (C) Copyright Pocket Soft Inc., 1988-1991. All Rights Reserved.
>>
>> 137K
Ono 137K je, recimo, neka cifra. E sad...da bi program radio,
potrebno mu je na to jos 120K konvencijalne memorije (minimalno)...optimalan
rad zahteva +160K.
znaci: minimalno -> 137K + 120K = 257K
optimalno -> 137K + 160K = 297K
Sad, moras da uporedis slobodnu memoriju, sa onim koliko program
zahteva. Pogledaj prvo to...sami uzroci ovakvog i slicnih problema mogu da
budu razliciti...zato...ne gubi strpljenje :).
clipper.577suki,
Ako koristis Blinker probaj da dodas ovu liniju u *.lnk datoteku:
BLINKER PROCEDURE DEPTH n
gde je n > 60
Pozdrav,
Suad
clipper.578livan,
Treba mi algoritam po kome se izra~unava kontrolna cifra u jedinstvenom
mati~nom broju gra|ana (JMBG).
clipper.579bolep,
DA li neko zna gde mogu nabaviti Visual Basic 4.0 u Novom Sadu ili
Beogradu.
clipper.580udav,
>> Kako se gubi memorija?
>> Jel koristis w95 u DOS-u?
>> Jel koristis neke asembler alatke?
Proveravam da se memorija gubifunkcijom memory()
Kada nema dovoljno memorije ispisuje:
"Processor stack fault"
ili
"Uncoverable error 650"
___________________________________________
Da,koristim Windows 95u dos-promptu
___________________________________________
Ne,ne koristim asebmler alatke
clipper.581jujo,
Jedan lik me danas pitao za program za vodjenje STR-a. Pozeljno je
da ima magacin, ulaz-izlaz, dvojni kurs, crno-belo...Ako neko
ima nesto, neka mi se javi da ga povezem sa covekom...
yooyo:
clipper.582udav,
Pesnice ... nazalost zaboravio sam broj tvoje poruke, taka da ti saljem
pitanje jos jednom ... izvini :-)
Zasto dobijam prijavu o gresci : "processor stack fault" ili "unrecovalable
error 650" pri izvrsavanju programa, posle nekog vremena ? Zapravo jednostavno
sa memory() proverim koliko memorije ima/nema i dobijaju se neki sasvim
nepovezani rezultati. Ove greske se javljaju usled nedostatka memorije, ali
nije mi jasno ZASTO SE KOLICINA SLOBODNE MEMORIJE SMANJUJE ???
Napominjem da prijava u vezi slobodne memorije nema nikakve veze sa brojem
varijabli, velicinom baze sa kojom radim ... i uopste, nista nije logicno ni
povezano. Inace, koristim WIN97.
UNAPRED ZAHVALAN
clipper.583aris,
Greska je runtime (650 vidi norton guide za clipper).
Ne mora (generalno) da znaci da je problem u nedostatku memorije vec
da ti se u source-u potkrala greska koju compiler nije prijavio (neka
varijabla nije inicijalizovana, ne postoji polje u bazi...)
(Mozda pokusas clipper <neki-prg> /m /n /w /a)
Verovatno si setovao u autoexecu:
set clipper=//f:40 //dynf:4 //swapk:4096 //noidle
set temp=c:\temp
Mogao bi da pokusas reindex baza ako prethodno pobrises index
datoteke.
Koristi RTLINK.
Imam iskustvo i sa EXE-om od 1 mega koji radi pod WIN9.. bez problema.
P.S. (Nazalost na SEZAM NET-u CLIPPER JE MRTAV!)
clipper.584udav,
Zeleo bih da ti se zahvalim sto si odgovorio na moju poruku. Drago mi je da na
Sezamu ima ljubaznih ljudi spremnih da pomognu.
>> Greska je runtime (650 vidi norton guide za clipper)
Priznajem, zvuci cudno, ali ne mogu da nigde nadjem gresku 650. Pogledao sam u
poglavlju o runtime-error-ima, ali je jednostavno nema.
Gledao sam u NG za clipper 5.2.
-----------------------------------------------
>> Mozda pokusas clipper <neki-prg> /m /n /w /a
Nazalost ne mogu da koristim opciju /m jer mi .prg fajl poziva druge .prg
fajlove.
-----------------------------------------------
proc aga
local mmm:=space(20)
alert(str(Memory(0),10,2)+str(Memory(1),10,2)+str(Memory(2),10,2))
@ 1,0 get mmm
read
aga()
Pokusaj ovaj program i vedeces kako se memorija gubi pri izvrsavanju. Ovo nije
deo programa u kojem mi je problem bitan, ali demonstrira situaciju.
-----------------------------------------------
>> set clipper=//f:40 //dynf:4 //swapk:4096 //noidle
>> set temp=c:\temp
Ne, mislim da u tome nije problem. Sve je setovano po default-u. Evo kako
izgleda ...
SET INCLUDE=E:\ALATI\CLIPPER5\INCLUDE
SET LIB=E:\ALATI\CLIPPER5\LIB
SET OBJ=E:\ALATI\CLIPPER5\OBJ
SET PLL=E:\ALATI\CLIPPER5\PLL
PATH=E:\ALATI\CLIPPER5\BIN;E:\alati\clipper5\NG;%path%
-----------------------------------------------
>> Mogao bi da pokusas reindex baza
>> ako prethodno pobrises index
>> datoteke.
U gornjem primeru vidis da nazalost nije do toga ...
-----------------------------------------------
>> Koristi RTLINK.
Koristim ga.
-----------------------------------------------
>> P.S. (Nazalost na SEZAM NET-u CLIPPER JE MRTAV!)
Ma, ne, to ti je isti slucaj kao sa LEWIS farmerkama "legenda zivi" :-)
POZDRAV
clipper.585jolicm,
Ne bi da se mesam ali ...
Proc Aga
Local ...
Allert ...
@ x, y Get ..
Read
Aga()
E ovo ce ti SIGURNO dati gresku zauzeca memorije (ukoliko ovako stoji
u samom programu). Procedura poziva samu sebe beskonacan broj puta i
puni memoriju ...
To si napisao samo kao primer, a ako ti tako stoji i u programu eto
ti veselja ...
clipper.586udav,
E, evo malog program za kripciju/enkripciju koji smo ja i brat
napravili u clipper- u ...
Uros Davidovic
pri.zipclipper.587pesnik,
│ Nazalost ne mogu da koristim opciju /m jer mi .prg fajl poziva
│ druge .prg fajlove.
└──────────────────────────────────────────────────────────────────────
Pa napravi .CLP fajl, u kome navedes sve prg-ove, a zatim ga
prevodis sa:
cliper @test.clp /m
Mozes i da navedes vise .clp fajlova, posle prevodjenja:
clipper @test1.clp /m
clipper @test2.clp /m
clipper @test3.clp /m
dobija se: test1.obj, test2.obj, test3.obj, tako da ti to
omogucuje samostalno kreiranje sadrzine .obj.
pozdrav
PS: Sori, nisam dugo prelistavao confu...imao posla
clipper.588pesnik,
│ Jedan lik me danas pitao za program za vodjenje STR-a. Pozeljno
│ je da ima magacin, ulaz-izlaz, dvojni kurs, crno-belo...Ako neko
│ ima nesto, neka mi se javi da ga povezem sa covekom...
└──────────────────────────────────────────────────────────────────────
Ja se bavim pravljenjem software-a za knjigovodstvene i druge namene
u oblasti finansija. Medjutim, to sta ti covek trazi, jeste nesto
drugo, i ne verujem da se takvo nesto 'proizvodi' serijski. Problem
je crno/belog. Medjutim, ja ljudima sugerisem, da odvoje crno od
belog u startu. Malo se usloznjuje manipulacija, ali su rezultati
posle duzeg perioda koriscenja programa mnogo bolji. Tacnije, ljudi
koji drze sve na jednom mestu, mislim na crno/belo, posle nekog
vremena dolaze do situacije da im program postaje neupotrebljiv. No
necu da tupim o tome...sve je stvar organizacije posla.
Da, osim toga, softverske kuce to ne stavljaju u osnovni paket
za prodaju, posto bi time ugrozili sebe, jelte. Dodje im finansijska
il' neka druga inspekcija i pita sta to 'prave'. Zbog toga,
oni crno/bele stvari pripisuju necemu sto se zove 'posebna porudzbina'
i to, naravno, drugacije naplacuju. Takodje, osigurali su istim svoja
ledja, govoreci da je to od njih trazio neki subjekat i da su oni to
uradili tako, ne ulazeci u problem da li je isto zakonito ili ne.
pozdrav
clipper.589pesnik,
Video sam programcic. Lepa ideja, medjutim, mislim da bi imao neku
primedbu vezanu za nacin izvedbe. Recimo, ocito je da ste koristili
ascii char set za mask-ovanje stringa i to u reversed obliku od
255 - 0. Da ne duzim dalje, kako je i sta je uradjeno, recimo,
bio bi spreman, za opkladu, razvaliti sadrzaj smislene poruke
duzine cca 1k kriptovane ovim programom, za mozda koji sat, al'
da ne prenaglim - jedan dan :).
pozdrav
clipper.590dr.grba,
>> i to, naravno, drugacije naplacuju. Takodje, osigurali su istim svoja
>> ledja, govoreci da je to od njih trazio neki subjekat i da su oni to
>> uradili tako, ne ulazeci u problem da li je isto zakonito ili ne.
Zakon je svoje već rekao: pisanje softvera za crno knjigovodstvo
je kažnjivo.
clipper.591zlatan,
dali je neko radio sa clipper 5.3
imam problem kad kompajliram sa sixdrv javlja mi da ne postoji
funkcija koja
koja u stvari postoji
clipper.592zlatan,
clipper kao program je jednokorisnicki u osnovi pa kad se startuje pod
win95 ponasa se kao da je u mrezi. zato kad radi pojedinacno moze da brise
fajlove a u win95 se pojavljuje acces denied. potrebno je kao sto bi za
mrezu uradio da se datoteke i tretiraju mrezno tj set exclusive i tako to.
clipper.593sjocic,
Da li neko može da raspakuje ovaj fajl (samoraspakujući) ?
Naime, to je sadržaj diskete koja ide uz knjigu Clipper 5, u izdanju
Mikro knjige. Fajl (disketu) sam preuzeo sa njihovog sajta.
cl5_prg.execlipper.594kovacevicd,
Kako da u clipper-u 5.2 proverim da li postoji data funkcija
ili procedura ali bez aktiviranja date funkcije ili procedure!
clipper.595mimap,
Jedno pitanjce ovako padobranski..
moze li da se linkuje clipper 5.2 sa borlandom c++ 3.11 ?
if moze
kako?
else
'fala
endif
return
:))
clipper.596pesnik,
│ moze li da se linkuje clipper 5.2 sa borlandom c++ 3.11 ?
│
│ if moze
│ kako?
│ else
│ 'fala
│ endif
└──────────────────────────────────────────────────────────────────────────
Static Proc DaLiMoze( moze)
If moze
? 'Compiliras c source u .obj, clipper source u .obj i linkujes, s'
? 'tim sto je vazno da li pozivas neku fn clippera iz c++ ili'
? 'obrnuto. Onda potrebne interne funkcije (i varijable) moras da'
? 'proglasis za Extrn, a tvoje f-je za Public (u assembleru). Doduse sa'
? 'c-om nisam radio, ali sve lepo funkcionise u .asm-u. Ako oces mogu'
? 'da uploadujem source. Da, takodje je vazno da poznajes (ili nadjes'
? 'literaturu) Clipper-ove i C-ove interne funkcije uradjene u .asm-u.'
? 'Inace, spisak clipper internih f-ja ima u \clipper\include dir-u,'
? 'neki od .inc fajlova.'
Else
? 'E ovo ne moze!'
Endif
Return
clipper.597sjocic,
Potreban Blinker 5 (ne demo) ili info gde se isti može naći/kupiti.
clipper.598sljubisic,
Poznanik me je zamolio da upitam da li neko zna gde se moze naci instalacioni
"CA-Visual Objects 2.0".
Zahvaljujem na svakoj informaciji.
clipper.599mradosav,
Postovanje,
da li bi neko mogao da mi posalje clipper 5.2
Hvala,
Miroslav
clipper.600uuud,
Jel nabavio neko Delphi 4.0 ? Ima li nekih poboljsanja ?
Goran.
Zna li neko kako mogu vise edit box-ova da stampam na jednom
papiru, po nekom mom rasporedu, koji ja zelim ? Zna li neko kako se
stampa DBGrid ?
Goran.
> Jel nabavio neko Delphi 4.0 ? Ima li nekih poboljsanja ?
Cuo sam da Delphi 4.0 ne radi za S3 virge grafickom, ali na sajtu
ima patch. Toliko ja znam o cetvorci :)
>> > Jel nabavio neko Delphi 4.0 ? Ima li nekih poboljsanja ?
Mogu samo reci da program radi fenomenalno...
>> Cuo sam da Delphi 4.0 ne radi za S3 virge grafickom, ali na sajtu
>> ima patch. Toliko ja znam o cetvorci :)
Xex... Sto ne bi radio? Sa starim Diamondima radi, a to je takodje
S3 chipset...
Isa
Zna li neko kako mogu program (Delphi 2.0) da minimizujem u taskbar
(Win9x) ???
Hvala.
Vidim da je ovde tesko dobiti odgovor na pitanje i pored toliko
molbi, ali ajde da postavim jedno pitanje (mozda ce se neko konacno
smilovati da mi odgovori).
Dakle, treba napraviti program koji izracunava sledece :
d:=sqrt(sqr(x2-x1)+sqr(y2+y1))
x1,x2,y1,y2 se unose preko edit boxova. E sad ja znam za onu
proceduru Val, koja konvertuje String u Integer, ali problem je u
tome sto funkcija SQRT radi samo za Real tip a ne za integer. I sad
ne znam sta da radim.
Ajde ljudi smilujte se, ako nista bar zato sto me nije mrzelo
da pisem ovoliku poruku. ;))
Goran.
> d:=sqrt(sqr(x2-x1)+sqr(y2+y1))
> x1,x2,y1,y2 se unose preko edit boxova. E sad ja znam za onu
> proceduru Val, koja konvertuje String u Integer, ali problem je u
> tome sto funkcija SQRT radi samo za Real tip a ne za integer. I sad
> ne znam sta da radim.
Pa treba da stavis u programu da su ti promenjlive float, a mislim
da se to u delphiju zove Real, ako stavis integer onda ces moci
da unosis samo celobrojne vrednosti. Razlog zasto nece SQRT je taj,
sto ako izaberes integer, izlaz isto mora da bude integer, sto je
ok ako recimo uneses 4, ali ako unesec 5 tu vec u rezultatu imas,
i decimalni zarez, a to nije integer vec float, neznam kako se to radi
u delfiju, ali recimo da ti ulazi bude integer a izlaz float, to bi onda
bilo ok...
>> u delfiju, ali recimo da ti ulazi bude integer a izlaz float,
Sve je to OK, ali ne postoji, koliko sam ja uspeo da provalim,
procedura koja konvertuje iz Stringa u Float. :(
Val konvertuje iz stringa u integer, a Str iz integeraa u string, a
ne znam kako da to isto radi za float (string->float).
Goran.
> Vidim da je ovde tesko dobiti odgovor na pitanje i pored toliko
> molbi, ali ajde da postavim jedno pitanje (mozda ce se neko konacno
> smilovati da mi odgovori).
> Dakle, treba napraviti program koji izracunava sledece :
> d:=sqrt(sqr(x2-x1)+sqr(y2+y1))
> x1,x2,y1,y2 se unose preko edit boxova. E sad ja znam za onu
> proceduru Val, koja konvertuje String u Integer, ali problem je udijak.rarclipper.601roach,
Citaj pod RAZNO