-
Posts
10000 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
406
نوع المحتوي
التقويم
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
لا ، ولهذا السبب اعطاك اخي شفان جواب على الطاير جعفر
-
تفضل وهذا الكود الاول Private Sub أمر20_Click() On Error GoTo error_Capture تابع15.Requery Dim rst As DAO.Recordset 'إيرادات iField = "إيرادات" mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='إيرادات'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst rc = rst.RecordCount Me.Erad_From = rst![رقم السند] rst.MoveLast Me.Erad_To = rst![رقم السند] 'اجل iField = "اجل" mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='اجل'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst rc = rst.RecordCount Me.Aajel_From = rst![رقم السند] rst.MoveLast Me.Aajel_To = rst![رقم السند] 'مصاريف iField = "مصاريف" mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='مصاريف'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst rc = rst.RecordCount Me.Masareef_From = rst![رقم السند] rst.MoveLast Me.Masareef_To = rst![رقم السند] 'سداد iField = "سداد" mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='سداد'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst rc = rst.RecordCount Me.Sadad_From = rst![رقم السند] rst.MoveLast Me.Sadad_To = rst![رقم السند] MsgBox "لا توجد سندات من نوع" & vbCrLf & msg Exit_error_Capture: rst.close: Set rst = Nothing Exit Sub error_Capture: If Err.Number = 3021 Then If InStr(msg, iField) = 0 Then msg = msg & iField & vbCrLf End If Resume Next ElseIf Err.Number = -2147352567 Then If InStr(msg, iField) = 0 Then msg = msg & iField & vbCrLf End If Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_error_Capture End If End Sub وهذا كود قراءة النموذج الفرعي Private Sub cmd_Search2_Click() On Error GoTo error_Capture2 تابع15.Requery Dim rst As DAO.Recordset Dim rst2 As DAO.Recordset Set rst = Me.تابع15.Form.RecordsetClone 'إيرادات iField = "إيرادات" rst.Filter = "[نوع السند]='إيرادات'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Erad_From = rst2![رقم السند] rst2.MoveLast Me.Erad_To = rst2![رقم السند] 'اجل iField = "اجل" rst.Filter = "[نوع السند]='اجل'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Aajel_From = rst2![رقم السند] rst2.MoveLast Me.Aajel_To = rst2![رقم السند] 'مصاريف iField = "مصاريف" rst.Filter = "[نوع السند]='مصاريف'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Masareef_From = rst2![رقم السند] rst2.MoveLast Me.Masareef_To = rst2![رقم السند] 'سداد iField = "سداد" rst.Filter = "[نوع السند]='سداد'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Sadad_From = rst2![رقم السند] rst2.MoveLast Me.Sadad_To = rst2![رقم السند] MsgBox "لا توجد سندات من نوع" & vbCrLf & msg Exit_error_Capture2: rst.close: Set rst = Nothing rst2.close: Set rst2 = Nothing Exit Sub error_Capture2: If Err.Number = 3021 Then If InStr(msg, iField) = 0 Then msg = msg & iField & vbCrLf End If Resume Next ElseIf Err.Number = -2147352567 Then If InStr(msg, iField) = 0 Then msg = msg & iField & vbCrLf End If Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_error_Capture2 End If End Sub جعفر 688.1.لازام نطوره - Copy.mdb.zip
-
مشكلة في عمود تحرير وسرد داخل مربع قائمة
jjafferr replied to عبد الله قدور's topic in قسم الأكسيس Access
حياك الله اخوي عبدالله ممكن حل المشكلة بالطريقة التي ذكرتها ، ولكنها ستكون جامدة ، ومحتاجة الى مبرمج لتغييرها وقت الحاجة الطريقة التي اخبرتك عنها هي الطريقة المتبعة والتي ينصح بإستعمالها المحترفين ، والتي استعملها في جميع برامجي ، ومن السهل ان تضيف او تغير او تحذف اي من البيانات فيها وطبعا نحن نعرف انه ليست كل الخيارات في الاكسس هي خيرات جيدة للبرنامج ، فمنها Lookup الجداول ، والصور المضمنة ، و Autocorrect Text ، ووو لذا يجب ان نكون حذرين منها جعفر -
هل استعملت زر البحث2
-
اخي وضاح الكود يعمل بشكل صحيح ، ولكن ملاحظتك هي حول: متى استعمال الكود ، اي متى تريد الكود القيام بالحسبة ، وهذا الذي يصير في المرفق اعلاه جعفر
-
انت لا تزال تطلب الترقيم 1 2 3 4 .... وبدون السنه ، وهذا ما اعطيتك في مرفقي الاخير ، فهل جربته؟
-
تحميل ملف من موقع عن طريق رابط ثابت مزود في البرنامج مسبقاً
jjafferr replied to sandanet's topic in قسم الأكسيس Access
السلام عليكم انا شرحت الفكرة نوعا ما في مشاركتي واسمحوا لي بأن ابدأ العمل في هذا البرنامج ، وبموضوع مستقل ان شاء الله وشكرا اخي ابو عبدالله التذكير والرابط ، فموضوع اخونا العود ابو خليل كان على بالي وكنت سأستخدمه بطريقة او اخرى جعفر -
حيالله اخوي طارق مو هذا القصد ، القصد التوضيح ، مثل الصورة اللي ارفقتها انا وشرحت كل الموضوع جعفر
-
طريقة تصدير جدول من اكسيس الى اكسيل مهما كان عدد السجلات
jjafferr replied to Tarekfathallah's topic in قسم الأكسيس Access
تفضل 691.tarek.accdb.zip -
مشكلة في عمود تحرير وسرد داخل مربع قائمة
jjafferr replied to عبد الله قدور's topic in قسم الأكسيس Access
وعليكم السلام للأسف ما اتوصلت لعمل اللي تريده وبحثت في الانترنت كذلك ، ولم القى شيء كذلك الطريقة الوحيدة هي عمل جدول خاص للقائمة ، وبالتالي يمكنك استعمال Lookup في الجدول ، ولكن للعلم ، فاستخدام Lookup في الجداول غير مُحبّذ ، وبه عدة مشاكل ، وانت صادفت احد هذه المشاكل ، والطريقة الصحيحة هي عمل جدول خاص للقائمة ، وتستعمل القائمة في النموذج فقط. جعفر 689.Database1.accdb.zip -
طريقة تصدير جدول من اكسيس الى اكسيل مهما كان عدد السجلات
jjafferr replied to Tarekfathallah's topic in قسم الأكسيس Access
اعمل زر في النموذج ، وعلى حدث الزر ضع الكود ، ولكن يجب ان تعرف ان الاكسل قبل 2007 يعني اللي بصيغة xls يستوعب حوالي 65,536 سجل فقط جعفر -
طريقة تصدير جدول من اكسيس الى اكسيل مهما كان عدد السجلات
jjafferr replied to Tarekfathallah's topic in قسم الأكسيس Access
وعليكم السلام في اكثر من طريقة ، ولكن اليك الاسهل: expression.TransferSpreadsheet(TransferType, SpreadsheetType, Table/ Query Name, FileName, HasFieldNames, Range, UseOA) واستعمالها DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Employees", "C:\Temp\Newemps.xls", True او expression.OutputTo(ObjectType, Table/ Query Name, OutputFormat, OutputFile, AutoStart, TemplateFile, Encoding, OutputQuality) واستعمالها DoCmd.OutputTo acOutputTable, "Employees", acFormatXLS, "C:\Temp\Newemps.xls", True او جعفر -
تحميل ملف من موقع عن طريق رابط ثابت مزود في البرنامج مسبقاً
jjafferr replied to sandanet's topic in قسم الأكسيس Access
السلام عليكم موضوع التحديث كبير وفيه عدة نقاط والتي يجب النظر فيها ، مثلا: 1. تحديث FE فقط ، 2. تحديث FE ، وعمل تغيير على الجداول. خلينا في النقطة الاصعب والاهم ، وهي انزال النسخة الاحدث من الموقع كنتم 3 محترفين في عمل هذا الموضوع ، وانت قررت ان الخطوة التالية "معقدة بعض الشيء بالنسبة" فأرجو من اخي @Shivan Rekany و اخي @أبو عبدالله الحلوانى ان يتطوعوا لهذا العمل (او يعتذروا) ، وإلا فأنا مستعد ان شاء الله جعفر -
السلام عليكم شكرا أخوي ابو خليل ، فانت شجعتني ان اقوم بأخذ البيانات من النموذج الفرعي ، بدل زيارة الجدول ، وهذه ستكون اسرع الطرق عملت زر جديد ، ووضعت عليه هذا الكود: Private Sub cmd_Search2_Click() On Error GoTo error_Capture2 تابع15.Requery Dim rst As DAO.Recordset Dim rst2 As DAO.Recordset Set rst = Me.تابع15.Form.RecordsetClone 'إيرادات rst.Filter = "[نوع السند]='إيرادات'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Erad_From = rst2![رقم السند] rst2.MoveLast Me.Erad_To = rst2![رقم السند] 'اجل rst.Filter = "[نوع السند]='اجل'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Aajel_From = rst2![رقم السند] rst2.MoveLast Me.Aajel_To = rst2![رقم السند] 'مصاريف rst.Filter = "[نوع السند]='مصاريف'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Masareef_From = rst2![رقم السند] rst2.MoveLast Me.Masareef_To = rst2![رقم السند] 'سداد rst.Filter = "[نوع السند]='سداد'" rst.Sort = "[رقم السند]" Set rst2 = rst.OpenRecordset Me.Sadad_From = rst2![رقم السند] rst2.MoveLast Me.Sadad_To = rst2![رقم السند] Exit_error_Capture2: rst.close: Set rst = Nothing rst2.close: Set rst2 = Nothing Exit Sub error_Capture2: If Err.Number = 3021 Then MsgBox "لا توجد بيانات" Resume Exit_error_Capture2 Else Debug.Print Err.Number MsgBox Err.Number & vbCrLf & Err.Description End If End Sub جعفر 688.1.لازام نطوره - Copy.mdb.zip
-
مثل ما قلت لك ، وضعت الكود على زر البحث ، بكرة ان شاء الله جربه على بياناتك الجديدة ، واخبرنا النتيجة 688.لازام نطوره.mdb.zip
-
أخي طارق ، انا وانت لا نتكلم على نفس الموجه ، لهذا السبب تضيع الكثير من التفاصيل ولكن هذه المرة وبعد عناء ، اعتقد بأني فهمت اللي تريد هل تريد نسخ البيانات هكذا: . جعفر
-
عفوا ما فهمت قصدك ، لهذا السبب قلت لك من البداية اعطني مثال والكود يجب وضعه على زر البحث ، وخطأ مني ان وضعته على حدث تحميل النموذج اعمل التغيير ، وشوف اذا لازالت المشكلة موجودة. جعفر
-
طبعا سيكون هناك اكثر من طريقة لعمل المطلوب ، وانا اخترت الطريقة الاسهل لي تفضل الكود ، وقد اعدت مسمى الحقول من والى: Private Sub Form_Load() Me.Form.Caption = DLookup("[user]", "fbi") Dim rst As DAO.Recordset 'إيرادات mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='إيرادات'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Me.Erad_From = rst![رقم السند] rst.MoveLast Me.Erad_To = rst![رقم السند] 'اجل mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='اجل'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Me.Aajel_From = rst![رقم السند] rst.MoveLast Me.Aajel_To = rst![رقم السند] 'مصاريف mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='مصاريف'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Me.Masareef_From = rst![رقم السند] rst.MoveLast Me.Masareef_To = rst![رقم السند] 'سداد mySQL = "Select [رقم السند]" mySQL = mySQL & " From السندات" mySQL = mySQL & " Where [نوع السند]='سداد'" mySQL = mySQL & " And التاريخ>=#" & Me.n1 & "#" mySQL = mySQL & " And التاريخ<=#" & Me.n2 & "#" mySQL = mySQL & " Order By [رقم السند]" Set rst = CurrentDb.OpenRecordset(mySQL) rst.MoveLast: rst.MoveFirst RC = rst.RecordCount Me.Sadad_From = rst![رقم السند] rst.MoveLast Me.Sadad_To = rst![رقم السند] rst.close: Set rst = Nothing End Sub جعفر 688.لازام نطوره.mdb.zip أخي ابو عبد الله انا فكرت في طريقتك ، وبهذه الطريقة يجب علينا زيارة الجدول مرتين لكل نوع من انواع السجلات ، وعندنا اربع سجلات ، فمعناه عندنا 8 زيارات للجدول لأخذ القيم المطلوبة ، ولكنك تأتي بمعلومة واحدة كل مرة بينما الطريقة التي عملتها انا تقوم بـ 4 زيارات فقط ، ولكنها تأتي ببيانات اكثر من بياناتك ، ثم نصفيها والطريقة الافضل هي ان لا نقوم بأي زيارة للجدول ، فالبيانات موجودة في النموذج الفرعي ، وما علينا إلا ان نستخرجها منها جعفر
-
وعليكم السلام أخي وضاح اعطنا مثال لوسمحت بارقام من قاعدة بياناتك جعفر
-
مشكلة في عمود تحرير وسرد داخل مربع قائمة
jjafferr replied to عبد الله قدور's topic in قسم الأكسيس Access
وعليكم السلام اخي عبدالله انا اعتذر منك ، فلم افهم المطلوب ، وياريت مثال توضيحي جعفر -
تحميل ملف من موقع عن طريق رابط ثابت مزود في البرنامج مسبقاً
jjafferr replied to sandanet's topic in قسم الأكسيس Access
السلام عليكم شباب انا ساكت واستمتع بالتطورات ، لكن مخي يمخخ وراح بعيد لكيفية الاستفادة من هذه الخطوة مادمتم قد قطعتوا المشوار في هذا الطريق البديع (شكرا أخي أوس على الفكرة والكود ، ابو عبدالله وشفان على تعديل الكود) ، فبدل ان ابدأ من البداية ، سوف اضع امامكم الفكرة اللي على بالي ، راجيا منكم بلورتها برمجيا خلينا نتوسع في الفكرة شوي ، لتشمل احتياجات المبرمج ، فاللي على بالي هو: 1. البرنامج يدخل على مجلد معين في الموقع (وحاليا كلامنا عن Google Drive) (كما هو الحال الآن) ، ويكون فيه ملف نص txt او xml ، ويُنزل هذا الملف ، 2. هذا الملف يكون فيه اسماء برامجي ، ورقم النسخة الموجودة ، واسم مجلد الموقع الذي فيه هذه البرامج (مجلد آخر في Google Drive ، يعني اعمل مجلد لكل برنامج من برامجي) ، (طبعا نستطيع ان نضيف تاريخ من ، تاريخ الى ، نوع البرنامج: Full او Demo او Activation ، و....) ، والنص يكون هكذا مثلا : Enquiry_Book,2.0,0B9STtJY2DhAoQ1JET3F5N3NiMDQ myAccounting,1.5,0B9STtJY2DhAoQ1JET3F5N3Nuwiu Archiving_Goods,5.23,0B9STtJY2DhAoQ1JET3F5Nlujhft 3. البرنامج يُنزل هذا الملف ويقرأه ، ويقارن نسخة البرنامج (سيكون هناك جدول خاص في البرنامج ، وبه رقم نسخة البرنامج) ، 4. البرنامج سيقارن رقم النسخة من الجدول ، مع رقم نسخة البرنامج الموجودة في ملف النص ، 5. اذا كان رقم النسخة الموجودة في الملف/الموقع اكبر من النسخة الموجودة في البرنامج ، فيعطي رسالة للمستخدم بأنه هناك نسخة احدث للبرنامج ، وسيقوم بإنزالها وتنصيبها ، 6. البرنامج سيقوم بإستخدام نفس الكود اعلاه (طبعا مع تغييرات بسيطة اذا دعى الامر ، او نجعل الكود كوحدة نمطية نستطيع استعمالها لإنزال مختلف الملفات من الموقع) ، ويُنزل البرنامج. بهذه الطريقة المبرمج يستطيع ان يُحدث برامجه عالميا ، وبدون الذهاب الى مكتب المستخدم مجرد فكرة جعفر -
اخي طارق شو الفرق بين هذا الموضوع ، وهذا صحيح العنوان غير ، ولكن المطلوب وحتى المرفق هو نفسه!! جعفر
-
حياك الله اخي طارق يمكنك جلب بيانات الاكسل الى الاكسس ، ثم القيام بالعمل مثل ما عملته لك ، اذا تلاحظ في الاستعلام ، فانا كررت نفس العملية لجميع الحقول ، فجرب القيام بذلك ، واذا صادفتك مشكلة ، فانشاءالله تجد المساعدة منا جعفر
-
عفوا هل انزلت المرفق في مشاركتي الاخيرة؟
-
وعليكم السلام تفضل الاشارة " يمكن الاشارة اليها برقمها ، والذي هو (chr(34 وهذا لباقي ارقام وحروف الكمبيوتر: http://www.asciitable.com/ فعليه ، نستخدم الامر Replace لإزالة هذه الاشارات ، هكذا: Field1: Replace([Field_xyz],chr(34),"") والنتيجة جعفر 687.tarek.accdb.zip