home *** CD-ROM | disk | FTP | other *** search
/ Chip 1999 August / Chip_1999-08_cd.bin / tema / Ozogan / RUNTIME / APLIKACE.EXE / BANKOMAT / BANKOMAT.KL3 < prev    next >
Text File  |  1999-06-15  |  11KB  |  382 lines

  1. Program Bankomat;
  2.  
  3. Var
  4.   Obdobi,
  5.   Filtr1,
  6.   DefDir         :String;
  7.   zaloz          :Real;
  8.  
  9. Procedure NovyConfig;
  10. Begin
  11. End;
  12.  
  13. //***Prepocitani polozek status baru
  14.  
  15. Procedure Prepocitat;
  16. Var
  17.   recs,
  18.   r,z,z1,z2:LongInt;
  19. Begin
  20.   r:=DataTable1.Recno;
  21.   DataGrid1.Visible:=False;
  22.   DataTable1.GoTop;
  23.   Edit2.Text:=Trim(RealToStr(DataTable1.ReadNum("P1"),15,2));
  24.   z:=DataTable1.ReadNum("P1");
  25.   z1:=0;z2:=0;recs:=0;
  26.   While not DataTable1.Eof do  {dokud nenφ konec databßze}
  27.   begin
  28.     z:=z+DataTable1.ReadNum("P3");
  29.     if DataTable1.ReadNum("P3")<0 Then z1:=z1+Abs(DataTable1.ReadNum("P3"));
  30.     if DataTable1.ReadNum("P3")>0 Then z2:=z2+Abs(DataTable1.ReadNum("P3"));
  31.     DataTable1.Skip(1);
  32.     Inc(recs);
  33.   end;
  34.   StatusBar1.Panels.Text[0]:="Z∙statek: "+Trim(RealToStr(z,10,2));
  35.   StatusBar1.Panels.Text[1]:="Celkem vlo₧eno: "+Trim(RealToStr(z2,10,2));
  36.   StatusBar1.Panels.Text[2]:="Celkem vybrßno: "+Trim(RealToStr(z1,10,2));
  37.   DataTable1.Go(r);
  38.   DataGrid1.Visible:=True;
  39.   If recs=0 Then Begin
  40.     Button2.Enabled:=False;
  41.     Button3.Enabled:=False;
  42.   End
  43.   Else Begin
  44.     Button2.Enabled:=True;
  45.     Button3.Enabled:=True;
  46.   End;
  47. End;
  48.  
  49. //***Prepnuti interface
  50.  
  51. procedure Zmenzaloz;
  52. Var
  53.   i:Byte;
  54. begin
  55.   If zaloz=1 Then Begin
  56.     For i:= 0 To 11 Do Begin
  57.       TabControl1.Tabs[i]:=i+1;
  58.       zaloz:=2;
  59.     End;
  60.     Inter.Caption:="Interface 1";
  61.     TabControl1.TabWidth:=35;
  62.   End
  63.   Else Begin
  64.     For i:= 0 To 11 Do Begin
  65.       TabControl1.Tabs[i]:=Trim(Month(i+1));
  66.       zaloz:=2;
  67.     End;
  68.     TabControl1.TabWidth:=0;
  69.     Inter.Caption:="Interface 2";
  70.     zaloz:=1
  71.   End;
  72. End;
  73.  
  74. procedure TForm.FormCreate(Sender: TObject);
  75. var
  76.   aaa,
  77.   x1,y1,x2,y2,i :Integer;
  78.   x,z,z1,z2     :integer;
  79.   s             :string;
  80. begin
  81.   DefDir:=GetAdr(0);
  82.   Form.Visible:=False;
  83.   Application.HelpFile := DefDir+"\Help\Bank01.hlp";
  84.   DBFSelect(1);
  85.   If Not(DBFUse(DefDir+"\Data\SConfig.DBF")) Then Begin
  86.     s:=  'Nebyl nalezen configuraΦnφ soubor. Bez tohoto souboru'+CHR(13);
  87.     s:=s+'program nem∙₧e pracovat. P°ejete si vytvo°it nov²'+CHR(13);
  88.     s:=s+'konfiguraΦnφ soubor se zßkladnφm nastavenφm?';
  89.     If MessageDlg(s, mtError, [mbYes,mbNo], 0)=6 Then Begin
  90. //      NovyConfig;
  91.     End Else Begin
  92.       ShowMessage("Konec programu");
  93.       Form.Close;
  94.     End;
  95.   End;
  96.   x1    :=DbfReadNum("FLEFT");
  97.   y1    :=DbfReadNum("FTOP");
  98.   x2    :=DbfReadNum("FWIDTH");
  99.   y2    :=DbfReadNum("FHEIGHT");
  100.   i     :=DbfReadNum("MESIC");
  101.   zaloz :=Round(DbfReadNum("INTER"));
  102.   Obdobi:=RealToStr(DbfReadNum("OBDOBI"),4,0);
  103.   DbfUse("");
  104.   If (i>0) AND (i<13) Then i:=i Else i:=0;
  105.   TabControl1.TabIndex:=i;
  106.   If i<12 Then
  107.     Filtr1:="Year(P2)="+Obdobi+" .AND. Month(P2)="+RealToStr(i+1,2,0)
  108.   Else
  109.     Filtr1:="Year(P2)="+Obdobi;
  110.   DataTable1.TableName:=DefDir+"\Data\DataB.DBF";
  111.   DataTable1.IndexName:="dat";
  112.   DataTable1.Filter   :=Filtr1;
  113.   DataTable1.Active   :=True;
  114.   x:=DataTable1.EvalNum('Year(P2)');
  115.   s:=RealToStr(x,2,2);
  116.   Form.Left   :=x1; Form.Top   :=y1;
  117.   Form.Width  :=x2; Form.Height:=y2;
  118.   Form.Caption:="Bankomat - "+obdobi;
  119.   TabControl1.Width:=Form.Width-8;
  120.   DataGrid1.Left   :=4;
  121.   DataGrid1.Width  :=Form.Width-16;
  122.   Prepocitat;
  123.   If zaloz=2 Then Begin
  124.     For i:= 0 To 11 Do Begin
  125.       TabControl1.Tabs[i]:=i+1;
  126.       Inter.Caption:="Interface 2";
  127.     End;
  128.     TabControl1.TabWidth:=35;
  129.   End;
  130.   Form.ActiveControl:=DataGrid1;
  131.   Form.Visible      :=True;
  132. end;
  133.  
  134. //**P°epnutφ zßlo₧ky
  135.  
  136. procedure TForm.TabControl1Change(Sender: TObject);
  137. Var
  138.   x,z,z1,z2  :Integer;
  139.   s          :String;
  140. begin
  141.   x:=TabControl1.TabIndex+1;
  142.   DataTable1.Filter:="";
  143.   if x<>13 Then Begin
  144.     s:=RealToStr(x,2,0);
  145.     Filtr1:="Year(P2)="+Obdobi+".AND. Month(P2)="+s;
  146.     DataTable1.Filter:=Filtr1;
  147.     DataTable1.GoTop;
  148.   End;
  149.   If x=13 Then Begin
  150.     Filtr1:="Year(P2)="+Obdobi;
  151.     DataTable1.Filter:=Filtr1;
  152.   End;
  153.   Prepocitat;
  154.   Form.ActiveControl:=DataGrid1;
  155. end;
  156.  
  157. //***Vlozeni zustatku za minuly mesic
  158.  
  159. procedure TForm.Edit2KeyPress(Sender: TObject; var Key: Char);
  160. Var
  161. x:Byte;
  162. r:LongInt;
  163. begin
  164.   x:=Ord(Key);
  165.   If x=13 Then Begin
  166.     r:=DataTable1.RecNo;
  167.     DataTable1.GoTop;
  168.     DataTable1.WriteNum("P1",StrToReal(Edit2.Text));
  169.     DataTable1.Go(r);
  170.     Prepocitat;
  171.     Form.ActiveControl:=DataGrid1;
  172.   End;
  173. End;
  174.  
  175. //***Vlo₧enφ novΘho zßznamu
  176.  
  177. procedure TForm.Button1Click(Sender: TObject);
  178. Var
  179.   r:LongInt;
  180.   x:Real;
  181. begin
  182.   SysVarSet('titul'   ,"Vlo₧enφ novΘho zßznamu");
  183.   SysVarSet('fleft'   , Form.Left);
  184.   SysVarSet('ftop'    , Form.Top);
  185.   SysVarSet('fwidth'  , Form.Width);
  186.   SysVarSet('fheight' , Form.Height);
  187.   SysVarSet('op'      , 1);
  188.   SysVarSet('rest'    , 0);
  189.   SysVarSet('datu'    , 0);
  190.   SysVarSet('cena'    , 0);
  191.   SysVarSet('pozn'    , 0);
  192.   SysVarSet('oper'    , 1);
  193.   RunForm(DefDir+"\Program\code01.prg");
  194.   If SysVarGet("rest")=1 Then Begin
  195.     DataTable1.Filter:="";
  196.     DataTable1.AppendBlank;
  197.     r:=DataTable1.Recno;
  198.     x:=SysVarGet("oper")*Abs(SysVarGet("cena"));
  199.     DataTable1.WriteDat("P2",SysVarGet("datu"));
  200.     DataTable1.WriteNum("P3",x);
  201.     DataTable1.WriteStr("P4",SysVarGet("pozn"));
  202.     DataTable1.Filter:=Filtr1;
  203.     DataTable1.Go(r);
  204.     Prepocitat;
  205.   End;
  206.   SysVarClear;
  207.   Form.ActiveControl:=DataGrid1;
  208. end;
  209.  
  210. //***Vy°azenφ zßznamu
  211.  
  212. procedure TForm.Button2Click(Sender: TObject);
  213. Var
  214.   r:LongInt;
  215.   s:String;
  216. begin
  217.   s:=  'Prosφm, potvr∩te v>l c'tDe v>l c'tDeT=H.
  218.  :=stlg(OK mtErrmrOKf SysVarGet("rest Then Begin
  219. //  e1.AppendBlank;
  220.     r:=DaAppendBlankD\Bate  r:=DaAppendBlankPackTable1.Filter:=Filtr1;
  221.     DataTable1.Go(r);
  222.     Pr;
  223.   SysVarClear;
  224.   Form.ActiveControl:=DataOs:=vanels.Te;
  225.  
  226. //***Vlo₧enφ novΘho Os:=vZa/***lick(Sendetab1,r: TObject);
  227. V,x1ar
  228.   r:LongInt;
  229.   x:Real;
  230. begin
  231.   SOs:=vanels.Te;
  232.  
  233. //***Vlo₧enφ novΘho zßznamu");
  234.   SysVarSet('fleft'   , Form.Left);
  235.   SysVarSet('ftop'    , Form.Top);
  236.   SysVarSet('fwidth'  , Form.Width);
  237.   SysVarSet('fheight' , Form.Height);
  238.   S2sVarSet('op'      , 1);
  239.   SysVararSet('rest'    , 0);
  240.   S")>0 Then z2:=z
  241.     Dat"P4",Syxum("P1"),15,2));
  242.   z:=3lo₧enφ novΘho zßzn , 0);
  243.   SxsVarSet('cena'    , 0);
  244.   S("P1"),15,2));
  245.     Dat"P4",Syable1le:=Trut('pozn'    , 0), -1) AND (t('pozn'    , 0), ysVarSet('oper'    , 1);
  246.   RunForm(DefDir+"\Program\code01.prg");
  247.   If SysVarGet("resttab1 :String;
  248. begin
  249.   x:=TabConDataTable1.Recno;
  250.     x:=SysVarGet("oper")*Abs(SysVx1a13 Then Begin
  251.     r:=Daabltab11.Filter:="";
  252.   if xsVarGet("pozn"));
  253.   'zßkladnφ1.Filter:=Filtr1x
  254.     Data="InterfacarGet("cena"));
  255.     DataTable1.WriteDat("P2",SysVarGet("datu"));
  256.     DataTable1.WriteNum("P3",x);
  257.     DataTable1.WriteStr("P4",SysVabltab11.Filter:="";
  258.   if xsVarGet("pozn"));
  259.     DataTable1.1.Filter:=Filtr1x
  260.     Data="InterfactaTable1.Go(r);
  261.     Prepocitat;
  262.   End;
  263.   SysVarClear;
  264.   Form.ActiveControl:*Vy°azenφ zßznamu
  265.  
  266. p3ocedure TForm.Button2ClicLongInt;Os:=vZa/***licControl:*Vy°azenφ zßznam Form.ActDblocedure TForm.Button2ClicLongInt;Os:=vZa/***licControl:ue;
  267.  opupc'tn
  268. //***Vy°azenφ zßznamu
  269.  
  270. p4ocedure TForm.Button2ClicLongInt; opup'tn
  271. nkPopup(ysVarSet(+u
  272.  
  273. p4rSet(+4,ysVarSet+u
  274.  
  275. p4rSet-77)  End;
  276.   SysVarClear;
  277.   Form.ActiveControl:ue;
  278. Nsouboit ption://***Vy°azenφ zßznamNsouborocedure TForm.Button1Click(Sendes1,
  279.   DefDirx;
  280. Var
  281.   x          elp\Bank01.hlp";
  282.   DBFSelect(1);
  283.   If Not(DBFUse(DefDir+"\Data\SConfig.DB'tDe v>l c'Then Begin
  284.     s:=  'Nebyl nalezen'
  285.     If MessaOK mtEr(r);
  286.  (r);ovyConfig;
  287.    eadNum("INTER"));
  288.   Obdobi:=RealToStr(DbfReadNu;
  289.   x:Real;
  290. begin
  291.   SNsoubor s ptionφ"ReadNu;
  292.   x:Real;amu");
  293.   SysVarSet('fleftft'   , Form.Left);
  294.   SysVarSet('ftopop'    , Form.Top);
  295.   SysVarSet('fwidthth'  , Form.Width);
  296.   SysVarSet('fheightth'  , Form.WeadNum1
  297.   SeadNumheightth'  , Form.Wight);
  298.   SysVarSeSet('op'      , 1);
  299.   SysVarSeSet('oper'    , 1);
  300.   RunFCrm(D2.KFM"ReadNu;ram\code01.prg");
  301.   If SysVarGet("restNum(""));
  302.     ealToStaTable1.Wri\code01.prgeadNum1ir+sage("KoneeadNum("\code01.prgeadNum1irage("Kone Form.Height:=y2;
  303.   Form.Ca Filtr1:="Yea    :String;
  304. begin
  305.   x:=TabConSysVablx<Filter:="";
  306.   if xsV x<>13 Then Begin
  307.     s:=ReKone lToStr(x,2,0);
  308.     Filtr1:="Year(P2)="+Obdobi+".AND.ta="Interfacgin
  309.   x:=Ord(Key);
  310.   If Kone lToStr(x,2,0);
  311.     Filtr+".AND.ta="Interfacgi<>13 Then Begin
  312.     s:=ReKoarGet("pozn"));
  313.     DataTable1.1.F("OBDOBI"),4,0rfactaTable1.Go(r);      Form.Close;    Prepocitat;
  314.     Form.ActiveCoF("OBDOBI"),4Control:*Vy°azenφ zßznamT.Acitrocedure TForm.Button1Clic           Then Begini  x:   Pred Else BeginZ//***y n By set°φd∞nyI"),4Control:*Vy°azenφ zßznam Form.ActKeyUpe TForm.Edit2KeyPress(SendeWord;redift.EdediftlToSehange(Senderr Key: C
  315. Var
  316.   r:LongInt;
  317.    :String;
  318. begin
  319.   x:=TabClp";
  320.  Int;=39) And (x);
  321.   If (arGet("rest")=1 Then Begin
  322.     DataTabTablTable1.Wr<>13 Then Begin
  323.     s:=RealToStr(x,2,0);
  324.     Filtr1:="Year(P2)="+Obdobi+".AND. Month(P2)="+s;
  325.     DataTable1.Filter:=Filtr1;
  326.     hen i:=i Else i:=0;
  327.   Tx-aTable1.taTable1.Go(r);
  328.     Pr
  329.  Int;=37) And (x>1
  330.   If (arGet("rest")=1 Then Begin
  331.     DataTabDeblTable1.Wr<>13 Then Begin
  332.     s:=RealToStr(x,2,0);
  333.     Filtr1:="Year(P2)="+Obdobi+".AND. Month(P2)="+s;
  334.     DataTable1.Filter:=Filtr1;
  335.     hen i:=i Else i:=0;
  336.   Tx-aTable1.taTable1.Go(r);
  337.     Pr;
  338.   SysVarClear;
  339.   Form.ActiveControl:*Vy°azenφ zßznam :=utrocedure TForm.Button1Clic         novΘho zßznamu");
  340.   SysVarSet('fleft'   , Form.Left);
  341.   SysVarSet('ftop'    , Form.Top);
  342.   SysVarSet('fwidth'  , Form.Width);
  343.   SysVarSet('fheightt('oper'    , 1);
  344.   RunForm(D3fDir+"\PrControl:*Vy°azenφ zßznam     ocedure TForm.Button1ClicarGet("reterface
  345.  
  346. pControl:*Vy°azenφ zßznamßznaResizForm.TabControl1Changoz;
  347. Var
  348.   ysVarSet('<51le:=TruysVarSet(':=51l;Var
  349.   ysVarSet('f<10le:=TruysVarrm.Width10l;Varkomat - "+obdobi;
  350.   TabControl1.Widkomat - "+obrm.WidthysVarrm.Wid-8 :=x2;Grid1.Leftrm.WidthysVarrm.Wid-11 :=x2;Grid1.Leftdobi;
  351.   TabContro.Width u
  352.  
  353. prrSetthysVarrm.Wid-72idth u
  354.  
  355. p2rSetthysVarrm.Wid-72idth u
  356.  
  357. p3rSetthysVarrm.Wid-72idth u
  358.  
  359. p4rSetthysVarrm.Wid-72idth u
  360.  
  361. p5rSetthysVarrm.Wid-72idth u
  362.  
  363. p5rSet(
  364.   TabContro7Width teNum(Set(
  365.   TabContro15Width teNum(SetthysVarrm.Wid-72idth Labelm(Set(
  366.   TabContro244idth Labelm(SetthysVarrm.Wid-68
  367. pControl:*Vy°azenφ zßznamßznagramue TForm.Edit2KeyPress(SysVht: TgramuSysVhtClic          bfp\Bank01.hlp";Select(1);
  368.   If Not(DBFUse(DefDiriveCoF(""));
  369.      x1   
  370.   ysVarSet('fleftF(""));
  371.      y1   
  372.   ysVarSet('ftopF(""));
  373.      x2      ysVarSet('fwidthF(""));
  374.      y2    :,ysVarSet('fheightF(""));
  375.      i    
  376.   n i:=i Else i:=0;
  377.  heightF(""));
  378.      :=Rou
  379.   ace
  380. ReadNum("OBDOBI"),4,0efDir:=GetAdr(0);
  381.   FControl:*Vy°azenφ zßznamNapovedarocedure TForm.Button1Clic         m.Visible:=False:=i exk01.hlpControl:Con.
  382.