Bosna i Hercegovina



#1 15.02.2012-14:52
pmiroslav Offline
Moderator
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,339


Subject: 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 komentar je mijenjan 1 puta. zadnja izmjena 15.02.2012-14:53 od strane pmiroslav. ↑  ↓

#2 15.02.2012-15:34
zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,416


Subject: Re: Kako spriječiti zatvaranje forme bez podatka u subformi
DownloadIzvorni kod (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.
Pozdrav
↑  ↓

#3 16.02.2012-08:16
pmiroslav Offline
Moderator
Registrovan/a od: 02.02.2009-10:32
Komentari: 1,339


Subject: Re: Kako spriječiti zatvaranje forme bez podatka u subformi
Hvala na oveme. A ja sam još malo doradio:
DownloadIzvorni kod (vb.net):
  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


All times are GMT +01:00. Current time: 21.09.2017-18:48.