نمایش نتایج 1 تا 11 از 11

نام تاپیک: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

  1. #1

    جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    سلام دوستان
    من با استفاده از کدهای زیر اطلاعات موجود از فایل اکسل رو ( با شرط حذف اطلاعات قبلی ) به بانک اکسس برنامه اضافه میکنم
    Dim f As Object
    Dim strFile As String
    Dim strFolder As String
    Dim varItem As Variant
    Set f = Application.FileDialog(3)
    f.AllowMultiSelect = True


    If f.Show Then
    For Each varItem In f.SelectedItems
    strFile = Dir(varItem)
    DoCmd.SetWarnings False
    DoCmd.RunSQL "DELETE FROM tblTak"
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12Xml, "tbltak", strFile, True
    Me.Requery
    DoCmd.SetWarnings True
    Next
    "اطلاعات از فایل اکسل دریافت شد" msgbox
    End If
    حال میخوام شرطی بزارم که اگر فیلدهای موجود در جدول اکسل با جدول TblTak اکسس همخوانی نداشته باشد ( Error 2391 ) یک پیام خطا صادر و از حذف اطلاعات موجود در جدول جلوگیری کنه
    اگر لطف کنید و راهنمائی کنید ممنون میشم

    البته از کدهای زیر استفاده کردم ولی جواب نگرفتم و بازم اطلاعات جدول حذف میشه

    Problem:
    If Err.number = 2391 Then
    "فیلدهای جدول مبدا و مقصد همخوانی ندارد" msgbox
    Exit Sub
    End If



  2. #2
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    سلام
    پیشنهاد می کنم قبل از حذف اطلاعات جدول، با دستور CopyObject یک نسخه از اون رو کپی کنید که در صورت موفق نبودن عملیات می تونید جدول اصلی رو حذف و جدول کپی رو به جای جدول اصلی Rename بکنید.(به نوعی عملیات RollBack شبیه سازی میشه).
    ..................
    موفق باشید

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  3. #3

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    سلام
    پیشنهاد می کنم قبل از حذف اطلاعات جدول، با دستور CopyObject یک نسخه از اون رو کپی کنید که در صورت موفق نبودن عملیات می تونید جدول اصلی رو حذف و جدول کپی رو به جای جدول اصلی Rename بکنید.(به نوعی عملیات RollBack شبیه سازی میشه).
    ..................
    موفق باشید
    سلام عرض ادب
    ضمن تشکر از راهنمائی و توصیه شما ، امکانش هست زحمت ی نمونه رو بکشید ؟

  4. #4
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط iransim مشاهده تاپیک
    سلام عرض ادب
    ضمن تشکر از راهنمائی و توصیه شما ، امکانش هست زحمت ی نمونه رو بکشید ؟
    لطفا شما نمونه خودتون رو بارگذاری کنید.تا روی اون نمونه اصلاحات انجام بشه.

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  5. #5

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    لطفا شما نمونه خودتون رو بارگذاری کنید.تا روی اون نمونه اصلاحات انجام بشه.
    سلام و تشکر
    نمونه برنامه خدمت شما فقط توضیح اینکه :
    1 - فایل اکسل TblProject با بانک اطلاعاتی برنامه همخوانی دارد
    2 - فایل اکسل TblProject_new با بانک اطلاعاتی همخوانی ندارد

    هدف این است که در صورت عدم همخوانی بانک مبدا و مقصد با صدور پیام مناسب از حذف اطلاعات بانک موجود و یا اضافه شدن به بانک موجود جلوگیری به عمل بیاد
    فایل های ضمیمه فایل های ضمیمه

  6. #6
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط iransim مشاهده تاپیک
    سلام و تشکر
    نمونه برنامه خدمت شما فقط توضیح اینکه :
    1 - فایل اکسل TblProject با بانک اطلاعاتی برنامه همخوانی دارد
    2 - فایل اکسل TblProject_new با بانک اطلاعاتی همخوانی ندارد

    هدف این است که در صورت عدم همخوانی بانک مبدا و مقصد با صدور پیام مناسب از حذف اطلاعات بانک موجود و یا اضافه شدن به بانک موجود جلوگیری به عمل بیاد
    سلام، یک فرم به نمونه شما اضافه کردم کنترل کنید ببینید مشکل حل شده.
    فایل های ضمیمه فایل های ضمیمه

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  7. #7

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    سلام، یک فرم به نمونه شما اضافه کردم کنترل کنید ببینید مشکل حل شده.
    سلام مجدد و عرض سپاس و تشکر دوست عزیز ، مشکل حذف شدن اطلاعات حل شد
    فقط با عرض پوزش ، چنانچه با این دکمه فایل اکسل که حاوی اطلاعات موجود در جدول هست رو مجددا فراخوانی کنیم ( هر دو جدول همخوانی و اطلاعات یکسانی دارند ) به علت تکراری بودن اطلاعات اون رو یک جدول ناهمخوان در نظر گرفته و همان پیام " جداول مبدا و مقصد همخوانی ندارند " را صادر میکند .
    امکانش هست راهنمائی کنید چطور در صورت فراخوانی جداول همخوان و با اطلاعات تکراری پیام مناسب اون صادر بشه ؟ ( مثلا پیام " اطلاعات جدول مبدا و مقصد یکسان یا تکراری می باشد . " )

    بازم ممنون و سپاسگزارم

  8. #8
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط iransim مشاهده تاپیک
    سلام مجدد و عرض سپاس و تشکر دوست عزیز ، مشکل حذف شدن اطلاعات حل شد
    فقط با عرض پوزش ، چنانچه با این دکمه فایل اکسل که حاوی اطلاعات موجود در جدول هست رو مجددا فراخوانی کنیم ( هر دو جدول همخوانی و اطلاعات یکسانی دارند ) به علت تکراری بودن اطلاعات اون رو یک جدول ناهمخوان در نظر گرفته و همان پیام " جداول مبدا و مقصد همخوانی ندارند " را صادر میکند .
    امکانش هست راهنمائی کنید چطور در صورت فراخوانی جداول همخوان و با اطلاعات تکراری پیام مناسب اون صادر بشه ؟ ( مثلا پیام " اطلاعات جدول مبدا و مقصد یکسان یا تکراری می باشد . " )

    بازم ممنون و سپاسگزارم
    سلام و صبح به خیر
    این خطا به خاطر این هست که شما در جدول TblProject فیلد ID رو از نوع اتونامبر و به شکل کلید اصلی در نظر گرفتید، برای این مورد پیشنهاد من کنترل رکورد به رکورد هست یعنی اینکه اول باید فایل اکسل باز بشه بعد فیلد ID استخراج و از جدول چک بشه در صورت موجود بودن افزودن اتفاق نمیفته و به رکورد بعدی منتقل میشه.سعی میکنم یه نمونه براتون آماده کنم.

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  9. #9

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    سلام و صبح به خیر
    این خطا به خاطر این هست که شما در جدول TblProject فیلد ID رو از نوع اتونامبر و به شکل کلید اصلی در نظر گرفتید، برای این مورد پیشنهاد من کنترل رکورد به رکورد هست یعنی اینکه اول باید فایل اکسل باز بشه بعد فیلد ID استخراج و از جدول چک بشه در صورت موجود بودن افزودن اتفاق نمیفته و به رکورد بعدی منتقل میشه.سعی میکنم یه نمونه براتون آماده کنم.
    سلام و وقت بخیر
    سپاس از لطف و پیگیری و قبول زحمت

  10. #10
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,947

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    سلام و وقت به خیر
    نمونه رو براتون آماده کردم، روال کار به این شکل هست که بعد از انتخاب فایل اکسل و باز کردن اون تعداد فیلدهای فایل اکسل با تعداد فیلدهای جدول مقایسه میشه اگر برابر بود روال ادامه پیدا میکنه در غیر اینصورت متوقف میشه.
    برای بروز رسانی ابتدا رکوردها از فایل اکسل خونده میشه اگر در جدول اکسس وجود داشت (کنترل بر اساس فیلد ID) رد میشه وگرنه به لیست باکس اضافه میشه. وقتی لیست باکس تکمیل شد با زدن دکمه بروز رسانی رکورد های استخراج شده به جدول اضافه میشه(با استفاده از رکوردست) فقط توجه داشته باشید چون کدهای ارائه شده با تکنولوژی ADO نوشته شده باید این کتابخانه رو به رفرنس برنامه اصلی خودتون اضافه کنید.
    فایل های ضمیمه فایل های ضمیمه

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  11. #11

    نقل قول: جلوگیری از حذف اطلاعات موجود جدول با شرط عدم همخوانی

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    سلام و وقت به خیر
    نمونه رو براتون آماده کردم، روال کار به این شکل هست که بعد از انتخاب فایل اکسل و باز کردن اون تعداد فیلدهای فایل اکسل با تعداد فیلدهای جدول مقایسه میشه اگر برابر بود روال ادامه پیدا میکنه در غیر اینصورت متوقف میشه.
    برای بروز رسانی ابتدا رکوردها از فایل اکسل خونده میشه اگر در جدول اکسس وجود داشت (کنترل بر اساس فیلد ID) رد میشه وگرنه به لیست باکس اضافه میشه. وقتی لیست باکس تکمیل شد با زدن دکمه بروز رسانی رکورد های استخراج شده به جدول اضافه میشه(با استفاده از رکوردست) فقط توجه داشته باشید چون کدهای ارائه شده با تکنولوژی ADO نوشته شده باید این کتابخانه رو به رفرنس برنامه اصلی خودتون اضافه کنید.
    سلام ، شبتون بخیر
    بسیار سپاسگزارم ، خیلی زحمت کشیدید ، دستتون درد نکنه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •