20-05-18, 01:26 AM
(19-05-18, 07:08 PM)aftfm كتب : السلام عليكم ورحمة الله وبركاته
مثال لحفظ ملف pdf الى قاعدة البيانات اكسس
المشكلة في عملية الحفظ بحيث لو تم فتح نفس الملف اكثر من مرة يتم حفظ الملف في حقل المسار للملف اكثر من مرة
يمكنك منع حدوث ذلك من البداية بالتأكد من وجود ملف بنفس الاسم من عدمه قبل عملية الاضافة
إقتباس :وفي مجلد المفات لا يتكرر ولكن تظهر رسالة تم الحفظ بنجاح , ومن المفترض في هذه الحالة يكون التعديل في حالة ان الملف له نفس الاسم
الملف لا لايتكرر لانه يقوم باستبدال القديم بالجديد
إقتباس :المطلوب التعديل على المثال بحيث تضاف الى جدول قاعدة البيانات حقل لاسم والتاريخ والوقت
بحيث يكون اسم الملف الجديد مكون من خانة الاسم والتاريخ والوقت
بهذه الطريقة لن يتكرر الاسم و لكن سيكون المحتوى مكرر
إقتباس :بهذه الطريقة لا يمكن تكرار اسم الملف حسب (الاسم والتاريخ والوقت) لانه لو تكرر يعني التعديل على حقول قاعدة البيانات ويظل الملف كما هو في مجلد الملفات pdf Folder
بدون اضافة ملف جديد
وفي حالة عدم تكرار (الاسم والتاريخ والوقت) يكون حقل جديد وملف جديد
التاريخ لن يتكرر و لكن الاسم هو الذى يحتمل أن يتكرر
ما فهمته هنا أنه اذا كان اسم الملف موجود مسبقا يتم تعديل التاريخ فقط
اذا كان ما فهمته صحيحا فلا أجد أى جدوى من ذلك
يمكنك فقط التحقق من وجود ملف بنفس الاسم من عدمه و اذا كان موجود لا تتم الاضافة و اذا لم يجد ملف بنفس الاسم يقوم باضافته
الكود التالى لزر الحفظ يقوم بذلك
كود :
Private Sub btnSaveFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSaveFile.Click
Try
If txtFilePath.Text = "" Then
MessageBox.Show("الرجاء قم بتحديد ملف", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Information)
btnSelectFile.Select()
ElseIf File.Exists(FolderPath & txtFileName.Text) Then
MessageBox.Show("الملف تمت إضافته سابقا", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Information)
Exit Sub
Else
Dim FilePath As String = txtFilePath.Text
File.Copy(FilePath, FolderPath & txtFileName.Text, True) 'copy selected file to folder in the project
Add_File(FolderPath & txtFileName.Text) 'Save file path in database
MessageBox.Show("تم حفظ الملف بنجاح", "الحفظ", MessageBoxButtons.OK, MessageBoxIcon.Information)
txtFilePath.Clear()
txtFileName.Clear()
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub