اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

مساعدة في كود لالزام ادخال بيانات في حقل نموذج


Radwan0
إذهب إلى أفضل إجابة Solved by أبوبسمله,

الردود الموصى بها

السلام عليكم احبتي

 

هل هنالك كود يجبر الموظف من ملئ حقل نموذج وفي حال لا يتم فان السجل لا يحفظ ؟ 

 

اعلم انه بالامكان من خلال اعدادات الحقل في الجدول لكن الامر ادى الى حدوث اعطاب بالقاعدة

 

لهالسبب استفسر ان كان هنالك كود يجبر الموظف على ادخال المعلومه في حقل معين وفي حال لا فان البيانات لا تحفظ 

رابط هذا التعليق
شارك

السلام عليكم

نعم يمكن ذلك لحقل معين   او لجميع الحقول  عن طريق الكود في النموذج او الكود في وحده نمطية 

اتمنى ان ترفق لنا ملفك او مثال لغرض التعديل 

ارفقت لك مثالين اتمنى ان يكون المطلوب

تحياتي 

عدم ترك حقل فارغ.rar Null.rar

تم تعديل بواسطه Khalid Jnb
  • Like 1
رابط هذا التعليق
شارك

26 دقائق مضت, Khalid Jnb said:

السلام عليكم

نعم يمكن ذلك لحقل معين   او لجميع الحقول  عن طريق الكود في النموذج او الكود في وحده نمطية 

اتمنى ان ترفق لنا ملفك او مثال لغرض التعديل 

ارفقت لك مثالين اتمنى ان يكون المطلوب

تحياتي 

عدم ترك حقل فارغ.rar 880.9 kB · 1 تنزيلات Null.rar 16.99 kB · 2 تنزيلات

للاسف ياغالي لم افلح في معرفة الكود

 

مرفق قاعدة بيانات

Database11.accdb

رابط هذا التعليق
شارك

هلا اخي

يمكنك من التحكم التام بالادخال عن طريق العمليات Transactions بحيث تتم العملية ككل CommitTrans او تفشل ككل Rollback

عملت لك مثال مرفق بحيث اذا لم بدخل الاسم تلغى عملية الاضافة

Private Sub btnSave_Click()

Dim wrkCurrent As DAO.Workspace
Dim rstStudent As DAO.Recordset

On Error GoTo ErrorHandler
 
   Set wrkCurrent = DBEngine.Workspaces(0)
   Set rstStudent = CurrentDb.OpenRecordset("Student")
 
   wrkCurrent.BeginTrans
   
   rstStudent.AddNew
   
   rstStudent("Name") = Me.txtName.Value
   rstStudent("age") = Me.txtAge.Value
   
   rstStudent.Update
    
   If IsNull(Me.txtName) Or IsEmpty(Me.txtName) Then
      wrkCurrent.Rollback
   Else
      wrkCurrent.CommitTrans
   End If
 
   rstStudent.Close
   wrkCurrent.Close
 
   Set rstStudent = Nothing
   Set wrkCurrent = Nothing
 
   Exit Sub
 
ErrorHandler:
   MsgBox "Error #: " & Err.Number & vbCrLf & vbCrLf & Err.Description

End Sub

 

Test.accdb

  • Like 1
رابط هذا التعليق
شارك

السلام عليكم اخى @radwan1991

مشاركه مع اخوانى واساتذتى جزاهم الله خيرا

جرب الكود التالى جزاها الله خيرا ام عهود

اذا كان نموذجك لا يوجد به كومبوبوكس ازل الجزء من الكود Or ctlTextbox.ControlType = acComboBox

 For Each ctlTextbox In Me.Controls
   If ctlTextbox.ControlType = acTextBox Or ctlTextbox.ControlType = acComboBox Then
   If IsNull(ctlTextbox) Then
   MsgBox "لقد تركت أحد مربعات النص فارغاً"
   ctlTextbox.SetFocus
   Exit Sub
   End If
   End If
   Next ctlTextbox
   MsgBox "جميع مربعات النص بها قيم "
On Error GoTo Erra

    Dim stDocName As String

    stDocName = "t1"
    DoCmd.OpenReport stDocName, acNormal

Exit_Erra:
    Exit Sub

Erra:
    MsgBox Err.Description
    Resume Exit_Erra

 

Database11(2).accdb

تم تعديل بواسطه أحمد الفلاحجى
لارفاق المثال وتعديل الكود لتجاوز اول كومبو بنموذج الاضافه
  • Like 2
  • Thanks 1
رابط هذا التعليق
شارك

منذ ساعه, radwan1991 said:

شكرا على مجهودك اخي ابو تراب

لكن للاسف زر ال save لا يعمل .. بما معناه تركت حقل فارغ ونجحت في حفظ السجل 

المثال كان لاختبار حقل الاسم فقط  Name اذا اردت جميع الحقول فمثال الاخ العزيز @احمد الفلاحجي مميز لفحص جميع الحقول

  • Thanks 2
رابط هذا التعليق
شارك

6 دقائق مضت, ابو تراب said:

المثال كان لاختبار حقل الاسم فقط  Name اذا اردت جميع الحقول فمثال الاخ العزيز @احمد الفلاحجي مميز لفحص جميع الحقول

اذا كان احد يستحق الثناء فهو انتم اخوانى واساتذتى جزاكم الله خيرا :fff:

فلست سوى طالب علم اتعلم منكم بارك الله فيكم

  • Like 2
رابط هذا التعليق
شارك

8 ساعات مضت, أحمد الفلاحجى said:

السلام عليكم اخى @radwan1991

مشاركه مع اخوانى واساتذتى جزاهم الله خيرا

جرب الكود التالى جزاها الله خيرا ام عهود

اذا كان نموذجك لا يوجد به كومبوبوكس ازل الجزء من الكود Or ctlTextbox.ControlType = acComboBox


 For Each ctlTextbox In Me.Controls
   If ctlTextbox.ControlType = acTextBox Or ctlTextbox.ControlType = acComboBox Then
   If IsNull(ctlTextbox) Then
   MsgBox "لقد تركت أحد مربعات النص فارغاً"
   ctlTextbox.SetFocus
   Exit Sub
   End If
   End If
   Next ctlTextbox
   MsgBox "جميع مربعات النص بها قيم "
On Error GoTo Erra

    Dim stDocName As String

    stDocName = "t1"
    DoCmd.OpenReport stDocName, acNormal

Exit_Erra:
    Exit Sub

Erra:
    MsgBox Err.Description
    Resume Exit_Erra

 

Database11(2).accdb 928 kB · 1 تنزيلات

الف الف الف الف شكر ياغالي بارك الله فيك

 

هذا ما اريده فعلا

 

وسؤال بسيط -- عند انتهاء عملية ملئ البيانات ينقلني الى تقرير stDocName = "t1"
    DoCmd.OpenReport stDocName, acNormal

 

هل بالامكان حذف هذا السطر ؟

رابط هذا التعليق
شارك

  • أفضل إجابة

الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا

بامكانك حذف هذه الاسطر اخى @radwan1991

   MsgBox "جميع مربعات النص بها قيم "
On Error GoTo Erra

    Dim stDocName As String

    stDocName = "t1"
    DoCmd.OpenReport stDocName, acNormal

Exit_Erra:
    Exit Sub

Erra:
    MsgBox Err.Description
    Resume Exit_Erra

بالتوفيق ان شاء الله

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information