PCPROG.2

06 Nov 1992 - 26 Jul 1993

Topics

  1. algoritmi (223)
  2. ms.dos (250)
  3. asembler (141)
  4. jezici (278)
  5. pascal (1307)
  6. cccc (752)
  7. cpp (91)
  8. clipper (1027)
  9. baze.podataka (229)
  10. razno (379)
  11. van.teme (189)
  12. basic (56)

Messages - clipper

clipper.921 bstevan, -> #916, goranr
>>> Evo nešto za sve Clipperaše: Menjanje sistemskog datuma bez RUN >>> komande! Gorane to je što sam hteo, hvala na prilogu. pozdrav, BSTEVAN
clipper.922 bstevan, -> #919, nbatocanin
>>> Već sam odgovorio - moguće, mada u opštem slučaju - ne. Ako >>> praviš izmene, obavezno pređi na LOCAL i STATIC promenljive, >>> kodne blokove i program će ti svakako biti brži. Nenade hvala na odgovoru, i svima koji su ucestvovali u raspravi o pitanjima koji su pokrenuti u vezi promene sitemskog datuma i o brzini prilikom prevodjenja sa S87' -> 5.01. pozdrav, BSTEVAN
clipper.923 gaston,
Zdravo ! Skoro sam nabavio CA Clipper 5.2, evropsku verziju i skinuo sa Sezam-a zakrpu za verziju 5.2A, ali je ona samo za americku verziju Clipper-a. Naravno, ne mogu da zakrpim Clipper 5.2. Da li je nekko resio problem i kako ? Moze i slanje zakrpe americke verzije...
clipper.924 goranr, -> #921, bstevan
OK, javi kako radi, i javi ako ti treba ASM sors.
clipper.925 dr.grba, -> #917, nbatocanin
>> > Izgleda mi da Clipper to nema, a nema ni NanFor v2.1 >> >> Možda i postoji negde interno. Ako ti to treba, zašto ne zameniš >> USE naredbu svojom koja pravi tabelu gde je šta otvoreno? Zlobo, lepo sam ti rekao... P.S. Izvinjavam se ostalima, reč je o jednoj privatnoj poruci, koja sadrži sugestiju sličnu Nenadovoj.
clipper.926 dr.grba, -> #920, d.petrovic
>> A MENU.OBJ je dovoljno mali i često pozivan da zaslužuje da bude >> resident :) MENU.OBJ je u redu, nego je reč o procedurama/funkcijama pozivanim iz menija. Verovatno mali broj programera vodi računa o ovakvim stvarima. Ima jedna zanimljiva rasprava o linkovanju, doduše u Cl S'87, ali principijelno zanimljiva, u knjizi S. Straley-a.
clipper.927 d.petrovic, -> #926, dr.grba
Ă> MENU.OBJ je u redu, nego je reč o procedurama/funkcijama Ă> pozivanim iz menija. Verovatno mali broj programera vodi računa o Ă> ovakvim stvarima. Šio mu ga Džordž. Pa kad izabereš stavku u meniju najčešće se otvori po neka baza? E, ako se prvo učita overlej pa onda otvara dalje bazu(e) ko će ga znati šta kad radi. Uostalom vrlo brzo nauči šta da zadržava u memoriji od overleja. Zanimljive stvari su mi se dešavale kad sam samo šetao kroz menije, a menu.obj linkovao sa resident. Startujem prvo recorder.com, pa jedan program, pa resetujem recorder, pa drugi program. Samo dok uđeš u menije i izađeš 40-ak puta otvori sjebe samoga.
clipper.928 bstevan, -> #924, goranr
>>> OK, javi kako radi, i javi ako ti treba ASM sors. Radi ok, baš ono što sam i mislio. Takodje bi ti bio zahvalan da pošalješ i ASM sors. pozdrav, BSTEVAN
clipper.929 snemcev, -> #910, solajac
>> - Verovali ili ne: SEEK radi brze od SKIP (ovo sam procitao u >> NGUIDE.ART -skino sa SEZAMA-, ali nisam proverio) >> >> When one can make SEEK instead of skipping through database, >> it's much faster ... Ne, ne, ne i po sto puta ne! Gore naveden citat u slobodnom prevodu znači: indexiraj datoteke i traži onaj slog koji ti treba sa SEEK, a ne da se od početka baze pa do sloga koji ti treba šetaš sa SKIP, slog po slog.
clipper.930 ialeksic,
IA> zdravo svima! IA> Ja sam novi korsnik i imam jednu molbu. IA> IA> Evo kratkog (!?) uvoda: IA> Trenutno pravim funkcijsku biblioteku rutina za Clipper kojom bi IA> se komuniciralo sa hostom korscenjem razlicitih adaptera. Pri tom IA> koristim neke gotove API-je, a za neke pisem sam drajvere u C-u. IA> IA> Svojevremeno sam imao u rukama knjigu, koju mislim da s pravom IA> mnogi hvale u ovoj temi: Rick Spence... Tamo je koliko se secam IA> bila jedna zgodna mala rutina (u poglavlju za Extend sistem) koja IA> preusmerava pozive standardnih C funkcija _MALLOC() i _FREE() u IA> Clipper funkcije _XGRAB() i _XFREE() tako da se ne moraju menjati IA> funkcije originalnih servisa (na primer iz gotovog APIa) a i IA> bazne rutine se onda mogu pozivati i iz C-a i iz Clippera, IA> Foxa(?) itd. IA> IA> Elem, ne zelim da izmisljam toplu vodu, a knjigu - je li - nemam, IA> niti sam je nasao u prodaji (trazio!). Zato molim neku dobru dusu IA> :) da to stavi na mail ili bilo gde na SEZAMU (kako cu to posle IA> da nadjem?). IA> IA> Pozdrav svima uz odlican utisak o ovoj konferenciji. IA> IA> Ivan A.
clipper.931 goranr, -> #928, bstevan
OK, evo ga. setdate.asm
clipper.932 bstevan, -> #910, solajac
>>> Verovali ili ne: SEEK radi brze od SKIP (ovo sam procitao u >>> NGUID.ART -Skinuo sa SEZAMA,ali nisam proverio) Ali to nije za verovali ili ne.VERUJEM stim da sam to i probao. pozdrav, BSTEVAN
clipper.933 bstevan, -> #931, goranr
>>> OK, evo ga. HVALA ! pozdrav, BSTEVAN
clipper.934 dr.grba, -> #930, ialeksic
>> IA> Elem, ne zelim da izmisljam toplu vodu, a knjigu - je li - nemam, >> IA> niti sam je nasao u prodaji (trazio!). Zato molim neku dobru dusu Ako te interesuje Spenceova knjiga, bilo je već reči ovde, nazovi "Mikro knjigu", 542-516, oni kjnige distribuiraju uglavnom pouzećem. Ovo zbog cene ): P.S. Molim te, izbaci ono "IA>" sa početka svojih redova, tako liči na quote nečije tuđe poruke, pa malo zbunjuješ nas koji čitamo.
clipper.935 gaston,
3 pitanja: 1. Je li neko uspeo da americkom verzijom zakrpe (PATCH) zakrpi CA Clipper v5.2 i ako jeste kako???? 2. Ima li neko iskustva sa o:Clip (P.M.Freese, CyberSoft) i Object (JHK-Software, Piestany) objektnim bibliotekama? Zvuce vrlo privlacnoa pitam se da li su u praksi upotrebljive... 3. Posedije li neko objektnu lib Class(y) koja se spominje kao alternativa biblioteci o:Clip u dokumentaciji lib Object ?? Gaston- Nesa
clipper.936 snemcev, -> #917, nbatocanin
>> Možda i postoji negde interno. Ako ti to treba, zašto ne zameniš USE >> naredbu svojom koja pravi tabelu gde je šta otvoreno? He, he, pa zar nemam "knjigu u kojoj sve piše" ;)) Još samo ubacim jedan niz i voila! Dr.Grba mi je baš to u mail-u predložio. Predlog je jednoglasno usvojen.
clipper.937 dejanr, -> #935, gaston
>> 2. Ima li neko iskustva sa o:Clip (P.M.Freese, CyberSoft) i Object >> (JHK-Software, Piestany) objektnim bibliotekama? Zvuce vrlo privlacnoa >> pitam se da li su u praksi upotrebljive... Bio je prikaz o:Clip-a u "Računarima 82", strana 30
clipper.938 nbatocanin, -> #935, gaston
> 1. Je li neko uspeo da americkom verzijom zakrpe (PATCH) > zakrpi CA Clipper v5.2 i ako jeste kako???? Baš kao što piše u uputstvu zakrpe, više se ne sećam tačno, ali znam da je bilo prosto. > 2. Ima li neko iskustva sa o:Clip (P.M.Freese, CyberSoft) > i Object (JHK-Software, Piestany) objektnim bibliotekama? > Zvuce vrlo privlacnoa pitam se da li su u praksi > upotrebljive... Probao sam o:Clip i Class(y). Nesumnjivo bolja je Class(y), a kako kažu stranci, bolja je i od ostalih. Što se tiče upotrebljivosti, ogromna je ;) Ali: svaka sledeća verzija Clipper-a zahteva *novu* verziju biblioteke, što obično nije tehnički problem nego želja autora biblioteke. Tako smo ovde videli Class(y) koji radi sa 5.0 ali ne radi sa 5.01! Nabavka novih verzija može biti ogroman problem, pa je zato totalno nepreporučljivo njihovo korišćenje. Još jedna stvar ovome u prilog je i što će Clipper 6.0 sasvim sigurno imati objekti koji nisu kompatibilni sa ovim bibliotekama. Kao prelazno rešenje preporučujem pseudo-objekte (objekte realizovane u čistom Clipper-u). > 3. Posedije li neko objektnu lib Class(y) koja se spominje > kao alternativa biblioteci o:Clip u dokumentaciji lib > Object ?? Nemam neku verziju koja normalno radi: sve su na neki način osakaćene :(
clipper.939 aquarius, -> #878, cnenad
>-> Kako mogu da napravim sledecu stvar: >-> >-> da kad se vrsi poziv exe fajla iz dos-a prenese odredjeni >-> argument ili parametar programu koji treba da znaci da ne >-> treba da izvrsi deo programa gde se startuje uvodni deo >-> ekrana. Ne znam da li to radis u Clipper-u 5.xx, ali ako radis evo... Otvoris novi fajl, npr. MyInc.ch ili u neki postojeci stavis sledece MyInc.ch /bof/ #command FIRSTDEF <xpar> TO <xval> [, <xparn> TO <xvaln> ] => ; <xpar> := IF( <xpar> = NIL, <xval>, <xpar> ) ; [; <xparn> := IF( <xparn> = NIL, <xvaln>, <xparn> ) ] /eof/ >-> Dajem primer source koda: >-> glavni.prg ide ovako #include "MyInc.ch" para MyParam FIRSTDEF MyParam TO Nil E sad MyParam ima vrednost Nil, osim ako na komandnoj liniji ne stavis C:\Glavni uradjeno naslovna := MyParam etc ... IZBACIS !!! => naslovna="uradjeno" i onda if Upper( naslovna ) == "URADJENO" etc ... To bi bilo to... :) ~Aquarius~
clipper.940 aquarius, -> #935, gaston
>->3. Posedije li neko objektnu lib Class(y) koja se spominje kao alternativa >-> biblioteci o:Clip u dokumentaciji lib Object ?? Poseduje... :) ~Aquarius~
clipper.941 aquarius, -> #878, cnenad
>-> Kako mogu da napravim sledecu stvar: >-> >-> da kad se vrsi poziv exe fajla iz dos-a prenese odredjeni >-> argument ili parametar programu koji treba da znaci da ne >-> treba da izvrsi deo programa gde se startuje uvodni deo >-> ekrana. Ne znam da li to radis u Clipper-u 5.xx, ali ako radis evo... Otvoris novi fajl, npr. MyInc.ch ili u neki postojeci stavis sledece MyInc.ch //////// /bof/ #command FIRSTDEF <xpar> TO <xval> [, <xparn> TO <xvaln> ] => ; <xpar> := IF( <xpar> = NIL, <xval>, <xpar> ) ; [; <xparn> := IF( <xparn> = NIL, <xvaln>, <xparn> ) ] /eof/ //////// >-> Dajem primer source koda: >-> glavni.prg ide ovako #include "MyInc.ch" para MyParam FIRSTDEF MyParam TO Nil E sad MyParam ima vrednost Nil, osim ako na komandnoj liniji ne stavis C:\Glavni uradjeno naslovna := MyParam etc ... Izbacis !!! => naslovna="uradjeno" i onda if Upper( naslovna ) == "URADJENO" etc ... To bi bilo to... :) ~Aquarius~
clipper.942 aquarius, -> #935, gaston
>->3. Posedije li neko objektnu lib Class(y) koja se spominje kao alternativa >-> biblioteci o:Clip u dokumentaciji lib Object ?? Poseduje... :) ~Aquarius~
clipper.943 cnenad,
Interesuje me da li je moguce da se TBROWSE klasom napravi BROWSE slican paketu DBASE IV gde mogu da se i menjaju podaci u poljima baze a ne samo pregledaju jer primer koji imam u knjizi o kliperu daje istu stvar kao i funkcija DBEDIT() ? Probao sam da napravim sledecu stvar iz clipper-a sto je delimicno uspelo a to je izlaz u DOS i to sa obicnim RUN COMMAND ali kad sam trebao da se vratim u clipper sa exit iz DOS-a racunar se zaglavio. Ima li resenja za ovo ?
clipper.944 cnenad,
Molim jos jednom, ako neko ima umetak iz racunara od Nenada Batocanina da mi ga pozajmi da ga isfotokopiram. Dogovor preko mail-a na CNENAD. Hvala.
clipper.945 ialeksic, -> #934, dr.grba
20 DEM SEZAM 30 DEM RS -------------- 50 DEM O-LA-LA!, sta bi bilo da sam se raspitivao za 5.2, dal' bi dobio telefon Computer Associates-a ;>
clipper.946 v.nesic, -> #943, cnenad
> Interesuje me da li je moguce da se TBROWSE klasom napravi BROWSE > slican paketu DBASE IV gde mogu da se i menjaju podaci u poljima baze a > ne samo pregledaju jer primer koji imam u knjizi o kliperu daje > istu stvar kao i funkcija DBEDIT() ? Recimo da uz tbcolumn:cargo stavis kodni blok koji menja polje. Sam Clipper ti postavi kursor gde treba tako da bi izgledalo otprilike ovako: tb:=TBNew(...) col:=TColumnNew(...) col:cargo:={||edit()} tb:AddColumn(col) .... func edit @ row(),col() get .... <- ovo mozes i mnogo elegantnije, read <- al' nikad nisam imo vremena da doteram return > Probao sam da napravim sledecu stvar iz clipper-a sto je delimicno uspelo > a to je izlaz u DOS i to sa obicnim RUN COMMAND ali kad sam trebao da se > vratim u clipper sa exit iz DOS-a racunar se zaglavio. Ima li resenja za > ovo ? Reci jos, meni je sljakalo bez problema. Jedino kad promenim dir zna da se izgubi jer ne ume da nadje overleje.
clipper.947 ppekovic, -> #943, cnenad
>> Interesuje me da li je moguce da se TBROWSE klasom napravi BROWSE >> slican paketu DBASE IV gde mogu da se i menjaju podaci u poljima baze a >> ne samo pregledaju jer primer koji imam u knjizi o kliperu daje >> istu stvar kao i funkcija DBEDIT() ? U clipper-u već imaš funkciju browse. Pored toga, u primerima koje si dobio uz clipper postoji i browse.prg koji radi upravo ono što tražiš. >> Probao sam da napravim sledecu stvar iz clipper-a sto je delimicno uspelo >> a to je izlaz u DOS i to sa obicnim RUN COMMAND ali kad sam trebao da se >> vratim u clipper sa exit iz DOS-a racunar se zaglavio. Ima li resenja za >> ovo ? Da li ti je ispravno postavljena env. promenljiva COMSPEC? Paya
clipper.948 d.petrovic, -> #946, v.nesic
Ă>> Probao sam da napravim sledecu stvar iz clipper-a sto je Ă>> delimicno uspelo a to je izlaz u DOS i to sa obicnim RUN COMMAND Ă>> ali kad sam trebao da se vratim u clipper sa exit iz DOS-a Ă>> racunar se zaglavio. Ima li resenja za ovo ? Ă> Ă> Reci jos, meni je sljakalo bez problema. Jedino kad promenim dir Ă> zna da se izgubi jer ne ume da nadje overleje. Posle "run command" proveris u kom si direktorijumu pa se vratis. Valjda je jasno da funkcija kojom to radis ne sme da bude u overleju :)
clipper.949 ialeksic,
Zna li neko zasto zasto ne mozemo da se smeskamo? # include "inkey.ch" cls @10,40 say ":(" @24,0 say "Pritisni Ctrl-ScrollLock dirku da dobijes smile..." do while !(i:=INKEY()=K_CTRL_C) enddo @10,40 say ":)" @24,0 say "Hvala... " quit
clipper.950 cnenad, -> #948, d.petrovic
ŁŁŁ Posle "run command" proveris u kom si direktorijumu pa se ŁŁŁ vratis. Valjda je jasno da funkcija kojom to radis ne sme da ŁŁŁ bude u overleju Nisam menjao direktorijume niti mi je ta funkcija u .OVL cisto sam probao da napisem taj mali program i da vidim kako radi ! cls wait "idemo u DOS !" !command cls wait "vratili smo se !" cls Sta ne valja !
clipper.951 cnenad, -> #947, ppekovic
ŁŁŁ Da li ti je ispravno postavljena env. promenljiva COMSPEC? Uopste nemam namesteno COMSPEC !?! Cemu to sluzi a i inace ne radi ? :)
clipper.952 dr.grba, -> #945, ialeksic
>> 50 DEM O-LA-LA!, sta bi bilo da sam se raspitivao za 5.2, dal' bi >> dobio telefon Computer Associates-a ;> Moja sugestija je bila krajnje dobronamerna. Mislio sam da znaš da je bavljenje računarima skup sport i u današnje vreme teško isplativ.
clipper.953 bstevan,
Molim svi koji imaju iskutva sa programiranjem odnosno prilagodjavanjem clipper program na rad sa matematickim procesorom, nek prenesu svoje iskustvo u ovoj konferenciji. Ja nažalost nemam nikakvog iskustva a to me interesuje. pozdrav, BSTEVAN
clipper.954 ialeksic, -> #950, cnenad
Ovo radi: #include "inkey.ch" cls keyboard chr(K_ENTER) // Dodaj jedan Enter ! wait "idemo u DOS !" !command.com cls wait "vratili smo se !" cls
clipper.955 ialeksic, -> #952, dr.grba
Dobro de, salio sam se. :)
clipper.956 d.petrovic, -> #950, cnenad
Ă> cls Ă> wait "idemo u DOS !" Ă> !command Ă> cls Ă> wait "vratili smo se !" Ă> cls Ă> Sta ne valja ! Nisam probao, ali kao sugestija na mogućnost zaglupljivanja ako promeniš direktorijum: cls !command if <direktorijum promenjen> <vrati se u radni dir> <= ovo da nije u overleju endif
clipper.957 bulaja, -> #866, cnenad
│Kad smo vec kod te funkcije SETCOLOR() na koji nacin ona resetuje │prethodno postavljene boje ? └─── SetColor( "" )
clipper.958 bulaja, -> #949, ialeksic
Zna li neko zasto zasto ne mozemo da se smeskamo? > @24,0 say "Pritisni Ctrl-ScrollLock dirku da dobijes smile..." > do while !(i:=INKEY()=K_CTRL_C) > enddo > @10,40 say ":)" :) K_CTRL_C je Ctrl-Pause (Break) a ne Ctrl-ScrollLock! :)
clipper.959 paki, -> #949, ialeksic
­> @24,0 say "Pritisni Ctrl-ScrollLock dirku da dobijes smile..." ­> do while !(i:=INKEY()=K_CTRL_C) Možda zato što se natpis Break (bar kod mene) nalazi na tasteru Pause :) Jesi li probao Ctrl-C umesto Ctrl-ScrollLock?
clipper.960 ialeksic, -> #958, bulaja
ŠŠ> :) K_CTRL_C je Ctrl-Pause (Break) a ne Ctrl-ScrollLock! :) Jeste! Kao i 'PgDn', kao i 'Ctrl-C'. To je lepo..., ali: (NG:The Guide To Clipper:Tables:Inkey Codes) kao i Clipper Refference app.C kaze sledece: Ctrl-ScrollLock 3 K_CTRL_C OK, neka to tako i treba, koji je onda scan-code za "Ctrl-ScrollLock" ? Ivan A. ps. Ovo nije iz...ivljavanje, bas mi taj 'Ctrl-ScrollLock' treba ;)
clipper.961 zsavic,
Radim na sistemu sledećih karakteristika: - Mreža sa 35 radnih stanica - File server DTK 386DX/33 sa SCSI diskom Maxtor 1.7GB i Adaptec 1542b kontrolerom i dve mrežne karte NE2000 - Operativni sistem Novell 3.11 100 users, DOS 5.0 - Aplikacije su pisane na Clipperu 5.01. Već drugi put u zadnja 4 meseca se javlja isti problem: DBF fajl dužine oko 60 MB (prvi put je imao dužinu od par MB) iz neobjašnjivih razloga je promenio dužinu na oko 4GB. Otkucam CHKVOL, a on daje korektan rezultat: 150MB slobodno, koliko je bilo i ranije. Obrišem fajl sa DEL, ovog puta CHKVOL daje 210MB slobodno. Vratim fajl sa SALVAGE i CHKVOL daje opet 150MB slobodno, a DBF fajl se vrati na 4GB. Kad sa DBV /W pregledam fajl, javi mi umesto 180,000 neki abnormalno veliki broj slogova a izgled fajla je bio prilično "rupičast" tj. sa velikim brojem praznih polja. Problem sam rešio vraćanjem fajla sa strimera, ali me zanima da li je neko imao sličan problem i kako ga je rešio.
clipper.962 bulaja,
Treba li vam u Clipper-u nesto nalik na LIST, za pregled dugackih tekstualnih datoteka. Nista lakse :), uz koriscenje TBrowse i NanFor funkcija za File I/O (FT_F*). Radi sa neograniceno dugackim datotekama (ako koristite MemoEdit() mozete samo 64K), ni megabajti nisu problem :). Evo je ovde cela LIST funkcija, poziva se sa LIST (<file name>) (npr. list("READ.ME). #include "Inkey.ch" #include "FileIO.ch" **** ---------------------------------------- **** PROC List (cFileName) LOCAL FB LOCAL bCol, nKey, cScr IF FT_FUse (cFileName, FO_READ) == -1 RETURN ENDIF cScr := SaveScreen (0, 0, MaxRow(), MaxCol()) Scroll (0, 0, MaxRow(), MaxCol()) @ 0,0 TO MaxRow(), MaxCol() FB := TBrowseNew (1, 1, MaxRow()-1, MaxCol()-1) bCol := TBColumnNew ("", { || FT_FReadLn() } ) bCol:width := MaxCol()-2 // =78 FB:AddColumn (bCol) // ovde je uglavnom sva mudrost :) FB:skipBlock := { |n| FT_FSkip (n) } FB:goTopBlock := { || FT_FGoTop () } FB:goBottomBlock := { || FT_FGoBot () } WHILE .T. WHILE ( ! FB:Stabilize() .and. (nKey := Inkey() == 0)) ; END DO IF FB:Stable ; nKey:=inkey(0) ; ELSE ; nKey:=0 ; END IF DO CASE CASE nKey == K_UP ; FB:up() CASE nKey == K_DOWN ; FB:down() CASE nKey == K_PGDN ; FB:PageDown() CASE nKey == K_PGUP ; FB:PageUp() CASE nKey == K_CTRL_PGUP ; FB:goTop() CASE nKey == K_CTRL_PGDN ; FB:goBottom() CASE nKey == K_ESC ; EXIT CASE nKey == 32 ; FB:refreshAll() END CASE END DO FT_FUse() RestScreen (0, 0, MaxRow(), MaxCol, cScr) RETURN Problem je samo sto FT_F* funkcije imaju malo bugova :) pa vam se moze desiti da ponekad prikaze i neki LF (chr(10) karakter tamo gde ne treba. Dok ne izadje novi NFLib (ili ja ne napisem iste funkcije :), ovo se moze resiti jednostavnim filtriranjem svakog reda, pa bi trebalo umesto bCol := TBColumnNew ("", { || FT_FReadLn() } ) staviti bCol := TBColumnNew ("", { || StrTran (FT_FReadLn(), Chr(10), "") } ) That's it, Bulaja
clipper.963 ivan.s, -> #960, ialeksic
Cini mi se da nema jednostavnog nacina da resis svoj problem, ako ga uopste ima; naime nisam siguran da li tastatura salje bilo sta racunaru po pritisku na ctrl-ScrollLock. U svakom slucaju BIOSov int 9 handler ne stavlja nista u keyboard buffer, pa ti inkey() ne moze pomoci. Pozdrav, Ivan.
clipper.964 bulaja, -> #960, ialeksic
│OK, neka to tako i treba, koji je onda scan-code za "Ctrl-ScrollLock" ? └─── ScrollLock, ostali lock-ovi, Shift, Alt i Ctrl tasteri nemaju svoje scan kodove, znaci njihovo stanje ne mozes ispitati preko inkey() vec npr. preko funkcija koje imas u NanForum lib-u.
clipper.965 d.petrovic, -> #960, ialeksic
Ă> ps. Ovo nije iz...ivljavanje, bas mi taj 'Ctrl-ScrollLock' treba Ă> ;) Zaviri u Nanfor, mozda tamo nesto ima, mislim da inkey() tu ne moze nista :(
clipper.966 ppekovic, -> #951, cnenad
>> ŁŁŁ Da li ti je ispravno postavljena env. promenljiva COMSPEC? >> >> Uopste nemam namesteno COMSPEC !?! Cemu to sluzi a i inace ne radi ? :) To je environment promenljiva koja pokazuje gde se nalazi komandni iterpreter tj. command.com ili 4dos.com. Paya
clipper.967 ialeksic, -> #964, bulaja
>>>ScrollLock, ostali lock-ovi, Shift, Alt i Ctrl tasteri nemaju svoje scan >>>kodove, znaci njihovo stanje ne mozes ispitati preko inkey() vec npr. >>>preko funkcija koje imas u NanForum lib-u. Da u NanForum lib-u postoji nesto slicno, FT_NUMLOCK() na primer, ali ne i FT_SCRLOCK(). No izgleda da je 'Ctl-ScrllLock' jedina kombinacija koja ne funkcionise. Kada je pritisnut, 'Ctl' kao da blokira registrovanje pritiskanja 'ScrllLock' dirke. To nije slucaj za kombinaciju 'Shift-ScrllLock' ili 'Alt-ScrllLock' koje inace mogu da se registruju. Posto sam sa time eksperimentisao evo osnove za za sada nepostojecu funkciju FT_SCRLOCK() ako nekoga zanima: #include "extend.h" #define status_byte (*(char *)(0x00000418)) CLIPPER FT_SCRLOCK(void) { _retl( (int) (status_byte & 0x10) ); status_byte = (status_byte & 0xEF); return; } Ivan A.
clipper.969 rpausic,
Da li sam nešto propustio pretražujući SEZAMove conf ili zaista nema posebnih tema i diskusija o najčešćim problemima programera koji rade sa bazama podataka: finansijsko knjigovodstvo, robno-materijalno, pogonsko, plate, fakturisanje, ... Verujem da je ovo prava stvar za mnoge programere, jer svi verovatno imamo slične probleme: knjigovođe ne mogu ili neće da objasne problematiku (zamislite poraza: naučiti njihov posao za par dana i omogućiti jednom običnom magacioneru da obavi pola knjigovodstvenog posla!!!). Nekad je samo problem što ljudi koji znaju, nemaju živaca da se malo napregnu i udube se u problematiku. Nekad ni njima samima nije sve baš sasvim jasno, pa kako će onda drugom preneti? Nekada se zakon menja svaki čas. Nekada se napravi zbrka (kao sada sa otkupom žita: 4 puta sam menjao program za obračun otkupa i ovog momenta ne mogu da garantujem da je poslednji put). Sve u svemu, mislim da su ova pitanja vredna pažnje. Ja sam spreman da podelim sa drugima ideje oko organizovanja podataka, podeli poslova i svaga što ja znam. Trenutno sam dosta razradio materijalno poslovanje u mojoj zem. zadruzi sa nekoliko isturenih radnih jedinica i vodjenje kooperativne proizvodnje, obračunu kamata i slično. Predstoji mi rad na finansijskom knjigovodstvu, pogonskom, personalna evidencija, obračun plata itd. Ako imam istomišljenika, neka se jave. Ako nas bude malo, možemo i neku grupu da osnujemo! Pozdrav, Robert. P.S. Jedini sam programer u firmi i očajnički želim da razmenjujem iskustva i smanjim vreme provedeno sa ljudima koje mrzi da žive!
clipper.970 dr.grba, -> #962, bulaja
>> se moze resiti jednostavnim filtriranjem svakog reda, pa bi trebalo >> umesto >> bCol := TBColumnNew ("", š đđ FT_FReadLn() ć ) >> staviti >> bCol := TBColumnNew ("", š đđ StrTran (FT_FReadLn(), Chr(10), "") ć ) Nisam testirao, ali koliko filtriranje smeća usporava rad?
clipper.971 snemcev, -> #951, cnenad
>> Uopste nemam namesteno COMSPEC !?! Cemu to sluzi a i inace ne radi ? >> :) Najkraće rečeno, tu piše ime komandnog interpretera koji će biti pozvan da bi izvšio ono što mu ti iz svoje aplikacije narediš. Stavi u autoexec SET COMSPEC=C:\DOS\COMMAND.COM (ili gde ti je već ;) i sve bi trebalo da proradi.
clipper.972 snemcev, -> #949, ialeksic
>> do while !(i:=INKEY()=K_CTRL_C) Varovatno ga ovde buni dodela vrednosti. Probaj do while !((i:=INKEY())==K_CTRL_C)
clipper.973 pjankovic, -> #969, rpausic
> posla!!!). Nekad je samo problem što ljudi koji znaju, > nemaju živaca da se malo napregnu i udube se u > problematiku. Nekad ni njima samima nije sve baš sasvim > jasno, pa kako će onda drugom preneti? Nekada se zakon Nekada žele da od svoga posla naprave bauk, da mu što više podignu cijenu. Šta bi značilo da "neki tamo programer" prvi put dođe u firmu i za desetak minuta provali kako se radi cijeli njihov posao. To bi značilo da je njihov posao strašno jednostavan. Zato oni objašnjavaju ali boga mole da ne shvatiš. Pa još ako nešto zabrljaš pa izađe pogrešan rezultat, njihovom likovanju nema kraja: "Eto, i mašina je pogriješila, ništa ne može da zamijeni čovjeka".
clipper.974 paki, -> #969, rpausic
­> Da li sam nešto propustio pretražujući SEZAMove conf ili ­> zaista nema posebnih tema i diskusija o najčešćim problemima ­> programera koji rade sa bazama podataka: finansijsko ­> knjigovodstvo, robno-materijalno, pogonsko, plate, ­> fakturisanje, ... Mislim da posebne teme tu i nisu potrebne, o svemu tome se može raspravljati u okviru teme baze.podataka.
clipper.975 mickeyl,
Nabavio sam program DISCLIPPER ver 1.09. I to ne iz razloga da bih krao, nego da bih isprobao kako šljaka i kako da se eventualno zaštitim. Zasad sam otkrio da je dovoljno napraviti EXE program sa overlejima i disclipper mu ne može ništa. Mislim da je to način da se zaštiti od ovog programa. Jesam li u pravu i kakva su iskustva drugih? Radi se o CLIPPER '87 verziji. Samo mi ne recite pređi na Clipper 5.x i disclipper ti ne može ništa, jer prelazim na FOXPRO koji mi se više sviđa. Dok ne preradim na Fox, treba da mi šljaka na clipperu, a da pri tom neko ne dođe u iskušenje da mi mazne source. p.s. nadam se da ne postoji neka novija verzija disclipper-a kojoj ne smetaju overlay-i.
clipper.976 bulaja, -> #970, dr.grba
││bCol := TBColumnNew ("", s dd StrTran (FT_FReadLn(), Chr(10), "") c ) │└─── │Nisam testirao, ali koliko filtriranje smeca usporava rad? └─── Neprimetno. Ne bi ni trebalo nesto da usporava, posto filtrira samo red koji se trenutno prikazuje.
clipper.977 bulaja, -> #973, pjankovic
│Nekada zele da od svoga posla naprave bauk, da mu sto vise podignu │cijenu. Sta bi znacilo da "neki tamo programer" prvi put dode u firmu │i za desetak minuta provali kako se radi cijeli njihov posao. └─── Ne znam koliko je teska ta njihova "velika" nauka, al znam da je debela :). Slucajno me ceka najesen spremanje ispita Racunovodstvo & Finansije (500+ strana:), pa cu imati prilike da vidim o cemu uci i druga strana :).
clipper.978 bulaja, -> #975, mickeyl
│Zasad sam otkrio da je dovoljno napraviti EXE program sa overlejima │i disclipper mu ne moze nista. └─── Takodje ako je linkovano sa starim Blinkerom, ne moze mu nista.
clipper.979 cnenad, -> #975, mickeyl
ŁŁŁ disclipper ti ne moze nista, jer prelazim na FOXPRO koji mi ŁŁŁ se vise svida. Ovo nije sabotaza unutar teme za kliper. Ali moram da vam kazem da sam od dosta ljudi cuo da prelaze na FOX. Inace ja sam dosta radio na DBASE-u u okviru DBASE IV ali znate sta sve on nema. Medjutim ni kliper nema mnogo stvari koje ima DBASE IV. Izgleda da uvek postoji neka zlatna sredina. Kad li ce da se napravi neki dobar kompajler ili program u kome covek ima sve sto mu treba. Da li je odgovor mozda DBASE IV 2.0. kompajler ?
clipper.980 v.nesic, -> #979, cnenad
> Da bi bilo jasnije, to je isto kao kad bi naucio da zapisujes > rezultate u preferansu i rekao kako si isti naucio :). Poenta preferansa je u igri, poenta knjigovodstva je u pisanju :))
clipper.981 draganf, -> #969, rpausic
> > P.S. Jedini sam programer u firmi i očajnički želim da > razmenjujem iskustva i smanjim vreme provedeno sa ljudima > koje mrzi da žive! Nisi samo, ja sam čak jedini u krugu od 50 -tak kilometara. Dragan
clipper.982 snemcev, -> #962, bulaja
>> Treba li vam u Clipper-u nesto nalik na LIST, za pregled dugackih >> tekstualnih datoteka. Nista lakse :) Da, ništa lakše, postoji funkcija u NanFor!
clipper.983 snemcev, -> #969, rpausic
>> Ako imam istomišljenika, neka se jave. Ako nas bude malo, možemo i >> neku grupu da osnujemo! Eto, da ne kažeš da si sam, jedan član grupe sam ja. >> P.S. Jedini sam programer u firmi i očajnički želim da razmenjujem >> iskustva i smanjim vreme provedeno sa ljudima koje mrzi da žive! Nemoj tako pesimistički!
clipper.984 ialeksic,
Imam pitanje za nekog objektasa: prilozio sam kod koji ne radi kako ja ocekujem :( A hteo sam sledece: Da mi TBrowseDB prikaze kombinovan sadrzaj DBFa i rezultat neke funkcije. U praksi to izgleda ovako: Kada krene u stabilizaciju, i stigne na liniju *** i:=browse:colPos *** unutar UDFa to shvata kao rekurzivan poziv tog kodnog bloka (tj. UDF funkcije) i izvvodi ga dok na kraju ne iscrpi stack i padne sa: (b)DEMO (0) Unrecoverable error 650: Processor stack fault Ja ipak ocekujem kao sto pise u dokumentaciji da je browse:colPos "Exported Instance VARIABLE" a ne metod. Gde gresim? Evo koda: /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ #include "Inkey.ch" #define MY_HEADSEP "═Đ═" #define MY_COLSEP " │ " FUNCTION demo( dbf, index ) LOCAL nKey LOCAL browse := TBROWSEDB( 1, 5, 24, 75 ) local w CLS USE (dbf) INDEX (index) browse:headSep := MY_HEADSEP browse:colSep := MY_COLSEP browse:addColumn(TBColumnNew( ; Field(1), ; {|| FIELDGET(1)} ; )) w:=TBColumnNew( ; "xxxxx", ; {|| udf(browse)} ; ) w:width=5 browse:addColumn(w) w:=TBColumnNew( ; "yyyyy", ; {|| udf(browse)} ; ) w:width=5 browse:addColumn(w) DO WHILE nKey != K_ESC DO WHILE ! browse:STABILIZE() ENDDO nKey := INKEY( 0 ) DO CASE CASE nKey == K_DOWN browse:DOWN() CASE nKey == K_UP browse:UP() CASE nKey == K_LEFT browse:LEFT() CASE nKey == K_RIGHT browse:RIGHT() ENDCASE ENDDO RETURN Nil FUNCTION UDF(browse) LOCAL a LOCAL i:=0 i:=browse:colPos IF (i=2) a:="XXXYX" ELSE a:="YYYYY" endIF (b:colPos=2) RETURN a
clipper.985 dr.grba, -> #969, rpausic
>> Ako imam istomišljenika, neka se jave. Ako nas bude malo, možemo i >> neku grupu da osnujemo! Fala ti, Bože, da se neko najzad javio i glasno i jasno rekao ono što nam leži na duši. Imaš moju podršku i izraze spremnosti da dam doprinos u radu konferencije/grupe. Iz saradnje se uvek može izvući nešto korisno.
clipper.986 ficus, -> #923, gaston
> Zdravo ! > Skoro sam nabavio CA Clipper 5.2, evropsku verziju i skinuo sa > Sezam-a zakrpu za verziju 5.2A, ali je ona samo za americku > verziju Clipper-a. Naravno, ne mogu da zakrpim Clipper 5.2. Da > li je nekko resio problem i kako ? Moze i slanje zakrpe > americke verzije... Ako ti nešto znači ja imam američko-kanadsku verziju... Pozdrav, Deki
clipper.987 ficus, -> #930, ialeksic
> IA> Elem, ne zelim da izmisljam toplu vodu, a knjigu - je li - > nemam, IA> niti sam je nasao u prodaji (trazio!). Zato molim > neku dobru dusu IA> :) da to stavi na mail ili bilo gde na > SEZAMU (kako cu to posle IA> da nadjem?). Zovni Mikro Knjigu, ako ti je neophodan Clipper5 od Spence-a, ali ja mislim da ti je najbolje da odeš do Jugoslovenske knjige, jer tamo nešto kasnije rade update cena... :))) Pozdrav, Deki
clipper.988 ficus, -> #954, ialeksic
> Ovo radi: > ># include "inkey.ch" > cls > keyboard chr(K_ENTER) // Dodaj jedan Enter ! > wait "idemo u DOS !" >! command.com > cls > wait "vratili smo se !" > cls Izvini, ali nije mi jasno čemu ono Enter? Pozdrav, Deki
clipper.989 ficus, -> #944, cnenad
> Molim jos jednom, ako neko ima umetak iz racunara od Nenada > Batocanina da mi ga pozajmi da ga isfotokopiram. > > Dogovor preko mail-a na CNENAD. > Hvala. Ja mogu da ti pozajmim... Samo mi se obrati na mail... Pozdrav, Deki
clipper.990 ficus, -> #961, zsavic
> Problem sam rešio vraćanjem fajla sa strimera, ali me zanima da > li je neko imao sličan problem i kako ga je rešio. Priznajem da ti je problem PPRRIILLIIžžNNOO zajeban. Ja nisam na sreću imao iskustava sa ovim, ali kod mog ćaleta imaju sličnu (ali veću) mrežu, i svi rade u 5.01, pa ću ih pitati... Pozdrav, Deki
clipper.991 ficus, -> #979, cnenad
> Ovo nije sabotaza unutar teme za kliper. Ali moram da vam kazem > da sam od dosta ljudi cuo da prelaze na FOX. Inace ja sam dosta > radio na DBASE-u u okviru DBASE IV ali znate sta sve on nema. > Medjutim ni kliper nema mnogo stvari koje ima DBASE IV. Izgleda > da uvek postoji neka zlatna sredina. Kad li ce da se napravi > neki dobar kompajler ili program u kome covek ima sve sto mu > treba. Da li je odgovor mozda DBASE IV 2.0. kompajler ? I meni se FoxPro mnogo više sviđa, a i mnogo je lakši za rad... Ja sam ga instalirao i počeo da radim i ide mi super... Ali, ne može sve da bude idealno... :( NEMA DBEDIT!!! a ni adekvatnu zamenu... Ima samo BROWSE, ali od toga nema mnogo vajde! Ima li ko ideju, kako realizovati nešto slično DBEDIT-u ali za FoxPro? Pozdrav, Deki
clipper.992 nbatocanin, -> #953, bstevan
> Molim svi koji imaju iskutva sa programiranjem odnosno > prilagodjavanjem clipper program na rad sa matematickim > procesorom, nek prenesu svoje iskustvo u ovoj > konferenciji. Nikakvo posebno prilagođavanje ti nije potrebno. Bojim se da ti koprocesor neće doneti neko primetno poboljšanje performansi, jer je ono što se u Clipper-u daleko najčešće radi je čitanje/pisanje po disku, a tu ti koprocesor slabo pomaže.
clipper.993 ematic, -> #984, ialeksic
> {|| udf(browse)} ; probaj {|| udf(@browse)}
clipper.994 v.nesic, -> #984, ialeksic
> Gde gresim? Evo koda: Kolko ja vidim, nigde. Izgleda da clipp ne radi ono sto mu pise. Ako ti je nesto onakvo bas potrebno iskoristi polje cargo u koloni, recimo : ... w:cargo:=1 browse:addcolumn(w) ... w:cargo:=2 browse:addcolumn(w) ... func udf(browse) ... i:=browse:cargo ... return a
clipper.995 terza, -> #969, rpausic
> Ako imam istomisljenika, neka se jave. Ako nas bude malo, > mozemo i neku grupu da osnujemo! Racunaj i na mene za grupu, sve sto se tice programa za plate, tu sam. Terza
clipper.996 toma, -> #969, rpausic
■■>> Da li sam nešto propustio pretražujući SEZAMove conf ili zaista ■■>> nema posebnih tema i diskusija o najčešćim problemima programera ■■>> koji rade sa bazama podataka: finansijsko knjigovodstvo, ■■>> robno-materijalno, pogonsko, plate, fakturisanje, ... E ovo nam je baš trebalo! Računajte na mene. ps. Ćale mi je knjigovođa, a ja radim u njegovoj knjigovodstvenoj firmi, pa izvolte...
clipper.997 v.nesic, -> #995, terza
>> Ako imam istomisljenika, neka se jave. Ako nas bude malo, >> mozemo i neku grupu da osnujemo! > > Racunaj i na mene za grupu, sve sto se tice programa za plate, > tu sam. Ako se pravi grupa, count me in !)
clipper.999 ialeksic, -> #988, ficus
>>> Izvini, ali nije mi jasno cemu ono Enter? To je crnogorska varijanta [bez ruku ;)]. Zapravo ja sam prevideo da je komanda u pitanju bila WAIT (koja i ocekuje stisak dirke), nju inace ne koristim. Verovatno je problem da command.com nije u PATKI,COMSPEC,4DOS,...
clipper.1000 ialeksic, -> #993, ematic
>>> probaj {|| udf(@browse)} Ne verujem, jer je prenos Objekta i ovako preko reference... A i nije me mrzelo da proverim - ista stvar :(
clipper.1001 ialeksic, -> #994, v.nesic
>>> Ako ti je nesto onakvo bas potrebno iskoristi polje cargo u koloni,... Ovo je bilo principijelno pitanje. Primer sam uprostio do kraja samo da bih opisao anomaliju (ako je anomalija uopste, a ne pogresna upotreba). Inace u aplikaciji cargo nameravam da koristim za druge svrhe. Samo sam mislio da ovo ne bi smelo ovako da se ponasa, prilicno je trivijalno da bi bio bug,... pa sam naravno mislio da ja negde gresim, i jos uvek mislim ...,ali gde? Ajde objektovci.
clipper.1002 milanv, -> #977, bulaja
║║ debela :). Slucajno me ceka najesen spremanje ispita Racunovodstvo & ║║ Finansije (500+ strana:), pa cu imati prilike da vidim o cemu uci i ║║ druga strana :). Učićeš šta se beleži na kojoj klasi, pa kontu, pa... Stvarno, velika mudrost, samo, voleo bih da vidim i knjigovodju koji zna sve što piše u tih 500-tinak stranica. Pa, ipak, misli da bi zemlja bez njega stala!
clipper.1003 gaston, -> #984, ialeksic
->Gde gresim? Evo koda: Prijatelju, verovatno u programu nigde i ne gresis, ali ... 1) Ja NIKADA ne dajem promenljivoj ime koje makar malo asocira na ime neke procedure ili funkcije. Cak izbegavam da dajem imena koja lepo zvuce na engleskom. Razlog: pa neko od americkih ili engleskih programera se verovatno vec setio da nesto tako nazove. Lepo to brate nazoves po srpski, pa da te ceo svet razume ;| <--- kiseo osmeh na sopstveni racun ... 2) Takodje izbegavam da kao parametre prenosim objekte - zgodni su, ali su komplikovani, posebno u jeziku koji prakticno jos nema jasno definisana pravila igre sa njima. Bolje prenesi kao parametar ColPos. 3) Ako je stvarno u pitanju onako jednostavan posao kao u primeru, lepo brate napisi tako da ti kodni blok zavrsava posao... Ne smatram sebe bogznakakvim strucnjakom, sve sto ti kazem potice iz sopstvenog loseg iskustva. Bice mi drago ako sam ti makar malo pomogao... Nesa
clipper.1004 gaston, -> #969, rpausic
▀▀┌Pa ja bas i nemam neka mnogo negativna iskustva, sto se tice saradnje oko izrade knjigovodstvenih programa, imam samo kasnije, oko placanja ... Pored toga, matori su mi u toj bransi, tako da imam eksperte kod kuce skoro za sve, osim plata (ali su tu pravila igre uglavnom poznata). Ako osnivas grupu, evo i mene (sviram samo u drombulje, ali zato jako lepo pevam i ,kao sto se vidi skromnost mi je vrlina ... B))) Nesa
clipper.1005 nbatocanin, -> #975, mickeyl
> Mislim da je to način da se zaštiti od ovog programa. Jesam li u > pravu i kakva su iskustva drugih? Prvo, nije mi jasno šta ti znači to "zaštiti se". Da li misliš da će neko uzeti tvoj program, generisati tekst programa, pa onda prodavati malo izmenjen? žini mi se da je verovatnoća takvog događaja ravna nuli. Ko normalan će da analizira kilometarski sors bez reda komentara, da bi ga shvatio i izmenio? Uostalom, ako to može, sigurno može i da napiše isti takav program, uz manje komplikacije.
clipper.1006 nbatocanin, -> #979, cnenad
> Medjutim ni kliper nema mnogo stvari koje ima DBASE IV. Šta, na primer?
clipper.1007 nbatocanin, -> #984, ialeksic
> Imam pitanje za nekog objektasa: > > prilozio sam kod koji ne radi kako ja ocekujem :( Problem je u tome što se pri definisanju TBrowse objekta referišeš opet na njega rekurzivno, ali bez izlaza. Tj. nije problem u varijabli TB:colPos, već u definiciji kolone. Moraš promeniti koncepciju i kao kolonu definisati nešto drugo. Slučaj je sličan kao u a:= {1, 2, 3} a[3] := a
clipper.1008 ematic, -> #1000, ialeksic
>>>> probaj {|| udf(@browse)} > > Ne verujem, jer je prenos Objekta i ovako preko reference... > > A i nije me mrzelo da proverim - ista stvar :( Izvini što sam ovako lupio napamet, tvoju poruku sam samo letimice pogledao pre nego što sam odgovorio. Elem, koliko vidim, ti želiš da za ove tvoje dodatne kolone imaš neku konstantnu vrednost koja zavisi od pozicije iste. Tu ti nije potrebno nikakvo muljanje s korisničkim funkcijama, dovoljno je da umesto ovoga što si napisao: > w:=TBColumnNew( ; > "xxxxx", ; > {|| udf(browse)} ; > ) staviš npr.: w := tbcolumnnew ("xxxxx", { || "XXXXX" }) Ukoliko naknadno želiš da menjaš takvu kolonu, odnosno da je napuniš nekom drugom vrednošću, dovoljno je da uradiš nešto kao: pozicija := browse:colpos kolona := browse:getcolumn(pozicija) do case case pozicija == TRT kolona:block := { || "TRTRT" } // i tako dalje (i tako bliže :) end // sledeća linija je vrlo važna browse:configure() // naredna je novitet (5.2) browse:forcestable() Vratimo se sad na ono zbog čega ti puca program, dakle na zlo i pokvareno :) { || udf(browse) }. Kada se objektu dodaje kolona, blok pomoću koga ista dobija svoju tekuću vrednost se evaluira tek prilikom stabilizacije objekta. U ovom slučaju blok poziva korisničku funkciju koja opet pokreće novu stabilizaciju, jer referencira na isti objekat iz koga je krenula stabilizacija ( i := browse:colpos ), dok prethodna stabilizacija u stvari još nije izvršena. Rezultati prethodne stabilizacije se stavljaju na stek, kreće nova i tako ide rekurzivno dok se stek ne iscrpi i dođe do famozne fatalne greške. p.s izvini zbog konfuzne poruke, objašnjavanje mi nikad nije bilo jača strana :)
clipper.1009 dejanr, -> #1005, nbatocanin
>> Prvo, nije mi jasno šta ti znači to "zaštiti se". Da li misliš da će >> neko uzeti tvoj program, generisati tekst programa, pa onda prodavati >> malo izmenjen? žini mi se da je verovatnoća takvog događaja ravna >> nuli. Pa, ne znam baš. Meni je glavna zaštita programa u tome što se na ekranu, na formularima i izveštajima ispisuje ime firme, adresa, telefon, fax itd. Na taj način je dosta teško da to iko drugi koristi (mada sam čuo da je bilo nekih koji su koreksom brisali ime samo da ne plate program ;)). To ime je oduvek malo "zamumuljeno", čisto da se ne može iz Nortona promeniti. Međutim, otkad su "izmišljeni" ti de-clipper-i, morao sam da pišem neku straobalnu programčinu na asembleru koja se brine o tekstovima tog tipa, sve u nadi da declipper neće umeti tek tako da je izdvoji ili da je neće biti baš lako analizirati. "Lopov" ne mora ništa da menja u programu - samo promeni ime firme i proda ga upola cene "izvadivši" tako štetu što je platio program. Ne bi bilo prvi put.
clipper.1010 ndragan, -> #969, rpausic
/ P.S. Jedini sam programer u firmi i očajnički želim da razmenjujem Kućni programer? Kolega, saučešće. Bićeš kriv za sve, i što zajebeš ti i što zajebu oni, a onda će te hvaliti na sva usta za nešto što si uradio malim prstom za pet minuta, pa će te posle psovati što trodnevni posao nije bio gotov za minus pola dana... Drž' se i pitaj ovde šta ti treba.
clipper.1011 ndragan, -> #977, bulaja
/ debela :). Slucajno me ceka najesen spremanje ispita Racunovodstvo & / Finansije (500+ strana:), pa cu imati prilike da vidim o cemu uci i Upoznaj neprijatelja da bi ga više voleo poraženog.
clipper.1012 ndragan, -> #991, ficus
/ Ima samo BROWSE, ali od toga nema mnogo vajde! Ajd baš da vidimo šta ima DbEdit() a šta nema Browse i obratno. Browse ima toliko opcija da se razmišljam da napišem generator za tih nekoliko linija, da mi bar prvu verziju napiše sintaksno tačnu i štogod ulepšanu. žisto me zanima šta su posebne cake u DbEdit(), tek da vidim da li mi nešto od toga nedostaje.
clipper.1013 d.petrovic, -> #1012, ndragan
Ă> Browse ima toliko opcija da se razmišljam da napišem generator za Ă> tih nekoliko linija, da mi bar prvu verziju napiše sintaksno Ă> tačnu i štogod ulepšanu. žisto me zanima šta su posebne cake u Ă> DbEdit(), tek da vidim da li mi nešto od toga nedostaje. Meni izgleda nije jasno o čemu vi ovde... :)) Zar postoji nešto što DbEdit() može, a ne može da se uradi u TBrowse() ??
clipper.1014 goranr, -> #1006, nbatocanin
Na primer, ladno pravljenje POP-UP menija
clipper.1015 goranr,
Po bulajinom izrazicitom narednjenju :) u dolenavedenom fajlu se nalaze opisi funkcija (kratki!) biblioteke Clipper Tools, koja je novopristigla na SEZAM. Navali na Download! :) cliptool.txt
clipper.1016 ialeksic, -> #1008, ematic
>>> Elem, koliko vidim, ti zelis da za ove tvoje dodatne kolone imas neku >>> konstantnu vrednost koja zavisi... Hvala na ideji za konstne vrednosti kolona, no to mi nije bila zelja. Primer sam samo uprostio pa je zbog toga tako izgledalo. Naime, nisam hteo da zamaram celu ekipu sa svojom aplikacijom, ali izgleda je ipak neophodna mala eksplikacija :) Pravim aplikaciju u kojoj kooperativno ucestvuje i 'remote' aplikacija (na hostu), tako da neke od TBcolumn treba vrednostima da popunjava lokalna aplikacija a neke, 'remote' aplikacija (pozivima funkcija). Zato sam mislio da se to moze resiti tako da kodni blokovi budu posebne funkcije koje izmedju ostalog koriste 'remote' servise. Kada sam to smislio jednostavno sam zeleo da imam samo JEDNU (glavnu) funkciju za kodni blok koja bi na osnovu browse:colpos trebala da pozove odgovarajucu servisnu funkciju. Nista vise. Onda su nastali opisani problemi, pa sam kasapljenjem i uproscavanjem tog dela programa stigao do ilustracije koju sam poslao u conf. Problem sam prevazisao tako sto svaki remote-zavian TBcolumn korist kodni blok sa zasebnom funkcijom,... i to lepo radi. Inace ja sam stari kliperas (A'86,S'87) ali sam se u zadnje vreme zapustio [mrzelo me je da migriram aplikacije sa S'87 ;)] tako da nemam nekog zesceg iskustva sa 5.0, pa cu biti slobodan da priupitam kad-kad (a mozda i cesce!) neku glupost. Koliko vidim objekti su velika (i jako korisna) novost (dobro ja sam malo zadocnio :( ). Da li se na 5.2 objekti mogu i definisati? >>> // sledeca linija je vrlo vazna >>> browse:configure() Kao sto rekoh, ne mogu bas da se pohvalim preteranim poznavanjem 5.0 objekata a citajuci u reference-u nije mi sasvim jasno sta radi browse:configure() metod. Moze malo objasnjnja? >>> Vratimo se sad na ono zbog cega ti puca program, dakle na zlo i >>> pokvareno :) { || udf(browse) }. Kada se objektu dodaje kolona, blok... >>> .... >>> p.s izvini zbog konfuzne poruke,... Begaj, Poruka i objasnjenje su OK. Objasnjenje sta se desava i zasto dolazi de prepunjenja steka mi je ubedljivo i prihvatljivo. Medjutim, principijelno govoreci, i dalje mi nije jasno zasto se radi dobijanja koja je kolona u pitanju (browse:colpos), mora evaluirati kodni blok TBcolumn objekta! Zar to nije podatak iz strukture podataka TBrowse objekta koji bi trebalo da mu bude poznat kada tretira pojedinacni TBcolumn objekat. Ajd' dobro, kako je - tako je. >>> // naredna je novitet (5.2) >>> browse:forcestable() I na kraju ovog napada blagoglagoljivosti, da izrazim i svoj obol u vezi ovog pitanja. Znam da je to nepristojno pitanje, ali kako ... 5.2? Video sam instalacionu verziju na jednom BBS-u ali je to golemo do bola :( to je sve. cestitam onima koji su izdrzali do kraja! pozdrav Ivan A.
clipper.1017 ialeksic, -> #1003, gaston
>>> 1)... >>> 2)... >>> 3)... Prijatelju: 1) Bezrezervno podrzavam tvoj patriotizam, ali u ovoj stvari sam ovako navikao, amator da se po stare dane odvikavam. 2) Meni se bas cini da su objekti dusu dali da se vozaju tamo-vamo. 3) Bojim se da je u pitanju robija od posla... :((( Pozdravlja te prijatelj :)
clipper.1018 ialeksic, -> #1007, nbatocanin
>>> Slucaj je slican kao u >>> a:= {1, 2, 3} >>> a[3] := a Sta je tu cemo slicno? Ovo je rekurzivno definisana struktura, a tamo je rekurzivna ... macka (TBcolumn) u dzaku (TBrowse)! ;)
clipper.1019 bulaja, -> #1006, nbatocanin
-> Medjutim ni kliper nema mnogo stvari koje ima DBASE IV. => Sta, na primer? ­> Na primer, ladno pravljenje POP-UP menija Zar je to problem izvesti iz Clipper-a? Btw ako ti nije tesko opisi taj sistem menija iz dB IV, mozda ubacim nesto slicno u sledecu verziju BuMenu-ja :).
clipper.1020 mjevta, -> #969, rpausic
>Ć Da li sam nesto propustio pretrazujuci SEZAMove conf ili Potpuno te razumem i pitanje je stvarno na mestu. I ja sam u pocetku bio u prilicnoj nedoumici glede toga pa sam, nakon nekoliko MB starih i novih poruka tipa 'Kako da uradim ovo i ono u kliperu', 'zasto kliper radi ovo a nece ono', 'kako da povezem kliper sa ovim i onim', 'kliper vs. Godzila' digao ruke. Mislim, od klipera definitivno a zamalo i od Sezama. >Ć zaista nema posebnih tema i diskusija o najcescim problemima >Ć programera koji rade sa bazama podataka: finansijsko >Ć knjigovodstvo, robno-materijalno, pogonsko, plate, >Ć fakturisanje, ... Upravo ovih dana 'udaram zavrsni glanc' aplikaciji za finansijsko knjigovodsvo i znam koliko bih nerava sacuvao da sam, umesto da se natezem sa frustriranim i nadobudnim knjigovodjama, neke cake mogao da kupim sa Sezama - onako, fino dajdzestirane za instant primenu. Zato se pridruzujem tvom 'apelu' i kandidujem za jedno od mesta u eventualnoj grupi ( izuzev ako ne diskriminisete prebege u protivnicki FoxPro tabor :) Pozdrav Jevta.
clipper.1021 mickeyl, -> #1005, nbatocanin
=> nuli. Ko normalan će da analizira kilometarski sors bez reda => komentara, da bi ga shvatio i izmenio? Uostalom, ako to može, sigurno => može i da napiše isti takav program, uz manje komplikacije. Neka hvala, ali ja mirnije spavam kad sam siguran da niko nema source mog programa. Jest da ovaj disclipper ne razbija i exe bez ovl-ova 100%, ali se dosta toga može
clipper.1023 d.petrovic, -> #1019, bulaja
Ă> Btw ako ti nije tesko opisi taj sistem menija iz dB IV, mozda Ă> ubacim nesto slicno u sledecu verziju BuMenu-ja :). Ix, kako je lepo bumenu poslužio da ih napravim :)). Samo što nisu univerzalni nego prilagođeni mojim potrebama, nabudžio sam nešto i to lepo radi :))