ในรายงาน รายการที่ไม่ได้ขายให้ salesamt เป็น 0 ทำอย่างไรครับ ช่วยหน่อย
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 230   4
URL.หัวข้อ / URL
ในรายงาน รายการที่ไม่ได้ขายให้ salesamt เป็น 0 ทำอย่างไรครับ ช่วยหน่อย

มีสินค้าอยู่หลายรายการ มีบางรายการที่ไม่มีการขาย อยากให้ report รายการสิ้นค้าทั้งหมดทั้งที่ขายและที่ไม่ได้ขายให้ saleamt มีค่าเป็น 0 ทำไง ครับ ลองหลายหนแล้วมันแสดงเฉพาะรายการที่ขายเท่านั้น

ขอบคุณครับ

4 Reply in this Topic. Dispaly 1 pages and you are on page number 1

1 @R04271
ผมยังไม่ได้เอาไฟล์ที่แนบมาให้มาดูนะครับ

แต่ลองใช้ Union Query ช่วย ก็คงได้ครับ

แล้วแต่ว่าจะแสดงข้อมูลการขายเป็นช่วงเวลาที่ต้องการด้วยหรือไม่

หลักการเป็นอย่างนี้ครับ

1. ใช้ Select Query ตัวเดิมที่มีการขายเกิดขึ้น

2. สร้างอีก Query ขึ้นมา โดยให้อันเดียวกันกับข้อ 1 แต่เพิ่มเงื่อนไข Where Not In เพื่อให้เลือกเฉพาะข้อมูลที่ไม่มีการขายออกมา

จะได้คล้ายๆ นี้

Select Field1, Field2, ... From ตารางเป้าหมาย Where รหัสสินค้า Not In (Select Distinct รหัสสินค้า From ตารางที่มีข้อมูลการขาย)

ทดสอบ Query ตัวนี้ว่าให้ผลลัพธ์ตรงกับที่ต้องการหรือไม่

3. นำ Query ทั้ง 2 ไปสร้างเป็น Union Query ดังนี้

SQL statement ของ Query ในข้อ 1
๊Union All
SQL statement ของ Query ในข้อ 2

4. นำ Query ในข้อ 3 ไปสร้างเป็น Report แทนของเดิม

ลองดูครับ
2 @R04276
ยังไม่ได้ลองที่อาจารย์บอกนะครับ แต่ดูแล้วน่าจะ OK ครับ เข้าใจง่ายดี
แล้วถ้าจะแสดงข้อมูลการขายเป็นช่วงเวลาที่ต้องการด้วยละครับ จะต้องทำอย่างไร พอดีจะต้องรายงายยอดทุกเดือนครับ...

ขอบคุณครับ
3 @R04277
ก็เพิ่ม Where clause เข้าไปด้วยครับ

คิดว่า Query ในข้อ 1 คงจะมี Where clause แบบกรองวันที่แล้ว ก็ปรับใช้ตรงนี้ได้เลย

สำหรับ Query ในข้อ 2 จะได้เป็น

Select Field1, Field2, ... From ตารางเป้าหมาย Where รหัสสินค้า Not In (Select Distinct รหัสสินค้า From ตารางที่มีข้อมูลการขาย) AND Format([ฟีลด์วันที่], "myy") = Format(Now(), "myy");

นี่จะเป็นการแสดงข้อมูลการขายประจำเดือนปัจจุบัน

ตรงส่วน Format(Now(), "myy") สามารถที่จะให้ผู้ใช้เป็นผู้กรอกเลือกเดือนเองได้ โดยแก้เป็น

[ใส่เลขเดือน (1 หลัก เช่น 1 แทนเดือนมกราคม) และปี 2 หลักสุดท้าย (46 แทน 2546)]





4 @R04278
ทำ qry 2 ไม่ได้ครับอาจารย์มันไม่มีข้อมูล show เลยครับ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.0501s