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

ابو جودي

أوفيسنا
  • Posts

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

  • Days Won

    202

كل منشورات العضو ابو جودي

  1. اذن اسمح لى بالتدخل فى وضع طريقة أخرى Private Sub كود_شحنة_Click() Dim stDocName As String Dim stLinkCriteria As String stDocName = "إضافة شحنة" stLinkCriteria = "[كود_الشحنة]=" & Me![كود_الشحنة] DoCmd.OpenForm stDocName, , , stLinkCriteria Call [Form_إضافة شحنة].SetFocus DoEvents End Sub وللعلم ان اردت استخدام الكود تبعك كما هو استخدم الكود كالاتى Private Sub كود_شحنة_Click() On Error Resume Next Dim S S = كود_شحنة DoCmd.OpenForm "إضافة شحنة" DoCmd.FindRecord S Call [Form_إضافة شحنة].SetFocus DoEvents End Sub
  2. الشكر لله سبحانه وتعالى ثم لكم ابى الحبيب ومعلمى القدير و استاذى الجليل ولجميع اساتذتى الذين تعلمت منهم ومازلت اتعلم اسأل الله العظيم رب العرش العظيم أن يبارك لكم في عمركم وعلمكم وان يتقبل عملكم وان يبارك لكم فى أهلكم و أحبابكم و ولدك و مالكم وأن يكتب لك الخير حيثما كنتم وأن يوسع عليكم في الرزق وأن يبارك لك في رزقكم واسأل الله أن تكون أعمالكم في ميزان حسناتكم يوم القيامة يوم لا ينفع مال ولا بنون إلا من أتى الله بقلب سليم أدامكم الله تعالى على رؤسنا و البسكم ثوب الصحة والعافية أدامكم الله تاجا فوق رؤوسنا و نورا في قلوبنا و ضياء في دروب حياتنا و بسمة على شفاهنا و حكمة تهدي طريقنا اللهم آمين ،اللهم آمين،اللهم آمين 🤲 لا ادري ماذا اقول لك سوى احبكم وكل اساتذتى الكرام واخوانى فى الله ولوجه الله
  3. فقط غير السطر الاتى DoCmd.OpenForm "إضافة شحنة" بالسطر الاتى DoCmd.OpenForm "إضافة شحنة", , , , , acDialog
  4. DCount("*", "frm_RD", "report_No =" & Me.txtSearch) الخطأ هنا دوال المجال هموما تعمل مع الجداول او الاستعلامات وليس النماذج راجع هذه المشاركة لتتعلم بناء كود دوال المجال
  5. هو ممكن بس اذا فيها قيمه شو الحكمة ؟
  6. طيب اتفضل راجع الموضوع الاتى وراجع المشاركة الاتيه لنفس الموضوع تجد فيها مربع السرد المتعدد اما بخصوص اخفاء كافة الاستعلامات والنماذج والتقارير والماكرو والوحدات النمطية (الاوامر البرمجية ) او المديول بحيث لا تظهر عند اظهار الملفات المخفية لا بمكن عمل ذلك الا مع الجداول فقط
  7. طيب الشئ بالشئ يذكر انا لم اقل انه الاصح ولا الاكثر امانا بل هو ليس امن ولا انصح باستخدام الكود مع باقى جداول قاعدة البيانات لان اخفاء الجداول بهذا الكود ينتج عنه مشكلة فى الحقول الى تعتمد على مربع السرد المتعدد وتفقد البيانات منها لذلك انا فى سلسلة الافكار والتى تخص حماية قاعدة البيانات سوف أكتفى فقط باخفاء الجدول الخاص ببيانات التفعيل لقاعدة البيانات وطبعا سوف اتجنب فيها استخدام حقل يعتمد على مربع السرد متعدد البيانات
  8. 4- انشاء قاعدة البيانات الأمامية مأمنة بكلمة مرور Public Function DoCreatDatabaseByPassword( _ Optional strDbPath As String = "", _ Optional strNewDbName As String = "", _ Optional strPassNewDb As String = "" _ ) On Error GoTo ErrorHandler Dim wrkDefault As Workspace Dim db As DAO.Database If IsNull(strDbPath) Or strDbPath = Null Or strDbPath = vbNullString Or strDbPath = Empty Or strDbPath = "" Or Len(strDbPath) = 0 Then strDbPath = CurrentProject.Path & "\" If IsNull(strNewDbName) Or strNewDbName = Null Or strNewDbName = vbNullString Or strNewDbName = Empty Or strNewDbName = "" Or Len(strNewDbName) = 0 Then strNewDbName = "NewDB.mdb" If IsNull(strPassNewDb) Or strPassNewDb = Null Or strPassNewDb = vbNullString Or strPassNewDb = Empty Or strPassNewDb = "" Or Len(strPassNewDb) = 0 Then strPassNewDb = "00" Set wrkDefault = DBEngine.Workspaces(0) If Dir(strDbPath & strNewDbName) <> "" Then Kill strDbPath & strNewDbName Set db = wrkDefault.CreateDatabase(strDbPath & strNewDbName, dbLangGeneral & ";PWD=" & strPassNewDb) strDbPath = vbNullString strNewDbName = vbNullString strPassNewDb = vbNullString Set wrkDefault = Nothing db.Close Set db = Nothing ExitHandler: Exit Function ErrorHandler: MsgBox "Error Number : " & Err.Number & vbNewLine & "Error Description : " & Err.Description Resume ExitHandler End Function التطبيق فى القاعدة المرفقة .. يتبع ... 05- CreatDatabaseByPassword.accdb
  9. العفو منكم يا باش مهندس انت تأمر وتفعل ما تريد
  10. شئ من اتنين 1- الاوفيس غير مفعل 2- هناك ملفات مفقودة ممكن اكلمك فى رسالة خاصة لو موافق قولى موافق ممكن احاول اساعدك ريموت ان امكن
  11. اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف --- قد لا يجد من يستطيع تقديم المساعدة الوقت الكافى لفحص وتحليل قاعدة بيانات الأولى بك وانت أدرى بها وبالمشاكل التى تواجهك وضع كل مشكلة تريد حلها فى موضوع خاص بكل مشكلة تقبل تحياتى
  12. يجب أن يكون نوع البيانات المحسوب متاح كنوع بيانات في وضع تصميم الجدول بعد تسمية الحقل حدد نوع البيانات ومع ذلك يجب يجب ويفضل إجراء العمليات الحسابية في الاستعلامات أو في عناصر التحكم وليس في الجدول
  13. طيب ركز يا دكتور حضرتك محتاج فنجان قهوة
  14. وانا عملت فلتر ، ما بأعرف أعد ... تعليم مجانى
  15. لا 6 فقط قم بعمل الفلتر يدويا من الجدول يا دكتور تحصل على 6 فقط
  16. 3- انشاء جدول بالحقول المطلوبة برمجيا مع تأمين الجدول اولا كود انشاء جدول طبعا واضح من الكود نوع الحقل المطلوب انشاءه Dim MySQL As String MySQL = "CREATE TABLE tblNameOfTble" _ & "(" _ & " [FieldAutoID] COUNTER" _ & ",[FieldByte] BYTE" _ & ",[FieldInteger] SMALLINT" _ & ",[FieldLong] INTEGER" _ & ",[FieldSingle] REAL" _ & ",[FieldDouble] FLOAT" _ & ",[FieldCurrency] MONEY" _ & ",[FieldShortText] Text(5)" _ & ",[FieldLongText] MEMO" _ & ",[FieldDateTime] DATETIME" _ & ",[FieldYesNo] BIT" _ & ",[FieldOleObject] IMAGE" _ & ");" DoCmd.SetWarnings False: DoCmd.RunSQL MySQL: DoCmd.SetWarnings True ثانيا تأمين الجدول : ومن هنا نبدأ فى ابتكار وافكار الحماية التأمين كما تعلمنا سابقا ان كانت البادئة فى اسم الجدول Usys يعتبر الاكسس من تلقاء نفسه انه من جداول النظام ويكون الجدول مخفيا ولكن عند اظهار كائنات النظام المخفيه يظهر الجدول اذن و زيادة فى التأمين على ما سبق سوف نقوم بعمل كود لاخفاء الجدول تماما حتى لو تم اظهار الكائنات الخفية وضعت الكود قى وحدة نمطيه ليسهل استخدام الكود بمرونه عند الحاجة Public Function DoHideTable(Optional strTableName As String = "") On Error GoTo ErrorHandler Set db = CurrentDb For Each obj In Application.CurrentData.AllTables Set tdf = db.TableDefs(obj.Name) If Left(tdf.Name, 4) <> "msys" And tdf.Attributes <> 1073741824 Then If tdf.Name = strTableName Then tdf.Attributes = tdf.Attributes + dbHiddenObject End If Next Set tdf = Nothing Set obj = Nothing db.Close Set db = Nothing ExitHandler: On Error Resume Next If Not tdf Is Nothing Then Set tdf = Nothing If Not obj Is Nothing Then Set obj = Nothing If Not db Is Nothing Then Set db = Nothing Exit Function ErrorHandler: MsgBox "The following error has occurred." & vbCrLf & vbCrLf & _ "Error Number: " & Err.Number & vbCrLf & _ "Error Source: DoHideTable" & vbCrLf & _ "Error Description: " & Err.Description, _ vbCritical, "An Error has Occurred!" Resume ExitHandler End Function واذا أراد المصمم او مطور قواعد البيانات التعامل مع بيانات الجدول المخفى السابق عن طريقين الاول اظهار الجدول Public Function DoShowTable(Optional strTableName As String = "") On Error GoTo ErrorHandler Set db = CurrentDb For Each tdf In db.TableDefs If Left(tdf.Name, 4) <> "msys" And tdf.Attributes <> 1073741824 And tdf.Attributes = 1 Then If tdf.Name = strTableName Then tdf.Attributes = tdf.Attributes - dbHiddenObject End If Next Set tdf = Nothing db.Close Set db = Nothing ExitHandler: On Error Resume Next If Not tdf Is Nothing Then Set tdf = Nothing If Not obj Is Nothing Then Set obj = Nothing If Not db Is Nothing Then Set db = Nothing Exit Function ErrorHandler: MsgBox "The following error has occurred." & vbCrLf & vbCrLf & _ "Error Number: " & Err.Number & vbCrLf & _ "Error Source: DoHideTable" & vbCrLf & _ "Error Description: " & Err.Description, _ vbCritical, "An Error has Occurred!" Resume ExitHandler End Function الثانى عمل استعلام لهذا الجدول دون اظهار الجدول Public Function DoCreateQuery(Optional strTableName As String = "", Optional strQueryName As String = "") On Error GoTo ErrorHandler Set db = CurrentDb MySQL = "Select * From " & strTableName Set qdf = db.CreateQueryDef(strQueryName, MySQL) Set qdf = Nothing db.Close Set db = Nothing ExitHandler: On Error Resume Next If Not tdf Is Nothing Then Set tdf = Nothing If Not obj Is Nothing Then Set obj = Nothing If Not db Is Nothing Then Set db = Nothing Exit Function ErrorHandler: MsgBox "The following error has occurred." & vbCrLf & vbCrLf & _ "Error Number: " & Err.Number & vbCrLf & _ "Error Source: DoHideTable" & vbCrLf & _ "Error Description: " & Err.Description, _ vbCritical, "An Error has Occurred!" Resume ExitHandler End Function ملاحظة بعد الاوامر ليظهر فعاليتها مثل الاخفاء والاظهار قد تحتاج لاغلاق القاعدة واعادة فتحها مرة أخرى التطبيق فى القاعدة المرفقة .. يتبع ... 04- craet table with hard code.accdb
  17. طيب خلينا نتفق على شئ الاكواد السابق ذكرها هى اكواد ثابته تستخدم كما هى فى الحصول على البيانات من خلالها او اضافة البيانات فى الريجسترى اما بخصوص الحماية هو تنوع الافكار فى استخدامها وتطويعها فقط كما يترائى للمبرمج وتختلف من ششخص لاخر حسب افكاره ومتطلباته لذلك وضعت الاكواد دون شرح اما عن الافكار سوف اشرحها باستفاضه ولكن بما اننا قلنا ان الافكار تختلف من شخص لاخر انا سوف اضع القاعدة العريضة التى تلهم القارئ للتفكير والابداع وهذا هو الاساس ان شاء الله اليوم نكمل اللى لقاء قريب بأمر الله
  18. الشكر لله الحمد لله الذى تتم بنعمته الصالحات
  19. الشكر لله اتفضل نسخه من مرفق (3).accdb
  20. خلينا نتفق على شئ دعنا لا ننسي ان الاكسس تطبيق مجانى مفتوح المصدر ومحدود ولكن نتحايل فقط ببعض الخدع والافكار لعمل ما نريد ولس كل شئ يمكن تحقيقه
  21. أنا لو تلاحظ لم اضع الشرح باستفاضه كما عهدتمونى بسبب اننى منهمك فى توارد الافكار ويتشتت ذهنى من أن لآخر كما اننى قصدت ان أجبر القراء على الفحص والتمحيص والبحث وطرح الاسئلة حتى ينشأ عندهم الفضول وتوارد الافكار لاستخدام الاكواد وما عرضته وسوف اعرضه ان شاء الله من افكار كى لا يأخذوا قاعدة وينقلونها فقط الى مشاريعهم لذلك بدأت موضوعى بـ لا أنوى أن اعطيكم سمكا بل انوى أن أعلمكم الصيد ... استحالة لابد من معامل التشفير مع هذه الطريقة.. راجع نفسك وراجع الكود
×
×
  • اضف...

Important Information