「 U2 」一覧

2016

にゃーん

頑張ろう。2017。


最近見るコード

最近ヘルプで入ったプロジェクトではこんなコードが大量に見つかる。

Public Function funcSyukei(ByVal userid As String) As Integer
  Dim tiValue As Integer = 0
  Dim tiTotal As Integer = 0
  Dim tsRow As String = Nothing
  Dim tiCnnt As Integer = 0
  Dim tiPrice As Integer = 0
  Dim i As Integer
  Dim obj As Cls_Uriage
  Dim dat As DataTable = Nothing

  obj = New Cls_UriageSyukei
  dat = obj.GetUriage(userid)

  Try
    If IsNumeric(userid) = False Then
      tsError = "ユーザIDは数値を入力してください"
      Exit Function
    End If

    If dat Is Nothing Or dat.Rows.Count = 0 then 
      tsError = "データがありません"
      Exit Function
    End If
    
#If True Then
    If userid.Length <> 8 Then
      tsError = "ユーザIDは8桁で入力してください"
      Exit Function
    End If
#End If

    'If userid.Length <> 4 Then
    '  tsError = "ユーザIDは4桁で入力してください"
    '  Exit Function
    'End If

    For i = 0 To dat.Rows.Count - 1
      tiValue = 0
      tsRow = "cnt"
      tiValue = dat.Rows(i).Items(wsRow)
      tiCnt = tiValue
    
      tiValue = 0
      tsRow = "price"
      tiValue = dat.rows(i).Items(wsRow)
      tiPrice = tiValue
      tiTotal += (tiCnnt * tiPrice)
    Next
  Catch e As Exception
    tsError = "処理に失敗しました"
  End Try
  
  obj = Nothing

  Return tiTotal
End Function

 

う○こコードのほんの一摘みでこんな感じ。

なおこのコードがあるプロジェクトをテストした所1人でバグを100件検出した模様

エラー食いつぶして「データがありません」のフリした「SQL Syntax Error」が大量に出てきた時は実装した奴ぶちこr(ゲフンゲフン

突っ込む気も失せました。もっと良いコードを書きたい。