Читайте также:
|
|
Во время запуска программы произойдёт вызов первой формы.
Далее возможен переход в другие формы приложения, которое поддерживает навигацию по всем пунктам меню. Имеется возможность удалять, добавлять и редактировать записи в таблицах.
Для реализации операции добавления данных в документ MS Word были назначены стандартные закладки:
WORD.free;
WORD:=TWordApplication.Create(First_form);
WORD.connectkind:=ckNewInstance;
docname:='results\'+FAMILY.text+' '+F_NAME.Text+'.doc';
deletefile(docname);
copyfile(pchar(getcurrentdir+'\forms\T2.doc'),pchar(docname),errorcode);
file_name:=getcurrentdir+'\'+docname;
WORD.Documents.Open(file_name,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
bookmark_out ('Org_name',curent_org.orgname);
Для добавления данных на место закладок использовался следующий код:
if Sl_table.RecordCount<>0 then Sl_table.FindFirst;
move_to:='sl';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to Sl_table.RecordCount do
begin
Word.Selection.Text:=Sl_table.FieldByName('Наименование льгот').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Вывод всех остальных данных в документ производится также при помощи данных функций, изменяется лишь сама языковая структура.
Добавление, удаление и изменение данных будет проводиться при помощи компонента DBNavigator.
Так же при помощи стандартных SQL-запросов будет происходить отбор данных по необходимым критериям, пример запроса на выборку данных:
SELECT Pers.*
FROM Pers
WHERE ([Имя] like(First_name))
AND ([Фамилия] like(Family_name))
AND ([Должность] like(Dolg))
Для контроля дат используется следующий программный код:
procedure TForm1.FormActivate(Sender: TObject);
var
i:integer;
begin
ADOTable1.First;
if (DBGrid1.DataSource.DataSet.Fields[1].AsString<>'') then
Begin
for i:=1 to ADOTable1.RecordCount do
begin
dayz:=DBGrid1.DataSource.DataSet.Fields[1].AsString;
srok:=StrToDate(dayz)- Date;
If (srok>0)then
begin
ADOTable1.Edit;
ADOTable1.FieldByName('srokOD').Value:=FloatToStr(srok);
ADOTable1.Post;
end;
end;
end;
begin
ADOTable2.First;
if (DBGrid2.DataSource.DataSet.Fields[1].AsString<>'') then
Begin
for i:=1 to ADOTable2.RecordCount do
begin
dayzf:=DBGrid2.DataSource.DataSet.Fields[1].AsString;
srokf:=StrToDate(dayzf)- Date;
If (srokf>0)then
begin
ADOTable2.Edit;
ADOTable2.FieldByName('srokOF').Value:=FloatToStr(srokf);
ADOTable2.Post;
end;
end.
Дата добавления: 2015-10-13; просмотров: 70 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Обоснование инструментов разработки | | | Логическая структура |