Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
13/05/2009 19:02
Konu Sahibi
mehmeser
Yorumlar
2
Okunma
3270
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
mehmeser

mehmeser

Aktif Üye
2890
 26
 135
 07/02/2009
5
 -
 
 Ofis 2003
 17/01/2018,17:40
Çözüldü 
Merhaba,

Hazırladığım uygulamada sınıf listesi alırken parametreler frm_SinifListesi formunda verilmeli yoksa rapor hata mesajı veriyor.

Kullanımı kolaylaştırmak için rapora tıklandığında bu formu kontrol etmeli eğer açık değilse formu açmalı ve rapor kapatmalıyım.

Ben raporun açıldığında olayına şunları yazdım:

Kod:
1
2
3
4
5
6
7
8
9
10
11
'EĞER form açık değilse raporu kapat ve formu aç 13.05.2009 çarşamba
If SysCmd(acSysCmdGetObjectState, acForm, "frm_SinifListesi") <> 0 Then
'form açıktır
Else
 MsgBox "Öncelikle sınıf ve şube seçimi yapmalısınız."
 Dim stDocName As String
 Dim stLinkCriteria As String
 stDocName = "frm_SinifListesi"
 DoCmd.OpenForm stDocName, , , stLinkCriteria
 DoCmd.Close acReport, "rpr_SinifListesiResimli"
End If


Fakat rapor kendini kapatmıyor. Hata olarak ise olay anında bu komutu çalıştıramazsınız diyor.

Sadd Nasıl, raporu kapatabilirim ? Teşekkürler.


DoCmd.Close acReport, "rpr_SinifListesiResimli" yerine Cancel = True yazınca rapor da kapandı. Eğer yaptığımda bir hata varsa veya daha iyi bir yöntem varsa bekliyorum.



Ekran Görüntüleri
   

okileturc

okileturc

Onursal Üye
4499
Ok.... VA....
 61
 113
 966
 18/03/2009
464
 İzmir
 
 Ofis 2003
 11/12/2018,23:03
Çözüldü 
Ben ekteki modülü çok faydalı buluyorum
ve çok kullanıyorum

Kod:
1
2
3
4
5
6
7
8
9
10
Function IsLoaded(ByVal strFormName As String) As Boolean
 ' Returns True if the specified form is open in Form view or Datasheet view.
    Dim oAccessObject As AccessObject
    Set oAccessObject = CurrentProject.AllForms(strFormName)
    If oAccessObject.IsLoaded Then
        If oAccessObject.CurrentView <> acCurViewDesign Then
            IsLoaded = True
        End If
    End If
    End Function


Bu kodu, modüller bölümünde yeni kayıt açıp yapıştırın
ve kayıt edin

Sadece bu problemde değil artık nerede isterseniz açık form
kontrolü yaptıktan sonra eyleminizi gerçekleştirebilirsinz

If IsLoaded ( "kontrol_edilecekformadı" ) Then
Eylemi yap
Else
Vazgeç veya başka eylem yap
End If

Kolay gelsin


okileturc, 18-03-2009 tarihinden beri AccessTr.neT üyesidir.

...........
Bilgisayarcı

Bilgisayarcı

Aktif Üye
2
 Belirtilmemiş
 34
 658
 29/01/2008
410
 Antalya
 
 Ofis 2003
 22/04/2019,15:45
Çözüldü 
open da
cancel = true raporu kapatır.
Ayrıca isloaded fonksiyonu ile kontrol etmeniz daha kolay olacaktır. Nerdeyse standart bir fonksiyondur.


Bana işe yarayan bir müdür göster,sana dünyayı yerinden oynatayım.
                                                                                        Descartes




Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Çözüldü Veritabanını Nasıl Tasarlamalıyım. icemeno 4 278 20/05/2019, 03:49
Son Yorum: halily
Çözüldü Openargs İle Form Açıp Filtreleme magmar 4 262 14/05/2019, 17:32
Son Yorum: magmar
Çözüldü Veri Girişi Formu Nasıl Olmalı? icemeno 6 341 11/05/2019, 23:50
Son Yorum: icemeno
Çözüldü 3 Farklı Raporu Bir Pdf Te Toplamak aliyuzen 7 241 09/05/2019, 16:57
Son Yorum: aliyuzen
Çözüldü Saat 17:00Da Otomatik Mail Atsın haziran4 6 300 26/04/2019, 15:52
Son Yorum: ozanakkaya

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2019 MyBB Group.