สมัครสมาชิก
 

เมือ่บันทึกข้อมูลเสร็จ สั่งพิมพ์ได้โดยทันที



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

09 ต.ค. 62 , 16:14:44
อ่าน 124 ครั้ง

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ทุกครั้งที่บันทึกข้อมูล จะพิมพ์บิลต้นฉบับและสำเนา ต้องกลับมาใส่ เลขที่บิลทุกครั้ง ถ้าไม่ต้องการใส่เลขที่? ให้เอาจากเลขที่บิลที่บันทึกนี้ทันที

 

09 ต.ค. 62 , 16:59:08
ตอบกลับ #1

nonc31

บนคิวรี่ ที่เชื่อมกับรายงาน  ตรงเงื่อนไข  ให้ใส่เป็น Forms ! ชื่อฟอร์ม ! ชื่อฟิลด์ (พิมพ์ติดกัน)   (ชื่อฟิลด์ก็คือฟิลด์เลขบิล = text315 ใช่ป่าว)

 

09 ต.ค. 62 , 21:35:43
ตอบกลับ #2

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ถ้ามีหลาย report เชื่อมต่อกับ คิวรี่นี้ เพียงคิวรี่เดียว(q_voucher) และคิวรี่ นี้ก็เชื่อมต่อฟอร์มบันทึกหลายฟอร์ม  ดังนี้นต้องทำหลายๆๆคิวรี่หรือเปล่าคะ  หรือว่ามีวิธีอิ่น

 

09 ต.ค. 62 , 22:52:53
ตอบกลับ #3

nonc31

ถ้ารายงานนั้นเปิดด้วยฟอร์ม หลายๆ ฟอร์ม แต่เงือนไข เดียวกันคือเลขบิล  ให้ทำคำสั่ง สร้างตาราง เพื่อเก็บค่าเลขบิล  แล้วตรงเงื่อนไขคิวรี่
ให้ใส่ เป็น DLookup("ฟิลด์เลขบิล","ตารางที่สร้างขึ้นใหม่") แทนการอ้างอิงฟอร์ม

 

10 ต.ค. 62 , 07:13:58
ตอบกลับ #4

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ที่ตาราง voucher_s เก็บเลขที่บิลอยู่แล้วมีจำนวนบิลมาก และเก็บทุกบิล  จะเขียน code ไปชี้บิลที่ต้องการพิมพ์จากฟอร์มที่กำลังบันทึกใหม่ ไปไม่ถึงจริงๆๆค่ะ 

 

10 ต.ค. 62 , 18:30:15
ตอบกลับ #5

nonc31

code คำสั่งตอนบันทึก

1. DoCmd.SetWarnings False
2.    Me.Refresh
3.    Dim sql As String
4.    sql = "SELECT [Forms]![ACC_บันทึกขายสินค้า]![text315] AS voucher_s_id INTO printbill;"
5.    DoCmd.RunSQL sql
6.    DoCmd.OpenReport "บ7/1ใบเสร็จ-ใบกำกับภาษีขาย"      'ไม่อะไรต่อท้ายคือสั่งพิมพ์ทันที ได้ 1 ครั้ง

จากโค๊ด  บรรทัด 4. เป็นคำสั่งสร้างตาราง printbill มีฟิลด์ เกิดจากอ้างอิงของฟอร์ม ตั้งชื่อ voucher_s_id
ก็สามารถนำไปใช้กับฟอร์มอื่นๆ เปลี่ยนแค่ชื่อฟอร์ม กับ ชื่อฟิลด์  2 จุดนี้พอ

เงื่อนไขในคิวรี่  ตรงเลขบิลจะเป็น   DLookUp("voucher_s_id","printbill")

คงพอแก้ขัด  :cool: :cool: :cool:

 

11 ต.ค. 62 , 15:58:43
ตอบกลับ #6

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ได้แล้วค่ะ ขอบคุณนะคะ

 

11 ต.ค. 62 , 21:29:49
ตอบกลับ #7

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ตอนนี้เมื่อสั่ง print report preview  อยากไปต่ออีกค่ะ ถ้าเราจะ save as เป็นไฟล์ ให้ไฟล์นั้น ชื่อเดียวกับเลขที่บิลที่ ปรากฏใน voucher_s_id ของ table printbill จะเพิ่ม code อย่างไรคะ

 

12 ต.ค. 62 , 11:52:56
ตอบกลับ #8

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ทำดู ไม่ได้ชื่อไฟล์ pdf =voucher_s_id  ใน printbill สงสัย code จะผิด

 

12 ต.ค. 62 , 11:54:02
ตอบกลับ #9

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

Private Sub Command320_Click()
Dim Filename As String
Dim FilePath As String
  DoCmd.SetWarnings False
    Me.Refresh
    Dim sql As String
    sql = "SELECT [Forms]![ACC_ºÑ¹·Ö¡¢ÒÂÊÔ¹¤éÒ]![text315] AS voucher_s_id INTO printbill;"
    Filename = Me.voucher_s_id
    FilePath = "c:\" & Filename & ".pdf"
     DoCmd.RunSQL sql
     DoCmd.OpenReport "º7_ãºàÊÃç¨-㺡ӡѺÀÒÉÕ¢ÒÂ"
     DoCmd.OutputTo acOutputReport, "º7_ãºàÊÃç¨-㺡ӡѺÀÒÉÕ¢ÒÂ", acFormatPDF, FilePath
     DoCmd.RunSQL sql
     DoCmd.OpenReport "º7/1ãºàÊÃç¨-㺡ӡѺÀÒÉÕ¢ÒÂ"

End Sub

 

12 ต.ค. 62 , 11:55:48
ตอบกลับ #10

nat_c

  • สมาชิกไท.Access
  • กระทู้: 14

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ตัวอย่าง

 

เมื่อวานนี้ เวลา 20:50:07
ตอบกลับ #11

nonc31

: เมือ่บันทึกข้อมูลเสร็จ สั่งพิมพ์ได้โดยทันที
« ตอบกลับ #11 เมื่อ: เมื่อวานนี้ เวลา 20:50:07 »
เปลี่ยนจาก Filename = Me.voucher_s_id  เป็น  Filename = Me.Text315

 


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