-
Posts
10020 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
408
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
هذه المعلومة غير صحيحة ، فالماكرو يحتاج كود كذلك !! تفضل 🙂 اليك طريقتين: . هلا والله بالحلوين 🙂 جعفر Disable_Command_Buttons.zip
-
وعليكم السلام 🙂 اخوي رمهان ، حيا الله هذه الطلّه ، ولو من الجوال 🙂 اخوي حسين ، الظاهر انك خبير في كيفية لفت نظر اخوي رمهان ، وجعله يطل علينا ، فلوسمحت كثّر من هذه الاسئلة 🙂 ونعود لنفس اللبس في موضوعك السابق: اذا كان قصدك اول ثلاث ارقام = 777 ، فالجواب مثل ما قال اخوي رمهان: اذا كان الحقل رقم If Left(Me.serh_Barcod, 3 )= 777 Then او اذا كان الحقل نص If Left(Me.serh_Barcod, 3 )= "777" Then ومثال مني If InStr(Mid(Me.serh_Barcod, 1,3), 777)>0 Then . اما اذا كان قصدك اول ثلاث ارقام تحتوي على الرقم 7 ، فالجواب سيكون: اول 3 احرف/ارقام من الحقل Mid(Me.serh_Barcod, 1,3) فيصبح كود البحث في الثلاث احرف/ارقام الاولى If InStr(mid(Me.serh_Barcod, 1,3), 7)>0 Then . جعفر
-
السلام عليكم 🙂 هذه جميع مكتبات مايكروسوفت ، بصيغة نواة 32bit ومقابلها نواة 64bit ، في ملف Win32API_PtrSafe.TXT https://www.microsoft.com/en-us/download/details.aspx?id=9970 وقد ارفقت الملف لسهولة الوصل اليه 🙂 جعفر Win32API_PtrSafe.zip
-
او ، وبدون الاختيار من المكتبة ، تستطيع استعمال: dim MAINMENU as object ولكن لا يُفضل استعماله وانت في حالة تصميم البرنامج ، لأن طريقة الاستاذ عصام (وتسمى Early Binding ، اي الربط المسبق) ، وعند الضغط على النقطة او المسافة ، فإن البرنامج سيساعدك ويعطيك خيارات للأمر الذي تكتبه (مثل بقية اوامر الاكسس) ، ولكن لما تنتهي من البرنامج ، يمكنك استعمال طريقتي (والتي تُسمى Late Binding ،اي الربط المتأخر) ، وميزته ، انه في جهاز المستخدم ، لن يحصل على الخطأ الذي حصلت عليه ، بسبب عدم اختيار المكتبة 🙂 جعفر
-
مساعدة في زيادة حجم الصورة الافتراضي
jjafferr replied to ازهر عبد العزيز's topic in قسم الأكسيس Access
وعليكم السلام 🙂 مثل ما اخوي emam1424 قال ، لا يمكن تكبيرها !! مايكروسوفت لم تحدث هذه لايقونات لأكثر من 20 سنة لهذا السبب ، يمكنك ان تنزل ايقونات من الموقع الذي اشار اليه اخوي emam1424 او من http://www.iconarchive.com/ ، او ان تعمله بنفسك بأي من برامج الرسومات ، او حتى تستعمل احد صور كاميرا هاتفك ، بالحجم اللي يناسبك ، ولكن ، تأكد ان لا تستعمل صور كبيرة في الحجم (وخصوصا في التقرير ، فإنها قد لا تظهر في الطباعة بسبب عدم وجود ذاكرة كافية في الطابعة لطباعتها) ، فإنها ستجعل برنامجك بطئ !! جعفر -
طباعة التقرير بحيث يطبع التظليل الي بالحقول
jjafferr replied to suliman1971's topic in قسم الأكسيس Access
اخي سليمان ، احنا في البرمجة محتاجين شرح اكثر من مجرد : لأن هذه الجملة لا تخبرنا شيء !! ورجاء ان تتأكد ان الخلفية غير شفافة . جعفر -
-
انت سؤالك كان في الحقل text2 ، جرب الرقم 1231231172564 واخبرنا النتيجة 😁 اما لو سؤالك كان: والحقل text2 = رقم ( 7 ) ، فالموضوع مختلف 🙂 جعفر
-
وعليكم السلام 🙂 تفضل : If Left(Me.text1, 1) = 7 And InStr(Me.text2, 7) > 0 Then MsgBox "رسالة التنبيه هنا" End If جعفر
-
حياك الله 🙂 يعني ما بتنقص درجاتي لأني اختصرت الطريق 😁 جعفر
-
طباعة التقرير بحيث يطبع التظليل الي بالحقول
jjafferr replied to suliman1971's topic in قسم الأكسيس Access
السلا عليكم اخي سليمان 🙂 شكرا على تذكيري 🙂 بسبب نوع حبر الطابعة ، وطريقة طباعة الطابعة Draft او Normal ، والورق ، لهذا السبب لن تحصل على نفس النتيجة/اللون الموجود في الشاشة ، وعليه ، يجب ان تجعل التظليل في الحقل ادكن قليلا ، واطبع وشوف النتيجة ، وبهذه الطريقة تجعل التظليل ادكن او افتح ، الى ان تصل الى اللون الصحيح على الورقة 🙂 جعفر -
وعليكم السلام 🙂 قواعد المشاركة فى الموقع اضغط هنـــــــــامن فضلك لقراءة القواعد كاملة و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف يُغلق . جعفر
-
وهنا انا شرحت ليش قمت بهذه الطريقة: . . بينما في السؤال الآخر للاستاذ فايز : . ما انتبهت للكود كاملا ، فوضعت نفس الكود ، ولكن للسطر التالي (12 بدلا عن 8 ) : . والنتيجة نفسها طبعا ، مع الاخذ في الاعتبار اني نقصت من 12 بدلا عن 8 🙂 جعفر
-
وعليكم السلام 🙂 الكود الاصل انا كنت عامله (من زمان 🙂 ) ، وبعدها تم تعديله وتعديله حسب طلب السائل بواسطة الاعضاء الشباب في المنتدى 🙂 ولما تم طرح السؤال الاخير بواسطة الاستاذ فايز ، شفت الكود كاملا مثل ما حضرتك تفضلت وارفقته 🙂 لاحظت ان التعديلات اللي قاموا فيها الشباب لا تسمح بالكود ان يقرأ جميع السجلات ، فكان يخرج من القراءه على السطر GoTo Got_the_info الموجود في الكود في الاسفل : . كان عندي حلين: 1. يا اني الغي كل الكود واغيره الى طريقتي ، وما كان فيه داعي ، لأن الكود كان يعطي نتائج صحيحة ، 2. او اني اشتغل على الموجود و اجاوب على السؤال بأقل قدر من التغيير ، وهذا اللي عملته 🙂 جعفر
-
وعليكم السلام 🙂 في ذيل النموذج Form Footer (ونفس الطريقة للتقرير) : . =Sum(IIf([microtype]='Large',[micronum],0)) . والنتيجة . وللتأكد ان النتيجة صحيحة ، نستخدم المجاميع في استعلامك: للجميع: . وفقط large : . والنتيجة مطابقة لتلك التي في النموذج 🙂 وبعد البحث: جعفر 1183.micro.accdb.zip
-
طيب كيف تصدر التقرير ، هل فيه زر يصدره مباشرة ؟ او تفتح التقرير ، ثم تنقر بالزر اليمين وتصدر ؟ شو نظام التشغيل ؟ شو نسخة الاكسس ؟ جعفر
-
وعليكم السلام 🙂 ارفق الكود الذي تستخدمه ، واسم الملف ، وهل تحصل على هذا الخطا على كمبيوتر معين ؟ جعفر
-
السلام عليكم 🙂 اخي مصطفى :) الرابط التالي فيه طريقة عمل الباركود للهويات ، وبدون تسجيل اداة ocx ، فيا ريت تقرأه بالكامل وعلى استكانة شاي ، وتستفيد من تجربتي 🙂 وسنويا يتم طباعة اكثر من 14 الف هوية بهذه الطريقة ، ويتم توزيع الرواتب عن طريق قراءة هذه الهويات عن طريق جهاز قارئ الباركود العادي : . في المادة 7 من الرابط اعلاه انا ذكرت حل لهذه المشكلة: 7. بإستخدام طريقتي اعلاه ، اتضح ان جهاز الباركود يقرأ 3 ارقام فأكثر (يعني يقرأ الارقام من 100 فما فوق) ، لهذا السبب ، ولتخطي هذه المشكلة ، نستخدم الكود التالي (و الشكر لحسن ناجح الذي اقترح هذه الطريقة 🙂 ) ، والذي يحول الارقام الاقل من 3 ، بإضافة اصفار قبلها (يعني 5 يصبح 005 وهكذا) : 'since the Barcode reader cannot read less than 3 digits, 'so lets add zeros before it, so that it becomes 3 digits long, 'but then, for the reading field, it must be INT If Len(Me.Emp_ID) < 3 Then Me.Barcode = "*" & Format([Employee_ID], "000") & "*" Else Me.Barcode = "*" & [Employee_ID] & "*" End If ** ولكن في وقت قراءة الباركود ، يجب ان تتم القراءة في حقل رقم ، مما سيلغي الاصفار تلقائيا فأرجو تستفيد منها 🙂 جعفر
-
جلب التاريخ من السيرفر وليس من جهاز المستخدم
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
🙂 -
جلب التاريخ من السيرفر وليس من جهاز المستخدم
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
يمكنك استخدام مثل هذا الكود : Me.srver_Time = Make_File() if format(Make_File(),"dd-mm-yyyy") <> format(date(),"dd-mm-yyyy") then msgbox "تاريخ السيرفر غير عن تاريخ الجهاز" end if . جعفر -
كيف اعرف اعداد الحضور والغياب في تقرير واحد
jjafferr replied to مصطفى الفارس's topic in قسم الأكسيس Access
وعليكم السلام 🙂 عندك المعلومة هنا . وكل اللي لازم تعمله هو تحسب عدد : P = Present = حضور A = Absent = غياب جعفر -
طباعة التقرير بحيث يطبع التظليل الي بالحقول
jjafferr replied to suliman1971's topic in قسم الأكسيس Access
وعليكم السلام 🙂 يا ريت ترفق لنا صورة من اللي موجود عندك ، وصورة من اللي تريده (سواء ببرنامج الرسام او الوورد او الاكسل او ... ) ، حتى يتضح السؤال 🙂 جعفر -
المساعدة في تفريغ بيانات عن طريق زر امر
jjafferr replied to حربي العنزي's topic in قسم الأكسيس Access
السلام عليكم 🙂 اسمحوا ان ادلو بدلوي 🙂 الموضوع هذا تكملة للموضوع: . المشكلة الموجودة عندك حاليا هي: 1. الامر الموجود في الكود : rst.MoveNext يجعل المؤشر ينتقل من سجل الى الذي يليه ، وفي النهاية يبقى على آخر سجل ، فلما تشغل الكود مرة ثانية ، لا يعمل لأنه لازال على آخر سجل 🙂 والعمل ، انك لما تشغل الكود ، ومن البداية تخبره ان يذهب الى اول سجل : rst.MoveFirst 🙂 2. لما تخرج من النموذج وتدخل فيه مره ثانية ، فواقعا انت تعيد المؤشر على اول سجل (لأن الكود لم يعمل بعد 🙂 ) . واذا ادخلت قيمة في حقل ، وعلى طول نقرت على زر تفريغ البيانات ، فقيمة هذا الحقل لن يتم تصفيتها ، لأنها لاتزال في وضع تعديل/Edit (اقرأ التفصيل هنا) : . لذلك يجب ان نبدأ بحفظ السجلات ، وهذا الامر يقوم بذلك: If Me.Dirty Then Me.Dirty = False وعليه سيعمل الكود بالطريقة الصحيحة 🙂 اليك الكود بعد الاضافات اعلاه : Dim rst As dao.Recordset If MsgBox("هل تريد حذف البيانات", vbYesNo, "تنبيه") = vbYes Then If Me.Dirty Then Me.Dirty = False Set rst = Me.RecordsetClone rst.MoveFirst Do Until rst.EOF rst.Edit rst![mdowrMD] = Null rst![mdowrDA] = Null rst![mdeen] = Null rst![daan] = Null rst.Update rst.MoveNext Loop Else Exit Sub End If 'MsgBox . جعفر -
جلب التاريخ من السيرفر وليس من جهاز المستخدم
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
وعليكم السلام 🙂 الطريقة الجديدة اللي توصلت لها هي عمل وحدة نمطية ، في برنامج الواجهة (ليس على السيرفر) تقوم بالتالي: - عمل ملف txt صغير على جهاز السيرفر، - قراءة الوقت الذي تم فيه عمل الملف (من اعدادات الملف) ، وهو الوقت الذي نريده ، -حذف الملف Public Function Make_File() Dim BE_Path, PauseTime, Start 'get the server path BE_Path = DLookup("[Database]", "MSysObjects", "[Flags]=2097152") 'Path and BE name BE_Path = Mid(BE_Path, 1, InStrRev(BE_Path, "\")) BE_Path = BE_Path & "dummy.txt" 'make the dummy txt file Open BE_Path For Output As #1 Print #1, "No text required" Close #1 'pasue for a second, until file is recognized, for slow networks PauseTime = 1 ' Set duration. Start = Timer ' Set start time. Do While Timer < Start + PauseTime DoEvents ' Yield to other processes. Loop 'get the date created Make_File = FileDateTime(BE_Path) 'clean up, delete the file Kill BE_Path End Function . وننادي هذه الوحدة النمطية هكذا: Me.srver_Time = Make_File() . وبما ان ملف الجداول يكون في مجلد يسمح فيه بإنشاء/تعديل/حذف ملف ، فهذه الطريقة المفروض انها تشتغل 🙂 طريقة العمل هي ان تضع ملف my_BE.mdb على السيرفر ، وملف my_FE.mdb على كمبيوترك ، ثم تربط جدول الواجهة مع جدول الخلفية (سيسألك البرنامج عن فتحه) 🙂 جعفر Server Time.zip -
وعليكم السلام 🙂 الاكسس ليس فيه خاصية تصغير حجم كائنات التقرير ليتناسب مع حجم ورقه واحدة (كما في الاكسل) ، لذا ، فعندك طريقتين: 1. الطريقة الموجودة في الاكسس هو يدويا في تصميم التقرير ، اعمل على الكائنات من حقول ونوع/حجم الخط ، بحيث تجعلهم اصغر شيء ممكن ، وبهذه الطريقة وبعد تصغير الكائنات ، سيكون التقرير في وضع التصميم اضيق افقيا (مما يعني تستطيع عمل 3 اعمدة او اكثر، بدل العمودين) ، واقصر عموديا (مما يعني سجلات اكثر) ، وانت وحظك ، في هل ستكون جميع سجلات المشروع في صفحة واحدة او لا 🙂 2. ممكن تصدير التقرير للاكسل ، ومنها تقدر يدويا/برمجيا ان تجعل الطباعة في صفحة واحدة (بس طبعا لازم تشتغل على #1 اعلاه 🙂 ) . وقبل ان تعمل اي شيء، تأكد ان عندك عدد الحقول صحيح : وبعدين لازم انك تلعب/تغير في التقرير الى ان ترى انه مناسب 🙂 جعفر