• 0
fawaz2004

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

سؤال

المطلوب : احبتي  عند عمل  مستخدين  او  اكثر  على  البرنامج  يحدث  مشكلة  ,وقت  اضافة  سجل  جديد  يحدث  ان  يعطية  نفس  رقم  الفاتورة  الذي  اعطاة  للمستخدم  الاول  كيفية  حل  هذة  المشكلة  مع  العلم  رقم  الفاتورة  يتغير  اوتماتيكي مرفق  البرنامج مع  القاعدة  

 

db.rar

تم تعديل بواسطه fawaz2004
اضافة المثال
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

6 إجابة على هذا السؤال .

  • 0

الملف مش بيفتح معايا

No archives found

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

وعليكم  السلام  عزيزي  مرفق  الملف  الان  يعمل  

rtt55.mdb

تم تعديل بواسطه fawaz2004
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

إذا هل تقصد بالمستخدم العميل

فقد أضفت الدالة التالية إلى الوحدة النمطية back 

 

 

 Public Function Get_last_invoice() As Long
Dim dbs As Database, rst As Recordset, strsql As String
Get_last_invoice = 0
Set dbs = CurrentDb
strsql = " SELECT ÌÏæá1.*"
strsql = strsql & " FROM ÌÏæá1"
strsql = strsql & " ORDER BY ÌÏæá1.[ÑÞã ÇáÝÇÊæÑÉ];"
Set rst = dbs.OpenRecordset(strsql)
rst.MoveLast
Get_last_invoice = rst![ÑÞã ÇáÝÇÊæÑÉ]
End Function

 

 

ثم غيرت فى الزر 1071 ليصبح

 

Private Sub أمر1071_Click()
On Error GoTo Err_أمر1071_Click

Me![اجمالي_السعر] = Me![نص6]

 

 
DoCmd.GoToRecord , , acNewRec
  '  Dim InvNum As Long
   ' DoCmd.GoToRecord , , acLast
  ' InvNum = Me.[رقم الفاتورة]
  '  DoCmd.GoToRecord , , acNewRec
Me.رقم_الفاتورة.SetFocus
    Me.[رقم الفاتورة] = Get_last_invoice + 1

 

    Dim stDocName As String
   Dim stLinkCriteria As String

 

    stDocName = "Customers"
    DoCmd.OpenForm stDocName, , , stLinkCriteria

 

Exit_أمر1071_Click:
    Exit Sub

 

Err_أمر1071_Click:
    MsgBox err.Description
    Resume Exit_أمر1071_Click
    
End Sub

 

وقد اضفت قائمة تنقل فى النموذج Customers

 

 

 

 

rtt55.rar

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اشكرك  عزيزي  على  مرورك  ولكن  المقصود  بلمستخدم  هو  مدخل  البيانات  عندي  مدخاين  اثين للبيانات على  البرنامج  مشبكوك  بشبكة  عند  الادخال في  نفس  الوقت  تحصل  مشكلة  بان  رقم  الفاتورة  تظهر  عند  الاثين  نفس  رقم  الفاتورة  مما  يحدذذث  مشكلة  بعدم  قبول  الفاتورة  والمفروض  يعطي  البرنامج  لكل  منهما  رقم  مختلف  عن  الثاني  

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

هذا صعب ولن يحدث إلا فى حالة أنهما ضغطا  على زر الإضافة فى نفس الوقت

ولكن حتى فى هذه الحالة قد يكون هناك حل

مثلاً يجب أولاً أن يكون لديك دالة تعود بالمستخدم الحالى لقاعدة البيانات ولتكن الدالة باسم current_user

بعدها فى زر  1071 الخاص بالإضافة يكون كود تحديد رقم الفاتورة بشكل كالشكل التالي

if current_user=name1 then

  Me.[رقم الفاتورة] = Get_last_invoice + 1

else

Me.[رقم الفاتورة] = Get_last_invoice + 2

end if

 

تم تعديل بواسطه الفهرى
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اعتذر لأن سطر تحديد رقم الفاتورة صعب فى الكتابة  والمحاذاة لأنه يحتوى على نص عربى

لكن ارجو ان تكون الفكرة قد وصلت

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .