-
Posts
9977 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
حيالله السيد جمال 🙂 تفضل اخي سمير ، اعددت لك هذا البرنامج ، لكل اصدارات الاكسس 🙂 اختار البرنامج الذي تريد تعرف من يعمل عليه ، ثم اضغط على الزر who is logged جعفر Who is logged in.zip
-
رجاء ترفق تجربتك علشان نصلح عليها 🙂 جعفر
-
تعديل عىلى الكود بحيث يقبل يظهر البيانات بين تاريخين
jjafferr replied to عبداللهM's topic in قسم الأكسيس Access
انت تريد التصفية بالاشهر الهجرية ، فرجاء متابعة مشاركة اخونا العود ابوخليل: جعفر -
هذه صورة من كمبيوتري ، بالخطوات اعلاه: والصورة فيها اسم الكمبيوتر الذي اعمل عليه ، وصلاحيات المستخدم 🙂 جرب ان يكون اسم الكمبيوتر بالانجليزي. جعفر
-
وعليكم السلام قد يفيدك هذا الموضوع جعفر
- 1 reply
-
- 1
-
-
-
وعليكم السلام 🙂 عندما يستخدم المستخدم البرنامج ويتم ربط الواجهة مع ملف البيانات ، حينها يقوم الاكسس بقفل ملف البيانات/الجداول ، وسترى ملف جديد باسم ملف البيانات ، ولكن بامتداد laccdb . يمكنك قراءة هذا الملف بواسطة NotePad ، وبه طلبك 🙂 جعفر
-
وعليكم السلام 🙂 رجاء توضيح طلبك بمثال لوسمحت. والقي نظرة على هذا الموضوع جعفر
-
تعديل عىلى الكود بحيث يقبل يظهر البيانات بين تاريخين
jjafferr replied to عبداللهM's topic in قسم الأكسيس Access
وعليكم السلام 🙂 الظاهر انك تشير الى موضوع 🙂 . طريقة عمل اللي تريده هو: الطريقة 1: 1. افتح برنامج مسقط التقارير ، ثم اختار الاستعلام/الجدول المطلوب ، واختار الحقول المطلوبة ، مع حقل التاريخ ، 2. انقر بالزر اليمين على حقل التاريخ ، ومن الفرز والتصفيه ، اختر بين تاريخين ، والدخل التاريخين ، وبتحصل على البيانات المطلوية 🙂 الطريقة 2: 1. اعمل نموذج غير مضمن (مثلا frm_Dates) ، واعمل فيه حقلين ، للتاريخ من (Date_From) ، والتاريخ الى (Date_To) ، 2. اعمل استعلام يشمل الجداول المطلوبة ، والحقول المطلوبة ، ولحقل التاريخ اعمل معيار بين تاريخي النموذج: Between forms!frm_Dates!Date_From and forms!frm_Dates!Date_To 3. افتح النموذج frm_Dates ، وادخل التواريخ ، 4. الآن افتح نموذج برنامج مسقط التصفح ، واختار استعلام ، ثم اختار الاستعلام #2 اعلاه ، فستجد ان البيانات كما تريد 🙂 جعفر -
وعليكم السلام 🙂 تفضل جعفر
-
ارسال استعلام عن طريق الاكسس بالبريد _ عنوان معدل
jjafferr replied to samrati1's topic in قسم الأكسيس Access
اخي الفاضل 🙂 1. الصورة المرفقة في مشاركتك تقول: .... Missing: Microsoft Outlook لذا يجب ان تحذف علامة الصح من عليها ، وعليه ستختفي من القائمة ، 2. وكما اشار عليك ابومحمد في مشاركته اعلاه ، يجب ان تختار من القائمة: Microsoft Outlook Object Library xxx وبدلا عن xxx سيكون هناك رقم بدلا عنه ، فهذا يعتمد على نسخة الاوفيس التي قمت بتنصيبها على جهازك. وبعدها المفروض انك ما تحصل على هذا الخطأ. جعفر -
كود تجمع عدد سجلات في الفورم الفرعي بشرط حقل نص
jjafferr replied to qathi's topic in قسم الأكسيس Access
السلام عليكم 🙂 ولنفس الغرض ، ولكن بوضع Sum في الحقل مباشرة (انظر الرقم 1 ) : . جعفر -
وعليكم السلام 🙂 . 1. غائب<> StatusTybe ، الظاهر اني قلبتها 🙂 5. مجموع دقائق التأخر ، من المشاركة السابقة ، 2. تحويل دقائق التأخر الى دقائق:ساعات:يوم 1. =Sum(IIf([StatusTybe]<>3,1,0)) 2. =Minutes2DHM([SumTimeDelay],DateDiff("h",[Forms]![EmployeeMovement_F]![OutTimE],[Forms]![EmployeeMovement_F]![InTimE])) اي ننادي الوحدة النمطية Minutes2DHM ونرسل لها مجموع الدقائق SumTimeDelay والتي نريد تحويلها الى دقائق:ساعات:يوم وكذلك نرسل عدد ساعات الدوام كل يوم وللتوضيح، مناداة الوحدة النمطية، حسب الارقام الحمراء لكل حقل في الصورة =Minutes2DHM(5,DateDiff("h",4,3)) . والوحدة النمطية: Public Function Minutes2DHM(minutes As Long, Working_hrs As Long) As String Dim dd As Long, hh As Integer, mm As Integer, Working_Mints As Long minutes = Abs(minutes) Working_hrs = Abs(Working_hrs) Working_Mints = Working_hrs * 60 dd = minutes \ Working_Mints minutes = minutes - dd * Working_Mints hh = minutes \ 60 mm = minutes Mod 60 Minutes2DHM = Format(dd, "000") & ":" & Format(hh, "00") & ":" & Format(mm, "00") End Function . وطبعا ممكن تطبيق هذا على بقية الحقول 🙂 جعفر 990.Employee 04 .accdb.zip
-
وعليكم السلام 🙂 لا يمكن التحكم بالاستعلام بهذه الطريقة ، وانما يمكن عمل هذا عن طريق اعادة عمله عن طريق الكود !! ولكن ، اين ستعرض بيانات الاستعلام ، سواء رقم الكود = 5 او لا ، في نموذج ؟ اذن يمكن ان نجعل هذا الحقل مخفي في النموذج ، في حال ان الكود = 5 كان معيار الاستعلام 🙂 جعفر
-
شكرا على كلماتك الرقيقة والدعاء 🙂 انا قلت: لهذا السبب اعطيك الرابط لتقرأه 🙂 جعفر
-
سيدي الفاضل 🙂 رجاء مراجعة الرابط التالي ، واللي نحسب فيه الوقت (فهو مهم لك للخطوة التالية) : . يجب ان يكون عندنك معيار/مصطلح تستخدمه في حساب الدقائق/الساعات/الايام ... ، والاسهل هنا هو مصطلح الدقائق ، لأنه وبسهوله يمكن تحويله الى ساعات وايام ، لذا ، وجب ان تكون حسابات الفوارق من الوقت ، بالدقائق. وعليه ، اضفت لك في الاستعلام ، هذا الحقل لجميع عمليات فارق الوقت ، ولكي اجعل الموضوع سهل لك ، فقد استعملت نفس مسمياتك ، ولكن بإضافة m قبل اسم الحقل : . والنتيجة: . وتم تعديل الجمع في النموذج الفرعي ، حتى يجمع هذه الارقام : . والنتيجة : . الآن وقد اصبح لديك مجموع الوقت بالدقائق ، فتستطيع عمل الخطوة التالية 🙂 وان شاء الله اصبح الطريق اسهل من ذي قبل 🙂 جعفر 990.Employee 04 .accdb.zip
-
تفضل 🙂 انا لعبت في الجدول: اضفت سجل ثم حذفته ، وبهذه الطريقة فقدنا التسلسل رقم 4 من حقل الرقم التلقائي ID ، ثم اضفت سجل جديد لعملة جديدة وهي الريال العماني ، ثم اضفت حقل Seq وهو لإدخال التسلسل اليدوي ، واردت التسلسل يكون هكذا : . على هذا الاساس ، عملت استعلامين: الاول ليعطينا التسلسل حسب فرز الحقل ID ، والثاني يعطينا التسلسل حسب فرز الحقل Seq : . والنتيجة: . والوحدة النمطية اللي تقوم بإرجاع البيانات مكتوبة هي : Public Function Row_Number(N) As String 'N = Number sent from the Query If Len(N & "") = 0 Then Row_Number = "" ElseIf N = 1 Then Row_Number = "العملة الرئيسية" Else Row_Number = "العملة رقم " & N End If End Function . والتي يمكن استبدالها بوضع هذا الحقل الجديد في الاستعلام (طبعا حسب اسم الحقل) ، ولكني أفضل الوحدة النمطية لسهولة التعديل عليها : Curr: IIf(Len([ID] & "")=0,"",IIf([ID]=1,"العملة الرئيسية","العملة رقم " & [ID])) . طيب لو اردت التسلسل (الفرز) يكون بإسم العملة ، فالطريقة الاولى لفرز الحقل ID لا ينفع ، ولم ارد استعمال الحقل Seq !! فالطريقة تكون ، بأن نعمل تسلسل للإستعلام حسب حقل الفرز ، وهناك عدة طرق لعمل هذا التسلسل ، ولكني أفضل هذه الوحدة النمطية: Public Function RowCounter( _ ByVal strKey As String, _ ByVal booReset As Boolean, _ Optional ByVal strGroupKey As String) _ As Long ' Builds consecutive RowIDs in select, append or create query ' with the possibility of automatic reset. ' Optionally a grouping key can be passed to reset the row count ' for every group key. ' ' Usage (typical select query): ' SELECT RowCounter(CStr([ID]),False) AS RowID, * ' FROM tblSomeTable ' WHERE (RowCounter(CStr([ID]),False) <> RowCounter("",True)); ' ' Usage (with group key): ' SELECT RowCounter(CStr([ID]),False,CStr([GroupID])) AS RowID, * ' FROM tblSomeTable ' WHERE (RowCounter(CStr([ID]),False) <> RowCounter("",True)); ' ' The Where statement resets the counter when the query is run ' and is needed for browsing a select query. ' ' Usage (typical append query, manual reset): ' 1. Reset counter manually: ' Call RowCounter(vbNullString, False) ' 2. Run query: ' INSERT INTO tblTemp ( RowID ) ' SELECT RowCounter(CStr([ID]),False) AS RowID, * ' FROM tblSomeTable; ' ' Usage (typical append query, automatic reset): ' INSERT INTO tblTemp ( RowID ) ' SELECT RowCounter(CStr([ID]),False) AS RowID, * ' FROM tblSomeTable ' WHERE (RowCounter("",True)=0); ' ' 2002-04-13. Cactus Data ApS. CPH ' 2002-09-09. Str() sometimes fails. Replaced with CStr(). ' 2005-10-21. Str(col.Count + 1) reduced to col.Count + 1. ' 2008-02-27. Optional group parameter added. ' 2010-08-04. Corrected that group key missed first row in group. Static col As New Collection Static strGroup As String On Error GoTo Err_RowCounter If booReset = True Then Set col = Nothing ElseIf strGroup <> strGroupKey Then Set col = Nothing strGroup = strGroupKey col.Add 1, strKey Else col.Add col.Count + 1, strKey End If RowCounter = col(strKey) Exit_RowCounter: Exit Function Err_RowCounter: Select Case Err Case 457 ' Key is present. Resume Next Case Else ' Some other error. Resume Exit_RowCounter End Select End Function Public Function Reset_RowCounter() Call RowCounter(vbNullString, False) End Function . ثم ننادي هذه الوحدة النمطية من الاستعلام ، حتى تعطينا التسلسل ، ثم نستعمل الوحدة النمطية السابقة لكتاية المطلوب: . ملاحظة: الحقل الذي يكون محسوب ، ويتغير بإستمرار ، فإننا لا نحفظ قيمته في الجدول ، لهذا السبب ، لم نستعمل الحقل N ، ولم نحفظ قيمتها في الجدول 🙂 جعفر 988.test 2.accdb.zip
-
طلب مساعدة مع الدوارة داخل سجلات الجدول بالكامل
jjafferr replied to أبو عبدالله الحلوانى's topic in قسم الأكسيس Access
وعليكم السلام 🙂 لم ادخل في صميم البرمجة بعد ، ولكن قولك لفت انتباهي: هذا صحيح ، ولكن بسبب انك وضعت تعريف المتغيرات في قمة الوحدة النمطية ، وخارج المودل ، فهذا معناه ان البيانات لا تزال تكون مخزنه فيه ، ولحل هذا : احذفهم من هناك واجعلهم داخل المودل ، او اجعل المتغير = 0 في المودل ، وهذا حل الموضوع ، مع تعديل آخر بسيط: Public Function Clcisthlk(EndToreedDate As Date, srfSt As Integer) As Double Set sql = CurrentDb.OpenRecordset("EsthlakPricesTbl", dbOpenDynaset) sql.MoveLast: sql.MoveFirst ' pris = 0: srf = 0 Sumwtr = 0: SumSrf = 0: SumMnss = 0: mnss = 0: descrSrf = "" descr = "" ' Do Until sql.EOF If IsNull(sql!UntlMnth) Then enddt = DateSerial(Year(Date), Month(Date) + 1, 0) pris = sql!Price srf = sql!srfm Else enddt = sql!UntlMnth pris = sql!Price srf = sql!srfm End If ' If EndToreedDate <= enddt Then SumMnss = SumMnss + mnss mnss = DateDiff("m", EndToreedDate, enddt) - SumMnss Sumwtr = Sumwtr + (mnss * pris) If srfSt = 1 Then SumSrf = SumSrf + (mnss * srf) Else SumSrf = 0 End If descr = descr & "monhs= " & mnss & " * pris= " & pris & " = " & (mnss * pris) & vbCrLf descrSrf = descrSrf & "SRf= " & srf & " * " & "Monthes= " & mnss & "= " & (mnss * srf) & vbCrLf End If 'Debug.Print "1>> " & vbCrLf & descr 'Debug.Print sql.MoveNext Loop Clcisthlk = Sumwtr + SumSrf ' Debug.Print descr Debug.Print descrSrf ' sql.Close Set sql = Nothing End Function جعفر -
لازلت اعتقد بانه هناك طريقة اسهل للذي تريد الوصول اليه ، لذا لوسمحت ارفق الموجود من بياناتك ، ثم اشرح لنا بالاكسل (من واقع بياناتك) النتيجة اللي تريد توصل لها 🙂 جعفر
-
وعليكم السلام 🙂 نعم يوجد ، واسمه Recordset Absoluteposition ، وهذا شرح له من مايكروسوفت: https://docs.microsoft.com/en-us/office/client-developer/access/desktop-database-reference/recordset-absoluteposition-property-dao ولكني لا اعتقد بأنك تبحث عن هذا !! اخبرنا لماذا كنت تريد ان تستعمل هذه الداله ، وماذا تريد استخراج من بياناتك؟ جعفر
-
رجاء وضع مثال للإجابة المطلوبة هنا لوسمحت 🙂 جعفر
-
دعوة للتحدي .. بعد ما عجز عن حلها ( أظهار صافي الراتب الموظف)
jjafferr replied to qathi's topic in قسم الأكسيس Access
صحيح انك اعطيت بيانات ، وصحيح انك شرحت المطلوب ، ولكنك لم تعطي كيف يجب ان تكون الاجابة من واقع البيانات