-
Posts
9914 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
404
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو jjafferr
-
السلام عليكم 🙂 تفضل : لما تنقر على رقم 1 ، يفتح لك النموذج الآخر ، تنقر على السجلات اللي تريد الحاقها (نقرة اخرى على السجلات لعدم اختياره) ، ثم النقر على الزر 3 ، ليعمل الحاق السجلات ، ويخرج من النموذج . هذا كود النموذج : Option Compare Database Option Explicit Private Sub cmd_close_Click() DoCmd.close acForm, Me.Name, acSaveNo End Sub Private Sub cmd_Select_Click() On Error GoTo err_cmd_Select_Click Dim items As Variant Dim myIN As String myIN = Empty For Each items In Me.lst_invoices.ItemsSelected myIN = myIN & "," & Me.lst_invoices.Column(0, items) Next items 'Debug.Print Mid(myIN, 2) If Len(myIN & "") = 0 Then MsgBox "رجاء اختيار رقم الفاتورة من القائمة" Exit Sub End If Dim qdf As DAO.QueryDef Dim Replace_With As String, sqlString As String, Query_Name As String Dim pos_1 As Integer, pos_2 As Integer Query_Name = "append query customer account sub dollar ListBox" Set qdf = CurrentDb.QueryDefs(Query_Name) pos_1 = InStr(qdf.SQL, "In (") - 1 pos_2 = InStr(pos_1, qdf.SQL, ")") Replace_With = "In (" & Mid(myIN, 2) & ")" sqlString = Mid(qdf.SQL, 1, pos_1) & _ Replace_With & _ Mid(qdf.SQL, pos_2 + 1) 'Debug.Print sqlString qdf.SQL = sqlString DoCmd.SetWarnings False DoCmd.OpenQuery Query_Name DoCmd.SetWarnings True Exit_cmd_Select_Click: Call cmd_close_Click Exit Sub err_cmd_Select_Click: If Err.Number = 1 Then Else MsgBox Err.Number & vbCrLf & Err.Description Resume Exit_cmd_Select_Click End If End Sub . مع الاعتذار ، اني عملته بالنسخة الموجودة في آخر مشاركة ، ومو نسختك الاخيرة 🙂 جعفر 1513.1.Not in.accdb.zip
-
. اذا فتحت اي من برامج الاكسس عن طريق احد برامج Hex (مثل: http://www.mh-nexus.de) سترى ان هناك معلومات في الملف ، ولكن لما تفتح برنامجك ، فلا يوجد به اي معلومات ، وهذا معناه انه لايوجد شيء في الملف يمكن استرجاعه ، مثل ما قلت لك ، لا تضيع وقت زيادة في محاولة استرجاع الملف ، وانما ضع جهدك في الرجوع الى النسخة السابقة الاحتياطية Backup وواصل الطريق من هناك. جعفر
-
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
بس بشرط ، ان يتم هذا تلقائيا عن طريق دالة في وحدة نمطية ، مثل هاي المشاركة مثلا . يا الله ، قول بسم الله الرحمن الرخيم ، وخلي هذا المشروع على فائمتك ، وان شاء الله البرنامج يشوف النور قريبا 🙂 ايه ، بس لولا اقتراحك ، لو ما كنت انا في عالم افكاره اصلا 🙂 واليد الواحدة ما تصفق 🙂 جعفر -
اريد المساعدة في فتح التقرير بناء علي السجل المحدد بالنموذج
jjafferr replied to حسام محمود's topic in قسم الأكسيس Access
رجاء مناقشة هذا الموضوع في الموضوع الآخر جعفر -
اريد المساعدة في فتح التقرير بناء علي السجل المحدد بالنموذج
jjafferr replied to حسام محمود's topic in قسم الأكسيس Access
السلام عليكم 🙂 يا ريت نستفيد من حل ما وراء الستار 🙂 جعفر -
طلب اخر موضوع للفاتوره الاكتروني QR
jjafferr replied to سلمان الشهراني's topic in قسم الأكسيس Access
وعليكم السلام اخوي سلمان 🙂 تم جمع جميع مواضيع باركود QR هيئة الزكاة في هذا الرابط . جعفر -
وجود تغيير فى تنسيق التقرير بعد تصديره لصيغة TXT
jjafferr replied to ahmed289's topic in قسم الأكسيس Access
وعليكم السلام 🙂 اولا ، الحمدلله انك قدرت تعمل تصدير لبيانات الاستعلام 🙂 ثانيا ، اليك طريقتي: هذا هو الاستعلام qry_Export_Text . استعمل هذا الكود لتصدير الاستعلام الى ملف نص ، ولا تغير شيء في الكود سوى المتغيرين: Query_Table_Name و File_Path Dim Temp As String, File_Path As String, Query_Table_Name As String Query_Table_Name = "qry_Export_text" File_Path = "D:\me.txt" DoCmd.TransferText acExportDelim, , Query_Table_Name, File_Path, False, , 65001 Open File_Path For Input As #1 Temp = Input(LOF(1), #1) Close #1 Temp = Replace(Temp, Chr(34), "") Open File_Path For Output As #1 Print #1, Temp Close #1 . وشرح الكود: تصدير نص ، اسم الجدول/الاستعلام ، اسم ومسار الملف التصدير ، لا تعرض اسماء الحقول ، 65001 معناه ان البيانات قد يكون بها حروف عربية Unicode لهذا فصيغة الحفظ يجب ان تراعي هذا DoCmd.TransferText acExportDelim, , Query_Table_Name, File_Path, False, , 65001 . لما عملت التصدير ، هكذا كان الملف : "02-May-22,1,74.29,0,,,,abu gehad,02-May-22,1,74.29,0,,,,abu gehad" "19-May-22,4,701.75,0,,,,sd investment,19-May-22,4,701.75,0,,,,sd investment" "19-May-22,10,32850,0,,,,sd investment,19-May-22,10,32850,0,,,,sd investment" . ولكني لا اريد علامة " في بداية ونهاية الاسطر ، وللعلم ، بلغة الكمبيوتر ، العلامة " = Chr(34) فقمت بقراءة ملف النص جملة/دفعة واحدة (لم اقرأ الملف سطر بسطر) ، وحفظه في المتغير Temp : Open File_Path For Input As #1 Temp = Input(LOF(1), #1) Close #1 . عملت امر بإستبدال العلامة " الى لا شيء ، وكما قلت اعلاه : بلغة الكمبيوتر ، العلامة " = Chr(34) فاصبح المتغير Temp يحتوي على نص الملف بدون العلامة " تحذير: اذا كان الملف يحتوي على علامة " في وسط الكلمات ، فيجب معالجة ملف النص بقراءته سطر بسطر ، ثم حذف اول وآخر " فيه ، ثم تجميع الاسطر. Temp = Replace(Temp, Chr(34), "") . الآن وقد اصبح النص نظيفا ، فنحفظه من المتغير الى الملف مرة اخرى (طبعا ملف النص يجب ان يكون مغلق) Open File_Path For Output As #1 Print #1, Temp Close #1 . والنتيجة 02-May-22,1,74.29,0,,,,abu gehad,02-May-22,1,74.29,0,,,,abu gehad 19-May-22,4,701.75,0,,,,sd investment,19-May-22,4,701.75,0,,,,sd investment 19-May-22,10,32850,0,,,,sd investment,19-May-22,10,32850,0,,,,sd investment جعفر -
. نعم يتم الترقيم من اول سجل ، اما اذا اردت التحديث يصير من السجل اللي انت عليه ، اوقف عمل هذا السطر : جعفر
-
تقييد الأرقام التي تظهر في التقرير بنوع خط معين وحجم معين،،
jjafferr replied to حامل المسك's topic in قسم الأكسيس Access
اذا كان الحقل منضم في الجدول ، فيجب ان تعمله من نوع مذكرة ، وفي اخر الاعدادات في الجدول ، اعمله Rich Text ، ولكن وقبل ان تعمل هذا التغيير جرب التالي: في التقرير ، اعمل حقل غير مضمن ، واعطيه برمجيا قيمة الحقل اللي تريد العمل عليه 🙂 جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
هممم اذا عملنا جدول خاص فيه: "مصدر بياناته و مسمياته وبعض تنسيقاته وفق للقيمة المحمله" لكل نوع ، يكون اسهل في التعامل معه !! شكرا على الفكرة 🙂 -
التصدير الى الاكسل بتسمية الحقل وليس اسمه
jjafferr replied to ابا عمرو's topic in قسم الأكسيس Access
لا ما اشتغل ، يعطيني اخطاء !! على العموم ، ننتظر النسخة الاخيرة ونجربها ان شاء الله 🙂 جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
الحمدلله 🙂 بس ياريت تخبرنا وين كانت المشكلة ، علشان نستفبد🙂 جعفر -
تقييد الأرقام التي تظهر في التقرير بنوع خط معين وحجم معين،،
jjafferr replied to حامل المسك's topic in قسم الأكسيس Access
وعليكم السلام 🙂 انا عانيت الكثير مع الخط Al-Mohanad Extra Bold ، واضطررت الى تركه ، وانتهت مشاكلي 😁 مع العلم بأن مشاكل الخط موجودة في برنامج الوورد اكثر منها من مشاكله في الاكسس !! المشكلة تكون لما المؤسسة التي تتعامل معاها يقولون لك انه الخط المعتمد وما نقدر نغيره (فتأخر استعمالهم لاحد التقارير المهمة لمدة حوالي 5 سنوات ، ولما جاءت ادارة جديدة على طول وبدون اي مشكلة ، استعملو خط آخر واستعملو التقرير !!) . من وجهة نظري ، عندك حلين: 1. استعمال خط آخر قريب في الشكل لهذا الخط ، والحمدلله فيه خطوط قريبه منه ، 2. تستعمل الاكسس 2007 فما فوق (صيغة accdb ، لأن صيغة mdb لا تملك هذه الميزة) ، بحيث في التقرير ، تجعل تنسيق نص الحقل : . مما يجعله يقبل التنسيق وتغيير اي جزء فيه : . . وبما ان هذا التنسيق يعمل بلغة HTML ، فممكن ان نعمله برمجيا (بما اني لا اعرف لغة HTML ، فالطريقة اللي اعملها هي: اعمل التنسيق اللي اريده كما في الصورة ، وبعدين اعرض كود HTML اللي الاكسس عمله (debug.print me.text4) ، واضبط برمجتي على اساسه 🙂 ) ، وتظهر لي هذه النتيجة: . حسب ما يراه الكمبيوتر <div align=right><font face="Calibri (Detail)">نص وارقام </font><font face="Times New Roman" size=5 color=red>123456 </font><font face="Calibri (Detail)">ثم نص وارقام</font></div> بعد ان عملت عليه التعديل ليناسب برمجتي <div align=right> <font face="Calibri (Detail)">نص وارقام </font> <font face="Times New Roman" size=5 color=red>123456 </font> <font face="Calibri (Detail)">ثم نص وارقام</font> </div> . فالمطلوب الآن عمل كود ليعرف الارقام : . اما اذا كانت الارقام باللغة العربية ، فبدل Asc يجب ان نستعمل AscW ، لأن الارقام العربية لها ارقامها الخاصة برمجيا : . جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
سيدي الفاضل ، ما اعرف وين المشكلة ، ولكن خلينا نحاول نصيدها ، بتجزئة الكود 🙂 شو نوع الحقل id_Ccallg ، نص او رقم ؟ 1. اوقف عمل الاسطر 1 و 2 و 3 (اعمل الاشارة ' على يسار السطر ، او كلمة Rem) ، والمفروض الكود يعطيك كل النتائج حسب Deletedrecord=1 ، 2. اسمح للاسطر 1 و 3 بالعمل ، والمفروض تحصل على نفس الخطأ السابق (هنا نتعامل مع الحقل id_Ccallg كنص) 2. اوقف السطر 1 ، واجعل السطر 2 يعمل (هنا نتعامل مع الحقل id_Ccallg كرقم) Dim x() As String, myWhere As String x = Split(Me.OpenArgs, "|") myWhere = "[id_Ccallg]='" & x(1) & "'" '1 'myWhere = "[id_Ccallg]=" & CInt(x(1)) '2 myWhere = myWhere & " And" '3 myWhere = myWhere & " [Deletrecord]=1" rs.Open "SELECT * FROM tbl_QualityEvaluation WHERE myWhere ORDER BY id_Ccallg DESC;", sqldb جعفر -
بعد قراءة الباركود انتقال مؤشر الكتابه للمكان المخصص
jjafferr replied to ramynassif's topic in قسم الأكسيس Access
طيب ، 1. اذا كان التركيز على الحقل item او Quantity ، وادخلت الباركود فيه كذلك ، فتريد ان يتم ترك القيمة في الحقل كما كانت ، ثم تعمل سجل جديد ، وتضيف فيه قيمة الباركود. نأخذ مثال: ادخلت الباركود في حقل الباركود ، فينتقل التركيز الى حقل الصنف ، فتقوم انت بإدخال معلومة معينة ، مثل: "قميص بحري 2" ، ولم تنتقل الى الحقل التالي ، فتكون هذه القيمة لم تحفظ لا في السجل ولا في الحقل بعد ، وما تعمل اي شيء ، وتقرأ بالباركود (ومثلا رقمه 123456) ، فتصبح قيمة حقل الصنف: قميص بحري 2123456 ، فكيف تريد ان نفك معلومة الباركود من معلومة الصنف !! نفس السيناريو ممكن يكون لحقل الكمية !! هل ارقام الباركود مميزة ، يعني لها نفس طول العدد (مثلا دائما 5 ارقام) ، او انها دائما تبدأ بالرقم 9 ، او الحرف د ، او اي شيء خاص ؟ او انها موجودة في جدول؟ جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
لي الشرف في انك تراجع معلوماتي القديمة ، واشوف انها لا تزال صحيحة 🙂 -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
من واقع خبرتي ، كنت استعمل متغير variant ، ولكن صادقتني مشاكل فيه ، فتحولت الى نص ، والحمدلله بدون مشاكل الى اليوم 🙂 طبعا لاحقا ، يمكننا تحويل كل جزء/قيمة الى اصلها عن طريق الاوامر CInt و Cdate . هل فيه اشكال في هذا الاستعمال؟ جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
جميل ، اذن LisetViewData ليس اسم النموذج ، سوف نرسل قيمتين في المتغير OpenArgs ، يجب ان يكون الامر عندك هكذا ، نرسل اسم النموذج وقيمة حقل LisetViewData : DoCmd.OpenForm "frm_QualityEvaluation", , , , , acDialog, me.name & "|" & LisetViewData . عند اغلاق النموذج frm_QualityEvaluation ، اكتب : dim x() as string x=split(me.openargs,"|") Forms(x(0)).Visible = True او Forms(split(me.openargs,"|")(0)).Visible = True . وبالنسبة للسجل: dim x() as string x=split(me.openargs,"|") rs.Open "SELECT * FROM tbl_QualityEvaluation WHERE id_Ccallg = '" & x(1) & "' And Deletrecord =1 ORDER BY tbl_QualityEvaluation.id_Ccallg DESC;", sqldb او rs.Open "SELECT * FROM tbl_QualityEvaluation WHERE id_Ccallg = '" & split(me.openargs,"|")(1) & "' And Deletrecord =1 ORDER BY tbl_QualityEvaluation.id_Ccallg DESC;", sqldb . جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
شو LisetViewData ، وشو القيمة اللي فيه -
بعد قراءة الباركود انتقال مؤشر الكتابه للمكان المخصص
jjafferr replied to ramynassif's topic in قسم الأكسيس Access
خلينا نأخذ مثال حقيقي علشان نشوف شو اللي ممكن عمله : . 1. شو طريقة عمل النموذج ، اعطنا مثال لوسمحت ، 2. هل عند ادخال الباركود ، يجب ان تكون على سجل جديد ، او تستعمل الباركود للبحث عن السجل ؟ 3. شو نوع المعلومة اللي تكون في الحقل item ، نص او رقم ، واذا كان فيها معلومة وادخلت الباركود ، فيصبح فيها القيمة القديمة وقيمة الباركود ، فكيف تريد ان تفصلها المعلومات ، هل تعمل سجل جديد برقم الباركود وتترك معلومة item القديمة فيه ، او ماذا !! 4. نفس الكلام عن الحقل Quantity 🙂 جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
الامر DoCmd.OpenForm لفتح النموذج frm_QualityEvaluation ، السؤال: ما هو الحقل LisetViewData وما قيمته ؟ سؤالك الاصل كان : لهذا السبب انا اقترحت عليك استعمال المتغير OpenArgs في امر فتح النموذج (لاحظ اننا ارسلنا اسم النموذج الذي نحن عليه الآن me.name كقيمة عن المتغير OpenArgs) : DoCmd.OpenForm "frm", , , , , , me.name وانتهى الكلام عن فتح واغلاق النموذج ---------------------------------------------------------- فتح النموذج على السجل الذي نحن عليه الآن . والجواب كان (رجاء التركيز على جملة التصفية فقط ) : docmd.OpenForm "frm",,,"[ID]='" & me.lst_1 & "'",,acDialog, me.name . ولكنك في جملة rs التالية استعملت OpenArgs بدل عن me.lst_1 rs.Open "SELECT * FROM tbl_QualityEvaluation WHERE id_Ccallg = '" & OpenArgs & "' And Deletrecord =1 ORDER BY tbl_QualityEvaluation.id_Ccallg DESC;", sqldb ======================================================= اعتقد سؤالك كان لازم يكون كالتالي: 1. frm1 و frm2 نقوم من خلالهما فتح النموذج frm ، وعند اغلاق frm اريد ارجع للنموذج الذي تم فتحة منه ، 2. عند فتح النموذج frm عندي جملة SQL لفتح سجل معين في النموذج frm ، وهذا السجل هو السجل الذي يقع عليه التركيز في مربع القائمة في النموذج frm1 او frm2 . رجاء تأكد لي ان مفهومي صحيح علشان اكتب لك الرد ، واذا كان مفهومي غير صحيح ، فرجاء تعطينا الصورة كامله عن قصدك ، لأني الى الآن ما فاهم !! جعفر -
التصدير الى الاكسل بتسمية الحقل وليس اسمه
jjafferr replied to ابا عمرو's topic in قسم الأكسيس Access
السلام عليكم 🙂 اخوي rockjone33 : 1. رجاء تكتب نقاط عن عمل برنامجك ، لأنك تبذل مجهود ، ما فاهم منه شيء!! 2. رجاء تدخل في الكود وتعمل له Debug>Compile ، 3. يا ريت تخبرني وين كان الخطأ حتى استفيد جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
الله يطول عمرك ، انت خلطت الحابل بالنابل !! احنا استعملنا المتغير OpenArgs لإرسال اسم النموذج ، وهو يعمل بطريقة صحيحة حسب الصورة اعلاه ، ولكنك هنا تحتاج الى: فإذن استعمل الحقل ID هنا (ID هو عبارة عن حقل فيه قيمة فريدة تميز السجلات) 🙂 جعفر -
العودة الى الفورم الذي استدعى الفورم عند الاغلاق
jjafferr replied to alsihran's topic in قسم الأكسيس Access
ارجع لموضوع امس (انا تركت لك الرابط في مشاركتي السابقة) ، فيه تفاصيل اكثر 🙂 جعفر