بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
10011 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
408
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
هل يمكن فتح تقرير من بيانات موجودة في نموذج فرعي ؟
jjafferr replied to Rawannnna's topic in قسم الأكسيس Access
وعليكم السلام اختي واهلا وسهلا بك في المنتدى سأعطيك الطرق التالية لعمل المطلوب: 1. لا تعملي اي معيار في الاستعلام ، وسنطلب من البرنامج ان يفتح التقرير برقم Research_ID الذي تنقرين عليه (على نفس السجل ، سواء في النموذج الارئيسي او الفرعي)، وبالنظر الى الصور التي ارفقتيها ، ولأن ارقام حقل Research_ID في يمين الحقل (طبعا هذا اذا لم تقومي بعمل تنسيق له وعمل محاذاته لليمين) ، فهذا معناه ان الحقل نص وليس رقم اذا كان حقل Research_ID نص DoCmd.OpenReport "Report1", acViewPreview, , "[Research_ID]='" & Me.Research_ID & "'" واذا كان رقم DoCmd.OpenReport "Report1", acViewPreview, , "[Research_ID]=" & Me.Research_ID 2. اذا اردتي ان تضعي المعيار في الاستعلام ، فسيكون هكذا (طبعا غيري اسم Main_Form الى اسم النموذج الرئيسي ، و Sub_Form الى اسم النموذج الفرعي): Forms!Main_Form!Sub_Form!Research_ID 3. اذا عندك نموذج رئيسي لا يُغلق طول فترة البرنامج (سواء أكان ظاهر او مخفي) فلنسميه frm_Main ، فاعملي فيه حقل بإسم iResearch_ID مثلا، ثم اعملي الاستعلام على ان يأخذ معيار الحقل Research_ID من هذا الحقل ، وعلى حدث فتح التقرير ، سنرسل قيمة الحقل Research_ID الذي في النموذج الفرعي ، الى الحقل iResearch_ID في النوذج frm_Main ، والذي سيأخذ الاستعلام قيمته: Forms!frm_Main!iResearch_ID=me.Research_ID DoCmd.OpenReport"Report1" ,acViewPreview جعفر- 1 reply
-
- 2
-
-
هل من طريقه لتسهيل عملية تحديث النسخه
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
حياك الله أخي أوس ، واعتذر اني لم الحظ تعقيبك جعفر -
هل يمكن استدعاء input box متعدد الادخال
jjafferr replied to أبو عبدالله الحلوانى's topic in قسم الأكسيس Access
السلام عليكم شباب أخي أبوعبدالله: قد لا يكون الذي تبحث عنه ، ولكنها طريقة مفيده لإدخال مجموعة من البيانات مرة واحدة: جعفر -
السلام عليكم اخي ابوعمار رجاء معاينة الرابط الاخر للسؤال: جعفر
-
السلام عليكم اخي ابوعمار انا اعتذر منك على التأخر في الرد ، حيث كنت على سفر ارجو انك لازلت بحاجة الى هذا الجواب الحل في: ا- الاستعلام ، لعمل الارقام في تسلسل (لأن حقولك عبارة عن نص ، والتسلسل فيها لا يكون صحيح) ، 2- مجاميع التقرير (في اسفل التقرير) ، لكي نعمل مجموعات الحقول ذو الرقم الواحد ، والثلاثة ، والاربعة ، والستة ، 3- الكود ، لإخفاء السجلات الغير مطلوبة. والنتيجة: جعفر 610.1.مطلوب تقرير.accdb.zip
-
هل من طريقه لتسهيل عملية تحديث النسخه
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
السلام عليكم النقطة رقم 2 يمكن الحصول على الكود حقها من الرقم 16 في المرفق التالي: جعفر -
هل من طريقه لتسهيل عملية تحديث النسخه
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
الله ان شاء الله يسلمك ويعافيك ، اخوي أبوخليل جعفر -
هل من طريقه لتسهيل عملية تحديث النسخه
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
السلام عليكم بالفعل فكرة ممتازة ، ولكن: للأسف الشديد ، الكثير من المبرمجين يعتمدون على حقل الرقم التلقائي في ربط حقول الجداول ، مع ان حقل الرقم التلقائي المُفهرس لا يجب استخدامه إلا للاكسس ، لا للمبرمج ولا لبرنامجه ، لذلك ، فنقل البيانات من جدول الى آخر ، فإن حقل الرقم التلقائي سيلخبط البيانات والعلاقات بين الجداول انا في برامجي ممكن استفيد من هذه الفكرة ، فحقل رقم التسلسل الذي استخدمه لا علاقة له بحقل الرقم التلقائي جعفر -
فتح نموذج في قاعدة بيانات اخرى بها ماكرو بدء التشغيل لنموذج اخر
jjafferr replied to SAROOK's topic in قسم الأكسيس Access
الجواب في المرفق -
نعم لوسمحت ترفق الملف ونرى ما يمكن عمله ان شاء الله جعفر
-
انا لا اعرف الشركة ، ولكن بما ان خبير أكسس مثل Allen Brown قام بتزكيتهم في موقعه وموقعهم ، فهذا الضمان الذي اعتمد عليه وهذا البرنامج غير متوفر في السوق حسب علمي ، فالشركة قامت بعمل برنامج تحويل MDE الى MDB والمتوفر في السوق ، ولكن بدون استخراج الكود ، والظاهر انهم لما نجحوا في الحصول على الكود كذلك ، فأوقفوا بيع البرنامج ، وجعلوا هذا التحويل بمقابل 450$ للبرنامج جعفر
-
فتح نموذج في قاعدة بيانات اخرى بها ماكرو بدء التشغيل لنموذج اخر
jjafferr replied to SAROOK's topic in قسم الأكسيس Access
السلام عليكم بالاضافة الى طريقة اخي شفان ، هناك طريقتين بحثت عنهم: 1. https://msdn.microsoft.com/en-us/library/aa211469(v=office.11).aspx 2. كما في المرفق نستعمل الوحدة النمطية من الرابط التالي: http://access.mvps.org/access/api/api0068.htm والتي تمسك مفتاح الشفت برمجيا ، ومنه لا يعمل الماكرو Autoexec جعفر 609.zip -
للعلم اذا اردت ان تنادي عضو لموضوعك ، فهناك طريقة لإرسال تنبيه له ، هكذا: اكتب @ وبعدها اكتب الاسم مباشرة ، واذا اردت التنبيه لأكثر من عضو ، فاترك مسافة بينهم مثلا ، سأرسل تنبيه اليك والى اخي أوس واخونا العود ابوخليل: @Shivan Rekany @sandanet @ابو خليل
-
كسر حماية الوحدة النمطية متوفر، والقصد من commercial معناه بأنهم يقومون بالعمل بأجر مادي شو المشكلة اخي الو عبدالله !! الموضوع ليس بجديد وصار له سنين ، والحمدلله ، مافي شئ من برامجنا تأثر واللي يريد يسرق ، يحصل له الف طريقة !! جعفر
-
بالعكس اخي أوس ، انا اتعمد فك الكود الى اسطر بالتفصيل ، حتى يكون الكود سهل الفهم (بس الظاهر جبت اسمي وقصدك @رمهان بكوده المختزل) واليك شرح الكود: Dim rst1 As DAO.Recordset Dim rst2 As DAO.Recordset نحتفظ ببيانات الجدول1 في هذا المتغير#1 في ذاكرة الكمبيوتر المؤقته Set rst1 = CurrentDb.OpenRecordset("Select * From tbl1") بينما نحتفظ ببيانات الجدول2 في هذا المتغير #2 في ذاكرة الكمبيوتر المؤقته Set rst2 = CurrentDb.OpenRecordset("Select * From tbl2") من الآن ، تقريبا كل شغلنا على #1 ، حيث سنقرأ سجلات الجدول جميعها ، ثم نقارن حقلي الاسم والشهادة فاذا وجدنا القيم متساوية في #2 ، فاننا نحذف سجل #2 علشان نبدأ من اول سجل ، يجب ان نذهب الى آخر سجل ، ثم نرجع لأول سجل rst1.MoveLast: rst1.MoveFirst الآن نستطيع حساب عدد السجلات الموجودة في #1 RC1 = rst1.RecordCount الآن سنقرأ جميع سجلات #1 For i = 1 To RC1 اسم حقل الاسم يختلف في الجدولين ، فانتبه له ، بينما اسم الشهادة هو نفسه بين الجدولين لذا الذي نعمله هنا هو اننا نقارن حقلي الاسم والشهادة في السجل في #1 ، ونختبر وجودهما في الجدول #2 rst2.FindFirst "[degree]='" & rst1!degree & "' And [names]='" & rst1!fullnames & "'" اذا "عدم المطابقه" خطأ ، معناه انه في مطابقة بين الحقلين في هذا السجل ونستخدم هذه الطريقة ، لأنها الاسهل If rst2.NoMatch = False Then اذن ، احذف هذا السجل من #2 rst2.Delete End If انتقل الى السجل التالي في الجدول #1 rst1.MoveNext Next i هذه الجزئية جدا مهمة ، لأننا جعلنا الجدولين في ذاكرة الكمبيوتر المؤقته ولكي نُخلي الذاكرة ، يجب عمل التالي rst1.Close: Set rst1 = Nothing rst2.Close: Set rst2 = Nothing جعفر
-
تفضل: http://www.everythingaccess.com/mdeconversion_example.htm وسترى: Original source code Reverse engineered source code وفي الرابط التالي ، اسمهم مذكور من شخص ثقة ، Allen Browne http://allenbrowne.com/links.html جعفر
-
وبدون تعليق : http://www.pruittfamily.com/paul/MDE2MDB.htm http://www.everythingaccess.com/mdeconversion.asp جعفر
-
المساعده فى حل المشكله( لا يمكن تحديث الحقل )
jjafferr replied to ابو الآء's topic in قسم الأكسيس Access
وعليكم السلام أخي أبو الآء الظاهر الحياة اخذتك بعيدا عن الاكسس جعفر -
اخي شفان هل تستعمل الاكسس 2016؟ وهل عملت القفل على الاكسس 2016؟ جعفر
-
يعني لما تمسك الشفت وتفتح البرنامج ، هل تستطيع ان ترى الجداول وبقية الكائنات؟ جعفر
-
السلام عليكم أخي ابوجاسم ، اعتقد فيه عدم فهم للموضوع!! لما اباجودى قال: 1 و 2 لحل مشكلة ماقبل التحويل ، ولم يصل للنتقطة 3 بعد !! بالنسبة للنقاط 1 و 2 ، فانت تؤكد على عمل البرنامج بطريقة صحيحة: ولكن اباجودى لم يعمل النقطة رقم 3 بعد ، لذلك تقدر تعمل اللي قلت عنه لوسمحت اباجودى ، اكمل مشوار الخطوة 3 ، والتي ستكون قفل الشفت ، وتسليم المرفق بصيغة accde جعفر
-
اها ، لم التفت للشرط الاول اذن الاستعلام سيكون: . والكود سيصبح: Dim rst1 As DAO.Recordset Dim rst2 As DAO.Recordset Set rst1 = CurrentDb.OpenRecordset("Select * From tbl1") Set rst2 = CurrentDb.OpenRecordset("Select * From tbl2") rst1.MoveLast: rst1.MoveFirst RC1 = rst1.RecordCount For i = 1 To RC1 rst2.FindFirst "[degree]='" & rst1!degree & "' And [names]='" & rst1!fullnames & "'" If rst2.NoMatch = False Then rst2.Delete End If rst1.MoveNext Next i rst1.Close: Set rst1 = Nothing rst2.Close: Set rst2 = Nothing جعفر
-
وعليكم السلام اخي شفان الرابط بين الجدولين معناه ان Degree يجب ان تكون متساوية بين الجدولين ، فيعرض النتائج تلك فقط واليك طريقة اخرى بالكود ، وبنفس النتائج: Dim rst1 As DAO.Recordset Dim rst2 As DAO.Recordset Set rst1 = CurrentDb.OpenRecordset("Select * From tbl1") Set rst2 = CurrentDb.OpenRecordset("Select * From tbl2") rst1.MoveLast: rst1.MoveFirst RC1 = rst1.RecordCount For i = 1 To RC1 rst2.FindFirst "[degree]='" & rst1!degree & "'" If rst2.NoMatch = False Then rst2.Delete End If rst1.MoveNext Next i rst1.Close: Set rst1 = Nothing rst2.Close: Set rst2 = Nothing جعفر