-
Posts
9907 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
وهذه روابط تساعد في الموضوع: جعفر
-
السلام عليكم الوقت كان متأخر ، وحطيت لك كلمتين بدون شرح ، فأعتذر منك ضع الكود على حدث النقر على الزر: نفترض اسماء الحقول رقم المورد: No = 0292 من رقم: From = 02920501 الى رقم: To = 02920509 مقارنة الاربعة ارقام الاولى من اليسار left(me.From,4) = 0292 left(me.To,4) = 0292 if left(me.From,4) <> left(me.To,4) or _ left(me.From,4) <> me.No or _ left(me.To,4) <> me.No then msgbox "Numbers Don't match" end if جعفر
-
وعليكم السلام يمكن شئ من هذا يصلح: if left(me.From,4) <> left(me.To,4) or _ left(me.From,4) <> me.No or _ left(me.To,4) <> me.No then msgbox "Numbers Don't match" end if جعفر
-
مثالك الاخير هو الذي شرح لنا المطلوب 1. نعمل استعلاملنتائج الجدولين Customer و Denomination ، واستعلام آخر لنتائج الجدولين Customer و Deposit ، ولغرض الخطوة التالية (استعلام توحيد) ، فيجب ان تكون عدد الحقول نفسها في الاستعلامين ، وبنفس الترتيب: . ونتائجهم هي كما نريد: . ثم نحول وضع الاستعلامين الى SQL ، ثم نعمل استعلام توحيد ، وننسخ SQL الاستعلام الاول الى استعلام التوحيد ، ثم جملة Union All ثم ننسخ SQL الاستعلام الثاني: . ونتيجة الاستعلام: . الآن نعمل استعلام جديد ، ومصدره استعلام التوحيد اعلاه ، ويجب استعمال زر النموذج لتشغيل الاستعلام ، كما ان الاستعلام سيأخذ التاريخ من النموذج كذلك ، والاستعلام ينادي الوحدة النمطية Bal ، والتي سيأخذ نتائجه منها: . وكود زر فتح الاستعلام هو (لاحظ انه نريد ان نبدأ متغير الجمع B من الصفر) : Private Sub cmd_qry_Cust_Deno_Depo_Click() B = 0 DoCmd.OpenQuery "qry_Balance" End Sub . وهذه نتيجة الاستعلام: . وهذه هي الوحدة النمطية: Public B As Long Function Bal(C, D) 'C = Cash 'D = Depo C = Replace(C, "-", 0) D = Replace(D, "-", 0) B = C + B - D Bal = B End Function . الباقي الذي تريده ، يجب ان تعمله في التقرير جعفر 597.Test.accdb.zip
-
اعطني مثال باسماء الحقول وبالارقام من برنامجك ، واخبرني كيف يجب ان يظهر الاستعلام جعفر
-
للأسف الشديد ، المسميات الحقول التي ذكرتها لا تتطابق مع الحقول في برنامجك ، وعندك اكثر من "رصيد الصندوق" واحد جعفر
-
تفضل: 1. 2. وقم بإضافة بقية الحقول . جعفر هذا موضوع آخر !! يعني تستطيع عمل الاستعلام ، ولكن لا توجد سجلات فيه !! طبعا لن تحصل على سجلات ، لأنه لا يوجد رقم متحد بين الجداول الثلاث!! جرب التالي: في الجدول Deposit ، غيّر القيمة الاولى من 73 الى 68 ، ثم جرب الاستعلام ، فسترى سجلا واحدا . جعفر
-
اعمله بالطريقة اليدوية كما شرحت لك
-
وعليكم السلام بالنسبة الى (1) ، فاعمب استعلام ، واسحب الجداول الثلاث فيه ، واختر حقول الجداول ، ويصير عندك الاستعلام ، شو المشكلة اللي عندك؟ جعفر
-
هدية أبو غفران : برنامج إنشاء شريط القوائم .
jjafferr replied to صالح حمادي's topic in قسم الأكسيس Access
هي الترقية: خبير + شوية مسؤوليات = مشرف -
معالج تركيب نظام التثبيت 2007-2016 .... هدية لاوفيسنا
jjafferr replied to Elsayed Bn Gemy's topic in قسم الأكسيس Access
تم اغلاق الموضوع ، وحذف المرفقات حسب طلب صاحب الموضوع. جعفر -
جرب مرفق المشاركة الثانية
-
وعليكم السلام افضل طريقة انك تضيف الى النموذج الرئيسي حقل "رقم امر الصرف" ، ثم تربط النموذج الرئيسي بالنموذج الفرعي بهذا الحقل ايضا يعني انت عندك الربط بين النموذجين بالحقلين مسلسل;رقم الروشتة ، فيصبحون مسلسل;رقم الروشتة;رقم امر الصرف جعفر
-
هدية أبو غفران : برنامج إنشاء شريط القوائم .
jjafferr replied to صالح حمادي's topic in قسم الأكسيس Access
نعم اشتغل عندي وانا بصدد النظر في تفاصيله جعفر -
خطأ في القيمة الجديدة بالتسلسل التلقائي
jjafferr replied to هديل الحارثي's topic in قسم الأكسيس Access
وعليكم السلام لا يوجد مشكلة ، ولكن هذا سيحل مشكلتك مؤقتا ، وستظهر المشكلة لاحقا مرة ثانية ظاهرا مشكلتك في العلاقات جعفر -
هدية أبو غفران : برنامج إنشاء شريط القوائم .
jjafferr replied to صالح حمادي's topic in قسم الأكسيس Access
وعليكم السلام غفران ماشاءالله تبارك الرحمن ، هدية جميلة شكرا لك جعفر -
معالج تركيب نظام التثبيت 2007-2016 .... هدية لاوفيسنا
jjafferr replied to Elsayed Bn Gemy's topic in قسم الأكسيس Access
السلام عليكم اخي السيد تختفي ، وتأتينا بشئ غير متوقع ، وبطريقة استعمال سهلة جعفر -
بالعكس ، انا دائما اقول: جعفر
-
هدية: ارسل / استرجع بيانات من مواقع الانترنت
jjafferr replied to jjafferr's topic in قسم الأكسيس Access
السلام عليكم تم عمل موضوع آخر ، وبه الشرح و البرنامج جعفر -
السلام عليكم ورحمة الله وبركاته مسقط التصفح : هو برنامج لقراءة صفحة الانترنت ، واستخراج اسماء الحقول ، لإرسال البيانات اليها من برنامج الاكسس ، او استيراد البيانات منها الى الاكسس وبما ان برمجة صفحات الانترنت تختلف من مبرمج الى آخر ، فبرنامجنا لن يشتغل على جميع الصفحات / المواقع ، وبالتجربة فقط نستطيع معرفة الصفحات التي يشتغل عليها البرنامج طريقة العمل: النموذج frm_browse يحتوي على (1) كائن Microsoft Web Browser (والذي لا يحتوي على جميع مكونات البرنامج الاصل Internet Explorer ، ولكنه يفي بالغرض) ، ندخل اسم الموقع في (2) حقل التحرير والسرد url_Address ، ثم نضغط على (3) الزر Go ، والذي سيفتح الموقع في النموذج ، وسيتم حفظ عنوان الصفحة ، واعطائة رقم مسلسل في الجدول tbl_url_address ، الزر (4) "احفظ csv" سيقرأ كائنات الموقع ، ويحفظها في ملف بصيغة csv (اللي ينفتح بالاكسل) ، ثم يفتح الملف ، وفيه 3 طرق لإرسال معلومات الى اي حقل تريد (يعني يعطيك الكود جاهز لكل حقل) ، والافضل استعمال الكود الذي في العمود "Usage2" ، حيث ليست جميع الحقول لها اسماء (للأسف في بعض المواقع) ، الزر (5) "احفظ في الجدول" ، حيث سيحفظ كائنات الموقع في جدول tbl_Send_Get في البرنامج ، والاصعب كان استخراج بيانات حقول التحرير والسرد من الصفحة ، والتي يتم حفظها في الجدول tbl_Options ، ولما يستخلص البرنامج جميع حقول الصفحة ، سيفتح النموذج frm_Send_Get ، الزر (6) "تجربة ارسال ، استيراد بيانات لهذا الموقع" يفتح نفس النموذج frm_Send_Get وبه كائنات الموقع واسماء الحقول (حسب اسمها في البرنامج وليس حسب ظهورها على الموقع ، فالموضوعين غير مرتبطين للأسف في برمجة الموقع) ، هنا نرى الحقول التي استطاع البرنامج التعامل معها ، (8) رقمها المتسلسل في الصفحة (والتي سنتعامل معها برمجيا لاحقا) ، (9) نوع الحقل والذي قد يختلف من صفحة الى اخرى ، (10) اسم الحقل في الصفحة (والتي سنتعامل معها برمجيا لاحقا) ، (يجب ادخال اي اسم في الحقول الفارغة) واذا كان الحقل عبارة عن مربع تحرير وسرد ، وللحصول على قيمه ، انقر على الاسم مرتين ، فينبثق النموذج frm_Options بالاختيارات (تابع الشرح لاحقا) ، هنا نستطيع تجربة اذا كان بإمكاننا ارسال/استرجاع بيانات الى/من الموقع ، فتختار اي حقل تريد التجربة عليه ، وتكتب المعلومة التي تريد ارسالها في الحقل (11) Send_Data وبالنقر المزدوج على المعلومة ، وسترى انه تم ادخالها في الحقل في صفحة الموقع الموقع ، ويمكن التأكد كذلك من امكانية قراءة معلومة الحقل بالنقر المزدوج على الحقل (14) Get_Data ، والمهم في هذه التجارب هو معرفة صيغة قبول الحقل للمعلومة ، بالنسبة لحقول التحرير والسرد وكما اشرت سابقا ، فالموضع يختلف قليلا ، لأنه مثل الاكسس ، فالمعلومة التي تراها في الصفحة في اختيار المعلومة من هذا الحقل ، ليس معناه انها نفس القيمة التي تُحفظ في الجدول ، لذلك يجب عليك النقر المزدوج على الحقل ref_Name ، فيعطيك قائمة الاختيار من النموذج frm_Options ، وبالنقر المزدوج على الحقل Opt_Value ستنتقل المعلومة الى الحقل في Send_Data النموذج frm_Send_Get ، والتي يمكن بالنقر المزدوج عليها ان ترسل المعلومة الى الحقل في الموقع (وهنا قد لا ترى التغير على الحقل في الموقع ، ولكن عندما تنقر عليه لتختار ، ستجد ان الاختيار قد تم حسب رغبتك) ، (12) يجب اختيار اي من الحقول التي تريد ان تستعملها من الموقع ، (13) وهنا تختار تسلسل الحقول التي تريد ارسال البيانات الى صفحة الموقع ، يعني تختار زر الارسال بعد اختيارك لبقية الحقول ، والحقول التي لا يهمك ترتيبها ، فدعها فارغة ، (12) و (13) هما اساس الخطوة التالية ، الى هنا وينتهي العمل مع صفحة الموقع ، والتي نختصرها: ادخل عنوان الصفحة (2) ، اضغط على (5) "احفظ في الجدول" ، جرب اذا الحقول تعمل ، ثم (12) تختار الحقول التي تريد التعامل معها ، و (13) ترتيبها ، الزر (7) "عمل نموذج ارسال ، استراد بيانات لهذا الموقع" ، وسيفتح النموذج frm_Make_Form للصفحة التي انت عليها الآن ، من هنا سيقوم البرنامج بعمل: عمل قاعدة بيانات جديدة (برنامج اكسس) خارجية متكاملة بالاسم والمسار الذي اخترته في (15) ، بالجداول والنماذج وازرار النماذج والاحداث التي على هذه الازرار ، لصفحة الموقع التي اخترتها ، للإرسال والاستيراد ، واذا هذا البرنامج تم عمله سابقا (يعني عندك برنامجك الخاص واسمه ومساره في (15)) ، فسيقوم البرنامج بإضافة الجداول والنماذج وازرار النماذج والاحداث التي على هذه الازرار ، لصفحة الموقع التي اخترتها ، للإرسال والاستيراد ، نختار اين نريد ان نعمل الجداول والنماذج وازرار النماذج والاحداث التي على هذه الازرار ، لصفحة الموقع التي اخترتها ، للإرسال والاستيراد ، الزر (16) يقوم بكل هذا العمل ، قاعدة البيانات / البرنامج الخارجي: افتح النموذج frm_web_Sites ، فيعطيك اسماء الصفحات التي قمت بعملها في (16) ، وهذا نموذج التعامل مع صفحة الموقع ، وجميع الحقول التي اخترتها في (12) موجودة هنا ، وطريقة استخدامه: قم بتعبئة البيانات التي تريد ارسالها للموقع ، واذا كان عندك زر ارسال فيجب عمل صح عليه لإستعماله ، قم بفتح المتصفح بالضغط على الزر "Open Browser" ، والذي سيفتح المتصفح Internet Explorer خارجي ، ولا علاقة لك به ، فالكود سيتعامل معه اضغط على الزر "Send Data" ، وستكون البيانات قد تم تصديرها من نموذجك ودخلت في صفحة الموقع ، او اضغط على الزر "Get Data" ، وستكون البيانات قد تم استيرادها من صفحة الموقع الى نموذجك ، وهذا جزء من الكود الموجود في النموذج ، وسترى ان تسلسل ترتيب ارسال البيانات هو حسب الاختيار في (13) ، وغالبا (99% من الوقت) لن تحتاج الى عمل تغيير في الكود: . الزر (16) فيه تُحف فنية ، فلا تتردد من الدخول في الكود والغوص فيه والخروج بلآلئ فريدة جعفر Muscat_Browsing.zip
-
وعليكم السلام هناك عدة اسباب ، ويجب النظر في البرنامج ، ولكن التجربة الاولى هي: افتح ملف اكسس جديد ، ثم استورد الكائنات جميعها من برنامجك القديم ، ثم اغلق البرنامج ، افتح البرنامج ، اعمل ضغط واصلاح ، والآن جرب سرعة البرنامج الجديد جعفر
-
وعليكم السلام الكود صحيح ، ولكن اعتقد سؤالك هو عندما تفتح النموذج او تنتقل من سجل الى آخر ، فتريد ان يتحقق ذلك كذلك يجب ان تنادي الحدث السابق ، ليقوم بالمقارنة ، ويعمل اللازم: Private Sub Form_Current() Call Question_AfterUpdate End Sub جعفر
-
تمام ولما تعمل التغييرات ، اذا ممكن ترفق البرنامج ليستفيد منه الجميع جعفر
-
عندي مشروع دكان هواتف بالأقساط ، أريد تقسيط المجموع الكلي (معدل)
jjafferr replied to cudi's topic in قسم الأكسيس Access
وعليكم السلام شغلك تقريبا كان كامل بما ان بعض البيانات تأخذها من النموذج الرئيسي ، فيجب تعديل الكود ليناسب مع ذلك ، بالاضافة الى تغيير تاريخ الاقساط ليكون شهري: Private Sub Command9_Click() Dim rst As DAO.Recordset Dim i Set rst = Me.RecordsetClone Mobile_Cost = Forms![SaleInvoiceF]![sale_total] Fisrt_Date_of_Payment = Forms![SaleInvoiceF]![qist_date] Number_Of_Installments = Forms![SaleInvoiceF]![qist_number] For i = 1 To Number_Of_Installments rst.AddNew rst![qist_invoice] = Forms![SaleInvoiceF]![sale_invoice] rst![qist_num] = i rst![qist_price] = Mobile_Cost / Number_Of_Installments rst![qist_first_date] = DateAdd("m", i - 1, Fisrt_Date_of_Payment) rst.Update Next i rst.Close: Set rst = Nothing End Sub جعفر 594.Database2.accdb.zip