ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² ΡƒΡ‡Ρ‘Π±Π΅, ΠΎΡ‡Π΅Π½ΡŒ быстро...
Π Π°Π±ΠΎΡ‚Π°Π΅ΠΌ вмСстС Π΄ΠΎ ΠΏΠΎΠ±Π΅Π΄Ρ‹

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. 
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ΠŸΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΠΎΠΊΠ°Π·Π° ΠΎΠΊΠ½Π°-увСдомлСния ΠΎ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΡ… (рис. 12). Π’ ΡΡ‚ΠΎΠΌ ΠΎΠΊΠ½Π΅ выводится информация ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ Π½ΠΎΠ²Ρ‹Ρ… зарСгистрированных ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΎΡΡŒ ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² ΠΏΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌΡƒ администрирования, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ «Π³Π°Π»ΠΎΡ‡ΠΊΠΎΠΉ» ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ настройку. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”А Π±ΡƒΠ΄Π΅Ρ‚ осущСствлСн ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ «ΠΠΎΠ²Ρ‹Π΅». ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ НЕВ Π±ΡƒΠ΄Π΅Ρ‚… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

  • 1. Π“Π°Π³Π°Ρ€ΠΈΠ½Π° Π›. Π“., Π—ΡƒΠ±ΠΎΠ² Н. Н., Π‘Ρ‚Ρ€ΠΈΠΆΠΊΠΎΠ² А. Π’., Π€Π΅Π΄ΠΎΡ‚ΠΎΠ²Π° Π•. Π›. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ указания ΠΏΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° спСциалистов направлСния 654 600 «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°» (ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 220 400 «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм»). Под Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠ΅ΠΉ А. Π­. НСстСрова — М.: МИЭВ, 2004 — 66с.: ΠΈΠ».
  • 2. Ковязин А., Востриков Π‘. ΠœΠΈΡ€ InterBase. АрхитСктура, администрированиС ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π² InterBase/FireBird/Yaffil. — Πœ.: ΠšΠ£Π”Π˜Π¦-ΠžΠ‘Π ΠΠ—, 2002. — 496 с.
  • 3. Π€Π°Ρ€ΠΎΠ½ΠΎΠ² Π’. Π’. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π² Delphi 7. Π£Ρ‡Π΅Π±Π½Ρ‹ΠΉ курс. — Π‘Пб.: ΠŸΠ˜Π’Π•Π , 2003. — 459 с.
  • 4. ΠΡ€Ρ…Π°Π½Π³Π΅Π»ΡŒΡΠΊΠΈΠΉ А. Π―. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Delphi 7. — M.: Π—ΠΠž «Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Π‘Π˜ΠΠžΠœ», 2003. — 1152 с.
  • 5. РодТСрсон Дэйл. ΠžΡΠ½ΠΎΠ²Ρ‹ БОМ. — Πœ.: Русская рСдакция, 2000. — 400 с.
  • 6. ΠšΠΎΡ‚Π»Π΅Ρ€ Π€. ΠžΡΠ½ΠΎΠ²Ρ‹ ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³Π° / ΠŸΠ΅Ρ€. Ρ Π°Π½Π³Π». — Πœ.: Ростинтэр, 2002.
  • 7. МоисССва Н. К., ΠšΠΎΡΡ‚ΠΈΠ½Π° Π“. Π”. ΠœΠ°Ρ€ΠΊΠ΅Ρ‚ΠΈΠ½Π³ΠΎΠ²Ρ‹Π΅ исслСдования ΠΏΡ€ΠΈ создании ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ указания для выполнСния курсовых ΠΈ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‚ ΠΏΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ «ΠœΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ‚». М.: ΠœΠ“Π˜Π­Π’ (Π’Π£), 1996. — 78 с.: ΠΈΠ».
  • 8. ΠšΠ°Ρ€Π°ΠΊΠ΅ΡΠ½ Π’. И. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΆΠΈΠ·Π½Π΅Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. — Πœ.: МИЭВ, 1999.
  • 9. Π“ΠžΠ‘Π’ 12.2.032−78. Π‘Π‘Π‘Π’. Π Π°Π±ΠΎΡ‡Π΅Π΅ мСсто ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚ сидя. ΠžΠ±Ρ‰ΠΈΠ΅ эргономичСскиС трСбования.

ΠŸΠ Π˜Π›ΠžΠ–Π•ΠΠ˜Π•

ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы «Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ ΠΌΠ°ΠΊΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅» (ИПБ РиМ) состоит ΠΈΠ· ΠΏΡΡ‚идСсяти сСми ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. НиТС приводится листинг основных ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.

//ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ записями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

unit UsersView;

interface.

uses.

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, ExtCtrls, Grids, DBGrids, ComCtrls, ToolWin, Buttons, Tabs, IniFiles;

type.

TfmUsersView = class (TForm).

StatusBar: TStatusBar;

BottomPanel: TPanel;

tsPages: TTabSet;

LeftBottomPanel: TPanel;

sbFirst: TSpeedButton;

sbLeft: TSpeedButton;

sbRight: TSpeedButton;

sbLast: TSpeedButton;

ToolBar: TToolBar;

tbAddUser: TToolButton;

tbDeleteUser: TToolButton;

ToolButton5: TToolButton;

tbFind: TToolButton;

ToolButton2: TToolButton;

tbEdit: TToolButton;

ToolButton3: TToolButton;

tbTable: TToolButton;

tbForm: TToolButton;

mmTableView: TMainMenu;

N1: TMenuItem;

mmAddUser: TMenuItem;

mmDeleteUser: TMenuItem;

N4: TMenuItem;

mmExit: TMenuItem;

N2: TMenuItem;

mmFind: TMenuItem;

N3: TMenuItem;

mmEdit: TMenuItem;

N5: TMenuItem;

mmTable: TMenuItem;

mmForm: TMenuItem;

pmTableView: TPopupMenu;

pmOpenCategory: TMenuItem;

pmCloseCategory: TMenuItem;

ButtonPanel: TPanel;

buSetLevel: TButton;

lblSearch: TLabel;

edSearch: TEdit;

ClosePanel: TPanel;

sbCloseResults: TSpeedButton;

ToolButton1: TToolButton;

tbRemind: TToolButton;

tbImport: TToolButton;

mmImport: TMenuItem;

N7: TMenuItem;

ListView: TListView;

mmDict: TMenuItem;

tbDictControl: TToolButton;

procedure FormClose (Sender: TObject; var Action: TCloseAction);

procedure FormCreate (Sender: TObject);

procedure FormActivate (Sender: TObject);

procedure mmExitClick (Sender: TObject);

procedure mmFindClick (Sender: TObject);

procedure mmEditClick (Sender: TObject);

procedure mmTableClick (Sender: TObject);

procedure mmFormClick (Sender: TObject);

procedure sbFirstClick (Sender: TObject);

procedure sbLeftClick (Sender: TObject);

procedure sbRightClick (Sender: TObject);

procedure sbLastClick (Sender: TObject);

procedure tsPagesClick (Sender: TObject);

procedure mmAddUserClick (Sender: TObject);

procedure mmDeleteUserClick (Sender: TObject);

procedure FormResize (Sender: TObject);

procedure buSetLevelClick (Sender: TObject);

procedure edSearchChange (Sender: TObject);

procedure ClosePanelResize (Sender: TObject);

procedure sbCloseResultsClick (Sender: TObject);

procedure FormShow (Sender: TObject);

procedure tbRemindClick (Sender: TObject);

procedure mmImportClick (Sender: TObject);

procedure ListViewDblClick (Sender: TObject);

procedure ListViewColumnClick (Sender: TObject; Column: TListColumn);

procedure ListViewCompare (Sender: TObject; Item1, Item2: TListItem;

Data: Integer; var Compare: Integer);

procedure mmDictClick (Sender: TObject);

private.

{Private declarations}.

public.

OldLogin: string; //сохранСниС Π»ΠΎΠ³ΠΈΠ½Π°.

ColumnToSort: integer; //столбСц для сортировки.

NumOfClicks: integer; //число Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ Π½Π° ΡΡ‚ΠΎΠ»Π±Ρ†Π΅.

ShowNew: boolean; //ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Ρ….

AllSelected: boolean; //Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ всСх.

sSQL: string;

CheckList: TStringList; //список ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ….

procedure PrepareGrid;

procedure RestoreChecks;

end;

var.

fmUsersView: TfmUsersView;

implementation.

{$R *.dfm}.

uses.

DataModule, DataModuleRM, DB, IBCustomDataSet, IBStoredProc, UserCardView, UserCard, SetLevel, Search, Reg, Remind, ImportUsers, DictControl;

//*************************//.

// ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π³Ρ€ΠΈΠ΄Π° //.

//*************************//.

procedure TfmUsersView. PrepareGrid;

begin.

with ListView. Columns do.

begin.

Items[1]. Caption := 'Π›ΠΎΠ³ΠΈΠ½';

Items[2]. Caption := 'ЀИО';

Items[3]. Caption := 'Π”ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚ΡŒ';

Items[4]. Caption := 'ΠŸΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅';

Items[5]. Caption := 'Код доступа';

Items[6]. Caption := 'Роль';

Items[7]. Caption := 'Π”Π°Ρ‚Π° рСгистрации';

end;

end;

//**************************//.

// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//**************************//.

procedure TfmUsersView. FormCreate (Sender: TObject);

var.

i: integer;

begin.

StatusBar.Panels[1]. Text := '1:1';

ShowNew := false;

CheckList := TStringList. Create;

buSetLevel.Left := ButtonPanel. Width — buSetLevel. Width — 5;

ColumnToSort := 1;

NumOfClicks := 0;

with ListView. Columns do.

begin.

Clear;

for i := 0 to 7 do Add;

Items[0]. Width := 18;

Items[1]. Width := 120;

Items[2]. Width := 160;

Items[3]. Width := 160;

Items[4]. Width := 160;

Items[5]. Width := 160;

Items[6]. Width := 130;

Items[7]. Width := 110;

end;

PrepareGrid;

end;

//****************************//.

// Активизация Ρ„ΠΎΡ€ΠΌΡ‹ //.

//****************************//.

procedure TfmUsersView. FormActivate (Sender: TObject);

begin.

AllSelected := false;

if ShowNew.

then tsPages. TabIndex := 1.

else tsPages. TabIndex := 0;

edSearch.SetFocus;

edSearchChange (Sender);

end;

//**********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π’Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ //.

//**********************************************//.

procedure TfmUsersView. mmExitClick (Sender: TObject);

begin.

fmUsersView.Close;

end;

//**********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Поиск //.

//**********************************//.

procedure TfmUsersView. mmFindClick (Sender: TObject);

begin.

fmSearch.ShowModal;

end;

//******************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ //.

//******************************************//.

procedure TfmUsersView. mmEditClick (Sender: TObject);

var.

sLogin: string;

begin.

if DM.qrUsers.IsEmpty then Exit;

if ListView. Selected = nil.

then.

begin.

ShowMessage ('Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ для рСдактирования');

Exit;

end;

sLogin := ListView.Selected.SubItems.Strings[0];

DM.qrUsers.Locate ('LOGIN', sLogin,[loCaseInsensitive]);

fmUserCard := TfmUserCard. Create (nil, cmEdit);

fmUserCard.Caption := 'Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ';

fmUserCard.ShowModal;

fmUserCard.Free;

tsPagesClick (Sender);

end;

//*********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ //.

//*********************************//.

procedure TfmUsersView. mmAddUserClick (Sender: TObject);

begin.

fmUserCard := TfmUserCard. Create (nil, cmInsert);

fmUserCard.Caption := 'Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ';

fmUserCard.ShowModal;

fmUserCard.Free;

tsPagesClick (Sender);

end;

