{ ZALUZIE.PAS Copyright (c) TrSek alias Zdeno Sekerak } { } { Program bol vytvorený pre vnutorné potreby firmy KOMA } { pre spravu objednávok žalúzií. } { } { Bližší popis jednotlivých funkcií: } { F2 - Zalúzia } { Slúži ako nosná časť celého tohto programu dajú sa v ňom } { zadávať informácie o objednávateľovi ako jeho } { MENO, ADRESA, PODLAŽIE. } { Kvôli neskorším rozpisom je možné vyplniť (ŠTVRŤ) } { program sa potom bude týmto riadiť. } { Ďalej informácie o tom kto bol dohadzovač (DEALER), kto } { odmeriaval žalúziu (MERAČ) a nakoniec mená až troch } { (MONTÁŽNIKOV). } { Je možné ďalej vyplniť DATUM OBJEDNAVKY, s tým, že } { program okamžite prepočíta kedy uplyie doba 14 dní na } { vykonanie montáže (LEHOTA). } { Ak je nám známa CENA žalúzie po je vyplnení okamžite } { vypočítava DOPLATOK. Po vyplnení ZALOHY je vypočítaný } { doplatok znova. } { Pri vyplňovaní mzdových nákladov máme približný mzdový } { charakter pre jednotlivých zainteresovaných. } { Žalúzie sa vypĺňajú intuitívne pričom ak nie je zadaná } { farba nie je možné vyplniť žalúziu ďalšiu. } { } { Číselníky pre STVRT, DEALER, MERAC, MONTAZNIK, FARBA sú } { aktivované okamžite po stlačení klávesy ENTER. Potom si stačí } { vybrať potrebné a znova stlačiť ENTER. } { Ak však má užívateľ čísla v krvi stačí napísať priamo číslo } { program si už neako poradí sám. } { } { F3 - DEALER, F5 - MERAC, F6 - MONTAZ, F4 - FARBA } { Okno pre doplnenie číselníka dealerov (meračov, } { montážnikov farieb). } { Pohyb šipkami, ESC - koniec práce, DEL - označ dealera na } { zmazanie. } { } { F4 - ULICA } { Okno pre doplnenie číselníka ulíc. Ostatné ako u } { DEALER. } { Ak však stlacíte ENTER na položke vpravo objaví sa vám okno } { MESTO, kde si vyberiete do akého mesta potrí ulica. Aj v } { meste je ešte možné vybrať KRAJ. ( Upozorňujem, že názvy sú } { pracovné. Znamená, že ich použitie môže byť iné). } { } { Datum:19.06.1995 http://www.trsek.com } {$M 32192,0,65360} program Evidencia_Zaluzii; uses crt,dos,kniznic,trsek,read_dbf,tlac; const vcisla=999; option='option'; shelp='help.dat'; dsubor='zaluzie.dat'; prin='LPT1'; nfax='fax'; k_por='.dat'; s_index='index'; { meno indexoveho suboru .sd } k_form='.frm'; max_kum=10; { pocet kumulovanych } dlz_kum=20; { dlzka stringu } farba_sir=5; text_obj=6; d_poc_fzal=9; dlz_mesto=30; d_doba_dod=21; d_typ_ffax=2; d_cen_dea=25; d_cen_mer=10; d_cen_mon=19; d_lav_kraj=6; { ********** Farby **************} d_pomest=LIGHTGRAY; d_fomest=WHITE; d_pnmest=LIGHTGRAY; d_fnmest=WHITE; d_pvmest=RED; d_fvmest=BLACK; d_pozalu=DARKGRAY; d_fozalu=CYAN; d_pnzalu=LIGHTGRAY; d_fnzalu=DARKGRAY; d_pvzalu=RED; d_fvzalu=WHITE; d_pvhelp=LIGHTGRAY; d_fvhelp=YELLOW; d_pnhelp=BLACK; d_fnhelp=WHITE; d_ptlac=BLACK; d_ftlac=WHITE; poc_pod=8; { Ohladom podmienok } podmienky:array[1..poc_pod] of string[2]= ('= ','=*','<>','< ','> ','<=','>=',' '); text_podmienky:array[1..poc_pod] of string= ('rovna sa ','vyskytuje sa','je rozne od ','je mensie ','je vacsie ', 'mensie rovne','vacsie rovne','zrus podmien'); text_uvod=' F1-Help F2-Zak zka F3-Číselníky F4-Mzdy F5-Zostavy F6-Option F7-Disk_op '; type cislo=0..vcisla; type tdealer = record { Ciselnik Dealerov } cis_deal:cislo; priezv:string[32]; del:boolean; end; type temp_deal = record { Ciselnik pre mzdy } cis_deal:cislo; priezv:string[32]; mzda:real; poc:integer; end; type tmiesto = record { Ciselnik miest } typ_miest:cislo; miesto:string[dlz_mesto]; cis_obl:cislo; oblast:string[dlz_mesto]; del:boolean; end; type tfarba = record { Ciselnik farieb } { typ_far:cislo;} typ_far:string[farba_sir]; del:boolean; end; type formul = record { Ciselnik zaluzii } x:byte; y:byte; pol:byte; rkluc:char; end; type kumul = record { pre kumulovane } meno:string[dlz_kum]; x:byte; y:byte; end; type tzaluz = record { zaluzie.dat } pred:longint; zani:longint; sirka:real; vyska:real; farba:string[farba_sir]; del:boolean; end; type fzaluz = record { zaluzie ako zlucene DBF+zaluzie.dat } meno_f:string[text_obj]; porad:cislo; sirka:real; vyska:real; farba:string[farba_sir]; end; var pomest,fomest,pnmest,fnmest,pvmest,fvmest,pozalu,fozalu,pnzalu,fnzalu, pvzalu,fvzalu,pvhelp,fvhelp,pnhelp,fnhelp,ptlac,ftlac,doba_dod:byte; dlzpap,sirpap,poc_fzal,typ_ffax,cen_dea,cen_mer,cen_mon,lav_kraj:byte; subor,poradie,s_zost,s_kumu:string; formular:array[1..max_viet] of formul; kumulaty:array[1..max_kum ] of kumul; podmien:array[1..max_viet] of byte; men,pre:string; po:integer; poc_kum:integer; { pocet kumulovanych premennych } fde:file of tdealer; miesto:tmiesto; strana:array[1..4,1..80,1..22] of byte; ffarba:tfarba; ffa:file of tfarba; ftext:text; meno_s:string; x,y,i:integer; fgx,fgy:integer; { globalne x,y pre fax } fzoz:^tzoz; prvy:pointer; do_go:real; ch:char; size,size2:longint; end_yn:boolean; { Koncit otazkou A/N } s:string; {$I dealer.pas } { farba.pas bola ale sme vyhodili ??? } {$I miesto.pas } {$I pr_zal.pas } {$I formul.pas } {$I filter.pas } {$I zaluz.pas } {$I help.pas } {$I fax.pas } {$I option.pas } {$I zostavy.pas } {$I mzdy.pas } {$I redef.pas } {$I archiv.pas } procedure m_ciselniky; const text_ciselnik=' ESC-Sp"? F2-Dealery F3-Mera>i F4-Mont,ri '; vypl=' Číselníky 12345 '; begin okno(2,2,80,24,text_ciselnik,' Software by TRSEK ',BLUE); vypln(vypl); repeat z_sound:=true; ch:=readkey; if ch=#0 then begin ch:=readkey; case ch of #59:help(0); #60:po:=ddealer('Dealeri ','dealer',men,pre,false,0,0); #61:po:=ddealer('Mera>i ','merac',men,pre,false,0,0); #62:po:=ddealer('Mont žnici','montaz',men,pre,false,0,0); end; textbackground(BLUE); textcolor(YELLOW); owindow(1,1,80,25); okno(2,2,80,24,text_ciselnik,' Software by TRSEK ',BLUE); vypln(vypl); end; until (ch=#27); end; procedure m_mzdy; const text_mzdy=' ESC-Sp"? F2/F5-Dealery F3/F6-Mera>i F4/F7-Mont,ri F8-Všetci '; vypl=' --- Mzdy sk+ '; begin okno(2,2,80,24,text_mzdy,' Software by TRSEK ',BLUE); vypln(vypl); repeat z_sound:=true; ch:=readkey; if ch=#0 then begin ch:=readkey; case ch of #59:help(0); #60:mzdy('dealer',0); #61:mzdy('merac',0); #62:mzdy('montaz',0); #63:mzdy('dealer',1); #64:mzdy('merac',1); #65:mzdy('montaz',1); #66:begin mzdy('montaz',2); prikaz('copy mzdy.$$$ mzdy\mzdy.tx1 >nul'); mzdy('merac' ,2); prikaz('copy mzdy.$$$ + mzdy\mzdy.tx1 mzdy\mzdy.tx2 >nul'); mzdy('dealer',2); prikaz('copy mzdy.$$$ + mzdy\mzdy.tx2 mzdy\mzdy.txt >nul'); prikaz('del mzdy.$$$ >nul'); prikaz('del mzdy\mzdy.tx1 >nul'); prikaz('del mzdy\mzdy.tx2 >nul'); view_text('mzdy\mzdy.txt',lav_kraj,ftlac,ptlac,prin); end; end; textbackground(BLUE); textcolor(YELLOW); owindow(1,1,80,25); okno(2,2,80,24,text_mzdy,' Software by TRSEK ',BLUE); vypln(vypl); end; until (ch=#27); end; procedure m_zostavy; const text_zostavy=' ESC-Sp"? F2-Kumul_zostavy F3-Zostavy F4-FAX '; vypl=' Zostavy -| '; begin okno(2,2,80,24,text_zostavy,' Software by TRSEK ',BLUE); vypln(vypl); repeat z_sound:=true; ch:=readkey; if ch=#0 then begin ch:=readkey; case ch of #59:help(0); #60:zostava(s_kumu,'Finan>n, zostavy.'); #61:zostava(s_zost,'Pl n mont ží.'); #62:s:=fax(0,typ_ffax); end; textbackground(BLUE); textcolor(YELLOW); owindow(1,1,80,25); okno(2,2,80,24,text_zostavy,' Software by TRSEK ',BLUE); vypln(vypl); end; until (ch=#27); end; procedure sys_op; const text_ciselnik=' ESC-Sp"? F2-Archiv F3-Vrat archiv F4-Redefinicia '; vypl=' Diskove operacie'; begin okno(2,2,80,24,text_ciselnik,' Software by TRSEK ',BLUE); vypln(vypl); repeat z_sound:=true; ch:=readkey; if ch=#0 then begin ch:=readkey; case ch of #59:help(0); #60:archiv(1); #61:archiv(2); #62:redef; end; textbackground(BLUE); textcolor(YELLOW); owindow(1,1,80,25); okno(2,2,80,24,text_ciselnik,' Software by TRSEK ',BLUE); vypln(vypl); end; until (ch=#27); end; begin farba(BLACK,-1); clrscr; farba(BLUE,YELLOW); okno(1,1,80,24,text_uvod,' Software by TRSEK ',BLUE); vypln(' Žalúzie evidencia '); options(9); prikaz('type zaluzie.dat > nul'); prikaz('type '+subor+'.dbf >nul'); if s_exist(subor+k_index,0) then prikaz('del '+subor+k_index); if s_exist('filter'+k_index,0) then prikaz('del filter'+k_index); repeat z_sound:=true; ch:=readkey; if ch=#0 then begin ch:=readkey; case ch of #59:help(0); #60:zakazka; #61:m_ciselniky; #62:m_mzdy; #63:m_zostavy; #64:options(1); #65:sys_op; end; textbackground(BLUE); textcolor(YELLOW); owindow(1,1,80,25); okno(1,1,80,24,text_uvod,' Software by TRSEK ',BLUE); vypln(' Žalúzie evidencia '); ch:=#10; end; if end_yn and (ch=#27) then begin hlaska('Skonci? program A/..',-1); if readkey in ['a','A'] then ch:=#27 else ch:=' '; hlaska('',-2); end; until (ch=#27); owindow(1,1,80,25); koniec(' Žalúzie 4.1','1995'); end.