Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > php_printer.dll ต่อกับเครื่องสลิป EPSON ตั้งค่าเตะเกะเงิน(Cash Drawer) ???? ไม่ทำงาน


[PHP] php_printer.dll ต่อกับเครื่องสลิป EPSON ตั้งค่าเตะเกะเงิน(Cash Drawer) ???? ไม่ทำงาน

 
Topic : 110077



โพสกระทู้ ( 3 )
บทความ ( 0 )



สถานะออฟไลน์



สวัสดีครับ
ไม่รู้ว่ามีใครเคยลองอย่างผมมาบ้างแล้วรึยังนะครับ
ก่อนอื่น ผมได้ตั้งค่า เครื่องพริ้นสลิป EPSON TM-T88V ให้เตะเกะเงินหลังจากพริ้น แล้วผมก็ต่อพ่วง เกะเงิน (Cash Drawer)

การทดลองครั้ง ที่ 1
ผมเปิดหน้าเว็ป ซึ่งหน้าเว็ปนั่นเป็นรูปแบบของไฟล์ pdf โดยใช้ fpdf เป็นตัวสร้างมันขึ้น แล้วผมก็กด Ctrl+P > เลือกเครื่องพริ้น EPSON แล้วก็สั่งพริ้นต์
ผลปรากฎว่า สลิปถูกพริ้นต์ หลังจากนั้นเกะเงินก็เตะออกมาครับ

การทดลองครั้งที่ 2
ผมใช้ php_printer.dll (ดัง code ที่แนบมา) สร้างและพริ้นต์ไปที่พริ้นเตอร์อัตโนมัติ
ผลปรากฎว่า สลิปถูกพริ้นต์ แต่เกะเงินไม่เตะ

คำถามคือ ทั้ง 2 การทดลองสามารถทำให้เครื่องพริ้นต์ออกมาได้ แต่ทำไมเกะถึงเตะเฉพาะวิธีที่ 1 ซึ่งการเตะเกะเงินน่าจะถูกสั่งโดยพริ้นต์เตอร์ ????
Code (PHP)
01.<?php
02.$handle = printer_open("Receipt");
03.        printer_start_doc($handle, $F_PROJECT_NO);
04.        printer_start_page($handle);
05.        printer_set_option($handle,PRINTER_PAPER_FORMAT,PRINTER_FORMAT_CUSTOM);
06.        printer_set_option($handle,PRINTER_PAPER_LENGTH,250);
07.        printer_set_option($handle,PRINTER_PAPER_WIDTH,80);
08.        printer_set_option($handle, PRINTER_MODE, "RAW");
09.     
10.    $font = printer_create_font("AngsanaUPC", 40, 10, PRINTER_FW_BOLD, false, false, false, 0);
11.    printer_select_font($handle, $font);
12.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ใบเสร็จรับเงิน'), 0, 0);
13.    printer_delete_font($font);
14.    $font = printer_create_font("AngsanaUPC", 35, 8.75, PRINTER_FW_NORMAL, false, false, false, 0);
15.    printer_select_font($handle, $font);
16.    $j=40;
17.    printer_draw_text($handle, iconv('UTF-8','TIS-620',$DataCorp['F_NAME']), 0, $j);
18.    $j=$j+35;
19.    printer_draw_text($handle, iconv('UTF-8','TIS-620',$DataCorp['F_ADDRESS']), 0, $j);
20.    $j=$j+35;
21.    printer_draw_text($handle, iconv('UTF-8','TIS-620','โทร. '.$DataCorp['F_PHONE']), 0, $j);
22.    $j=$j+35;
23.    printer_draw_text($handle, iconv('UTF-8','TIS-620','------------------------------------------------------------------------'), 0, $j);
24.    $j=$j+35;
25.    printer_draw_text($handle, iconv('UTF-8','TIS-620','เลขที่บิล: '.$DataTprjOrderMas['F_PROJECT_NO']), 0, $j);
26.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ใบสัญญา: '.$DataTprjOrderMas['F_CONTRACT_NO']), 280, $j);
27.    $j=$j+35;
28.    printer_draw_text($handle, iconv('UTF-8','TIS-620','วันเวลา: '.date('Y-m-d',strtotime($DataTprjOrderMas['F_ORDER_DATE']))), 0, $j);
29.    $j=$j+35;
30.    printer_draw_text($handle, iconv('UTF-8','TIS-620','นาม: '. $DataTprjOrderMas['F_NAME']), 0, $j);
31.    $j=$j+35;
32.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ชื่อผุ็ติดต่อ: '.$DataTprjOrderMas['F_NICK']), 0, $j);
33.    printer_draw_text($handle, iconv('UTF-8','TIS-620','เบอร์โทร: '.$DataTprjOrderMas['F_PHONE']), 280, $j);
34.    $j=$j+35;
35.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ที่อยู่: '.$DataTprjOrderMas['F_ADDRESS']), 0, $j);
36.    $j=$j+35;
37.    printer_draw_text($handle, iconv('UTF-8','TIS-620','------------------------------------------------------------------------'), 0, $j);
38.    $j=$j+35;
39.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ชื่อรายการ'), 100, $j);
40.    printer_draw_text($handle, iconv('UTF-8','TIS-620','เป็นเงิน'), 400, $j);
41.    $j=$j+35;
42.    printer_draw_text($handle, iconv('UTF-8','TIS-620','------------------------------------------------------------------------'), 0, $j);
43.    $j=$j+35;
44.while($rs=mysql_fetch_array($DataTprjOrderDeposit)){
45.    if($rs['F_DEPOSIT_SEQ_ID']==1){
46.        $type = "     งวดมัดจำ";
47.    }else{
48.        $type = "     งวดค้างชำระ";
49.    }
50.  // Create the data cells
51.  if($rs['F_STATUS']==''){
52. 
53.  }else{
54.    printer_draw_text($handle, iconv('UTF-8','TIS-620',$type), 40, $j);
55.    printer_draw_text($handle, iconv('UTF-8','TIS-620',number_format($rs['F_PRICE_VALUE'],2)), 400, $j);
56.    $j = $j+35;
57.  }
58. 
59.}
60.    //Create the summary cells
61.    printer_draw_text($handle, iconv('UTF-8','TIS-620','------------------------------------------------------------------------'), 0, $j);
62.    $j=$j+35;
63.    printer_draw_text($handle, iconv('UTF-8','TIS-620','รวมเป็นเงิน : '), 0, $j);
64.    printer_draw_text($handle, iconv('UTF-8','TIS-620',number_format($DataTprjOrderMas['F_PRICE_TOTAL'],2)), 400, $j);
65.    $j=$j+35;
66.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ส่วนลด : '), 0, $j);
67.    printer_draw_text($handle, iconv('UTF-8','TIS-620',number_format($DataTprjOrderMas['F_DISCOUNT_TOTAL'],2)), 400, $j);
68.    $j=$j+35;
69.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ค่าธรรมเนียม : '), 0, $j);
70.    printer_draw_text($handle, iconv('UTF-8','TIS-620',number_format($DataTprjOrderMas['F_SCHARGE_TOTAL'],2)), 400, $j);
71.    $j=$j+35;
72.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ภาษี หัก ณ จ่าย : '), 0, $j);
73.    printer_draw_text($handle, iconv('UTF-8','TIS-620',number_format($DataTprjOrderMas['F_VAT_TOTAL'],2)), 400, $j);
74.    $j=$j+35;
75.    printer_draw_text($handle, iconv('UTF-8','TIS-620','รวมเป็นเงินทั้งสิ้น : '), 0, $j);
76.    printer_draw_text($handle, iconv('UTF-8','TIS-620',number_format($DataTprjOrderMas['F_GRAND_TOTAL'],2)), 400, $j);
77.    $j=$j+35;
78.    printer_draw_text($handle, iconv('UTF-8','TIS-620','วิธีชำระเงิน : '), 0, $j);
79.    printer_draw_text($handle, iconv('UTF-8','TIS-620',$DataTprjOrderMas['F_NOTE_RROJECT']), 110, $j);
80.    $j=$j+35;  
81.    printer_draw_text($handle, iconv('UTF-8','TIS-620','ขอขอบพระคุณที่ใช้บริการค่ะ'), 130, $j);
82.    printer_delete_font($font);
83.        printer_end_page($handle);
84.        printer_end_doc($handle);
85.        printer_close($handle);
86.?>