//*********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π£Π΄Π°Π»ΠΈΡ‚ΡŒ //.

//*********************************//.

procedure TfmUsersView. mmDeleteUserClick (Sender: TObject);

var.

sLogin: string;

begin.

if ListView. Selected = nil.

then.

begin.

ShowMessage ('Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ');

Exit;

end;

sLogin := ListView.Selected.SubItems.Strings[0];

if (sLogin = DM. sLogin) or (sLogin = OldLogin) then.

begin.

Application.MessageBox ('НСльзя ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ','Ошибка!', MB_ICONERROR);

Exit;

end;

if MessageDlg ('Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ «' + sLogin + '» ', mtConfirmation, [mbYes, mbNo], 0) = mrYes.

then.

begin.

with DM. spUser do.

begin.

StoredProcName := 'DELETE_USER';

ParamByName ('VC_LOGIN').Value := sLogin;

Prepare;

ExecProc;

end;

DM.trRimBase.CommitRetaining;

tsPagesClick (Sender);

end;

end;

//***************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π˜ΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… //.

//***************************************//.

procedure TfmUsersView. mmImportClick (Sender: TObject);

begin.

fmImportUsers.ShowModal;

fmUsersView.Activate;

end;

//*******************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: БистСмныС словари //.

//*******************************************//.

procedure TfmUsersView. mmDictClick (Sender: TObject);

begin.

fmDictControl.ShowModal;

fmUsersView.Activate;

end;

//****************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π’ΠΈΠ΄-Π’Π°Π±Π»ΠΈΡ†Π° //.

//****************************************//.

procedure TfmUsersView. mmTableClick (Sender: TObject);

var.

i: integer;

begin.

if mmTable. Checked then.

Exit;

mmTable.Checked := true;

mmForm.Checked := false;

tbTable.Down := true;

tbForm.Down := false;

fmUserCardView.Visible := false;

ListView.Visible := true;

i := DM.qrUsers.RecNo;

ListView.Selected := ListView.Items.Item[i-1];

edSearch.SetFocus;

tsPages.SelectedColor := clWhite;

tsPages.UnselectedColor := clBtnFace;

end;

//**************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π’ΠΈΠ΄-Π€ΠΎΡ€ΠΌΠ° //.

//**************************************//.

procedure TfmUsersView. mmFormClick (Sender: TObject);

var.

sLogin: string;

begin.

if mmForm. Checked then.

Exit;

mmTable.Checked := false;

mmForm.Checked := true;

tbTable.Down := false;

tbForm.Down := true;

if (ListView.Selected nil).

then.

begin.

sLogin := ListView.Selected.SubItems.Strings[0];

DM.qrUsers.Locate ('LOGIN', sLogin,[loCaseInsensitive]);

end.

else DM.qrUsers.First;

ListView.Visible := false;

fmUserCardView.Parent := fmUsersView;

fmUserCardView.Visible := true;

tsPages.SelectedColor := clBtnFace;

tsPages.UnselectedColor := clWhite;

end;

//**************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ //.

//**************************************//.

procedure TfmUsersView. sbCloseResultsClick (Sender: TObject);

var.

s: string;

begin.

if tsPages. TabIndex < 2.

then Exit;

s := 'Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ «' + tsPages. Tabs[tsPages.TabIndex] + '» ?';

if Application. MessageBox (PChar (s),'ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅', MB_ICONQUESTION + MB_YESNO) = IDYES.

then.

begin.

tsPages.Tabs.Delete (tsPages.TabIndex);

tsPages.TabIndex := 0;

end;

end;

//*****************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ //.

//*****************************************//.

procedure TfmUsersView. tbRemindClick (Sender: TObject);

begin.

fmRemind.ShowModal;

fmUsersView.Activate;

end;

//**************************//.

// Π‘ΠΌΠ΅Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ //.

//**************************//.

procedure TfmUsersView. tsPagesClick (Sender: TObject);

var.

Left, Top, Bottom, Num: integer;

ValuesList: TStringList;

begin.

Top := Round (StatusBar.Height / 4);

Left := StatusBar. Panels[0]. Width + StatusBar. Panels[1]. Width + 5;

Bottom := 3 * Top;

StatusBar.Canvas.Pen.Color := clNavy;

StatusBar.Canvas.Brush.Color := clNavy;

StatusBar.Panels[1]. Text := IntToStr (tsPages.TabIndex + 1) + ': ' + IntToStr (tsPages.Tabs.Count);

StatusBar.Canvas.Rectangle (Left, Top, Left + 100, Bottom);

DM.qrUsers.Transaction.CommitRetaining;

ValuesList := TStringList. Create;

CheckList.Clear;

for Num := 0 to ListView.Items.Count — 1 do.

if ListView.Items.Item[Num]. Checked.

then CheckList. Add (ListView.Items.Item[Num]. SubItems. Strings[0]);

ListView.Items.BeginUpdate;

ListView.Items.Clear;

sSQL := 'select u.*, da. vc_acl_name, dr. vc_role from USERS u, DICT_ACL da, DICT_ROLE dr where u. uacl=da.n_acl_id and u. urole=dr.n_role_id';

if tsPages. TabIndex = 2.

then sSQL := fmSearch. sSQL;

DM.qrUsers.SQL.Clear;

if tsPages. TabIndex = 1 then sSQL := sSQL + ' and u. n_new = 1';

if (edSearch.Text '') and (tsPages.TabIndex 2).

then.

sSQL := sSQL + ' and upper (u.LOGIN) like upper (''' + edSearch. Text + '%'')';

DM.qrUsers.SQL.Add (sSQL + ' order by upper (u.LOGIN)');

with DM. qrUsers do.

begin.

Close;

Open;

FetchAll;

First;

PrepareGrid;

for Num := 0 to RecordCount — 1 do.

begin.

ValuesList.Clear;

ListView.Items.Add;

ValuesList.Add (FieldValues['LOGIN']);

if not (FieldValues['UNAME'] = null).

then ValuesList. Add (FieldValues['UNAME']).

else ValuesList. Add ('');

if not (FieldValues['UPOST'] = null).

then ValuesList. Add (FieldValues['UPOST']).

else ValuesList. Add ('');

if not (FieldValues['UDEP'] = null).

then ValuesList. Add (FieldValues['UDEP']).

else ValuesList. Add ('');

ValuesList.Add (FieldValues['VC_ACL_NAME']);

ValuesList.Add (FieldValues['VC_ROLE']);

ValuesList.Add (FieldValues['REGDATE']);

ListView.Items.Item[Num]. SubItems. AddStrings (ValuesList);

Next;

end;

end;

if (DM.qrUsers.RecNo = 0) then.

begin.

mmDeleteUser.Enabled := false;

tbDeleteUser.Enabled := false;

tbEdit.Enabled := false;

mmEdit.Enabled := false;

buSetLevel.Enabled := false;

end.

else.

begin.

mmDeleteUser.Enabled := true;

tbDeleteUser.Enabled := true;

tbEdit.Enabled := true;

mmEdit.Enabled := true;

buSetLevel.Enabled := true;

end;

if (tsPages.TabIndex = 2).

then.

begin.

sbCloseResults.Enabled := true;

lblSearch.Visible := false;

edSearch.Visible := false;

end.

else.

begin.

sbCloseResults.Enabled := false;

lblSearch.Visible := true;

edSearch.Visible := true;

end;

AllSelected := false;

RestoreChecks;

ListView.Items.EndUpdate;

StatusBar.Canvas.Pen.Color := clBtnFace;

StatusBar.Canvas.Brush.Color := clBtnFace;

StatusBar.Canvas.Rectangle (Left, Top, Left + 100, Bottom);

StatusBar.Panels.Items[3]. Text := ' ВсСго ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ: ' + IntToStr (DM.qrUsers.RecordCount);

end;

//**************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//**************************************//.

procedure TfmUsersView. sbFirstClick (Sender: TObject);

begin.

tsPages.TabIndex := 0;

end;

//******************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//******************************************//.

procedure TfmUsersView. sbLeftClick (Sender: TObject);

begin.

if (tsPages.TabIndex 0) then.

tsPages.SelectNext (false);

end;

//****************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//****************************************//.

procedure TfmUsersView. sbRightClick (Sender: TObject);

begin.

if (tsPages.TabIndex tsPages.Tabs.Count — 1) then.

tsPages.SelectNext (true);

end;

//****************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡŽΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//****************************************//.

procedure TfmUsersView. sbLastClick (Sender: TObject);

begin.

tsPages.TabIndex := tsPages.Tabs.Count — 1;

end;

//**************************//.

// Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//**************************//.

procedure TfmUsersView. FormClose (Sender: TObject;

var Action: TCloseAction);

var.

MyIni: TIniFile;

begin.

MyIni := TIniFile. Create (ExtractFilePath (Application.ExeName) + 'IniFilesDB.INI');

try.

MyIni.WriteBool ('OPTIONS','ShowRemind', DM. ShowRemindDialog);

finally.

MyIni.Free;

end;

with DM. spAutoReg do //Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ рСгистрации.

begin.

ParamByName ('VC_LOGIN').Value := OldLogin;

ParamByName ('VC_PASS').Value := 'nopass';

ParamByName ('REFRESH_CALL').Value := 1;

Prepare;

ExecProc;

DM.sName := ParamByName ('VC_NAME').AsString; //запомнили ЀИО.

DM.sLogin := ParamByName ('VC_REAL_LOGIN').AsString; //ΠΈ Π»ΠΎΠ³ΠΈΠ½.

DM.nRole := ParamByName ('N_ROLE').AsInteger; //ΠΈ Ρ€ΠΎΠ»ΡŒ.

DM.nLevel := ParamByName ('N_ACL').AsInteger; //ΠΈ ACL.

Close;

end;

DM.trRimBase.CommitRetaining;

end;

//*********************************//.

// ИзмСнСниС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹ //.

//*********************************//.

procedure TfmUsersView. FormResize (Sender: TObject);

begin.

buSetLevel.Left := ButtonPanel. Width — buSetLevel. Width — 5;

end;

//*********************************//.

// Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²Π° доступа //.

//*********************************//.

procedure TfmUsersView. buSetLevelClick (Sender: TObject);

var.

i: integer;

begin.

CheckList.Clear;

for i := 0 to ListView.Items.Count — 1 do.

if ListView.Items.Item[i]. Checked.

then CheckList. Add (ListView.Items.Item[i]. SubItems. Strings[0]);

fmSetLevel.ShowModal;

if tsPages. TabIndex 2 then edSearch. SetFocus;

tsPagesClick (Sender);

AllSelected := true;

RestoreChecks;

end;

//*****************************************//.

// ИзмСнСниС поля «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΠΎΠ³ΠΈΠ½Ρƒ» //.

//*****************************************//.

procedure TfmUsersView. edSearchChange (Sender: TObject);

begin.

tsPagesClick (Sender);

end;

//*******************************//.

// ВосстановлСниС ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΎΠΊ //.

//*******************************//.

procedure TfmUsersView. RestoreChecks;

var.

Num, ListNum: integer;

begin.

for Num := 0 to ListView.Items.Count — 1 do.

for ListNum := 0 to CheckList. Count — 1 do.

if ListView.Items.Item[Num]. SubItems. Strings[0] = CheckList. Strings[ListNum].

then ListView.Items.Item[Num]. Checked := true;

end;

//**********************************//.

// ИзмСнСниС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠ°Π½Π΅Π»ΠΈ //.

//**********************************//.

procedure TfmUsersView. ClosePanelResize (Sender: TObject);

begin.

sbCloseResults.Left := ClosePanel. Width — 15;

end;

//********************//.

// Показ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//********************//.

procedure TfmUsersView. FormShow (Sender: TObject);

begin.

if DM. ShowRemindDialog then fmRemind. ShowModal;

