سلام خدمت دوستان عزيز؛
يه برنامه نوشته شده كه چندين كاربر با سطح دسترسي هاي مختلف داره، بانك اطلاعاتيش كه SQL2000 هست تو يه سروري Attach هست و كاربران connection مربوط به ado رو اون كامپيوتري كه sql داره وارد ميكنن... از عنصرهاي ADOconnection, ADOtable, ADOqouery استفاده شده تو كل برنامه براي ارتباط با بانك. در ابتداي برنامه ADOconnection فعال ميشه و LoginForm ظاهر ميشه، كاربر مشخصات ورود به سيستم رو ميده و بعد تو يه فرم ديگه تمام جداول بانك اطلاعاتي باز ميشه، حدود 30 تا جدول.
چندتا مسئله واسم پيش اومده، از دوستاي عزيز خواهش ميكنم كمك كنن، پيپاپيش ممنون از لطفتون...
1. آيا اين كار بار شبكه رو سنگين ميكنه؟ (باز كردن تمامي جدولها در ابتداي برنامه)
2. وقتي همه كاربرا، برنامه شونو اجرا ميكنن، وقتي يكيشون عمليات درج توي بانك رو انجام ميده بقيه سيستم ها متوجه نميشن!
براي مثال توي يه دكمه نوشتم كه بره آخرين ID رو از جدول بخونه و يه دونه بهش اضافه كنه تا ID جديد بدست بياد، وقتي يه كاربري يه مقداري رو درج ميكنه، كاربر ديگه وقتي ميخواد درج كنه پيغام خطلاي PrimeyKey ميده، يعني با اينكه ميگم دوباره بره بانك رو بخونه و چك كنه، اما متوجه نميشه!
وقتي قبل از خوندن ID از جدول مربوطه، ADOtable رو Close و Open ميكنم درست ميشه! با Refresh حل نميشه! اين واقعا بايد همين كارو كرد؟! يعني هربار بانك رو بست و دوباره باز كرد؟!
ميشه كسايي كه تو اين زمينه كار كردن و جواب گرفتن، يه راه حل منطقي و درست پيش روم بزارن.
:: تشكر ::