ProjectForStudy

 ลืมรหัสผ่าน
 ลงทะเบียน
ค้นหา
ดู: 217|ตอบกลับ: 6

[ถาม/ตอบ] import text ไฟล์ ไป SQL เร็คคอร์สสุดท้ายไม่ไป

[คัดลอกลิงก์]
  • อารมณ์วันนี้
    สู้
    5 วันที่แล้ว
  • เช็คชื่อแล้ว: 125 วัน

    [LV.7]JuniorIII

    4

    กระทู้

    175

    โพสต์

    549

    เครดิต

    TeenLion

    Rank: 3Rank: 3

    เครดิต
    549
    Ticket
    146
    จิตพิสัย
    403
    import text ไฟล์ ไป SQL เร็คคอร์สสุดท้ายไม่ไป
    รบกวนดู Code ให้หน่อยน่ะครับว่ามันพลาดตรงไหนบ้าง
    คือรันโปรแกรมไปแล้ว ทุกเรคอร์ดไปหมดยกเว้น เรคอร์ดสุดท้าย
    -ผมได้แนบ ไฟล์ Text มาให้ดูครับ

    Public Function GetCCSDiskette() As Integer
    Dim sqlCCS As String
    Dim sqlDelete  As String
    Dim ComCCS As New ADODB.Command
    Dim comRegister As New ADODB.Command
    Dim Ret As String
    Dim Idok As String
    Dim LaneNo As String
    Dim Ndate$
    Dim DName$
    Dim s$
    Dim k%, R%, Per%
        IDate$ = txtDate.Text
        Ndate$ = Mid$(txtDate.Text, 1, 2) & Mid$(txtDate.Text, 4, 2) & Mid$(txtDate.Text, 9, 2)
           Ret = MsgBox("???????????????????????????????????????", 32, "Load Diskette")
           If Ret = Idok Then
              Cls
           End If
         '  DName$ = "A:" & Ndate$ & ".PRN"
           DName$ = "G:\BurirumSugar\ccs\Per01\" & Ndate$ & ".PRN"
      '   G:\BurirumSugar\ccs
           'On Error GoTo msg
           Open DName$ For Input As #1
           Line Input #1, s$
           k% = 1
           Do Until EOF(1)
              Line Input #1, s$
              k% = k% + 1
           Loop
           Close #1
           Open DName$ For Input As #1
           Line Input #1, s$
           R% = 1
           Conn1.BeginTrans
           Do Until EOF(1)
              Per% = R% / k% * 100
              ProgressBar1.Value = Per%
          '    Pct.Text = Per% & "%"
              If Mid$(s$, 23, 1) = "A" Then
                 LaneNo = "A"
              Else
                 LaneNo = "B"
              End If
    '        If s$ > 0 Then
            sqlCCS = "INSERT INTO CCS (PROD_LINE,REPORTDATE,CCS_REF_NO,CCS,Purity,BRIX,Pol,FiBre)"
            sqlCCS = sqlCCS & " VALUES ('" & LaneNo & "',"
            sqlCCS = sqlCCS & "'" & Format((txtDate.Text), "mm/dd/yyyy") & "',"
            sqlCCS = sqlCCS & "'" & LaneNo & Mid$(s$, 25, 3) & "',"
            sqlCCS = sqlCCS & "'" & Val(Mid$(s$, 63, 5)) & "',"
            sqlCCS = sqlCCS & "'" & Val(Mid$(s$, 58, 5)) & "',"
            sqlCCS = sqlCCS & "'" & Val(Mid$(s$, 38, 5)) & "',"
            sqlCCS = sqlCCS & "'" & Val(Mid$(s$, 53, 5)) & "',"
            sqlCCS = sqlCCS & "'" & Val(Mid$(s$, 9, 5)) & "')"
            With ComCCS
                .ActiveConnection = Conn1
                .CommandType = adCmdText
                .CommandText = sqlCCS
                .Execute
            End With
         '   Else
         '   End If
      Line Input #1, s$
    R% = R% + 1
    Loop

          sqlDelete = "DELETE FROM CCS "
         sqlDelete = sqlDelete & " WHERE (Purity > 90 or Purity <65) "
           ' sqlDelete = sqlDelete & " or (Purity<65)"
            With comRegister
            .ActiveConnection = Conn1
            .CommandType = adCmdText
            .CommandText = sqlDelete
            .Execute
        End With

            Conn1.CommitTrans
        MsgTxt.Text = "?????????????"
    End Function



    text ไฟล์
    0104201913.831743   1 A000122.1120.2022.1280.8420.3019.3287.3314.35 0.000                                                      000.000
    0104201913.831743   1 A000122.1120.2022.1280.8420.3019.3287.3314.35 0.000                                                      000.000

    โปรแกรมจะเอาแต่เรคอร์ดแรก

    ขออภัย! โพสต์นี้มีไฟล์แนบหรือรูปภาพที่ไม่ได้รับอนุญาตให้คุณเข้าถึง

    คุณจำเป็นต้อง ลงชื่อเข้าใช้ เพื่อดาวน์โหลดหรือดูไฟล์แนบนี้ คุณยังไม่มีบัญชีใช่ไหม? ลงทะเบียน

    x
  • อารมณ์วันนี้
    สู้
    5 วันที่แล้ว
  • เช็คชื่อแล้ว: 125 วัน

    [LV.7]JuniorIII

    4

    กระทู้

    175

    โพสต์

    549

    เครดิต

    TeenLion

    Rank: 3Rank: 3

    เครดิต
    549
    Ticket
    146
    จิตพิสัย
    403
     เจ้าของ| supean โพสต์ 2019-5-28 13:34:41 | ดูโพสต์ทั้งหมด
    ตัวโอนเงินมายังไง ตัวโอนเงินไม่เกี่ยวน่ะครับ
  • อารมณ์วันนี้
    แฮปปี้
    9 ชั่วโมงที่แล้ว
  • เช็คชื่อแล้ว: 384 วัน

    [LV.9]ConquerorII

    30

    กระทู้

    773

    โพสต์

    4579

    เครดิต

    RapterClaw

    Rank: 5Rank: 5

    เครดิต
    4579
    Ticket
    2851
    จิตพิสัย
    1728

    Merciful MemberInstructor

    puklit โพสต์ 2019-5-29 09:35:59 | ดูโพสต์ทั้งหมด
    โค้ดท่านเป็น VB6 หรือ VB.net?
    ท่านใช้ VB Version?

    จากโจทย์ การทำงานมี 2 ส่วน ดังนี้
    1. อ่านข้อมูลจาก Text file
    2. บันทึกข้อมูลจาก Text file เข้า Database

    ให้ท่านเช็ค ข้อ 1 ดูก่อนว่ามันอ่านไฟล์ข้อมูลครบหรือไม่ โดยอย่าพึ่งใส่โค้ดข้อ 2 ไป
    หากข้อ 1 แก้ไขได้แล้วหรืออ่านข้อมูลครบแล้วค่อยใส่ข้อ 2 ไป
  • อารมณ์วันนี้
    สู้
    5 วันที่แล้ว
  • เช็คชื่อแล้ว: 125 วัน

    [LV.7]JuniorIII

    4

    กระทู้

    175

    โพสต์

    549

    เครดิต

    TeenLion

    Rank: 3Rank: 3

    เครดิต
    549
    Ticket
    146
    จิตพิสัย
    403
     เจ้าของ| supean โพสต์ 2019-5-29 10:30:44 | ดูโพสต์ทั้งหมด
    VB 6 ครับ ท่าน ยังไม่ Update เพราะระบบใหญ่มาก  จะเช็คไงครับว่า มันอ่านหมดหรือไม่หมด
  • อารมณ์วันนี้
    สู้
    5 วันที่แล้ว
  • เช็คชื่อแล้ว: 125 วัน

    [LV.7]JuniorIII

    4

    กระทู้

    175

    โพสต์

    549

    เครดิต

    TeenLion

    Rank: 3Rank: 3

    เครดิต
    549
    Ticket
    146
    จิตพิสัย
    403
     เจ้าของ| supean โพสต์ 2019-5-29 10:36:28 | ดูโพสต์ทั้งหมด
    มีข้อแนะนำไหมครับ ว่าจะเช็คอย่างไร ถึงจะรู้ว่ามันอ่านมาหมดน่ะครับ เพราะไม่มีใน Form เลยครับ
  • อารมณ์วันนี้
    แฮปปี้
    9 ชั่วโมงที่แล้ว
  • เช็คชื่อแล้ว: 384 วัน

    [LV.9]ConquerorII

    30

    กระทู้

    773

    โพสต์

    4579

    เครดิต

    RapterClaw

    Rank: 5Rank: 5

    เครดิต
    4579
    Ticket
    2851
    จิตพิสัย
    1728

    Merciful MemberInstructor

    puklit โพสต์ 2019-5-29 11:01:49 | ดูโพสต์ทั้งหมด
    แก้ไขครั้งสุดท้ายโดย puklit เมื่อ 2019-5-29 11:22
    supean ตอบกลับเมื่อ 2019-5-29 10:36
    มีข้อแนะนำไหมครับ ว่าจะเช็คอย่างไร ถึงจะรู้ว่ามันอ่านมาหมดน่ะครับ เพราะไม่มีใน Form เลยครับ

    ถ้าเป็น VB6 ผมไม่มีโปรแกรมให้ทดสอบโค้ดครับหากจะเขียนใน VB.Net มันก็คนละเทคโนโลยีกัน
    ท่านลองศึกษาโค้ดจากลิ้งค์นี้ได้

    บทความของ อ.ทองก้อน
    https://www.g2gnet.com/news/activenews_view.asp?articleID=93
    http://www.g2gnet.com/news/activenews_view.asp?articleID=94
    http://www.g2gnet.com/news/activenews_view.asp?articleID=96

    เครดิตจาก Web http://www.g2gnet.com


    หรือท่านอาจจะใช้ Keyword ใน Google หาดู = read text file vb6
    Stackover flow ผมเห็นมีถามกันอยู่หลายกระทู้

    สำหรับการเช็คค่าบรรทัดว่าอ่านครบหรือไม่
    ท่านลอง รวม + 1 ไปเรื่อย ตอน Loop เริ่มอ่านจากบรรทัดแรก จนถึง EOF
    แล้ว Print ค่า ตัวแปร (ผลรวมที่ได้) มาเทียบกับจำนวนบรรทัดใน .txt ดูครับ
    ไม่จำเป็นต้องเทสที่ไฟล์ใหญ่มาก หากค่าผลลัพธ์ที่ได้ตรงกัน แสดงว่าอ่านครบแล้ว




  • อารมณ์วันนี้
    สู้
    5 วันที่แล้ว
  • เช็คชื่อแล้ว: 125 วัน

    [LV.7]JuniorIII

    4

    กระทู้

    175

    โพสต์

    549

    เครดิต

    TeenLion

    Rank: 3Rank: 3

    เครดิต
    549
    Ticket
    146
    จิตพิสัย
    403
     เจ้าของ| supean โพสต์ 2019-5-29 14:28:24 | ดูโพสต์ทั้งหมด
    ขอบคุณมาก ๆ เลยครับ
    ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | ลงทะเบียน

    รายละเอียดเครดิต

    ข้อความล้วน|อุปกรณ์พกพา|ประวัติการแบน|ProjectForStudy  

    GMT+7, 2019-10-16 17:20 , Processed in 0.054571 second(s), 28 queries .

    Powered by Discuz! X3.2 R20150609, Rev.38

    © 2001-2013 Comsenz Inc.

    ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้