• 0
golden wave

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

سؤال

أقوم بتصميم تقرير عبارة عن فاتورة بيع (رسيت) على الورق المسمى 70 مم الذى مقاسه حوالى 7.7 سم والمشكلة إننى قمت بضبط عرض الورقة 7.7 سم داخل تقرير الكريستال ريبورت لكن المشكلة لا أدرى ماهو طول الورقة التى يجب ضبطه داخل التقرير لأن هذه الورقة كما تعلمون عبارة عن رول من الورق .. فمثلا إذا قمت بضبط الورقة على طول 20 سم وتم الكتابة على 10 سم فقط فى الفاتورة هل ستتوقف الطابعة عن الكتابة بعد الـ 10 سم لتكون طول الورقة المستهلكة داخل الفاتورة 10 سم ام ستكمل الطابعة خروج باقى الـ 20 سم فارغين ... أفيدونى ما هو الحل ؟؟؟؟؟؟؟؟؟؟؟

post-110204-014490000 1320427433_thumb.p

تم تعديل بواسطه محمد أحمد إبراهيم
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

17 إجابة على هذا السؤال .

  • 0

السلام عليكم و رحمة الله و بركاته ..

أرجوا من يتوفر له إجابة لسؤالى أن يجيبنى لحاجتى الشديدة للإجابة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

جرب و صمم التقرير بأعلى الصفحة .. و خذه إلى جهاز العميل و جرب ...

لكن حسب معلوماتي أن طابعات الــ POS - Point Of Sales . أو تسمى بــ receipt printer . لها طريقة تعامل خاصة بها ..

100_Epson-TM-H6000III-Multifunction-Receipt-Printer.png

يوجد مكتبة خاصة بها (طباعة - فتح الجارور (drawer) .. إظهار رقم على اللوحة الرقمية ربما ) .. POS for Dot NET .رابط..و فيه صف خاص اسمه PosPrinter .. رابط حيث ترسل له الأحرف و الأوامر للطباعة .. و بعض الطابعات لها المكتبة الخاصة بها مثل Epson OPOS for .Net ADK

و كود الطباعة سيكون بالشكل التالي :رابط:


//in Form_Loading event
DeviceInfo oDevicePrinter = myExplorer.GetDevice(DeviceType.PosPrinter, "POSPrinter");
oPrinter = (PosPrinter)myExplorer.CreateInstance(oDevicePrinter);
try
{
if (oPrinter != null)
{
oPrinter.Open();
oPrinter.Claim(1000);
oPrinter.DeviceEnabled = true;
}
}
catch (Exception exPrinter)
{
MessageBox.Show(exPrinter.ToString(), "Warning");
}


// Print Button Click Event handle this code.

try
{
oPrinter.PrintNormal(PrinterStation.Receipt, txtPrint.Text + DateTime.Now.ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}

و هنا مثال آخر ربما يفيدك في التعامل مع هذه الطابعات ..

http://www.codeproject.com/KB/printing/EasyPrintingPOS.aspx

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

والله نفسي في برنامج مبيعات فيجوال 2008 و كريستال

سوف ادعوا لك كثيرا

مش مهم سي شارب احوله الي فيجوال بيسك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أشكرك كثيرا أخى houssam11350_11350

ولكن لى إستفسار , معنى كلام حضرتك أنه إذا قمت بتصميم الفاتورة (الرسيت) وجعلت عرض الورقة حوالى 7.7 سم و أرسلته لطابعة الفواتير لن يتم الطباعة كأى طابعة أم ماذا تقصد بانها لها معاملة خاصة ؟

تم تعديل بواسطه محمد أحمد إبراهيم
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

بصراحة معلوماتي عن الموضوع نظرية ... و لم تتاح لي الفرصة كي أطبقها ...لذلك كانت أول نصيحة لك هي أن تجرب :

جرب و صمم التقرير بأعلى الصفحة .. و خذه إلى جهاز العميل و جرب ...

لكن لى إستفسار , معنى كلام حضرتك أنه إذا قمت بتصميم الفاتورة (الرسيت) وجعلت عرض الورقة حوالى 7.7 سم و أرسلته لطابعة الفواتير لن يتم الطباعة كأى طابعة أم ماذا تقصد بانها لها معاملة خاصة ؟

الموضوع مطروح أيضا بالمنتديات الأجنبية .. (كما قلت لم أجربه).

و خلاصته أنه يمكنك طباعة التقرير من كريستال ريبورت على هذه الطابعات لكنها تستمر بسحب الورق حسب مقاس التقرير (يطبع كامل الصفحة حتى لو فيها سطر واحد )

بعض الحلول الإلتفافية (work around) .. مثل تغير حجم الصفحة بما يتناسب مع التقرير كما في الرابط..و أنا جربته مرة و لكنه لم يعمل .. حاول به ..

حل آخر مطروح هنا.. هو تحويل التقرير إلى ملف نصي ثم طباعة الملف النصي من سطر الأوامر (لا أعرف كيف يتم ذلك).

أما ما قصدته بمعاملة خاصة فهي استخدام مكتبات خاصة تزودنا بالصفوف المطلوبه للتعامل مع هذه الطابعات مثل الصف PosPrinter .. الذي ذكرته بالمشاركة السابقة ..

و نتمنى من الأعضاء الذين طبقوا الموضوع بشكل عملي أن يزودونا بخبرتهم ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أشكرك كثيرا أخى houssam11350_11350 على إهتمامك ..

و أدعوا كل من له معلومة بشأن هذا الموضوع أن لا يبخل علينا بها نظرا لإحتياجى الشديد لهذه المعلومة .. و كل عام و أنتم بخير

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أتمنى أن يقوم الأعضاء من لهم الخبرة فى هذا الموضوع بشرحه لنا بالتفصيل حتى تعم الفائدة علينا جميعا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم اخي محمد

اتبع معي الخطوات التالية

اذهب الى الطابعات والفاكسات

انقر بزر الماوس الايمن واختار الخيار Server Properties

يظهر لك صندوق حواري انقر على Forms ثم اشر على الخيار Create a new Forms

في الخانه From name اختار اسم للورق الذي تستخدمه مثلا new_A7 ثم حدد له مقاسات الورق باستخدام مسطره وهنا يجب ان تحدد القياس اما بالمليميتر او بلانش وبعد ذلك قم

بادخال مقاسات طول الورقه في خانة الطول ومقاسات العرض في خانه العرض

و بعد ان يتم ادخال الطول والعرض اضغط على الزر Save Form ثم موافق وستم اضافة الورقة الى خيارات حجم اوراق الويندوز المتاحة مثل باقي الاورق A4 , A3 الخ

ثم ارجع الى بيئة الكريستال ريبورت واذهب لخيار اعدادت الطابعة

File>Printer Setup>Size

اختار حجم الورق الذي حددناه مسبقا new_A7 واحفظ الخيارات

الرجاء بعد التجربه اعلامي بما يحصل معك او ارسل لنا مثال للبرنامج وسنحاول بمعية الإخوة الكرام حل مشكلتك

بالتوفيق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

قمنا بمناقشة مشابهة هنا حاولوا الاستفادة منها ..

اعتقد أن طرح الأخ عبد الجليل .. لا غبار عليه و يعمل .. لكن يجب عمل نفس الاعدادات على جهاز العميل ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

المشكلة هى أننى أريد التحكم فى طول ورقة التقرير حسب عدد الأصناف .. مثال : لو قمت بضبط إعدادات الورقة على طول 15 سم مثلا وقمت بالطباعة على 8 سم فقط فسوف تقوم الطباعة بسحب الـ 15 سم كاملا من رول الورق و هذا يسبب شكل غير لائق للفاتورة و كذلك إهدار للورق ..

.... أطلب من الأعضاء الكريم ممن له الخبرة فى هذا الموضوع أن يكتب لنا موضوعا كاملا عن طباعة فاتورة البيع (receipt) باستخدام طابعة الفواتير pos

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخي الفاضل محمد أحمد أبراهيم

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

وقد أفادو بأن الطريقةالمثلي لطباعة فاتورة بهذا الشكل يجب عن ان تكون عن طريق DOS لان الكريستال ريبورت لا يستطيع ان يفيدك في هذه الجزئية

حاول قراءة الثلاثة حلول المقدمة علي الموقع ربما تفيدك

http://www.codeproject.com/Questions/196837/c-Crystal-Report-Print

وهذه روابط أخري نتيجة بحثي ربما تجد بداخلها ما تريد

http://social.msdn.microsoft.com/Forums/en-US/posfordotnet/thread/d1dd6b1b-62c8-4ca8-9822-607e277d01f6/

http://www.eaglebusinesssoftware.com/support/help_modules/ebms%20main%20documentation/index.html#Sales2b/Printing_a_Sales_Invoice_or_Payment_Receipt.htm

http://www.nodus.com/flashdemos/RMS_Demo_framed.html

http://social.msdn.microsoft.com/Forums/da-DK/vscrystalreports/thread/207191b7-555c-4204-87ed-f5906fd5c27c

تم تعديل بواسطه محمد فؤاد تركي
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخي الفاضل محمد أحمد ابراهيم

في رأيي الشخصي ان تقوم بضبط طول التقرير علي مقاس محدد 10 مثلاً و عندما تزيد البيانات عن 10 سم يطبع علي الورقة الثانية واذا كانت أقل فسوف يتبقي ما تبقي من الــ 10 سم في الورقة

ولن يضيع الكثير من الرول فقد راجعت بعض Receipts الخاصة بالمحلات التجارية الكبيرة ووجدت ان الورقة عندما اقوم بشراء سلعة واحدة تطبع الورقة وبها جزء فارغ ليس بكبير واذا زادت عن هذا الحد تقوم بطابعة ورقة أخري وعلي اي حال الموضوع محتاج تجربة ومحتاج ايضا مراجعة اعدادات الطابعة فربما يكون فيها خيارات قد تساعدك علي تنفيذ المطلوب بالشكل الامثل

بالتوفيق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أخى الكريم محمد فؤاد تركي أشكرك كثيرا لإهتمامك .. سوف أقوم بتجربة إقتراحك و أخبر حضرتك بالنتيجة

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يا جماعة الموضوع مش بهذا التعقيد أنت أضبط العرض فقط أما الطول فالتقرير ياخذ طول الفاتورة بعدد الأصناف مثلاً في الفاتورة والطابعة تلقائياً تصل إلى

آخر سطر مكتوب وتقطع الورقة مباشرةً إذا كنت مفعل خدمة تقطيع الورق

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

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يا جماعة الموضوع مش بهذا التعقيد أنت أضبط العرض فقط أما الطول فالتقرير ياخذ طول الفاتورة بعدد الأصناف مثلاً في الفاتورة والطابعة تلقائياً تصل إلى

آخر سطر مكتوب وتقطع الورقة مباشرةً إذا كنت مفعل خدمة تقطيع الورق

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

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

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

كيف يمكنني الغاء خاصيه تقطيع الورق ؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

انا ايضا اعاني من هذه المشكلة في الاكسس ارجو من لديه اي فكرة عن الموضوع يفيدنا ولكم الفضل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم جميعا، الحل بسيط جدا وهو تفعيل حيز ذيل التقرير في الكريستال ريبورت فمن المعروف أن الكريستال ريبورت له اقسام وهي (رأس الصفحة، وعنوان الصفحة ، والتفاصيل، وذيل الصفحة) اي قم بتفعيل اخر حيز في التقرير واكتب فيه ملاحظة مثلا (شكرا لزيارتكم متجر كذا الخ) وسيتم قطع الورقة وهذه عن تجربة في نظام يازسيس للمبيعات والحمد لله الان يعمل مع جميع انواع طابعات الرول.

http://sale.yazsys.com

تحياتي للجميع

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .