الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل فاتورة بيع

رائج
بدأه weswes88 في 8 أكتوبر 2012 · 70 رد · 15,725 مشاهدة · في تصميم وبرمجة التقارير
مشاركة: واتساب X فيسبوك تيليجرام
#51

وايه الحل يا استاذ حسام .. انا مش عارف اعمل ايه

#52

عايز برنامج الفاتورة وليس الطباعة فقط

للعلم انا ادخل النت لهذا السبب فقط

اتمني الرد

#53
  1. اقتباس
    وايه الحل يا استاذ حسام .. انا مش عارف اعمل ايه
    نحن بحاجة لشخص تعامل مع الموضوع بشكل عملي ..
  2. هذه محاولة لطباعة الصورة التي قمنا بتصدير التقرير إليها على عدة صفحات بدلا من الطباعة على صفحة واحدة و تغيير حجمها ...
  3. في هذه المحاولة يجب أن يكون هامش الطباعة يساوي الصفر لانه لدينا هامش في الصورة ..
  4. المثال يعمل من اجل القيم 1000 سطر و لكن أكبر من ذلك يحصل مشكلة على ما يبدو لا يمكن إنشاء صور كبيرة الحم أكبر من مقدار محدد ..
  5. ظهرت لدينا مشكلة أنه يقوم بعمل تصغير للأسطر بشكل ثابت و الحل هو التغيير في قيم المتحول scale .. بزيادة قيمه يتم زيادة ارتفاع الأسطر ..
  6. أحيانا يطبع صفحة فارغة آخر التقرير , ربما السبب انه لدينا هامش كبير في الصورة بسبب عدم دقة الحسابات و الله أعلم ..

Bills.rar

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#54

الاستاذ الفاضل houssam11350_11350 Icon

مش عارف

هل طلبي غريب ام صعب

اطلب فورم لعمل الفاتورة تخطيطها كالتالي

رقم الفاتورة في حالة وجود الرقم من قبل يتم عرض الفاتورة

اسم العميل يتم اختياره من الكمبوبوكس

التاريخ

م الصنف يتم اختياره من كمبوبكس يظهر السعر ثم نكتب العدد يظهر القيمة

وفي النهاية اجمالي الفاتورة

مع مكانية حذف صنف من الفاتورة اي تعديلها و وطباعتها

قاعدةالبيانات اكسس فيجوال بيسك 2008

اتمني تلبة طلبي

تم تعديل هذه المشاركة بواسطة atefkhalf2004 في 23 ديسمبر 2012 في 15:00

#55

السلام عليكم ...

أخي atefkhalf2004 ..

  1. اقتباس
    هل طلبي غريب ام صعب
    أخي طلبك ليس غريبا أو صعبا .. لكن المنتدى ملئ بامثلة الفواتير ...استخدم البحث عن كلمة "فاتورة" في عناوين المواضيع و ستجد الكثير .(طريقة البحث) .
  2. برنامج من أحد الإخوة (رابط) .
  3. عمل فاتورة بالكود .
  4. تعديل على فاتورة مشتريات .
  5. إذا كان البرنامج لا يلبي طلباتك , فيمكنك وضع موضوع جديد تطلب فيه التعديل الذي تريده .

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#56

الاستاذ الفاضل

خلينا في مثال الاستاذ احمد خميس

لو حضرتك رجعت الي المثال مطلوب فيه تعديل بسيط

هو

كيف استعدي فاتورة واعدل فيها

واذا عملت فاتوروة جديدة والرقم موجود من قبل يعرضعا

يا ريت تعدل المثال وترفقه

ان شاء الله سوف تثاب علي ذلك ثواب كبير

شكرا

#57

استاذ حسام انا كنت عاوز افهم معني الكود دا ..

#Region "حدث برنت بيج"


    	Private Sub PrintPage(ByVal sender As Object, ByVal ev As PrintPageEventArgs)
        	If pageImage Is Nothing Then Exit Sub
       	ev.Graphics.PageUnit = GraphicsUnit.Pixel
        	ev.Graphics.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
        	ev.Graphics.PixelOffsetMode = Drawing2D.PixelOffsetMode.HighQuality
        	Dim a = (ev.PageSettings.PrintableArea.Width / 100) * ev.Graphics.DpiX
        	Dim b = ((ev.PageSettings.PrintableArea.Height / 100) * ev.Graphics.DpiY)
        	Dim scale = 1500
        	Dim srcRect As New RectangleF(0, startY, pageImage.Width, b - scale)
        	Dim destRect As New RectangleF(0, 0, a, b)
        	ev.Graphics.DrawImage(pageImage, destRect, srcRect, GraphicsUnit.Pixel)
       	startY = startY + b - scale
        	Dim marignInPixel = (0.5 / 2.54) * ev.Graphics.DpiY
        	ev.HasMorePages = (startY + marignInPixel < pageImage.Height)
       	End Sub
#End Region

لاني لما طبعت الفاتوره اللي كانت موجوده في المثال اللي حضرتك بعته .. وحددت 50 سجل

لقيته طبع ال50 سطر

بس المسافات كبيره جدا حتي انه استخدم جزء كبير من الرول ... ومش عارف ايه سببه دا

تم تعديل هذه المشاركة بواسطة weswes88 في 23 ديسمبر 2012 في 21:37

#58

السيد الفاضل

ايضا مثال فاتورة وارد ممتاز لكن القاعدة sql وانا لا اعرف ولا اعرف احولها

ممكن حضرتك ايضا تحول لي القاعدة السكول الي اكسس

المهم يكون الموضوع متكامل

معلهش

انا تعبتك معاي

تعديل سوف يخدم الجميع

#59

السلام عليكم ..

أخي weswes88 ..

  1. ev.PageSettings.PrintableArea.Width هو عرض المنطقة التي سيتم الطباعة عليها مقاسا بواحدة هي (الإنش مضروبا بــ 100 اعتقد انها تسمى hundredth of an inch) حيث أن كل واحد إنش يساوي مئة من الـــ hundredth of an inch . و لتحويل الــ ev.PageSettings.PrintableArea.Width من الـــ hundredth of an inch إلى إنش نقوم بالتقسيم على 100 .
  2. ev.Graphics.DpiX هو قيمة الدفة resolution أي كم نقطة في الإنش على المحور X و هي اختصار لـــ Dot Per Inch و بالتالي تقسيم العرض بالأنش على الــ DpiX يعطينا عرض منطقة الطباعة بالبكسل .
  3. نفس الأمر بالنسبة للإرتفاع .. Height .
  4. الفكرة أخي , باختصار انه بعد أن قمنا بتصدير التقرير إلى صورة كبيرة , يجب طباعتها على أكثر من صفحة كما قلنا منعا لضغط الأسطر .. و بالتالي في كل مرة نأخذ مساحة من الصورة هي srcRect و نطبعها في المنطقة المخصصة للطباعة و في الصفحة التالية نأخذ المساحة التالية من الصورة و نطبعها في الصفحة التالية و هكذا حتى تنتهي الصورة التي تم تصدير التقرير إليها لذلك لدينا :
                	ev.HasMorePages = (startY + marignInPixel < pageImage.Height)

  5. كود الطباعة :
                	ev.Graphics.DrawImage(pageImage, destRect, srcRect, GraphicsUnit.Pixel)

    يقوم برسم جزء من الصورة محدد بالمستطيل srcRect داخل الصفحة في المستطيل destRect لذلك لاحظ أن destRect هو مستطيل يغطي كامل المساحة المخصصة للطباعة , أما srcRect فيأخذ جزء من الصورة المطلوب طباعتها . و نحدد أننا ننتعامل مع وحدة القياس Pixel .

  6. المتحول startY يحدد نقطة للمنطقة التي سيتم طباعتها من الصورة , يبدا بــ صفر ثم يزداد ليأخذ المنطقة التالية من الصورة و هكذا حتى ينهي الصورة .
  7. بما أنني استخدم طابعة PDF File وجدت أنه يضغط الأسطر .. لدلك وضعت متحول سميته scale و كلما زادت قيمته يقوم بزيادة المسافة بين الأسطر .. إذا كانت المسافة كبيرة فقم بإنقاص قيمته بالتدريج أو يمكن جعله مساوي للصفر و تجريب الطباعة .
  8. بالنسبة للمسافة الكبيرة , كما قلت لك , قم بإنقاص قيمة scale و يمكن جعله مساويا للصفر .

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#60

الأخ atefkhalf2004 ...سأحاول خلال اليومين القادمين تأمينه لك ... لكن أختر المثال الذي تريده كي اعدله لك ..

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#61

اي مثال تيده حضرتك وليكن مثال احمد خميس اسهل بكثير في التعلم

لان الثاني لصعب

اعلي برمجيا نتعلم السهل ثم ننتقل

وانا عارف ان اذا لقبت الثاني افضل لا توجد مشكلة بشرط تحويله الي اكسس

مرة اخري لك كل الشكر

#62

السلام عليكم ..

الأخ atefkhalf2004 .. تم تعديل مثال أحمد خميس و المشروع في الموضوع الأصلي .

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#63

استاذ حسام انا طبعت 100 سجل طلعوا كويس اوووي

و خليت المتغير Scale بيساوي -2000 علشان اصغر حجم الورقة ..

وكمان العرض بتاع الورقة صغير ..

فياريت لو تقدر تلاقيلي حل بحيث اني العرض يبأي اكبر (علما بأن عرض الورقة اللي عندي 8 سم)

والScale يبأي طبيعي اكتر لاني حجم الخط لما قللت قيمة المتغير بأي غير اللي انا مظبطه في التصميم ..

ودي صوره من الفاتوره

post-199057-051467400 1356526141_thumb.j

المرفقات
2012-12-26-559.jpg