Tag : PHP



ประวัติการแก้ไข
2014-07-21 01:17:52
2014-07-21 01:18:29
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-07-21 01:15:28 By : focusmaster View : 2075 Reply : 3
 

 

No. 1



โพสกระทู้ ( 3 )
บทความ ( 0 )



สถานะออฟไลน์


ได้ทำแล้วครับ
มันจะต้องมีไฟล์ .txt ที่เขียนขึ้นมาด้วยโปรแกรม Notepad++ แล้ว Convert Hex->ASCII เพื่อส่งโค๊ดไปที่พริ้นเตอร์ แล้วเตะเกะเงิน
วิธีการทำไฟล์ .txt
ผมใช้ชื่อไฟล์ว่า opencashdrawer.txt

1. เปิดโปรแกรม Notepad++
2. ตรวจสอบว่ามี plug in > convert ถูกติดตั้งอยู่รึป่าว
3. สร้างไฟล์ Notepad++
4. พิมพ์ 1b700019fa
5. highlight โค๊ดที่เพิ่งพิมพ์ไป
7. ไปที่ plugins->Converter-> HEX --> ASCII
8. Save

เราก็จะได้ไฟล์ opencashdrawer.txt

หลังจากนั้นเราก็ไปดึงไฟล์ opencashdrawer.txt ให้มันอ่านใน php ของเรา
Code (PHP)
01.<?
02./////////Cash Drawer/////////
03.$handle = printer_open("Receipt"); //ชื่อเครื่องพริ้นต์
04.printer_set_option($handle, PRINTER_MODE, "RAW");
05.     
06.$fh = fopen("opencashdrawer.txt", "rb"); //เปิดไฟล์
07.$content = fread($fh, filesize("opencashdrawer.txt"));
08.fclose($fh);
09.printer_write($handle, $content); //ส่งโค๊ดไปเตะเงิน
10.printer_close($handle);
11./////////End Cash Drawer/////////
12.?>


ลองนำไปใช้กันดูได้ครับ


ประวัติการแก้ไข
2014-07-21 18:47:56
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-21 18:46:48 By : focusmaster
 

 

No. 2



โพสกระทู้ ( 310 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : focusmaster เมื่อวันที่ 2014-07-21 18:46:48
รายละเอียดของการตอบ ::
ขอบคุณมากๆค่าา ได้ความรู้น่าสนใจอีกเรื่องนึง

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-21 22:39:03 By : survivor
 

 

No. 3



โพสกระทู้ ( 484 )
บทความ ( 3 )



สถานะออฟไลน์



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-22 11:21:56 By : fossil31
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : php_printer.dll ต่อกับเครื่องสลิป EPSON ตั้งค่าเตะเกะเงิน(Cash Drawer) ???? ไม่ทำงาน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่