حسين العربى قام بنشر نوفمبر 20, 2015 مشاركة قام بنشر نوفمبر 20, 2015 السلام عليكم ورحمة الله وبركاته عندي برنامج لطباعة الباركود علي المنتجات الاستهلاكية واجهتني به مشكله تتلخص في بعد البحث عن الصنف يتم طباعته من خلال تقرير طبعا عندي مربع نص اسمه (t3)لتحديد عدد الملصقات التي يتم طباعته سواء 1او 2 اواي عدد ( و احد الاخوه اعطاني هذا الكود Private Sub PRENT_Click() Dim i As Integer Do Until i = t3 i = i + 1 DoCmd.OpenReport "medicine", acViewNormal Loop End Sub الكود يعمل تمام بس المشكله هنا انه لما ادي امر طباعة للطابهة الزبرا مثلا حددة في مربع النص عدد 5 ملصقات من المفترض انه يرسلهم امر واحد بل يرسل كل واحد من ال 5 علي حده فالطابعه تطبع واحد وتقف 5ثواني وتطبع الثاني وهكذا مرفق نسخة من البرنامج فورم الطباعة هو form8 272.BARCODE.accdb (1).zip رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 20, 2015 مشاركة قام بنشر نوفمبر 20, 2015 (معدل) وعليكم السلام احذف الكود اللي عندك ، وجرب هذا الكود: DoCmd.OpenReport "medicine", acViewPreview DoCmd.PrintOut , , , , Me.t3 DoCmd.Close acReport, "medicine" جعفر تم تعديل نوفمبر 20, 2015 بواسطه jjafferr رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 20, 2015 مشاركة قام بنشر نوفمبر 20, 2015 واذا ما اردت المستخدم يشوف التقرير ، اخفيه DoCmd.OpenReport "medicine", acViewPreview, , , acHidden DoCmd.PrintOut , , , , Me.t3 DoCmd.Close acReport, "medicine" جعفر 1 رابط هذا التعليق شارك More sharing options...
محمد سلامة قام بنشر نوفمبر 20, 2015 مشاركة قام بنشر نوفمبر 20, 2015 الله عليك يا استاذ جعفر كود جميل جدا.. رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 21, 2015 الكاتب مشاركة قام بنشر نوفمبر 21, 2015 الف شكر اخي جعفر الكود الاول يعمل 100% وهذا هو المطلوب بالظبط جزاك الله خير الجزاء وجعله الله في ميزان حسناتك اما بالنسبه للكود الثاني الي فيه اخفاء التقرير فعند الطباعة يطبع لي النموذج وليسي التقرير رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 21, 2015 مشاركة قام بنشر نوفمبر 21, 2015 الحمدلله في الأمر docmd.printout اعتقد نقدر نخبره بإسم التقرير ، فعليه لن يأخذ من النموذج. جرب وشوف جعفر رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 21, 2015 الكاتب مشاركة قام بنشر نوفمبر 21, 2015 ماظبط اخي الفاضل رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 21, 2015 مشاركة قام بنشر نوفمبر 21, 2015 الظاهر ان الامر Docmd.Printout يطبع النموذج/التقرير اللي في الامام ، ولما كان التقرير مخفي ، فالتقرير هو اللي اصبح ظاهر ، فطبعه طيب ، هذه حيلة استخدمها بعض الاوقات: بعض الاوقات لما اريد اعمل شئ وما اريد المستخدم يشوفه ، فاطلب من اكسس ان: يوقف صورة الشاشة ، يعمل المطلوب (بينما المستخدم يشاهد الشاشة التي لم تتجدد ، يقوم البرنامج بعمل المطلوب) ، يعطينا الشاشة الجديدة جرب هذه الطريقة: Application.Echo False DoCmd.OpenReport "medicine", acViewPreview, , , acHidden DoCmd.PrintOut , , , Me.t3 DoCmd.Close acReport, "medicine" Aplication.Echo True جعفر 1 رابط هذا التعليق شارك More sharing options...
ابو عارف قام بنشر نوفمبر 21, 2015 مشاركة قام بنشر نوفمبر 21, 2015 (معدل) السلام عليكم و رحمة الله و بركاته و تحية خاصة للاستاذ جعفر الأخ حسين : اضافة سطر بسيط في الكود السابق ستنحل المشكة ان شاء الله DoCmd.OpenReport "medicine", acViewPreview, , , acHidden DoCmd.SelectObject acReport, "medicine" DoCmd.PrintOut , , , , Me.t3 DoCmd.Close acReport, "medicine" بالتوفيق تم تعديل نوفمبر 22, 2015 بواسطه ابو عارف 2 رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 21, 2015 مشاركة قام بنشر نوفمبر 21, 2015 36 دقائق مضت, ابو عارف said: DoCmd.SelectObject acReport, "medicine" . رحم الله والديك ، كنت افتش على هذا الامر وما لقيته جعفر رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 21, 2015 مشاركة قام بنشر نوفمبر 21, 2015 20 ساعات مضت, محمد سلامة said: الله عليك يا استاذ جعفر كود جميل جدا.. أخي العزيز محمد شكرا لك على تشجيعك المستمر والامتناهي ، تحية إجلال وإحترام لشخصك الكريم جعفر 1 رابط هذا التعليق شارك More sharing options...
محمد سلامة قام بنشر نوفمبر 21, 2015 مشاركة قام بنشر نوفمبر 21, 2015 53 دقائق مضت, jjafferr said: أخي العزيز محمد شكرا لك على تشجيعك المستمر والامتناهي ، تحية إجلال وإحترام لشخصك الكريم جعفر بارك الله فيك استاذ جعفر منكم تعلمنا ومازلنا نتعلم انتم استاذتنا ومعلمينا واقل شئ نشكركم فهذا حقكم علينا نحن الطلاب غفر الله لك ولوالديك وأسال الله ان يجعل كل ماتقدمونه صدقة جارية وفي ميزان حسناتكم تحياتي 1 رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 22, 2015 الكاتب مشاركة قام بنشر نوفمبر 22, 2015 الف شكر لك اخي واستاذي جعفر علي كرمك وزوقك الرفيع وزادك الله من علمه رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 22, 2015 مشاركة قام بنشر نوفمبر 22, 2015 حياك الله أخوي حسين بس طلب لوسمحت تجرب وتخبرنا النتيجة: 1. مال مشاركتي الاخيرة اللي فيها Application.Echo False ، 2. وكذلك مال اخينا ابوعارف ، لأني اعرف اننا لا يمكن ان نعمل setfocus على حقل مخفي في نموذج ، فما ادري اذا ممكن نستخدم Docmd.SelectObject على تقرير مخفي جعفر 1 رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 22, 2015 الكاتب مشاركة قام بنشر نوفمبر 22, 2015 انا جربتها بس ماظبطت عندي رابط هذا التعليق شارك More sharing options...
ابو عارف قام بنشر نوفمبر 22, 2015 مشاركة قام بنشر نوفمبر 22, 2015 عذرا للكتابة اسم الأخ حسين (الأخ هاني) في مشاركتي و قد تم تصحيحه رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 23, 2015 الكاتب مشاركة قام بنشر نوفمبر 23, 2015 اخي الفاضل جعفر لي ملحوظه بسيطه هي بعد معالجة ارسال امر العدد الكتوب في مربع النص عدد الملصقات في امر واحد عن طريق هذا الكود DoCmd.OpenReport "medicine", acViewPreview DoCmd.PrintOut , , , , Me.t3 DoCmd.Close acReport, "medicine" الامر نجح وير سل العدد في امر واحد بس الطابعة مثلا لوعطيت امر مثلا 5 او 10 او اي عدد اكبر من 3 لاحظت انا الطابعة كل 3 ملصقات تقف اقل من ثانيه مع العلم انه في برنامج علي فيجول بيسك عند اعطاء الامر مثلا ولو 20 يطلع مره واحد ولا توجد هذه الوقفه البصيطه وللعلم ايضا اني سألت مصصم برنامج الفيجول قال لي انه بيرسل لامر الي ملف تكست ويدي امر للملف بالطباعه علي حسب ما فهمت . وشكر واسف علي الاطالة هل من حل وشكرا رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 23, 2015 مشاركة قام بنشر نوفمبر 23, 2015 وعليكم السلام نعم ممكن ، وذلك بعمل جدول مؤقت للطباعة ويكون مصدر التقرير medicine في النموذج Form8 ، وعند النقر على الزر "طباعة باركود" ، فيجب ان نعمل سجلات بالعدد المطلوب في الجدول المؤقت ، ثم نعطي زر الطباعة DoCmd.OpenReport "medicine" حيث ان الجدول سيحتوي على عدد السجلات المطلوبة مباشرة ، بينما نحن الان ، نطلب منه ان يطبع ، ثم يطبع ، ثم يطبع ، ثم ... جعفر رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 23, 2015 الكاتب مشاركة قام بنشر نوفمبر 23, 2015 استاذي الفاضل جعفر انا عارف اني اسقلت عليك بكثرة اسألتي ولاكن البحر يحب الزياده ولكي يستفيد الجميع فهل ممكن لو تكرمت تطبيق ذلك في مثال رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 23, 2015 مشاركة قام بنشر نوفمبر 23, 2015 (معدل) تفضل عملنا جدول جديد مؤقت للطباعة tbl_Temp وفيه الحقول المطلوبة لطباعة الباركود: . فاصبح علينا في الكود ان نحذف جميع سجلات هذا الجدول ، ثم نضيف بيانات الباركود الجديد ، على حسب عدد السجلات المطلوبة ، وبعدها نفتح التقرير ، والذي عملنا مصدره tbl_Temp . والكود اصبح: Private Sub PRENT_Click() If Me.t3 = 0 Then MsgBox ("لابد ان يكون حقل عدد الملصقات اكبر من صفر") End If 'delete the tbl_Temp Records mySQL = "Delete * From tbl_Temp" CurrentDb.Execute (mySQL) 'add the number of Records Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From tbl_Temp") For i = 1 To Me.t3 rst.AddNew rst!SMALL_UNIT_PRICE = Me.SMALL_UNIT_PRICE rst!uuu = Me.uuu rst!uun = Me.uun rst!ITEM_CODE = Me.ITEM_CODE rst!ITEM_BARCODE = Me.ITEM_BARCODE rst!FACTOR = Me.FACTOR rst!ITEM_NAME2 = Me.ITEM_NAME2 rst!SUPP_CODE = Me.SUPP_CODE rst.Update Next i rst.Close: Set rst = Nothing 'now print the Report DoCmd.OpenReport "medicine" End Sub . السبب ان هذه الطريقة اسرع في الطباعة ، لأننا نرسل جميع السجلات الى التقرير مرة واحدة ، فالى الطابعة ، بينما في الطريقة السابقة ، كان هناك سجل واحد فقط في التقرير ، وكنا نفتح ونغلق التقرير عدة مرات لطباعة الباركود الواحد. وهنا اود ان ارفع الى اختنا الفاضلة الدكتورة أم عهود كل تحية واجلال واحترام لبُعد نظرها وبراعتها ، لأني اتذكر في منتدى الفريق العربي للبرمجة ، في موضوع طباعة الباركود ، انها عملت الكود لتحفظ سجلات الباركود في جدول مؤقت ، وانا وبسبب قلة خبرتي قلت انه من الافضل عدم عمل الجدول ، والطلب من التقرير الطباعة مباشرة (مثل ما عملنا سابقا) ، والآن فقط عرفت السبب ، وهو سرعة/بطئ الطباعة جعفر 272.BARCODE.accdb.zip تم تعديل نوفمبر 23, 2015 بواسطه jjafferr 2 رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 23, 2015 الكاتب مشاركة قام بنشر نوفمبر 23, 2015 الف شكر استاذي الفاضل جعفر وجاري التجربه وسأخبرك بالنتيجة رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 24, 2015 الكاتب مشاركة قام بنشر نوفمبر 24, 2015 20 ساعات مضت, husseinarby said: اخي الفاضل جعفر لي ملحوظه بسيطه هي بعد معالجة ارسال امر العدد الكتوب في مربع النص عدد الملصقات في امر واحد عن طريق هذا الكود DoCmd.OpenReport "medicine", acViewPreview DoCmd.PrintOut , , , , Me.t3 DoCmd.Close acReport, "medicine" الامر نجح وير سل العدد في امر واحد بس الطابعة مثلا لوعطيت امر مثلا 5 او 10 او اي عدد اكبر من 3 لاحظت انا الطابعة كل 3 ملصقات تقف اقل من ثانيه مع العلم انه في برنامج علي فيجول بيسك عند اعطاء الامر مثلا ولو 20 يطلع مره واحد ولا توجد هذه الوقفه البصيطه وللعلم ايضا اني سألت مصصم برنامج الفيجول قال لي انه بيرسل لامر الي ملف تكست ويدي امر للملف بالطباعه علي حسب ما فهمت . وشكر واسف علي الاطالة هل من حل وشكرا اخي الفاضل جعفر المشكله المذكوره في الاعلي مازالت ما اعرف مالسبب ارسل اليك المرفق الذي طبقت عليه الكود ربما يكون الخطأ من عندي BARCODE22.rar رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 24, 2015 مشاركة قام بنشر نوفمبر 24, 2015 وعليكم السلام أخي حسين الكود والطريقة صحيحة ، ولكني عدلت على التقرير قليلا ، فما ادري اذا بيصلح الوضع ملئت الجدول ببعض البيانات . وشغلت التقرير يدويا . والنتيجة . هذا معناه ان التقرير يشتغل بصورة صحيحة ، ويمكن طباعته مباشرة بكل البيانات مرة واحدة!! جرب المرفق واخبرني جعفر 272.2.BARCODE22.accdb.zip 1 رابط هذا التعليق شارك More sharing options...
حسين العربى قام بنشر نوفمبر 24, 2015 الكاتب مشاركة قام بنشر نوفمبر 24, 2015 للاسف اخي الفاضل لم يفلح الامر رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر نوفمبر 24, 2015 مشاركة قام بنشر نوفمبر 24, 2015 انا آسف أخي حسين ، فا لاقتراح الوحيد المتبقى عندي هو ان تعمل تقرير جدولي مرة اخرى ، بحيث تستطيع ان ترى جميع الحقول فيه. جعفر 1 رابط هذا التعليق شارك More sharing options...
الردود الموصى بها
من فضلك سجل دخول لتتمكن من التعليق
ستتمكن من اضافه تعليقات بعد التسجيل
سجل دخولك الان