منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : اين الخطا
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
الاخوة الكرام
لقد عملت مشروع ويظهر لي خطا في الحفظ وهذا هو الكود علما انني استخدم فيجوال 2010
PHP كود :
هذا في المودل  Imports System.Data.OleDb
---------------------------------------
 
   Public GroupsDT As New DataTable
    Public GroupsDA 
As New OleDbDataAdapter
    Public MynewIDGroups 
As Integer
    Public Sub Load_Groups
()
 
       GroupsDT.Clear()
 
       GroupsDA = New OleDbDataAdapter("Select * from Groups"Con)
 
       GroupsDA.Fill(GroupsDT)

 
   End Sub
    Public Sub Code_Groups
()
 
       Dim dt As New DataTable
        Dim da 
As New OleDbDataAdapter("SELECT MAX(GroupID) from Groups"Con)
 
       da.Fill(dt)
 
       If IsDBNull(dt(0)(0)) = True Then
            MynewIDGroups 
1
        Else
            MynewIDGroups 
dt(0)(0) + 1
        End 
If
 
   End Sub 

PHP كود :
هذا في الكلاس
Imports System
.Data.OleDb

Public Class ItemGroups
    Public Sub claregroups
()
 
       Code_Groups()
 
       GroupDate.Value Now.Date
        GroupID
.Text MynewIDGroups
        GroupName
.Text ""
 
       GroupTime.Value Now
        GroupUser
.Text ""
 
   End Sub
    Private Sub ItemGroups_Load
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
        Load_Groups
()
 
       DataGridView1.DataSource GroupsDT
        claregroups
()
 
   End Sub


    Private Sub Button1_Click
(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button1.Click
        GroupsDT
.Rows.Add()
 
       Dim Last As Integer GroupsDT.Rows.Count 1
        GroupsDT
.Rows(Last).Item("GroupDate") = GroupDate.Value
        GroupsDT
.Rows(Last).Item("GroupID") = GroupID.Text
        GroupsDT
.Rows(Last).Item("GroupName") = GroupName.Text
        GroupsDT
.Rows(Last).Item("GroupTime") = GroupTime.Value
        GroupsDT
.Rows(Last).Item("GroupUser") = GroupUser.Text
        Dim Save 
As New OleDbCommandBuilder(GroupsDA)
 
          الخطا يظهر في هذا السطر ولايتم الحفظGroupsDA.Update(GroupsDT)
 
       GroupsDT.AcceptChanges()
 
       Load_Groups()
 
       claregroups()
 
   End Sub
End 
Class 
وعليكم السلام
أنتِ لم تضعي صورة لرسالة الخطأ التي تظهر .
السلام عليكم ورحمة الله وبركاته
اختي الكريمة
السجل الاخير عادة لايكون موجود بل نضيفه و هنا يجب ان لا تكون عدد سجلات -1 الداتا تابل بل  زيادة واحد  
اي تغيير هذا السطر
كود :
Dim Last As Integer = GroupsDT.Rows.Count - 1
الى هذا السطر
كود :
Dim Last As Integer = GroupsDT.Rows.Count
لان العد يبدأ من الصفر وبالتالي عدد السجلات الموجودة هو عدد الصفوف ناقص واحد وعند اضافة سجل جديد يكون  السجل الاخير المضاف  وهنا ازالة الناقص واحد
استاذ ابراهيم 
انا عرفت الداله في الموديل على أنها تساوي قيمة الصفر وبالتالي يكون اid= 1 وقد عملت نفس الطريقه التي قلتها ولكنها لم تنجح معي
الكود متأكده منه صحيح وقد استخدمته كثيرا وكان يتم الحفظ لكن هذه المره تظهر رسالة خطأ تقول الدالة غير مطابقة او غير موجودة اقصد(dt) اذا كان هنالك حل آخر فارجوا ان تسعفوني به
السلام عليكم  
اختي الكريمة 
لم اتفحص كامل الكود فقط وقعت عيناي على السطر الذي كتبته لك وبعد ردك تتبعت كود الحفظ فوجدت انك لم تنشئي صف الاضافة وبذك يكون الكود على النحو التالي
كود :
       
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
   
Dim Last As Integer = GroupsDT.Rows.Count
Dim row As DataRow = GroupsDT.NewRow
GroupsDT.Rows.Add()
       GroupsDT.Rows(Last).Item("GroupDate") = GroupDate.Value
       GroupsDT.Rows(Last).Item("GroupID") = GroupID.Text
       GroupsDT.Rows(Last).Item("GroupName") = GroupName.Text
       GroupsDT.Rows(Last).Item("GroupTime") = GroupTime.Value
       GroupsDT.Rows(Last).Item("GroupUser") = GroupUser.Text
       Dim Save As New OleDbCommandBuilder(GroupsDA)
          GroupsDA.Update(GroupsDT)
       GroupsDT.AcceptChanges()
       Load_Groups()
       claregroups()
   End Sub
لسلام عليكم
استاذ ابراهيم لك كل الشكر والتقدير
كل الذي قلته لقد عملته ولكن لم ينجح الامر
لقد ارفقت لك المثال حتى حتى تطلع عليه ويطلع عليه الاخوة اعضاء المنتدى 

لكم كل الشكر والتقدير
السلام عليكم ورحمة الله وبركاته
اختي الكريمة 
في قاعدة البيانات كان يوجد بند  validation Rule كان مفعل تحقق تم الغاؤه لكل من حقلي التاريخ والوقت
وفي الاكواد كما ذكرت لك سابقا مع بعض التعديلات الطفيفة 
اليك المثال
السلام عليكم
اتقدم بالشكر الجزيل للاستاذ ابراهيم بيو لتفانيه بمساعدة اعضاء المنتدى
كما ان التعديل الذي قمت به نجح 
وفقك الله وجعل كل اعمالك في ميزان حسناتك
الحمد لله والشكر لله
ولك أيضا أختي الكريمة نهى علي
كلماتكم الطيبة وسام على صدر هذا المنتدى الغالي