คีย์จำนวนขาย คุณ รหัสสินค้า
กระทู้เก่าบอร์ด อ.Yeadram

 1,332   11
URL.หัวข้อ / URL
คีย์จำนวนขาย คุณ รหัสสินค้า

PId             PName      Qty
1                 โค้ก           ขายไป 3 กระป๋อง
2                 แฟนต้า      ขายไป 5 กระป๋อง

เวลาคีย์ข้อมูลต้องการให้กดเลข 3 * 1 หมายถึง Qty = 3   PId = 1(โค้ก) และ
5 * 2 Qty = 5   PId = 2 (แฟนต้า)

แล้วให้เข้าไปเก็บใน table ขายครับ

ขอบคุณมากครับผม

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

1 @R22932
สร้าง word processing ก่อน
2 @R22933
แนวทาง
สแกนหาตำแหน่ง *
เก็บตำแหน่ง * ไว้
เลือกข้อความตำแหน่งแรกแต่ไม่ถึง * แล้วเก็บไว้ในตัวแปร 1
เลือกข้อความตำแหน่งถัดจากตำแหน่ง * ไปจนสุดเก็บในตัวแปร2

ถึงตรงนี้อยากทำอะไรก็ตามใจนะที่รัก
* บางครั้งอาจต้องแปลงชนิดข้อมูลก่อนนะเพราะที่เก็บไว้ในตัวแปร 1,2 เป็น string
3 @R22934
สร้าง word processing ก่อน // อันนี้ทำแบบไหนครับผมงง อิอิ

ขอบคุณมากครับ
4 @R22935
Word processing ก็คือหน่วยประมวลผล string หรือข้อความ เช่น 5*2 นั่นแหละ แต่จะทำอย่างไรให้ระบบรู้ว่า 5 คือจำนวนสินค้า และ 2 คือรหัสสินค้า จึงทำให้ต้องมี word processing ส่วนจะทำเป็นโมดูลหรือ form procedure ก็ตามใจ แต่ทั้งสองอย่างนั้นก็มีข้อดีข้อเสีย

รอท่าน อ. สันติสุข มาเสริมให้อีกหน่อยละกันนะ
5 @R22936
คุณจะใช้เครื่องหมายดอกจัน (star) เป็นตัวคั่นระหว่างข้อมูลสองค่า
A.ค่าแรกเป็น number เอามาใช้คำนวน บวกลบคูณหาร คือตัวที่อยู่ข้างหน้า star ทั้งหมด
B.ค่าหลังเป็น string เพื่อให้มันคงที่ห้ามแปลงค่าเปลี่ยนรูป แม้จะมีเลข 0 นำ ก็ต้องปล่อยไว้ ห้ามเอาเลข 0 ข้างหน้าออก เพราะคุณต้องการให้มันเป็นรหัสสินค้า เพื่อไว้อ้างอิงกับสินค้าที่อยู่ในตาราง

คำถามครับ
- ถ้าคนที่คีย์ข้อมูล ดื้อ มือบอน
- ถ้าคนที่คีย์ข้อมูล ไม่ทราบเจตนาไม่ทราบสัญลักษณ์ สงสัยและอยากลอง
- ถ้าคนที่คีย์ข้อมูล ไม่ได้เจตนา

-อักขระที่คีย์เข้าไป ก่อนเครื่องหมาย ถ้ามันไม่ใช่ตัวเลขล้วน จะให้โค้ด ทำงานอย่างไร
-เครื่องหมาย star หากมีสองตัว(อาจกดเกิน หรือคีย์บอร์ดเสีย หรืออยากลอง) อาจติดกันหรือไม่ติดกัน จะให้โค้ดตัดสินใจอย่างไร
-ถ้าในสายอักขระทั้งหมดนั้น ไม่มี star อยู่เลย จะให้โค้ดตัดสินใจอย่างไร
-ถ้า star มันปรากฎอยู่ต้น หรืออยู่ท้าย แสดงว่า ข้อมูลแรก หรือข้อมูลหลัง อาจไม่ได้คีย์มา ใช่หรือไม่ จะให้โค้ดตัดสินใจอย่างไร


ไม่ได้ถามให้ตอบ แต่ถามเป็นแนวทาง
บางทีผมว่า การที่เราอยากได้อะไรที่มันง่ายๆ อาจต้องคิดให้มันยากๆ เหมือนกันนะ
ถ้าตีซะว่า การคิดให้มันยากๆ เพื่อวางแผนให้รัดกุม คือการลงทุน
แล้วการที่จะได้คีย์ข้อมูลง่ายๆ คือผลกำไร
แล้วลองเปรียบเทียบ ต้นทุน กับกำไร ในมุมมองของผม "มันไม่คุ้มกันเลยครับ"

