, . - Delphi, . Delphi, . :
. Align alTop ( ). Align alBottom. Splitter Additional , Align alBottom, . Splitter - . , . , , Align alClient, . Caption .
RadioButton Standard . Caption , , "", "" "". , , DBGrid . Checked True, . Bevel Additional . ( Width) 2 , .
, Label, Edit BitBtn.
BitBtn. , - .
DBGrid DataControls , Align alClient.
Name fMain, Caption " ", Main.pas, ok ( ).
(File -> New -> Data Module). - . , (TDataBase, ADOConnection ..), - (TTable/ADOTable, TQuery/ADOQuery, TStoredProc/ADOStoredProc) DataSource, / . , , . , *.pas.
Name fDM, DM.pas. . ADOConnection ADO . ADO. ConnectionString. -, , ADOTable , , , . ADOConnection .
|
|
. ConnectionString ADOConnection. ADO:
. 2.6. ADO.
:
1. link-.
2. "Use Connection String" ADO.
3. , Build.
- Build. , :
. 2.7.
OLE DB, , . MS Access " Microsoft Jet 4.0 OLE DB Provider". Jet - , MS Access. MS Access, *.mdb, ODBC. .
"", "". . . , , , , . - , . ( ok.mdb) , , ( ), , . , " ". , . - ok.mdb ( ?). "".
, . LoginPrompt ADOConnection False. , , , . Connected True. , , .
. ADOTable, . ADOTable ( TTable BDE) .
() , , TTable/ADOTable, TQuery/ADOQuery, TStoredProc / ADOStoredProc . TDBDataSet, , . .
(TTable/ADOTable) , , (DBGrid, DBEdit, DBMemo .).
|
|
(TQuery/ADOQuery) SQL-. , .
ADOTable ( <Shift>), Connection ADOConnection1. , ADOTable .
ADOTable. Name TLichData, TableName - LichData. "" , . DataSource Data Access . DataSource , , ADOTable, ADOQuery , , DBGrid, DBEdit .. Name DataSource DSLichData (DS - DataSource). DataSet TLichData.
, DataSource :
. 8. . . 9.
Active True, . , , , , . , :
// :
fDM.TLichData.Open;
fDM.TDoljnost.Active:= True;
// :
fDM.TLichData.Close;
fDM.TDoljnost.Active:= False;
. . File -> Use Unit DM. .
DataControls ( ) , DBGrid (, , ), DBEdit ( , , , ), DBMemo ( MEMO-) .. DBNavigator. , , , .
DBGrid, DataSource fDM.DSLichData. fDM.DSAdres. , . , , . , , True ReadOnly - . , , . , .
. , , , , . . , . Add all fields ( ). (.9.)
, . , DBGrid , . , DBGrid . , , , , , .. , , (lookup). .
|
|
"" , . . , Visible False. . - "_" "". True False , , DisplayValues ";" (, ), - ";". , True, - False. , .
. "" - , . . "" Telephones EditMask. , , Input Mask "#(###)-###-##-##". , . ( LichData ) "##.##.####".
<F12> . Diagram, . :
. 10. . 11.
. Object TreeView. , <Shift+Alt+F11> View -> Object TreeView.
LichData {TLichData} . . ADOTable, . , . - Master / Detail Connector, (). , , , , Adres. , :
Detail Fields , , "". Master Fields "". Add OK. .
/ . , TAdres. . , ?
, . , . , , . ( !), , Active True. , .
|
|
. . (File -> New -> Form). Name fEditor, Editor. File -> Use Unit DM. :
. 12.
: GroupBox Standard, GroupBox. , . . Caption GroupBox " ", . DBEdit DataControls , DBCheckBox , DBComboBox . Label . DBComboBox. Items, . : ;
, . , .
Doljnost : GroupBox DBEdit Label. Adres DBEdit.
Telephones DBEdit, DBComboBox, DBGrid BitBtn. , --, . Items DBComboBox :
. <Shift>, ( , Label). DataSource fDM.DSLichData, (). , DBEdit. DataField "". . . , . DBGrid fDM.DSTelephones, , . .
DBNavigator Data Controls. , , , . DataSource fDM.DSLichData, . , . VisibleButtons ( ) False , nbFirst, nbPrior, nbNext nbLast. ADOTable. :
First - . Prior - .
Next - . Last - .
DBNavigator , . , .
, GroupBox, . " Delphi", , :
1. Post.
2. .
3. .
, , , . "" , . , , . , - . GroupBox, onExit Events . , GroupBox, , . :
{ LichData}
|
|
procedure TfEditor.GroupBox1Exit(Sender: TObject);
begin
if fDM.TLichData.Modified then
fDM.TLichData.Post;
end;
Modified ADOTable - True, , False . Post , , . "" . , , , . onExit GroupBox .
"" GroupBox . , . :
if fDM.TTelephones.Modified then
fDM.TTelephones.Post;
fDM.TTelephones.Append;
DBEdit14.SetFocus;
, . Append . :
1. Append - .
2. Insert - .
, Edit, . DBEdit , .
" " :
if fDM.TLichData.Modified then
fDM.TLichData.Post;
if fDM.TDoljnost.Modified then
fDM.TDoljnost.Post;
if fDM.TAdres.Modified then
fDM.TAdres.Post;
if fDM.TTelephones.Modified then
fDM.TTelephones.Post;
Close;
, , . " ". , ? DBEdit, . :
fDM.TLichData.Append;
fDM.TDoljnost.Append;
fDM.TAdres.Append;
fDM.TTelephones.Append;
DBEdit1.SetFocus;
, . . Editor File -> Use Unit, , . " ". , , : fDM.TLichData.Append;
fDM.TDoljnost.Append;
fDM.TAdres.Append;
fDM.TTelephones.Append;
fEditor.ShowModal;
onClick "". : fEditor.ShowModal;
, . , DBGrid, . onDBLClick. .
. , DBGrid , - Adres. "". , , DBGrid. "" onClick, , . :
if RadioButton1.Checked then
DBGrid2.DataSource:= fDM.DSAdres;
, . , DBGrid Adres. DataSource, . , DataSource, .
onClick "" :
if RadioButton2.Checked then
DBGrid2.DataSource:= fDM.DSTelephones;
onClick "", , :
if RadioButton3.Checked then
DBGrid2.DataSource:= fDM.DSDoljnost;
, , , . ! . , - , , .