ورود

View Full Version : تعريف فيلد autonumber ثابت در dbgrid



سعید صابری
شنبه 07 آذر 1388, 10:02 صبح
سلام دوستان

چگونه ميشه شماره خط ثابت در dbgrid بزارم يعني هميشه از 1 شروع باشه تا انتها. با فيلدها تغيير نكنه. منظور اينه كه مثلا اگر جدول فيلتر كنه باز اون از اول شروع كن شماره گذاري. يا جدول هر كاري كنيم اون ترتيبش بهم نخوره. تعريف كرد؟

مرسي

vcldeveloper
شنبه 07 آذر 1388, 11:23 صبح
برای همچین کاری نیاز به AutoNumber ندارید، تعریف یک فیلد Calculated که مقدار RecNo را برگرداند، کفایت میکنه. بعضی از کامپوننت های گرید مثل EhLib قابلیت نمایش شماره ردیف بطور خودکار را دارند.

mehdimdp
شنبه 07 آذر 1388, 11:31 صبح
این روش رو امتحان کن احتمالا کارتو راه بندازه
(میخوایم یه فیلد محاسباتی اضافه کنیم)
روی جدول اصلی که dbgrid رو بهش وصل کردی دوبار کلیک کن
یه پنجره کوچیک پیدا میشه روی اون راست کلیک کن و new field رو بزن
بعد در این قسمت باید یک نام دلخواه وارد کنی
و در قسمت type باید گزینه AutoInc رو انتخاب کنی
حالا بدون دستکاری بقیه گرینه ها, کلید ok رو میزنی
بعدا میتونی در dbgrid از این فیلد به عنوان فیلد ردیف استفاده کنی

سعید صابری
شنبه 07 آذر 1388, 15:53 عصر
بعضی از کامپوننت های گرید مثل EhLib قابلیت نمایش شماره ردیف بطور خودکار را دارند.

من از dbgrideh شركت ehlib استفاده كرده ام. ميشه بفرماييد كدوم كامپوننت و چگونه؟

