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

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    415

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

  1. الحمدلله 🙂 ورجاء العمل على المادة 3 من مقترحي ، حتى يصبح تقريرك خفيف على البرنامج وسريع الاستجابة. اهلا اخي طاهر 🙂 1. نعم بالتأكيد ، الافضل حذف الصورة المتضمنة في التقرير واستبدالها بحقول ومسميات ، نعم قد تحتاج الى بعض اجزاء الصورة المتضمنة ، مثل الشعار او التوقيع ، ولكن يجب ان يكون طول وعرض الصورة لا يكون اكبر من الواقع ، مثلا عرض صفحة A4 هو 21 سنتيمتر ، والشعار في منتصف الصفحة طوله حوالي 7 سنتيمتر ، فعليه ، اعمل هذا الشعار بهذه المقاسات ، يعني مو تجيبها من السكانر بدقة 1200x1200 dpi ثم تضعها في التقرير مباشرة دون تعديل 😱 2. نعم يوجد كود لإستيراد الصفحة من من ملف pdf وتحويلها الى صورة (انا استعمل برنامج www.irfanview.net ليقوم به برمجيا عن طريق command line ) ، ولكن الموضوع سيكون اصعب.
  2. سيدي الفاضل ، موضوعك جدا سهل ، ولو انك من البداية ارفقت ملف الـ pdf لحصلت على الجواب من زمان 🙂 انت لست بحاجة الى ملف pdf ، وانما بحاجة الى قالب المسميات ، حتى تضع البيانات في مكانها. 1. حولت ملف pdf الى صورة ، وارفقتها كخلفية للتقرير ، 2. اعدت ترتيب الحقول لمكانها الصحيح حسب الخلفية ، 3. الافضل حذف الخلفية (حتى يصبح البرنامج خفيفا) ، ولكن قبل الحذف ، اعمل مربعات تسمية لكل التسميات التي بالازرق ، وقد عملت لك نموذجا "شهادة عمل" ، فقم بنسخه وعمل بقية التسميات ، ووضعها في مكانها الصحيح. والان يمكنك تصدير التقرير كملف pdf . والنتيجة: DD1Testdb2025.mdb
  3. وعليكم السلام اضف مربع النص هذا (تقدر تعمله مخفي)، في هذا القسم: ثم في حدث عند تنسيق Report Footer اكتب هذا الكود Private Sub Report_Footer_Format(Cancel As Integer, FormatCount As Integer) On Error GoTo err_Report_Footer_Format Me.p = DLookup("Page_lettre", "tab_Page", "num_page=" & Me.Pages) Exit_Report_Footer_Format: Exit Sub err_Report_Footer_Format: MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_Report_Footer_Format End Sub 1626.BASE_P.accdb ماشاءالله عليك اخوي خليفة ، حبتين البهارات اللي اضفتها اعطت نتيجة احلى 🙂
  4. اذ اردت معلومات التقرير تظهر كاملة، احذف الكائن الذي داخل الدائرة الحمراء. . وكما طلب منك الاخوة سابقا ، رجاء ارفق لنا هذا الملف ، حتى نستطيع التحكم فيه وادخال البيانات من البرنامج
  5. السلام عليكم هل هذا ملف pdf اللي تريده؟ استعنت ببرنامج اخوي خليفة 🙂 جعفر DD1Testdb2.mdb rpt_ST_Information.pdf
  6. وعليكم السلام اخي فؤاد اذا رايت ان موضوعك صار له يومين ، وفيه قراءات ، وما فيه رد ، فمعناه: يا موضوعك صعب ، او الموضوع مبهم ، ويجب اعادة شرح المطلوب بطريقة ثانية ، واذا ممكن بمثال للمقارنة 🙂
  7. اتفق مع فكرتك ، لهذا السبب قلت: https://emojis.wiki/telegram/
  8. الحمدلله اخوي عبداللطيف ، بس ياريت تشاركنا الحل حتى نعرف وين كان الخطأ في الحلول المقترحة 🙂
  9. اخوي ابوخليل قصدك صاحب الموضوع لازم يخبرنا سبب طلبه ، ومن ثم ممكن نتوصل الى افكار اخرى 🙂
  10. اخوي ابو احمد شكرا جزيلا لك على هذا التحليل ، ولكن عندي اضافة : فكرة تحديث جميع البيانات الى 0 كانت بسبب فكرة اخونا الشايب ، ولكن للاختيار بين السجلات ، فيجب ان يكون عندنا كود محلي ، اي بمعنى آخر ، يجب عمل كود لتحديث الكل في اول اختيار ، ومنها فيجب ان يكون هناك كود آخر للتنقل العادي. اخوي ابو عارف: CurrentDb.Execute تعمل مع الاصدارات القديمة للاكسس ، ولكن مشكلتها انها لا تعطيك رسالة الخطأ (اذا كان فيه خطأ) ، فتعتقد انها لا تعمل!! والخطأ الذي حدث لمعظم الاكواد اعلاه ، هو في تحديث سجل مقفل (السجل الذي عليه حقل y_n الحالي). و كود "Do While Rc > 0" يكون جدا بطيء في العمل على سجلات التجربة بمئات الألاف او اكثر. واعتقد بهذه النتائج ، اصبح لدى اخونا abofayez1 عدة خيارات يختار منها ما يناسبه. ويا ابو احمد ، اذا لقيت صورتي في بريدك ، فمو شرط معناه اني زعلان من ان كودي طلع الثاني في اختباراتك جعفر
  11. بسبب تقارب طرق الكود ، تم الاستعانه بـ 300,000 سجل ، ووضع البيانات على كمبيوتر آخر على الشبكة ، وللأسف كود ابو عارف ما اشتغل بالطريقة الصحيحة ، فلم اجربه. الثلاث مرات الاولى ، اشغل الاستعلام ليعمل حوالي 40,000 صح ، ثم اغير في النموذج ، والثلاث مرات التالية ، هي وانا في النموذج ، اختار سجل واعمله صح. والنتيجة بالثواني +----------------+----------------+----------------+ | AbuuAhmed | jjafferr_2 | ابو جودي | +================+================+================+ | 4.43701171875 | 4.421875 | 4.828125 | +----------------+----------------+----------------+ | 4.468994140625 | 4.406005859375 | 4.110107421875 | +----------------+----------------+----------------+ | 4.468017578125 | 4.406005859375 | 4.31201171875 | +----------------+----------------+----------------+ | 0.546875 | 0.468994140625 | 4.31201171875 | +----------------+----------------+----------------+ | 0.531005859375 | 0.468994140625 | 4.31298828125 | +----------------+----------------+----------------+ | 0.546875 | 0.468994140625 | 3.984130859375 | +----------------+----------------+----------------+ جعفر تم الاستعانه بالموقع التالي لعمل الجدول: https://www.tablesgenerator.com/text_tables 1624.Stress_Test.mdb.zip
  12. فكرة جيدة ، ولكن لوسمحت ارفع السقف الى 50000 سجل او اكثر ، حتى نرى الفارق بسهولة 🙂
  13. مافي داعي لهذه الجزئية ، فالكود يعمل بدونها ، إلا اذا فيه شيء تحب تخبرنا عنه 🙂 وطبعا Me.Refresh = DoCmd.RunCommand acCmdSaveRecord = If Me.Dirty Then Me.Dirty = False واذ تحب تخبرنا عن الخدعة 🙂
  14. الله يسلمك ، الموضوعين يعطوك ملف الاكسل بشكل استعلام محلي في الاكسس ، ومنها تقدر تعمل اللي تريد
  15. السلام عليكم لا ما خلص الموضوع تذكرون لما قلت: . انزلت قاعدة بيانات التجربة: واستعملت 9,999 سجل فقط ، واضفت جميع الاجابات في هذا الموضوع: . ارجو من اللي يريد يشارك ويعدل الكود حقه ان : 1. يشغل الاستعلام qry_Half_y_n_True واللي يختار حوالي 5000 سجل ويعملهم صح ، 2. يشغل نموذجه ويشوف سرعته ، ويقارنه مع سرعة النماذج الاخرى. طبعا انا كان عندي وقتي من الصبح ، واضفت النموذج الثاني حقي ، وهو الاسرع (مثل ما يقول المثل: مَحَّد يقول دِبْسي حامِض ) جعفر 1624.Stress_Test.mdb.zip
  16. وعليكم السلام بالاضافة الى رابط اخوب فادي، راجع الرابط التالي
  17. اخوي ابوخليل نعم الثمار متنوعة وتعطيك نفس النتيجة ، ولكني افضّل الحل الذي استطيع التعديل عليه وبسهولة ، لذا: انا افضّل الحل في هذه المشاركة ، حيث تستطيع عمل التغيير المطلوب مستقبلا على استعلام التجميع query1 ، وتلقائيا استعلام التحديث query3 سيعمل ، وسيأخذ المستجد من query1 تلقائيا ، كونه استعلام فرعي اما اذا ادخلت جملة SQL استعلام التجميع مباشرة كاستعلام فرعي في استعلام التحديث ، واردت ان تعمل تغيير على جملة SQL استعلام التجميع ، فالخطوات كثيرة ، ومو شرط تضبط جعفر
  18. تم اضافة رابط المشاركة الاخرى في الرابط اعلاه
  19. مافي داعي تعمل معيارين على حقلين ، وانما اجعل الشرطين في استعلام واحد ، هكذا : UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In ( SELECT T2.user_ID FROM Table2 AS T2 GROUP BY T2.user_ID, T2.card_No HAVING (Sum([price1])-Sum([price2]))=0 AND Table1.userID=T2.user_ID AND Table1.cardNo=T2.Card_No)) );
  20. اوووه وانا اعتمدت على على العموم ، هذا الاستعلام بعد اضافة pp=0 UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In (SELECT [user_ID] FROM Query1 as Q1 WHERE Table1.userID=Q1.user_ID AND Table1.cardNo=Q1.card_No AND Q1.pp=0))); 1623.Database2.accdb
  21. تفضل الاستعلام UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In (SELECT [user_ID] FROM Query1 as Q1 WHERE Table1.userID=Q1.user_ID AND Table1.cardNo=Q1.card_No))); . وهنا وقعت في المحظور ايضا !! بياناتك كلها متشابهه ، فعلشان احصل على سجل واحد ، عملت تغيير لبيانات cardNo في الجدول Table1 وابقيت سجل واحد فيه قيمة الجدول Table2 1623.Database2.accdb.zip
  22. لا ، هو السجل الاخير ، ثم عمل الصح في السجل الاول: واشوف انك تداركت الخطأ في النسخة الاخيرة 🙂
  23. السلام عليكم اذا ممكن اشارك معاكم 🙂 الاستعلام الفرعي هو الجواب بدلا عن الجدول المؤقت. رجاء تجربة هذا الاستعلام: UPDATE Table1 SET Table1.chek1 = 0 WHERE (((Table1.userID) In (SELECT [user_ID] FROM Query1 as Q1 WHERE Table1.userID=Q1.user_ID AND Q1.pp=0))); . وقد قام بالتحديث (ولكن انتبه ن فقيمة p=0 موجودة فقط في السجل bb وهو غير موجود في الجدول Table1 ، لذا فلن تظهر لك اي نتيجة ، وهذا ما اشار اليه اخوي ابو جودي) ، وللتجربة ، غيّر قيمة P=0 في الاستعلام الفرعي الى p=15 وستترى النتيجة 1623.Database1.accdb.zip
  24. 1. للأسف ما توصلت الى طريقة لعمل جميع التغييرات في النموذج اسرع من تغييرها من الجدول مباشرة عن طريق استعلام. للعلم ، عند تقديمي لإقتراح ، فانا انظر لقاعدة البيانات وكأن بها على الاقل 10,000 سجل. 2. في انتظار مشاركتك
×
×
  • اضف...

Important Information