Нажав на кнопку «Изменение» на самой основной форме, открывается форма, где выбирается из раскрывающегося списка абонент, по которому нужно выполнить изменения:
Нажать «Изменить».
Программа:
procedure Ttared.Button1Click(Sender: TObject);
var i, n, j: integer;
//// ИЗМЕНЕНИЕ В ТАРИФАХ
begin
//dd.Query2.RecNo:=dd.Table2.RecNo;
dd.DataSource2.DataSet:=dd.Table2;
dd.Table2.Edit;
dd.Table2.Fields[0].AsFloat:=strtofloat(kod.Text); //strtofloat(label4.Caption);
dd.Table2.Fields[1].Text:=gorod.Text; //label5.Caption;
//dd.Table2.Fields[2].AsCurrency:=strtofloat(dbedit3.Text)*1;
dd.Table2.Post;
//// ИЗМЕНЕНИЕ В ПЕРЕГОВОРАХ
begin
label4.Caption:=kod.Text;
label5.Caption:=gorod.Text;
for i:=1 to dd.Table3.RecordCount do
begin
dd.Table3.Edit;
//dd.Table3.RecNo:=i;
dd.Table3.Fields[6].AsFloat:=strtofloat(label4.Caption);
dd.Table3.Fields[1].Text:=label5.Caption;
dd.Table3.Post;
//dd.Table3.Filter:='pertel='+dbedit1.Text;
//dd.Table3.Filtered:=true;
dd.Table3.Next;
end;
end;
dd.Table3.First;
end.
Удаление записи из таблицы
Нажав на кнопку «Удаление» на самой основной форме, открывается форма, где выбирается из раскрывающегося списка абонент, который нужно удалить:
Нажать «Удалить».
Программа:
procedure Ttardel.Button1Click(Sender: TObject);
var i: integer;
begin
if messagedlg('Удалить город: '+dd.Table2.Fields[1].Text, mtinformation,[mbYes,mbNo],0)=mrYes
then
begin
dd.Table2.Delete;
//dd.Table1.Post;
dd.Query2.Close;
dd.DataSource2.DataSet:=dd.Query2;
dd.Query2.Open;
for i:=1 to dd.Table3.RecordCount do
begin
dd.Table3.RecNo:=i;
dd.Table3.Delete;
end;
dd.Query3.Close;
dd.DataSource3.DataSet:=dd.Query3;
dd.Query3.Open;
// dd.Table3.Post;
end
else exit;
end;
Поиск данных
Нажав на кнопку «Поиск» на самой основной форме, открывается форма, где выбирается сама таблица, по которой нужно выполнить поиск и из раскрывающегося списка выбирается те значения, которые нужно найти. Для таблицы «Изделие» поиск выполняется следующим образом:
Нажать «Поиск».
Программа:
procedure Ttarfind.Button1Click(Sender: TObject);
var s, s1: string;
begin
if pole.ItemIndex=0 then
begin
dd.DataSource2.DataSet:=dd.Query2;
s:='tarkod='+ search.Text;
dd.Query2.Filter:=s;
dd.Query2.Filtered:=true;
if dd.Query2.RecordCount=0 then
showmessage('Поиск закончен. Запись НЕ НАЙДЕНА');
end;
if pole.ItemIndex=1 then
begin
dd.DataSource2.DataSet:=dd.Query2;
dd.Query2.close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM tarif');
s1:='WHERE targor'+' LIKE "'+search.Text+'%"';
dd.Query2.SQL.Add(s1);
dd.Query2.Open;
if dd.Query2.RecordCount>=1 then
label6.Caption:='Результаты поиска: Найдены :'+floattostr(dd.Query2.RecordCount)+' зап.';
if dd.Query2.RecordCount=0 then
begin
showmessage('Поиск закончен. Запись НЕ НАЙДЕНА');
search.SetFocus;
end;
end;
if dd.Query2.RecordCount>1 then
begin
label1.Visible:=true;
label2.Visible:=true;
label3.Visible:=true;
label6.Visible:=true;
dbtext1.Visible:=true;
dbtext2.Visible:=true;
dbtext3.Visible:=true;
abfind.height:=264;
button2.Enabled:=true;
end;
end;
Сортировка данных
Сортировка выполняется на первой вкладке формы «MTTS». Можно выполнить сортировку по возрастанию и по убыванию. Нужно выбрать то поле, по которому нужно выполнить сортировку.
Программа для выполнения сортировки по возрастанию:
procedure Ttarsor.SpeedButton1Click(Sender: TObject);
begin
//Сортировка по КОДУ
if (pole.ItemIndex=0) and (pole.ItemIndex=0) then
begin
dd.Query2.Close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM TARIF ORDER BY tarkod');
dd.Query2.Open;
end;
if (pole.ItemIndex=0) and (pole.ItemIndex=1) then
begin
dd.Query2.Close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM TARIF ORDER BY tarkod DESC');
dd.Query2.Open;
end;
//Сортировка по ГОРОДУ
if (pole.ItemIndex=1) and (pole.ItemIndex=0)then
begin
dd.Query2.Close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM TARIF ORDER BY targor');
dd.Query2.Open;
end;
if (pole.ItemIndex=1) and (pole.ItemIndex=1)then
begin
dd.Query2.Close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM TARIF ORDER BY targor DESC');
dd.Query2.Open;
end;
//Сортировка по ЦЕНЕ
if (pole.ItemIndex=2) and (pole.ItemIndex=0)then
begin
dd.Query2.Close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM TARIF ORDER BY tarprice');
dd.Query2.Open;
end;
if (pole.ItemIndex=2) and (pole.ItemIndex=1)then
begin
dd.Query2.Close;
dd.Query2.SQL.Clear;
dd.Query2.SQL.Add('SELECT * FROM TARIF ORDER BY tarprice DESC');
dd.Query2.Open;
end;
end;
Аналогично и для других полей таблицы.
Фильтрация данных
Фильтрация выполняется на первой вкладке формы «MTTS». Нужно выбрать то условие, по которому нужно выполнить фильтрацию, можно вернуть все обратно.
Программа:
procedure Ttarfilter.SpeedButton1Click(Sender: TObject);
begin
if (pole.Text='') or (ysl.Text='') or (text.Text='') then
begin
showmessage('Выполнены не все условия для фильтрации');
end else
begin
if pole.ItemIndex=0 then
begin
dd.Query2.Filtered:=false;
dd.Query2.Filter:='TARkod'+ysl.Text+text.Text;
dd.Query2.Filtered:=true;
if dd.Query2.RecordCount=0 then
begin
showmessage('Не найдено ни одной записи'+#13+'Нет смысла фильтровать');
dd.Query2.Filtered:=false;
end;
end;
if pole.ItemIndex=1 then
begin
dd.Query2.Filtered:=false;
dd.Query2.Filter:='TARgor'+ysl.Text+''''+ text.Text+'''';
dd.Query2.Filtered:=true;
if dd.Query2.RecordCount=0 then
begin
showmessage('Не найдено ни одной записи'+#13+'Нет смысла фильтровать');
dd.Query2.Filtered:=false;
end;
end;
if pole.ItemIndex=2 then
begin
dd.Query2.Filtered:=false;
dd.Query2.Filter:='TARprice'+ysl.Text+''''+text.Text+'''';
dd.Query2.Filtered:=true;
if dd.Query2.RecordCount=0 then
begin
showmessage('Не найдено ни одной записи'+#13+'Нет смысла фильтровать');
dd.Query2.Filtered:=false;
end;
end;
sp.Panels[0].Text:='Результат фильтрации: '+floattostr(dd.Query2.RecordCount)+' зап.';
end;
end;
2.8. Создание отчета
По данной таблице создан отчет «Список абонентов». Для создания отчета нужно выбрать вкладку Rave компоненты RVProject, RTF и RVDataSetConection. На компоненте RVDataSetConection свойство DataSet нужно выбрать ту таблицу, которая должна быть представлена в виде отчета. После этого: Tools – Rave Designer – File – NewDataObject – DirectDataNiew – Finish. Tools – Report Wieardz – Simple Table – Next – All – Next – Geniered. Нужно изменить шрифт, форматировать отчет, сохранить. RVProject – Project File – название отчета.
В меню «Сервис» можно просмотреть отчет.
Программа для запуска отчета:
procedure Tdd.N32Click(Sender: TObject);
begin
dd.RvProject1.Execute;
end;
2.9. Изменение цвета формы и изменение шрифта
В меню «Формат» можно изменить цвет формы и изменить шрифт.
Программа для выполнения изменений цвета формы:
procedure Tdd.N55Click(Sender: TObject);
begin
capt.ShowModal;
end;
Программа для выполнения изменений шрифта:
procedure Tdd.N54Click(Sender: TObject);
begin
if dd.FontDialog1.Execute then
begin
main.DBGrid1.Font:=dd.FontDialog1.Font;
main.DBGrid2.Font:=dd.FontDialog1.Font;
main.DBGrid3.Font:=dd.FontDialog1.Font;
end;
end;
Программа для изменения размера таблиц:
procedure Tdd.N57Click(Sender: TObject);
begin
size.showmodal;
end;
Регистрация разговоров
На форме «MTTS страница «Абоненты» можно произвести регистрацию разговоров.
Программа для регистрации:
procedure Tdd.N12Click(Sender: TObject);
begin
pereg.ShowModal;
end;
При нажатии на кнопку регистрация появляется следующая форма:
Дата: 2019-12-22, просмотров: 223.