PDA

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



adhami
سه شنبه 25 اردیبهشت 1386, 15:35 عصر
با سلام خدمت دوستان
شاید سوالم تکراری باشه ولی هرچی جستجو کردم چیزی پیدا نکردم .
من یک فرم دارم که این فرم اطلاعاتش را از دو تیبل تامین می کند یعنی مثلا در تکست شماره پرسنلی با وارد کردن شماره پرسنلی و زدن اینتر اطلاعات مربوط به آن شماره پرسنلی در چند تکست نمایش داده می شود و حالا در یک تکست دیگه هم در همان فرم با زدن کد دیگر اطلاعات دیگه ای از بانک خوانده شود.
و درنهایت این اطلاعات در تیبل دیگری ذخیره می شوند.

می شه لطفا در این مورد به من کمک کنید . راستش گیج شده ام . چون در برخی از جاها از requery استفاده میشود و در برخی موارد هیچ اثری از آن نیست ؟

با تشکر از راهنمایی دوستان

انگوران
سه شنبه 25 اردیبهشت 1386, 16:10 عصر
اگه درست متوجه منظورتون شده باشم این حالت به خاطر ارتباطی هستش که بین جداول ایجاد میشه .

adhami
سه شنبه 25 اردیبهشت 1386, 16:29 عصر
با تشکر از پاسخ شما

شما به چه صورت فرم را ایجادکردید که به همه فیلدها لینک است ؟

انگوران
چهارشنبه 26 اردیبهشت 1386, 07:32 صبح
شما ابتدا جدول پرسنلی را ایجاد نمائید که شامل فیلد شماره پرسنلی ، نام و نام خانوادگی می باشد و فیلد شماره پرسنلی را primary key ( کلید ) قرار بدین سپس جدول دوم که شامل فیلدهای شماره پرسنلی ، تاریخ شروع ،تاریخ پایان و ... هست رو ایجاد کنید و در این جدول فیلد شماره پرسنلی باید هم نوع با فیلد شماره پرسنلی در جدول اول باشد ولی نباید کلید در نظر بگیرین . سپس از طریق منوی toold گزینه relationships جدولا رو انتخاب و فیلد شماره پرسنلی رو از جدول اول کشیده روی فیلد شماره پرسنلی از جدول دوم رها کنید به این طریق ارتباط ایجاد می شود .
حال برای ساخت فرم از طریق ویزارد عمل نموده ( create form by using wizars ) به این شکل که در کادر باز شده و در قسمت tables/queries اول جدول پرسنلی رو انتخاب و همه فیلدها رو با کلیک بر روی علامت « به سمت راست بیاورید سپس جدول دوم را انتخاب نموده و همه فیلدها غیر از فیلد شماره پرسنلی رو به سمت راست بیاورید و ادامه دهید تا فرم ایجاد شود .

adhami
چهارشنبه 26 اردیبهشت 1386, 15:11 عصر
باتشکر از شما
یک سوال دیگه برای من مطرح شده و آن این است که می تونیم از ado برای جستجو و اتصال به بانک استفاده کنیم بدو اینکه لازم باشیم از requery استفاده کنیم ؟

majid325
پنج شنبه 27 اردیبهشت 1386, 13:31 عصر
باتشکر از شما
یک سوال دیگه برای من مطرح شده و آن این است که می تونیم از ado برای جستجو و اتصال به بانک استفاده کنیم بدو اینکه لازم باشیم از requery استفاده کنیم ؟
جواب شما مثبت هست. اگه همین جا سرچ کنی مطالب زیادی راجع به unbound کار کردن مطرح شده.

adhami
شنبه 29 اردیبهشت 1386, 11:16 صبح
با تشکر از شما
لطفا به من بگویید اشکال این کد نویسی چیه ؟

majid325
شنبه 29 اردیبهشت 1386, 14:24 عصر
این قسمت از کد رو به صورت زیر تغییر بده.

Do Until rst.EOF
Text0 = rst.Fields(0).Value
Text2 = rst.Fields(1).Value
Text4 = rst.Fields(2).Value
Text6 = rst.Fields(3).Value

rst.MoveNext
Loop

حالا حلقه این وسط چیکار میکنه؟

adhami
یک شنبه 30 اردیبهشت 1386, 14:38 عصر
حالا حلقه این وسط چیکار میکنه؟

با تشکر از پاسخ شما

گفتم با حلقه اگر دو رکورد با شماره پرسنلی مورد نظر وجود داشته باشد با استفاده از حلقه آخرین رکورد را مد نظر قرار بده .
که البته احتیاج نداشت.

