2016-08-26 8 views
-1

ifフィールド名の値をチェックする条件、またはフィールド名がユーザーが指定した数値以下であるため、データフィールドの値negativeと等しくはありません。私の問題は、ifの条件でフィールド名をどのように宣言できますか?親切で、私の質問を編集してください。ここでフィールド名がゼロかどうかチェック

はコーディングです:

if (reader.Read()) 
    { 
    OleDbCommand cmd = new OleDbCommand(@"Update TblInventory set 
Quantity = Quantity - @Quantity WHERE ItemCode = @itemcode"); 
    cmd.Connection = con; 

    cmd.Parameters.AddWithValue("@Quantity", Convert.ToInt32(row.Quantity)); 
    cmd.Parameters.AddWithValue("@itemcode", row.Item); 
    cmd.Parameters.AddWithValue("@DateAndTime", time); 
    cmd.ExecuteNonQuery(); 
    MessageBox.Show("You added " + row.Quantity + " " + row.Product, "Existing Item"); 
} 

EDIT

は、入力量は、私がこれまで試したていたものfield Quantity

UPDATE

から差し引かれます

cmd.Connection = con; 
cmd.Parameters.AddWithValue("@Quantity", Convert.ToInt32(row.Quantity)); 
cmd.Parameters.AddWithValue("@itemcode", row.Item); 
cmd.Parameters.AddWithValue("@DateAndTime", time); 
int intQuantity = Convert.ToInt32(row.Quantity); 
    if (Convert.ToInt32("@Quantity") >= intQuantity) 
    { 
    cmd.ExecuteNonQuery(); 
    MessageBox.Show("Congrats"); 
    ... 

と入力された文字列が正しい形式ではないと言いました。フィールドQuantitytext form.

+1

マイナスに等しいとはどういう意味ですか?どのフィールドを比較したいですか? –

+0

ユーザが '' Quantity field''の値より高い値を入力すると、 '' Quantity''の更新値は負の値になります –

答えて

0

にあります。Quantityrow.Quantity以上であるかどうかを確認します。

if (reader.Read()) 
{ 
    OleDbCommand cmd = new OleDbCommand(@"Update TblInventory set 
    Quantity = Quantity + @Quantity WHERE ItemCode = @itemcode"); 
    cmd.Connection = con; 

    cmd.Parameters.AddWithValue("@Quantity", Convert.ToInt32(row.Quantity)); 
    cmd.Parameters.AddWithValue("@itemcode", row.Item); 
    cmd.Parameters.AddWithValue("@DateAndTime", time); 

    if (Quantity >= Convert.ToInt32(row.Quantity)) 
    { 
     cmd.ExecuteNonQuery(); 
     MessageBox.Show("You added " + row.Quantity + " " + row.Product, "Existing Item"); 
    } 
    else 
    { 
     MessageBox.Show("Quantity must not be negative."); 
    } 
} 

これがあなたの希望でない場合は、私にお知らせください。

+0

sirそれは 'Quantity> = row.Quantity'でなければなりませんが、それはできますか? –

+0

これは、 'Quantity'がローカル変数、フィールド、またはパラメータであると仮定して、' if'節を変更しました。そうでない場合は、数量がその場所にあるかどうかを入れてください。 –

+0

'Quantity'という名前は現在のコンテキストに存在しません –

関連する問題