บันทึกรายการสินค้าเสร็จ สั่งพิมพ์บิล ทำไมไได้แต่ ต้นฉบับใบเสร็จ ออกมา 3 ฉบับ


0 สมาชิก และ 2 บุคคลทั่วไป กำลังดูหัวข้อนี้

15 ก.พ. 63 , 17:28:41
อ่าน 1094 ครั้ง

kunlek

Private Sub Command202_Click()
   Dim Filename As String
Dim Filename1 As String
Dim FilePath As String
  DoCmd.SetWarnings False
    Me.Refresh
    Dim sql As String
    sql = "SELECT [Forms]![ACC_ขายสินค้า]![text185] AS voucher_s_id INTO printbill;"
   DoCmd.RunSQL sql
   Filename = DLookup("voucher_s_id", "printbill") & " m"
    FilePath = "d:\bills-suzu\RE\" & Filename & ".pdf"
    DoCmd.OpenReport "ต้นฉบับใบเสร็จรับเงิน", acViewPreview, Filename
    DoCmd.OutputTo acOutputReport, "ต้นฉบับใบเสร็จรับเงิน", acFormatPDF, FilePath
    DoCmd.PrintOut , , , , 1
    sql = "SELECT [Forms]![ACC_ขายสินค้า]![text185] AS voucher_s_id INTO printbill;"
   DoCmd.RunSQL sql
   Filename1 = DLookup("voucher_s_id", "printbill") & " c"
    FilePath = "d:\bills-suzu\RE\" & Filename1 & ".pdf"
     DoCmd.OutputTo acOutputReport, "สำเนาใบเสร็จรับเงิน", acFormatPDF, FilePath
    DoCmd.PrintOut , , , , 2
Command202_DblClick_Exit:
    Exit Sub
Command202_DblClick_Err:
    MsgBox Error$
    Resume Command202_DblClick_Exit
End Sub

 

15 ก.พ. 63 , 20:24:44
ตอบกลับ #1

UnKnown

เหมือนกับกระทู้นี้นะครับ https://www.thai-access.com/index.php?topic=701.msg4785#msg4785

นั่นคือปิดชุดคำสั่งนี้ครับ  DoCmd.OpenReport "ต้นฉบับใบเสร็จรับเงิน", acViewPreview, Filename
หรือย้ายลงมาด้านล่างครับ
โค๊ด: [Select]
    .....
    DoCmd.PrintOut , , , , 2
    DoCmd.OpenReport "ต้นฉบับใบเสร็จรับเงิน", acViewPreview, Filename

หรือก็คือแยกปุ่มคำสั่งสำหรับแสดงตัวอย่างออกไปดูนะครับ
« แก้ไขครั้งสุดท้าย: 15 ก.พ. 63 , 20:40:30 โดย UnKnown »
:ninja:     ลองคิด,ลองทำแนวคนไม่เก่งแอคเซส
หมายเหตุ เพื่อความปลอดภัยโปรดสำรองข้อมูลใว้ก่อนการแก้ไข
 

16 ก.พ. 63 , 10:05:09
ตอบกลับ #2

kunlek

กลายเป็น print all page บางครั้งก็กลายเป็น print from  ครับ ไม่ทราบว่า DoCmd.PrintOut , , , , 2     เครื่องหมาย ,  ต้องมีการเคาะห่างกันกี่เคาะหรือเปล่า

 

17 ก.พ. 63 , 17:22:51
ตอบกลับ #3

UnKnown

ผมใช้แบบนี้อยู่ ลองเอาไปใช้ดูครับ (ผมเปลี่ยนชื่อรีพอตเป็นของท่าน และก็มันสั่งแค่อย่าล่ะ1ชุดไม่รู้ใส่เลขต่อท้ายให้สำเนา 2ยังไงนะ)

โค๊ด: [Select]
    stDocName = "ต้นฉบับใบเสร็จรับเงิน"
    DoCmd.OpenReport stDocName, acNormal
---
    stDocName2 = "สำเนาใบเสร็จรับเงิน"
    DoCmd.OpenReport stDocName2, acNormal
:ninja:     ลองคิด,ลองทำแนวคนไม่เก่งแอคเซส
หมายเหตุ เพื่อความปลอดภัยโปรดสำรองข้อมูลใว้ก่อนการแก้ไข
 


บอร์ดเรียนรู้ Access สำหรับคนไทย


 

Sitemap 1 2 3 4 5