제가 만들고 있는 프로그램은 회사에서 쓰는 기술자료의 리비전을 관리하는 프로그램을 설계중에 있습니다.
우리 회사의 경우, 리비전이 NEW, A, B, ........., Z까지 순차적으로 증가합니다.
그래서 아래의 그림과 같이 일련번호랑 스테이지를 적으면 프로그램을 자동 조회하여 NEW가 있으면 A로,
A가 있으면 REV 화면에 자동으로 B를 나오게 하는 걸 지금 구상중에 있에 있습니다.
 
문제는 NEW가 있어서 쿼리를 하는데, 자꾸 문제가 발생하네요. A~Z까지는 증가 시킬 수 있는데, NEW가 있어서인지, 자꾸 NEW, A가 있더라도 O라는 파일이 자동으로 됩니다.
 
어떻게 해결해야 할까요 ㅠ 쿼리에서 NEW를 안나오게 하는 방법도 해 봤습니다. 근데 이럴 경우에는 과거 데이터의 경우에는 NEW, A, N, O 등 순차적으로 안 들어간 자료가 많아서요, 이것도 고려해서 프로그램을 코딩해야해서요 .
 
고수분들 도와주세요,
 

  Query = "SELECT " _
                & " CASE " _
                & "  WHEN E600REV = 'NEW' THEN '' " _
                & "  WHEN E600REV <> 'NEW' THEN MAX(E600REV) " _
                & " End " _
                & " FROM HE600 " _
                & " WHERE E600DOC_TYPE = 'CMM' " _
                & " AND E600NO = '" & LTrim(RTrim(TextBox8.Text)) & "' " _
                & " AND E600STAG = '" & LTrim(RTrim(TextBox9.Text)) & "' "
 
Query =  "SELECT " _
               MAX(E600REV) "
                FROM HE600 " _
                WHERE E600DOC_TYPE = 'CMM' " _
                AND E600NO = '" & LTrim(RTrim(TextBox8.Text)) & "' " _
                AND E600STAG = '" & LTrim(RTrim(TextBox9.Text)) & "' "
        SQuery = "Password = hpms_user;" _
                    & "User ID=hpms; " _
                    & "Data source=oldserver;" _
                    & "Initial Catalog = HAS기술자료_A"
        SQLCo = New SqlConnection(SQuery)
        SQLCo.Open()
        SQLDA = New SqlDataAdapter(Query, SQLCo)
        SQLDA.Fill(SQLDS, "NC장비")
        SQLDV = New DataView(SQLDS.Tables("NC장비"))
        SQLCo.Close()
        For i As Integer = 0 To SQLDV.Count - 1
            If SQLDV.Count = 0 Or IsDBNull(SQLDV.Item(i).Item(0)) Then
                REV = "NEW"
            Else
                If Asc(SQLDV.Item(i).Item(0).ToString) = 90 Then
                    MsgBox("현재 리비전이 'Z'입니다. 더이상 리비전을 추가할수 없습니다.")
                    GoTo Out
                Else
                    For asc_num = 65 To 89
                        If Asc(SQLDV.Item(i).Item(0).ToString) = asc_num Then
                            REV = Chr(asc_num + 1)
                            GoTo out
                        End If
                    Next
                End If
            End If
        Next
out:
        TextBox7.Text = REV
No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 1245
7782 DB2 DDL을 SQL Server2008R2로 마이그레이션tool [1] 문수정 2014.04.13 3174
7781 암호화 관련 질문 있습니다. [1] 생각찾기 2014.04.11 2938
7780 산술오버플로 질문 입니다. [4] ssunsori 2014.04.11 9078
7779 조건에 따라 같은값을 2개이상 가진것들만 출력하고싶습니다. [2] 왕만두와우동 2014.04.11 8054
7778 SQL 초보가 질문 드립니다! [3] 상백이 2014.04.11 2553
7777 mssql 2008->2000 데이터베이스 이전 문제 [1] 말포2 2014.04.10 3361
7776 SQL 복구 관련 해서 문의 글씁니다. [1] 아는게없어 2014.04.10 2961
» 안녕하십니까, 쿼리질문입니다. ^^ [2] 차차리아카 2014.04.10 2827
7774 초단위로 같은 쿼리가 실행되서 데이터가 여러번 갱신되는 것을 막는 방법은 없을까요? [1] 사이드사이드 2014.04.09 3612
7773 Fullbackup 시에 백업 파일을 용량 줄일 수 있는 방법이 있나요? [1] 나는짱이야 2014.04.09 3307
7772 생년월일로 만나이 구하기 [3] 흑흑 2014.04.09 9696
7771 약 5만여개 데이터 update? [4] 송토리 2014.04.09 3437
7770 혹시 시간 반올림 하는 함수가 있을까요?? [3] alima 2014.04.09 8227
7769 sql 엑셀파일 읽어오기 오류. sungjae 2014.04.09 7020
7768 sql server management studio 툴 질문입니다 comment 관련 [1] 지환아빠 2014.04.09 4960
7767 쿼리문에서 out of memory 에러 문의 드립니다. 희망나라 2014.04.09 4121
7766 MS-SQL 날짜 계산과 국세청 (엑셀) 날짜 계산 어떻게 맞춰야 하나요? ㅠㅠ [2] 부르스 2014.04.08 6324
7765 쿼리 문의드립니다 [4] minblue1004 2014.04.08 4142
7764 MSSQL 2008 미러링 구성 문의 좀 드리겠습니다. [1] 쿠쿠82 2014.04.08 5492
7763 MySQL 하나만 질문드릴게요 마에스트로 2014.04.08 2990





XE Login