end;

//********************************//.

// Π”Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ Π½Π° Π³Ρ€ΠΈΠ΄Π΅ //.

//********************************//.

procedure TfmUsersView. ListViewDblClick (Sender: TObject);

var.

sLogin: string;

begin.

if ListView. Selected = nil.

then Exit;

sLogin := ListView.Selected.SubItems.Strings[0];

DM.qrUsers.Locate ('LOGIN', sLogin,[loCaseInsensitive]);

mmEditClick (Sender);

end;

//********************************//.

// Π©Π΅Π»Ρ‡ΠΎΠΊ Π½Π° ΡΡ‚ΠΎΠ»Π±Ρ†Π΅ Π³Ρ€ΠΈΠ΄Π° //.

//********************************//.

procedure TfmUsersView. ListViewColumnClick (Sender: TObject;

Column: TListColumn);

var.

i: integer;

begin.

if Column. Index = 0.

then.

begin.

AllSelected := not AllSelected;

for i := 0 to ListView.Items.Count — 1 do.

if AllSelected.

then ListView.Items.Item[i]. Checked := true.

else ListView.Items.Item[i]. Checked := false;

end.

else.

begin.

ListView.Items.BeginUpdate;

PrepareGrid;

if (ColumnToSort = Column. Index) and (NumOfClicks = 1).

then NumOfClicks := 2 else NumOfClicks := 1;

ColumnToSort := Column. Index;

if NumOfClicks = 1.

then Column. Caption := Column. Caption + ' (+)'.

else Column. Caption := Column. Caption + ' (-)';

(Sender as TCustomListView).AlphaSort;

ListView.Items.EndUpdate;

end;

end;

//*************************//.

// Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° Π³Ρ€ΠΈΠ΄Π° //.

//*************************//.

procedure TfmUsersView. ListViewCompare (Sender: TObject; Item1,.

Item2: TListItem; Data: Integer; var Compare: Integer);

var.

Index: integer;

begin.

Index := ColumnToSort — 1;

Compare := AnsiCompareText (Item1.SubItems[Index], Item2. SubItems[Index]);

if NumOfClicks = 2 then Compare := (-1) * Compare;

end;

end.

//ΠœΠΎΠ΄ΡƒΠ»ΡŒ складского ΡƒΡ‡Π΅Ρ‚Π° Π² Ρ€Π°Π·Ρ€Π΅Π·Π΅ элСмСнтов.

unit StoreView;

interface.

uses.

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Buttons, Tabs, ExtCtrls, ComCtrls, Menus, ToolWin, ImgList, Grids, DBGrids, StdCtrls, DBCtrls, IniFiles, IB, DB;

type.

TfmStoreView = class (TForm).

StatusBar: TStatusBar;

BottomPanel: TPanel;

tsPages: TTabSet;

LeftBottomPanel…

procedure pmCloseCategoryClick (Sender: TObject);

procedure pmTableViewPopup (Sender: TObject);

procedure sbFirstClick (Sender: TObject);

procedure sbLeftClick (Sender: TObject);

procedure sbRightClick (Sender: TObject);

procedure sbLastClick (Sender: TObject);

procedure tsPagesClick (Sender: TObject);

procedure ClosePanelResize (Sender: TObject);

procedure dbgTableDblClick (Sender: TObject);

procedure mmAvailableClick (Sender: TObject);

procedure mmNotAvailableClick (Sender: TObject);

procedure mmAllClick (Sender: TObject);

procedure mmOrderClick (Sender: TObject);

procedure mmIncomingClick (Sender: TObject);

procedure mmOutgoingClick (Sender: TObject);

procedure mmDocListClick (Sender: TObject);

procedure mmOrderListClick (Sender: TObject);

procedure mmLogClick (Sender: TObject);

procedure tbStorePlacesClick (Sender: TObject);

procedure mmTransferClick (Sender: TObject);

private.

{ Private declarations }.

public.

{ Public declarations }.

end;

var.

fmStoreView: TfmStoreView;

implementation.

{$R *.dfm}.

uses DataModule, DataModuleRM, OpenCategoryStore, ElementStoreView, StoreSearch, StorePlaceView, OrderContent, OrderList, StoreLog, DocList, DocContent, StoreImport;

//**************************//.

// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//**************************//.

procedure TfmStoreView. FormCreate (Sender: TObject);

var.

i: integer;

IniFile: TIniFile;

StringList: TStringList;

begin.

StatusBar.Panels[1]. Text := '1:1';

IniFile := TIniFile. Create ('IniFilesCategory.ini');

StringList := TStringList. Create;

IniFile.ReadSection ('CATEGORY_STORE', StringList);

if StringList. Count = 0 then.

begin.

StringList.Free;

IniFile.Free;

Exit;

end;

tsPages.Tabs.Clear;

sbCloseCategory.Enabled := true;

for i := 0 to StringList. Count — 1 do.

tsPages.Tabs.Add (IniFile.ReadString ('CATEGORY_STORE', StringList[i], ''));

StringList.Free;

IniFile.Free;

end;

//**********************//.

// Показ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//**********************//.

procedure TfmStoreView. FormShow (Sender: TObject);

begin.

if DM. nRole 3.

then.

begin.

tbIncoming.Enabled := false;

tbOutgoing.Enabled := false;

tbStorePlaces.Enabled := false;

tbDocList.Enabled := false;

tbLog.Enabled := false;

tbTrasfer.Enabled := false;

mmIncoming.Enabled := false;

mmOutgoing.Enabled := false;

mmDocList.Enabled := false;

mmLog.Enabled := false;

mmTransfer.Enabled := false;

mmImportData.Enabled := false;

end.

else.

begin.

tbIncoming.Enabled := true;

tbOutgoing.Enabled := true;

tbStorePlaces.Enabled := true;

tbDocList.Enabled := true;

tbLog.Enabled := true;

tbTrasfer.Enabled := true;

mmIncoming.Enabled := true;

mmOutgoing.Enabled := true;

mmDocList.Enabled := true;

mmLog.Enabled := true;

mmTransfer.Enabled := true;

mmImportData.Enabled := true;

end;

tsPages.TabIndex := 0;

mmAll.Checked := true;

tsPagesClick (Sender);

end;

//*********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ //.

//*********************************************//.

procedure TfmStoreView. mmOpenCategoryClick (Sender: TObject);

begin.

with fmOpenCategoryStore do.

begin.

CallForm := cfStoreView;

ShowModal;

end;

end;

//*********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ //.

//*********************************************//.

procedure TfmStoreView. mmCloseCategoryClick (Sender: TObject);

begin.

pmCloseCategoryClick (nil);

end;

//******************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π˜ΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… //.

//******************************************//.

procedure TfmStoreView. mmImportDataClick (Sender: TObject);

begin.

fmStoreImport.ShowModal;

tsPagesClick (Sender);

end;

//**********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π’Ρ‹Ρ…ΠΎΠ΄ //.

//**********************************//.

procedure TfmStoreView. mmExitClick (Sender: TObject);

begin.

fmStoreView.Close;

fmStorePlaceView.Close;

end;

//**********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Поиск //.

//**********************************//.

procedure TfmStoreView. mmFindClick (Sender: TObject);

begin.

fmStoreSearch.CallForm := cStoreView;

if mmAvailable.Checked.

then.

fmStoreSearch.bAvailable := true.

else.

fmStoreSearch.bAvailable := false;

if mmNotAvailable.Checked.

then.

fmStoreSearch.bNotAvailable := true.

else.

fmStoreSearch.bNotAvailable := false;

fmStoreSearch.ShowModal;

end;

//****************************//.

// Показ Popup-мСню //.

//****************************//.

procedure TfmStoreView. pmTableViewPopup (Sender: TObject);

begin.

if tsPages. Tabs[0] = 'ΠŸΡƒΡΡ‚ΠΎ'.

then.

pmCloseCategory.Enabled := false.

else.

pmCloseCategory.Enabled := true;

end;

//**********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ //.

//**********************************************//.

procedure TfmStoreView. pmCloseCategoryClick (Sender: TObject);

begin.

if MessageDlg ('Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ «' + tsPages. Tabs[tsPages.TabIndex] + '» ', mtConfirmation, [mbYes, mbNo], 0) = mrYes then.

begin.

tsPages.Tabs.Delete (tsPages.TabIndex);

if tsPages.Tabs.Count = 0 then.

begin.

tsPages.Tabs.Add ('ΠŸΡƒΡΡ‚ΠΎ');

tsPages.TabIndex := 0;

sbCloseCategory.Enabled := false;

end;

end;

end;

//******************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: ДоступныС ЭРИ //.

//******************************************//.

procedure TfmStoreView. mmAvailableClick (Sender: TObject);

begin.

mmAll.Checked := false;

mmNotAvailable.Checked := false;

mmAvailable.Checked := true;

tbAll.Down := false;

tbAvailable.Down := true;

tbNotAvailable.Down := false;

StatusBar.Panels.Items[3]. Text := ' ' + mmAvailable. Caption;

tsPagesClick (Sender);

end;

//******************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π”Π΅Ρ„ΠΈΡ†ΠΈΡ‚Π½Ρ‹Π΅ ЭРИ //.

//******************************************//.

procedure TfmStoreView. mmNotAvailableClick (Sender: TObject);

begin.

mmAll.Checked := false;

mmAvailable.Checked := false;

mmNotAvailable.Checked := true;

tbAll.Down := false;

tbAvailable.Down := false;

tbNotAvailable.Down := true;

StatusBar.Panels.Items[3]. Text := ' ' + mmNotAvailable. Caption;

tsPagesClick (Sender);

end;

//***********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: ВсС ЭРИ //.

//***********************************//.

procedure TfmStoreView. mmAllClick (Sender: TObject);

begin.

mmAll.Checked := true;

mmAvailable.Checked := false;

mmNotAvailable.Checked := false;

tbAll.Down := true;

tbAvailable.Down := false;

tbNotAvailable.Down := false;

StatusBar.Panels.Items[3]. Text := ' ' + mmAll. Caption;

tsPagesClick (Sender);

end;

//****************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Новая заявка //.

//****************************************//.

procedure TfmStoreView. mmOrderClick (Sender: TObject);

begin.

fmOrderContent.ShowingType := otNew;

fmOrderContent.ShowModal;

tsPagesClick (Sender);

end;

//**********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: ΠŸΡ€ΠΈΡ…ΠΎΠ΄Π½Π°Ρ Π²Π΅Π΄ΠΎΠΌΠΎΡΡ‚ΡŒ //.

//**********************************************//.

procedure TfmStoreView. mmIncomingClick (Sender: TObject);

begin.

fmDocContent.DocType := vtNew;

fmDocContent.nDocType := 3;

fmDocContent.lblOrder.Caption := 'ΠŸΡ€ΠΈΡ…ΠΎΠ΄Π½Π°Ρ Π²Π΅Π΄ΠΎΠΌΠΎΡΡ‚ΡŒ β„– ';

fmDocContent.ShowModal;

tsPagesClick (Sender);

end;

//**********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Расходная Π²Π΅Π΄ΠΎΠΌΠΎΡΡ‚ΡŒ //.

//**********************************************//.

procedure TfmStoreView. mmOutgoingClick (Sender: TObject);

begin.

fmDocContent.DocType := vtNew;

fmDocContent.nDocType := 2;

fmDocContent.lblOrder.Caption := 'Расходная Π²Π΅Π΄ΠΎΠΌΠΎΡΡ‚ΡŒ β„– ';

fmDocContent.ShowModal;

tsPagesClick (Sender);

end;

//************************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΊΠ»Π°Π΄Ρƒ //.

//************************************************//.

procedure TfmStoreView. mmTransferClick (Sender: TObject);

begin.

fmDocContent.DocType := vtNew;

