Centar za edukaciju-BiH



#1 15.02.2012 14:52
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Kako spriječiti zatvaranje forme bez podatka u subformi
Imam formu koja se zove frmOtpremnica i u njoj subformu frmOtpremnicaSub.
U frmOtpremnica upisuje se zaglavlje otpremnice a u subformu stavke otpremnice.
Ponekad se dogodi da korisnik popuni zaglavlje, a ne unese stavke u subformu pa formu zatvori.
Kako spriječiti da se zatvori forma ako nema podataka u subformi ?
Nakon toga u tblOtpremnica imam broj otpremnice (OtprmnicaID) i ostale podatke, a u tblOtpremnicaStavke nemam uneseno ništa za tu otpremnicu.
Pozdrav
Ovaj post je ureden 1 puta. Posljednja izmjena 15.02.2012 14:53 od strane pmiroslav. ↑  ↓

#2 15.02.2012 15:34
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,642


Predmet:Re: Kako spriječiti zatvaranje forme bez podatka u subformi
PreuzmiIzvorni kôd (Visual Basic):
  1. Private Sub Form_Unload(Cancel As Integer)
  2. Dim Rs As Recordset
  3.  
  4. Set Rs = Me.RecordsetClone
  5. If Rs.RecordCount > 0 Then
  6.     Set Rs = [ImeSubforme].Form.RecordsetClone
  7.     If Rs.RecordCount > 0 Then
  8.     Cancel = 0
  9.     Else
  10.     Cancel = 1
  11.     End If
  12. End If
  13. End Sub

Ovo ce ti raditi ako ti je glabna forma na dataentry inace neces moci izaci nikako kada udjes dok nesto ne napises.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#3 16.02.2012 08:16
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Kako spriječiti zatvaranje forme bez podatka u subformi
Hvala na oveme. A ja sam još malo doradio:
PreuzmiIzvorni kôd (vbnet):
  1. Private Sub Form_Unload(Cancel As Integer)
  2. Dim Rs As Recordset
  3. Set Rs = Me.RecordsetClone
  4. If Rs.RecordCount > 0 Then
  5.     Set Rs = [frmOtpremnicaSub].Form.RecordsetClone
  6.     If Rs.RecordCount > 0 Then
  7.     Cancel = 0
  8.     Else
  9. If MsgBox("Niste upisali stavke racuna." _
  10. & vbCrLf & "Za brisanje pritisnite 'OK'" _
  11. & vbCrLf & "Za nastavak rada pritisnite 'Cancel'", vbOKCancel, "GRESKA!") = vbOK Then
  12.  
  13.     DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
  14.     DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
  15.     GoTo Kraj
  16. Else
  17. DoCmd.CancelEvent
  18. End If
  19.     Cancel = 1
  20.     End If
  21. End If
  22. Kraj:
  23. End Sub

Pozdrav
↑  ↓

Stranice (1):1


Sva vremena su GMT +01:00. Trenutno vrijeme: 12: 42 am.