من روش جناب mehdimdp (http://barnamenevis.org/forum/member.php?u=14175) در يك query كه فيلدهاش از دو تا table مي گيره انجام دادم موقع فعال كردن پيغام داد كه اون فيلدي را كه دستي ايجاد (به روش پست شماره 3) كردم پيدا نميكنه
Field ID not found
لطفا راهنمايي كنيد

vcldeveloper
یک شنبه 08 آذر 1388, 00:08 صبح
من از dbgrideh شركت ehlib استفاده كرده ام. ميشه بفرماييد كدوم كامپوننت و چگونه؟
همین کامپوننت dbgrideh؛ در نسخه های جدید آن ( نسخه 4.5 یا بالاتر) در OptionsEh می تونید خصوصیت dghShowRecNo را فعال کنید.

حسین شهریاری
یک شنبه 08 آذر 1388, 09:44 صبح
کدی که آقای کشاورز فرمودن اینه:

adotable.fielbyname('Calcfield').asinteger:=adotab le.RecNo
if adotable.fielbyname('Calcfield').asinteger<0 then
adotable.fielbyname('Calcfield').asinteger*(-1)

سعید صابری
یک شنبه 08 آذر 1388, 13:24 عصر
کدی که آقای کشاورز فرمودن اینه:

adotable.fielbyname('Calcfield').asinteger:=adotab le.RecNo
if adotable.fielbyname('Calcfield').asinteger<0 then
adotable.fielbyname('Calcfield').asinteger*(-1)


ممنون دوستان

مشكل بعد از ساخت Calcfield هم هست چون موقعي كه ميخوام query را فعال كنم پيغام not found ميده. ممنون ميشم در اين مورد هم راهنمايي كنيد.


چيزي كه آقاي كشاورز فرموديد روي اون حاشيه بغل شماره ميزاره كه توي پرينت نشون نميده. من مستقيم dbgrideh ميخوام پرينت بگيرم

حسین شهریاری
یک شنبه 08 آذر 1388, 14:28 عصر
ممنون دوستان

مشكل بعد از ساخت Calcfield هم هست چون موقعي كه ميخوام query را فعال كنم پيغام not found ميده. ممنون ميشم در اين مورد هم راهنمايي كنيد.


چيزي كه آقاي كشاورز فرموديد روي اون حاشيه بغل شماره ميزاره كه توي پرينت نشون نميده. من مستقيم dbgrideh ميخوام پرينت بگيرم

دوست عزیز فیلد محاسباتی از این دید که فرمودید با بقیه فیلدها فرقی نداره!!
احتمالا شما بعد از این که گزارشتونا ساختید اومدین و فیلد محاسباتی را به روش فوق ساختید. درسته؟
من نمیدونم از چه ابزاری برای گزارشگیری استفاده میکنید ولی مثلا اگه از Rave استفاده میکنید کافیه روی DataView کلیک راست کرده و Refresh را بزنید.
اگه از ابزاردیگه و یا روش دیگه ای هم استفاده میکنید بفرمایید تا راهنماییتون کنم.

موفق باشید

سعید صابری
یک شنبه 08 آذر 1388, 18:40 عصر
دوست عزیز فیلد محاسباتی از این دید که فرمودید با بقیه فیلدها فرقی نداره!!
احتمالا شما بعد از این که گزارشتونا ساختید اومدین و فیلد محاسباتی را به روش فوق ساختید. درسته؟
من نمیدونم از چه ابزاری برای گزارشگیری استفاده میکنید ولی مثلا اگه از Rave استفاده میکنید کافیه روی DataView کلیک راست کرده و Refresh را بزنید.
اگه از ابزاردیگه و یا روش دیگه ای هم استفاده میکنید بفرمایید تا راهنماییتون کنم.

موفق باشید

اصلا موضوع گزارش گيري نيست من فيلد محاسباتي روي adoquery مي سازم وقتي كه مي خوام active كنم چه در زمان اجرا چه قبل از اجرا ميگه field not found (همون فيلد محاسباتي كه ساختم). ممنون ميشم راهنمايي بفرماييد

حسین شهریاری
دوشنبه 09 آذر 1388, 09:26 صبح
اگه امکان داره یه نمونه اینجا قرار بدین تا ببینم اصلا شما فیلد محاسباتی را درست ایجاد کردید یا نه؟
دوما اینکه آیا کدهایی که بالا خدمتتون نوشتم را در رویداد OnCalcField مربوط به AdoQuery نوشتید یا نه؟
و سوم اینکه اون موقعی که فیلد محاسباتی ایجاد کردید آیا نوع فیلد را Calculated قرار دادین یا نه؟

منتظر جوابتون هستم.

mehdimdp
دوشنبه 09 آذر 1388, 09:44 صبح
اصلا موضوع گزارش گيري نيست من فيلد محاسباتي روي adoquery مي سازم وقتي كه مي خوام active كنم چه در زمان اجرا چه قبل از اجرا ميگه field not found (همون فيلد محاسباتي كه ساختم). ممنون ميشم راهنمايي بفرماييد
به احتمال زياد ، فيلدي كه شما ايجاد كرده ايد از نوع data هست و نه از نوع calculate

سعید صابری
دوشنبه 09 آذر 1388, 10:33 صبح
به احتمال زياد ، فيلدي كه شما ايجاد كرده ايد از نوع data هست و نه از نوع calculate
بله از نوع calculate كه استفاده مي كنم پيغام ميده كه شما نميتونيد از calculate يا lookup استفاده كنيد

سعید صابری
دوشنبه 09 آذر 1388, 11:27 صبح
ممنون دوست عزيز

يه نمونه آپلود مي كنم. البته با اكسس و ado. بانك من sql است و از sdac استفاده مي كنم. چون فكر كردن ممكنه sac نصب نداشته باشيد. اينجوري آپلود كردم. نگاه كنيد وقتي calcfield مي سازم ارور ميده ولي وقتي پاك مي كنيم فيلدو query فعال ميشه.

ممنون

khoshblagh
دوشنبه 09 آذر 1388, 13:09 عصر
این روش رو امتحان کن احتمالا کارتو راه بندازه
(میخوایم یه فیلد محاسباتی اضافه کنیم)
روی جدول اصلی که dbgrid رو بهش وصل کردی دوبار کلیک کن
یه پنجره کوچیک پیدا میشه روی اون راست کلیک کن و new field رو بزن
بعد در این قسمت باید یک نام دلخواه وارد کنی
و در قسمت type باید گزینه AutoInc رو انتخاب کنی
حالا بدون دستکاری بقیه گرینه ها, کلید ok رو میزنی
بعدا میتونی در dbgrid از این فیلد به عنوان فیلد ردیف استفاده کنی
با سلام .
من همین کار را انجام دادم ولی پیام زیر نمایش داده شده

Can not be a calculate or lookup field.

متشکرم.

حسین شهریاری
دوشنبه 09 آذر 1388, 13:14 عصر
سلام
کد شما را کنترل کردم فیلد id را پاک کردم و دوباره ایجاد کردم حل شد.
البته نمیدونم فیلد آخر شما چی بود که اونم که حذف کردم مشکل کاملا حل شد.
فکر کنم اون یه فیلد لوکاپ بود که شما احتمالا توی ساختنش اشتباه کرده بودید.پیشنهاد میکنم فیلد لوکاپتونا حذف کنید،فیلد id را هم حذف کنید و ابتدا فیلد id را مجددا از نوع calculate ایجاد و کد مربوطه را درون رویداد oncalcfield بنویسید سپس وقتی که دیدید دیگه با فیلد محاسباتی مشکل ندارین بفرمایید تا مشکل فیلد لوکاپتونا هم بر طرف کنم.

موفق باشید

سعید صابری
دوشنبه 09 آذر 1388, 14:33 عصر
ممنون عالي بود
من قبلا autoinc تعريف مي كردم. اينبار integer زدم درست شد

hadisalahi2
دوشنبه 09 آذر 1388, 16:43 عصر
با سلام
من هم همین روش رورفتم . در هنگام ایجاد فیلد مشکلی نیست و اون رو اجرا میکنه ولی مقادیر بقیه فیلدهای جدولم رو که در DBGrid تعریف کردم نمایش نمیده.
من دستور زیر رو در رویداد CalcFields نوشتم البته ADoQuery



InserADO.FieldByName('AutoNumber').asinteger:=Inse rADO.RecNo;


در DBGrid هم یک فیلد با همین نام AutoNumber تعریف کردم.
میشه این مشکل رو هم رسیدگی کنید.
یا حق

حسین شهریاری
سه شنبه 10 آذر 1388, 09:22 صبح
سلام

منظور شما این هستش که فیلدهای محاسباتی دیگه ای که قبل از این تعریف کرده بودین مقادیرش نمایش داده نمیشه؟

hadisalahi2
سه شنبه 10 آذر 1388, 09:39 صبح
با سلام و تشکر
نه ، من فقط یک فیلد محاسباتی تعریف کردم ، و بقیه فیلدها رو به صورت معمولی هنگام اجرای query اتوماتیک در ستونهای DBGrid نمایش میده. البته من خودم در گرید تعریف کردم.
اون فیلدها فیلدهای معمولی هستند که با دستور Select استخراج میکنم .
موقعی که این فیلد محاسباتی رو در ADOQuery تعریف میکنم، فقط همون رو نشون میده و مقادیر بقیه فیلدها رو نشون نمیده و اصلا بقیه فیلدها رو شناسایی نمیکنه

حسین شهریاری
سه شنبه 10 آذر 1388, 10:40 صبح
جناب salahi اگه فیلد محاسباتی را حذف کنید یعنی بقیه فیلد ها مقدارشون نمایش داده مشیه و مشکل حل میشه؟
آیا نوع فیلد محاسباتیتونا integer دادید؟
آیا اصولا در زمان ایجاد فیلد محاسباتی نوع اونا Calculate انتخاب کردید؟
حالا برای اطمینان بیاین و یه بار حذفش کنید و دوباره بسازیدش ببینید چی پیش میاد؟

اگه هیچ کدوم نبود یه سورس قرار بدید تا برسی کنم

hadisalahi2
سه شنبه 10 آذر 1388, 12:08 عصر
جناب salahi اگه فیلد محاسباتی را حذف کنید یعنی بقیه فیلد ها مقدارشون نمایش داده مشیه و مشکل حل میشه؟
بله حل میشه.


آیا نوع فیلد محاسباتیتونا integer دادید؟
من وقتی که هنگام تعریف فیلد نوع اون رو Autoinc انتخاب میکنم ، هنگام اجرای Query پیغام میده که نمیتونم فیلد AutoNumber رو شناسایی کنم.
ول وقتی نوع اون رو Integer انتخاب میکنم شماره گذاری رو انجام میده ولی بقیه فیلدها رو نشون نمیده.
من فیلد رو به صورتی که در عکس نشون دادم تعریف میکنم.



حالا برای اطمینان بیاین و یه بار حذفش کنید و دوباره بسازیدش ببینید چی پیش میاد؟
با حذف و ایجاد فیلد فکر نکم ، تغییری در نتیجه نتیجه ایجاد بشه ، یعنی که نشد و فرقی هم نکرد.

عکس دوم هم اون Grid ای که اطلاعات سایر فیلدها داخلش نمایش داده نمیشه.



اگه هیچ کدوم نبود یه سورس قرار بدید تا برسی کنم
این کار رو نمیتونم انجام بدم، چون پروژه خیلی بزرگه و کلیه فرمها به فرم دیگه ای متصل هستند و از ADoQuery اون استفاده میکنند.

در ضمن لازمه توضیح بدم که ADoQury من بعد از اینکه برنامه رو اجرا میکنم ، فعال میشه نه در حالت Designe
اگه زحمتی نیست شما یک نمونه عملی بگذارید
ممنون میشم
یا علی

hadisalahi2
سه شنبه 10 آذر 1388, 12:11 عصر
البته با عرض شرمندگی باید بگم که توی اون عکس اون نوع رو Calculate انتخاب کردم ولی توی عکس اشتباها نوع Data انتخاب شده

حسین شهریاری
سه شنبه 10 آذر 1388, 13:25 عصر
در ضمن لازمه توضیح بدم که ADoQury من بعد از اینکه برنامه رو اجرا میکنم ، فعال میشه نه در حالت Designe

دوست عزیز فکر کنم دلیل همین باشه که فرمودین!
اگه درست متوجه شده باشم ADoQury شما بعد از اجرای برنامه و بصورت داینامیک ساخته میشه درسته؟فکر کنم مشکل همین باشه!

اگه براتون مقدوره این کارا بصورت استاتیک(در حالت Design) انجام بدین.
برام جالب بود لطف کن اگه تونستی حلش کنی منا هم بی خبر نزار!!

موفق باشید

سعید صابری
سه شنبه 10 آذر 1388, 14:21 عصر
فكر كنم اگه با كد نويسي انجام بديم مشكل حل بشم. يعني در زمان اجراي برنامه كه ديگه حالت Design نداريم يكي يكي فيلدها را اد كنيم. يا بايد راهي پيدا كنيم با دستور select معرفيش كنيم. يا بوسيله كدنويسي يكي يكي فيلدها را اد كنيم

hadisalahi2
سه شنبه 10 آذر 1388, 16:15 عصر
گه درست متوجه شده باشم ADoQury شما بعد از اجرای برنامه و بصورت داینامیک ساخته میشه درسته؟فکر کنم مشکل همین باشه!
نه درست نیست. من خود Adoqury رو در حالت Design ایجاد میکنم ، ولی دستور Select و باز کردن کوئری رو در زمان اجرا انجام میدم.
چون برای من باید با یک User , Pass خاص به بانک اطلاعاتی SQl Server وصل بشه ، نمیتونم این کار رو در حالت Design انجام بدم و حتما باید باز کردن رو در حالت اجرا انجام بدم.
ممنون میشم اگه راه حلی پیشنهاد کنید
یا علی

حسین شهریاری
دوشنبه 16 آذر 1388, 09:56 صبح
یه بار در حالت طراحی کل اطلاعات را select کنین تا گرید شما براش معلوم باشه با چه فیلدهایی سر و کار داره اون موقه اگه تو حالت کد نویسی هم select کنین مشکلی پیش نمیاد.اخه خودم هم همین کارا میکنم

hadisalahi2
دوشنبه 16 آذر 1388, 20:21 عصر
یه بار در حالت طراحی کل اطلاعات را select کنین تا گرید شما براش معلوم باشه با چه فیلدهایی سر و کار داره اون موقه اگه تو حالت کد نویسی هم select کنین مشکلی پیش نمیاد.اخه خودم هم همین کارا میکنم

نه دوست عزیز مشکل حل نشد.
دوست عزیز مسئله اینه که من برای کار با تمام جداولم در همه فرم ها فقط از یک ADoQuery استفاده میکنم.
با روش شما و افزودن تمام فیلد ها به Adoquery فقط این کار برای همون جدولی که فیلدها رو براش Add کردم جواب میده و در بقیه جداول خطا میده و میگه فیلدهای اون جدول رو نمیشناسه.
اگه راه بهتری سراغ دارید ممنون میشم راهنمایی کنید.

حسین شهریاری
سه شنبه 17 آذر 1388, 09:35 صبح
سلام
البته کار شما خیلی قابل احترامه ولی رسم بر این هست که میان و یه AdoQuery توی دیتا ماژول قرار میدن برای اجرای دستوراتی نظیر Insert Into,Update,Delete که همون موقه خروجی به کاربر نشون نمیدن و باید ExecSql را برای آنها صدا بزنین.وهمچنین برای کارهایی از این قبیل که نیاز است اطلاعاتی Select نمایش داده شوند باید بطور ثابت یه َAdoquery یا Adodataset بری اون درنظر بگیرید و به یه Datasource وصلش کنید.تا معلوم باشه این َAdoquery یا Adodataset وظیفش توی برنامه چیه.
اونطورم میشه ولی برای هر بار Select برای تولید هر خروجی باید فیلدها را در Fields Editor مربوطه اضافه و حذف کنید.که خیلی زمانبر هستش.

موفق باشید

hadisalahi2
سه شنبه 17 آذر 1388, 10:43 صبح
البته کار شما خیلی قابل احترامه ولی رسم بر این هست که میان و یه AdoQuery توی دیتا ماژول قرار میدن برای اجرای دستوراتی نظیر Insert Into,Update,Delete که همون موقه خروجی به کاربر نشون نمیدن و باید ExecSql را برای آنها صدا بزنین.وهمچنین برای کارهایی از این قبیل که نیاز است اطلاعاتی Select نمایش داده شوند باید بطور ثابت یه َAdoquery یا Adodataset بری اون درنظر بگیرید و به یه Datasource وصلش کنید.تا معلوم باشه این َAdoquery یا Adodataset وظیفش توی برنامه چیه.
اونطورم میشه ولی برای هر بار Select برای تولید هر خروجی باید فیلدها را در Fields Editor مربوطه اضافه و حذف کنید.که خیلی زمانبر هستش.

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

Hadi_Fayyaz
سه شنبه 17 آذر 1388, 13:07 عصر
سلام دوستان

چگونه ميشه شماره خط ثابت در dbgrid بزارم يعني هميشه از 1 شروع باشه تا انتها. با فيلدها تغيير نكنه. منظور اينه كه مثلا اگر جدول فيلتر كنه باز اون از اول شروع كن شماره گذاري. يا جدول هر كاري كنيم اون ترتيبش بهم نخوره. تعريف كرد؟

مرسي

سلام دوست عزيز
ضمن تائيد راهكارهايي كه دوستان ارائه كردند اگه فقط ميخواي يه شماره رديف داشته باشي ميتوني بدون استفاده از فيلد محاسباتي هم اين كار رو بكني با روش زير
1- روي DBGrid دابل كليك كن و تمام فيلد هايي كه ميخواي نشون داده بشه رو اضافه كن و يه فيلد اضافي هم Add كن و كپشن اون رو هرچي دوست داري بگذار مثلا من كپشن رو Serial گذاشتم
2- روتين زير رو در OnDrawColumnCell اضافه كن

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if DataSource1.DataSet.RecNo > 0 then
begin
if Column.Title.Caption = 'Serial' then
DBGrid1.Canvas.TextOut(Rect.Left + 2, Rect.Top, IntToStr(DataSource1.DataSet.RecNo));
end;
end;

موفق باشيد

hadisalahi2
پنج شنبه 19 آذر 1388, 09:29 صبح
من كه بهترين جواب براي كارمو گرفتم. البته چقدر هم راحت.جناب Hadi_Fayyaz (http://barnamenevis.org/forum/member.php?u=120674) زحمتش كشيدند.



http://barnamenevis.org/forum/showthread.php?p=864783#post864783


توی اون پست که چیزی نبودو هنوز به نتیجه نرسیده بود. شما چطور از اون جواب گرفتید؟
پس اگه جواب گرفتید یک راه حلی برای مشکل من هم پیدا کنید یا روشش رو ذکر کنید.
یا حق

سعید صابری
پنج شنبه 19 آذر 1388, 09:41 صبح
توی اون پست که چیزی نبودو هنوز به نتیجه نرسیده بود. شما چطور از اون جواب گرفتید؟
پس اگه جواب گرفتید یک راه حلی برای مشکل من هم پیدا کنید یا روشش رو ذکر کنید.
یا حق

حق با شما بود من زود قضاوت كردم چون با من فقط اونجوري يه فيلد ساختم فكر كردم تمومه! ولي خودم حلش كردم
مشكل شما اينجوري حل ميشه!
با اين روش در زمان اجرا فيلد محساباتي بسازيد (مثل اينه كه در حالت design ساختين)

اول تعريف و ساختن فيلد در زمان اجرا


var
i:Integer;
id:TField;
begin
id:=TIntegerField.Create(adoquery1);
id.Calculated:=True;
///id.ReadOnly:=False;
id.FieldName:='number';
بعد ارتباط query با جداول (كد شما)



ADOQuery1.SQL.Clear;
adoquery1.sql.add('select * from table1');
ارتباط فيلد كه ساختيم با query



id.DataSet:=adoquery1;
فعال سازي query براي شناختن فيلدها



adoquery1.Active:=True;
adoquery1.Open;
adoquery1.FieldDefList.Update;
اضافه كردن فيلدها (معادل addallfield در حالت design)


adoquery1.Close;
for i := 0 to adoquery1.FieldDefList.Count - 1 do
with adoquery1.FieldDefList[i] do
if (DataType <> ftUnknown) and not (DataType in ObjectFieldTypes) then
CreateField(adoquery1, nil, adoquery1.FieldDefList.Strings[i]);
adoquery1.Open;
//////////////
DBGrid1.Repaint;
موفق باشين

hadisalahi2
شنبه 21 آذر 1388, 08:20 صبح
این کدها جواب نداد.دوستان کسی نظر و راه حل بهتری نداره؟

سعید صابری
شنبه 21 آذر 1388, 09:16 صبح
این کدها جواب نداد.دوستان کسی نظر و راه حل بهتری نداره؟

يك نمونه برايت ميزارم با استفاده از adoquery و dbgrid اميدوارم كارت راه بيافته.
باز هم مشكلي بود ما در خدمتيم

hadisalahi2
شنبه 21 آذر 1388, 17:05 عصر
يك نمونه برايت ميزارم با استفاده از adoquery و dbgrid اميدوارم كارت راه بيافته.
باز هم مشكلي بود ما در خدمتيم

شرمنده ولی کدت اصلا جواب نمیده.
اول اینکه با 2009 نوشتی ولی من 2007 کار میکنم
دوم اینکه با اینکه یونیت رو به یک پروژه اضافه کردم ، ولی موقع اجرا در کادر Number هیچی نمایش داده نمیشه.
یا علی

سعید صابری
شنبه 21 آذر 1388, 17:08 عصر
شرمنده ولی کدت اصلا جواب نمیده.
اول اینکه با 2009 نوشتی ولی من 2007 کار میکنم
دوم اینکه با اینکه یونیت رو به یک پروژه اضافه کردم ، ولی موقع اجرا در کادر Number هیچی نمایش داده نمیشه.
یا علی

شرمنده من فقط 2009 نصب داشتم.
خب نبايد هم چيزي بنويسه! چون من توي رويداد oncalcfield چيزي ننوشتم. اصلا هيچ جاي برنامه ما به اين فيلد مقدار نداديم. ديگه شما بستگي به نيازتون بايد مقدار بديد.

hadisalahi2
شنبه 21 آذر 1388, 17:36 عصر
شما اگه زحمتی نیست همون شماره ردیف رو در فیلد مربوطه بنویسید و روشش رو در اینجا قرار بدید.
ممنون میشم.


:لبخند:((کار را که کرد آنکه تمام کرد)):لبخند:

سعید صابری
شنبه 21 آذر 1388, 18:10 عصر
فقط لازمه توي رويداد oncalcfields اينو بنويس كاملترش توي صفحه اول همين تاپيك هست.

مجدد آپ كردم


adoquery1.fieldbyname('number').asinteger:=adoquer y.recno