• RaveReport komponentalaridan foydalanib hisobotlar yaratish
  • Hisobot  tugmasi bosilganda so’rov oynasi hosil qilish.  void




    Download 1,55 Mb.
    Pdf ko'rish
    bet19/24
    Sana10.06.2024
    Hajmi1,55 Mb.
    #262343
    1   ...   16   17   18   19   20   21   22   23   24
    Bog'liq
    maruza3

    Hisobot 
    tugmasi bosilganda so’rov oynasi hosil qilish. 
    void
    __
    fastcall
    TForm1::Button4Click(TObject *Sender) 

    // Hisobot tugmasi bosilganda 
    String str; 
    TForm *frm; 
    frm = 
    new
    TForm(Application); 
    frm->BorderStyle = bsDialog; 
    frm->Height = 200; 
    frm->Width = 300; 
    frm->Position = poScreenCenter; 
    frm->Caption = "Hisobot turini tanlash..."; 
    frm->Font->Size = 14; 
    TRadioButton *rbPage = 
    new
    TRadioButton(frm); 
    rbPage->Caption = "Alohida ko'rinishi"; 
    rbPage->Parent = frm; 
    rbPage->Left = 50; 
    rbPage->Top = 30; 
    rbPage->Width = 200; 
    TRadioButton *rbTable = 
    new
    TRadioButton(frm); 
    rbTable->Caption = "Jadval ko'rinishi"; 
    rbTable->Parent = frm; 
    rbTable->Left = 50; 
    rbTable->Top = 30 + rbPage->Height + 30; 
    rbTable->Width = 200; 
    TBitBtn *myBtnOK = 
    new
    TBitBtn(frm); 
    myBtnOK->Parent = frm; 
    myBtnOK->Kind = bkOK; 
    myBtnOK->Top = rbTable->Top + rbTable->Height+30; 
    myBtnOK->Width = 120; 
    myBtnOK->Height = 40; 
    myBtnOK->Left = 90; 
    if
    (frm->ShowModal() == mrOk) 

    str = ExtractFilePath(Application->ExeName); 


    101 
    if
    (rbPage->Checked) 
    str = str+"\\report.fr3"; 
    else 
    str = str+"\\report1.fr3"; 
    frxReport1->LoadFromFile(str); 
    frxReport1->ShowReport(); 

    delete
    myBtnOK; 
    delete
    rbPage; 
    delete
    rbTable; 
    delete
    frm; 

    Yuqoridagi listingning kodi bajarilishi natijasi quyidagi – rasmlarda 
    keltirilgan. 
    Hisobot turini tanlash 
    oynasi 
    Hisobotning oddiy 
    ko’rinishi 
    Hisobotning jadval 
    ko’rinishi 
    RaveReport komponentalaridan foydalanib hisobotlar yaratish 
    RaveReport 
    komponentalar 
    palitrasi 
    komponentalari 
    C++Builder 
    dasturining barcha versiyalarida mavjud bo’lib, u bilan ishlash boshqa hisobot 
    komponentalari bilan ishlash anchagina qiyinroq hisoblanadi, ammo QReport 
    komponentalarida qila olinmaydigan ishlarni qilsa bo’ladi. Foydalanuvchi 
    tomonidan 
    yaratilgan 
    dasturga 
    hisobot 
    tayyorlashda 
    RaveReport 
    komponentalaridan foydalanish uchun dasturlash muhitining komponentalar 
    palitrasidagi Rave bo’limidan foydalanamiz. Quyida Rave komponentalar 
    to’plamining asosiy komponentalari keltirilgan. 

    TRvProject – bu komponenta yordamida hisobotlar olish fayllari yaratiladi; 

    TRvSystem – bu komponeta yordamida hisobot fayli bilan foydalanuvchi 
    tomonidan yaratilgan dasturni o’rtasidagi aloqani tiklash uchun hizmat qiladi; 

    TRvDataSetConnection – bu komponenta yordamida hisobot fayliga 
    ma’lumotlar omborini DataSet yordamida ulash; 

    TRvRenderPDF – bu komponenta yordamida olingan hisobot faylini PDF 
    ko’rinishga o’tkazish; 

    TRvRenderRTF – bu komponenta yordamida olingan hisobot faylini RTF 
    ko’rinishga o’tkazish; 

    TRvRenderHTML – bu komponenta yordamida olingan hisobot faylini 
    HTML ko’rinishga o’tkazish. 


    102 
    RaveReport komponentalar palitrasidagi komponentalarni 13.3.1–rasmda 
    keltirilgan oynadagi formaga o’rnatamiz.
    Foydalanuvchi interfeysi (RaveReport komponentalari) 
    RaveReport komponentasi yordamida hisobot olish uchun komponentalar 
    bir–biriga bog’lanishi kerak bo’ladi. Birinchi navbatda hisobot olishda 
    ma’lumotlar bazasini hisobot komponentasiga ulanadi. Bu komponentalar 
    foydalanuvchi 
    tomonidan 
    yaratilayotgan 
    formadagi 
    ADOTable1 
    va 
    RvDataSetConnection1 komponentalari hisoblanadi. RvDataSetConnection1 
    komponentasining DataSet hususiyatiga ADOTable1 komponentasi nomi 
    yoziladi. Bu ikki komponentalar bog’langandan so’ng RvProject1 va RvSystem1 
    komponentalari o’zaro bog’lanadi, ya’ni RvProject1 komponentasining Engine 
    hususiyatiga RvSystem1 nomi yoziladi. Bu bog’lanishlar amalga oishirilganidan 
    so’ng hisobotning ko’rinishini tayyorlab olishimiz kerak bo’ladi. Hisobotning 
    ko’rinishini tayyorlash uchun 14.3.1–rasmda ko’rsatilgan formadagi RvProject1 
    komponentasining ustida sichqonchaning o’ng tugmasini chertamiz, hosil bo’lgan 
    oqib chiquvchi menyudan Rave Visual Designer… bandini tanlaymiz. SHunda 
    14.3.2–rasmdagi oyna hosil bo’ladi. 


    103 
    RaveReport hisobotlarni yaratish oynasi 
    Rasmda keltirilgan oynadagi Page1 bo’limiga yuqorida joylashgan Report 
    komponentalar palitrasidagi Region komponentasini joylashtiriladi. Region 
    komponentasining ichiga Report komponentalar palitrasidagi DataBand 
    komponentasini joylashtiriladi. Dasturdagi ma’lumotlar ombori bilan bog’lash 
    uchun File menyusidan New Data Object bandi tanlanadi, shunda 14.3.3–
    rasmdagi oyna hosil bo’ladi. Bu oynadan Direct Data View bandi tanlanadi va Next 
    tugmasi bosiladi. Hosil bo’lgan oynadagi Active Data Connections bo’limidan 
    kerakli ulanish tanlanadi va Finish tugmasi bosiladi (14.3.4–rasm). Ma’lumotlar 
    ombori hisobotga bog’langanidan so’ng joylashtirilgan komponentalar bilan 
    ma’lumotlar ombori bog’lanadi. DataBand komponentasining DataView 
    hususiyatiga DataView1 deb yoziladi. Bu jarayon har bir yozuvni alohida – alohida 
    ko’rsatib berish uchun qo’llaniladi. Har bir yozuvdagi maydonlarni ko’rsatib 
    berish uchun Standard va Report komponentalar palitrasidagi Text va DataText 
    komponentalaridan 
    foydalaniladi. 
    Bu 
    komponentalarni 
    DataBand1 
    komponentasining ichiga rasmda ko’rsatilganidek joylashtiriladi. DataText 
    komponentalarning har birini DataView hususiyatiga DataView1 ni yoziladi va 
    har bir komponentaning DataField hususiyatiga ma’lumotlar bazasidagi 
    yozuvlarning maydonlari tanlanadi.
    Ma’lumotlar oqimi turini oynasi 
    Faol ma’lumotlar omborini tanlash 
    oynasi 


    104 
    Hisobot faylini hosil qilish 
    Hisobot fayli saqlanadi. Hisobotni ko’rish uchun 14.3.1–rasmdagi Hisobot 
    tugmasiga quyidagi kod yoziladi. 
    void __fastcall TForm1::Button4Click(TObject *Sender) 

    String str; 
    str = ExtractFilePath(Application->ExeName); 
    str = str+"\\oddiy.rav"; 
    RvProject1->ProjectFile = str; 
    RvSystem1->DefaultDest = rdPreview; 
    RvProject1->Execute(); 

    Bu koddan tashqari RaveReport bilan ishlayotgan vaqtda formaning 
    yaratilish jarayonida RaveReport komponentalarining ba’zi bir buyruqlari 
    yozilishi kerak bo’ladi. Bu buyruqlar formaning OnCreate xodisasiga yoziladi. 
    void __fastcall TForm1::FormCreate(TObject *Sender) 

    RvProject1->SelectReport("Report1",true); 
    RvProject1->Open(); 

    Hisobot tugmasi bosilganida 14.3.6–rasmdagi oyna hosil bo’ladi. 


    105 
    Hisobot faylini hosil qilish 
    Hisobot faylini saqlash tugmasi orqali foydalanuvchi ixtiyoriy formatda 
    saqlashi mumkin. Bu formatlarga misol sifatida HTML, PDFlarni keltirishimiz 
    mumkin. 

    Download 1,55 Mb.
    1   ...   16   17   18   19   20   21   22   23   24




    Download 1,55 Mb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Hisobot  tugmasi bosilganda so’rov oynasi hosil qilish.  void

    Download 1,55 Mb.
    Pdf ko'rish