การตัดสต๊อคแบบมีเงื่อนไข
กระทู้เก่าบอร์ด อ.Yeadram

 989   3
URL.หัวข้อ / URL
การตัดสต๊อคแบบมีเงื่อนไข

สอบถามเรื่องการตัดสต๊อคแบบมีเงื่อนไขหน่อยครับ
คือ การตัดสต๊อคแบบพื้นฐานนี่ผมพอทำได้แล้วครับ
stockqty - saleqty (รูปแบบของการขายปลีก)

ขออธิบายก่อนนะครับ
1.สินค้าผมเป็นเสื้อผ้า รหัส PRD1 แบบเดียวแต่จะมีหลายขนาด
เช่น ไซส์ A,B,C,D
2.แต่ละขนาด ราคาก็จะต่างกัน เช่น A ราคา 60 , B ราคา 70 ,
C ราคา 80 , D ราคา 90

ดังนั้นตารางของผมปัจจุบันจึงเป็นดังนี้
2.1. ตารางชื่อ t_product
2.2. มีทั้งหมด 5 ฟิลด์ โครงสร้างตารางสินค้าเป็นดังนี้
   ID    PRDNAME     SIZE    PRICE    STKQTY
0001     PRD1             A        60        150
0002     PRD1             B        70        150
0003     PRD1             C        80        150
0004     PRD1             D        90        150

ต่อมาผมต้องการตัดสต๊อคแบบจัดชุดเพื่อการขายส่ง
มีการจัดชุดสินค้า ด้วยเงื่อนไข 1 แพ็คมี 6 ตัว แบบคละไซส์ S,M,L,XL
ราคาเฉลี่ยอยู่ที่ตัวละ 75*6 = 1 แพ็คราคา 450
   ID    PRDNAME     SIZE    PRICE    STKQTY
0001    PRD1            A        60        149          (เมื่อจัดชุดตัดสต๊อค1)
0002    PRD1            B        70        149          (เมื่อจัดชุดตัดสต๊อค1)
0003    PRD1            C        80        148        (เมื่อจัดชุดตัดสต๊อค2)
0004    PRD1            D        90        148        (เมื่อจัดชุดตัดสต๊อค2)
0005    PRD1       A,B,C,D     450          1          (สินค้าจัดเป็นชุด)

คำถามครับ
1.หากผมจะสร้างฟอร์มเพื่อจัดชุดสินค้าและตัดยอดสินค้าที่นำมาจัดชุดโดยอัตโนมัติ ผมต้องทำอะไรเพิ่มบ้างครับ
เช่น สร้างคิวรี่ หรือ เพิ่มตาราง แล้วรูปแบบของฟอร์มควรเป็นอย่างไร
2.การออกแบบตารางของผมเหมาะสมหรือไม่ครับ
ควรเปลี่ยนหรือเพิ่มอะไรไหมครับ

ขอแนวทางหน่อยครับ

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

1 @R19512
ถ้าแยกไม่ได้ว่า ในชุด มี A กี่ตัว, B กี่ตัว, ... ก็ตัด stock ไม่ได้ครับ
2 @R19515
อ่อ ใช่ครับ ลืมบอกไป

ใน 1 ชุด (6ตัว) จะมี

A=1 ตัว   เมื่อจัดชุด ID 0001 จะถูกตัดสต๊อค 1
B=1 ตัว   เมื่อจัดชุด ID 0002 จะถูกตัดสต๊อค 1
C=2 ตัว   เมื่อจัดชุด ID 0003 จะถูกตัดสต๊อค 2
D=2 ตัว   เมื่อจัดชุด ID 0004 จะถูกตัดสต๊อค 2
แบบนี้ครับ

ปัญหาคือต้องการจะสร้างฟอร์มแต่ไม่ทราบว่าจะเริ่มต้นอย่างไรดีครับ
ขอความกรุณาด้วยครับ ท่านอาจารย์ PichaiTC
3 @R19516
เอาแบบแก้น้อยนะครับ
ถ้าใช้ table เดิม ให้แก้ดังนี้

1. เปลี่ยน primary key เป็น ID, PRDName และ Size

2. กรณีจัดชุด ต้องพิจารณาเรื่องการเอาราคาไปใช้งานต่อด้วยว่าราคาจำเป็นต้องกระจายให้กับสินค้าทุกตัวหรือไม่ - ผมสันนิษฐานว่าไม่ต้อง เพราะฉะนั้นกำหนดราคาที่ตัวใดตัวหนึ่งที่เหลือให้เป็น 0 ให้ใส่ข้อมูลตามนี้
ID    PRDNAME     SIZE    PRICE    SaleQTY
0005    PRD1            A        450        1
0005    PRD1            B        0        1
0005    PRD1            C        0        2
0005    PRD1            D        0        2    

3. เนื่องจาก 1 ชุดกระจายเป็นหลาย record เวลาต้องการดูราคา ต้อง Group By ID และ Sum(Price) ด้วย

4. เมื่อต้องการตัด Stock สามารถใช้ stockqty - saleqty ได้ตามเดิม

วิธีอื่น เช่น แยก Table เป็น 2 Table
1) เก็บ ID, Price
2) เก็บ ID, PRDName, Size, SaleQty
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2704s