fmDocContent.nDocType := 4;

fmDocContent.lblOrder.Caption := 'ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΊΠ»Π°Π΄Ρƒ β„– ';

fmDocContent.ShowModal;

tsPagesClick (Sender);

end;

//********************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π–ΡƒΡ€Π½Π°Π» Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² //.

//********************************************//.

procedure TfmStoreView. mmDocListClick (Sender: TObject);

begin.

fmDocList.ShowModal;

tsPagesClick (Sender);

end;

//****************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π–ΡƒΡ€Π½Π°Π» заявок //.

//****************************************//.

procedure TfmStoreView. mmOrderListClick (Sender: TObject);

begin.

fmOrderList.ShowModal;

tsPagesClick (Sender);

end;

//******************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ мСню: Π–ΡƒΡ€Π½Π°Π» ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ //.

//******************************************//.

procedure TfmStoreView. mmLogClick (Sender: TObject);

begin.

fmStoreLog.ShowModal;

tsPagesClick (Sender);

end;

//**************************//.

// Π‘ΠΌΠ΅Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΎΠΊ //.

//**************************//.

procedure TfmStoreView. tsPagesClick (Sender: TObject);

var.

Left, Top, Bottom: integer;

begin.

Top := Round (StatusBar.Height / 4);

Left := StatusBar. Panels[0]. Width + StatusBar. Panels[1]. Width + 5;

Bottom := 3 * Top;

StatusBar.Canvas.Pen.Color := clNavy;

StatusBar.Canvas.Brush.Color := clNavy;

StatusBar.Panels[1]. Text := IntToStr (tsPages.TabIndex + 1) + ': ' + IntToStr (tsPages.Tabs.Count);

rmDM.qrElements.Transaction.CommitRetaining;

if (tsPages.TabIndex = -1) or (tsPages.Tabs[tsPages.TabIndex] = 'ΠŸΡƒΡΡ‚ΠΎ') then.

begin.

rmDM.qrElements.Close;

Exit;

end;

StatusBar.Canvas.Rectangle (Left, Top, Left + 100, Bottom);

with rmDM. qrElements do.

begin.

Close;

SQL.Clear;

SQL.Add ('select * from V_ELEMENTS ');

