Құрастырушы: аға оқытушы Алимова Ж. С


procedure TfmMain.DataSource1DataChange(Sender: TObject; Field



жүктеу 3,39 Mb.
Pdf просмотр
бет54/64
Дата20.01.2020
өлшемі3,39 Mb.
#27116
түріБағдарламасы
1   ...   50   51   52   53   54   55   56   57   ...   64

procedure TfmMain.DataSource1DataChange(Sender: TObject; Field:
TField);
begin
  Caption :='Страны мира ('+IntToStr(AdoQuery1.RecordCount)+')';
end;
Бағдарламаны   орындалу   үшін   жіберіңіз   және   де   оның   жұмысын
тексеріңіз.
Тәжірибелік жұмыс №3. QuickReport арқылы есеп беруді құрайық
Есеп берудің мүмкіндіктері мәліметтер базасының көп тараған түріне
жатады.   Шығару   батырмалары   қағазды   документтердің   барлығында
кездеседі.  Delphi  қолданушыға есеп шығару үшін көптеген компоненттерді
ұсынады,  олар  Qreport  бетінде   жиналған   барлық   компоненттер.Осы
тәжірибеде QReport компонентасы арқылы есеп берудің онай түрін құрамыз. 
1. Меню қатарынан FileNew таңдаймыз да шыққан терезеде   Report
пиктограммасын белгілеп,  Ok батырмасын басамыз. 
2. Экранда    «QuickReport1»  жаңа формасы пайда болады.  File,Save
As таңданыз да «MyWorld» папкасында форма үшін модульді unRep атымен
сақтаныз.
3.   unRep  модулінде  implementation  секциясына   төменде   қара
шрифтпен берілген жолды қосыныз:
implementation
uses unMain;
{$R *.DFM}
4. Инспектор объектісінде QuickReport1 формасы үшін енгізу жолын
шертіңіз,   ол   
 
 DataSet  қасиетіне   қажет.  Түсірілетін   тізімде
fmMain.ADOQuery1 мағынасын тандаңыз.
5. Енді  fmMain  формасына   есеп   беру   үшін   жаңа   батырманы
орналастырамыз, ол төмендегі суретте көрсетілген:


Name  қасиетіне  BtnRep  батырманы   орналастырып,  Hint  және
ShowHint қасиеттері арқылы көмекті орналастырамыз.
6. Енді  BtnRep  батырмасын шерткеннен кейін экранда есеп   берудің
формасы шыққандай әрекет ету қажет.    Ол үшін  BtnRep  батырмасы  үшін
төменде көрсетілген OnClick оқиғаны өндеушіні  құрыңыз:
procedure TfmMain.BtnRepClick(Sender: TObject);
begin
    QuickReport1.Preview;
end;
Содан кейін бағдарламаны орындалуы үшін жіберіңіз. Экранда одан әрі
көрсетіліп   отырғандай   хабарлама   пайда   болатыны   бәлкім.   Ол   хабарламаға
жауап ретінде “Yes” батырмасын басыңыз да және жобаны қайта жіберіңіз.
Енді  BtnRep  батырмасын   шерткеннен   кейін   экранда   суретте
көрсетілгендей біздің болашақ есеп беруіміздің формасы шығуы керек:
Есеп берудің өзі әлі жоқ, бірақ формада бірқатар батырмаларды көріп
отырмыз.   Олардың   үстінен   жасырын   көмек   беруші   сөздерді   оқу   үшін
тышқанның курсорын жүргізіңіз.
 Енді Design-time –ға QuickReport1 формасына оралайық.
7. Біздің   алғашқы   есеп   беруімізді   құра   бастайық.  QuickReport1
формасына QRBand
 компонентін орналастырыңыз. 


Қастиет
Қатиеттің мәні
BandType
rbDetail
Name
BandDetail
8. Одан   кейін  BandDetail-ға    QRDBText  екі   компонентін
орналастырыңыз.  Екеуі   үшін    fmMain.ADOQuery1-да  DataSet  қасиетін
орналастырыңыз, ал  DataField  қасиетін біріншісі үшін  Атауында,  екіншісі
үшін Халқында орналастырыңыз.
9. QuickReport1 формасына тышқанның оң жақ батырмасын шерітіңіз
және пайда болған менюден Preview пунктін таңдаңыз.Экранда келесі түрге
жақын форма пайда болуы керек: 
Тәжірибелік жұмыс
Тәжірибелік жұмыс
 №4. 
 №4. 
МҚ  - ында 
МҚ  - ында 
«
«
MyWorld
MyWorld
»
»
 құру
 құру
 
 
Бағдарламаны басқа бір папкаға немесе басқа компьютерге апару керек
деп ойлайық. BDMyWorld.mdb фаылының жолы өзгертілсе, онда сізге дұрыс
емес деген хабар шығады да, бағдарлама жұмыс істемейді.
Бағдарлама өз жұмысын міндетті түрде келесілерден бастауы керек:
a) Файл   мен   МҚ   бағдарламамен   бір   папкада   сақталып   тұрғанын
тексеру.
b) Дұрыс сақталынған болса, жұмысты бастау.
c) Дұрыс   емес   болса,   экранға   МҚ   –   дағы   файылды   іздеу   диалогты
терезесін шығару. 
d) Егер де қолданушы диалогты терезеде МҚ – ның файылын тапса,
онда жұмысты жалғастыруға болады.
e) Егер де файыл табылмаса, онда жұмысты аяқтау.
Осы алгоритмді іске асырып көрейік.
Қадам
Қадам
 1. 
 1. 
