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

jjafferr

أوفيسنا
  • Posts

    9,756
  • تاريخ الانضمام

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

  • Days Won

    396

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

  1. وعليكم السلام اخي علي ارفع قاعدة البيانات ، وخلينا نشوف ايش ممكن نعمل علشان نسترجع البيانات (اذا كان هذا ممكن) ، واذا البيانات كانت حساسه ، ارفع البرنامج على اي موقع للرفع ، وارسل لي رساله على الخاص مع الرابط. انا افضل الطريقة الاولى ، لاعطاء المجال لكل من يريد المساعدة جعفر
  2. حياكم الله يا شباب شاكر كلماتكم اللطيفة بس وين الملاحظات ، وين الاسئلة!! يعني هل تم تجربة البرنامج؟ وما في استفسارات!! جعفر
  3. مادام البرنامج شغال تمام ، فلا تهتم في التفاصيل البسيطة جعفر
  4. السلام عليكم أخي الوئام هذه هي الطريقة الصحيحة لعمل البرنامج الصحيح بالاضافة الى تسمية الجداول وبقية الكائنات بمسميات لها معنى لكل من يقرأها جعفر
  5. حيا الله أخي رضوان انا مستخدم عنيد ، لا يقبل الـ لا من البرنامج ، واخلى راسي وراسه اشكرك على لطف حديثك جعفر
  6. السلام عليكم شباب انا اتبعت خطوات الاخ رضوان ، وكل شئ كان تمام ولكن لما اضفت حارسين زيادة الى الجدول ، صار عندن 3 حراس: وللاسف ، التقرير فرز 3 سجلات للحراس فعليه ، فكان لازم نعمل مجاميع للاستعلام ، علشان تكون عندنا قيمة واحدة للحراس: الآن الاستعلام تمام ولكن للاسف ، التقرير ما اعطاني النتائج الصحيحة لهذا شفت ان افضل طريقة للتعامل مع هذه المشكلة ، هي استعمال استعلام المجاميع ، وعمل وحدة نمطية تحلل وتفرز البيانات ، فهذا صار الكود: وهو محتاج 4 بيانات من الاستعلام فاصبح التقرير هكذا: والنتيجة: الوحدة النمطية: Function Count_MF(MinA As Integer, MaxA As Integer, MF As String, GR As String) 'MF = Male, Female 'GR = Grade_ar 'MinA = Age From 'MaxA = Age To 'Year_F = Year From 'Year_T = Year To Dim Year_F, Year_T As Integer Dim myCondition As String Year_F = Year(Date) - MinA Year_T = Year(Date) - MaxA myCondition = "val([txt4]) Between " & Year_F & " and " & Year_T myCondition = myCondition & " And [الجنس] ='" & MF & "'" myCondition = myCondition & " And [تاريخ نهاية العمل]='يومنا هذا'" myCondition = myCondition & " And [Grade_ar]='" & GR & "'" 'Debug.Print myCondition Count_MF = DCount("*", "EmpTB", myCondition) End Function جعفر 2..mdb.zip
  7. السلام عليكم أخي آخر الارض اذا تسمح لي اعدل في الكود ، وابين وين المشكلة في كودك: لما فتحت نموذج Main2 ، فاصبح هو الذي عليه التركيز ، فلما اصدرت الامر Docmd.close ، فانه يغلق النموذج الذي عليه التركيز وهو Main2 فالحل هو: Private Sub ÃãÑ2_Click() If Pas = 815 Then myForm= Me.Name DoCmd.OpenForm "Main2" docmd.Close acForm, myForm End If جعفر
  8. حياك الله اخي اسير الشروق بالنسبة لتجربتي على اكسس 2010 ، فكانت الشاشة الرماية تظهر لي عند تشغيل البرنامج ، والكود اللي انا اعطيته لأخي ابوعبير حل المشكلة ولكن ابوعبير لاحظ مشكلة اخرى ، وهي انك لما تفتح البرنامج ، يضع البرنامج ايقونة له على شريط المهام ، ولما تضغط على هذه الايقونة ، تظهر لك الخلفية الرمادية جعفر
  9. الاخ عبدالله صبحك الله بالخير انا اعتذر اني دخلت في موضوعك بدون ان اسلم عليك ، فأعتذر منك ، والعذر عند كرام الناس مقبول جعفر
  10. أخي أبوعبير بعد بحث دام وقت طويل ، توصلت إلى انك رابط ايقونة البرنامج بـ handle البرنامج ، وليس بـ handle النموذج ، لذلك عند ضغطك على الايقونة ترى خلفية البرنامج :( خبرتي قليلة في هذا المجال ، فالأفضل لو أن أحد الشباب اللي عنده طول في هذا المجال أن يساعدك :) جعفر
  11. أخي soft.sample الربط يعتمد على ما الذي تريد ربطه مثلا اذا عندك صور موظفين ، والصور محفوظة في مجلد Employee_Pictures ، والمجلد هذا وبرنامجك موجودين في مجلد واحد ، وانك حفظت الصور بالرقم الوظيفي Employee_ID لكل موظف ، وانت الآن تريد ان تعرض صورة الموظف في النموذج ، في السجل الخاص به ، واسم حقل/كائن الصورة في النموذج Employee_Pic مثلا ، فكود ربط الصورة مع النموذج سيكون في حدث الحالي: me.Employee_Pic.picture= application.currentproject.path & "\Employee_Pictures\" & me.Employee_ID & ".jpg" ونفس الشئ يمكن عمله اذا اردت ان تعرض ملفات pdf ، فبدل استخدام حقل/كائن الصور ، يمكنك استخدام كائن Browser وهو عبارة عن متصفح الانترنت ، ثم تستخدم كود شبيه بالكود اعلاه ، لتتم عملية الربط ميزة هذه الطريقة (اي استخدام الكود في الربط ولا ادراج الرابط في الاكسس) ، بانك تستطيع نقل مجلد برنامجك (والذي يحتوي على البرنامج ومجلد الصور) الى اي كمبيوتر ، وكل شئ يشتغل تمام في الحال ، بينما الرابط سيشير الى مجلد قد تم تغييره وانا متأكد بأن الاخ رمهان عنده تتمه للحديث معاك جعفر
  12. أخي رمهان انا كنت اظن اني بكتب كلمتين واشرد ، بس الظاهر انك صدتني انا اميل لإستخدام طرف ثالث ، وبحثت شوي زيادة ، وتوصلت الى برنامج آخر ، وجربته واشتغل تمام البرنامج اسمه NAPS2 من http://sourceforge.net/projects/naps2/ مفتوح المصدر http://sourceforge.net/p/naps2/code/ci/master/tree/ اوامر Commandline: http://sourceforge.net/p/naps2/wiki/Command%20Line%20Usage/ فيمكنك ان تتوصل الى طرف خيط اي api يستخدم (ما اعرف اي لغة مكتوب بها البرنامج)، فيه Commandline وجربته ، والنتيجة جميلة 1. نصب البرنامج ، 2. اعمل Profile لجميع اجهزة السكانر عندك ، بس اعطي كل جهاز اسم خاص بيه (انا سميت جهازي HP8500) ، 3. استخدم Commandline التالي: "C:\Program Files\NAPS2\naps2.console" -o "F:\scanned receipt.pdf" -p HP8500 وكله تمام ، وبهذه البساطة جعفر
  13. اما انا ، فاجعل البرنامج يقوم بالعمل قدر الامكان ، تفاديا لأخطاء المستخدمين ، ولا ادرج الرابط داخل السجلات في اكسس (طبعا هذا اذا في رابط) ، وانما اربط السجل بالكود ولكن اعتقد بأن سؤالك موجه للأخ عبدالله جعفر
  14. السلام عليكم ورحمة الله وبركاته اسمحوا لي ان اعرض فكرتي لكل جهاز طريقته الخاصة لمخاطبة الكمبيوتر بالكود ، وهذا يجعل العمل على كل الاجهزة عملية صعبة للغاية لذا ، اذا كان هناك برنامج محترف وسيط (مثل ما ذكراخي soft.Sample مثلا) ، فهو سيقوم بالعمل القذر (يعني ربط الجهاز بالكمبيوتر وDrivers و... ) ، والمطلوب من هذا البرنامج الوسيط ان يكون في امكانية التحكم به من برنامج الاكسس (وإلا فاننا نستطيع العمل مباشرة عن طريق برنامج الجهاز). برنامج IrfanView بالاضافة الى Plug-ins التابعة له: http://www.irfanview.com/ من البرامج التي لا استطيع ان استغنى عنها ، فاول ما يكون عندي كمبيوتر جديد ، فعلى طول انزل وانصب هذا البرنامج المجاني الأكثر من رائع احد الخصائص التي في البرنامج ، انك ممكن تتحكم فيه عن طريق CommandLine ، وفيه العديد من الاوامر ، وهذا الشئ مهم اذا كنا نريد استعماله مع الاكسس. البرنامج كذلك يستطيع التعرف على جميع اجهزة السكانر المرتبطة بالكمبيوتر: فلما تريد ان تقوم بعملية مسح مستندات من الاسكانر ، فما عليك إلا ان تقوم باختيار الماسح من القائمة (مرة واحدة فقط) ، وبعدها تستخدم هذا الامر من الكود في VBA عن طريق الامر Shell او ShellWait: "c:\program files\irfanview\i_view32.exe" /batchscan=(scanfile,1,1,2,0,c:\temp,tif,1) /scanhidden "c:\program files\irfanview\i_view32.exe" /multipdf=(c:\temp\test.pdf,c:\temp\scanfile01.tif) /killmesoftly والذي يقوم بمسح المستندات وحفظها بصيغة tif ، ويقوم السطر التالي بتحويل المستند الى pdf. وبما ان الكود في VBA ، فيمكنك التحكم في اسم المجلد اسم الملف وترقيمه و.... جعفر
  15. حياك الله أخي ابوخليل انا احاول ان تكون امثلتي بصيغة mdb قدر المستطاع ، حتى تكون في متناول الجميع ، كما تفضلت جعفر
  16. السلام عليكم ورحمة الله وبركاته اشكركم يا شباب على حسن ترحيبكم اشكرك اخي ابو الآء 1. التقرير عبارة عن تقرير عادي ، يمكنك عمل ما شئت به من طباعة وحفظ بالصيغ التي يسمح بها الاكسس 2. فكرة ممتازة ، لانه في بعض الاشياء اللي لها علاقة بالكود ، وقد يستفيد منها الآخرون ، فمثلا: الكود يعمل قاعدة بيانات خارجية ، ويلصق بها البيانات التي طلبتها ، ثم يمسح هذه القاعدة ، والسبب اني عملت هذا ، لأني لا احبذ ان تكون الجداول المؤقته في البرنامج ، حيث ادخال البيانات فيها ثم حذفها ، يؤثر على حجم البرنامج ، ويجب عليك عمل Com[act and Repair بين الحين والآخر ، بينما عمل جدول مؤقت في قاعدة بيانات مؤقته خارج البرنامج ، لا يكلف إلا كود في عملها ، وكود آخر في حذفها ، وَكَفَى اللَّهُ الْمُؤْمِنِينَ الْقِتَالَ جعفر
  17. حياك الله اخوي رمهان انا مدمن عمل ، فما اقدر اجلس فاضي احنا ضيوفكم هنا ، كما كنا ضيوفكم هناك جعفر
  18. حيا الله اخوي ابوعبير افتح Notpad ، واكتب فيه هذا الكود: Dim WshShell, strCurDir Set WshShell = CreateObject("WScript.Shell") strCurDir = WshShell.CurrentDirectory WshShell.Run strCurDir & "\Nasystry.mdb", 2 Set WshShell = Nothing واحفظه في نفس مجلد قاعدة بياناتك بصيغة vbs ، ودائما تقدر تعمل منه shortcut وتخليه على سطح المكتب لفتح برنامجك ، انقر مرتين على الملف مرفق لك البرنامج كذلك. جعفر Nasystry_Start_minimized.zip
  19. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته اخوتي / اخواتي لي الشرف ان انظم الى هذا الصرح العلمي ، سائلاً المولى جل وعلا ان يوفقني لما فيه الخير للجميع 🙂 في اول مشاركة لي ، اضع بين يديكم برنامج مسقط التقارير (مسمى صانع التقارير متداول كثيرا ، لذا احببت ان اسمي برنامجي بإسم مميز ، إسم مسقطنا الحبيبة 🙂 ). البرنامج في نسخته الاولى ، لذا ، فلا تتوقعوا الكثير منه 🙂 في احد المشاريع التي عملت عليها قريبا ، كان العمل لسجلات شؤون الموظفين ، ولم يكن بالامكان عمل تقرير محدد ، حيث كانت التقارير المطلوبة من الادارة بشتى انواع البيانات ، طولا وعرضا. لذا اضطررت العمل على صانع للتقارير (في الواقع مسقط التقارير يعتبر برنامجا بحد ذاته ، فالعمل كان ، برنامج في برنامج 🙂 ). مع ان البرنامج بسيط في طريقة عمله (وطبعا عندي الكثير من الاشياء الاخرى التي اود ان اضيفها ، لكن في وقتها ان شاء الله ، وبما ان البرنامج مفتوح المصدر ، فانا ارحب بمن يضيف عليه خصائص جديدة 🙂 ) ، فمع بساطة البرنامج ، إلا ان نتائجه مرضية 🙂 العمل على البرنامج ابسط بكثير من شرحه 🙂 يمكنك نقل هذه الكائنات السته الى برنامجك الخاص ، ومسقط التقارير سيعمل بدون الحاجة الى اي تغيير او كود: مسقط التقارير يعمل على الجداول والاستعلامات فقط ، واليكم طريقة العمل: جدول او استعلام: اختر من ايهم تريد ان تعمل تقريرك ، جدول او استعلام ، الاسم: على اساس الاختيار السابق ، ستظهر لك قائمة بجداولك او استعلاماتك ، وعندما تختار اسم جدول او استعلام ، فان النموذج الفرعي الذي اسفل الاسم سوف يمتلئ باسماء الحقول من الجدول او الاستعلام ، وكلها عليها اشارة اخفي (اي كلها ستكون مخفية من الظهور في النموذج الفرعي الذي بالاسفل) ، احذف اشارة الاخفاء عن الحقول/الخانات التي تريدها ، وستظهر لك في النموذج الفرعي الذي في اسفل النموذج. هذا النموذج هو شكل مبسط من التقرير ، فكما ترى الحقول وعرضها ، وعدد السجلات ، ستراها في التقرير. هناك خطان فوق النموذج الفرعي ، باللون الاصفر والاخضر ، اذا كانت بياناتك اقل من الخط الاصفر ، سيكون التقرير بالطول ، وإلا فانه سيكون بالعرض ، وهناك خطان صفر ، فالمسافة بينهم ستكون للترقيم التلقائي للتقرير (لاحظ ان التقرير لبيانات النموذج ادناه سيكون بالعرض ، لأننا تخطينا الخط الاصفر 🙂 يمكننا ان نمسك الحقول/الخانات بالزر الايسر من الفأرة ونغير ترتيبها يمينا ويسارا ، كما ان البرنامج يحترم عرض الحقل الذي تقوم بتعديله ، (لاحظ ان التقرير لبيانات النموذج سيكون بالطول ، لأننا في حدود الخط الاصفر 🙂 وهذا هو التقرير لبيانات النموذج السابق ، ولاحظ ان البرنامج يقوم بتغيير ارتفاع الصف تلقائيا ، حتى يمكن مشاهدة جميع بيانات الحقل. اذا قررت ان تتعدى الخط الاصفر ، فنفس شروط الخط الاصفر تنطبق على الخط الاخضر ، وهنا نرى باننا اضفنا عنوان لراس صفحة التقرير ، واضفنا معلومات عن موضوع التقرير ، بالاضافة الى معلومات في ذيل التقرير: وهذا هو تقرير لبيانات النموذج السابق ، ولاحظ ان البرنامج يوسع عمود الترقيم التلقائي ليسد المسافة: بعد اختيار الحقول التي نريدها في التقرير ، نستطيع ان نفرز الحقول بالطريقة التي نريد: وكذلك تصفية البيانات حسب الحاجة: وهذا هو تقرير لبيانات النموذج السابق ، لاحظ عدد السجلات قد تغير ، لأني طلبت ان ارى السجلات التي مبالغها اكبر من 500: البرنامج لا يحفظ التقارير (نعم ، عمل طريقة لحفظ اسم لكل تقرير ، على قمة قائمة التحديثات ان شاء الله 🙂 ) ارجوا ان تتقبلوا مني هذا العمل المتواضع 🙂 اسئلة/اقتراحات ، سأحاول الرد على قدر استطاعتي ان شاء الله 🙂 جعفر ملاحظة1: عمود المجموع لا يعمل ، وكان يجب ان اخفيه 😞 ملاحظة2: في الاساس كان عندي كمية كبيرة من صور الشرح ، إلا ان المنتدى لا يسمح بأكثر من 10 مرفقات ، فاختزلت الموضوع 🙂 ملاحظة3: ادراج فيديو لطريقة عمل التقرير: Muscat_Reports.zip
×
×
  • اضف...

Important Information