تم تعديل هذه المشاركة بواسطة weswes88 في 26 ديسمبر 2012 في 15:59

#64

السلام عليكم ...

  1. اقتباس
    استاذ حسام انا طبعت 100 سجل طلعوا كويس اوووي
    الحمد لله , جيد .
  2. اقتباس
    و خليت المتغير Scale بيساوي -2000 علشان اصغر حجم الورقة ..
    نعم هذا صحيح , نقوم بتغييره كي يتناسب مع ما نريد .
  3. اقتباس
    فياريت لو تقدر تلاقيلي حل بحيث اني العرض يبأي اكبر (علما بأن عرض الورقة اللي عندي 8 سم)
    بالنسبة لموضوع العرض فهو سهل , لان عرض الورق معروف و عرض التقرير معروف و لكن يجب أن نفهم مايلي :
    1. الجدول له عرض و له Location (يعني الــ Left و الــ Top) فحتى لا نضيع في الحسابات نجعل عرض الجدول يساوي 7 سم و الــ Left يساوي صفر .
    2. post-94677-076411200 1356533888_thumb.pn
    3. نجعل عرض الـــ Body الخاص بالتقرير مساوي 7 سم (يعني الجدول يملء التقرير تماما) .
    4. post-94677-018865200 1356534100_thumb.pn
    5. نقوم بتصدير التقرير إلى ورقة عرضها 8 سم (المتحول WidthInInCM ) مع هوامش 0.5 سم على اليمين و 0.5 سم على اليسار .
    6. post-94677-082633200 1356534203_thumb.pn
    7. تذكر انه لدينا الكود :

      printDoc.DefaultPageSettings.Margins.Bottom = 0
      printDoc.DefaultPageSettings.Margins.Left = 0
      printDoc.DefaultPageSettings.Margins.Right = 0
      printDoc.DefaultPageSettings.Margins.Top = 0
      لأن الهوامش اصبحت في الصورة من كود التصدير .
    8. في حال حصلت نتائج غير متوفعة , يمكن ضبط قيم المتحولات .
    9. اقتباس
      والScale يبأي طبيعي اكتر لاني حجم الخط لما قللت قيمة المتغير بأي غير اللي انا مظبطه في التصميم ..
      قم بوضع نقطة توقف break point في الإجراء (PrintPage) و راقب قيم المتحولات , ربما نصل لشئ مفيد .
    10. انا بصراحة لم أتعامل مع الموضوع مسبقا و هذه المحاولات نتيجة البحث في google . قد يكون حصل عندي إلتباس في بعض المعلومات (الله أعلم). نرجو من الأعضاء التفاعل .
المرفقات
table.pngbody.pngcode.png

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 26 ديسمبر 2012 في 18:23

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#65

طيب سؤال صغير استاذ حسام قبل ما ابدأ في تنفيذ الكود ..

انا وبصمم التقرير .. اظبط العرض بتاع التقرير .. اخليه أد ايه ..

#66

السلام عليكم ..

  1. المشكلة أني لا املك الطابعة التي تعمل عليها ... و بالتالي ما أقوله لك قد لا يكون صحيحا تماما ..
  2. اعتقد ان عرض التقرير يجب ان يكون 7 سم ... و الهوامش في خصائص التقرير كلها تساوي الصفر .. من report Properties ..
  3. post-94677-077522800 1356614076_thumb.pn
  4. و عرض الــ body ايضا 7 سم
  5. post-94677-018865200%201356534100.png
  6. و عرض الجدول 7سم .. و قيمة الــ Left تساوي صفر . أي أن الجدول يملئ التقرير تماما ..
  7. post-94677-076411200%201356533888.png
المرفقات
report.png

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 27 ديسمبر 2012 في 16:15

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#67

استاذ حسام .. ربنا يبارك فيك ..

كل حاجه تمام والحمد لله وشغاله عشرة / عشرة ..

جزاك الله كل خير

#68

السلام عليكم ...

أخي weswes88 .. جزاك الله خيرا ... و اتمنى أن يستفيد الأعضاء من الموضوع ..

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#69
houssam11350_11350 كتب:

السلام عليكم ...

  • كان يجب استخدام Close بدلا من End ختى يتم نفعيل الحدث Closing .
  • يمكن تعديل الكود كمايلي :
    	Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        	ReportViewer1.LocalReport.ReleaseSandboxAppDomain()
        	End
    	End Sub

 

علي النعمة انتم استاذة

#70

برجاء مساعدتى فى كيفية عمل فاتورة شراء بالداتا جريد فيو فى سى شارب لأننى لم ادرس فيجوال بيزك

#71
mr7bebo كتب:

برجاء مساعدتى فى كيفية عمل فاتورة شراء بالداتا جريد فيو فى سى شارب لأننى لم ادرس فيجوال بيزك

حاول استخدام محول الأكواد ..

http://www.developerfusion.com/tools/convert/vb-to-csharp/

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

مواضيع مشابهة