PDA

View Full Version : یافتن تغییرات صورت گرفته در هر سطر از گرید



programerinfonet
پنج شنبه 21 فروردین 1393, 08:50 صبح
سلام دوستان
من دو تا گرید دارم به شکل زیر :

117810
همان طور که می بینید توی گرید اول و گرید دوم یک سری تغییرات وجود دارد
گرید اول اطلاعات قبل می باشد و گرید دوم تغییرات انجام شده
حالا من باید با توجه به این داده ها تغییرات هر سطر را پیدا کنم
مثلأ سرمایه ی یک نفر افزایش یافته
سرمایه ی یک نفر کاهش یافته
یک نفر خارج شده و یک عضو جدبد وارد شده
اما نمی دونم این مقایسه را چه جوری انجام بدم
لطفأ کمکم کنید
ممنون

arash21hhhh
پنج شنبه 21 فروردین 1393, 08:57 صبح
سلام.
Dim xDataTable As DataTable = table.GetChanges()
با استفاده از این متد میشه تغییراتو فهمید و اونو داخل یه دیتا تیبل ذخیره کرد . و ...

programerinfonet
پنج شنبه 21 فروردین 1393, 10:46 صبح
میشه یکم بیشتر و واضح تر توضیح بدید ؟
table میشه کدوم دیتاتیبل ؟

hamid_hr
پنج شنبه 21 فروردین 1393, 10:58 صبح
اطلاعات گرید اول داخل دیتا بیس هستش؟
اگه بله باید یه کوئری بنویسی اطلاعات یه سطرو بفرستی و با دیتابیست مقایسه کنی بعد سه حالت پیش میاد
1 سطر تغییری نکرده
2 سطر جدید هست
3 سطر تغییراتی داشته
بعد بقیه داستان

programerinfonet
پنج شنبه 21 فروردین 1393, 10:59 صبح
نه اینا همه تو دیتاتیبله
و دو تا دیتاتیبل
اگه میشه یه راهنمایی کنید که چه جوری همین مقایسه رو انجام بدم

programerinfonet
پنج شنبه 21 فروردین 1393, 12:27 عصر
الان من دو تا دیتاتیبل دارم که ستون هاشون شبیه به هم هستند
اما سطرهاشون یکم متفاوته سطرهایی که متفاوت هستند رو چه جوری بریزم تو دیتاتیبل سوم ؟؟؟؟

aslan
پنج شنبه 21 فروردین 1393, 15:02 عصر
سلام
اگر تعداد رکوردهای هر دوتا گرید ( تیبل/دیتاتیبل / ........) برابر باشه ( یعنی حذف و اضافه نداشته باشی ) کار زیاد سختی نیست ... گرید اول را از اول تا آخر مثلا با حلقه for میخونی و در گرید دوم جستجو میکنی و ستونها را با هم مقایسه میکنی .........................
اگر تعداد رکوردها برابر نبود بایستی یک فیلد شناسایی دیگه داشته باشی تا معلوم بشه مثلا بهزاد مرادی به سیروس مرادی تبدیل شده ( اصلاح شده ) و یا حذف و اضافه ای در ردیف ها صورت گرفته است .....