¢ Veden) mal[ho skladu a fakturace.¢¢ program: Old@ich Buk*'ek¢¢¢ Jako uk*zku jednoduch[ho vyu(it) mal[ho po')ta'e ATARI uv*d)me p+vodn) program d@)v%j&)ho 'lena prost%jovsk[ho Atari klubu Oldy Buk*'ka.¢¢ Jeho technick`m vybaven)m je:¢ Atari ⇩ 256 Kb ⇩ Q-MEG ⇩ CENTONICS¢ Disketov* jednotka ╱syst[m ②)ha$¢ Tisk*rna LC-20 ╱sada Kamenick`ch$¢¢ Program ne@e&) cel[ jednoduch[ ]'etnictv), ╱dr(me se p@i zemi$ umo(uje pouze veden) mal[ho skladu a automatizuje tisk dodac)ch list+. Zjednodu&en% @e'eno, ty se li&) od faktur t)m, (e z*kazn)ci plat) ihned v hotovosti.¢ Velk`m probl[mem je nedostatek pam%ti mal[ho po')ta'e. Nap@)klad v t[to nejnov%j&) verzi Olda vypustil n*pov%dn[ menu, aby mohl spravit veden) skladov`ch opolo(ek. Nem+(e tak[ dod%lat n%kter[ p+vodn% pl*novan[ funkce.¢ Je vhodn[ podotknout, (e Olda nen) (*dn` &kolen` program*tor, po')ta' pou()v* jako v%t&ina z n*s ze z*jmu. Jinak je vyu'en` soustru(n)k. Proto mu v podstat% zb`val jen programovac) jazyk BASIC, v n%m( si pro svoji pot@ebu narychlo sestavil funk'n) program. Zku&en` program*tor by jej jist% byl schopn` optimalizovat a vylep&it.¢ Potichu si mysl)m, (e program napsan` ve stroj*ku se zam%@en)m na vyu()v*n) ramdisku by mohl skute'n% zvl*dnout jednoduch[ ]'etnictv) men&)ho rozsahu. Jen(e ani komer'n% prod*van[ programy nep@ekra'uj) vyu(it) jazyka TURBOBASIC.¢¢ Tento program pou()vaj) i Oldovi kolegov[, kte@) se jinak o po')ta'e nezaj)maj). Proto jej pou()vaj) v sestav% umo(uj)c) samo'inn[ nastartov*n) cel[ho syst[mu. Pou(it`m Dosem je BIBODOS, kter` si p@i startu samo'inn% naform*tuje ramdisk '.8, pokud nebyl dosud form*tov*n. ╱v`hoda p@ed DOS 2.5$ Automaticky se spust) TURBOBASIC nazvan` AUTORUN.SYS. Vlastn) program je samoz@ejm% pojmenov*n AUTORUN.BAS. Do ramdisku si ihned rozbal) polo(ky ulo(en[ ve zhu&t%n[ form% na disket% ve dvou shodn`ch souborech. P@ekop)ruje si tak[ soubor s ')slem posledn) faktury.¢ Samotn` program nyvyu()v* (*dn[ speci*ln) p@)kazy Turbobasicu a tak by fungoval i bez n%j. S n)m je v&ak rychlej&) a tak[ by zde m%la b`t k dispozici v%t&) pam%④.¢ Po zdr(en) dan[m zav*d%n)m 'esk[ znakov[ sady se objev) seznam v&ech dvaceti druh+ polo(ek a program je ihned v re(imu odepisov*n) materi*lu. Prvn)ch deset polo(ek se vol) stiskem kl*vesy s dan`m ')slem, pro druhou des)tku se mus) nejprve stisknout kl*vesa "A" a potom op%t ')slo od jedn[ do deseti. Na spodn)m okraji obrazovky se vypisuje n*pov%da ve tvaru A = 10. Dal&) podivn` ]daj zobrazuje volnou pam%④ po')ta'e.¢ Ka(d` typ materi*lu obsahuje deset karti'ek na jednotliv[ druhy. To je dohromady 20 ✓ 10 = 200 karti'ek materi*lu. Zd* se to b`t m*lo, a tak[ Olda skute'n% pr+b%(n% m+(e pou()vat pro svoji pr*ci daleko v)ce druh+. Jejich podchycen) t)mto programem je umo(n%no jednor*zov`m vy'erp*v*n)m n%kter`ch druh+. Nap@)klad jestli(e na nat@en) jednoho auta je pot@eba n%kolik kilogram+ (*dan[ho odst)nu barvy za n%kolik tis)c p%n%z, nem* Olda na sklad% des)tky mo(n`ch odst)n+, ale koup) mno(stv) pr*v% na jedno auto.¢ Mimo odepisov*n) materi*lu m* program je&t% tyto funkce:¢¢ S = Nahr*v*n) na disk,tisk skladu¢ D = Doplnit sklad¢ P = Tisk dodac)ch list+¢ O = Napsat adresu a cenu¢ N = Nov` dodac) list¢¢ Vol) se stiskem p@)slu&n[ kl*vesy, ale jejich seznam se ji( nevypisuje, u(ivatel si je prost% mus) pamatovat.¢ Po proveden) odpisu materi*lu se v p@)prav% dodac)ho listu pokra'uje funkc) "Napsat adresu a cenu". Po sv[m vyvol*n) nab)dne formul*@ na adresu z*kazn)ka a cenu proveden[ pr*ce. Je zde tak[ uvedeno ')slo dodac)ho listu.¢ Kone'n` tisk se provede pomoc) funkce "Tisk ]'tu". Na dodac)m listu je uveden seznam d@)ve odepsan`ch polo(ek, adresa ⇩ cena pr*ce a v`sledn` sou'et pen%z. Nen) zde rozpo')t*n) na DHP, proto(e Olda nen) pl*tcem dan%, ale nen) celkem nic jednodu&&)ho, ne( tento v`po'et dod%lat. Dodac) list se automaticky vytiskne dvakr*t, jednou pro zalo(en), a pak je nab)dnuta mo(nost tisku skladov`ch karet tak[ pro zalo(en). To je vhodn[ prov[st na z*v%r pracovn)ho dne. proto(e se mus) tak[ zakl*dat.¢ P@ed psan)m nov[ho dodac)ho listu je pot@eba stisknout kl*vesu "N", po n)( se provede v`maz adresy a zru&) se p@i')t*n) d@)ve odepsan`ch polo(ek ze skladu. Vyma(e se ale tak[ ')slo faktury, proto(e je pou(it` glob*ln) p@)kaz CLEAR. Proto je nutn[ jej doplnit pak ru'n%, na&t%st) se nemus) pamatovat, proto(e je uvedeno na p@edchoz)m tisku. ╱samoz@ejm% se mus) p@i')st jedni'ka$¢ Funkce "Doplnit sklad" slou() samoz@ejm% pro p@ij)m*n) nov[ho materi*lu. M* jednu chybi'ku, (e se mus) od zvolen[ polo(ky projet v&ech deset karti'ek, i kdy( maj) z+stat pr*zdn[. V takov[m p@)pad% se prost% odklepaj) Returnem. ¢ Posledn) funkc) je "Nahr*v*n) na disk, tisk skladu". Slou() k ulo(en) stavu materi*lu na disketu po ukon'en) pr*ce. Ti, kte@) nemaj) z*lo(n) zdroj by ji m%li z@ejm% vyu()vat po ka(d[ zm%n%. D*le je zde k dispozici tisk stavu skladu pro zalo(en).¢¢ Mimo zdvojen[ ukl*d*n) stavu skladu na disketu nem* program (*dn[ zaji&t%n) proti chyb%. P@i vypisov*n) adresy se prost% nem* ud%lat chyba, nebo se mus) pak ps*t znova. P@i hav*rii programu zachrauje Olda svoje data d)ky orientaci v programu. Jednoduch` zp+sob je zru&it na @*dku 25 vol*n) na')t*n) skladu a pak spustit program znovu. V pam%ti z+stanou aktu*ln) data ve stavu p@ed p@eru&en)m.¢ V pou(it[m ovlada'i 'e&tiny vyta(en[m kdov) odkud chyb) n%kdy pot@ebn* poml'ka. Mo(n* nechyb), ale je d+kladn% ukryt* pod divokou kombinac) kl*ves.¢ Popis programu jsem napsal s*m podle konzultac) s autorem. Dokonce i jm[no jsem s*m vymyslel, ne&lo p@ece napsat manu*l k programu AUTORUN.BAS. Olda s*m jako za')naj)c) podnikatel nem* 'as na m[n% d+le(it[ v%ci. ╱Proto tak[ ji( nechod) k n*m do klubu$ Mo(n* jsem n%co napsal &patn% a n%co vynechal, ale stejn% nepo')t*m s t)m, (e by program v t[to podob% cht%l n%kdo pou()vat. Nic tomu v&ak nebr*n), proto(e jej Olda pustil jako PD.¢¢ P@ipom)nky k programu.¢¢ V+bec se mi nel)b) m)t 'eskou sadu v data @*dc)ch, z nich( se vyb)r* a ukl*d* n%kam jinam. Zab)r* tak odhadem v)ce ne( trojn*sobek m)sta. Jej) zaveden) bych @e&il p@)m`m 'ten)m samostatn[ho datov[ho souboru na ur'en[ m)sto do pam%ti. Data @*dky jsou prost% fuj.¢ Konverzi do kdu Kamenick`ch pro tisk*rnu by m%lo b`t mo(n[ tak[ zlep&it. Zkusil bych pou()t ')seln[ pole inicializovan[ asi tak[ ze zvl*&tn)ho souboru.¢ Radek by zkr*til z*pis formul*@+ do p@)kazu PRINT nahrazen)m @ady mezer znakem tabul*toru, ')m( by se u&et@ilo p*r bajt+.¢¢ -ZB-¢