6 @R22937
Great!
7 @R22938
ผมทำแบบนี้ครับ อ.yeadram รบกวนช่วย comment หน่อยครับ

Dim arr, sq2 As String
arr = Split(Me.txtInput, "*")
If IsNull(Me.txtBill) Or Me.txtBill = "" Then
        Me.txtInput.Locked = True
    Else
        If UBound(arr) < 1 Then
        sq2 = "Insert into tblOrderTmp(ITEM_CD,QTY,BILL_NO) values(" & Me.txtInput & "," & 1 & "," & Me.txtBill & ");"
        On Error Resume Next
        CurrentProject.Connection.Execute sq2          
        Me.txtInput = ""
        Me.txtBill.SetFocus
        Me.txtInput.SetFocus
        Else
        sq2 = "Insert into tblOrderTmp(ITEM_CD,QTY,BILL_NO) values(" & arr(1) & "," & arr(0) & "," & Me.txtBill & ");"
        On Error Resume Next
        CurrentProject.Connection.Execute sq2       
        Me.txtInput = ""
        Me.txtBill.SetFocus
        Me.txtInput.SetFocus
    End If
End If

ขอบคุณมากครับผม
8 @R22940
ขอถามด้วยความสงสัย : ที่ไหนๆก็ทำให้ป้อนแยกกันคนละช่องทั้งนั้น ช่องสินค้าก็ใช้คอมโบบ็อกซ์เพื่อให้ป้อนชื่อสินค้า/รหัสสินค้า ช่องจำนวนก็เท็กซ์บ็อกซ์ ก็ไม่ได้ยุ่งยากตรงไหน แล้วทำไมต้องออกแบบให้ป้อนจำนวนคูณรหัสสินค้าครับ แล้วผู้ใช้จะจำรหัสสินค้าได้หรือ ?
9 @R22941
ถูกต้องตามท่าน สันติสุข นั่นแหละค๊า แต่เดี๊ยนก็มีหน้าที่ตอบสนองความต้องการของผู้ใช้งาน และคนที่จะทำแบบนั้นก็เป็นพวกชำนาญเฉพาะด้าน ทำงานคนเดียว เช่นพวกรวมยอดหวยใต้ดิน
10 @R22942
เรียน ท่านอ.สันติสุข
ตามที่คุณWEEพูดน่าจะหมายถึงเหมือนโปรแกรมขายสินค้าชื่อE-Business Plus Posครับ เพราะโปรแกรมนี้เมื่อก่อนผมเคยใช้ครับ เวลาต้องการใส่จำนวนที่มากกว่า1 ให้กดตัวเลขที่ต้องการแล้วตามด้วยเครื่องหมายดอกจัน เช่น 3* จะเท่ากับจำนวน3ชิ้น จากนั้นให้สแกนบาร์โค้ด โปรแกรมจะรวมยอดเงินเป็นการคูณ3ชิ้นทันทีครับ

คุณWEEครับ ผมไปค้นหาเจอวิธีอื่นมา ใช้แล้วได้ผลดีครับ วิธีการก็ไม่ยุ่งยากเลย แค่กดปุ่มF12 แล้วใส่จำนวน ลองดูตามลิ้่งค์นี้นะครับ

http://www.thai-access.com/yeadram_view.php?topic_id=5124
11 @R22943
เรียน อ.สันติสุข แต่เดิมเคยใช้เป็นเครื่อง Cash register ครับ เวลาใส่ข้อมูล เขาก็จะใส่ จำนวน * รหัส เลยครับ ถ้าในกรณี สินค้าจำนวนแค่ 1 เขาก็จะพิมพ์รหัสลงไปเลยครับผม 3*1    Qty=3 ID=1 (Coke)   /// ถ้าพิมพ์ตัวเลขอย่างเดียว เช่น 1 QTY=1 ID=1 ประมาณนี้ครับผม ผมก็เลยอยากนำมาประยุกต์ใช้ ร่วมกับทำปุ่มให้เขาคลิกเลือกสินค้าด้วย
- ส่วนรหัสสินค้า แต่ละคนจำได้ขึ้นใจแล้วครับผม

ขอบคุณ คุณU&ME อ.yeadram อ.หนุ่ม(สันติสุข) คุณekkaphon(มนตการ) มากครับผม
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2872s