МҚ мен динамикалық байланыс
МҚ мен динамикалық байланыс
1. Модульдің   формасында   ауыспалы   жолдық   типті   және   оған
ConnectionString
ConnectionString қасиетіндегі 
AdoQuery
AdoQuery
1
1 компонентасын меншіктейік. 
2. Ол   үшін  Ctrl+C  пернелерүйлесімділігі   арқылы  объектілер
инспекторларының   қасиетін   көшіріп,   содан   кейін   модульдің   формасына
қойыңыз. Жол ұзақ болғандықтан оны бірнеше жолдарға бөлу керек болады.
Нәтижесінде сізде келесідей шығуы керек (қарамен белгіленген):
………………………………………………………. 
var


  fmMain: TfmMain;
  NameSortField:string;Desc:boolean;
Source=C:\___Мои'>  var ConStr:string =
      'Provider=Microsoft.Jet.OLEDB.4.0;Password="";User 
ID=Admin;Data ' +
      'Source=C:\
 
 Мои
 
  
Документы
 
 \  Иванов
 
 \BDMyWorld.mdb;Mode=Share Deny None;Ext' +
      'ended Properties="";Jet OLEDB:System database="";Jet 
OLEDB:Regis' +
      'try Path="";Jet OLEDB:Database Password="";Jet 
OLEDB:Engine Type' +
      '=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global 
Partial Bu' +
      'lk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet 
OLEDB:New Data' +
      'base Password="";Jet OLEDB:Create System Database=False;Jet 
OLED' +
      'B:Encrypt Database=False;Jet OLEDB:Don'#39't Copy Locale on 
Compact=' +
      'False;Jet OLEDB:Compact Without Replica Repair=False;Jet 
OLEDB:S' +
      'FP=False' ;
implementation
uses SplshWnd, unRep;
……………………………………………………….
Мәтіннің жолдары басқадай қосылып тұрулары да мүмкін, ол негізінен
провайдерлерге (сіз, МҚ мен байланысқан) байланысты.
3. МҚ   –   ның   файылында   ұйымдастырылған   жол:  Source=C:\
 
 Мои
Документы
 
 \  Иванов
 
 \BDMyWorld.mdb;
4. Жол Sourceсимволының бірізділігінен басталады нүктелі үтірмен
аяқталады.   Айтылғанды   жаңа   бір   бағдарлама   ішіндегі   бағдарламаны
жасайтын,   жолдардың   қиылысуында   және   оны   басқаға   ауыстыруында
қолданайық.
5. Директивадан   кейін   модуль   формасына   {$R   *.dfm}   төменде
берілген мәтінді енгізіңіз:
……………………………………………………….
{$R *.DFM}
procedure ChangeBasePath(var scon:string;sbase:string);
var j1,j2:integer;
begin
  j1:=Pos('Data Source=',scon);
   if j1>0 then begin
   repeat
     Inc(j1);
    until scon[j1]='=';
    Inc(j1);J2:=J1;
    repeat


жүктеу 3,39 Mb.

Достарыңызбен бөлісу:
1   ...   50   51   52   53   54   55   56   57   ...   64




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау