PDA

View Full Version : جستجوی یک مقدار در اکسس



mohammad61
شنبه 07 دی 1392, 10:34 صبح
بسمه تعالی
با سلام و احترام از دوستان استدعا دارم در خصوص این موضوع که میخواهم بدانم چه کار میشود کرد وقتی که یک فرم اجرا میشود بلافاصله چک کند که که فیلدی با مقداری برابر است یا خیر

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

hamid-nice
شنبه 07 دی 1392, 21:29 عصر
با سلام
شما می تواند با شمارش رکورد هایش و ذخیره در یک فیلد جدولی و چک کردن آن با تعداد رکوردها در هر بار باز کردن فرم این کار را انجام دهید
موفق باشید

hasanhzd
یک شنبه 08 دی 1392, 18:25 عصر
درود
بله میشود ولی مبنای مقایسه چیست؟

mohammad61
چهارشنبه 11 دی 1392, 09:52 صبح
نه نه دوسته من یک اشتباهی شده منظورم این نیست که آیا رکوردها زیاد شده یا نه ببینید شما دارای 10 رکورد داردی یکی از این رکوردها تغییرات دارد که در فیلد مربوطه به آن قید میشود من هم این فیلد را اجرا کردم میخواستم بدانم چطوری باید QUERY بزنم که ایتدا یک گزارش بگیرید وبعد چک کند که آیا فیلد ما که در آن مثلا عبارت تغییر دارد را دید بلافاصله اعلام کند شما دارای تغییرات هستید شکل را ببینید
رکوردیک
شماره نامه تاریخ نامه وضعیت تغییرات
123456 1392/10/10 دارد
987654 1392/10/09 ندارد
.
.
و تا آخر منظورم این است چه query بزنم که بیاید یک به یک رکوردها و سپس فیلد وضعیت تغییرات را ببینید و در صورت مساوی بودن فیلد ((وضعیت تغییرات)) بلافاصله به کاربر اعلام کند شما دارای تغییرات می باشید
بزرگواری میکنید و بنده را اهنمایی می فرمایید

hamid-nice
چهارشنبه 11 دی 1392, 13:19 عصر
نمونه بذارید

mohammad61
چهارشنبه 11 دی 1392, 14:03 عصر
حمید جان شرمنده خیلی اذیت شدی یه نمونه الان گذاشتم ببین یه تیبل داریم که یه سری اطلاعات داخلشه که ممکنه بعضیهاش دارای تغییرات باشه که در قسمت tagheerat فیلشو گذاشتم ممکنه کاربری یک نامه رو تغییر بده سوالم اینه که چهطور میشه query زد که سیستم ابتدا یک چک کلی روهمه رکوردها بزنه و روی فیلد تغییرات رو ببینه و اگر مقدار "دارد" را دید به message box ایجاد کنه و اعهلام کنه کاربر عزیز شما دارای تغییرات هستید فایلش رو هم گذاشتم

hamid-nice
چهارشنبه 11 دی 1392, 15:36 عصر
نیازی به کوئری نیست نمونه زیر را ببین
موفق باشید

mohammad61
شنبه 14 دی 1392, 08:28 صبح
مهندس دستت درد نکنه شما بی نظیری عالی بود حل شد ولی مهندس من خیلی مبتدی هستم نمیشه یخورده راحتتر میشد به جایه ایجاد کد نرم افزاری یک کوئری ایجاد میکرد!!؟؟؟ ولی مهندس کارت درسته دستت درد نکنه اگر امری بود من درخدمتم ایبلمو که داری موفق باشی 1000تا

hamid-nice
شنبه 14 دی 1392, 15:33 عصر
دوست عزیز
کدها ی زیر را جایگزین مشابه آن در فایل ضمیمه قبل کنید

For i = 0 To DCount("*", "table1")
i = CurrentRecord + 1
DoCmd.GoToRecord acActiveDataObject, , acGoTo, i

موفق باشید

mohammad61
دوشنبه 16 دی 1392, 11:02 صبح
چشم مهندس بازهم ممنونم

mohammad61
شنبه 12 بهمن 1392, 15:54 عصر
مهندس سلام یه سوال چرا وقتی از کدهای شما استفاده میکنم داخله یک پروژه دیگه این اتفاق نمی افته آیا به خاطر ارتباطی که با بقیه table های من داره (relation ship)این اتفاق می افته یا اینکه من چون دیتا بیس رو جدا کردم این مشکل پیش اومده البته من نمونه رو با اجازه شما میذارم شرمنده
ملاحظه بفرمایید که فیلد کنترل از یک جدول دیگر به نام تغییرات مرتبط شده است با جدول گزارش کار که هر دوی این جدولها در یک سرور جداگانه نگهداری میشود تصمیم داشتم وقتی کاربر وارد فرم خود میشود بلافاصله کدهای شما اجرا بشه اما متاسفانه کدهای شما فقط در نمونه ارسالی قابل اجراست ممنون میشوم محبت کرده و این حقیر را کمک کنید

hamid-nice
شنبه 12 بهمن 1392, 16:23 عصر
سلام
در فايل ضميمه شما، نمونه فايل Back End وجود نداره بنابراين هيچكدام از فايلهاتون را نتونستم باز كنم لطفا يك فايل نمونه از فايلتون به همراه فايل Back End قرار دهيد
برنامتون را هم طوري تغيير دهيد كه فايل Back End را بتونيم در درايو \:C قرار دهيم و فايل Front End را هم به آن لينك كنيد تا بتونيم فايلتان را بررسي كنيم
موفق باشيد

mohammad61
شنبه 12 بهمن 1392, 17:58 عصر
بسمه تعالی
به رویه چشم مهندس الان یه فایلی آماده کردم شبیه پروژه جسارتا توجه داشته باشید فیلد کنترل مربوط به یک جدول دیگه هستش که به جدول 1 ما ارتباط داره حالا شما توجه داشته باشید که جدولها هم در یک سرور جداگانه قرار داده شده اند یعنی دیتا بیس جداشده ممنونم مهندس
یه خرابکاری دیگه هم کردم اومدم پا تو کفش شما کنم یه مشکلی پیش اومد رفتم تو سوس کد vba نمی دونم چیکار کردم حالا هرچی میخوام vb اکسس رو بازکنم حتی قصد دارم یه فرم رو هم پاک کنم گرفتار میشم هی پیغام خطا میده مثله شکل پیوستی این روه م اگر راهنمایی کنین ممنون میشم :خجالت:

hamid-nice
یک شنبه 13 بهمن 1392, 01:17 صبح
با سلام
دستورات مشكلي ندارند مشكل از آنجاست كه اكسس با نامگذاري فارسي فيلد هايتان در فرم مشكل دارد ، پيشنهاد مي شود كه از حروف فارسي براي نام جداولتان يا فيلد ها و ... استفاده نشود و براي نمايش فارسي از caption براي فيلد ها در فرمتان استفاده كنيد تا چنين مشكلات زباني گاه و بي گاه گريبانگير تان نشود و مشكل ايجاد نكند.

درمورد اروري كه گفتيد من وارد VB فرمتان هم شدم ولي خطايي صادر نشد ممكن است كه فايلتان آسيب ديده باشد ، يك فايل جديد ايجاد كنيد و كليه آبجكتهايتان را در آن import كنيد ممكن است مشكلتان حل شود.
موفق باشيد

mohammad61
یک شنبه 13 بهمن 1392, 07:35 صبح
بسمه تعالی
مهندس خسته نباشید مورد اشکال دومم حل شد ولی مورد اول در خصوص اینکه چرا کد شما در جایه دیگری کار نمیکنه رو بررسی کردم الان نمونه ای رو که گذاشتم تماش انگلیسی هستش حتی نوشته و همه باز هم خطا میده اگر زحمتی نیست می تونید مشاهده بفرمایید

hamid-nice
یک شنبه 13 بهمن 1392, 13:46 عصر
دوست عزيز در فايل شما هنوز براي فيلد ها نام هاي فارسي وجود دارد و اصلاح نشده است !
به عنوان مثال در فرمتان بر روي فيلد سوم ( name khane ) دبل كليك كنيد تا پنجره Property sheet باز شود سپس در زبانه Other نگاه كنيد كه براي Name به فارسي نوشته ايد : نام خانوادگی
بقيه فيلد ها را هم اصلاح كنيد مشكل حل مي شود
موفق باشيد

mohammad61
یک شنبه 13 بهمن 1392, 17:02 عصر
بسمه تعالی
درود بر شما درود حق با شماست درست شد
مهندس کاملا فرمایش شما درست است و درست هم شد مهندس من برروی برنامه نویسی با فلش تسلط دارم(Action script) لذا به پاس صبور و محبتی که شما در پاسخ به سوالات ابتدایی بنده داشتید اگر امری بود چه در فروم و چه درجایی آماده همکاری میباشم موفق و موید باشید آدرس ایمیلmohammadhosseini61@gmail.com