
Опытный
 
Профиль
Группа: Участник
Сообщений: 556
Регистрация: 10.11.2006
Репутация: нет Всего: нет
|
Вот короч! | Код | unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, Grids,winsock,shellapi, Unit4, Unit3, StdCtrls, ExtCtrls, ComCtrls;
type a1=record zapis:String[20]; data:TDate; Data_oplati:TDate; Data_prihoda:TDate; Nomer:string[20]; Naimenovanie:string[20]; Inn_posyavshika:string[20]; Kol_Vo_pokupok:Integer; stoimost:Real; Grid:integer; end; b1=RECORD Svet:TColor; end; TForm1 = class(TForm) MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; N3: TMenuItem; N4: TMenuItem; N5: TMenuItem; N6: TMenuItem; StringGrid1: TStringGrid; N13: TMenuItem; N14: TMenuItem; PopupMenu1: TPopupMenu; N17: TMenuItem; N18: TMenuItem; N7: TMenuItem; N9: TMenuItem; PopupMenu2: TPopupMenu; N23: TMenuItem; N24: TMenuItem; N25: TMenuItem; N29: TMenuItem; N30: TMenuItem; N31: TMenuItem; N32: TMenuItem; N33: TMenuItem; N34: TMenuItem; N35: TMenuItem; N36: TMenuItem; N8: TMenuItem; N10: TMenuItem; N12: TMenuItem; N15: TMenuItem; FontDialog1: TFontDialog; N16: TMenuItem; N20: TMenuItem; N11: TMenuItem; ColorDialog1: TColorDialog; N19: TMenuItem; N21: TMenuItem; N22: TMenuItem; GroupBox1: TGroupBox; GroupBox2: TGroupBox; Memo1: TMemo; Label1: TLabel; Label2: TLabel; Label3: TLabel; ProgressBar1: TProgressBar; Timer1: TTimer; N26: TMenuItem; procedure FormCreate(Sender: TObject); procedure N6Click(Sender: TObject); procedure N4Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure N3Click(Sender: TObject); procedure N10Click(Sender: TObject); procedure N14Click(Sender: TObject); procedure N17Click(Sender: TObject); procedure N18Click(Sender: TObject); Procedure Ic(n:Integer;Icon:TIcon); procedure N9Click(Sender: TObject); procedure N7Click(Sender: TObject); procedure N23Click(Sender: TObject); procedure N24Click(Sender: TObject); procedure N25Click(Sender: TObject); procedure N30Click(Sender: TObject); procedure N31Click(Sender: TObject); procedure N32Click(Sender: TObject); procedure N33Click(Sender: TObject); procedure N34Click(Sender: TObject); procedure N35Click(Sender: TObject); procedure N36Click(Sender: TObject); procedure N11Click(Sender: TObject); procedure N20Click(Sender: TObject); procedure N21Click(Sender: TObject); procedure N19Click(Sender: TObject); procedure N22Click(Sender: TObject); procedure N26Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); private BaseChange:boolean; procedure SaveToFile; procedure LoadFromFile; procedure SortABC(col:integer); //Сортировка по алфавиту; col номер столбца procedure DataSort(col: integer); procedure Find(s:string;col:integer); public { Public declarations } protected procedure IconMouse(var Msg: TMessage); message WM_USER + 1; procedure ControlWindow(var Msg: TMessage); message WM_SYSCOMMAND; end;
var a:a1; b:b1; fa:file of a1; fb:file of b1; kol,s,k1,t,i:integer; Kol_Vo:String; x,Bez,Nds:Real; Form1: TForm1;
implementation
uses Unit2, Unit5, Unit6, DateUtils;
{$R *.dfm} {Загруска в таблицу первичных данных} procedure TForm1.FormCreate(Sender: TObject); begin Stringgrid1.cells[0,0]:='№ Записи'; Stringgrid1.cells[1,0]:='Дата'; Stringgrid1.cells[2,0]:='Дата оплаты'; Stringgrid1.cells[3,0]:='Дата приход.товара'; Stringgrid1.cells[4,0]:='Номер'; Stringgrid1.cells[5,0]:='Наименование поставщика '; Stringgrid1.cells[6,0]:='ИНН поставщика'; Stringgrid1.cells[7,0]:='стоимость'; Stringgrid1.cells[8,0]:='Кол-во покупок'; ///Загруска нумерации таблицы AssignFile(fa,'grid.dat'); Reset(fa); i:=0; while not(EOF(fa)) do begin inc(i); read(fa,a); StringGrid1.RowCount:=i+1; with StringGrid1 do begin Cells[0,i]:=a.zapis; end; end; kol:=StrToInt(a.zapis); CloseFile(fa); BaseChange:=false; //Загруска цвета таблицы AssignFile(fb,'color.tab'); reset(fb); read(fb,b); StringGrid1.Color:=b.Svet; CloseFile(fb); end;
{Переход к другой форме} procedure TForm1.N6Click(Sender: TObject); begin form2.Visible:=true; end;
{Закрытие програмы} procedure TForm1.N4Click(Sender: TObject); begin if MessageBox(form1.Handle,'Вы уверены что хотите выйти?', 'Внимание!',MB_ICONQUESTION+MB_YESNO)=IDYES then form1.close; end;
{Процедура сохранения} procedure TForm1.SaveToFile; var Fa:File of a1; i:integer; begin AssignFile(fa,'grid.dat'); ReWrite(fa); for i:=1 to StringGrid1.RowCount-1 do begin with StringGrid1 do begin a.zapis:=Cells[0,i]; a.data:=StrToDate(Cells[1,i]); a.Data_oplati:=StrToDate(Cells[2,i]); a.Data_Prihoda:=StrToDate(Cells[3,i]); a.Nomer:=Cells[4,i]; a.Naimenovanie:=Cells[5,i]; a.Inn_posyavshika:=Cells[6,i]; a.stoimost:=StrToFloat(cells[7,i]); a.Kol_vo_pokupok:=StrToInt(cells[8,i]); a.grid:=strtoint(a.zapis); end; write(fa,a); end; CloseFile(fa); BaseChange:=false; end;
{Процедура загруски} procedure TForm1.LoadFromFile; var Fa:File of a1; a:a1; i:integer; begin AssignFile(fa,'grid.dat'); Reset(fa); i:=0; while not(EOF(fa)) do begin inc(i); read(fa,a); StringGrid1.RowCount:=i+1; with StringGrid1 do begin Cells[0,i]:=a.zapis; Cells[1,i]:=DateToStr(a.data); Cells[2,i]:=DateToStr(a.Data_oplati); Cells[3,i]:=DateToStr(a.data_Prihoda); cells[4,i]:=a.nomer; Cells[5,i]:=a.Naimenovanie; Cells[6,i]:=a.Inn_posyavshika; cells[7,i]:=FloatToStr(a.stoimost); Cells[8,i]:=IntToStr(a.Kol_Vo_pokupok); end; end; CloseFile(fa); BaseChange:=false; end;
{Открытие файла} procedure TForm1.N2Click(Sender: TObject); begin StringGrid1.Visible:=true; if (StringGrid1.Cells[0,1]<>'')and BaseChange then if MessageBox(form1.Handle,'Сохранить текущую базу?', 'Внимание!',MB_ICONQUESTION+MB_YESNO)=IDYES then SaveToFile; LoadFromFile; Memo1.Lines.Add('>>> Файл загружен с жесткого диска <<<') end; {Сохранения файла} procedure TForm1.N3Click(Sender: TObject); begin if MessageBox(form1.Handle,'Сохранить текущую базу?', 'Внимание!',MB_ICONQUESTION+MB_YESNO)=IDYES then SaveToFile; Memo1.Lines.Add('>>> Файл сохранен на жестком диске <<<') end;
|
добвление записи: | Код | unit Unit2;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls, ComCtrls, Menus;
type b1=record post:String[20]; end; TForm2 = class(TForm) ComboBox1: TComboBox; LabeledEdit1: TLabeledEdit; LabeledEdit2: TLabeledEdit; LabeledEdit3: TLabeledEdit; BitBtn1: TBitBtn; CheckBox1: TCheckBox; LabeledEdit4: TLabeledEdit; PopupMenu1: TPopupMenu; DateTimePicker1: TDateTimePicker; DateTimePicker2: TDateTimePicker; DateTimePicker3: TDateTimePicker; Label1: TLabel; Label2: TLabel; Label3: TLabel; procedure BitBtn1Click(Sender: TObject); procedure CheckBox1Click(Sender: TObject); procedure ComboBox1Change(Sender: TObject); procedure FormCreate(Sender: TObject); private public { Public declarations } end; var b:b1; fb:file of b1; data,Data_oplati,Data_prihoda:TDate; Nomer,Naimenovanie,Inn_posyavshika:string[20]; Kol_Vo_pokupok:Integer; stoimost:Integer; firma,Firma_Name:ShortString; i,k:integer; Form2: TForm2;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm2.BitBtn1Click(Sender: TObject); begin i:=i+1; Kol:=kol+1; Naimenovanie:=ComboBox1.Text; Data:=DateTimePicker1.date; Data_oplati:=DateTimePicker2.date; Data_Prihoda:=DateTimePicker3.date; Nomer:=LabeledEdit1.text; Inn_posyavshika:=LabeledEdit2.Text; stoimost:=StrToInt(LabeledEdit3.text); Kol_Vo_Pokupok:=StrToInt(LabeledEdit4.text); {-----------------------------------------------------------} form1.stringgrid1.cells[0,i]:=IntToStr(Kol); form1.stringgrid1.cells[1,i]:=DateToStr(data); form1.stringgrid1.cells[2,i]:=DateToStr(data_Oplati); form1.stringgrid1.cells[3,i]:=DateToStr(data_Prihoda); form1.stringgrid1.cells[4,i]:=Nomer; form1.stringgrid1.cells[5,i]:=Naimenovanie; form1.stringgrid1.cells[6,i]:=Inn_posyavshika; form1.stringgrid1.cells[7,I]:=FloatToStr(stoimost); form1.stringgrid1.cells[8,I]:=IntToStr(Kol_Vo_pokupok); form1.StringGrid1.RowCount:=Kol+1; {----------------------------------------------------------} form2.Visible:=false; LabeledEdit1.Clear; LabeledEdit2.Clear; LabeledEdit3.Clear; LabeledEdit4.Clear end;
|
Проблема описана выше!
|