-
Posts
9903 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
وعليكم السلام اخوي سامي 🙂 اقول لك ، صاني لقيت جني خاش عمره تحت النموذج الفرعي ، للعلم 😁 عملت البحث فقط 🙂 جعفر 1490.devicesdb12 -9_00011.accdb.zip
-
السلام عليكم 🙂 اسمح لي ارد على هذا الاقتراح ، وبالتفصيل ، فنيا ، وبالتجربة : 1. انا اعتبر تصفح ملف pdf الذي به صور ، كأني اتصفح ملف الموظف الورقي ، لا يمكنني البحث فيه ، فأقلبه صورة صورة ، حتى اصل الى الصورة اللي اريدها ، واذا اريد مقارنة/النظر في صورة اخرى ، فأتصفح زيادة الى ان اصل الى الصورة الثانية ، وهنا لا استطيع مقارنة هذه الصورة بالصورة السابقة!! يمكن استعمال ملف pdf في حال: انك لن تبحث عن صورة/رسالة/كتاب/شهادة معينة ، اي انك لا تحتاج الوصول الى صورة معينة من الملف ، وفي حال: انك لن تحتاج الى اضافة صورة جديدة وسط محتواه ، 2. ملف pdf يحتفظ بالصور بصيغة مضغوطة ، وهذه الصيغة تعتمد على نوع بيانات الصورة ، وهذا الضغط هو الذي يقلل من حجم ملف pdf ، مثلا انظر في مواصفات هذا البرنامج الذي يحفظ الصور في ملف pdf : . او حتى لما تريد تصدر التقرير بصيغة pdf ، عندك خيار الضغط (ولكن بطريقة اخرى) : . الضغط على الصورة يجعلها تفقد بعض وضوحها ، وخصوصا اذا كان الضغط كبير (حتى تصبح الصورة صغيرة) ، وتتجه المؤسسات الى الاعتماد على هذه المستندات للارشفة ، مع التخلص من الاوراق الاصليه (بعد مدة من الزمن) ، هناك ISO خاص لأرشفة الصور ، وفيها يجب ان تكون دقة الصور 300 ، 600 (الموصى به) ، او 2100 DPI ، والنقاوة يجب ان تكون اقصاها او اقل بقليل (يعني بدون ضغط او ضغط قليل) ، وصار مع احد المؤسسات التي اتعامل معها ، اشتروا سكانر جديد واستعملوه مباشرة وبدون ضبط اعداداته ، وتم استعماله في ارشفة الوثائق ، وبعد مدة طُلب منهم التحقق في الاسم الرابع لأحد الموظفين , كانت وثيقته بخط اليد ، ولم يتمكنوا من التأكد اذا كان الاسم تامر او ثامر ، بسبب ان دقة الصورة كانت صغيرة والضغط كبير ، فاضطروا لطلب نسخة ورقية اخرى من الموظف (كانت فترة الابقاء على النسخة الورقية للملف قد انتهت وتم تلفها). . 3. نعم اسهل في عمل ملف pdf واحد من السكانر يحتوي على مجموعة وثائق ، ولكن هناك صعوبة للوصول الى الوثيقة المطلوبة ، وبسرعة في ملف pdf (انظر ملاحظتي اعلاه) ، بينما الطريقة التي اتبعتها لبرنامج شؤون الموظفين ، هو نسخ الوثائق وحفظها صورة صورة بصيغة jpg ، برقم مسلسل ، والبرنامج لما يفتح النموذج الخاص بالموظف ، فتلقائيا النموذج يبحث في مجلد الموظف عن جميع الوثائق الموجودة ، وعليه نرى مثل هذه الواجهة : و فمسمى الحقل يتحول لونه الى اللون الازرق الفاتح اذا كانت هناك وثيقة/وثائق تخص هذا الحقل ، وعند النقر على المسمى ، تظهر لنا جميع الوثائق التي تخص هذا الحقل فقط : . (وهنا تجد نسخه من النموذج اعلاه لتصفح الصور : https://www.officena.net/ib/topic/84228-هدية-العيد-استعراض-صورصورة-بأحجام-مختلفة/ ) وهذا لا يمكن عمله مع ملف pdf ، فإذن استخدام ملف pdf ليس اسهل للوضول الى المعلومة مباشرة . 4. وحتى اسهل عليك ، اليك الدالة التي عملتها ، لتعمل اسم الملف بالتسلسل : Public Function Biggest_Value_in_Folder(ByVal Fldr As String, Pttrn As String, Digts As Integer, fle_Type As String) 'usage: 'Call Biggest_Value_in_Folder("D:\Temp", "EM_New_Section_Letter_Number_", 6, "jpg") Dim strFile As String If Len(fle_Type & "") = 0 Then fle_Type = "*" strFile = Dir(Fldr & "\" & Pttrn & "*." & fle_Type) 'Debug.Print strFile Do Until strFile = "" 'NumberOfFiles = NumberOfFiles + 1 If Val(right(strFile, Digts)) > Biggest_Value_in_Folder Then Biggest_Value_in_Folder = Val(right(strFile, Digts)) End If strFile = Dir() Loop End Function . وهكذا استعملها . 'the folder path newpathANDname = BE_Path & "\Scanned_Files\" & Me.Employee_ID 'if the Employee_ID Dir dose not exist, creat it If Dir(newpathANDname, vbDirectory) = "" Then MkDir newpathANDname End If 'get the Biggest Seq io this file type Biggest_Value = Biggest_Value_in_Folder(newpathANDname, "EM_New_Section_Letter_Number_", 6, "jpg") newpathANDname = newpathANDname & "\" & "EM_New_Section_Letter_Number_" x = Split(Me.Selected_Files, vbCrLf) For j = LBound(x) To UBound(x) If Len(x(j)) <> 0 Then 'existing jpg file path and name oldpathANDname = x(j) NumberOfFiles = NumberOfFiles + 1 Biggest_Value = Biggest_Value + 1 'copy the jpg file to the correct directory FileCopy oldpathANDname, newpathANDname & Format(Biggest_Value, "000000") & ".jpg" End If 'Len(x(j)) <> 0 Next j . جعفر
-
طلب استخلاص كود .Allow Multi Select = true فى File Dialog
jjafferr replied to walid7799's topic in قسم الأكسيس Access
وعليكم السلام اخي وليد 🙂 من تجربتي في المنتدى ، اذا يبقى السؤال بدون جواب لعدة ايام ، معناه ان هناك مشكلة في السؤال !! قرأت الموضوع ، ثم انزلت المرفق ، ثم اصبحت . . . . قلت الحمدلله ، لقينا طرف الخيط ، النموذج Form1 ، واذا به من كثرة الكائنات التي به وكثرة النماذج الفرعية ملاحظاتي على الموضوع: اتمنى انك عرفت الآن سبب وجود قانون في المنتدى: 8. يجب ذكر كافة المعلومات التي من الممكن أن تُسأل عنها، مع الشرح الوافي للمشكلة لأن الشخص الذي تكتب له ليس ملما بالمشكلة مثلك. ويحبذ وضع مثال للنتيجة التي تريدها (سواء كملف مرفق باستخدام البرنامج المطلوب كالاكسيل او الأكسيس مثلا، او صورة توضيحية، أو تفصيل المطلوب بشرح وافي)، ويجب ان تكون بيانات المثال نابعة من نفس بيانات المرفق كي بمكن الربط و الفهم بسهولة. 11. ممنوع طرح أكثر من سؤال في موضوع واحد واليك شرح المشكلة: 1. قرأت جميع مشاركاتك ، قلت الحمدلله ، لقينا طرف الخيط ، النموذج Form1 ، واذا به كم هائل من الكائنات النماذج الفرعية ، وهذا معناه انه يجب عليك اعادة النظر في التصميم ، وخصوصا انك قلت انك ستستخدمه كنموذج فرعي !! 15 زر 5 كمبوبوكس 4 نماذج فرعية ، و النماذج الفرعية فيها: 10 كومبوبوكس 4 نماذج فرعية هذا معناه ان النموذج يأخذ بياناته (يزور الجداول) = 5 + 4 + 10 + 4 = 23 مرة ، فالسؤال الذي يدور في بالي هو: لو كان هذا برنامجك على الشبكة ، فهل هذا النموذج سيفتح اصلا ، او الاكسس سيتوقف عن العمل ويصير له Hang !! 2. بغض النظر عن ما قلته في النقطة 1 اعلاه ، صرت انظر يمين وشمال في النموذج ، طيب اي زر من الـ 15 زر اللي فيه المشكلة؟ 3. وبسبب انه عندك اكثر من سؤال في المشاركة ، فصعب تحصل على العضو الذي يوجد لديه الوقت الكافي للإجابة عليها !! 4. ملاحظاتي اعلاه هي فقط عن النموذج Form1 ، ولم يكن لدي الجرأة النظر في اي نموذج آخر اقتراحي: 1. الحق على نفسك قبل فوات الاوان ، وقم بتبسيط هذا النموذج الى الحد الادنى من الكائنات ، 2. اعمل موضوع جديد ، وضع فيه سؤال واحد فقط ، وتخبرنا فيه اين المشكلة ، في اي نموذج ، واسم الكائن الذي به حدث كود ، وكيف تريد ان تكون النتيجة ، وبالتفصيل . هذا الموضوع مخالف ، فرجاء من الاعضاء عدم اضافة اجابة هنا ، وسأتركه مفتوحا حتى اتناقش فيه مع الاخ وليد ، حتى يتهيأ لعمل موضوع جديد جعفر للذي سيسأل عن هذه الاشكال ، اخذتها من هنا : https://emojis.wiki/telegram/ -
سؤال فى قاعدة بيانات تخص اضافة صور مرتبطة
jjafferr replied to ابو جودي's topic in قسم الأكسيس Access
اخي احمد ، اخر مشاركة قي هذا الموضوع كانت في 2016 ، فالافضل لك عمل موضوع جديد !! جعفر -
السلام عليكم 🙂 يتشرف منتدى الاكسس بالنيابة عن موقع اوفسينا وجميع الاعضاء ، ان نزف رتبة خبير الى الاخ موسى @Moosak ، والذي ذاع صيته كخبير من مشاركاته 🙂 اتمنى لك اخوي موسى دوام التقدم ، ولا تمد رجولك قد لحافك ، فلا تقبل بالارتقاء غير النجوم بدلا 🙂 جعفر
-
هدية هديتي لكم :: (( مكتبة الأكواد الخاصة )) :: - لحفظ الأكواد وتجميعها .
jjafferr replied to Moosak's topic in قسم الأكسيس Access
وعليكم السلام 🙂 جميل اخوي الخبير موسى 🙂 جعفر -
لعشاق تصميم الواجهات [Modern UI Components]
jjafferr replied to SEMO.Pa3x's topic in قسم الأكسيس Access
وعليكم السلام 🙂 ما قادر ابلع ريقي من كثرتهم 🙂 جعفر -
مساعدة كيف اقوم بجلب الناس الذين لم يستلمو X مادة
jjafferr replied to SEMO.Pa3x's topic in قسم الأكسيس Access
السلام عليكم 🙂 اذن ، هذا هو الشرط : علشان نقدر نقارن نتائجنا: 1. رجاء تغيير الاختيار الى المواد التالية ، فالمواد السابقة مو كل شخص ماخذها ، فالحصر جزئي . 2. خلينا نستعمل التواريخ التالية في العمل: 15/7/2021 الى 13/3/2022 ، لأن فيها نتائج مناسبة 🙂 طريقتي فيها 3 استعلامات : 1. المواد التي تم اختيارها : . 2. جميع الاشخاص الذين استلموا المواد اعلاه خلال التاريخين اعلاه . ونلاحظ ان بعض الاشخاص مكرر اسمهم ، لأنهم ماخذين اكثر من مادة خلال هذه الفترة : . 3. واخيرا ، نربط بين جميع اسماء المستفيدين ، والاسماء الموجودة بين التالريخين ، ولكن نطلب الاسماء الغير موجودة بين التاريخين (BenId is Null) . والنتيجة ، 759 شخص يستحقون : . للتأكد : عدد جميع الاشخاص tbl_beneficiaries = 982 نزيل الاسماء المتكررة في الاستعلام qry_2_Between_Dates ، فيكون الاشخاص بين الفترتين = 223 . . اذن 982 - 223 = 759 شخص يستحقون 🙂 جعفر 1487.2.NotExists.accdb.zip -
البحث في Listbox داخل نموذج وعرض البيانات في نفس النموذج
jjafferr replied to مصطفي الفيومي's topic in قسم الأكسيس Access
السلام عليكم 🙂 تفضل : بالنسبة للبحث ، اضفت هذا الحقل بالحقول المطلوبة ، فتقدر تضيف وتنقص منها اللي يناسبك : . وهذه الاكواد: Private Sub cmd_New_Student_Click() 'عمل سجل جديد DoCmd.GoToRecord , , acNewRec Me.namestudent.SetFocus End Sub Private Sub SearchList_DblClick(Cancel As Integer) 'عند النقر مرتين، الانتقال الى اسم الطالب Me.Recordset.FindFirst "codestudint=" & Me.SearchList Me.Bookmark = Me.Recordset.Bookmark Me.namestudent.SetFocus End Sub Private Sub srch_txt_AfterUpdate() 'البحث في Listbox Me.SearchList.Requery End Sub . اما زر حفظ ، وحفظ التعديل ، فلم يتم استعمالهم 🙂 جعفر 1488.Microsoft.accdb.zip -
وعليكم السلام 🙂 هذه المعلومة اللي اعطيتنا ، تكفي فقط لكي يكون جوابي: لا لم تمر عليّ مثل هذه الحاله. جعفر
-
مساعدة كيف اقوم بجلب الناس الذين لم يستلمو X مادة
jjafferr replied to SEMO.Pa3x's topic in قسم الأكسيس Access
السلام عليكم دكتور حسنين 🙂 انت قلت في البداية : بينما لاحقا قلت: فأيهما ؟ وبعدين ، خلينا نتفق على بعض الامور ، علشان نقدر نقارن نتائجنا: 1. رجاء تغيير الاختيار الى المواد التالية ، فالمواد السابقة لا يوجد شخص ماخذها معا ، فلا نقدر نحصر الاشخاص بها . 2. خلينا نستعمل التواريخ التالية في العمل: 15/7/2021 الى 13/3/2022 ، وهو مجرد تاريخ ، ولكن فيه نتائج انا قاصدها 🙂 اذا قمنا بالعمل على الطريقة الاولى ، فيكون هناك 3 اشخاص فقط حصلوا على المواد اعلاه معا ، في الفترة بين التاريخين ، وارقامهم 17 و 73 و 364 ، ويكون عدد الشخاص الذين لم يستلموا هو: 982 - 3 = 979 🙂 ومن هنا نقدر نبدأ نشتغل ونقارن النتائج 🙂 جعفر -
هلا والله بالغاليين 🙂 جعفر
-
جرب ، هذا بريدك: qat**@l**.com جعفر
-
تحويل قيمة من جدول رواتب من عمودي الى افقي
jjafferr replied to ابو هاله النبلسي's topic in قسم الأكسيس Access
طريقة تفكيك الجدول الى عدة جداول : 1. هناك حقل اساسي واحد يربط جميع البيانات ، فهذا الحقل يجب ان يكون في كل الجداول ، 2. يجب ان تقسم/توزع الحقول بطريقة ، بحيث كل مجموعة متجانسة من نفس النوع يكون لها جدول خاص ، 3. وبعدين تقدر تجمع احد/بعض/كل الجداول في استعلام ، ويكون هذا الاستعلام مصدر بيانات النموذج 🙂 وبما ان هذا السؤال خارج عن موضوع السؤال ، فرجاء تعمل له سؤال جديد ، وان شاء الله تحصل على مساعدة فيه 🙂 جعفر -
ربط الجداول لمسار المبرمج ، ثم اعادة ربطها بمسار المستخدم
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
انت اصبر دورك جاي🙂 في الواقع كتبت عدة اسطر في المشاركة السابقة ، بعدين اختصرتها في كلمتين 🙂 جعفر -
ربط الجداول لمسار المبرمج ، ثم اعادة ربطها بمسار المستخدم
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
السلام عليكم اخوي ابوخليل 🙂 الهدف من هذا الموضوع: 1. عند عمل المبرمج واجهة برنامجه FE ، فيحتاج الى عمل ربط لجداوله BE في جهازه ، 2. عند ارسال الواجهة للمستخدم ، فيجب ان يعمل البرنامج بدون تدخل المستخدم بإختيار مسار قاعدة البيانات ، 1. عند استلام المبرمج واجهة البرنامج للتعديل/الاضافة ، فيحتاج الى عمل ربط لجداوله BE في جهازه ، 2. عند ارجاع الواجهة للمستخدم ، فيجب ان يعمل البرنامج بدون تدخل المستخدم بإختيار مسار قاعدة البيانات. وهناك تشابه كبير بين طريقتي وطريقتك ، وهناك نقاط قوة وضعف في الطريقتين 🙂 جعفر -
-
انا اعتذر عن اعطائك ملف جاهز ، وارجو من الجميع ذلك ايضا 🙂 اخي الفاضل ، انت تحصل على نصيحة افضل الخبراء ، فقم بعمل الخطوات اللي يعطوك ، وانت قم بالعمل ، شو صعوبة عمل الملف اللي شرحه اخونا Moosak ، اما اذا ما تعرف تعمله ، فانت في المكان الخطأ للحصول على شرح/جواب !! جعفر
-
تحويل قيمة من جدول رواتب من عمودي الى افقي
jjafferr replied to ابو هاله النبلسي's topic in قسم الأكسيس Access
السلام عليكم 🙂 المشكلة ليست في تصدير البيانات الى اكسل ، وانما الصعوبة في عمل مجاميع كل عمود في الاكسل ، وهناك طريقتين لعمل هذا: أ. تصدير البيانات والتعامل مع بيئة الاكسل (Excel Object) برمجيا ، ب. عمل مجاميع الاعمدة من الاكسس وتصديرها جاهزة للاكسل ، وانا اتبعت هذه الطريقة 🙂 عملت 4 طرق ، وانت تختار الافضل لك: . بسبب انه في الاستعلام export_selfa ممكن يكون عندك الاسم مكرر اكثر من مرة () ، فكان لازم نعمل استعلام المجاميع qry_Sum_export_selfa ، بحيث يجمع قيم الموظف في سجل واحد : . الطريقة 3. من هنا عملنا التقرير rpt_Sum_export_selfa والذي مصدر بياناته الاستعلام اعلاه ، وعملنا تجميع الاعمدة في التقرير: . الفكرة الاخرى ، ان نعمل مجموع الاعمدة في الاستعلام نفسه ، والطريقة اللي توصلت لها ، هي عمل استعلام مجاميع الاعمدة فقط qry_Sum_export_selfa_2 : . وتكون نتيجتها . ثم نعمل استعلام توحيد qry_Sum_export_selfa_3 فيه الاستعلام الاول qry_Sum_export_selfa والثاني qry_Sum_export_selfa_2 . فتصبح النتيجة . الطريقة 1. بتصدير الاستعلام qry_Sum_export_selfa_3 الى اكسل عن طريق الامر TransferSpreadsheet ، الطريقة 2. بتصدير الاستعلام qry_Sum_export_selfa_3 الى اكسل عن طريق الامر OutputTo ، الطريقة 4. عمل تقرير من الاستعلام qry_Sum_export_selfa_3 وتصدير التقرير الى اكسل عن طريق الامر OutputTo : . وهذه اكواد الطرق اعلاه: Private Sub cmd_Transffer_Query_Click() '1 Dim File_Name As String File_Name = CurrentProject.path & "\" & "تفصيل سلفة متنوعة" & Format(Date, "---DDDD-DD-mmmm-yyyy") & ".xlsx" DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "qry_Sum_export_selfa_3", File_Name, True End Sub Private Sub cmd_Output_qry_Click() '2 Dim File_Name As String File_Name = CurrentProject.path & "\" & "تفصيل سلفة متنوعة" & Format(Date, "---DDDD-DD-mmmm-yyyy") & ".xls" DoCmd.OutputTo acOutputQuery, "qry_Sum_export_selfa_3", acFormatXLS, File_Name, True, , , acExportQualityPrint End Sub Private Sub cmd_Output_rpt_Click() '3 Dim File_Name As String File_Name = CurrentProject.path & "\" & "تفصيل سلفة متنوعة" & Format(Date, "---DDDD-DD-mmmm-yyyy") & ".xls" DoCmd.OutputTo acOutputReport, "rpt_Sum_export_selfa", acFormatXLS, File_Name End Sub Private Sub cmd_Output_rpt_3_Click() '4 Dim File_Name As String File_Name = CurrentProject.path & "\" & "تفصيل سلفة متنوعة" & Format(Date, "---DDDD-DD-mmmm-yyyy") & ".xls" DoCmd.OutputTo acOutputReport, "rpt_Sum_export_selfa_3", acFormatXLS, File_Name End Sub ونصيحة: انت مستعمل 160 حقل في الجدول FILE-1 ، ويجب عليك تفكيكه الى على الاقل 3 جداول ، وتربط بينهم برقم الموظف ، ثم في استعلام تجمعهم جميعا !! جعفر 1486.Database1 (2).accdb.zip -
وعليكم السلام اخوي qathi 🙂 تواصلت مع الادارة ، وان شاء الله نحصل على رد في هذه المشاركة 🙂 جعفر
-
وعليكم السلام 🙂 هذا الرابط به الطرق الصحيحة للتخاطب بين كائنات الاكسس وحتى لمثل حالتك: http://access.mvps.org/Access/forms/frm0031.htm وارفق هنا الملف من الرابط اعلاه. الامر DoCmd.GoToControl قديم (طبعا لا يزال يعمل) ، وتم استبداله بالامر SetFocus. لحصول التركيز على الحقل في النموذج الفرعي الثاني ، يجب ان تبدأ بالتدرج الهرمي في اعطاء التركيز ، هكذا (على اعتبار انك الان في النموذج الرئيسي Form1 ) : me.Form2.setfocus me.Form2!Form3.setfocus me.Form2!Form3!ImagesSubform2.setfocus جعفر Syntax_for_subs (1).zip
-
ربط الجداول لمسار المبرمج ، ثم اعادة ربطها بمسار المستخدم
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
شكرا جزيلا اخوي ابوخليل 🙂 بكرة الصباح اشوف الموضوع من اول وجديد ان شاء الله 🙂 جعفر -
موقع الشركة هو افضل مكان علشان تحصل على جميع ما تريد ان تعرفه عن منتجها: http://www.ammara.com/ جعفر
-
تحويل قيمة من جدول رواتب من عمودي الى افقي
jjafferr replied to ابو هاله النبلسي's topic in قسم الأكسيس Access
اذا تشوف صورة الاكسل في مشاركتي اعلاه ، تشوف انها جمعت مبالغ السجلات الثلاثة في سجل واحد. هل هذا اللي تريده؟ -
تحويل قيمة من جدول رواتب من عمودي الى افقي
jjafferr replied to ابو هاله النبلسي's topic in قسم الأكسيس Access
وعليكم السلام 🙂 اللي فهمته هو ، اذا عندك نفس الاسم مكرر اكثر من مرة ، مثل ازهار مثلا : . ففي الاكسل تريد قيمها مجموعة هكذا : . هل هذا قصدك ؟ جعفر