SQL.Add ('where NAMENE = ''' + tsPages. Tabs[tsPages.TabIndex]+ '''');

if mmAvailable.Checked.

then SQL. Add (' and ACTUAL > 0');

if mmNotAvailable.Checked.

then SQL. Add (' and ACTUAL <= 0');

Open;

FieldByName ('IDE').Visible := false;

FieldByName ('NAMENE').Visible := false;

FieldByName ('PRICE').Visible := false;

FieldByName ('VENDOR').Visible := false;

FieldByName ('REPLACEMENT').Visible := false;

FieldByName ('TYPEE').DisplayLabel := 'Вип ЭРИ';

FieldByName ('TYPEE').DisplayWidth := 30;

FieldByName ('PRODUCER').DisplayLabel := 'Π€ΠΈΡ€ΠΌΠ°-ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒ';

FieldByName ('PRODUCER').DisplayWidth := 20;

FieldByName ('PERFORMANCE').DisplayLabel := 'Π’ΠΈΠ΄ исполнСния';

FieldByName ('PERFORMANCE').DisplayWidth := 30;

FieldByName ('EXIST').DisplayLabel := 'Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ';

FieldByName ('EXIST').DisplayWidth := 12;

FieldByName ('RESERVED').DisplayLabel := 'Π—Π°ΠΊΠ°Π·Π°Π½ΠΎ';

FieldByName ('RESERVED').DisplayWidth := 12;

FieldByName ('ACTUAL').DisplayLabel := 'Доступно';

FieldByName ('ACTUAL').DisplayWidth := 12;

FieldByName ('COMMENT').DisplayLabel := 'ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅';

FieldByName ('COMMENT').DisplayWidth := 40;

end;

rmDM.qrElements.Transaction.CommitRetaining;

if mmAll.Checked.

then StatusBar.Panels.Items[3]. Text := ' ' + mmAll. Caption;

StatusBar.Canvas.Pen.Color := clBtnFace;

StatusBar.Canvas.Brush.Color := clBtnFace;

StatusBar.Canvas.Rectangle (Left, Top, Left + 100, Bottom);

end;

//**************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//**************************************//.

procedure TfmStoreView. sbFirstClick (Sender: TObject);

begin.

tsPages.TabIndex := -1;

tsPages.TabIndex := 0;

end;

//******************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//******************************************//.

procedure TfmStoreView. sbLeftClick (Sender: TObject);

begin.

if (tsPages.TabIndex 0) then.

tsPages.SelectNext (false);

end;

//****************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//****************************************//.

procedure TfmStoreView. sbRightClick (Sender: TObject);

begin.

if (tsPages.TabIndex tsPages.Tabs.Count — 1) then.

tsPages.SelectNext (true);

end;

//****************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡŽΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ //.

//****************************************//.

procedure TfmStoreView. sbLastClick (Sender: TObject);

begin.

tsPages.TabIndex := -1;

tsPages.TabIndex := tsPages.Tabs.Count — 1;

end;

//****************************************************************//.

// ИзмСнСниС Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠ°Π½Π΅Π»ΠΈ с ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ закрытия страниц //.

//****************************************************************//.

procedure TfmStoreView. ClosePanelResize (Sender: TObject);

begin.

sbCloseCategory.Left := ClosePanel. Width — 15;

end;

//**************************************************//.

// Π’Ρ‹Π·ΠΎΠ² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ элСмСнта Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ //.

//**************************************************//.

procedure TfmStoreView. dbgTableDblClick (Sender: TObject);

begin.

if rmDM.qrElements.IsEmpty then.

Exit;

fmElementStoreView.ElementView := true;

fmElementStoreView.ShowModal;

end;

//****************************//.

// Π Π°Π·Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//****************************//.

procedure TfmStoreView. FormDestroy (Sender: TObject);

var.

i: integer;

IniFile: TIniFile;

begin.

IniFile := TIniFile. Create (ExtractFilePath (Application.ExeName) + 'IniFiles/Category.ini');

IniFile.EraseSection ('CATEGORY_STORE');

if tsPages. Tabs[0] 'ΠŸΡƒΡΡ‚ΠΎ' then.

for i := 0 to tsPages.Tabs.Count — 1 do.

IniFile.WriteString ('CATEGORY_STORE', 'CAT' + IntToStr (i+1), tsPages. Tabs[i]);

IniFile.Free;

end;

//***************************************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² Ρ€Π΅ΠΆΠΈΠΌ просмотра мСст хранСния //.

//***************************************************//.

procedure TfmStoreView. tbStorePlacesClick (Sender: TObject);

begin.

fmStorePlaceView.ShowModal;

tsPagesClick (Sender);

end;

end.

//ΠœΠΎΠ΄ΡƒΠ»ΡŒ авторСгистрации.

unit Reg;

interface.

uses.

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, IB, IniFiles;

type.

TfmReg = class (TForm).

paBack: TPanel;

Label1: TLabel;

pbReg: TProgressBar;

Label2: TLabel;

timReg: TTimer;

procedure FormCreate (Sender: TObject);

procedure timRegTimer (Sender: TObject);

private.

{ Private declarations }.

public.

end;

var.

fmReg: TfmReg;

implementation.

{$R *.dfm}.

uses DataModule, IBStoredProc, Greet, Math, StrUtils, WinSock;

//************************//.

// ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠ½Π° //.

//************************//.

function GetCurrentUserName: string;

const.

cnMaxUserNameLen = 254;

var.

sUserName: string;

dwUserNameLen: DWORD;

begin.

dwUserNameLen := cnMaxUserNameLen — 1;

SetLength (sUserName, cnMaxUserNameLen);

GetUserName (PChar (sUserName), dwUserNameLen); //Π²Ρ‹Π·ΠΎΠ² API-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

SetLength (sUserName, dwUserNameLen);

Result := sUserName; //Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

end;

//***************************//.

// ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ IP-адрСса //.

//***************************//.

function GetIPAddress (name: string): string;

var.

WSAData: TWSAData;

p: PHostEnt;

begin.

try.

WSAStartup ($ 0101, WSAData);

p := GetHostByName (PChar (name));

Result := inet_ntoa (PInAddr (p.h_addr_list^)^);

except.

Result := '127.0.0.1';

end;

WSACleanup;

end;

//***********************//.

// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//***********************//.

procedure TfmReg. FormCreate (Sender: TObject);

begin.

timReg.Enabled := true;

end;

//***************//.

// Π’Π°ΠΉΠΌΠ΅Ρ€ //.

//***************//.

procedure TfmReg. timRegTimer (Sender: TObject);

var.

MyIni: TIniFile; //Π±Π΅Ρ€Π΅ΠΌ ΠΏΡƒΡ‚ΡŒ ΠΊ Π±Π°Π·Π΅ ΠΈΠ· ini-Ρ„Π°ΠΉΠ»Π°.

KeyFile: TextFile; //Ρ„Π°ΠΉΠ» с RSA-ΠΊΠ»ΡŽΡ‡ΠΎΠΌ.

sPassword: string;

Num: integer;

WinDir: PChar;

List: TStringList;

bExist: boolean;

FileName: string;

HostName: string;

DBPath: string;

begin.

timReg.Destroy;

Randomize;

pbReg.StepIt;

fmReg.Refresh;

if not FileExists (ExtractFilePath (Application.ExeName) + 'IniFilesDB.INI').

then.

begin.

Application.MessageBox ('НС Π½Π°ΠΉΠ΄Π΅Π½ ini-Ρ„Π°ΠΉΠ»','Ошибка!', MB_ICONERROR);

Application.Terminate;

Exit;

end;

MyIni := TIniFile. Create (ExtractFilePath (Application.ExeName) + 'IniFilesDB.INI'); //обращаСмся ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ ini-Ρ„Π°ΠΉΠ»Ρƒ.

HostName := MyIni. ReadString ('OPTIONS','DBHOST','-1');

DBPath := MyIni. ReadString ('OPTIONS','DBPATH','-1');

if HostName = '-1' then.

begin.

Application.MessageBox ('Ошибка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…',.

'Ошибка!', MB_ICONERROR); //Ссли Π½Π΅ Π²Ρ‹ΡˆΠ»ΠΎ — ошибка!

Application.Terminate;

Exit;

end;

DM.dbRimbase.DatabaseName := GetIPAddress (HostName) + ':' + DBPath;

DM.ShowRemindDialog := MyIni. ReadBool ('OPTIONS','ShowRemind', true);

MyIni.Free;

fmReg.pbReg.StepIt; //Π΄Π²ΠΈΠ³Π°Π΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ прогрСсса выполнСния.

DM.dbRimbase.Connected := false; //Π½Π° всякий случай ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ ΠΎΡ‚ Π±Π°Π·Ρ‹.

try //ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ Π±Π°Π·Π΅.

DM.dbRimbase.Open;

except.

GetMem (WinDir, 144);

GetWindowsDirectory (WinDir, 144);

StrCat (WinDir, 'system32driversetcservices');

FileName := StrPas (WinDir);

FreeMem (WinDir, 144);

List:= TStringList. Create;

List.LoadFromFile (FileName);

bExist := false;

for Num :=0 to List. Count — 1 do.

if Pos ('gds_db', List[Num]) 0 then.

begin.

bExist := true;

break;

end;

if not bExist then.

begin.

List.Add ('gds_db 3050/tcp #interbase mlya =)');

List.SaveToFile (FileName);

end;

List.Free;

try.

DM.dbRimBase.Open;

except.

Application.MessageBox ('Ошибка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…',.

'Ошибка!', MB_ICONERROR); //Ссли Π½Π΅ Π²Ρ‹ΡˆΠ»ΠΎ — ошибка!

Application.Terminate;

Exit;

end;

end;

fmReg.pbReg.StepIt;

DM.sLogin := Trim (GetCurrentUserName); //ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ ΠΊΡ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠΏΠΎΠΌ.

//гСнСрация пароля.

if not FileExists (ExtractFilePath (Application.ExeName) + 'IniFileskey.txt').

then.

begin.

Application.MessageBox ('НС Π½Π°ΠΉΠ΄Π΅Π½ ΠΊΠ»ΡŽΡ‡-Ρ„Π°ΠΉΠ»','Ошибка!', MB_ICONERROR);

Application.Terminate;

Exit;

end;

AssignFile (KeyFile, ExtractFilePath (Application.ExeName) + 'IniFileskey.txt'); //ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ.

Reset (KeyFile);

for Num := 1 to (1 + Random (24)) do.

Readln (KeyFile, sPassword);

Num := 1 + Random (47);

sPassword := AnsiMidStr (sPassword, Num, 15);

fmReg.pbReg.StepIt;

with DM. spAutoReg do //Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ рСгистрации.

begin.

ParamByName ('VC_LOGIN').Value := DM. sLogin;

ParamByName ('VC_PASS').Value := sPassword;

ParamByName ('REFRESH_CALL').Value := 0;

Prepare;

ExecProc;

DM.sName := ParamByName ('VC_NAME').AsString; //запомнили ЀИО.

DM.sLogin := ParamByName ('VC_REAL_LOGIN').AsString; //ΠΈ Π»ΠΎΠ³ΠΈΠ½.

DM.nRole := ParamByName ('N_ROLE').AsInteger; //ΠΈ Ρ€ΠΎΠ»ΡŒ.

DM.nLevel := ParamByName ('N_ACL').AsInteger; //ΠΈ ACL.

Close;

end;

fmReg.pbReg.StepIt;

DM.trRimBase.CommitRetaining; //сохраняСм измСнСния Π² Π±Π°Π·Π΅.

fmGreet.Show; //играСмся с Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ.

fmGreet.GreetTimer.Enabled := true;

fmGreet.BringToFront;

fmReg.Hide;

end;

end.

//ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях локальной сСти.

unit ImportUsers;

interface.

uses.

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, ShellAPI, Buttons;

type.

TfmImportUsers = class (TForm).

ListView: TListView;

BottomPanel: TPanel;

buGetData: TButton;

buImportData: TButton;

buExit: TButton;

StatusBar: TStatusBar;

RadioGroup: TRadioGroup;

procedure buExitClick (Sender: TObject);

procedure buGetDataClick (Sender: TObject);

procedure FormCreate (Sender: TObject);

procedure ListViewClick (Sender: TObject);

procedure ListViewColumnClick (Sender: TObject; Column: TListColumn);

procedure buImportDataClick (Sender: TObject);

procedure FormShow (Sender: TObject);

procedure ListViewCompare (Sender: TObject; Item1, Item2: TListItem; Data: Integer; var Compare: Integer);

private.

{ Private declarations }.

public.

UserList: TStringList;

CheckAll: boolean;

ColumnToSort: integer;

NumOfClicks: integer;

procedure GenerateList (var s: string);

procedure GetUserInfo (sLogin: string);

end;

var.

fmImportUsers: TfmImportUsers;

implementation.

uses StrUtils, DataModule;

{$R *.dfm}.

//***********************************//.

// ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ· ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ //.

//***********************************//.

function GetDosOutput (const CommandLine: string;

const WorkDir: string;

var text: String): Boolean;

var.

SA: TSecurityAttributes;

SI: TStartupInfo;

PI: TProcessInformation;

StdOutPipeRead, StdOutPipeWrite: THandle;

WasOK: Boolean;

Buffer: array[0.255] of Char;

BytesRead: Cardinal;

Line: String;

begin.

Application.ProcessMessages;

with SA do.

begin.

nLength := SizeOf (SA);

bInheritHandle := True;

lpSecurityDescriptor := nil;

end;

// create pipe for standard output redirection.

CreatePipe (StdOutPipeRead, // read handle.

StdOutPipeWrite, // write handle.

@SA, // security attributes.

0 // number of bytes reserved for pipe — 0 default.

);

try.

// Make child process use StdOutPipeWrite as standard out,.

// and make sure it does not show on screen.

with SI do.

begin.

FillChar (SI, SizeOf (SI), 0);

cb := SizeOf (SI);

dwFlags := STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES;

wShowWindow := SW_HIDE;

hStdInput := GetStdHandle (STD_INPUT_HANDLE);

hStdOutput := StdOutPipeWrite;

hStdError := StdOutPipeWrite;

end;

// launch the command line compiler.

//WorkDir := 'C:';

result := CreateProcess (.

nil,.

PChar (CommandLine),.

nil,.

nil,.

True,.

0,.

nil,.

PChar (WorkDir),.

SI,.

PI);

CloseHandle (StdOutPipeWrite);

// if process could be created then handle its output.

if result then.

try.

// get all output until dos app finishes.

Line := '';

repeat.

// read block of characters (might contain carriage returns and line feeds).

WasOK := ReadFile (StdOutPipeRead, Buffer, 255, BytesRead, nil);

// has anything been read?

if BytesRead > 0 then.

begin.

// finish buffer to PChar.

Buffer[BytesRead] := #0;

// combine the buffer with the rest of the last run.

Line := Line + Buffer;

end;

until not WasOK or (BytesRead = 0);

// wait for console app to finish (should be already at this point).

WaitForSingleObject (PI.hProcess, INFINITE);

finally.

// Close all remaining handles.

CloseHandle (PI.hThread);

CloseHandle (PI.hProcess);

end;

finally.

text := Line;

CloseHandle (StdOutPipeRead);

end;

end;

//*************************//.

// ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ //.

//*************************//.

procedure DosToWinConvert (var s: string); //ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°.

var.

Old, New: PChar;

begin.

Old := PChar (s);

New := Old;

OemToChar (Old, New);

s := string (New);

end;

//***********************//.

// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//***********************//.

procedure TfmImportUsers. FormCreate (Sender: TObject);

begin.

UserList := TStringList. Create;

end;

//********************//.

// Показ Ρ„ΠΎΡ€ΠΌΡ‹ //.

//********************//.

procedure TfmImportUsers. FormShow (Sender: TObject);

begin.

RadioGroup.ItemIndex := 0;

ListView.Items.Clear;

StatusBar.Panels.Items[0]. Text := ' ВсСго: 0';

StatusBar.Panels.Items[3]. Text := ' ΠžΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ: 0';

ColumnToSort := 1;

NumOfClicks := 1;

CheckAll := false;

buImportData.Enabled := false;

end;

//**************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: Π’Ρ‹Ρ…ΠΎΠ΄ //.

//**************************//.

procedure TfmImportUsers. buExitClick (Sender: TObject);

begin.

fmImportUsers.Close;

end;

//**************************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ свСдСния //.

//**************************************//.

procedure TfmImportUsers. buGetDataClick (Sender: TObject);

var.

s: string;

i, Left, Top, Bottom: integer;

Step: double;

begin.

Top := Round (StatusBar.Height / 4);

Left := StatusBar. Panels[0]. Width + StatusBar. Panels[1]. Width + 5;

Bottom := 3 * Top;

StatusBar.Canvas.Pen.Color := clNavy;

StatusBar.Canvas.Brush.Color := clNavy;

StatusBar.Canvas.Rectangle (Left, Top, Left + 8, Bottom);

StatusBar.Panels.Items[1]. Text := ' Π˜Π΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ свСдСний…';

StatusBar.Panels.Items[0]. Text := ' ΠŸΡƒΡΡ‚ΠΎ';

StatusBar.Panels.Items[3]. Text := '';

buExit.Enabled := false;

buGetData.Enabled := false;

buImportData.Enabled := false;

if RadioGroup. ItemIndex = 0.

then GetDosOutput ('net user','c:', s).

else GetDosOutput ('net user /domain','c:', s);

DosToWinConvert (s);

GenerateList (s);

ListView.Items.BeginUpdate; //Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅ΠΌ отрисовку ListView.

ListView.Items.Clear;

if UserList. Count > 0.

then Step := 130 / UserList. Count;

for i := 0 to UserList. Count — 1 do.

begin.

GetUserInfo (UserList.Strings[i]); //ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.

StatusBar.Canvas.Rectangle (Left, Top, Left + 8 + Round (Step*(i+1)), Bottom);

end;

StatusBar.Panels.Items[1]. Text := '';

ListView.Items.EndUpdate; //Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅ΠΌ отрисовку ListView.

if UserList. Count > 0 then.

with StatusBar. Panels do.

begin.

Items[0]. Text := ' ВсСго: ' + IntToStr (UserList.Count);

Items[1]. Text := '';

Items[3]. Text := ' ΠžΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ: 0';

buImportData.Enabled := true;

end;

buExit.Enabled := true;

buGetData.Enabled := true;

StatusBar.Canvas.Pen.Color := clBtnFace;

StatusBar.Canvas.Brush.Color := clBtnFace;

StatusBar.Canvas.Rectangle (Left, Top, Left + 140, Bottom);

end;

//**********************************//.

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: Π˜ΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ //.

//**********************************//.

procedure TfmImportUsers. buImportDataClick (Sender: TObject);

var.

i, nUpdated, nNew, nType: integer;

s: string;

begin.

DM.spUser.StoredProcName := 'IMPORT_USER_INFO';

nUpdated := 0;

nNew := 0;

StatusBar.Panels.Items[1]. Text := ' Π˜Π΄Π΅Ρ‚ ΠΈΠΌΠΏΠΎΡ€Ρ‚ свСдСний…';

for i := 0 to ListView.Items.Count — 1 do.

if ListView.Items.Item[i]. Checked.

then.

with ListView.Items.Item[i]. SubItems do.

begin.

DM.spUser.Close;

DM.spUser.ParamByName ('VC_LOGIN').Value := Strings[0];

DM.spUser.ParamByName ('VC_NAME').Value := Strings[1];

DM.spUser.ParamByName ('VC_DEP').Value := Strings[2];

DM.spUser.Prepare;

DM.spUser.ExecProc;

nType := DM.spUser.ParamByName ('N_TYPE').AsInteger;

if (nType = 1) then nNew := nNew + 1;

if (nType = 0) then nUpdated := nUpdated + 1;

end;

s := 'Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ записСй: ' + IntToStr (nNew) + #13#10 + 'ОбновлСно записСй: ' + IntToStr (nUpdated);

ShowMessage (s);

StatusBar.Panels.Items[1]. Text := '';

end;

//**************************************//.

// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ //.

//**************************************//.

procedure TfmImportUsers. GenerateList (var s: string);

var.

tmp, line: string;

i, j: integer;

begin.

UserList.Clear;

i := AnsiPos ('—', s);

if i = 0.

then.

begin.

Application.MessageBox ('Π˜ΠΌΠΏΠΎΡ€Ρ‚ свСдСний ΠΈΠ· Π΄Π°Π½Π½ΠΎΠ³ΠΎ источника Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½','Ошибка!', MB_ICONERROR);

Exit;

end;

Delete (s, 1, i);

Delete (s, 1,80);

i := Pos (#10,s);

line := Copy (s, 1, i);

tmp := AnsiLeftStr (s, 8);

Delete (s, 1, i);

while (tmp 'The com') and (tmp 'Команда') do.

begin.

for j := 1 to 3 do.

begin.

if (j < 3) and (line '').

then.

begin.

i := AnsiPos (' ', line);

tmp := Copy (line, 1, i-1);

Delete (line, 1, i);

line := TrimLeft (line);

end.

else tmp := line;

tmp := trim (tmp);

if (tmp '') and (tmp 'Administrator') and (tmp 'Guest').

and (tmp 'Администратор') and (tmp 'Π“ΠΎΡΡ‚ΡŒ') then UserList. Add (tmp);

end;

i := Pos (#10,s);

line := Copy (s, 1, i);

tmp := AnsiLeftStr (s, 7);

Delete (s, 1, i);

end;

end;

//******************************************//.

// ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ //.

//******************************************//.

procedure TfmImportUsers. GetUserInfo (sLogin: string);

var.

i, j: integer;

s, tmp: string;

NewItem: TListItem;

begin.

if RadioGroup. ItemIndex = 0.

then GetDosOutput ('net user ' + sLogin,'c:', s).

else.

begin.

GetDosOutput ('net user ' + sLogin + ' /domain','c:', s);

for j := 1 to 2 do.

begin.

i := Pos (#10,s);

Delete (s, 1, i);

end;

end;

DosToWinConvert (s);

NewItem := ListView.Items.Add;

for j := 0 to 2 do.

begin.

i := Pos (#10,s);

tmp := Copy (s, 1, i);

Delete (s, 1, i);

i := Pos (' ', tmp);

Delete (tmp, 1, i-1);

tmp := Trim (tmp);

if Length (tmp) > 50 then SetLength (tmp, 50);

NewItem.SubItems.Add (tmp);

end;

end;

//***********************//.

// Π©Π΅Π»Ρ‡ΠΎΠΊ ΠΏΠΎ Π³Ρ€ΠΈΠ΄Ρƒ //.

//***********************//.

procedure TfmImportUsers. ListViewClick (Sender: TObject);

var.

i: integer;

chkCount: integer;

begin.

chkCount := 0;

for i := 0 to ListView.Items.Count — 1 do.

if ListView.Items.Item[i]. Checked.

then chkCount := chkCount + 1;

StatusBar.Panels.Items[3]. Text := ' ΠžΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ: ' + IntToStr (chkCount);

end;

//********************************//.

// Π©Π΅Π»Ρ‡ΠΎΠΊ ΠΏΠΎ ΡΡ‚ΠΎΠ»Π±Ρ†Ρƒ Π³Ρ€ΠΈΠ΄Π° //.

//********************************//.

procedure TfmImportUsers. ListViewColumnClick (Sender: TObject;

Column: TListColumn);

var.

i: integer;

begin.

if ListView.Items.Count = 0 then Exit;

if Column. Index = 0.

then.

begin.

CheckAll := not CheckAll;

if CheckAll.

then.

for i := 0 to ListView.Items.Count — 1 do.

ListView.Items.Item[i]. Checked := true.

else.

for i := 0 to ListView.Items.Count — 1 do.

ListView.Items.Item[i]. Checked := false;

if CheckAll.

then StatusBar.Panels.Items[3]. Text := ' ΠžΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ: ' + IntToStr (ListView.Items.Count).

else StatusBar.Panels.Items[3]. Text := ' ΠžΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ: 0';

end.

else.

begin.

ListView.Items.BeginUpdate;

ListView.Columns.Items[1]. Caption := 'Π›ΠΎΠ³ΠΈΠ½';

ListView.Columns.Items[2]. Caption := 'ПолноС имя';

ListView.Columns.Items[3]. Caption := 'ΠŸΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ (ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅)';

if (ColumnToSort = Column. Index) and (NumOfClicks = 1).

then NumOfClicks := 2 else NumOfClicks := 1;

ColumnToSort := Column. Index;

if NumOfClicks = 1.

then Column. Caption := Column. Caption + ' (+)'.

else Column. Caption := Column. Caption + ' (-)';

(Sender as TCustomListView).AlphaSort;

ListView.Items.EndUpdate;

end;

end;

//************************//.

// Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° Π³Ρ€ΠΈΠ΄Π° //.

//************************//.

procedure TfmImportUsers. ListViewCompare (Sender: TObject; Item1,.

Item2: TListItem; Data: Integer; var Compare: Integer);

var.

Index: integer;

begin.

Index := ColumnToSort — 1;

Compare := AnsiCompareText (Item1.SubItems[Index], Item2. SubItems[Index]);

if NumOfClicks = 2 then Compare := (-1) * Compare;

end;

end.

Руководство ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°.

1. ΠΠΠ—ΠΠΠ§Π•ΠΠ˜Π• ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ« ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы «Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ ΠΌΠ°ΠΊΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅» (ПО Π˜ΠŸΠ‘ РиМ) обСспСчиваСт:

  • — Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² Π˜ΠŸΠ‘;
  • — ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ записями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ИПБ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ свСдСниями ΠΎ Π½ΠΈΡ…;
  • — Π°Π²Ρ‚оматичСскоС Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Ρ‡Π½Π΅ΠΉ элСмСнтов ΠΈ Π²Π΅Π΄ΠΎΠΌΠΎΡΡ‚Π΅ΠΉ ΠΏΠΎΠΊΡƒΠΏΠ½Ρ‹Ρ… ΠΈΠ·Π΄Π΅Π»ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΡΠ»Π΅ΠΊΡ‚ричСских схСмах ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΡƒΠ·Π»ΠΎΠ² ΠΈ Π±Π»ΠΎΠΊΠΎΠ² элСктронной Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΡƒΡ€Ρ‹;
  • — Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ ΡƒΡ‡Π΅Ρ‚Π° ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Π½Π° ΡΠΊΠ»Π°Π΄Π΅ ЭРИ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для создания ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… тСхничСских ΠΈΠ·Π΄Π΅Π»ΠΈΠΉ.
  • 2. Π£Π‘Π›ΠžΠ’Π˜Π― Π’Π«ΠŸΠžΠ›ΠΠ•ΠΠ˜Π― ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«

ПО Π˜ΠŸΠ‘ РиМ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… с ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€ΠΎΠΌ Π½Π΅ Π½ΠΈΠΆΠ΅ i486 ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм Windows NT/2000/XP. На ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ установлСны MS Excel 2000/XP/2003 ΠΈ MS Word 2000/XP/2003. SQL Server FireBird 1.5 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн ΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½ Π½Π° Π»ΡŽΠ±ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ локальной сСти.

ΠœΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ трСбования: процСссор с Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотой Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 300 ΠœΠ“Ρ†, ΠžΠ—Π£ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 128 ΠœΠ‘, 500 ΠœΠ‘ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ³ΠΎ дискового пространства, манипулятор «ΠΌΡ‹ΡˆΡŒ».

ПО Π˜ΠŸΠ‘ РиМ, содСрТащСС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² Ρ„Π°ΠΉΠ»Π΅ RimBase. exe, Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ gds32. dll, ΠΏΠ°ΠΏΠΊΡƒ IniFiles с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Category. ini, DB. ini ΠΈ key. txt, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΆΠ΅ΡΡ‚ΠΊΠΎΠΌ дискС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ с Π»ΡŽΠ±Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. Папка с Π‘Π” ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° Π»ΡŽΠ±ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ локальной сСти ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ любоС имя.

  • 3. Π’Π«ΠŸΠžΠ›ΠΠ•ΠΠ˜Π• ΠŸΠ ΠžΠ“Π ΠΠœΠœΠ«
  • 3.1. Запуск ПО ИПБ РиМ

Для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ слСдуСт Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» RimBase. exe, послС Ρ‡Π΅Π³ΠΎ появляСтся ΠΎΠΊΠ½ΠΎ-заставка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π·Π°Ρ‚Π΅ΠΌ ΠΎΠΊΠ½ΠΎ-привСтствиС ΠΈ Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс.

Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° (рис.1) находится мСню, Π²Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°Π΄Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… дСйствий. Под Π³Π»Π°Π²Π½Ρ‹ΠΌ мСню располагаСтся список элСмСнтов, отсортированный ΠΏΠΎ ΠΊΠ°Ρ‚Сгориям.

Π“Π»Π°Π²Π½ΠΎΠ΅ мСню состоит ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄:

— Π€Π°ΠΉΠ».

— Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ ΠΊΠ°Ρ‚Сгориями элСмСнтов;

— ΠŸΠΎΠΈΡΠΊ.

— ΠΏΠΎΠΈΡΠΊ элСмСнтов ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΡŽ;

— ΠŸΡ€Π°Π²ΠΊΠ°.

— Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΡƒΠ·Π»Π°Ρ… ΠΈ Π±Π»ΠΎΠΊΠ°Ρ… элСктронной Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΡƒΡ€Ρ‹;

— Π’ΠΈΠ΄.

— Π²Ρ‹Π±ΠΎΡ€ Ρ€Π΅ΠΆΠΈΠΌΠ° отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ;

— ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

— Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ со ΡΠΏΠΈΡΠΊΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ РиМ ΠΈ Π½Π°ΠΊΠΎΠΏΠ»Π΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ рСсурсов ИПБ;

— Π‘ΠΊΠ»Π°Π΄.

— Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΠΎ Π²Π΅Π΄Π΅Π½ΠΈΡŽ складского ΡƒΡ‡Π΅Ρ‚Π°.

Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠŸΠž ИПБ РиМ.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 1.

МСню «ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅» содСрТит ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

— Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

— Π΄ΠΎΡΡ‚ΡƒΠΏ ΠΊ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌ записям ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ РиМ;

— Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сСссиями.

— Π΄ΠΎΡΡ‚ΡƒΠΏ ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΉΠΊΠ°ΠΌ модуля ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° использования рСсурсов ИПБ РиМ;

— ΠΠ½Π°Π»ΠΈΠ· Π΄Π°Π½Π½Ρ‹Ρ….

— Π°Π½Π°Π»ΠΈΠ· использования рСсурсов ИПБ РиМ.

3.2 Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠŸΠž ИПБ РиМ Для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ слСдуСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π€Π°ΠΉΠ»->Π’Ρ‹Ρ…ΠΎΠ΄» ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ закрытия Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°.

3.3. Π Π°Π±ΠΎΡ‚Π° с Π³Π»Π°Π²Π½Ρ‹ΠΌ мСню ΠŸΠž ИПБ РиМ Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… мСню задаСтся Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌ мСню. Для ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ слСдуСт Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Esc ΠΈΠ»ΠΈ пСрСвСсти курсор ΠΌΡ‹ΡˆΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню.

3.3.1. Команда «ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для управлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΉΠΊΠ°ΠΌΠΈ ΠŸΠž ИПБ РиМ.

3.3.1.1. Команда «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для управлСния ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ записями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠŸΠž ИПБ РиМ. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся ΠΎΠΊΠ½ΠΎ «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ» подсистСмы администрирования (рис. 2).

Окно для управлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 2.

Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части ΠΎΠΊΠ½Π° находится мСню, Π²Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°Π΄Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… дСйствий. Под Π³Π»Π°Π²Π½Ρ‹ΠΌ мСню находится список всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, отсортированный ΠΏΠΎ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠ°ΠΌ «Π’сС» ΠΈ «ΠΠΎΠ²Ρ‹Π΅».

Π“Π»Π°Π²Π½ΠΎΠ΅ мСню этого ΠΎΠΊΠ½Π° состоит ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄:

— Π€Π°ΠΉΠ».

— Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ записями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ;

— ΠŸΠΎΠΈΡΠΊ.

— ΠΏΠΎΠΈΡΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΡŽ;

— ΠŸΡ€Π°Π²ΠΊΠ°.

— Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях;

— Π’ΠΈΠ΄.

— Π²Ρ‹Π±ΠΎΡ€ Ρ€Π΅ΠΆΠΈΠΌΠ° отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ;

МСню «Π€Π°ΠΉΠ»» содСрТит ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

— Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ…

— Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ;

— Π£Π΄Π°Π»ΠΈΡ‚ΡŒ…

— ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ;

— Π˜ΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ….

— ΠΈΠΌΠΏΠΎΡ€Ρ‚ свСдСний ΠΈΠ· Π΄ΠΎΠΌΠ΅Π½Π° локальной сСти ΠΈΠ»ΠΈ с Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°;

— Π‘истСмныС словари.

— ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ систСмными словарями;

— Π’Ρ‹Ρ…ΠΎΠ΄.

— Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌΠΎΠΉ администрирования.

МСню «ΠŸΠΎΠΈΡΠΊ» содСрТит ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

— ΠΠ°ΠΉΡ‚ΠΈ.

— ΠΏΠΎΠΈΡΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким критСриям.

МСню «ΠŸΡ€Π°Π²ΠΊΠ°» содСрТит ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

— Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

— ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅.

МСню «Π’ΠΈΠ΄» содСрТит ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

— Π’Π°Π±Π»ΠΈΡ†Π°.

— ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅.

— Π€ΠΎΡ€ΠΌΠ°.

— ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях Π² Π²ΠΈΠ΄Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.

Π Π°Π±ΠΎΡ‚Π° с Π³Π»Π°Π²Π½Ρ‹ΠΌ мСню подсистСмы администрирования Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню задаСтся Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌ мСню. Для ΠΎΡ‚ΠΌΠ΅Π½Π° Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ слСдуСт Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Esc ΠΈΠ»ΠΈ пСрСвСсти курсор ΠΌΡ‹ΡˆΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню.

Команда «Π€Π°ΠΉΠ»».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ свСдСниями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Команда «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ…».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для добавлСния Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся ΠΎΠΊΠ½ΠΎ «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ввСсти всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ (рис.3).

Окно для добавлСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 3.

Для подтвСрТдСния Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ БОΠ₯РАНИВЬ. Для ΠΎΡ‚ΠΊΠ°Π·Π° — Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΠ’ΠœΠ•ΠΠ ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ закрытия ΠΎΠΊΠ½Π°.

Команда «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ…».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для удалСния Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с Π·Π°ΠΏΡ€ΠΎΡΠΎΠΌ «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ … ?». НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”А ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ этого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ НЕВ позволяСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡ.

Команда «Π˜ΠΌΠΏΠΎΡ€Ρ‚ свСдСний».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях локальной сСти. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π˜ΠΌΠΏΠΎΡ€Ρ‚ свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях» (рис. 4).

Окно ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° свСдСний.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 4.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ свСдСния, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ источник этих свСдСний, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠŸΠžΠ›Π£Π§Π˜Π’Π¬ Π‘Π’Π•Π”Π•ΠΠ˜Π―. ПослС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запроса Π² ΡΠΏΠΈΡΠΊΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ всС Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ. Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π΅Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, свСдСния ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π˜ΠœΠŸΠžΠ Π’Π˜Π ΠžΠ’ΠΠ’Π¬. БвСдСния Π±ΡƒΠ΄ΡƒΡ‚ занСсСны Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° Π½Π°Π΄ΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π’Π«Π₯ΠžΠ” ΠΈΠ»ΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ закрытия ΠΎΠΊΠ½Π°.

Команда «Π‘истСмныС словари».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для управлСния систСмными словарями «Π ΠΎΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ» ΠΈ «ΠšΠΎΠ΄Ρ‹ доступа ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌ». ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ словарями» (рис. 5).

Окно управлСния словарями.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 5.

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π”ΠžΠ‘ΠΠ’Π˜Π’Π¬ ΠΈ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ добавлСния элСмСнта словаря ввСсти Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ (рис. 6), послС Ρ‡Π΅Π³ΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ БОΠ₯РАНИВЬ. ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠžΠ’ΠœΠ•ΠΠ ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ закрытия ΠΎΠΊΠ½Π°. Для удалСния элСмСнта ΠΈΠ· ΡΠ»ΠΎΠ²Π°Ρ€Ρ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π£Π”ΠΠ›Π˜Π’Π¬, для измСнСния наимСнования — ΠΊΠ½ΠΎΠΏΠΊΠ° Π Π•Π”ΠΠšΠ’Π˜Π ΠžΠ’ΠΠ’Π¬. ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ словарями осущСствляСтся Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° управлСния словарями, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π’Π«Π₯ΠžΠ” ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ закрытия ΠΎΠΊΠ½Π°.

Окно добавлСния элСмСнта Π² ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 6.

Команда «ΠŸΠΎΠΈΡΠΊ».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для поиска свСдСний ΠΎΠ± ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… записях ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким критСриям.

Команда «ΠΠ°ΠΉΡ‚ΠΈ».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для поиска свСдСний ΠΎΠ± ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… записях ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ нСскольким критСриям. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ» (рис. 7).

Окно поиска свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 7.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Ρ‹Ρ… ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² поиска выбираСтся ΠΈΠ»ΠΈ отмСняСтся Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΌΡ‹ΡˆΠΈ ΠΏΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ, располоТСнном слСва ΠΎΡ‚ Π½Π°Π·Π²Π°Π½ΠΈΡ критСрия, послС Ρ‡Π΅Π³ΠΎ появляСтся ΠΈΠ»ΠΈ исчСзаСт «Π³Π°Π»ΠΎΡ‡ΠΊΠ°». Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ поиска отмСчаСтся «Π³Π°Π»ΠΎΡ‡ΠΊΠΎΠΉ» Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ критСрия Π½Π°ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π½Π΅Π³ΠΎ активизируСтся ΠΏΠΎΠ»Π΅ для Π²Π²ΠΎΠ΄Π° значСния ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π΅ Π²Ρ‹Π±ΠΎΡ€Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°.

НаТатиС Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΠΠ™Π’Π˜ запускаСт процСсс поиска ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰Π΅ΠΉ значСниям Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π². Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ поиска отобраТаСтся Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ «Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ поиска» ΠΎΠΊΠ½Π° «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ» (рис.8).

Для закрытия ΠΎΠΊΠ½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΠ’ΠœΠ•ΠΠ ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ закрытия ΠΎΠΊΠ½Π°.

Окно с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ поиска.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 8.

Команда «ΠŸΡ€Π°Π²ΠΊΠ°».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для измСнСния свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях.

Команда «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для рСдактирования свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ» (рис. 9).

Окно для рСдактирования свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 9.

ПослС внСсСния всСх Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ БОΠ₯РАНИВЬ. ПослС этого активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с Π·Π°ΠΏΡ€ΠΎΡΠΎΠΌ «Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ свСдСния ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅???». НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”А ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ НЕВ позволяСт ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΡΠΎΡ…ранСния Команда «Π’ΠΈΠ΄».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅ΠΆΠΈΠΌΠ° отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (Π’Π°Π±Π»ΠΈΡ†Π°/Π€ΠΎΡ€ΠΌΠ°).

Команда «Π’Π°Π±Π»ΠΈΡ†Π°».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ свСдСний Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ прСдставлСно Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.

Команда «Π€ΠΎΡ€ΠΌΠ°».

Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ… Π² Π²ΠΈΠ΄Π΅ Ρ„ΠΎΡ€ΠΌΡ‹. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ свСдСний Π² Π²ΠΈΠ΄Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ прСдставлСно Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 10.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π²ΠΈΠ΄Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 10.

Навигация ΠΏΠΎ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹ΠΌ записям осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΎΠΊ, располоТСнных Π² Π»Π΅Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΠ³Π»Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹.

ДСйствиС «ΠΠ°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΡ€Π°Π²Π° доступа ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ». Команда ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для назначСния Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€Π°Π² доступа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»ΠΈ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Ρ‹ Π² ΠΎΠΊΠ½Π΅ «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ» «Π³Π°Π»ΠΎΡ‡ΠΊΠΎΠΉ» (Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹). Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π° ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ активизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «ΠΠ°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа» (рис. 11).

Окно назначСния ΠΏΡ€Π°Π² доступа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковой систСмы.

Рисунок 11.

Π’ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ «Π³Π°Π»ΠΎΡ‡ΠΊΠΎΠΉ» ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ ΠΏΡ€Π°Π² доступа, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ трСбуСтся ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, послС Ρ‡Π΅Π³ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка. Для сохранСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΠΠ—ΠΠΠ§Π˜Π’Π¬, для ΠΎΡ‚ΠΌΠ΅Π½Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ — Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΠ’ΠœΠ•ΠΠ ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ закрытия ΠΎΠΊΠ½Π°.

ДСйствиС «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΠΎΠ³ΠΈΠ½Ρƒ».

Команда выполняСт ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ поиск ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ ΠΈΡ… Π»ΠΎΠ³ΠΈΠ½Ρƒ ΠΏΡƒΡ‚Π΅ΠΌ установки Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° отобраТСния Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° производится ΠΏΡƒΡ‚Π΅ΠΌ измСнСния Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ значСния Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΠΎΠ³ΠΈΠ½Ρƒ».

Π Π°Π±ΠΎΡ‚Π° с ΠΏΠ°Π½Π΅Π»ΡŒΡŽ инструмСнтов ΠΎΠΊΠ½Π° «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ».

Кнопки Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‚ основныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для ΠΈΡ… Π±Ρ‹ΡΡ‚Ρ€ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°.

Команда «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π€Π°ΠΉΠ»->Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ…».

Команда «Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π€Π°ΠΉΠ»->Π£Π΄Π°Π»ΠΈΡ‚ΡŒ…».

Команда «ΠŸΠΎΠΈΡΠΊ».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «ΠŸΠΎΠΈΡΠΊ->Найти».

Команда «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «ΠŸΡ€Π°Π²ΠΊΠ°->Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ».

Команда «Π’Π°Π±Π»ΠΈΡ†Π°».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π’ΠΈΠ΄->Π’Π°Π±Π»ΠΈΡ†Π°».

Команда «Π€ΠΎΡ€ΠΌΠ°».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π’ΠΈΠ΄->Π€ΠΎΡ€ΠΌΠ°».

Команда «ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΡ…».

ΠŸΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΠΎΠΊΠ°Π·Π° ΠΎΠΊΠ½Π°-увСдомлСния ΠΎ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΡ… (рис. 12). Π’ ΡΡ‚ΠΎΠΌ ΠΎΠΊΠ½Π΅ выводится информация ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ Π½ΠΎΠ²Ρ‹Ρ… зарСгистрированных ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΎΡΡŒ ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² ΠΏΠΎΠ΄ΡΠΈΡΡ‚Π΅ΠΌΡƒ администрирования, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ «Π³Π°Π»ΠΎΡ‡ΠΊΠΎΠΉ» ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ настройку. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”А Π±ΡƒΠ΄Π΅Ρ‚ осущСствлСн ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ «ΠΠΎΠ²Ρ‹Π΅». ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ НЕВ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΎΠΊΠ½ΠΎ увСдомлСния.

Команда «Π˜ΠΌΠΏΠΎΡ€Ρ‚ свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π€Π°ΠΉΠ»->Π˜ΠΌΠΏΠΎΡ€Ρ‚ свСдСний».

Команда «Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ словарями».

Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ мСню «Π€Π°ΠΉΠ»->Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ словарями».

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

β„– тСста

ОписаниС тСста.

Π”Π°Ρ‚Π°.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ тСстирования.

ОписаниС ошибки ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ошибки.

1.1.

Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ зарСгистриро-Π²Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

16.04.05.

Выводятся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ сообщСниС ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, привСтствиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹» ΠΈ ΠΎΠΊΠ½ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ.

Π’ ΠΏΡ€ΠΈΠ²Π΅Ρ‚ствии «ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΠΎΠ΄ΠΎΠΆΠ”ΠΈΡ‚Π΅» ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π° Π±ΡƒΠΊΠ²Π° Π”.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ. ВнСсСны измСнСния Π² Ρ„ΠΎΡ€ΠΌΡƒ-привСтствиС.

1.2.

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π€Π°ΠΉΠ» | Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π³ΠΎΡ€ΡΡ‡ΠΈΡ… клавиш Ctrl-N.

17.04.05.

АктивизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

1.3.

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π€Π°ΠΉΠ» | Π£Π΄Π°Π»ΠΈΡ‚ΡŒ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π³ΠΎΡ€ΡΡ‡ΠΈΡ… клавиш Ctrl-Del.

29.04.05.

Если строка Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π° Ρ†Π²Π΅Ρ‚ΠΎΠΌ (Π²Ρ‹Π±Ρ€Π°Π½Π°), Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Confirm (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ «…» «. ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ НЕВ (NO) происходит Π²Ρ‹Π²ΠΎΠ΄ списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”А (YES) происходит ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

  • 1. Если строка Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π° Ρ†Π²Π΅Ρ‚ΠΎΠΌ (Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½Π°), Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковая систСма (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) Access violation at address … in module `RegModule.exe'. Read of address 8».
  • 2. ОбновлСниС ΠΈ Π²Ρ‹Π²ΠΎΠ΄ списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ Π’Π‘Π• происходит построчным стираниСм ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ. Π­Ρ‚ΠΎ Π½Π΅ΡƒΠ΄Π°Ρ‡Π½Ρ‹ΠΉ способ отобраТСния списка.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ.

  • 1. Π‘Π΄Π΅Π»Π°Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΡƒΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС выводится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.
  • 2. Π—Π°ΠΌΠ΅Π½Π΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ обновлСния ΠΈ ΠΎΡ‚обраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

1.4.

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π€Π°ΠΉΠ» | Π˜ΠΌΠΏΠΎΡ€Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π³ΠΎΡ€ΡΡ‡ΠΈΡ… клавиш Ctrl-I.

29.04.05.

АктивизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π˜ΠΌΠΏΠΎΡ€Ρ‚ свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слях».

1.5.

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Поиск| Найти …, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π³ΠΎΡ€ΡΡ‡ΠΈΡ… клавиш Ctrl-F.

29.04.05.

АктивизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ».

1.6.

Π Π°Π±ΠΎΡ‚Π° с Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΠΎΠΊΠ½ΠΎΠΌ «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ «.

29.04.05.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ поиска ΠΏΠΎΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π½Π° Π½ΠΎΠ²ΡƒΡŽ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ «Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ поиска».

Если всС ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ Π½Π΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Ρ‹ ΠΈΠ»ΠΈ значСния для всСх ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ поиска Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² ΡΠ΅Π±Ρ всСх зарСгистрированных ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Для строковых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ строчныС ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹, поиск проводится ΠΏΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΌ символам строк.

  • 1. По Π»ΠΎΠ³ΠΈΠ½Ρƒ ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.
  • 2. По Π€Π˜Πž ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.
  • 3. По Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.
  • 4. По ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.
  • 5. По Ρ€ΠΎΠ»ΠΈ ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.
  • 6. По ΡΠΎΡ‡Π΅Ρ‚Π°Π½ΠΈΡŽ этих ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² ΠΈΡ‰Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

1. По ΠΊΠΎΠ΄Ρƒ доступа поиск ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΡˆΠΈΠ±ΠΊΠ΅.

Dynamic SQL Error.

SQL error code = -104.

Token unknown — line 1, char 35 and.

2. По Π΄Π°Ρ‚Π΅ рСгистрации поиск ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΡˆΠΈΠ±ΠΊΠ΅ conversion error from string «0».

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ.

ВнСсСны измСнСния Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ формирования запроса ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

1.7.

ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠŸΡ€Π°Π²ΠΊΠ° | Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽ-Ρ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов ΠΈ Π³ΠΎΡ€ΡΡ‡ΠΈΡ… клавиш Ctrl-E.

29.04.05.

АктивизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π° строка Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ Π½Π΅Ρ‚, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ» всСгда содСрТит свСдСния ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ строкС списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ слСТСниС Π·Π° Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ строкой Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, Ссли выдСлСния Π½Π΅Ρ‚ — Ρ‚ΠΎΠ³Π΄Π° выводится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.

1.8.

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² Ρ€Π΅ΠΆΠΈΠΌ рСдактирования свСдСний ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ Π΄Π²ΠΎΠΉΠ½Ρ‹ΠΌ Ρ‰Π΅Π»Ρ‡ΠΊΠΎΠΌ ΠΏΠΎ ΡΠΏΠΈΡΠΊΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

29.04.05.

АктивизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ» со ΡΠ²Π΅Π΄Π΅Π½ΠΈΡΠΌΠΈ ΠΎΠ± ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΌΡ‹ΡˆΡŒΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅.

Если ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ строкой списка, Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковая систСма (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) Access violation at address … in module `RegModule.exe'. Read of address 8».

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΠ΅Ρ€ΠΌΠ°Π½Π΅Π½Ρ‚Π½ΠΎΠ΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ — Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎ Π΄Π²ΠΎΠΉΠ½ΠΎΠΌΡƒ Ρ‰Π΅Π»Ρ‡ΠΊΡƒ осущСствляСтся ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΎΠΊΠ½ΠΎ рСдактирования ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

1.9.

Запуск модуля ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ с Ρ€ΠΎΠ»ΡŒΡŽ администратора.

17.04.05.

Выводятся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ сообщСниС ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, привСтствиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π΅ зарСгистрированных Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ссли Π·Π°Π΄Π°Π½ Ρ€Π΅ΠΆΠΈΠΌ увСдомлСния ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ.

1.10.

Π Π°Π±ΠΎΡ‚Π° с ΠΎΠΊΠ½ΠΎΠΌ «Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!».

17.04.05.

НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ «OK» ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ΠΌ «Π’Ρ‹ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ администратором систСмы»; администратор послС Π²Π²ΠΎΠ΄Π° Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ ΠΏΠ°Ρ€ΠΎΠ»Ρ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ. НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠžΡ‚ΠΌΠ΅Π½Π°» Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с Π½Π°Π΄ΠΏΠΈΡΡŒΡŽ «Π’Ρ‹Ρ…ΠΎΠ΄». ПослС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠžΠš происходит Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля.

Π­Ρ‚ΠΎ ΠΎΠΊΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΡƒΠ½ΠΊΡ‚Π° АдминистрированиС Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Rimbase.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ ΠΏΡ€ΠΈ объСдинСнии ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.

1.11.

Π Π°Π±ΠΎΡ‚Π° с Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΠΎΠΊΠ½ΠΎΠΌ «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

  • 20.04.05
  • 29.04.05
  • 1. Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ Π›ΠΎΠ³ΠΈΠ½, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ выводится Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ΠΌ «ΠžΡˆΠΈΠ±ΠΊΠ°! (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) НС ΡƒΠΊΠ°Π·Π°Π½ Π»ΠΎΠ³ΠΈΠ½». ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ OK происходит Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ Π² ΠΎΠΊΠ½ΠΎ «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».
  • 2. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° «Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ доступа» Π½Π΅ ΠΊΠΎΠ½Ρ‚ролируСтся Π½Π° Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ (ΠΌΠΎΠΆΠ½ΠΎ ввСсти любоС Ρ†Π΅Π»ΠΎΠ΅ число 0).
  • 3. НСзаданноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° «Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ доступа» ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ устанавливаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ Π½ΡƒΠ»ΡŽ. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ с Π½Π΅Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ значСниями устанавливаСтся пустыми.
  • 4. Если Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ хотя Π±Ρ‹ ΠΏΠΎΠ»Π΅ Π»ΠΎΠ³ΠΈΠ½Π°, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ выводится Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с Π·Π°ΠΏΡ€ΠΎΡΠΎΠΌ «Information (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ „…“?». ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Π”А (YES) выводится Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ с ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ΠΌ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковая с… (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½». НаТатиС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠžΠš Π² ΡΡ‚ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΡŽ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

ПослС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ НЕВ (NO) происходит Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ Π² ΠΎΠΊΠ½ΠΎ «Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ».

5. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с Π»ΠΎΠ³ΠΈΠ½ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ имССтся Π² Π‘Π”, выводится сообщСниС ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅ «ΠžΡˆΠΈΠ±ΠΊΠ°! (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρƒ…

  • 1. НуТно ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ подсказку ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Π»Π΅Π²ΠΎΠ³ΠΎ столбца (для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ Π² ΡΡ‚ΠΎΠΌ столбцС).
  • 2. МСдлСнно обновляСтся информация ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ.

1.20.

ИспользованиС ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΠΠ—ΠΠΠ§Π˜Π’Π¬ ΠΠžΠ’Π«Π™ Π£Π ΠžΠ’Π•ΠΠ¬ Π”ΠžΠ‘Π’Π£ΠŸΠ Π² Π³Π»Π°Π²Π½ΠΎΠΌ ΠΎΠΊΠ½Π΅ модуля.

30.12.04.

АктивизируСтся Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ «ΠΠ°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа».

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠ½Π°Π΄ΠΏΠΈΡΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ Π½Π° ΠΠΠ—ΠΠΠ§Π˜Π’Π¬ ΠΠžΠ’Π«Π• ΠŸΠ ΠΠ’Π Π”ΠžΠ‘Π’Π£ΠŸΠ ΠžΠ’ΠœΠ•Π§Π•ΠΠΠ«Πœ ΠŸΠžΠ›Π¬Π—ΠžΠ’ΠΠ’Π•Π›Π―Πœ.

Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ.

1.21.

Π Π°Π±ΠΎΡ‚Π° с Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΠΎΠΊΠ½ΠΎΠΌ «ΠΠ°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² доступа».

30.12.04.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ°Ρ… «Π’сС» ΠΈ «ΠΠΎΠ²Ρ‹Π΅» для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π»Π΅Π²ΠΎΠ³ΠΎ столбца, ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ значСния Π΄Π²ΡƒΡ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² послС наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΠΠ—ΠΠΠ§Π˜Π’Π¬.

  • 1.. ΠžΡ‚ΠΊΡƒΠ΄Π° появился Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ «Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ доступа»? Π’ Π‘Π” Π΅ΡΡ‚ΡŒ «ΠšΠΎΠ΄ доступа ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌ».
  • 2. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ «Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ поиска» послС закрытия Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка:

«Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-поисковая систСма (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π°) Cannot focus a disabled or invisible window.».

3. ΠŸΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ тСкста Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΠΎΠ³ΠΈΠ½Ρƒ» Ρ€Π°Π±ΠΎΡ‚Π° с Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΌ ΠΎΠΊΠ½ΠΎΠΌ сопровоТдаСтся ошибкой.

Dynamic SQL Error.

SQL error code = -104.

Token unknown — line 1, char 39 where.

4. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ тСкст.

«ΠŸΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠ°: Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ поля».

Π½Π° Ρ‚Скст.

«Π‘ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΏΡ€Π°Π²Π° доступа Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ».

Ошибки исправлСны.

1.22.

Π Π°Π±ΠΎΡ‚Π° с ΠΏΠΎΠ»Π΅ΠΌ Π²Π²ΠΎΠ΄Π° «ΠŸΠΎΠΈΡΠΊ ΠΏΠΎ Π»ΠΎΠ³ΠΈΠ½Ρƒ».

30.12.04.

На Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ «Π’сС» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ поиск ΠΏΠΎ Π»ΠΎΠ³ΠΈΠ½Ρƒ (прописныС ΠΈ ΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ Π½Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ся).

  • 1. МСдлСнно обновляСтся информация ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΡ….
  • 2. На Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ΅ «ΠΠΎΠ²Ρ‹Π΅» Π²Π²ΠΎΠ΄ символов Π² ΠΏΠΎΠ»Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ

Dynamic SQL Error.

SQL error code = -104.

Token unknown — line 1, char 39 where.

3. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ с Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ Π½Π° Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ содСрТащийся Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° шаблон Π½Π΅ ΡƒΡ‡ΠΈΡ‚ываСтся, ΠΈ ΠΏΠΎΠΈΡΠΊ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся.

Ошибки исправлСны.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