PDA

View Full Version : شماره فیلد جاری یک جدول فیلتر شده



فریدی
جمعه 30 مرداد 1383, 23:29 عصر
یه دستور میخوام که جدولی رو که فیلتر کردم نشون بده فیلد جاری چندمین فیلد جدوله . البته از تعداد کل فیلدهای فیلتر شده. :roll:

Mohammad S
شنبه 31 مرداد 1383, 02:02 صبح
به راحتی آب خوردن! :wink:
یک فیلد تعریف می کنی از نوع مثلا Integer‌ به نام Radif. و نوعش رو هم Calculated انتخاب می کنی (در تعریف فیلد که مشکلی نداری؟! با دابل کلیک روی شی Table یا هر شی ارتباطی دیگر). سپس در یونیت OnCalcFields این دستور رو می نویسی:

DataSet['Radif']:=Table1.RecNo;

موفق باشی :)

JavanSoft
شنبه 31 مرداد 1383, 09:01 صبح
در مورد Master/Detail ها این کد مشکل داره

Mohammad S
یک شنبه 01 شهریور 1383, 00:38 صبح
در مورد Master/Detail ها این کد مشکل داره
باید خدمت شما دوست عزیز عرض کنم که این کد با موردی که شما فرمودید مشکلی نداره اما توسط ClientDataSet. من خودم از این کد استفاده کردم، مشکلی هم ندارم. باور ندارید برناممو براتون بفرستم :wink:
این کد برای Table معمولی و در حالت عادی اگر شما عمل فیلتر را انجام دهید هم مشکل دارد (ولی در ClientDataSet نه! 8) )

JavanSoft
یک شنبه 01 شهریور 1383, 15:22 عصر
RecNoشماره ای است که توسط برخی از پایگاهها مانند پارادوکس به برنامه نویس اعلام میگردد
1) در همه پایگاهها قابل استفاده نیست
2) با حذف یک رکورد اصلاح نمی گردد

در پایگاههای M/D به ازای هر Master شماره RecNo مجددا 1 می گردد بنابر این همواره امکان تکرار آن وجود دارد مگر اینکه در ترکیب با کلید اصلی این اشکال دیده نشود که در این صورت با حذف یک رکود اشکال مشخص می گردد
پ.ن : کسی در مورد CDS صحبتی نکرده است

:?:

Mohammad S
دوشنبه 02 شهریور 1383, 04:21 صبح
در پایگاههای M/D به ازای هر Master شماره RecNo مجددا 1 می گردد بنابر این همواره امکان تکرار آن وجود دارد مگر اینکه در ترکیب با کلید اصلی این اشکال دیده نشود که در این صورت با حذف یک رکود اشکال مشخص می گردد
خوب من از این روش استفاده نمی کنم. روشی که من استفاده می کنم:
یک DBEdit می گذارم روی فرم و اونو وصل می کنم به فیلد کلید. از طرفی فیلد کلید را هم نشان نمی دهم و مخفی می کنم. حال برای انجام هر کاری از این DBEdit که خودش هم مخفی است :mrgreen: استفاده می کنم. اینجوری رکورد تکراری نداریم چون فیلد کلید اون در دسترس ما هست.

JavanSoft
دوشنبه 02 شهریور 1383, 13:08 عصر
شما را نمی دانم
اما من معمولا اینقدرها حوصله برنامه نویسی ندارم
از انجایی که بکار گیری چنین تکنیکهایی زمان + کد نویسی را بالا و امکان گسترش و دیباگ را پایین می اورد بجای اینکارها از یکسری توابع ساده استفاده می کنم

Mohammad S
سه شنبه 03 شهریور 1383, 02:25 صبح
از انجایی که بکار گیری چنین تکنیکهایی زمان + کد نویسی را بالا و امکان گسترش و دیباگ را پایین می اورد بجای اینکارها از یکسری توابع ساده استفاده می کنم
من هم قبول دارم اینو ولی بفرمایید منظورتون از توابع ساده چیه؟ میشه یک مثال بزنید؟
حالا که بحث به اینجا رسید شاید یه چیز خوب و تازه یاد گرفتیم! :wink:

فریدی
پنج شنبه 05 شهریور 1383, 17:40 عصر
بابا من میخوام یک ردیف داشته باشم که از شماره 1 شروع بشه و تا آخرین فیلد جدول ادامه پیدا کنه و اگه فیلتر هم بشه این شماره ردیف از 1 شروع بشه و تا آخرین فیلد دارای مشخصه فیلتر ادامه داشته باشه :shock:

فریدی
پنج شنبه 05 شهریور 1383, 17:41 عصر
بابا من میخوام یک ردیف داشته باشم که از شماره 1 شروع بشه و تا آخرین فیلد جدول ادامه پیدا کنه و اگه فیلتر هم بشه این شماره ردیف از 1 شروع بشه و تا آخرین فیلد دارای مشخصه فیلتر ادامه داشته باشه :shock:

Mohammad S
پنج شنبه 05 شهریور 1383, 18:15 عصر
اینجا رو ببین
http://www.barnamenevis.org/forum/viewtopic.php?t=13582