lililili
شنبه 02 تیر 1386, 09:37 صبح
با سلام
من یک برنامه دارم با چهار table که اولی Case ها دومی Sound ها سومی keyboard ها وچهارمی جدول ساختمان مربوطه می باشد که این چهار جدول حاوی فیلد مشترکی به نام Num_computer می باشد که طبق گفته دوست ما در پست دوم من اولین Table که case می باشد و حاوی این فیلد هست را کلید اصلی قرار دادم و در بقیه جداول هر فیلدی که بعد از این فیلد می باشد را کلید قرار ذادم ولی وقتی در فرمم می خواهم اطلاعات این 4 table را ثبت کنم اولین فیلد را که پر میکنم به نام شماره کامپیوتر که مربوط به جدول case هست در بقیه textbox ها که مربوط به جداول دیگر میباشد #Name? مینویسد
سوال اول :آیا این یعنی control source اشتباه است یا record source یا در relation ها مشکل دارم ؟

سوال دوم :آیا طبق این گفته { سپس از طریق منوی tools گزینه relationships جدولا رو انتخاب و فیلد شماره پرسنلی رو از جدول اول کشیده روی فیلد شماره پرسنلی از جدول دوم رها کنید به این طریق ارتباط ایجاد می شود .}
برای جدول سوم هم فیلد num_computer را از جدول اول drag کنم یا از جدول دوم ؟ آیا اصلا فرقی می کند که دوم
باشد یا اول؟

سوال سوم :من فرمم را از طریق wizard طراحی نکردم آیا این می تواند مشکل پیغام #Name? باشد ؟

در ضمن این پروژه من حاوی 68 queries می باشد آیا Access با این تعداد مشکلی ندارد ؟

ممنون از تحمل شما.

انگوران
شنبه 02 تیر 1386, 11:12 صبح
در مورد سئوال اولتون به ارتباط بر میگرده که اگه میشد حجم برنامه رو کم می کردین و اینجا میذاشتین بهتر می شد راهنمائی کرد و شاید نیاز باشه راجع به طراحی برنامه نظر بدیم .
در مورد سئوال دوم قرار شد که فیلد num_computer در جدول اول کلید باشه و در مابقی جداول کلید نباشه پس باید از جدول اول به مابقی جداول درگ کنین .
و پاسخ سئوال سوم هم اینه که خیر، بدون ویزارد هم اگه درست انجام بدین مشکلی پیش نمیاد
و در پایان اینکه اکسس با این تعداد کویری مشکل نداره ولی اگه بتونین از امکانات اکسس خوب استفاده کنین و یا اینکه طراحی برنامه درست باشه تو برنامه شما به نظر می رسه نیاز به این تعداد کویری نباشه .

lililili
شنبه 02 تیر 1386, 12:22 عصر
تشکر از لطف شما

زمانیکه طبق گفته شما فرمم را از طریق ویزارد تکمیل می کنم وقتی که به اتمام میرسد و می خواهم view فرم را ببینم هیچ چیزی نشان نمی دهد . و وقتی تعداد فیلدهایم را کم می کنم به طوری که محدود به همان دو table اول می شود آن موقع نشان می دهد .... نمی دانم چرا ؟؟؟؟؟؟؟؟

آیا من می توانم ایمیل شما را داشته باشم تا این برنامه را برایتان بفرستم چون هر کاری می کنم از طریق این سایت نمی توانم آپلود کنم .
بی زحمت به ایمیل من cwm_araghi@yahoo.com پیغام بفرستید تا برنامه را برای شما بفرستم . یا اگر برای شما موردی نداره در همین تاپیک ایمیلتون را تایپ کنید .

بازم ممنونم .

انگوران
شنبه 02 تیر 1386, 13:33 عصر
موردی که فرمودین مربوط به ارتباط بین جدول سوم و چهارم میشه .
ایمیل من هم angouran@yahoo.com هست .
در ضمن برای اینکه برنامه رو بفرستین فرمها ، کویریها و گزارشهای اضافی رو حذف کنین اطلاعات جدول رو هم پاک کنین سپس از طریق منوی tools و database utilities گز ینه compact and repair database رو انتخاب کنین تا حجم فایل به کمتر از 1 مگابایت برسه بعدش فایل رو ارسال کنین اگه بتونین فایل رو همینجا بذارین از نظرات دیگر دوستان هم می تونین استفاده کنین .
اگه فایل رو بخواین تو این سایت بذارین باید اول فایل رو با نرم افزار winzip زیپ کنین بعدش آپلود کنین .

lililili
شنبه 02 تیر 1386, 13:50 عصر
در ضمن نظر خودتون را در مورد این برنامه و طراحی فرمها و اشکالات زیاد آن هم برایم بنویسید و password : araghi می باشد
و اشکال من در فرم FormRayane_Insert می باشد . که میخواهم اطلاعات این فرم را از 5 جدول جداگانه وارد این فرم کنم .
ممنونم.

انگوران
شنبه 02 تیر 1386, 16:24 عصر
دوست عزیز شما باید برای رفع مشکلتون یه جدول دیگه تعریف کنید با فیلدهای codesakhteman ، codecase ،codekeyboard ،codecodesound که هیچکدوم از آنها کلید نیستند و معادل این فیلدها رو در جداول مخصوص خودشون ایجاد کنین و کلید در نظر بگیرین سپس ارتباط و ساخت فرم رو انجام بدین ( فایل ضمیمه ).
و در مورد کویری نیز حداقل کاری که می تونین بکنین اینه که برای جستجوی موضوعات مختلف از یه جدول بجای اینکه برای هر موضوع یک کویری بسازین در ردیفهای مختلف یک کویری علامت گیومه را برای جستجو بذارین تا شرط or برقرار بشه و جستجو بر اساس یک موضوع یا موضوع دیگر یا ... انجام بشه و یا اینکه فرم جستجو بسازین.

lililili
یک شنبه 03 تیر 1386, 09:54 صبح
سلام خدمت شما دوست عزیز

من این فایل ضمیمه را نمی توانم ببینم .اگر ممکنه برایم mail کنید .

سوال : به نظر من نباید از شرط or استفاده کنم زیرا کسی که این برنامه را سفارش داده search روی تک تک ای فیلدها می خواهد .
ممنونم

lililili
یک شنبه 03 تیر 1386, 10:05 صبح
سوال : اگر من محتویات این پنج table را در یک table جا دهم چه اتفاقی می افتد ؟

با توجه به اینکه در هر table درحدود 20 فیلد وجود دارد و کسی که این برنامه را سفارش داده search روی تک تک ای فیلدها می خواهد از نظر شما بهترین کار چیست ؟

من نمی توانم این فایل ضمیمه را ببینم در بیشتر مواقع این پیغام که فرستادم ظاهر می شود
باتوجه به اینکه هم winzip ,winrar را دارم .
لطفا فایلهای ضمیمه را به این آدرس mail بزنید .cwm_araghi@yahoo.com

ممنونم. یک دنیا.

انگوران
یک شنبه 03 تیر 1386, 10:29 صبح
اگه mail رو دریافت نکردین به من بگین .

lililili
یک شنبه 03 تیر 1386, 10:53 صبح
خسته نباشید
این فرمی که شما نوشتید frmtotal آیا این را تبدیل کنم به فرم اصلی .یعنی فیلدهایی که درFormRayane_Insert داشتم را به این فرم اضافه کنم ؟

وآیا کاربر باید فرمی که شما طراحی کردید را پر نماید ؟یعنی باید به فیلدهایی که شما اضافه نمودید مقدار دهد ؟:متفکر:

انگوران
یک شنبه 03 تیر 1386, 12:02 عصر
بله . البته من از هر جدول دو فیلد بیشتر به این فرم اضافه نکردم که شما می تونید فیلدهای دلخواهتون رو به این فرم اضافه کنین و برای گزارش نیز از مجموع فیلدهای این جداول گزارشگیری کنین .

lililili
یک شنبه 03 تیر 1386, 12:13 عصر
آخرین سوال :شرمنده

آیا کاربر باید به فیلدهایی که شما اضافه نمودید مقدار دهد ؟ منظورم همان codesound ,codecase,codesakhteman,....
زمانیکه میخواهم رکوردی را ثبت کنم در این فرمی که شما زحمت کشیده اید و به این 4 فیلد مقدار بدهم پیغام زیر ظاهر می شود

انگوران
یک شنبه 03 تیر 1386, 16:00 عصر
خواهش میکنم دوست عزیز - شما باید به این کدها در جدول اصلی مقدار بدین مثلاً codecase در جدول کیس مقدار دهی میشه و ... و زمانی که شما می خواهید از فرم frmtotal استفاده کنین فقط کدهائی رو قبول میکنه که در جدول اصلی ثبت شده باشه و اون پیغام هم همینو میگه که شما همچین کدی تو جدول اصلی ندارین . یعنی اگه مثلاً شما کد 1000 در جدول کیس نداشته باشین و بخواین تو فرم frmtotal این کد رو وارد کنین با خطای فوق مواجه میشین . باز هم در خدمتم . البته اگه اساتید نظر دیگه ای داشته باشن خوشحال میشم بشنوم و استفاده کنم .

lililili
دوشنبه 04 تیر 1386, 06:49 صبح
پس طبق گفته شما من ابتدا باید این 4 فیلد را در جداولی که دارم پر نمایم و بعد بروم سراغ پر نمودن فرمم . ممنونم از شما دوست مهربان.

بقیه دوستان :آیا راه دیگری هم هست ؟