BMS-HOSxP Community

HOSxP => แจ้งปัญหา / ขอความช่วยเหลือ => ข้อความที่เริ่มโดย: panus_t ที่ มกราคม 17, 2014, 15:37:28 PM

หัวข้อ: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 17, 2014, 15:37:28 PM
เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เหมือน AN เริ่มใหม่ทุกปีครับ 57000001
หัวข้อ: Re: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: vespagointer ที่ มกราคม 17, 2014, 16:09:33 PM
น่าจะ lab_order_number ในตาราง serial นะครับ
หัวข้อ: Re: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: jdadmin1 ที่ มกราคม 17, 2014, 17:19:20 PM
 ;D ;D ;D
แก้ที่ serial ครับ
lab_order_number = เลขที่ใบสั่งแล็ป
lab_receive_number = เลขที่ใบรับแล็ป
 ;D ;D ;D
หัวข้อ: Re: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 22, 2014, 11:18:23 AM
ต้อง manual ทุกปีเลยครับ
หรือว่าสามารถ ตั้ง crontab ของ CentOS ได้หรือเปล่าครับ เช่น
เมื่อถึงวันที่ 1 มกราคม 2558 เวลา 00.00 ให้
update serial set lab_order_number="58000001"
update serial set lab_receive_number="58000001"

แบบนี้ทำกันยังไงครับ     ;D
หัวข้อ: Re: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: tawan_saba ที่ มกราคม 30, 2014, 10:54:05 AM
ใช navicat สร้าง Procedure และสร้าง events ให้ทำงานปีละครั้ง
BEGIN
update serial set serial_no = CONCAT(RIGHT(YEAR(NOW())+543,2),'00000') WHERE name = 'lab_order_number';
update serial set serial_no = CONCAT(RIGHT(YEAR(NOW())+543,2),'00000') WHERE name =  'lab_receive_number'
END
ประมาณนี้ครับ ลองดูนะครับ
หัวข้อ: Re: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: panus_t ที่ มกราคม 31, 2014, 11:42:54 AM
ขอบคุณครับ (กด link แล้วแต่ไม่ขึ้น  ;D)
หัวข้อ: Re: เลขที่รับแล็ปต้องการให้มีเลข ปี พ.ศ. นำหน้าทำไงครับ
เริ่มหัวข้อโดย: mashimaro ที่ กุมภาพันธ์ 04, 2014, 15:12:27 PM
ใช navicat สร้าง Procedure และสร้าง events ให้ทำงานปีละครั้ง
BEGIN
update serial set serial_no = CONCAT(RIGHT(YEAR(NOW())+543,2),'00000') WHERE name = 'lab_order_number';
update serial set serial_no = CONCAT(RIGHT(YEAR(NOW())+543,2),'00000') WHERE name =  'lab_receive_number'
END
ประมาณนี้ครับ ลองดูนะครับ

Triger น่ะครับ ไม่ใช่ Events ครับ จากนั้น ทำ User Function โดยเฉพาะ ว่าให้ดึงค่าปีมาแล้ว ให้ Run มา Update ครับ
ใน MySQL ทำได้อยู่แล้วครับ