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

kanory

الخبراء
  • Posts

    2357
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    139

كل منشورات العضو kanory

  1. لاضافة جدول في قاعدة خارجية استخدم الاتي <<<<<<<>>>>>>>> Dim msgstyle Dim strSQL1 As String Dim b As New Access.Application Set b = CreateObject("Access.Application") b.OpenCurrentDatabase (Me.txtPath) strSQL1 = "CREATE TABLE [kanory] ([ProductID] AUTOINCREMENT,[ProductName] TEXT(40) NOT NULL,[SupplierID] LONG,[BirthDate] DATETIME,[CategoryID] LONG,[QuantityPerUnit] TEXT(20),[UnitPrice] CURRENCY,[UnitsInStock] SMALLINT,[UnitsOnOrder] SMALLINT,[ReorderLevel] SMALLINT,[Discontinued] BIT NOT NULL,CONSTRAINT [PrimaryKey] PRIMARY KEY ([ProductID]));" b.DoCmd.RunSQL strSQL1 MsgBox Space(20) & "تم انشاء الجدول Kanory بنجاح.." & Space(20), msgstyle, "للمعلومية" Set b = Nothing اما لتعديل خصائص حقل موجود في الجدول استخدم التالي مع ملاحظة : ان اختلاف البيانات قي الحقل اذا كانت هنا بيانات ممكن تفقدها :::: <<<<<>>>>>>> Dim msgstyle Dim b As DAO.Database Dim strFieldName As String Set b = DBEngine.OpenDatabase(Me.txtPath) With b.TableDefs("Kanory").Fields("S_Name") .Properties.Append .CreateProperty("DisplayControl", dbInteger, AcControlType.acComboBox) .Properties.Refresh End With MsgBox Space(20) & "تم انشاء الجدول Kanory بنجاح.." & Space(20), msgstyle, "للمعلومية" b.Close Set b = Nothing
  2. ممكن مثال صغير للفكرة التي تريدها
  3. واضح الرسالة تظهر قبل الضغط على زر ارسال البيانات ... صحيح
  4. جرب تغير هذا الكود <<<<<<>>>>>>>>> Fol.AllowMultiSelect = False بهذا ........... Fol.AllowMultiSelect = True
  5. هذا الكلام في المرفق ام برنامجك ........... وماهي رسالة الخطأ التي تظهر .....
  6. جرب المرفق <<<<<<<<>>>>>>>>> Kanory.accdb
  7. يا اخي هل طبقك الكود قبل السؤال .... وفتحت على خصائص الجدول ..... ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
  8. تفضل <<<<<<<<<>>>>>>>>> Dim strSQL1 As String strSQL1 = "CREATE TABLE [kanory] ([ProductID] AUTOINCREMENT,[ProductName] TEXT(40) NOT NULL,[SupplierID] LONG,[BirthDate] DATETIME,[CategoryID] LONG,[QuantityPerUnit] TEXT(20),[UnitPrice] CURRENCY,[UnitsInStock] SMALLINT,[UnitsOnOrder] SMALLINT,[ReorderLevel] SMALLINT,[Discontinued] BIT NOT NULL,CONSTRAINT [PrimaryKey] PRIMARY KEY ([ProductID]));" DoCmd.RunSQL strSQL1 اسف اخي الكريم @عبد اللطيف سلوم يبدو ان المشاركيتن في في الوقت .... لكن الطريقتين مختلفتين للفائدة .....
  9. تم التطبيق على المرفق <<<<<<<>>>>>>> تجريبي (1).rar
  10. مشاركة مع حبايبنا الاساتذة <<<<<<<<>>>>>>>> DATA2.accdb
  11. هذا طبيعي لان الاكسس يعتبر هذا السجل قيد التحرير لانك بتحاول تعديل سجل او حقل معين بقيمتين قبل حفظ القيمة الاولى ..... يجب حفظ التعديلات في النموذج الاول وتحديث البيانات ثم تبدأ بتعديل البيانات من خلال النموذج الثاني ....
  12. هذه الرسالة تخبرك بأنك تحاول الكتابة على سجل موجود اصلا ولهذا يحدث التعارض لذا لديك ثلاث خيارات اما حفظ السجل او اضافة التحديث اولا الى الحافظة ثم بعد ذلك يتم نسخ ما تم في الحافظة الى السجل او الغاء الأمر....................................... لذا لحل هذا التعارض يلزمك عمل حفظ للسجل يمكن استخدام هذا الكود ....... DoCmd.RunCommand acCmdSaveRecord
  13. واياك استاذنا الفاضل ابا الحسن ... جزاك الله خيرا
  14. كل الاصناف المضافة ضاهرة لدي .... اين تظهر معك المشكلة التي تتحدث عنها انظر .....
  15. الحمد لله رب العالمين .... بالتوفيق يادكتور الله يجزاك خير حبينا الغالي ... اشكرك
  16. طيب ... جرب الكود هذا <<<<<<<<<>>>>>>>>> DoCmd.RunCommand acCmdSaveRecord If Val(outs) <= Val(a) Then Me.a = [Forms]![Form1]![a] - [Forms]![Form1]![outs] ElseIf Val(outs) > Val(a) And Val(a) > 0 Then MsgBox "الرصيد الحالي لا يغطي التسديد" ElseIf Val(a) = 0 And Val(outs) <= Val(m) Then Me.m = [Forms]![Form1]![m] - [Forms]![Form1]![outs] ElseIf Val(outs) > Val(m) And Val(a) = 0 Then MsgBox "التسديد اكبر من رصيد اول المدة" End If
  17. لم افهم ... اعذرني لكبر سني ... ممكن مثال للفهم
  18. طيب جرب الحدث التالي <<<<<<<<>>>>>>>>> DoCmd.RunCommand acCmdSaveRecord If Me.outs <= Me.a Then DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE t1 SET t1.a = [Forms]![Form1]![a]-[forms]![Form1]![outs] WHERE (((t1.kan_id)=[Forms]![Form1]![kan]))" DoCmd.Requery DoCmd.SetWarnings True ElseIf Me.outs > Me.a And Me.a > 0 Then MsgBox "الرصيد الحالي لا يغطي التسديد" ElseIf Me.a = 0 And Me.outs <= Me.m Then DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE t1 SET t1.m = [forms]![Form1]![m]-[Forms]![Form1]![outs] WHERE (((t1.kan_id)=[Forms]![Form1]![kan]))" DoCmd.Requery DoCmd.SetWarnings True ElseIf Me.outs > Me.m And Me.a = 0 Then MsgBox "التسديد اكبر من رصيد اول المدة" End If اشكرك يا بشمهندس ........ منكم تعلمنا
  19. طيب جرب المرفق حسب فهمي للموضوع <<<<<<<<<<>>>>>>>>>> اضفتا حقل ترقيم ... الخصم.accdb
  20. اعانك الله اخي عمر وعوضك خيرا ..... اخي الكريم .... نصيحة اخ .. دائما وابدا اعمل نسخ احتياطية لبرامجك سواءا وقت التصميم او وقت العمل عليه ....
  21. القاعدة معطوبة انظر نتيجة الفحص ......
  22. بعض ما لديكم استاذنا الغالي .. كلامك صحيح ... بس انا قلت عشان يفهمها الجميع بما في ذلك المبتدئ .. وايضا تحسبا لكون هذا مثال ... ممكن الجداول متغيرة لديه ... وملاحظتك في محلها سيدي ... تسلم على المداخلة ...
  23. طيب <<<<<<<>>>>>>>> ضع هذا الحدث تحت الزر عندك ......... If Me.الوظيفة = "اداري" Then DoCmd.SetWarnings False DoCmd.RunSQL "INSERT INTO 1 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" DoCmd.RunSQL "INSERT INTO 2 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" DoCmd.RunSQL "INSERT INTO 3 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" DoCmd.RunSQL "INSERT INTO 4 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" MsgBox Space(20) & "تمت العملية بنجاح.." & Space(20), msgstyle, "للمعلومية" DoCmd.SetWarnings True ElseIf Me.الوظيفة = "معلم" Then DoCmd.SetWarnings False DoCmd.RunSQL "INSERT INTO 5 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" DoCmd.RunSQL "INSERT INTO 6 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" DoCmd.RunSQL "INSERT INTO 7 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" DoCmd.RunSQL "INSERT INTO 8 ( [رقم الكتاب], [تاريخ الكتاب], الاسم, الوظيفة, الموضوع, [اسم المستلم], [تاريخ الاستلام], المرحلة ) SELECT المعاملات.[رقم الكتاب], المعاملات.[تاريخ الكتاب], المعاملات.الاسم, المعاملات.الوظيفة, المعاملات.الموضوع, المعاملات.[اسم المستلم], المعاملات.[تاريخ الاستلام], المعاملات.المرحلة FROM المعاملات WHERE (((المعاملات.[رقم الكتاب])=[Forms]![ادخال بيانات]![رقم الكتاب]));" MsgBox Space(20) & "تمت العملية بنجاح.." & Space(20), msgstyle, "للمعلومية" Else MsgBox Space(20) & "الرجاء اختيار الوظيفة.." & Space(20), msgstyle, "تحذير" End If
  24. اين الجداول من 1 >>>>>>>>>>>> 8 على كل حال العملية سهلة ..... بعد تصميم الجداول الثمانية هنا عدة طرق منها اما ( IF أو Select Case ) ........ وصمم استعلامات الحاق ثمانية الى الجداول الثمانية .....
×
×
  • اضف...

Important Information