اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

jjafferr

أوفيسنا
  • Posts

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

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

  • Days Won

    411

jjafferr last won the day on يونيو 5

jjafferr had the most liked content!

السمعه بالموقع

9516 Excellent

عن العضو jjafferr

البيانات الشخصية

  • Gender (Ar)
    ذكر
  • Job Title
    مهندس مدني مستقيل
  • البلد
    سلطنة عُمان

اخر الزوار

27531 زياره للملف الشخصي
  1. السلام عليكم الجزء الاول هو المرجع لتوضيح عمل القائمة المختصرة : . في الموضوع السابق ، تحدثنا عن القائمة الثابتة ، وفي هذا الموضوع سنتكلم القائمة المؤقتة ، وعن طرق اخرى لإستعمال القائمة. وللعلم ، هناك قائمة مختصرة للنموذج واخرى للحقل ، سواء قائمة ثابته او مؤقته . القائمة الثابتة هي التي تجدها جاهزة للاستعمال ، وبدون عمل اي كود لها ، سواء في النموذج او التقرير ، مثلا : . اما القائمة المؤقته فيحتاج تناديها بالكود لكل استعمال ، ولما تغلق النموذج/التقرير ، يحتاج تحذفها ، والسبب مثل ما بتشوفون في المرفق ، نستعمل نفس القائمة ببعض الاختلافات بين النموذج/التقرير وحقوله. . التحدي الاكبر في القائمة المؤقته ليس البرمجة ، وانما معرفة الحدث الصحيح للحصول على النتيجة ، ثم تمرير النتيجة ، مثلا ، للحصول على عدد صفحات التقرير ، يجب استعمال الحدث On Page ، ومنها اخذ عدد الفحات وتمريرها الى دالة القائمة المؤقته. حاولت عمل اكبر قدر من التشكيلات ، وبأبسط طرق البرمجة ، حتى يكون تغييرها سهل للمبرمج. وفي المرفق وحدة نمطية لتصدير/استيراد كائنات قاعدة البيانات ، وحسب طلب اخي العزيز @ابوخليل ققد اضفت لها دالة لإرجاع كود القائمة المختصرة (اذا صارت الحاجة اليه). myRight_Click_Shortcut_Menu.zip
      • 4
      • Like
      • Thanks
  2. رجاء ارجع الى مشاركتي السابقة التي ارسلت فيها مرفق ، وافتح المرفق وشوف الدالة . والاهم من هذا ، شوف الرابط اللي عرضته هناك ، فهو الموضوع الاصل للقائمة المختصرة
  3. مشاركتي الاخيرة كانت حسب طلبك اعلاه
  4. الفكرة الثانية جميلة للحالات الخاصة 🙂 قبل فترة بسيطة قمت بعمل متصفح للصور وملفات pdf ، بعرضها على المتصفح في نموذج الاكسس ، لعرض ملفات الموظف (يعني مثل الحالة الثانية من اقتراحك). ولأني لما ابرمج ، اضع نفسي كمستخدم ، واشوف شو التحديات اللي بيواجهها المستخدم ، اقوم بتطوير الاداء/البرنامج ليلائم تطلعاتي/رغباتي وهي عادة اكبر من حجمي/طاقتي ، فاللي اقدر عليه ابرمجه ، واللي ما اكون مقتنع فيه اوقفه . مبدئياً ، قمت بعرض ملفات الصور و pdf ، بصيغة pdf ، ولي عودة لها لما افرغ شوي ، وعندي فكرة تراودني وان شاء الله يكون عندي الوقت لعملها
  5. اخوي احمد ارفقت لك الكود الاصل لعمل هذه القائمة ، وقمت بتوقيف القوائم التي لا تحتاج لها ، وبتعديل ارقام القوائم التي تريدها ولم تظهر لك. 1. استورد القائمة الى برنامجك ، وجربها ، 2. اذا ما اشتغلت القائمة بالطريقة الصحيحة ، قم باستيراد الدالة ، وخلينا بعدين ننظر في تعديل القوائم اللي ما تشتغل. خلي عندك هذه الروابط حتى نرجع لها وقت الحاجة: . https://mskb.pkisolutions.com/kb/213552 Shortcut Menu_MDB_Report.mdb
  6. الحمدلله تم عمل الدالة ، وان شاء الله ارفقها في الموضوع الجديد
  7. وعليكم السلام ورحمة الله وبركاته شكرا على المشاركة اخوي موسى ، مرفقات متعوب عليها
  8. اخي احمد @أحمد العيسى نظرا لأن مشاركتك لا تخص الموضوع ، فقد فتحت موضوع خاص لها ، هنا :
  9. وعليكم السلام اخي احمد ولكوني لا املك اكسس 2003 ، فقد اعطيتك اقتراح من احد المواقع ، ولكن صادفت بعض الامور الاخرى البارحة (لا علاقة لها بهذا الكود) ، فأعدت التفكير مرة اخرى ، واليك النتيجة: جميع هذه الاوامر هي جزء من الاكسس ، فإذا مو موجودة في الاكسس ، فلن تعمل وستجدها باللون الرمادي (مثل التصدير الى PDF والتي لا توجد في اكسس 2003) ، ولاحظت اني لما فتحت التقرير بوضع Report View ، فاصبح امر close في القائمة رمادي ، فهاذ معناه ان الاكسس يعتبر هذا الوضع وضع نموذج وليس وضع تقرير !! عليه طلبت من الذكاء الاصطناعي ، فاعطاني هذه الدالة حتى تعمل على الصيغتين mdb و accdb ، وهي تعتمد في عملها على التأكد من صيغة البرنامج mdb او accdb ، فهذا معناه ان الدالة لا تكون ثابته (لا تحتاج الى الكود بعد تصنيعها) ، وانما هي مؤقته وتعمل كل مرة تشغل فيها الدالة : Public Function SCM_Zoom_Pages_Print_Export_TEMPORARY() Dim cmbName As String Dim cmb As Object Dim cmbCtrl As Object ' Variable IDs to handle MDB vs ACCDB compatibility Dim idQuickPrint As Long Dim idPrintDialog As Long Dim idExportWord As Long Dim idExportExcel As Long Dim idClose As Long On Error Resume Next 'If menu with same name exists delete cmbName = "rpt_Zoom_Pages_Print_Export_TEMPORARY" CommandBars(cmbName).Delete If Err.Number <> 0 Then Err.Clear On Error GoTo 0 ' Determine Control IDs based on file format (MDB < 12, ACCDB >= 12) If CurrentProject.FileFormat < 12 Then ' Classic Control IDs for MDB format idQuickPrint = 4 idPrintDialog = 19 idExportWord = 5535 idExportExcel = 5534 idClose = 1813 Else ' Modern Control IDs for ACCDB format idQuickPrint = 2521 idPrintDialog = 15948 idExportWord = 11725 idExportExcel = 11723 idClose = 923 End If ' Create the shortcut menu as TEMPORARY (The final parameter is set to True) Set cmb = CommandBars.Add(cmbName, msoBarPopup, False, True) With cmb ' Add Zoom Set cmbCtrl = .Controls.Add(msoControlPopup, 21, , , True) 'Zoom Set cmbCtrl = .Controls.Add(msoControlPopup, , , , True) cmbCtrl.Caption = "Zoom Report" cmbCtrl.Controls.Add msoControlButton, 15681, , , True 'Zoom Fit to window cmbCtrl.Controls.Add msoControlButton, 1834, , , True 'Zoom 10% cmbCtrl.Controls.Add msoControlButton, 1833, , , True 'Zoom 25% cmbCtrl.Controls.Add msoControlButton, 1832, , , True 'Zoom 50% cmbCtrl.Controls.Add msoControlButton, 1831, , , True 'Zoom 75% cmbCtrl.Controls.Add msoControlButton, 7, , , True 'Zoom 100% cmbCtrl.Controls.Add msoControlButton, 1830, , , True 'Zoom 150% cmbCtrl.Controls.Add msoControlButton, 1829, , , True 'Zoom 200% cmbCtrl.Controls.Add msoControlButton, 6463, , , True 'Zoom 500% cmbCtrl.Controls.Add msoControlButton, 6464, , , True 'Zoom 1000% ' Add Pages Set cmbCtrl = .Controls.Add(msoControlPopup, 176, , , True) 'Pages Set cmbCtrl = .Controls.Add(msoControlPopup, , , , True) cmbCtrl.Caption = "Pages View" cmbCtrl.Controls.Add msoControlButton, 5, , , True '1 page cmbCtrl.Controls.Add msoControlButton, 639, , , True '2 Pages cmbCtrl.Controls.Add msoControlButton, 1801, , , True '4 Pages cmbCtrl.Controls.Add msoControlButton, 1800, , , True '8 Pages cmbCtrl.Controls.Add msoControlButton, 1799, , , True '12 Pages ' Add the Print command. Set cmbCtrl = .Controls.Add(msoControlButton, idQuickPrint, , , True) cmbCtrl.BeginGroup = True cmbCtrl.Caption = "Quick Print" ' Add the Print command. Set cmbCtrl = .Controls.Add(msoControlButton, idPrintDialog, , , True) cmbCtrl.Caption = "Select Pages and Printer" ' Add the Page Setup... command. Set cmbCtrl = .Controls.Add(msoControlButton, 247, , , True) cmbCtrl.Caption = "Page Setup" ' Add the Mail Recipient (as Attachment)... command. Set cmbCtrl = .Controls.Add(msoControlButton, 2188, , , True) cmbCtrl.BeginGroup = True cmbCtrl.Caption = "Email Report as an Attachment" ' Add the PDF or XPS command (Only available if running Access 2007 or newer) If Val(Application.Version) >= 12 Then Set cmbCtrl = .Controls.Add(msoControlButton, 12499, , , True) cmbCtrl.Caption = "Save as PDF/XPS" End If Set cmbCtrl = .Controls.Add(msoControlButton, idExportWord, , , True) cmbCtrl.Caption = "Export to Word..." cmbCtrl.FaceId = 42 Set cmbCtrl = .Controls.Add(msoControlButton, idExportExcel, , , True) cmbCtrl.Caption = "Export to Excel…" cmbCtrl.FaceId = 263 ' Add the Close command. Set cmbCtrl = .Controls.Add(msoControlButton, idClose, , , True) cmbCtrl.BeginGroup = True cmbCtrl.Caption = "Close Report" End With Set cmb = Nothing Set cmbCtrl = Nothing End Function . وعلشان تشتغل القائمة ، فيمكنك مناداتها في حدث فتح التقرير ، وتتلغيه عند المغادة ، هكذا : Private Sub Report_Open(Cancel As Integer) Call SCM_Zoom_Pages_Print_Export_TEMPORARY Me.ShortcutMenuBar = "rpt_Zoom_Pages_Print_Export_TEMPORARY" End Sub Private Sub Report_Close() Call SCM_Zoom_Pages_Print_Export_TEMPORARY End Sub
  10. البرمجة مثل الطبخ ، هناك عدة طرق للطبخ ، وانا هذه طبختي لهذا الموضوع قد تكون مشاركتي مخالفه بوضع مادة تختلف عن طلب صاحب السؤال ، ولكنها بديل. هذه الفكرة لم تخطر على بالي لم يعطني الكود كاملا بحيث اعمل نسخ/لصق. انا تعمّدت عدم وضع الكود الذي عملت به القائمة المختصرة ، حتى يعرف المستخدم ان الكود غير ضروري لنسخ القوائم المختصرة بين قواعد البيانات. ان شاء الله سأفتح موضوع جديد تكملة لموضوعي السابق عن القائمة المختصرة (باقي اشياء بسيطة ، حتى اغطي اكبر كمية من الاختيارات) ، واحاول ايجاد كود يُرجع القائمة المختصرة الى ملف نص.
  11. السلام عليكم اذا الاكسس يعمل شيء معين ، فعادة انا لا عمل شيء بديل عنه ، مثل الانتقال من صفحة الى اخرى ، فالاكسس به هذه الخاصية ، وكما ان لون النص وحجمه ، هما من عمل المبرمج ، فلن تراني اضعه في يد المستخدم. بدلا عن هذا الشريط ، اليكم طريقة اسهل في التعامل ، ولست بحاجة الى سطر من البرمجة. من برنامجك استورد البرنامج المرفق (البرنامج لا يحتوي على اي كائن ، غير القائمة المختصرة) . . وفي تقريرك في وضع التصميم : . الآن افتح التقرير في وضع معاينة ، وبالنقر على زر الفأرة اليمين ستأتيك هذه القائمة (والتي تشمل على ايقونات شريط الطباعة في هذا الموضوع) . Shortcut Menu.accdb
  12. يالله يا شباب ، الهمة الهمة 🙂 اهم شيء في التعامل مع الذكاء الاصطناعي هو ، توجيهه غصبا عنه بما تريد ، ولا تخليه يشطح (بالعمانية ، يتصرف على كيفه 🙂 ) ، بس يحتاج حزم في التعامل معاه
  13. شكرا جزيلا اخوي موسى سأستخدم الكود/الفكرة التي تفضلت بها ، ولكن هذه التسميات تعتمد على مبرمج الجداول ، فانا مثلا لم استعمل هذه الخاصية في جداولي ، مطلقاً !! بما انك وضعت البرنامج هنا ، ليش ما تفرد له موضوع خاص وتشرحه ، بحيث يأخذ حقه
×
×
  • اضف...

Important Information