PDA

View Full Version : سوال: ذخیره یک تقاضای پارمتری بصورت یک جدول



soroush_k12
جمعه 23 مهر 1389, 17:51 عصر
با سلام خدمت دوستان و اساتید گرامی
آیامیتوان توسط کدی نتیجه اجرای یک تقاضای پارامتری را بصورت یک جدول ذخیره کرد.
این تقاضای پارامتری در اصل برای سورس یک گزارش به کار میرود ولی من میخواهم هربار که این گزارش اجرا میگردد علاوه بر نمایش خود گزارش ، جدول دیگری ایجاد و رکوردهای این گزارش در آن جدول دیگر ذخیره گردد.
با تشکر از هفکری همه دوستان

mazoolagh
یک شنبه 25 مهر 1389, 12:28 عصر
بله - شدنی هست
کافی هست گزارش پارامتریک شما از نوع save table باشه


select * into NEWTABLE from TABLE where ...

که پارامترها رو در شرط میارین

soroush_k12
یک شنبه 25 مهر 1389, 18:08 عصر
بله - شدنی هست

کافی هست گزارش پارامتریک شما از نوع save table باشه



select * into NEWTABLE from TABLE where ...


که پارامترها رو در شرط میارین

با سلام و تشكر جناب mazoolagh
نظر شما در خصوص اين روش چيست و آيا امكان اصلاح كد آن وجو دارد؟
http://www.barnamenevis.org/forum/showthread.php?p=1129167#post1129167

mazoolagh
دوشنبه 26 مهر 1389, 12:56 عصر
راستش ساده ترین راه که نیاز به کدنویسی نداره این هست که گزارشتون رو به اکسل یا یک دیتابیس اکسس دیگه اکسپورت کنین.

اما اونچه که در کد شما دیده میشه این هست که از رخداد onformat استفاده کردین که باید از onprint استفاده کنین
البته این روش که در داخل گزارش میاین و جدول رو میسازین اصولا کار درستی نیست. حداقل دلیلش هم این هست که رکوردها فقط تا اونجا به جدول اضافه میشن که کاربر اون صفحات رو ببینه.

soroush_k12
دوشنبه 26 مهر 1389, 18:57 عصر
راستش ساده ترین راه که نیاز به کدنویسی نداره این هست که گزارشتون رو به اکسل یا یک دیتابیس اکسس دیگه اکسپورت کنین.

اما اونچه که در کد شما دیده میشه این هست که از رخداد onformat استفاده کردین که باید از onprint استفاده کنین
البته این روش که در داخل گزارش میاین و جدول رو میسازین اصولا کار درستی نیست. حداقل دلیلش هم این هست که رکوردها فقط تا اونجا به جدول اضافه میشن که کاربر اون صفحات رو ببینه.
با سلام مجدد
من كدها رو به رويداد onprint اضافه كردم و همان مشكل جديد پيش آمد كه رکوردها فقط تا اونجا به جدول اضافه میشن که کاربر اون صفحات رو ببینه. سوال من اينه كه آيا كدي وجود داره كه گزارش پس از اجرا شدن بصورت خودكار به صفحه آخر بره و دوباره برگرده به صفحه اول كه مطمئن بشيم تمام ركودها به جدول اضافه شده اند؟ اگر همچين كدي داشته باشيم مشكل كاملا حل ميشه.
در ضمن من از ركوردهاي گزارش در همين بانك ميخواهم استفاده كنم و انتقال آن به اكسل و يك بانك ديگر كمكي به من نميكند.
ممنونم از راهنمايي و توجه شما

mazoolagh
چهارشنبه 28 مهر 1389, 12:21 عصر
درستش اینه که کدنویسی رو خارج از محیط گزارش انجام بدین.
مثلا در onclick دکمه ای که قرار هست گزارش رو نشون بده کدی بنویسین که اول بیاد پارامترها رو بگیره بعد اونها رو به کوئری نوع save table پاس کنه و در آخر هم گزارش رو که سورس اون همون جدول هست باز کنه.

pmoshir
پنج شنبه 29 مهر 1389, 08:30 صبح
جناب mazoolagh
میشه یه نمونه قرار بدید؟

mazoolagh
شنبه 01 آبان 1389, 14:00 عصر
فکر نکنم نیازی به نمونه باشه چون تک تک اجزائش قبلا بحث شده
کوئری : در همین صفحه نمونه اش هست
فرم : منظور یک فرم هست که بصورت modal باز میشه و مقادیر پارامترها رو میگیره (مثلا از تاریخ تا تاریخ) و کوئری رو اجرا میکنه (docmd.runsql)
و نهایتا هم گزارش باز میشه