PDA

View Full Version : نمايش درصد پيشرفت يك sp



smakhavan
پنج شنبه 09 اردیبهشت 1389, 13:23 عصر
با سلام
چه طوري ميشه درصد پيشرفت يك sp را به صورت خروجي داشت.
يك sp دارم براي ورود داده ها از اكسل به sql كه حدود 5 تا 10 دقيقه ورود داده ها طول ميكشه (60000 رديف اطلاعات)
ميخواهم توي اينترفيس برنامه يه جوري از درصد پيشرفت به كاربر خروجي بدم تا فكر نكنه برنامه not responding شده.

AminSobati
شنبه 11 اردیبهشت 1389, 00:15 صبح
سلام دوست عزیزم،
صرف نظر از اینکه اساسا آیا راهکاری هست یا نه، چون عمل ورود اطلاعات سمت سرور انجام میشه و نمایش پیشرفت سمت کلاینت، حتی اگر بتونین بعد از ثبت هر رکورد، کلاینت رو با خبر کنید، چنین کاری رو توصیه نمیکنم چون به معنی رفت و برگشتهای متعدد بین کلاینت و سرور و نهایتا کند شدن عملیات هست.
اما در خصوص راهکار، شما میتونین در Batchهای مثلا 100تایی عمل Insert رو انجام بدین. یعنی با INSERT TOP (100) ....SELECT....FROM کار هر Batch رو انجام بدین و کلاینت رو با خبر کنید

smakhavan
شنبه 11 اردیبهشت 1389, 14:48 عصر
خيلي ممنون
1) خيلي لازم نيست كه رفت و برگشتهاي زيادي انجام بشه، يه جوري اگه بتونيم براي پيشرفت هر 10 درصد از كار يه خبري به كلاينت بديم مشكل حله، مشكل اينه كه مشتري خيلي حس خوبي نداره كه 5 دقيقه برنامه بره تو حالت خماري!!

2) چه جوري ميتونم اين كار را انجام بدم. همين پيشنهادي كه دادين را چه جوري عملي كنم. وسط يك sp چه طور مقدار برگشت بدهم.
اين جوري كه من فهميدم خود Query Analyzer هم نميتونه تخميني از درصد پيشرفت داشته باشه!