-
Posts
9980 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
فورم لايحفظ البيانات الا بعد اكتمال الحقول
jjafferr replied to رعد داود's topic in قسم الأكسيس Access
السلام عليكم اخي رعد انا احاول اتفادى الاسئلة اللي تتكلم بلغة المحاسبة ، ولكن لما يكون السؤال واضح بأسماء الحقول وتفصيل ، احاول المساعدة طلبك بسيط ، ولكن اريد بعض الاجابات لوسمحت: 1. المدين: رقم او صفر ، ولكن الصورة فيها فراغ اذا الدائن فيه رقم ، يعني لا رقم ولا صفر !! 2. اذا المدين فيه رقم ، الدائن = صفر ، ولكن الصورة فيها فراغ اذا المدين فيه رقم ، يعني لا يوجد صفر !! 3. رجاء شرح المادة 3 باللون الاحمر ، 4. واذا لم يتم التوازن ، لا يتم الحفظ !! ، هذا معناه اذا عندك 100 سجل ادخلتهم ولم يتم التوازن ، وما عندك وقت تدقق وين الخطأ ، تحذف كل العمل !! جعفر -
ما الذى يؤثر على نهاية جدول بالتقرير ليظل مفتوحاً من أسفل
jjafferr replied to أحمد العيسى's topic in قسم الأكسيس Access
المرفق مافيه بيانات ، عليه لا استطيع عمل شيء جعفر -
وعليكم السلام لأن بياناتك عمودية: . يجب ان نفرغ الحقول ، من عمودية الى افقية ، حسب كل حركة: . والنتيجة ، والتي تستطيع ان تبدأ الحساب من هنا ، بين حقل الدخول والخروج ، او اي عملية حسابية شئت . وكذلك يمكن عمل الاستعلام هكذا ، استعلام وسيط (للايام ، وبدون وقت) . ونستخدم استعلام CrossTab ، ونكتب اسماء الاعمدة . والنتيجة . ولكن ، وعلشان اسهل عليك ، عملت لك الفرق بين اول وقت وآخر وقت ، بالساعة H و الدقيقة M . هذه النتيجة ، والباقي عليك . جعفر 842.Attendance.accdb.zip 842.Attendance.mdb.zip
-
ما الذى يؤثر على نهاية جدول بالتقرير ليظل مفتوحاً من أسفل
jjafferr replied to أحمد العيسى's topic in قسم الأكسيس Access
وعليكم السلام يجب ان تترك مسافة في الاسفل ، بين الحقل وخط القسم ، هكذا: لا توجد مسافة في اسفل الحقل ، فلا ترى الخط السفلي لمربع الحقل . اترك مثل هذه المسافة ، وسترى مربع الحقل بالكامل . جعفر -
حياك الله كود اخي شفان سيصبح هذا للاعتيادية =Nz(DSum("[مدة الإجازة]";"جدول الإجازات";"[نوع الاجازة]='اعتيادية'" & "and [رقم الموظف]=" & [Forms]![AAA]![رقم الموظف]);"لا يوجد") وهذا للاجازات التعويضية =Nz(DSum("[مدة الإجازة]";"جدول الإجازات";"[نوع الاجازة]='تعويضية'" & "and [رقم الموظف]=" & [Forms]![AAA]![رقم الموظف]);"لا يوجد") جعفر
-
-
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
وعليكم السلام الاربع اسطر الاخيرة: 2. نعمل الاستعلام qry_NewQry من جملة mySQL_Union ، 3. نصدر بيانات الاستعلام الى D:\Test\abc.xls ، 4. نحذف الاستعلام. Private Sub cmd_Training_Records_Click() mySQL1 = "SELECT TOP " & Forms!Q1!iSchool & " الوقت, الاسم, الجهة, الدورة" mySQL1 = mySQL1 & " FROM tbl_Training" mySQL1 = mySQL1 & " WHERE الجهة = 'مدرسة' And الدورة ='" & [Forms]![Q1]![T1] & "'" mySQL1 = mySQL1 & " ORDER BY الوقت" 'Debug.Print mySQL1 mySQL2 = "SELECT TOP " & Forms!Q1!iAdmin & " الوقت, الاسم, الجهة, الدورة" mySQL2 = mySQL2 & " FROM tbl_Training" mySQL2 = mySQL2 & " WHERE الجهة = 'إدارة' And الدورة ='" & [Forms]![Q1]![T1] & "'" mySQL2 = mySQL2 & " ORDER BY الوقت" 'Debug.Print mySQL2 mySQL3 = "SELECT TOP " & Forms!Q1!iOffice & " الوقت, الاسم, الجهة, الدورة" mySQL3 = mySQL3 & " FROM tbl_Training" mySQL3 = mySQL3 & " WHERE الجهة = 'مكتب' And الدورة ='" & [Forms]![Q1]![T1] & "'" mySQL3 = mySQL3 & " ORDER BY الوقت" 'Debug.Print mySQL3 mySQL_union = mySQL1 & " union all " & mySQL2 & " union all " & mySQL3 'Debug.Print mySQL_union Me.f1.Form.RecordSource = mySQL_union Me.f1.Form.OrderBy = "الجهة, الوقت" Me.f1.Form.OrderByOn = True Dim qdf As QueryDef Set qdf = CurrentDb.CreateQueryDef("qry_NewQry", mySQL_union) DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, "qry_NewQry", "D:\Test\abc.xls" CurrentDb.QueryDefs.Delete "qry_NewQry" End Sub جعفر -
. بينما نموذجك ، نموذج مستمر ، فلا يعمل الكود على حقل في سجل معين ، وانما يعمل على جميع السجلات (حسب قيمة اول سجل) ، اما التنسيق الشرطي ، فاليك مثال: https://stackoverflow.com/a/45284549 جعفر
-
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
-
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
اذا تريد بيانات هذه الحقول تظهر تظهر لك في النموذج، فنعم يجب إدخالها في الكود -
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
قلت لك اني عملته !! لازم تغير اسم الجدول الموجود tbl_Training الى اسم آخر، وبعدين تقوم بهذا العمل. طبعا، اذا بدأت استعمال البرنامج، فيجب عليك حذف جدول المتقدمين، والعمل فقط على الجدول tbl_Training -
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
بس مافي داعي، لأني عملته انا، وعليه أصبح عندنا الجدول tbl_Training . ولكن لا بأس بعمله، ليطمئن قلبك جعفر -
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
وعليكم السلام هذا الزر هو الذي قام بتنظيم الدورات ونقلها إلى حقل واحد. لاستخدامه: 1. أعمل نسخه من جدول المتقدمين، واسميه tbl_Training ، 2. غيّر اسم الحقل دورة1 الى دورة ، 3. اضغط على هذا الزر ، 4. ارجع الى الجدول tbl_Training ، سترى السجلات الجديدة، وهي نسخة من الدورات دورة2 الى دورة5 تم تصفيفها في حقل دورة، مع الأخذ في الاعتبار التاريخ والأيام و الجهة ، 5. احذف حقول دورة2 الى دورة5. بعد تحويل الجدول بهذه الطريقة، ينتهي دور النموذج، ولا تستعمله مرة ثانية. جعفر -
وعليكم السلام انت تفتح التقرير ، ثم تطبعه ، لماذا !! مافي داعي لهذا ، جرب هذا if nz(me.total,0)<>0 then DoCmd.OpenReport "grama" end if جعفر
-
؟
-
هناك دائما اكثر من طريقة لعمل المطلوب ، ولكننا نتخذ قرارا لعمل المطلوب بطريقة معينة لسبب او لآخر ، وبعض الاوقات لا توجد طريقة افضل من اخرى ، واحيانا يكون هناك الكثير من الاشياء التي تلزمك بعمل شيء بطريقة معينة ، وانت تعرف ان هذه الطريقة ليست الافضل ، ولكن لا يوجد مجال لإختيار الافضل هنا. فالجواب ، تعددت الاسباب والموت واحد اذا الطريقة سهلة لك ، واهم الشيء ان النتائج صحيحة ، فلا تهتم بشيء آخر جعفر
-
أريد طريقة عمل فرز لأسماء المتقدمين على دورات تدريبية "آلية"
jjafferr replied to ابوآمنة's topic in قسم الأكسيس Access
وعليكم السلام اولا وقبل كل شيء ، يجب عليك تغيير تصميم جدول "المتقدمين" (حاليا تصميمه يناسب الاكسل) ، حتى يكون بطريقة قواعد البيانات الصحيحة ، والذي سيوفر عليك الكثير من الوقت لاحقا ، لذا عملت لك التعديل في الجدول tbl_Training . انت محتاج تعمل استعلام لكل جهة (يعني 3 استعلامات) ، ثم تستعمل الامر Union لتجمع الاستعلامات الثلاث في استعلام واحد ، ولكن المشكلة هي العدد المطلوب ، فلا يمكننا ان نجعل العدد رقم متغير في الاستعلام ، وهو ما يشار الى بـ TOP n (اذا العدد معروف مسبقا ، فالاستعلامات الثلاث سهله ، ثم نعمل استعلام Union يجمعها) ، لذا وجب علينا ان نعمل الاستعلامات في الكود Private Sub cmd_Training_Records_Click() mySQL1 = "SELECT TOP " & Forms!Q1!iSchool & " الوقت, الاسم, الجهة, الدورة" mySQL1 = mySQL1 & " FROM tbl_Training" mySQL1 = mySQL1 & " WHERE الجهة = 'مدرسة' And الدورة ='" & [Forms]![Q1]![T1] & "'" mySQL1 = mySQL1 & " ORDER BY الوقت" 'Debug.Print mySQL1 mySQL2 = "SELECT TOP " & Forms!Q1!iAdmin & " الوقت, الاسم, الجهة, الدورة" mySQL2 = mySQL2 & " FROM tbl_Training" mySQL2 = mySQL2 & " WHERE الجهة = 'إدارة' And الدورة ='" & [Forms]![Q1]![T1] & "'" mySQL2 = mySQL2 & " ORDER BY الوقت" 'Debug.Print mySQL2 mySQL3 = "SELECT TOP " & Forms!Q1!iOffice & " الوقت, الاسم, الجهة, الدورة" mySQL3 = mySQL3 & " FROM tbl_Training" mySQL3 = mySQL3 & " WHERE الجهة = 'مكتب' And الدورة ='" & [Forms]![Q1]![T1] & "'" mySQL3 = mySQL3 & " ORDER BY الوقت" 'Debug.Print mySQL3 mySQL_union = mySQL1 & " union all " & mySQL2 & " union all " & mySQL3 'Debug.Print mySQL_union Me.f1.Form.RecordSource = mySQL_union Me.f1.Form.OrderBy = "الجهة, الوقت" Me.f1.Form.OrderByOn = True End Sub . ويكون الاستعلام الاخير هو مصدر بيانات النموذج الفرعي . جعفر 837.الدورات.accdb.zip -
احتساب الكميات عند عمل المرتجع اكثر من مره
jjafferr replied to النجاشي's topic in قسم الأكسيس Access
-
لا اعتقد بأنك تستطيع الطباعة مثل ما اقترحت ، ولكن يمكنك عمل كود بهذه الطريقة ، واللي تحدد فيه جميع صيغ الصور: if len(Dir("D:\2017\pic\" & Me.Code_ID & ".jpg"))>0 then Ex=".jpg" elseif len(Dir("D:\2017\pic\" & Me.Code_ID & ".png"))>0 then Ex=".png" elseif len(Dir("D:\2017\pic\" & Me.Code_ID & ".bmp"))>0 then Ex=".bmp" end if Shell ("cmd /c mspaint /p " & "D:\2017\pic\" & Me.Code_ID & Ex) . الامر Shell هو (بالاضافة الى بعض المتغيرات من هذا الامر مثل ShellWait و ..) ، هو اعطاء اوامر عن طريق Command Line بين البرامج ، لهذا السبب ، لاحظ لما انا اقترح برنامج معين مكمل للأكسس ، فهذا البرنامج يجب ان يقبل اوامر Command Line ، حتى اتحكم به برمجيا من الاكسس ، عن طريق Shell في حالتنا هنا ، البرنامج mspaint يقبل التحكم به عن طريق برنامج DOS مال زمان ، واللي اليوم اصبح اسمه cmd . جعفر
-
احتساب الكميات عند عمل المرتجع اكثر من مره
jjafferr replied to النجاشي's topic in قسم الأكسيس Access
العفو اخوي وضاح ، بعض الاوقات اضطر اكون خشن ، علشان الامور تسير عدل وابو ياسين على راسي ، ومثل ما شفت في موضوع ابو ياسين ، فقد حذفت مشاركة التأنيب الآن نجي لهذا الموضوع ، فهل لا زلت تريده ، او انه تم حله من الموضوع الآخر؟ جعفر -
من هنا: نفترض ان حقل كود العميل اسمه Code_ID ، عليه يصبح امر الطباعة: Shell ("cmd /c mspaint /p " & "D:\" & me.Code_ID & ".jpg") . جعفر
-
وعليكم السلام وما صيغة هذا الملف؟ جعفر
-
شكرا على التوضيح الامر OutputTo لا يحتوي على طريقة لعمل التصفية للسجل المطلوب ، فعليه ، اليك الطريقة التي يمكن ان تستعملها لتحقيق هدفك: 1. اعمل نسخة من التقرير 2invoiceh ، ولنسميه 2invoiceh_2 ، 2. اعمل استعلام ، واجعله مصدر بيانات هذا التقرير ، 3. في الاستعلام ، وفي الحقل operation_code ، اكتب هذا المعيار : Forms![invoiceh]!operation_code 4. فيصبح كود التصدير الى pdf هكذا DoCmd.OutputTo acOutputReport, "2invoiceh_2", acFormatPDF, "C:\Temp\myPDF.pdf" . حيث سيتم تصدير الملف myPDF.pdf الى المجلد C:\Temp جعفر
-
وعليكم السلام يجب ان تستخدم ارقام للشهر والسنه ، عُذرا على هذا السهو ولم تخالف القوانين ، ولكن رجاء قراءتها جعفر
-
السلام عليكم القيت نظرة على الجدول معلومات ، ورأيت الكم المهول من الحقول ، فأردت ان اعطيك حقيقة لا يعرفها الكثير بالنسبة الى برنامجك ، انا اضفت رقم الى كل حقل ، ثم رقم آخر ، الى ان توقف الجدول عن قبول اي رقم زيادة ، فوصل مجموع عدد بيانات (حروف) الحقول = 3475 . انا ارفقت لك برنامجك ، وياريت تحاول تضيف حرف/رقم في اي من حقول السجل Auto_ID=2 ، وبتلاحظ انه ، لا تستطيع إضافة اي حرف !! حيث ان سجل جدول الاكسس الواحد يقبل: للاكسس 2007 فما فوق = 4000 حرف ، للاكسس 2003 فما قبل = 2048 حرف Auto_ID 2 القسم 50 السجل 50 رقم التسجيل 2 رقم التلميذ 1 الاسم 50 اللقب 50 تاريخ الميلاد 0 مكانه 50 الحالة 50 رقم القسم 1 الأب 50 الأم 50 تاريخ الدخول 0 الجنس 50 مهنته 50 ملاحظات 50 العنوان 50 الإعادة 50 الدعم 54 القسم المعاد 50 الاستفادة من المطعم المدرس 0 ناجح 50 الاعاقة 0 المنحة 50 PAGE 0 اللغة الأجنبية الأولى 50 الجنسية 50 ولاية الميلاد 50 تاريخ الخروج 0 الأمراض المزمنة 50 رقم الهاتف 54 سبب الخروج 50 الحضور والغياب 54 المستوى 55 رقم ش ت م 0 المنطقة 54 قرارمجلس القبول و التوجيه 54 التربية التشكيلية 54 التربية البدنية 54 تاريخ القرار 0 رقم القرار 54 نوع ونصاب المنحة 54 أيام الحضور 54 منحة متأخرة 54 نصف داخلي 54 المجموع 54 معد مجموعة التوجيه 54 جذع مشترك آداب 54 جذع مشترك علوم و تكنولوجيا 54 الرغبة 1 54 الرغبة 2 54 اق 1 54 اق 2 54 الاقتراح المسبق للتوجيه 54 اليتامى 54 المؤسسة الأصلية 54 الوضعية العائلية 54 مركز الاجرلء 54 تاريخ الاجراء 0 معدل 6 54 المؤسسة المستقبلة 54 معدل ش ت م 54 معدل القبول 54 المصالح الاقتصادية 54 مجانية الكتاب 54 co_ara 0 co_fr 0 co_ang 0 co_ecmr 0 co_eciv 0 co_hi 0 co_ma 0 co_sc 0 co_ph 0 co_eps 0 الحركة 54 رقم الخروج 53 يتيم 53 رسم 53 الفرض 53 الاختبار 53 المعدل الفصلي 53 المعدل السنوي 53 الوزن 53 القامة 53 حدة النظر 53 تشخيص المرض 53 مندوب القسم 53 مجموع عدد بيانات (حروف) الحقول = 3475 . الافضل لك ان تقسم الجدول الى جدولين او ثلاثة جعفر 835.متوسطة 2017.accdb.zip