質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.78%

2注文目下に表示されるようにしたいのですが、2件目が表示されません

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,042

score 14

2注文目下に表示されるようにしたいのですが、2件目が表示されません 
調査したこと:SQLサーバーの中身の仕様のチェック、データソースの中身のSQLのチェック
試したこと:実際にWebサーバ上で商品の追加を行いSQLManagementstudio上で上位200行の編集でデータの登録がされているかの確認を行った結果商品はきちんとSQLManagementstudio上では登録されていた。
注文画面デザイン上画面↓
リンク内容 
注文画面デザイン中画面 
リンク内容
注文画面デザイン下画面 
リンク内容
注文画面VBソースコード画面1 
リンク内容
注文画面VBソースコード画面3 
リンク内容
注文画面VBソースコード画面2 
リンク内容
上の3画面の

Imports System.Data 
 Partial Class Default2 
     Inherits System.Web.UI.Page 

    Private Function GetNew_order_no() As Integer 
         Dim order_no As Integer = 0 '伝票番号 

        '注文テーブルから伝票番号の最大値を取得 
        Dim args As DataSourceSelectArguments = New DataSourceSelectArguments() 
         Dim dataview As DataView = CType(SqlDataSource_order1.Select(args), DataView) 
         If dataview.Table.Rows(0).ItemArray.GetValue(0) Is DBNull.Value Then 
             '存在していないとき 
            order_no = 1 
         Else 
             '存在しているとき 
            order_no = dataview.Table.Rows(0).ItemArray.GetValue(0) + 1 
         End If 
         '伝票番号を返す 
        Return order_no 
     End Function 

    Protected Sub Button_cart_Click1(sender As Object, e As EventArgs) 
         '伝票番号の取得 
        Dim order_no As Integer = 0 '伝票番号 
        If Session("order_no") Is Nothing Then 
             'セッションオブジェクトに存在していないときは伝票番号取得 
            order_no = GetNew_order_no() 

            '注文テーブルの更新 
            SqlDataSource_order1.InsertParameters("order_no").DefaultValue = order_no 
             SqlDataSource_order1.InsertParameters("customer_id").DefaultValue = 0 
             SqlDataSource_order1.InsertParameters("date").DefaultValue = Now() 
             SqlDataSource_order1.InsertParameters("order_sts").DefaultValue = 0 
             Try 
                 SqlDataSource_order1.Insert() 
             Catch ex As Exception 

            End Try 

            '注文番号の保存 
            Session("order_no") = order_no 
         Else 
             'セッションオブジェクトから伝票番号を取得 
            order_no = CInt(Session("order_no")) 
         End If 

        '注文明細テーブルの更新 

        '注文明細に存在するかチェック 
        Dim item_id As Label = CType(sender, Button).Parent.FindControl("IDLabel") 
         Dim args As DataSourceSelectArguments = New DataSourceSelectArguments() '商品ID 
         SqlDataSource_order_detail.SelectParameters("item_id").DefaultValue = item_id.Text '同一伝票No 
         Dim dataview As DataView = CType(SqlDataSource_order_detail.Select(args), DataView) '同一商品No 

        If dataview.Table.Rows.Count < 1 Then 
             '存在しないときは、レコードの追加 
            SqlDataSource_order_detail.InsertParameters("order_no").DefaultValue = order_no 
             SqlDataSource_order_detail.InsertParameters("item_id").DefaultValue = item_id.Text 
             SqlDataSource_order_detail.InsertParameters("quantity").DefaultValue = 1 
             Try 
                 SqlDataSource_order_detail.Insert() 
             Catch ex As Exception 

            End Try 
         Else 
             '存在する時は、数量更新 
            SqlDataSource_order_detail.InsertParameters("order_no").DefaultValue = order_no 
             SqlDataSource_order_detail.UpdateParameters("item_id").DefaultValue = item_id.Text 
             SqlDataSource_order_detail.UpdateParameters("quantity").DefaultValue = _ 
                 dataview.Table.Rows(0).ItemArray.GetValue(2) + 1 
             Try 
                 SqlDataSource_order_detail.Update() 
             Catch ex As Exception 

            End Try 

        End If 
     End Sub 

    Protected Sub SqlDataSource_order1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource_order1.Selecting 

    End Sub 
 End Class 

```
 注文テーブルデザイン画面↓ 
 リンク内容 
注文テーブルhtmlコード1 
 リンク内容
注文テーブルhtmlコード2 
 リンク内容 
上の2画面のhtmlソースコードです
注文テーブルvbコード1 
リンク内容
注文テーブルvbコード2 
 リンク内容
他に修正してほしい場合や情報が不十分な場合はご指摘お願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • twck

    2016/07/12 09:18

    リンク先のソースコードが消えています。
    外部のアップローダーを使用するのではなく、質問文の中にソースを記述してください。
    またソースは </> アイコンを使用して囲むことで見やすくなります。

    キャンセル

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.78%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る