اذهب الي المحتوي
أوفيسنا

ربط قاعدة بيانات اكسس بال sql server وظهور خطاء بنموذج التحديث


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

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

Option Compare Database

Private Sub Form_Load()
Dim Udate1 As Variant
Dim Udate2 As Variant
Dim Uyear1 As Variant
Dim Uyear2 As Variant
Udate1 = DLookup("tmonth", "tblmonth")
Udate2 = Format(Now(), "MM")
Uyear1 = DLookup("tyear", "tblmonth")
Uyear2 = Format(Now(), "yyyy")
Dim db As DAO.Database
Dim rs As DAO.Recordset2
Set db = CurrentDb
Set rs = db.OpenRecordset("الاسماء", dbOpenTable)

If Udate1 <> Udate2 Then
With rs
.MoveFirst
Do While rs.EOF = False
.Edit
.Fields(7) = .Fields(7) + 3
.Update
.MoveNext
Loop
End With
DoCmd.RunSQL ("update tblmonth set tblmonth.tmonth='" & Udate2 & "'")
MsgBox "تم اضافة رصيد"
End If

If Uyear1 <> Uyear2 Then
With rs
.MoveFirst
Do While rs.EOF = False
.Edit
.Fields(7) = .Fields(7) + 36
.Update
.MoveNext
Loop
End With
DoCmd.RunSQL ("update tblmonth set tblmonth.tyear='" & Uyear2 & "'")
MsgBox "تم اضافة رصيد"

End If

Me.T1 = "التحديث لغاية 1/" & Udate1 + 1 & "/" & Uyear2
End Sub

1111111.jpg

3333333333.jpg

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

حياك الله اخي الكريم

الموضوع مش واضح تماما ولكن بنظرتي الاولية لاحظت لك ملاحظتين يمكن تحل المشكلة

1. انت عرفت rs من نوع recordset2  وانت لست بحاجة لهذا النوع فضعه من نوع recordset لتصبح الجملة 

Dim rs As DAO.Recordset

ثم جرب واذا لم تضبط فاليك الماحظة الثانية

2. فتحت الريكورد ست من نوع جدول واعتقد المفروض من نوع dbOpenDynaset لتصبح الجملة

Set rs = db.OpenRecordset("الاسماء", dbOpenDynaset)

بالتوفيق

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

بارك الله فيك جربت الاثنين ولكن نفس الشئ 

في 9/30/2016 at 07:57, رمهان said:

حياك الله اخي الكريم

الموضوع مش واضح تماما ولكن بنظرتي الاولية لاحظت لك ملاحظتين يمكن تحل المشكلة

1. انت عرفت rs من نوع recordset2  وانت لست بحاجة لهذا النوع فضعه من نوع recordset لتصبح الجملة 


Dim rs As DAO.Recordset

ثم جرب واذا لم تضبط فاليك الماحظة الثانية

2. فتحت الريكورد ست من نوع جدول واعتقد المفروض من نوع dbOpenDynaset لتصبح الجملة


Set rs = db.OpenRecordset("الاسماء", dbOpenDynaset)

بالتوفيق

نفس المشكلة ونفس الخطاء علما قبل تحويل القاعده الى sql server لاتوجد مشاكل بالكود ولكن ظهر بعد تحويل القاعده الى sql server

1111111111111.jpg

تم تعديل بواسطه امير الكناني
رابط هذا التعليق
شارك

السؤال الان

هل انت عامل ربط للجداول بالسيرفر وظاهرة الجداول المربوطة امامك وتستطيع فتح الجدول يدويا وتظهر معاك السجلات ؟

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

في 9/30/2016 at 22:24, رمهان said:

السؤال الان

هل انت عامل ربط للجداول بالسيرفر وظاهرة الجداول المربوطة امامك وتستطيع فتح الجدول يدويا وتظهر معاك السجلات ؟

نعم اخي 

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

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