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.819 jtitov,
Da li neko mogao da mi preporuci neku dobru knjigu (ali koja moze da se kupi/kopira/nabavi ovde) u vezi Clipper-a 5.xx. Treba mi hitnoooo!
clipper.820 d.petrovic, -> #816, ratman
Ă> Imam AT 286/12 sa HD Seagate 44Mb, 640K osnovne + cca.300 Ă> extended RAM. Ako bih hteo da ubrzam kompajliranje i linkovanje Ă> sa Clipper-om (5.01), koliko ima smisla dodavanje RAM i koliko bi Ă> bilo najbolje dodati? Ă> Ă> Moze li se za Clipper iskoristiti nesto od ovih cca.300K? Za radne verzije (subjektivno mišljenje) preporučujem BLinker. Uz još cca 1 MB (mislim da je najbolje keširati biće sigurno brže. Za poslednje linkovanje koristim RtLink i njega pusti da koristi xms memoriju kako mu se sviđa bilo da imaš 320 K ili 1348 K...
clipper.821 dr.grba, -> #815, bulaja
>> line spacing. Pogledaj u uputstvu za stampac koje su tacno >> sekvence, cini mi se da je npr. za Epson za compressed pitch (132 >> char u redu) dovoljno poslati jedan SI (chr(15)). Svima koji su zainteresovani : uvek postoji način... Prilažem svoju INCLUDE datoteku, koju koristim odavno. Neke od relevantnih escape sekvenci sa Epson - kompatibilne štampače. Radi lakšeg rada i manjeg razmišljanja (((:, uveo sam i neke OFF sekvence, a da nisam morao, jer bi jedna sekvenca možda mogla isključiti drugu... nikad se na zna. Ovo možete iskoristiti za razvoj INCLUDE datoteka za druge štampače, osim toga postoje i mnogi drugi načini (((: printeps.ch
clipper.822 dr.grba, -> #819, jtitov
>> Da li neko mogao da mi preporuci neku dobru knjigu (ali koja moze >> da se kupi/kopira/nabavi ovde) u vezi Clipper-a 5.xx. Treba mi >> hitnoooo! Isključivo knjiga koju je napisao Rick Spence; bavi se Clipperom 5.0, i to sa stanovišta problematike programiranja (što je i čini vrednom), a kome treba referentna lista, ima NG bateriju... Može se naručiti kod Mikro knjige. Nadam se da ovo nije odveć reklama za distributera. Treba ljudima reći šta valja, pre nego što kupe ono smeće domaćeg autora...
clipper.823 bulaja, -> #819, jtitov
│Da li neko mogao da mi preporuci neku dobru knjigu (ali koja moze da se │kupi/kopira/nabavi ovde) u vezi Clipper-a 5.xx. Treba mi hitnoooo! └─── Od onoga sto se moze naci ovde, jedino vredi Rick Spence-ov "Clipper 5 - Vodic za programere", izadala je ŠKnjiga.
clipper.824 dejanr, -> #819, jtitov
>> Da li neko mogao da mi preporuci neku dobru knjigu (ali koja moze da se >> kupi/kopira/nabavi ovde) u vezi Clipper-a 5.xx. Treba mi hitnoooo! Rik Spens, Clipper 5. Sjajna knjiga.
clipper.825 ndragan, -> #815, bulaja
/│ naredbu MODE za podesavanje parametara stampaca ili se parametri / Ma kakav mode, dovoljno je da posaljes stampacu odgovarajucu kontrolnu / (ESC) sekvencu, u ovom slucaju za promenu sirine karaktera (pitch) i Pretpostavljam da se radi o štampaču sa serijskim interfejsom, pa se mora prvo podesiti brzina, parnost itd (ono mode com1 9600,8,1,n ili kako već beše) i još preusmeriti lpt1 na com1. Na instalacijama gde sam morao to da radim, gurao sam obe mode naredbe bilo u autoexec bilo u beč kojim se poziva aplikacija; uglavnom, bitno je da se pozove pre nego što se u aplikaciju uopšte uđe. Tako mi je radilo bez problema.
clipper.826 snemcev, -> #819, jtitov
>> Da li neko mogao da mi preporuci neku dobru knjigu (ali koja moze da >> se kupi/kopira/nabavi ovde) u vezi Clipper-a 5.xx. Treba mi hitnoooo! Rik Spens: Clipper 5, Mikro knjiga, Beograd
clipper.827 bulaja,
Da li je neko resio probleme sa linkovanjem biblioteka pravljenih sa Clipper 5.01 i programa pisanih u 5.2? RTlink prijavi nedefinisan simbol CLIPPER501, Blinker ne javi nikakvu gresku (!), ali se zato program obicno zaglavi.
clipper.828 snemcev, -> #821, dr.grba
>> Ovo možete iskoristiti za razvoj INCLUDE datoteka za druge štampače, >> osim toga postoje i mnogi drugi načini (((: Mogao si onu datoteku bar zipovati ;) Elem, odavno se zanosim mišlju da napravim program kojem bi se jednostavno reklo "imam A3 Epson kompatibilca" ili "imam HP LJ III" i da on savršeno odštampa izveštaj i na jednom i na drugom, ali da pri tom iskoristi do maksimuma mogućnosti i jednog i drugog. Npr. želim da mi izveštaj od širine 160 kolona na Epsonu odštampa na A4 kondenzovano, a na laseru u lendskejpu normal fontom. Primer 2: izveštaj za koji je na Epsonu potreban A3 format (zbog preglednosti) isto tako treba na laseru odštampati u lendskejpu, ali ovaj put koristeći neka "gušća" slova. Jedina ideja koja mi je pala na pamet je nešto kao ono što je uradio Nenad u R 9? tj. procedura koja bi analizirala izveštaj i na osnovu toga odlučivala kako će se šta štampati. Pitanje koje u stvari želim da postavim je ovo: jel' neko probao nešto slično da uradi i kakva su iskustva?
clipper.829 bulaja, -> #803, skerl
│Clipper "Fast" EGA/VGA PCX Display Library └─── Radi :) (i to dobro), prebacneo u Clipper dir.
clipper.830 toma, -> #828, snemcev
■■>> ... Pitanje koje u stvari želim da ■■>> postavim je ovo: jel' neko probao nešto slično da uradi i kakva su ■■>> iskustva? Obrati pažnju! (cit. Radovan III:) Ja sam uradio nesto sto je mozda početak toga u smislu da program sam odredi u kom modu će stampati dokument. E sad, moguće je imati promenljivu pmax_col koja će zavisiti od štampača i od koje će zavisiti mogućnost štampe. Problem je dokument od recimo 300 kolona na A4 printeru. Rešenje problema sam ukrao od ćaleta (knjigovođe("kad je raster kratak, uzmeš dva pa produžiš")). Znači, štampanje ide u fajl, onda prvih 160 kolona ide na prvu stranu, drugih 140 na drugu, pa se onda to zalepi selotejpom. Verujte mi knjigovođe to vole! Napravio sam i to da ako je kolona (na dokumentu) sa brojevima "prazna" da uopšte i ne ide u štampu, tako da se samim tim i ukupan broj kolona (printerskih:) smanjuje. Al sam ti pomogo, svaka mi čast, a? Sve ti je jasno. ps. Dok sam rešavao gore pomenute probleme, nisam ni pomišljao na laser, pa eto, uradi i te nešto, ne mogu sve ja! :)))
clipper.831 cnenad,
Zdravo, svima. Jedna radosna vest. Upravo sam malopre instalirao clipper 5.01 i nadao se da je moj problem sa startovanjem programa resen. Kad ono ne lezi vraze evo jos problema. Prvo zasto cliper 5.0 odbija naredbu SET COLOR javlja da Úfali Úboja na kraju a u stvari to je reset prethodnih setovanja (barem je bilo u kliperu s87) Drugo kad sam linkovao obj fajl(ove) linker prijavljuje sledecu gresku: NIV NIV_FUNC Ú Input parsing error ^ Caret (^) shows portion od line read when error discovered Sta je to ? Napominjem da mi je niv glavni program a niv_func UDF funkcija i to je sve radilo kad se linkovalo u S87. Jel mozda nije dobra sintaksa za linkovanje. Ako nije , napisite sta treba da stavim. Cao. Nesa
clipper.832 dr.grba, -> #828, snemcev
>> Mogao si onu datoteku bar zipovati ;) Znate li šta je to bronzani pogled? To je ono kad gurneš kristalnu čašu sa stola, ona se sruši, skotrlja lagano niz sto, pada, pada, paaaaada, razbija se u paramparčad, a vi ništa niste preuzeli za sve to vreme, mada se sve odvijalo lagano, samo ste bespomoćno posmatrali zbivanje. Taj pogled se zove "bronzani pogled", po rečima Danila Harmsa... Upload PRINTEPS.CH sam pratio bronzanim pogledom ):
clipper.833 dr.grba, -> #830, toma
>> mogućnost štampe. Problem je dokument od recimo 300 kolona na A4 >> printeru. Rešenje problema sam ukrao od ćaleta (knjigovođe("kad je >> raster kratak, uzmeš dva pa produžiš")). Znači, štampanje ide u >> fajl, onda prvih 160 kolona ide na prvu stranu, drugih 140 na >> drugu, pa se onda to zalepi selotejpom. Verujte mi knjigovođe to vole! ...ne samo da vole, nego ti skaču u oči objašnjavajući kako će im firma propasti ako ne bude baš tako. Stvarno, zar mislite da je neophodno praviti tako široke izveštaje??? Da, da. Za izveštaj "korelacija između kvarta stanovanja i školske spreme radnika, ponderisano sa radnim stažom i prethodnim radnim mestom, a sve u punom imenu, omenu oca, prezimenu, adr... .... ...fri, nazivu i opisu radnog mesta... Molim vas! Da li je to upotrebljivo?
clipper.834 neman,
Jao .... Prevodio sam jedan stari program ( C501 ) sa novim C52a, ( C52 patch-ovan sa ovim ovdasnjim patch-om ) i .... Naime, imam svoju funkciju NET_USE, koja otvara datoteku pod mrezom, sa parametrima koji se navode itd. Ide otprilike ovako FUNC NET_USE( dbf, alias,... ) IF !EMPTY( NETNAME() ) . . ELSE USE (dbf) ALIAS (alias) NEW RETURN(.T) ENDIF E sad, pozivaju ci funkciju iz jednog dela programa u liniji u kojo sam naveo USE prijavljuje gresku DBCMD 1015 Argument erro DBUSEAREA Ista ova funkcija radi ( za C501 ) na milion mesta, kada sam izdvajao iz programa zasebno pozivanje radi, analizirao sam .PPO i nista. U NG nema greske 1015, nisam koristio nazive za promenljive DBF i ALIAS to sam samo uradio u ovom primeru, ... Izgleda da cu da se vratim na C 501 ? neman
clipper.835 snemcev, -> #833, dr.grba
>> Molim vas! Da li je to upotrebljivo? Zar si to dosad živeo bez toga?!? ;))
clipper.836 dr.grba, -> #835, snemcev
>> >> Molim vas! Da li je to upotrebljivo? >> >> Zar si to dosad živeo bez toga?!? ;)) Za mnogo godina, u AOP-u u kom radim su ispunjene razne muzičke želje. Ali, kada bi mi neko tražio nešto slično, leteo bi glavačke napolje.
clipper.837 snemcev, -> #830, toma
>> Napravio sam i to da ako je kolona (na dokumentu) sa brojevima >> "prazna" da uopšte i ne ide u štampu, tako da se samim tim i ukupan >> broj kolona (printerskih:) smanjuje. Inetersantna ideja. Može malo detaljnije?
clipper.838 snemcev, -> #836, dr.grba
>> Ali, kada bi mi neko tražio nešto slično, leteo bi glavačke napolje. Ispričah ti u petak priču o platnoj listi u 450 kolona.
clipper.839 nbatocanin, -> #827, bulaja
> Da li je neko resio probleme sa linkovanjem biblioteka > pravljenih sa Clipper 5.01 i programa pisanih u 5.2? > RTlink prijavi nedefinisan simbol CLIPPER501, Blinker ne > javi nikakvu gresku (!), ali se zato program obicno > zaglavi. Legalno rešenje teško da postoji: ako je deo biblioteke pisan u Clipper-u, onda će uvek tražiti simbol CLIPPER501. Blinker ne javlja nikakvu grešku kad inkrementalno linkuje, a prethodno je bilo uključeno EXE NODELETE.
clipper.840 toma, -> #837, snemcev
■■>>>> Napravio sam i to da ako je kolona (na dokumentu) sa brojevima ■■>>>> "prazna" da uopšte i ne ide u štampu, tako da se samim tim i ukupan ■■>>>> broj kolona (printerskih:) smanjuje. ■■>> ■■>> Inetersantna ideja. Može malo detaljnije? Konkretan slučaj za ovu stvar kod mene je bila tabela tarifnih brojeva po dokumentima. Na primer Dokument T-1(44%) T-3.4(43%) T-8.1(3%) -------------------------------------------------- Kalkul. 1 20,000 Kalkul. 2 30,000 Kalkul. 3 40,000 Prvo sam sabrao sve tarife, odredio koje ne treba da se štampaju, naslovi se kreiraju automatski iz naziva i stope tarife a ja sam jednostavno kreirao array koji sadrži šifre tarifa koje se štampaju i to je to. Kasnije sam nešto još razmišljao da napravim nešto u stilu dBrowse-a, tako da svaka kolona ima naziv (zaglavlje), picture, sadržaj (CENA) i zbir kolone (može i .T. ili .F. za kolone koje ne mogu da se saberu) i onda program sam odredi koje su kolone "pune" a koje "prazne". Sa svim tim podacima prevazilazi se i problem naših velikih brojeva jer i picture može automatski da se odredi prema veličini zbira, a ako širina pređe 160 slovceta ide na dve strane pa selotejp :) Ideja u principu nije loša samim tim što je moja ;) ali treba sesti i napisati, a bliži se šestomesečni, a i ja moram na more ;). BTW Kako ste rešili "Data width error" koji je sve češći, a? Kod mene je situacija da sve kontroliše posebna funkcija (nešto kao rečnik baza Batoćanina) s tim da kad primeti da je širina veća od širine u bazi, zatvori bazu, kreira tmp sa istom strukturom samo širim potrebnim poljem, sve appenduje iz baze u tmp, preimenuje šta je potrebno i ponovo je otvori. Ponekad potraje ali ne prijavi grešku i ne uznemiravaju programera O:) (normalno nema APPEND BLANK, REPLACE nego dodaj(prom_a, prom_b...) )
clipper.841 bulaja, -> #839, nbatocanin
││Da li je neko resio probleme sa linkovanjem biblioteka ││pravljenih sa Clipper 5.01 i programa pisanih u 5.2? │└─── │Legalno resenje tesko da postoji: ako je deo biblioteke pisan │u Clipper-u, onda ce uvek traziti simbol CLIPPER501. └─── Neverovatna glupost od strane CA! Kao trude se da ocuvaju vertikalnu kompatibilnost i sl., a ovamo ni obicni stari LIB-ovi ne mogu da se povezu sa Clipper-om 5.2. Pokupili su najgoru osobinu od TP-a. :(
clipper.842 bulaja,
Moze li se nekako naterati MemoEdit() da ne ubacuje Soft CR (Ź) u string koji vraca (a da to ne bude pomocu StrTran() ili Memotran()).
clipper.843 ematic, -> #842, bulaja
> Moze li se nekako naterati MemoEdit() da ne ubacuje Soft CR (Ź) > u string koji vraca (a da to ne bude pomocu StrTran() ili > Memotran()). Na žalost to ne može da se uradi tako da memoedit vrati 'pročišćeni' string (ili možda može nekom petljavinom, al' ja to ne znam :), međutim može jedan hardcr(string), i to bi bilo ono što je tebi potrebno :)
clipper.844 bulaja,
**** new file **** R:\IBMPC\CLIPPER\*.* ---------------------- ft_doc arj 29257 Kreiranje NG iz izvornog koda formatiranog kao NanFor FT_DOC is a program which will extract routine documentation out of source code which is documented using the Nanforum Toolkit documentation header (FTHDR.PRG or FTHDR.ASM). It is capable of creating the necessary input files for the Norton Guide compiler (NGC) or a series of ASCII files which can be browsed or printed.
clipper.845 ppekovic, -> #841, bulaja
>> Neverovatna glupost od strane CA! Kao trude se da ocuvaju vertikalnu >> kompatibilnost i sl., a ovamo ni obicni stari LIB-ovi ne mogu da se >> povezu sa Clipper-om 5.2. Pokupili su najgoru osobinu od TP-a. :( Nemoj tako Bulaja, ispljuva ti naše ljude. Naime, iz pouzdanih izvora sam čuo da je prvi čovek za baze u CA-u naš čovek (završio FON). Još jedan naš čovek u CA-u (isto sa FON-a :)) je šef predstavništva CA u Moskvi. Paya
clipper.847 bulaja, -> #843, ematic
│medutim moze jedan hardcr(string), i to bi bilo ono sto je tebi potrebno :) └─── Ne treba mi to :), necu da imam nikakve sort CR-ove i gluposti :), vec samo da mi ostanu CRLF parovi kao terminatori paragrafa.
clipper.848 bulaja, -> #845, ppekovic
│Nemoj tako Bulaja, ispljuva ti nase ljude. Naime, iz pouzdanih izvora sam │cuo da je prvi covek za baze u CA-u nas covek (zavrsio FON). Jos jedan │nas covek u CA-u (isto sa FON-a :)) je sef predstavnistva CA u Moskvi. └─── Onda povlacim rec :). FON rules! Ali ipak su mogli da pripaze i na ovakvu sitnicu kao sto je ocuvanje kompatibilnosti LIB-ova.
clipper.849 dr.grba, -> #838, snemcev
>> >> Ali, kada bi mi neko tražio nešto slično, leteo bi glavačke napolje. >> >> Ispričah ti u petak priču o platnoj listi u 450 kolona. I nisi leteo glavačke napolje, pa ti sad nešto nije jasno?
clipper.850 ematic, -> #847, bulaja
> Ne treba mi to :), necu da imam nikakve sort CR-ove i gluposti > :), vec samo da mi ostanu CRLF parovi kao terminatori > paragrafa. Ups, pogrešno sam razumeo pitanje :) Koliko ja shvatam mehanizam koji koristi memoedit to što želiš nije moguće u toku memoedita, nego tek naknadno :(. Nego, kad smo već kod memoedita, da li neko zna način, ma koliko da je prljav :)), da se direktno pristupi tekst baferu u toku memoedita. Valjda postoji neka interna f-ja u kliperu koja se brine za to, pa onda sa malo C-a... ? p.s. kad će već jednom 'službena' objektna zamena za memoedit, ovaj ovakav mi pojede dušu do sad :))
clipper.851 ndragan, -> #847, bulaja
/ Ne treba mi to :), necu da imam nikakve sort CR-ove i gluposti :), vec / samo da mi ostanu CRLF parovi kao terminatori paragrafa. Ne bih da se mešam, ali to je upravo ono kako radi FoxPro :)
clipper.852 snemcev, -> #840, toma
>> BTW Kako ste rešili "Data width error" koji je sve češći, a? Tako što čupam kosu. Imam program za finansijsko knjigovodstvo, pravljen još za vreme Ante Markovića i kao maximum mu je postavljeno 10,000,000,000.00 dinara, ili u ono vreme, više nego velikodušnih 1,500,000,000.00 DEM (da, milijardu i petsto hiljada maraka). Program je preživeo sve denominacije i sve do skora je radio OK. E, sad treba proširiti sva polja za bar 50% (kako se piše ta inflacija, 10^x?), a source je, dok sam bio na ratištu, misteriozno nestao. I sad, ajmo Jovo nanovo. Nov program. Što bi rekli mi, Lale, "ko zna zašto je to dobro..."
clipper.853 snemcev, -> #840, toma
>> i onda program sam odredi koje su kolone "pune" a koje "prazne". Nismo se razumeli. Mislio sam da si uradio ovo: KREIRAN IZVEŠTAJ: Datum Broj Broj Suma ------------------------------------------------ 01.01.01 2 2 4 08.12.54 4 1 5 ------------------------------------------------ 6 3 9 ODŠTAMPAN IZVEŠTAJ: Datum Broj Broj Suma -------------------------- 01.01.01 2 2 4 08.12.54 4 1 5 -------------------------- 6 3 9 Znači, izbačene su one kolone koje su nepopunjene tj. izbačen je prazan prostor koji ničemu ne služi, osim za izveštaje od ??? kolona.
clipper.854 toma, -> #853, snemcev
ja: ■■>> Sa svim tim podacima prevazilazi se i problem naših velikih brojeva ■■>> jer i picture može automatski da se odredi prema veličini zbira, a ako on:) ■■>> Znači, izbačene su one kolone koje su nepopunjene tj. izbačen je ■■>> prazan prostor koji ničemu ne služi, osim za izveštaje od ??? kolona. opet ja. Eto propustio si par redova u mojoj poruci. Na žalost to je tek u mojoj glavi a ne u .prg fajlu, ali biće :)). Ideja je da se ide stavka po stavka i određuje najveća širina. Kad se obrade svi podaci na kraju imaš širinu "najšireg" broja. Uporediš to sa širinom zaglavlja i pičiš. Eto.
clipper.855 jtitov, -> #852, snemcev
> source je, dok sam bio na ratistu, misteriozno nestao. I sad, ajmo Jovo Tako ti i treba kad branis 'goloruki narod'! ;) > nanovo. Nov program. Sto bi rekli mi, Lale, "ko zna zasto je to dobro..." Jadnice :((((
clipper.856 snemcev, -> #854, toma
>> Eto propustio si par redova u mojoj poruci. Na žalost to je tek u >> mojoj glavi a ne u .prg fajlu, ali biće :)). Da, tako sam i shvatio. Nije u .prg, a ono što si opisao u nekoj od prethodnih poruka je u .prg. >> Ideja je da se ide stavka po stavka i određuje najveća širina. Kad se >> obrade svi podaci na kraju imaš širinu "najšireg" broja. Uporediš to >> sa širinom zaglavlja i pičiš. Eto. Da, dva prolaza kroz bazu. A šta ako je računanje na osnovu kojeg praviš izveštaj komplikovano, pa dugo traje? Meni je prvo palo na pamet da se izveštaj (sa najvećim mogućim kolonama) prvo kreira na disku (zbog preview-a), pa da se pre štampanja protrči kroz fajl i da se za svaku kolonu u izveštaju uvede element niza i da taj element bude .t. ako nešto u toj koloni ima, a .f. ako nema. Možda zvuči nerazumljivo, al' evo "algoritma": dimenzioniši i inicijalizuj niz, otvori datoteku itd. while !eof() pročitaj red for i=1 to len(red) if red[i] == ima_nešto then niz[i] := .t. next i end do Posle ovoga, možeš mirne duše da neštampaš one kolone za koje je niz[broj_kolone] == .f. Možda bi još trebalo uvesti proveru za ono podvlačenje ispod zaglavlja, jer to se pojavljuje u svakoj koloni, bez obzira da li je "prazna" ili "puna" tj. uslov bi trebao biti nešto kao if red[i] == ima_nešto .and. red[i] != "-" then ...
clipper.857 dr.grba, -> #855, jtitov
>> > source je, dok sam bio na ratistu, misteriozno nestao. I sad, >> ajmo Jovo >> >> Tako ti i treba kad branis 'goloruki narod'! ;) Nemoj tako, imao je ne samo opravdanje, već i koordinate Jelačića placa. >> > nanovo. Nov program. Sto bi rekli mi, Lale, "ko zna zasto je to dobro..." >> >> Jadnice :(((( Ma jok, nemo' da ga žališ, pisao je u Pascalu, a sad radi u Clipperu. ---> Crkla disketla, al' ne marim.
clipper.858 dr.grba, -> #856, snemcev
>> Možda bi još trebalo uvesti proveru za ono podvlačenje ispod >> zaglavlja, jer to se pojavljuje u svakoj koloni, bez obzira da li... Zanimljivo. Ako već uvodiš niz koji kontroliše odluku, neka to bude n-dimenzioni niz, pri čemu se već ispita broj dimenzija. I sad možeš čuvati logičko stanje, širinu kolone, opcionu širinu... ...a u modulu za štampu formirati zaglavlje shodno log. stanju i oznaci širine kolone. Da ovo napišem, samo sam malo škrabao po papiru. Računam da bi model u ovom smeru mogao da se napravi uspešno... ...al' šta vredi kad ja i dalje nemam nameru da pravim šlajfne formata direktorovog stola. Moj direktor bi i tako taj izveštaj upotrebio da zaštiti Ktitor nameštaj od masnog bureka.
clipper.859 ndragan, -> #852, snemcev
/ 10,000,000,000.00 dinara, ili u ono vreme, više nego velikodušnih Paz' cicije, samo 11 celih. Jesi nekad pisao kamate za banku? Za takva čudesa imam funkciju koja prepakuje bazu u novi format; piše je generator opisa baza (jaka stvar, programče od 2K), pa je malo izeditujem i pustim. Za pikčere u maskama imam dve-tri globalne promenljive, naprimer g_pc='999,999,999,999', a tamo u masci već stoji č 4,3 get tralala pict g_pc. Mož' da se desi da malo prekrije sledeće polje, al' zato izmena programa traje 15 minuta po aplikaciji. Teža stvar su izveštaji koje sam radio iz riporta (.frx); tamo obično sredim jedno polje, a snimim operaciju u makro i onda krenem serijski. Za pešački rađene štampe (č r,c say) nema problema, jer i tamo stoji nešto ovako k1=0 ... k5=k4+1+len(g_pc2) ... č _red, k5 say to_i_to i naravno, negde ima crta=replicate('=',k9+len(g_pc1)), pa se i te štampe automatski šire i skupljaju. Razmišljam o tome da automatizujem čačkanje .frx izveštaja, čime dobijamo antiinflatornu i antidemonizacionu vakcinu :).
clipper.860 solajac, -> #831, cnenad
Komandu SET COLOR zameni funkcijom SETCOLOR().─ů║ Sve PRG-ove treba da prekompiliras sa C5.1, i tek tako dobijeneĘ OBJ▀-oů_nůve│ÚĆĘ────▀(linija me zezačr pa ne znam sta sam stvarno nap´kisao) Tako dobiene OBJ-ove linkuj. Ne znam da li znas. Bez uvrede. U upot│rebiÚĆ│Ę su RTLINK ▀ili BLINKER═´█. Nikako TLINK ili PLINK. Inace ne znam koji format koristis za linkovanje. On je uglavnom jednostavan. Kod kompiliranja je isto tako vazno (mozda i vaznije)│ koje opcije koristis. Ja kompiliram svaki PRG posebno, na primer: CLIPPER GLAVNI /A /M /N stim sto u svakom Ę▀─PRG-u im─am ůvise PROEÚ─ w3 U jednom PRG-u imam vise procedura. posle linkujem sa RTLINK FILE GLAVNI,PRG1,PRG2. │ů ů Linija me strasno zezala ali se nadam da cu biti od pomoci. Pozdrav SOLAJAC.
clipper.861 snemcev, -> #857, dr.grba
>> Ma jok, nemo' da ga žališ, pisao je u Pascalu, a sad radi u Clipperu. čalim što moram da te ispravim, bio je to ipak Clipper program. Za onaj u Pascalu više ne znam ni gde je ;)
clipper.862 dr.grba, -> #860, solajac
>> Linija me strasno zezala ali se nadam da cu biti od pomoci. >> Pozdrav SOLAJAC. Jel' imaš uputstvo za Sezam? Tamo se nešto priča o redirekciji ulaza, exec datotekama, uploadu poruka i tako to, a i manji tlf. račun. Da ne pričam kako možeš i drugima da omogućiš da pročitaju tvoje poruke...
clipper.863 bstevan,
Imam jedno pitanje u vezi S 87'. Interesuje me dali neko zna kako najbolje iz aplikacije, može da promeni sistemski datum računara a da ne izlazi iz aplikacije. pozdrav, BSTEVAN
clipper.864 neman,
Ja sam problem koriscenja biblioteka za Clipper 5.01 resio tako sto sam sam definisao PROC CLIPPER501 RETURN i zavrsio pos'o. neman
clipper.865 d.petrovic, -> #863, bstevan
Ă> Imam jedno pitanje u vezi S 87'. A zašto ne pređeš na 5.01 ili 5.2 ? Imaš gomilu bublioteka, a u nanform.lib se valjda nalazi funkcija koja radi to što tebi treba... Ă> Interesuje me dali neko zna kako najbolje iz aplikacije, zaboravio sam već šta S87 ima..., probaj: datum=date() get datum read string="date "+dtoc(datum) run &string
clipper.866 cnenad, -> #860, solajac
ŁŁŁ Sve PRG-ove treba da prekompiliras sa C5.1, i tek tako ŁŁŁ dobijeneĘ OBJ▀-oů_nůve│ÚCĘ────▀(linija me zezacr pa ne znam ŁŁŁ sta sam stvarno nap´kisao) ŁŁŁ ŁŁŁ Tako dobiene OBJ-ove linkuj. Ne znam da li znas. Bez uvrede. ŁŁŁ U upot│rebiÚC│Ę su RTLINK ▀ili BLINKER═´█. Nikako TLINK ili ŁŁŁ PLINK. ŁŁŁ ŁŁŁ Inace ne znam koji format koristis za linkovanje. On je ŁŁŁ uglavnom jednostavan. Kod kompiliranja je isto tako vazno ŁŁŁ (mozda i vaznije)│ koje opcije koristis. Ma nema problema i nema uvrede. Programe sam i preveo sa novim C5.01 i trebalo je da RTLINK linkuje NIV.OBJ i NIV_FUNC.OBJ sto je radilo u S87 (sa TLINK) ali ovde nece. Onda sam jedno 30 puta menjao sintaksu za linkovanje i nije uspelo. Onda rekoh, ajd da probam da taj NIV_FUNC.PRG stavim na kraj NIV.PRG-a i lepo prevedem i linkujem samo NIV.OBJ i sve proradi kako treba. Meni ovo bas cudno deluje. Kad smo vec kod te funkcije SETCOLOR() na koji nacin ona resetuje prethodno postavljene boje ?
clipper.867 cnenad,
Interesuje me jedna stvar. Koliko sam razumeo u CLIPPER-u 5.01 je uvedeno dodeljivanje vrednosti promenljivima na sledeci nacin xxxxx := 42 A uporedjivanje promenljivih se vrsi normalno sa potrebnim matematickim znakovima, jel tako ? Znaci bilo bi pozeljno da u svim svojim programima izvrsim zamene i dodam umesto ( = ) znak ( := ) (normalno bez zagrada) ? Ako je pozeljno, ima li neki programcic koji bi to mogao automatski da uradi da ne jurcam po sorsu i trazim ?
clipper.868 bstevan, -> #865, d.petrovic
>> A zašto ne pređeš na 5.01 ili 5.2 ? To nije sporno ali aplikacija koja proverena i radi 2 godine kod korisnika, samo zbog jedne izmene da celu prilagodjavam na 5.01 ili 5.2, a hvala ja ne bih. >> datum=date() >> get datum >> read >> string = "date "+dtoc(datum) >> run &string === Ovo run mnogo smeta jer traži mnogo od programa i jako je neprijatno. No' ipak hvala smislio sam način kako da rešim problem, ali ne preko menjanja sistemskog datuma u računaru. Ali bih pitanje ostavio otvoreno, kako bez korišcenja RUN naredbe promeniti sistemski datum u računaru iz aplikacije pisane u S87'. pozdrav, BSTEVAN
clipper.869 dr.grba, -> #866, cnenad
>> Kad smo vec kod te funkcije SETCOLOR() na koji nacin ona resetuje >> prethodno postavljene boje ? Postavi zastareli oblik, komandu SET COLOR TO , bez argumenata. Ovo će da vrati na crno-beli ispis, onaj default oblik. A ako te interesuje doslovni oblik funkcije, zaviri u STD.CH, baš mi se nešto sad ne da... Ali oblik je nešto poput : #define SET COLOR TO (<c>) SetColor(<c>) Izvini ako sam pogrešio, malo sam lenj da proverim, toplo mi je... A ako hoćeš da vratiš neke tvoje egzotične boje nakon nekih drugih, takođe egzotičnih, napravi stek za boje. Lepo je u Spence-ovoj knjizi opisano kako se to radi...
clipper.870 dr.grba, -> #867, cnenad
>> Ako je pozeljno, ima li neki programcic koji bi to mogao automatski >> da uradi da ne jurcam po sorsu i trazim ? Jurcaj i traži, da ne bi posle mislio "pa gde je greška?", jer kako nekom programu ili editoru objasniti razliku između operatora dodele i operatora logičkog poređenja?
clipper.871 d.petrovic, -> #866, cnenad
Ă> Programe sam i preveo sa novim C5.01 i trebalo je da RTLINK Ă> linkuje NIV.OBJ i NIV_FUNC.OBJ sto je radilo u S87 (sa TLINK) ali Ă> ovde nece. Ă> Onda sam jedno 30 puta menjao sintaksu za linkovanje i nije Ă> uspelo. Onda rekoh, ajd da probam da taj NIV_FUNC.PRG stavim na Ă> kraj NIV.PRG-a i lepo prevedem i linkujem samo NIV.OBJ i sve Ă> proradi kako treba. Može biti da si koristio static promenljive pa nisi niv_func preveo sa opcijom "/n".
clipper.872 d.petrovic, -> #868, bstevan
Ă> To nije sporno ali aplikacija koja proverena i radi 2 godine Ă> kod korisnika, samo zbog jedne izmene da celu prilagodjavam na Ă> 5.01 ili 5.2, a hvala ja ne bih. Ne treba ništa da menjaš, jedino sve prevedeš njime. Zadržao je kompatibilnost osim (možda, ni ja više nisam siguran) oko dodeljivanja. Ne mogu sebe da ubedim da mi nije u jednom delu bio problem da sve "=" zamenim sa ":=" i to samo u jednoj proceduri. Ipak pokušaj sve da prevedeš sa 5.01, trebalo bi da proradi. Ă> Ali bih pitanje ostavio otvoreno, kako bez korišcenja RUN naredbe Ă> promeniti sistemski datum u računaru iz aplikacije pisane u S87'. Mislim da iz samog S87 ne može, jedino dodati funkciju u assembleru (ili C-u)
clipper.873 d.petrovic, -> #867, cnenad
Ă> Ako je pozeljno, ima li neki programcic koji bi to mogao Ă> automatski da uradi da ne jurcam po sorsu i trazim ? Moraš da tražiš, zbog poređenja...
clipper.874 balinda,
Ima li ko iskustva sa Flipperom ili poseduje neku dokumentaciju?
clipper.875 nbatocanin,
Primetih jedan nedostatak dibagera u Clipper-u 5.2: ako imate programe u nekoliko dirova, pa hoćete da otvorite neku datoteku koja nije u tekućem, ranije je bilo dovoljno da otkucate njen naziv, a dibager bi sam dodao pun naziv. Na primer, vi otkucate PRINT, a on doda D:\BASE\SYS5\PRINT.PRG. Naravno, mora se postaviti odgovarajući "Path for Files". E, novi i bitno šareniji dibager ne prihvata čak ni samo PRINT, (mora ekstenzija) a o produženju naziva da i ne govorim ;(( Doduše, ima nekih drugih dobrih osobina.
clipper.876 cnenad, -> #869, dr.grba
ŁŁŁ>> Kad smo vec kod te funkcije SETCOLOR() na koji nacin ona ŁŁŁ>> resetuje prethodno postavljene boje ? ŁŁŁ Postavi zastareli oblik, komandu SET COLOR TO , bez ŁŁŁ argumenata. Kad sam prevodio sa C5.01 nisam ni menjao naredbu SET COLOR TO ali je on prijavio gresku i kad sam izbacio tu naredbu sve je preveo bez problema. Dakle, pitanje i dalje ostaje otvoreno.
clipper.877 cnenad, -> #871, d.petrovic
ŁŁŁ Moze biti da si koristio static promenljive pa nisi niv_func ŁŁŁ preveo sa opcijom "/n". Nigde nisam stavio STATIC niti sam preveo programe sa opcijom "/n" !?!
clipper.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. Dajem primer source koda: glavni.prg ide ovako do while .t. clear all close all public datum public naslovna, p public w, n, zut, b, g, bg, r, rb, gr, inverzno, prazno, siv, form, srm // setovanja programa do parametr do provera // poziva program koji proverava da li je uradjena naslovna iz=0 do while iz<9 clea do while .t. do ram set message to 17 center set wrap on set delimiters to "[]" set delimiters off m_izbor=1 // komande za ispis menija clear typeahead menu to m_izbor do case case lastkey()=27 do nista exit case m_izbor=1 do prozor1 exit ... // itd. endcase enddo iz=0 if iz<9 loop else exit endif enddo enddo return provera.prg naslovna="uradjeno" <--- e ovaj parametar (kako to izvesti) if .not. iscolor() // setovanja boja endif if naslovna="uradjeno" return else do ekran endif set color to w/n return Nadam se da mi necete zameriti sto sam Vam poslao malo mog izvornog koda. Posto vec stoji taj parametar naslovna="uradjeno" nece se vrsiti startovanje glavnog ekrana ali bih to u zavrsnoj verziji izbacio tako da se uvek startuje naslovni ekran osim ako se iz dos linije za poziv ne ubaci neki parametar koji ce staviti do znanja programu da ne prikazuje naslovni ekran. To mi je strasno potrebno, pa ako mozete da pomognete...
clipper.879 snemcev, -> #867, cnenad
>> Ako je pozeljno, ima li neki programcic koji bi to mogao automatski >> da uradi da ne jurcam po sorsu i trazim ? Uzmi bilo koji editor i uradi Search&Replace. Alternativa (za >> xx .prg) je program SNR iz Sezamovih direktorijuma.
clipper.880 dejanr, -> #878, cnenad
>> 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. Parameter a If PCount()=1 x:=a Else x:=123 End If ...
clipper.881 nikac, -> #868, bstevan
>■ To nije sporno ali aplikacija koja proverena i radi 2 godine >■ kod korisnika, samo zbog jedne izmene da celu prilagodjavam na >■ 5.01 ili 5.2, a hvala ja ne bih. Neznam zbog sta to moras da prilagodjavas... Mislim, moj cale je VEOMA lako presao sa summer 87 na 5.01 i to sa nekim minimalnim ili nikakvim(sad se bas nesecam najbolje) prepravkama. Samo ces da dobijes brzi kod kad ga kompajliras sa 5.01. -=Nikac=-
clipper.882 nikac, -> #867, cnenad
>■ Interesuje me jedna stvar. Koliko sam razumeo u CLIPPER-u 5.01 >■ je uvedeno dodeljivanje vrednosti promenljivima na sledeci >■ nacin Koliko ja znam ne postoji takva izmena. 5.01 je nadskup s87 tj. skoro u potpunosti su kompatibilni. -=Nikac=-
clipper.883 d.petrovic, -> #877, cnenad
Ă> Nigde nisam stavio STATIC niti sam preveo programe sa opcijom Ă> "/n" !?! Brži su mi prsti od pameti :). Sada sam se setio da je pojenta u tome što su programi bili pisani u S87. Opcijom "/n" treba prevoditi kada koristiš eksterne static promenljive, tada su promenljive vidljive na nivou modula. Sad žurim, pogledaj nenadov umetak u nekim starijiim računarima...
clipper.885 d.petrovic, -> #878, cnenad
Ă> 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. čurim i mrzi me da pregledam ceo source koji si ostavio, valjda ti treba sledeće: glavni_prog parameters a,b,c d:=pcount() // vraca broj prenetih parametara // svi parametri preneti iz dos-a su "C" tip, ako ti treba brojni // izvrsis konverziju do case case d==0 // nije prenet parametar // sve tri promenljive postaviti na default case d==1 // a je prenet // b:= default // c:= default case d==2 // c:= default case d==3 // sva 3 su preneti otherwise // beep, preneto previse parametara endcase
clipper.886 snemcev, -> #878, cnenad
>> Posto vec stoji taj parametar naslovna="uradjeno" nece se vrsiti >> startovanje glavnog ekrana ali bih to u zavrsnoj verziji izbacio tako >> da se uvek startuje naslovni ekran osim ako se iz dos linije za poziv >> ne ubaci neki parametar koji ce staviti do znanja programu da ne >> prikazuje naslovni ekran. Pri dekleraciji glavne procedure, navedi i neki parametar i u njemu ćeš dobiti prvi parametar iz komandne linije, u drugom drugi itd. Alternativa (za Clipper '87) je da posle zaglavlja (procedure bla_bla) navedeš PARAMETERS p1, p2...
clipper.887 snemcev,
Jedno interesantno pitanje: kako saznati ime datoteke koja je otvorena u trenutno aktivnoj radnoj oblasti? Ne, neću alias, već pravo ime datoteke. Izgleda mi da Clipper to nema, a nema ni NanFor v2.1
clipper.888 nbatocanin, -> #868, bstevan
> Ali bih pitanje ostavio otvoreno, kako bez korišcenja RUN > naredbe promeniti sistemski datum u računaru iz aplikacije > pisane u S87'. Najprostije i najčistije preko DOS funkcije Set System Date iz C-a ili ASM-a.
clipper.889 nbatocanin, -> #867, cnenad
> xxxxx := 42 Ovo je on-line dodeljivanje (može se koristiti i u okviru izraza), ali ostao je i stari metod sa xxx = 42. > A uporedjivanje promenljivih se vrsi normalno sa potrebnim > matematickim znakovima, jel tako ? Da. > Znaci bilo bi pozeljno da u svim svojim programima izvrsim > zamene i dodam umesto ( = ) znak ( := ) (normalno bez > zagrada) ? Da, ali NIJE obavezno: radiće i sa "=". > Ako je pozeljno, ima li neki programcic koji bi to mogao > automatski da uradi da ne jurcam po sorsu i trazim ? Nije problem napraviti takav program. Morao bi od linija da prepoznaje samo ovo na početku reda: <Promenljiva> = <nevazno> i da ga transformiše u: <Promenljiva> := <nevazno> al kao što rekoh, ne treba ti :)
clipper.890 nbatocanin,
Clipper 5.2 NE ispisuje promenljivu koja se učitava pomoću GET-a dok se odgovarajućem objektu ne pošalje poruka DISPLAY(). U vezi diskusije za učitavanje logičke vrednosti, to znači da se sada može veoma prosto napraviti BEZ izmene programa da sva učitavanja logičkih vrednosti umesto .T./.F. rade sa DA/NE.
clipper.891 bstevan, -> #872, d.petrovic
>>> pokušaj sve da prevedeš sa 5.01, trebalo bi da proradi. Hocu jer ima još njih koji na tome insistiraju. Navodno dobija se brži kod.Dali je to tako i koliko je brži ? >>> assembleru (ili C-u) Izgleda da je to ipak jedino rešenje. pozdrav, BSTEVAN
clipper.892 bstevan, -> #881, nikac
>>> Samo ces da dobijes brzi kod kad ga kompajliras >>> sa 5.01. Koliko je to brze, pitaj caleta.Ako je to za 5% i vise vredi to probati. Nego sumnjam da samo kompajliranjem dobijaš brzi kod ali ko zna, moze biti. pozdrav, BSTEVAN
clipper.893 bstevan, -> #888, nbatocanin
>>> Najprostije i najčistije preko DOS funkcije Set System Date iz >>> C-a ili ASM-a. Izgleda da je to pravo rešenje, nešto slično je predložio i d.petrovic u poruci 9.872. Nenade imam pitanje, dali programe pisane u S87' kad se prevedu (kompajliraju) sa 5.01, njihov kod bude brži, bez nekih izmena naravno, sem oni rutinskih što se spominju kod dodeljivanja ? pozdrav, BSTEVAN
clipper.894 dejanr, -> #893, bstevan
>> Nenade imam pitanje, dali programe pisane u S87' kad se prevedu >> (kompajliraju) sa 5.01, njihov kod bude brži Koliko sam ja primetio (bez nekog naročito opsežnog testiranja), ne bude. Brzina rada je približna, a ako ima promene ona je na gore tj. program postane za žilet sporiji.
clipper.895 bstevan, -> #894, dejanr
>>> postane za žilet sporije. Upravo sam preveo aplikaciju za obradu ličnih zarada u 5.01 i testirao i verovali ili ne sporije je za nekoliko žileta. Dejane tvoj odgovor je i potvrdjen ovim testiranjem. Znaci ipak treba izvršiti radikalne promene da bi dobio brži kod. pozdrav, BSTEVAN
clipper.896 bstevan, -> #895, bstevan
Ipak ima i nešto što dobijaš prevodjenjem u 5.01, a to je da sad aplikacija može biti glomaznija bez straha da ce program pasti. Ali o tome je vec bilo ovde reci ne bih da ponavljam potvrdjene cinjenice.
clipper.897 bstevan, -> #881, nikac
>>> Samo ces da dobijes brzi kod kad ga kompajliras >>> sa 5.01. Više nema sumnje u to jer sam upravo iskompajlirao sa 5.01 i izvršio testiranje. Rezultaprogram je sporiji. Za brži kod mora se izvršiti i radikalne izmene u samom programu. Inacslažem se da neke vece izmene da bi ga preveo nisam imao, ali sam izgubio malo u brzini. pozdrav, BSTEVAN
clipper.898 ndragan, -> #868, bstevan
/>> string = "date "+dtoc(datum) />> run &string / ali ne preko menjanja sistemskog datuma u računaru. Sad sam se setio nečeg. Neke kolege programeri su, iz ne znam kojih razloga, insistirali na upisivanju sistemskog datuma kao datuma knjiženja. Ovo je skriveni zajeb, jer evo šta se događa: - dokumentacija u firmi kasni - operateri hoće da ispadnu ažurni ili da bar izgleda da je proknjiženo istog meseca - operateri će podesiti sistemski datum na 31.12 ili 31.01 - dođeš nešto da uradiš, uradiš Pkzip -u (ili -f), i ne pokupi ti baš ništa što je tog dana rađeno (Ardž isto nema ugrađenu veštačku inteligenciju da prepozna vraćene datume) - odneseš to na drugo mesto, znaš da na toj_i_toj disketi imaš bolju verziju rutine - raspakuješ i vidiš da imaš neku staaaru verziju - ne možeš sam sebi da se načudiš šta si kog đavola radio tamo 31.12? Sistemski datum, ako se beleži, nek se beleži da operater ni ne zna. Datum knjiženja, nek' kuca šta hoće. Ako ukuca nešto bez veze, opomenem ga (recimo <date()-100 ili >date()+5 ), i onda pustim da ispravi ili ostanje pri svom.
clipper.899 cnenad, -> #883, d.petrovic
ŁŁŁ nivou modula. Sad zurim, pogledaj nenadov umetak u nekim ŁŁŁ starijiim racunarima... Kad smo vec kod tog umetka bas sam razmisljao da posaljem poruku u MALE.OGLASE da mi treba taj umetak pa ako ga neko ima neka salje MAIL da mi pozajmi da ga fotokopiram.
clipper.900 nikac, -> #895, bstevan
>■>>> postane za žilet sporije. >■ >■ Upravo sam preveo aplikaciju za obradu ličnih zarada >■ u 5.01 i testirao i verovali ili ne sporije je za >■ nekoliko žileta. >■ Dejane tvoj odgovor je i potvrdjen ovim testiranjem. >■ Znaci ipak treba izvršiti radikalne promene da bi dobio >■ brži kod. Neznam na koju semu, ali video sam svojim ocima. Program pisan na summer87-ici prvi put prekompajliran sa novim 5.01. Posle par sitnih izmena (cisto sintaksne razlike nekih specificnih funkcija) program je proradio i razlika u radu sa bazama je vidna i ogromna... radi bar dva puta brze. Mozda ima neke veze jer je program ogroman? Stvarno neznam?! -=Nikac=-
clipper.901 dr.grba, -> #881, nikac
>> prepravkama. Samo ces da dobijes brzi kod kad ga kompajliras >> sa 5.01. Zaboga! Ovo si rekao kao da je to jedina prednost Clippera 5.xx. Molim te, reci da nisi onako mislio!
clipper.902 dr.grba, -> #891, bstevan
>> Navodno dobija se brži kod.Dali je to tako i koliko je brži ? Slušaj, u jednim malo starijim Računarima ima tekst Nenada Batoćanina pod naslovom "Kralj je stigao", u kome Nenad detaljno i studiozno priča o (tada) novim konceptima projektovanja Clippera, kao i alatima okoline. Za prvi susret sa Clipperom 5.xx veoma upotrebljiv i koristan tekst. U rind bazi možeš uz malo truda pronaći referencu na taj tekst.
clipper.903 bstevan, -> #898, ndragan
>>> Sistemski datum, ako se beleži, nek se beleži da operater ni >>> ne zna. Znaš imao sam neku ideju da promenim sistemski datum i ponovo vratim, ali sam to prevazišo novom idejom kao što si i sam spomenuo da on i ne zna. Ali me kasnije zagolicala ta prva ideja, a ispade da u samom kliperu to nemožemo rešiti, vec samiz C-a ili asemblera. Znači to je više bilo znatiželj dali je neko to rešio iz klipera, no mislim da su ovake diskusije dobro došle za sve. pozdrav, BSTEVAN
clipper.904 bstevan, -> #900, nikac
>>> u radu sa bazama je vidna i ogromna... radi bar dva puta >>> brze. Mozda ima neke veze jer je program ogroman? >>> Stvarno neznam?! Da zaključimo, samo čistim prevodjenjem aplikacije pisane na S87' (odnosno kompajliranjem) iste sa 5.01 nedobijamo brži kod. Odnosno nešto sporiji, a izmenama u ključnim delovima dobijamo na brzini, odnosno što bolje iskoritimo mogucnosti novog kliper dobijamo brži kod. To koliki je program ne utice mnogo na brzinu.Jer ja imam aplikaciju negde oko 610.000,00 Kb i slobodne memorije pri njenom radu oko 230 Kb, znaci sasvim dovoljno za bilo kakav rad pa cak i za RUN iz iste, inace ta aplikacija je kompajlirana sa 5.01. pozdrav, BSTEVAN
clipper.905 bstevan, -> #902, dr.grba
>>> U rind bazi možeš uz malo truda pronaći refrencu na taj tekst. Ma to je ok, sve njegove tekstove o clipperu sam pratio jasne su mi prednosti u odnosu na S87' i to nije sporno. Ovde je konkretno bilo govora da se samo suvim kompajliranjem programa pisanog na S87' sa Clipperom 5.01 nedobija na brzini. Vec se moraju kriticni momenti u programu malo srediti. pozdrav, BSTEVAN
clipper.906 d.petrovic, -> #901, dr.grba
Ă> Zaboga! Ovo si rekao kao da je to jedina prednost Clippera 5.xx. Ă> Molim te, reci da nisi onako mislio! Pa reč je o programu koji je pisan za S87, kod je za S87, ne može pretprocesor da uradi sve umesto tebe. Ako si pisao i=i+1 neće ga prebaciti u i++. žoveka smo ubeđivali da prevede program sa 5.01 da bi mogao da doda nekoliko funkcija iz drugih biblioteka, a ne da ga ubrza. S druge strane niko mu ne brani kad je to već uradio da malo prošeta kroz source i eventualno nekoliko kritičnih funkcija ubrza, samo mislim da je to ubrzanje zanemarljivo.
clipper.907 d.petrovic, -> #900, nikac
Ă>> ■ Upravo sam preveo aplikaciju za obradu ličnih zarada Ă>> ■ u 5.01 i testirao i verovali ili ne sporije je za Ă>> ■ nekoliko žileta. Ă> Neznam na koju semu, ali video sam svojim ocima. Ă> Program pisan na summer87-ici prvi put prekompajliran sa Ă> novim 5.01. Posle par sitnih izmena (cisto sintaksne razlike Kanda ta dva programa nije pisao isti čovek ? ;)))
clipper.908 jtitov, -> #904, bstevan
> aplikaciju negde oko 610.000,00 Kb i slobodne memorije ------------- Jel to novih ili starih Kb??? :))) A na cemu drzis tu aplikaciju? Na CD ROM-u?
clipper.909 bstevan, -> #908, jtitov
>>> Jel to novih ili starih Kb??? :))) A na cemu drzis tu aplikaciju? >>> Na CD ROM-u? Ne to je trenutno žiralna vrednosDržim ga u ......(citaj kako hoceš). pozdrav, BSTEVAN
clipper.910 solajac, -> #909, bstevan
>> To koliki je program ne utice mnogo na brzinu.Jer ja imam >> aplikaciju negde oko 610.000,00 Kb i slobodne memorije >> pri njenom radu oko 230 Kb, znaci sasvim dovoljno za >> bilo kakav rad pa cak i za RUN iz iste, inace ta aplikacija >> je kompajlirana sa 5.01. Malo o brzini C5.01: - Program pisan u C5.01 radi sa VIRTUELNOM memorijom, SWAP-uje na disk pa zato je (u nekim situacijama) nesto sporiji. Ako imate EXPAND memoriju SWAP-ovace u nju pa ce raditi brze. Ali zato programi od 600K i vise K-ova za njega nisu nikakav problem. - Ako ne zelite da program (ili neki njegovi delovi) SWAP-uje i tako ga ubrzate, za to postoje odgovarajuce opcije prili- kom linkovanja. - Ako se PRIVATE i PUBLIC promenljive zamene sa LOCAL, program ce raditi brze. Ovo nije uvek moguce, a nije ni preporucljivo u programima koji rade. Moze biti izvor novih gresaka. Kratko podsecanje: Formalni parametri u procedurama ili fu- nkcijama, ako se deklarisu iza PARAMETERS tretiraju se kao PRIVATE, a ako se navedu uz ime procedure, izmedju zagrada, tretiraju se kao LOCAL. - Program ce raditi brze ako se MACRO-i zamene sa CODE-BLOCK. - 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 ... - Program cete najvise ubrzati ako podatke koje obradjujete, organizujete na PRAVI nacin. Ako ste tu omanuli, nece vam pomoci ni C5.01 ni C ni ASEMBLER. ----------------------------------------------------------- C87 -> C5.01 - Moje programe pisane u C87 samo sam prekompilirao sa C5.01 i sve je funkcionisalo bez greske. Vidjao sam programe kod kojih su morale biti uradjene minimalne izmene (greske se pojave vec u kompilaciji, najkasnije u linkovanju). Posedujem i primerak programa koji nisam uspeo, a ni njegov slavni autor, da prevedem sa C87 na C5.01. U C87 radi, a sa C5.01, kako naleti na neki READ padne sa Error BASE/1066 Argument error: conditional Called from (b)__GET(0) Called from obj: SETFOCUS(0) Called from GETREADER(0) Called from READMODAL(0) Called from UNOS_ORG(2645) .... ----------------------------------------------------------- Znak = ili := - Clipperu je svejedno da li koristite (u komandama koje rade) = ili :=. Znak := je uveden zbog nekih novih komandi. - Da malo prosirimo. Uveden je novi znak za poredjenje ==. On nije prosta zamena za =. Znak == radi kao da je setovan EXACT ON, a = kao EXACT OFF. (Ovo moze uticati da program pod C87 ne radi isto kao pod C5.01) - Da jos malo prosirimo: Uveden je i operator += (-=, *=...). Opasan je i ja ga uglavnom (zbog licnog iskustva) izbegavam. Primer: br1 := 5.23 br2 := 3.345 Napisali ste brzopleto: br1 += ROUND(br2,0) zeleci da skraceno napisete: br1 := ROUND(br1 + br2) Ako brzopleto zakljucite, mozda cete pomisliti da je rezultat br1=8 Ako se ova instrukcija razvije: br1 := br1 + ABS(br2) odmah se vidi da to nije ono sto smo zeleli, a cak ako i brzopleto zakljucite videcete da je rezultat br1=8.23 Probajte i sa drugim funkcijama. Veselje je isto. (Izvinjavam se onima koji ovakve brzoplete greske ne prave). ----------------------------------------------------------- Zavrsne odredbe - Izvinjavam se autoru pitanja na koje odgovaram sto sam isko- ristio njegovo pitanje da odgovorim i na jos neka koja su bila aktuelna u poslednje vreme. - Zahvaljujem Dr.Grbi na korisnim i dobronamernim sugestijama. kao sto se iz prilozenog vidi. (I ubuduce su dobrodosle, malo sam taze na SEZAMU). Pozdrav, Solajac.
clipper.911 nikac, -> #901, dr.grba
>■ Zaboga! Ovo si rekao kao da je to jedina prednost Clippera >■ 5.xx. Molim te, reci da nisi onako mislio! Dobro, dobro nemoj da se ljutis... ;) Ja sam to reko samo onako usput. Inace nisam bas maher za clipper, ali sam bio prisutan kada je cale prebacivao program sa s87 na 5.01 pa nisam mogao da odolim a da ne kazem moja (tj. njegova) iskustva u vezi toga... Pozdrav, -=Nikac=-
clipper.912 d.petrovic, -> #910, solajac
Samo da dopunim... Ă> - Program pisan u C5.01 radi sa VIRTUELNOM memorijom, SWAP-uje Ă> na disk pa zato je (u nekim situacijama) nesto sporiji. Ako Pri startovanju program ucitava overleje jedan po jedan, zavisno od ucestalosti poziva i raspolozive memorije (to se regulise i u enveroimentu). Zbog toga je nesto sporiji u startu, ali se kasnije izjednaci (posle nekoliko akcija u programu) pa mozda i ubrza u odnosu na S87 (opet zavisi od raspolozive memorije). Ako iskljucite keser i na sporom disku sa dosta memorije to je itekako primetno (sporost pa ubrzanje). Ă> - Izvinjavam se autoru pitanja na koje odgovaram sto sam isko- Ă> ristio njegovo pitanje da odgovorim i na jos neka koja su Ă> bila aktuelna u poslednje vreme. Samo izvoli :)
clipper.913 bstevan, -> #910, solajac
>>> Malo o brzini C5.01: Stvarno mi je drago što si se potrudio i detaljnije da objasniš neke stvari oko brzine 5.01.Znači ostajemo na tome da se cistim prevodjenjem sa S87' -> 5.01 ne dobija u brzini sem u delu koji si objasnio.To potvrdjuje da se ipak mora izvršiti neka izmena. >>> -Ako se PRIVATE i PUBLIC promenljive zamene sa LOCAL, program ce raditi brze. Ovo nije uvek moguce, a nije ni preporucljivo u programima koji rade. Moze biti izvor novih gresaka. U ovom se slažem sa tobom, nemam šta da dodam. >>> -Program cete najvise ubrzati ako podatke koje obradjujete, organizujete na PRAVI nacin. Ako ste tu omanuli, nece vam pomoci ni C5.01 ni C ni AMBLER. Ovo odavno cekam da neko primeti, ovde se jako malo govorilo o organizaciji podataka za kasnije obradjivanje, to smatram da je kljuc mnogih diskusija o brzini programa i ako moramo priznati da su programi na C,MODUL-2,PASCAL i ASEMBLER brži od Clipper programa ali su zato teški za kasnije održavanje.Ovo mi je reko jedan iskusni C - programer, inace sad u Južnu Afriku. Inace postaje glupo i monotono kad se govori o brzini C-a u odnosu na Clipper (uglavnom se vrši to uporedjivanje), stvarno nema smisla.Dejan je jednom dobro razgranicio kad se pocene pisati program treba imati u vidu šta on treba da radi za koje vreme i u kojim prilikama i konacno se odluciti na kom jeziku ga napisati. >>> C87' -> C5.01 Tvrdio sam uporno da se baš svaki program nemože prevesti ladno bez ipak nekih izmena. Evo kod mene je bilo sledecih problema: 1. proc = VAL(PROCENAT) proce = SUBSTR(proc,15,2) proc i proce nije vario i smatrao je da je upitanju nova PROCEDURA. 2.Zatim u vezi SetColor(<ime>) 3.I konacno u vezi DBEDIT Ovu poruku nastavljam u sledecoj. pozdrav, BSTEVAN
clipper.914 bstevan, -> #913, bstevan
a nastavim oko problema u vezi EDIT(). KodBEDIT() sa korisnickom funkcijom za unos podataka imam problem tako kad želim novi slog i izadjem iz nega a nisam otkucao ništa on mi zadnji slog duplira samo na ekran a baza ostaje neizmenjena, ali zato na ekranu imam navodno dva sloga ista (mislim na zadnji slog). Ako to ponovim više puta za toliko puta na ekranu prikaže zadnji slog, pa po broju prikazanih slogova na ranu ispada da ima u bazi npr. 10 sloga a u bazi je ustvari ostalo 5 sloga jer nisam ništa otkucao u novom slogu. Ne shvatam šta je problem ali moguce je da je oko GET-a problem on izgleda ovako: č ROW(),COL() GET get_data PICTURE get_pic(m->e_field) READ Medjutim to se nije dogadjalo u S87', sve je radilo kako treba. Na kraju hvala ti na poruku koju si poslao ono objašnjava mnogo toga(poruka 9.910), a takodje hvala i ostalima ku se ukljucivali , ipak smo neke stvari razjasnili. pozdrav, BSTEVAN
clipper.915 dr.grba, -> #910, solajac
>> - Zahvaljujem Dr.Grbi na korisnim i dobronamernim sugestijama. >> kao sto se iz prilozenog vidi. (I ubuduce su dobrodosle, malo >> sam taze na SEZAMU). Hvala tebi na toplim rečima, a sad svi na posao (; Dopao mi se tvoj problemski pristup odgovaranju na sopstveno pitanje. Mislim da bi ti u ovom trenutku knjiga koju je napisao Rick Spence mogla dosta pomoći, u njoj postoji goooomila sitnica koje mogu jako da pomognu, problemski je orijentisana i iskustvom potkrepljena.
clipper.916 goranr,
Evo nešto za sve Clipperaše: Menjanje sistemskoůg datuma bez RUN komande! ÔOPAH setdate.zip
clipper.917 nbatocanin, -> #887, snemcev
> 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?
clipper.918 nbatocanin, -> #891, bstevan
> Hocu jer ima još njih koji na tome insistiraju. > Navodno dobija se brži kod.Dali je to tako i koliko je > brži ? Kod dobijen Clipper-om 5.xx je u principu sporiji od koda dobijenog sa Summer'87. Međutim, tu ima jedna kvaka. Brzina se gubi u dinamičkim operacijama sa overlejima i tu se usporenje oseća kada se, na primer, šetaš kroz menije. Tada se traži učitavanje novih blokova programa, pa ako računar ima malo memorije, a program je veliki, to može da potraje toliko da se oseti usporenje. Međutim, najvažnije operacije (pretraživanje, indeksiranje, ...) je u većini slučajeva brže sa 5.0, jer postoji interni sistem keširanja podataka. Sledi, programi u Summer'87 verziji su podjednako brzi u svim delovima, dok 5.0 ima neke delove (zaista prihvatljivo) usporene, ali su zato najvažniji delovi ubrzani, osim ako se ne radi sa nekom specifičnom konfiguracijom.
clipper.919 nbatocanin, -> #893, bstevan
> Nenade imam pitanje, dali programe pisane u S87' kad se > prevedu (kompajliraju) sa 5.01, njihov kod bude brži, bez > nekih izmena naravno, sem oni rutinskih što se spominju > kod dodeljivanja ? 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.
clipper.920 d.petrovic, -> #918, nbatocanin
Ă> Kod dobijen Clipper-om 5.xx je u principu sporiji od koda Ă> dobijenog sa Summer'87. Međutim, tu ima jedna kvaka. Brzina se Ă> gubi u dinamičkim operacijama sa overlejima i tu se usporenje Ă> oseća kada se, na primer, šetaš kroz menije. Tada se traži Ă> učitavanje novih blokova A MENU.OBJ je dovoljno mali i često pozivan da zaslužuje da bude resident :)