ผมจะทำให้ข้อมูลเหล่านี้เป็นข้อมูลเดียวกันได้ยังไงครับ
ก็น่าจะพอทำได้น่ะครับ
โดยการเอาแค่ตัวอักษรกับตัวเลขที่ไม่ใช่ 0 เก็บไว้
ก็จะได้ W1 ทุกตัว
แต่ทำให้มันเหมือนกันทุกอันน่าจะดีกว่าน่ะครับ แบบนี้งงมากเลย
Date :
2014-09-08 17:14:29
By :
fonfire
ข้อมูล User จะเป็นคนกรอกครับ
กระบวนการคือ
1.ลง Book ซึ่งผลที่ได้จะเป็นแบบแรก
2.แต่ละหน่วยงานคัดลอกข้อมูล(ไม่ใช้ Index)
3.รวบรวมผลจากแต่ละหน่วยงานออก รายงานผลอีกที
ถ้ารหัสเป็นประมระมาณ W44444 แบบนี้ไม่ค่อยมีปัญหาครับ
แต่พอเป็นประมระมาณ W 00001 W 00125 ปวดหัวกะมันตลอด บางหน่วยใส่ 0 บางหน่วยไม่ใส่ 0
ก็เลยประเมิณผลลำบากเพราะมันจะไม่เป็นรหัสเดียวกัน
Date :
2014-09-08 17:45:36
By :
lamaka.tor
ล๊อคจำนวนตัวอักษรได้ไหมครับ
เช่นต้องระบุ 6 ตัวเท่านั้น
แล้วก็ล๊อคไม่ให้กด Space Bar
Date :
2014-09-08 19:38:04
By :
fonfire
ส่วนสำคัญคือ อักษรตัวแรก เป็นอันกษรตัวเดียว หรือว่าหลายตัว
ในกรณีที่เป็นตัวเดียว เราสามารถเขียนแยกโค๊ดแล้วทำการคิวรี่ได้ ในรุปแบบหนึ่ง
แต่ถ้ามีอักษรหลายตัว ก็จะมีการเขียนเพื่อแยกโค๊ดในอีกรูปแบบหนึ่ง
และถ้า ตัวอักษรมีจำนวนไม่แน่นอน ก็จะต้องเขียนในอีกรุปแบบหนึ่ง
ต้องจำกัดข้อแตกต่างของรหัสให้ชัดเจนครับ
ทีนี้เรามาดูกันเราเป็นคนเขียนโค๊ดให้เขาทำ หรือ ว่าเขาสร้าง ไฟล์มาให้แล้วเรานำมันเข้า database อีกที
ในกรณีที่เราขียนโปรแกรมให้ เราก็สามารถแยกโค๊ดได้ตั้งแต่ขั้นตอน input ครั้งแรก
นี่เป็นตัวอย่างสำหรับแยกโค๊ดแบบหนึ่งครับ
$user_input = 'W013';
$id = substr($user_input, 0,1) . substr( 100000 + substr($user_input, 1), 1);
// $id ก็จะเท่ากับ W00013 ซึ่ง เลข 100000 จะเป็น pattern จำนวนหลักในการเก็บข้อมูล
พอได้ id ในรุปแบบใหม่ ก็ เอามันกลับเข้าไปใน ฟีลด์ input ให้ user เห้นรุปแบบที่ควรจะเป็นก่อนทำอย่างอื่น
Date :
2014-09-08 20:28:03
By :
Chaidhanan
ตอนพนักงานคีย์ ให้เอา 0 กับ เว้นวรรคออก น่าจะตัดปัญหาได้
ต้องแก้ปัญหาตอนคีย์ครับ ไม่ใช่มาแก้ปัญหาตอนแสดงผล อันนั้นยากแน่
Date :
2014-09-08 23:44:37
By :
zarooman
อะไรก็ตามแต่ ถ้ามันมีรูปแบบที่ไม่แน่นอนอย่าลืมนึกถึง Regx
Code (VB.NET)
'ตัวอย่างการใช้งาน
' Dim xxx As String = RegexหอยBetween("W", "1", "แถวนี้มีหอยแยะไหมหอย")
Imports System.Text.RegularExpressions
Private Function RegexหอยBetween(ByVal startWith As String, ByVal endWith As String, ByVal s As String) As String
Dim เจอหอยไหม As Match = New Regex(startWith & "(.+?)" & endWith).Match(s)
If เจอหอยไหม.Success Then
Return เจอหอยไหม.Groups(1).ToString() 'หมายถึง หอย ตัวแรกเท่านั้น (อาจจะมีหลายหอย)
End If
Return "ไม่เจอหอย"
End Function
หรือ
Code (VB.NET)
Imports System.Text.RegularExpressions
Private Function RegexหอยBetween(ByVal startWith As String, ByVal endWith As String, ByVal s As String) As String
Dim เจอหอยไหม As Match = New Regex(startWith & "(.+?)" & endWith).Match(s)
Return If(เจอหอยไหม.Success, เจอหอยไหม.Groups(1).ToString(), "ไม่เจอหอย")
End Function
ปล. อาจจำเป็นสำหรับใครบางคน อ่านเพิ่มเติมได้ที่แน่เลยครับ http://msdn.microsoft.com/en-us/library/30wbz966(v=vs.110).aspx
ประวัติการแก้ไข 2014-09-09 08:30:40 2014-09-09 08:38:45
Date :
2014-09-09 08:27:11
By :
หน้าฮี
ข้อมูล Input เป็น Excel ครับ(นั่นแแหละปัญหาใหญ่)
สัญลักษณ์เป็นภาษา Eng แล้วตามด้วยตัวเลข
ซึ่งจะมีหลายรูปแบบเช่น W,E,HM,FD,MC,WW แล้วค่อยต่อด้วยตัวเลยอีกที
แต่มีปัญหาคือตอนที่เค้ารับเข้า Excel ข้อมูลจะไม่ตรงตามที่เรากำหนดเปะๆอย่างที่บอกครับ
แล้วพอประมวลผลมาประกฏว่า มีรหัสยังไม่ได้รายงานผล ทั้งที่รายงานแล้ว
แต่ฟอร์แมตไม่ตรงแค่นั้นเอง
****
ตอนนี้ผมอยากเอา Excel มาทำเป็น Access มากครับแต่หางอึ่งอย่างผมก็ยังคิดไม่ออกว่าจะทำยังไง
มีใครพอช่วยได้ป่าวครับผมส่งไฟล์ Excel ให้ดู
Date :
2014-09-09 08:28:22
By :
lamaka.tor
ผมอาจจะคิดมากไป ผมเคยทำการ อิมพอร์ตจาก excel อยู่ครับ มีปัญหานี้เหมือนกัน ปัญหาที่ว่า
อิมพอร์ตเข้ามา ตัวเลขหรอ id ที่เข้ามามันฟอร์แมตไม่ตรงกันจะให้ผู้ใช้ ไปแก้ให้ตรงแล้วค่อยอิมพอร์ตก็ ไม่ได้มันมีเป็นแสน rec ผมใช้วิธีไปแก้ตอนที่เราอิมพอร์ตครับ ในแบบของผมแทนที่จะเก็ตลงฐานข้อมูลเลยผมเอาค่าฟิลด์นั้นๆไป ลงfunction ก่อนแล้วตัดข้อความที่ไม่ต้องการออกไป เช่น o หรือ เว้นวรรคที่มันหลงเข้ามา โดยวิธีการ Left ไปทีละตัวถ้าเจอ " "(ช่องว่าง) ก็ให้เปลี่ยนเป็น "" (ว่างเปล่า) ถ้าเจอ "0" ให้เปลี่ยนเป็น "" และถ้าLeftไปเจอค่าที่มากกว่า 0 ก็ให้ออกจาก loop; ไปเลย
อย่างเช่นตามรูป จะเห็นว่า MathID ฟอร์แมทมามั่วมากแต่มันคือ Index ผมก็จะตัดส่วน " " กับ 0 ออก ให้เหลือแต่ ตัวเลขเพียวๆแล้วเพิ่มเข้าฐานข้อมูล
อันนี้แนะนำนะครับ
[email protected] ลงส่งไฟล์ excel มาดูครับ
Date :
2014-09-09 12:54:11
By :
zarooman
ขอบคุณทุกท่านครับ
จะลองพยามดู
คุณ timmy ผมส่งไฟล์ให้แล้วนะครับน่าจะแก้ยังไงครับถึงจะลงฐานข้อมูลได้
Date :
2014-09-09 15:39:10
By :
lamaka.tor
ผมเช็คเมลล์ดูไม่เห็นนะครับ facebook.com/zarooman ทางนี้กะได้ครับ
Date :
2014-09-09 21:24:45
By :
zarooman
Load balance : Server 05