-
Posts
9,866 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
401
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
وعليكم السلام 🙂 بإختصار ، الاكسس يعمل كل عمله على حاسبة المستخدم. الاستعلام يستورد البيانات المطلوبة من الجداول (سواء جداول محليه او على الشبكة او في السحاب) ، ويقوم بتحليلها محليا. لهذا السبب ، وحسب تصميم برنامجك (فهرست الحقول في الجداول ، وهي الحقول التي نستخدمها في الفرز او التصفية او ربطها بجدول آخر) ، 1. ممكن الاستعلام يستورد سجلات قليلة وبسرعة لحقل مفهرس (فالحقول المفهرسة لها مكان يشبه الجداول ، والتي ينظر فيها الاستعلام اولا) ، لأنه يعرف مكان هذه السجلات بحسب الحقل المفهرس ، 2. او اذا لم يكن هناك حقل مفرس ، يضطر الى استيراد الجدول كاملا لقراءته محليا ، ويعطيك نتائج الاستعلام ، وهذه الطريقة تأخذ وقت اطول. قواعد البيانات الاخرى مثل SQL Server ، والتي يجب ان تكون على سيرفر به مواصفات عالية ، تقوم بعمل كل شيء على السيرفر وتعطي النتيجة جاهزة لواجهة البرنامج والذي عادة يكون المتصفح (الواجهة) . اما اذا استعملت الاكسس كواجهة ، مع SQL Server كخلفية ، فيمكنك عمل الاثنين ، استعلامات في الواجهة (والتي ستكون بطيئة ، لأنها تستورد البيانات من السيرفر ، إلا اذا كان الاستعلام لبيانات قليلة او مفهرسة) ، او يمكنك عمل استعلامات في SQL Server (والتي تسمى Views او Stored Procedure) . كنت اعتقد كلامي كان بإختصار 😁 جعفر
-
المعذرة اخوي @Ahmos ، الظاهر سياق كلماتي اعطت مفهوم غير مقصود ، فانا اعتذر منك. ما كان كلامي عن الفكرة ، وانما عن طول وطريقة اكواد AI . وبالعكس ، ومثل ما تفضلت ، عمل موضوع خاص لفكرة ولو تم التعامل معاها بطريقة ثانية ، هي في اصلها فكرة ممتازة ، وهكذا بدأت انا في ردي السابق. واتطلع لمزيد من الافكار اللي تساعد المبرمج. جعفر
-
سِحر جداول الاكسس في تسجيل الوقائع عن طريق Tables Data Macro
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
شكرا اخوي موسى 🙂 لاحظ انه توجد بعض الحقول فيها قيمة سابقة ، فهذا معناه ان الكود شغال ، اذن فيه شيء يخلي قيم بعض الحقول ما تطلع ، شوف في اعداداتها -
السلام علبكم 🙂 بسبب اختلاف تنسيقات ملفات الاكسل (او CSV) ، وخصوصا تلك التي من مواقع وزارة التعليم في المملكة العربية السعودية ، كنا نضطر ان نتعامل بالكود مع كل تنسيق بطريقة تختلف عن الملف الآخر ، مما يجعل الحل لا يتناسب مع التنسيقات الملفات الاخرى ، وهذا الكود ليس بالسهل تعديله. ولكن ، تقريبا جميع مستخدمي الاكسس يعرفون التعامل مع الاستعلام ، لهذا السبب دعونا نتعامل مع بيانات الاكسل في استعلام ، استعلام مسقط 🙂 هذه واجهة النموذج الذي يتم كل شيء عن طريقه: 1. لتصفح الملفات ، واختيار ملف الاكسل (xls, xlsx, xlsm, csv) ، وسيظهر اسم الملف الذي تم اختيارة في الحقل رقم 2 ، 3. ستظهر قائمة بأسماء الاوراق (Sheets) الموجودة في الملف ، ويجب اختيار الورقة المطلوبة ، 4. هذا نموذج جدولي ، و ستظهر بيانات ورقة الاكسل هنا ، ويمكننا التعامل مع فرز وتصفية البيانات هنا ، وبعدة طرق ، 5. سيظهر استعلام مناداة ورقة الاكسل هنا (بدون فرز وتصفية) ، على شكل SQL ، وبأسماء حقول الورقة ، والتي يمكن نسخها لأي قاعدة بيانات خارجية ، 6. سيظهر استعلام مناداة ورقة الاكسل هنا (بدون فرز وتصفية) ، على شكل SQL ، وبدون أسماء حقول الورقة ، والتي يمكن نسخها لأي قاعدة بيانات خارجية ، 7. يجب النقر هنا حتى نرى نتائج الفرز والتصفية كجزء من الاستعلام في الحقول 8 و 9 ، 8. سيظهر استعلام مناداة ورقة الاكسل هنا (بالفرز والتصفية) ، على شكل SQL ، وبأسماء حقول الورقة ، والتي يمكن نسخها لأي قاعدة بيانات خارجية ، 9. سيظهر استعلام مناداة ورقة الاكسل هنا (بالفرز والتصفية) ، على شكل SQL ، وبأسماء حقول الورقة ، والتي يمكن نسخها لأي قاعدة بيانات خارجية ، 10. يمكنك عمل استعلام جاهز (للورقة بدون فرز وتصفية) او جدول ، سواء في قاعدة البيانات هذه ، او اختيار قاعدة بيانات خارجية (يجب ان تكون مغلقة حتى تستطيع تصدير استعلام او جدول لها) ، وسيكون اسم الاستعلام نفس اسم الورقة ، مثلا اسم الورقة ABC ، فيصبح اسم الاستعلام: qry_ABC ، او يكون جدول بإسم tbl_ABC حسب اختيارك من الرقم 11 ، او حتى الحاق بيانات الاستعلام الى جدول موجود سابقا (طبعا يجب مراعاة ان يكون الجدول بنفس حقول الورقة) ، 12. لنسخ الاستعلام الى ذاكرة الكمبيوتر ، بحيث يمكنك استعمال لصق ctrl+v لكائن الاستعلام (انظ الفيديو التوضيحي) ، 13. عادة لا نغير اي شيء هنا. طريقة العمل: . نرى من اعلاه: 1. انه تم عمل استعلام ياسم qry_Sheet1 في قاعدة البيانات الخارجة Testing.accdb ، 2. كذلك نسخنا استعلام التصفة الى ذاكرة الكمبيوتر (تابع في الفيديو التالي) . ممكن خلط عمل الفرز و التصفية بعدة طرق ، منها كما في الفيديو اعلاه ، و الصور التاليه . . لنفتح قاعدة البيانات الخارجية ونرى ما فيها ، هنا نحن نتعامل مع استعلام اكسس عادي ، فيمكننا حذف الحقول التي لا نريدها ، او نخفي اخرى ، او .... . عند فتح قاعدة البيانات الخارجية ، وحصلت على رسالة الخطأ هذه ، فهذا معناه ان برنامج "استعلام مسقط" لايزال مفتوح ، وملف الاكسل مفتوح به ، لذا يجب اغلاق برنامج "استعلام مسقط" قبل استعمال ملف الاكسل : . البرنامج يتعامل مع ملف واحد فقط ، ويعمل له استعلام ، واذا اردنا ان نتعامل مع اكثر من ورقة اكسل ، فيمكننا عمل مجموعة من استعلامات ، ثم نعمل امر لتنفيذها واحدة تلو الاخرى ، وبما انه عندنا استعلام ، فيمكننا تحويله الى جميع انواع الاستعلامات ، سواء استعلام الحاق ، او استعلام اضافة ، او استعلام لعمل جدول. هناك عدة ميزات في استعمال هذه الطريقة عن ربط الاكسل كجدول : 1. اسرع بكثير ، 2. عند استيراد كائنات قاعدة البيانات الى قاعدة اخرى ، فالاكسس يتوقف كثيرا عند الجداول الاكسل المرتبطة ، بينما لا يأخذ اي وقت لهذا الاستعلام 3. اختار الحقول اللي تريدها فقط ، جعفر Muscat_Query.zip
-
سِحر جداول الاكسس في تسجيل الوقائع عن طريق Tables Data Macro
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
السلام عليكم اخوي ابوخليل 🙂 . هنا افرز خلاصة تجاربي مع مؤسسات متشعبة الاعمال 🙂 والحمدلله انه اوجد لنا هذا السماء الفسيح لنشر المعرفة ، فشكرا لك دكتور @محمد طاهر عرفه 🙂 جعفر -
سِحر جداول الاكسس في تسجيل الوقائع عن طريق Tables Data Macro
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
السلام عليكم 🙂 في الواقع ، الموضوع السابق (حيث تم مناقشة معظم الامور المتعلقة بهذه الاحداث) هو المرجع لهذا الموضوع ، وهذا الموضوع به الواجهة فقط 🙂 في الموضوع السابق قلت: . وعليه ، فالحقول الاخرى والتي لا يستطيع Data Macro عملها هي: memo, rich text, hyperlink, OLE Object, multi-value, or attachment fields. . اخواني ابو البشر و عمر ضاحي : تمت الاجابة على اسئلتكم اعلاه. . اخي فادي شكرا لك. -
سِحر جداول الاكسس في تسجيل الوقائع عن طريق Tables Data Macro
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
هاي من طيب اصلك ، بس عطني اللوكيشن وبطرش لك الشباب بالبخور -
برجاء المساعدة ضروري في طريقة معرفة التغيير في كومبو بوكس
jjafferr replied to سامر محمود's topic in قسم الأكسيس Access
اخي سامر ، شوف اذا الموضوع اعلاه يلبي طلبك -
برجاء المساعدة ضروري في طريقة معرفة التغيير في كومبو بوكس
jjafferr replied to سامر محمود's topic in قسم الأكسيس Access
السلام عليكم 🙂 شكرا اخوي @kanory ، والان عملت قاعدة بيانات بها نموذج بقوم بالعمل : -
السلام عليكم 🙂 عملت قاعدة بيانات وبها نموذج لعمل جميع الاكواد برمجيا
-
السلام عليكم 🙂 رجاء الرجوع الى النسخة الاولى من هذا الموضوع لفهم تفاصيل الكود . عرضت عليكم جميع التفاصيل في عمل حدث الـ Data Macro ، فكان على المبرمج ان يكتب جميع خطوات الكود لكل حقل ولكل حدث ، يدويا !! وهنا اعطيكم طريقة طريقة عمله برمجيا (يعني المبرمج ما عنده عذر من الان ان لا يستخدم هذه الاداة في برامجه 🙂 ). هذه واجهة وكائنات البرنامج: . 9. نقوم بالنقر على الزر رقم 9 مرة واحدة فقط ، فيقوم بنسخ الجدول جدول tbl_x_AuditTrail فارغ ، والوحدة النمطية mod_UserName_PcName ، الى قاعدة البيانات التي تم اختيارها في رقم 3 ، 1. جدول tbl_x_AuditTrail فارغ ، وسيتم عمل نسخة منه ومن الوحدة النمطية mod_UserName_PcName عند النقر على الزر رقم 9 ، الى قاعدة البيانات التي تم اختيارها في رقم 3 ، 2. يجب اختيار قاعدة البيانات التي تريد عمل احداث الجداول عن طريق الـ Data Macro فيها ، وسيتم ظهور اسم قاعدة البيانات في الرقم 3 ، وفي نفس الوقت سيتم ظهور اسماء جداولها في الرقم 4 ، 4. اختار الجدول الذي تريد عمل الاحداث عليه ، ومنها ستظهر اسماء حقوله في الرقم 5 ، 5. تختار اسماء الحقول التي تريد ان تتابع متغيراتها (وهو اساس هذا البرنامج) ، وتستطيع اختيار جميع الحقول لهذا الحدث بالنقر على الزر 6 : 5.1 لتسجيل وحفظ متغير الحقل عند اضافة سجل جديد (الحاق سجل جديد) ، 5.2 لتسجيل وحفظ متغير الحقل عند عمل تغيير على قيمة الحقل (بعد تحديث الحقل) ، 5.3 لتسجيل وحفظ متغير الحقل عند حذف السجل ، 7. يجب اختيار حقل المفتاح الاساسي في الجدول ، 8. عند الانتهاء من الاختيارات ، ننقر على الزر رقم 8 ، فيقوم بعمل الـ Data Macro لجميع الحقول في الجدول الذي تم اختياره ، وستاتيك رسالة تؤكد انتهاء العمل. وللعمل على حقول جدول آخر ، ابدأ من الرقم 4 اعلاه مرة اخرى. هنا سأعطي مثال عن طريقة العمل ، والنتائج: هذه قاعدة البيانات التي ساعمل عليها ، ونرى انه لا يوجد بها الجدول tbl_x_AuditTrail فارغ ، ولا الوحدة النمطية mod_UserName_PcName ، ولا توجد اي احداث في المربع الاحمر : . خطوات العمل: . والنتيجة في قاعدة البيانات الاخرى: . والان لنرى عندما نعمل اي تغيير في المتغيرات: . هنا نرى ان الاحداث الثلاثة موجودة في هذا الجدول ، وطبعا في الجدول الآخر كذلك : . وهنا نقارن النتائج . جعفر Make_AuditTrail_XML_02.zip
-
برجاء المساعدة ضروري في طريقة معرفة التغيير في كومبو بوكس
jjafferr replied to سامر محمود's topic in قسم الأكسيس Access
رجاء الرد على بقية الاسئلة كذلك -
وعليكم السلام مقاييس الصفحة الموجودة في التقرير يتم اخذها من الطابعة الافتراضية ، الى ان يقوم المستخدم باختيار طابعة اخرى ، لذا ، اذا الطابعة التي يقوم باختيارها المستخدم لا تحتوي على A3 ، فلن تجد هذا الاختيار من القائمة. يمكنك استخدام طابعة pdf افتراضية ، واجعل حجم الصفحة فيها الذي تريده ، سواء A3 او اكبر ، وستجد هذا الحجم موجود عند اختيارك لطابعة الـ pdf . انا استعمل هذه الطابعة المجانية :
- 1 reply
-
- 3
-
برجاء المساعدة ضروري في طريقة معرفة التغيير في كومبو بوكس
jjafferr replied to سامر محمود's topic in قسم الأكسيس Access
من واقع قاعدة بياناتك ، اسماء الحقول والبيانات: شو اسم الحقل اللي مطلوب انظر فيه في النموذج ، اعطني مثال من واقع البيانات ، شو الموجود حاليا ، وشو التغيير اللي تريد تعمله ، وعلى اساس هذ التغيير شو النتيجة اللي لازم تظهر. بهذه الطريقة نقدر نساعدك -
عند تمرير الفأرة ، ادراج نص من مربع نص الى مربع نص اخر
jjafferr replied to tiger wanted's topic in قسم الأكسيس Access
👍 -
عند تمرير الفأرة ، ادراج نص من مربع نص الى مربع نص اخر
jjafferr replied to tiger wanted's topic in قسم الأكسيس Access
اخوي @Ahmos شكرا جزيلا 🙂 اما انا فتجربتي من الذكاء الصناعي مو زينه ، فالاجابات الصحيحة اللي احصلها منه هي اقل من 5-10% من اسألتي ، وللعلم فيه مرات عديدة انا اعطيه الجواب الصحيح 🙂 وخصوصا انه يخلط بين اكواد الاكسس والاكسل. اخوي @tiger wanted اذا كل اللي تريده هو مجرد تحويل القيمة من الكمبوبوكس الى الحقول الاخرى بمجرد تمرير الفأرة عليه ، فتفضل هذا الكود السهل (حسب اسماء حقول نموذجك) ، وحذفت بقية الاكواد: Private Sub text3_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Me.text3 = Me.Combo0 End Sub Private Sub text5_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Me.text5 = Me.Combo0 End Sub -
عند تمرير الفأرة ، ادراج نص من مربع نص الى مربع نص اخر
jjafferr replied to tiger wanted's topic in قسم الأكسيس Access
اخوي @Ahmos عرض جدا جميل لسبب المشكلة 👍 ياريت تكمل جميلك وتعرض الحل كذلك في المشاركة (مو في المرفق فقط) -
برجاء المساعدة ضروري في طريقة معرفة التغيير في كومبو بوكس
jjafferr replied to سامر محمود's topic in قسم الأكسيس Access
الكمبوبوكس كذلك ياخذ بياناته من الجدول او الاستعلام ، فالبيانات متغيره ، حالها حال الاستعلام. والجواب نفسه: بمعنى: اعمل جدول اسمه tbl_Movements ، حقوله : Auto_ID= ترقيم تلقائي Auto_Date= تاريخ ، وقيمته الافتراضية ()Now Employee_ID= رقم (رقم الموظف) Employee_Dept= نص (مكان العمل) Employee_Dept_Date= تاريخ (تاريخ نقل الموظف الى هذه الدائرة) ثم تعمل استعلام qry_Movements ، وفيها المعيار يكون عن طريق التاريخ. وفي النموذج عند نقل موظف من مكان الى آخر (حدث بعد التحديث) ، يجب "الحاق" القيمة الجديدة الى هذا الجدول ، وقيمة تاريخ النقل ، وتعمل مقارنة بين مكان عمل الموظف من هذا الاستعلام ، مع مكان العمل في الجدول الاصل ، ومنه تقدر تعرف من اللي تم تغيير مكانه. -
عند تمرير الفأرة ، ادراج نص من مربع نص الى مربع نص اخر
jjafferr replied to tiger wanted's topic in قسم الأكسيس Access
وعليكم السلام معلش ، اشرح لي المطلوب بلغتك ، وباسماء الحقول في مرفقك