Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Програмний інтерфейс

Реферат Програмний інтерфейс





: TDataSet; ntable, fld_name, fld_value: string);

//Підготовка НД перед редагуванням (скидання прапора tag в 0)

procedure ClearUpdate (DS: TDataSet); i: word; i:=0 to ds.FieldCount - 1 dods.fields [i] .readOnly=false then.Fields [i] .tag:= 0 //(DataSet.Fields[i].tag AND $ FFFE);

//Установка прапора tag в 1

procedure SetUpdate (sender: Tfield);

sender.tag:=1;//(Sender.tag OR $ 1)

end;

//Підготовка оператора SQL на зміну даних

procedure CreateUpdateSql (DS: TDataSet; qSQL: TQuery; ntable: string);

//Параметри

//DS - редагований набір даних (звідси беруться назви і значення полів)

//qSQL - набір даних для формування SQL

//ntable - змінна таблиця БДi: word ;: boolean ;: string ;: char ;: integer;:=0; DS.state=dsInsert then

//формування оператора INSERT

with qSQL do begin

close; .clear;:=NIL; .ADD ( INSERT INTO + ntable + ();:=false;

//Цикл заповнення імен додаються полів

for i:=0 to DS.FieldCount - 1 do ((DS.Fields [i] .tag AND 1)=1) AND (DS.Fields [i] .ReadOnly=false) then beginf then:=laquo;,raquo;begin:=laquo;raquo;;:=true;.ADD(s+DS.Fields[i].FieldName);:=count+1;;.ADD(laquo;) VALUES ();:=DecimalSeparator;:=. Raquo ;;


//Цикл заповнення значень для додаються полів


f:=false; i:=0 to DS.FieldCount - 1 do ((DS.Fields [i] .tag AND 1)=1) AND (DS.Fields [i] .ReadOnly =false) then beginf then:=, begin:= raquo ;;:=true; DS.Fields [i] .IsNull then.ADD (s + null ) begin

//залежно від типу поляDS.Fields [i] is TnumericField then.ADD (s + DS.Fields [i] .AsString) if (DS.Fields [i] is TStringField) then beginDS.Fields [i] .AsString= then.ADD(s+laquo;nullraquo;).ADD(s+laquo;raquo;laquo;raquo;+DS.Fields[i].AsString+laquo;raquo;laquo;raquo;)if DS.Fields [i] .DataType in [ftDate] then.ADD(s+laquo;raquo;laquo;raquo;+FormatDateTime(laquo;yyyy-mm-ddraquo;,DS.Fields[i].AsDateTime)+laquo;raquo;laquo;raquo;).ADD(s+laquo;raquo;laquo;raquo;+DS.Fields[i].AsString+laquo;raquo;laquo;raquo;);;.ADD(laquo;)raquo;);:=c;

//формування оператора UPDATEqSQL do begin.clear;:=NIL; .ADD ( UPDATE + ntable + SET );:=DecimalSeparator;:=. ;

//формування рядків ПОЛЕ=Значення

//для всіх змінюваних полів

f:=false; i:=0 to DS.FieldCount - 1 do ((DS.Fields [i] .tag AND 1)=1) AND (DS.Fields [i] .ReadOnly =false) then beginf then:=, begin:= raquo ;;:=true;:=count + 1; DS.Fields [i] .IsNull then.ADD (s + DS.Fields [i ] .FieldName + =NULL ) DS.Fields [i] is TnumericField then.ADD (s + DS.Fields [i] .FieldName + = + DS.Fields [i] .AsString) if ( DS.Fields [i] is TStringField) then beginDS.Fields [i] .AsString= then.ADD(s+DS.Fields[i].FieldName+laquo;=NULLraquo;).ADD(s+DS.Fields[i].FieldName+laquo;=raquo;laquo;raquo;+DS.Fields[i].AsString+laquo;raquo;laquo;raquo;)if DS.Fields [i] .DataType in [ftDate] then.ADD(s+DS.Fields[i].FieldName+laquo;=raquo;laquo;raquo;+FormatDateTime(laquo;yyyy-mm-ddraquo;,DS.Fields[i].AsDateTime)+laquo;raquo;laquo;raquo;).ADD(s+DS.Fields[i].FieldName+laquo;=raquo;laquo;raquo;+DS.Fields[i].AsString+laquo;raquo;laquo;raquo;);;:=c;;count=0 then qSQL.SQL.clear ;;

//Підготовка та виконання оператора SQL на видалення даних

function CreateDeleteSql (ntable: string; fld_name, fld_value: string): Boolean; q: TQuery ;: Boolean;:=false; MessageDlg ( Видалити запис? ,, [mbYes, mbNo ], 0)=mrYes then begin:=TQuery.Create (Application); q do begin.DatabaseName:= DB raquo ;;

//close;

//sql.clear;

//dataSource:=NIL; .ADD ( DELETE FROM + ntable) ;. ADD ( WHERE raquo;+fld_name+laquo;=raquo;laquo;raquo;+fld_value+laquo;raquo;laquo;raquo;);;;:=true;.free;:=f;:=f;;

//Виконання оператора зміни даних і зчитування результату зміни

procedure dsBeforePost (DS: TDataSet; ntable, fld_name, fld_value: string); i: integer ;: boolean ;: TFieldNotifyEvent ;: Tfield ;: Tfield;

screen.cursor:=crSQLWait;

//1. Формуємо оператор SQL на зміну даних

CreateUpdateSQL (DS, Dm.qSql, ntable);

//2. Виконуємо оператор SQL на зміну даних

with Dm.qSql dosql.count gt; 0 then beginDS.state=dsInsert then begin ;;:=nil ;;

sql.Clear;

//Формуємо оператор зчитування доданої записи


Назад | сторінка 7 з 8 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Creation of control system by a personnel how to begin with a zero
  • Реферат на тему: База даних &Оператор мобільного зв'язку&
  • Реферат на тему: Створення бази даних &Оператор стільникового зв'язку&
  • Реферат на тему: Спектр оператора. Застосування нестандартного аналізу для дослідження резо ...
  • Реферат на тему: Розробка бази даних засобами системи управління базами даних MS Access