تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة فى كود الحفظ ... رجاء المساعدة
#1
[b][COLOR="#800080"]بسم الله الرحمن الرحيم

السلام عليكم أعضاء ومشرفى هذا الصرح الرائع

الذى تعملت منه الكثير

انتقلت مؤخرا إلى vb.net بعد الخروج من vb6 بصعوبة لطول العشرةBig Grin

وبدأت فى أولى برامجى

ولكن للأسف البداية غير موفقة حيث واجهتنى المشكلة التالية[/COLOR]
[/b]

[COLOR="#800080"]
أعمل على زر الحفظ

حيث يقوم بحفظ البيانات بالإضافة صورة فى قاعدة البيانات

عند ملئ الـ TextBox بالبيانات واختيار الصورة وعند الضغط على زر الحفظ

كما فى الصورة
[ATTACH=CONFIG]2625[/ATTACH]

الكود المستخدم فى الحفظ
[/COLOR]


كود :
BB = My.Computer.FileSystem.ReadAllBytes(OP.FileName)


        '===================================================================

        Dim SavCom As New OleDbCommand


        With SavCom
            .Connection = Cn
            .CommandType = CommandType.Text
            .CommandText = "insert into gen (num, kind,source,tex,notes ,Photo) values(?, ?, ?, ?, ?,?)"
            .Parameters.Clear()
            .Parameters.AddWithValue("@num", OleDbType.VarChar).Value = TextBox1.Text.Trim
            .Parameters.AddWithValue("@kind", OleDbType.VarChar).Value = TextBox2.Text.Trim
            .Parameters.AddWithValue("@source", OleDbType.VarChar).Value = TextBox3.Text.Trim
            .Parameters.AddWithValue("@tex", OleDbType.VarChar).Value = Val(Val(TextBox3.Text.Trim) - Val(TextBox2.Text.Trim))
            .Parameters.AddWithValue("@notes", OleDbType.VarChar).Value = Val(Val(TextBox3.Text.Trim) - Val(TextBox2.Text.Trim))
            .Parameters.AddWithValue("@Photo", OleDbType.Binary).Value = BB
        End With

        Cn.Open()
        SavCom.ExecuteNonQuery()
        Cn.Close()
        '========================================================================
        Form1_Load(Nothing, Nothing)
        MsgBox("One Record  added successfully", MsgBoxStyle.Information, "Save")
        ClearTxt()

        NewBtn.Enabled = True
وهذا هو الكود الموجود فى الـ Form Load

كود :
If Cn.State = ConnectionState.Open Then Cn.Close()
        BrowseBtn.Enabled = False
        NewBtn.Enabled = True
        SaveBtn.Enabled = False

        PictureBox3.Visible = False


        '=====================================================
        DS.Clear()
        Dim DP As New OleDbDataAdapter("Select * from gen", Cn)
        DP.Fill(DS, "gen")
        '======================================================
        If DS.Tables("gen").Rows.Count <> 0 Then

            IDLb.DataBindings.Add("Text", DS, "gen.ID", True, 1)
            PictureBox2.DataBindings.Add("Image", DS, "gen.Photo", True)
            TextBox1.DataBindings.Add("Text", DS, "gen.num", True, 1)
            TextBox2.DataBindings.Add("Text", DS, "gen.kind", True, 1)
            TextBox3.DataBindings.Add("Text", DS, "gen.source", True, 1)
            TextBox4.DataBindings.Add("Text", DS, "gen.tex", True, 1)
            TextBox5.DataBindings.Add("Text", DS, "gen.notes", True, 1)

        End If
الشكر مقدماً لكل من يتفضل علىّ بالحل الصحيح أو مجرد المساعدة


الملفات المرفقة صورة/صور
   
الرد }}}
تم الشكر بواسطة:
#2

السلام عليكم ورحمة الله وبركاته




الخطأ ظهر لأن الـ TextBox5 مربوط بواسطة Binding من قبل


يمكن تجاوز الخطأ بأن تمسح الربط السايق قبل السطر

PHP كود :
TextBox5.DataBindings.Add("Text"DS"gen.notes"True1


وذلك بوضع هذا السطر قبله

PHP كود :
TextBox5.DataBindings.Clear() 


ليصبح كاللتالي

PHP كود :
If Cn.State ConnectionState.Open Then Cn.Close()
        
BrowseBtn.Enabled False
        NewBtn
.Enabled True
        SaveBtn
.Enabled False

        PictureBox3
.Visible False


        
'=====================================================
        ds.Clear()
        Dim DP As New OleDbDataAdapter("Select * from gen", Cn)
        DP.Fill(ds, "gen")
        '
======================================================
        If 
ds.Tables("gen").Rows.Count <> 0 Then

            IDLb
.DataBindings.Add("Text"ds"gen.ID"True1)
            
PictureBox2.DataBindings.Add("Image"ds"gen.Photo"True)
            
TextBox1.DataBindings.Add("Text"ds"gen.num"True1)
            
TextBox2.DataBindings.Add("Text"ds"gen.kind"True1)
            
TextBox3.DataBindings.Add("Text"ds"gen.source"True1)
            
TextBox4.DataBindings.Add("Text"ds"gen.tex"True1)
            
TextBox5.DataBindings.Clear()
            
TextBox5.DataBindings.Add("Text"ds"gen.notes"True1)

        
End If 





السلام عليكم ورحمة الله وبركاته
الرد }}}
تم الشكر بواسطة:
#3
[/b][/color]
السلام عليكم ورحمة الله وبركاته
[/quote]



[color="#800080"]شكرا لك اخى الغالى وجزاك الله خيرا
تم حل المشكلة بما تفضلت علىّ به مما علمك الله
[/color]
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم