PDA

View Full Version : وارد کردن تاریخ در DBGrid



sima_gh7
یک شنبه 27 شهریور 1384, 13:33 عصر
من تاریخ شمسی رو به صورت 3 فیلد (روز - ماه - سال) در یک جدول در نظر گرفتم ، و حالا می خوام این سه فیلد با فرمت " روز / ماه / سال " در یکی از ستون های DBGrid نمایش داده بشه . آیا امکان این کار وجود داره ؟

m-khorsandi
یک شنبه 27 شهریور 1384, 15:28 عصر
درود
شما میتونید یک Calc Field بسازید و از اون استفاده کنید، به این صورت که روی ADOTable یا Table دوبار کلیک کنید
و بعد روی فرمی که باز میشه کلیک سمت راست کنید و از منوی باز شده گزینه New Field رو انتخاب کنید ، بعد از باز
شدن فرم New Field گزینه های Name , Type, Size رو مقداردهی کنید(مانند Data, String, 10) از بخش میانی یا
همون Field Type گزینه Calculated رو انتخاب کنید و بعد دکمه OK را بزنید.

خوب الان یه فیلد اضافه شده ، Event های فیلد جدید رو بیارید و روی OnSetText دوبار کلیک کنید، اینجا میتونید بنویسید:


Text := Table.FieldByName('Year').AsString + '/' Table.FieldByName('Month').AsString + '/' + Table.FieldByName('Month').AsString;

sima_gh7
دوشنبه 28 شهریور 1384, 07:41 صبح
من از این کد استفاده کردم ولی این error رو می ده :

left side cannot be assigned to

m-khorsandi
دوشنبه 28 شهریور 1384, 07:54 صبح
من نام Event رو اشتباه نوشتم، شما در OnGetText بنویسید.

sima_gh7
دوشنبه 28 شهریور 1384, 08:44 صبح
در متد ongettext هیچکدوم از فیلدهای جدول رو نمی شناسه

sima_gh7
دوشنبه 28 شهریور 1384, 09:41 صبح
مشکلم حل شد

sima_gh7
جمعه 01 مهر 1384, 11:16 صبح
یک مشکل دیگه :
من یک newfield به نام date با روش بالا ایجاد کردم . حالا می خوام رکوردهای مربوط به این فیلد رو در یک dblookup combobox نمایش بدم ، تا اینجا مشکلی نیست ؛ ولی وقتی تاریخ در dblookup combobox نمایش داده میشه ، هیچکدوم از item های dblookup combobox قابل انتخاب شدن نیست .البته برای فیلدهای دیگه جدول هم امتحان کردم و مشکلی نداشت ، ولی برای این فیلد جدید این مشکل پیش میاد .سوال من اینه :
1- چیکار کنم که امکان انتخاب شدن item ها وجود داشته باشه ؟
2-میخوام وقتی روی یک item دبل کلیک کردم ، کد خاصی (مربوط به همون item )اجرا بشه ؛ این کد رو در کدوم event باید بنویسم ؟

m-khorsandi
شنبه 02 مهر 1384, 08:08 صبح
میتونم بپرسم چه مقادیری برای Property های ListSource, ListField, KeyField قرار دادین؟؟

sima_gh7
شنبه 02 مهر 1384, 12:53 عصر
برای خاصیت listsource ، مقدار Datasource1 ، برای keyfield مقدار 'date' رو قرار دادم و به listfield مقداری ندادم .

m-khorsandi
شنبه 02 مهر 1384, 17:00 عصر
لطفا" برای KeyField فیلد کلید اصلی جدول رو بدید، برای ListField هم فیلدی رو بدید که میخواهید مقدار اون
در Combo نمایش داده بشه.

sima_gh7
یک شنبه 03 مهر 1384, 07:28 صبح
مرسی ، این مشکلم حل شد .
میشه در مورد قسمت دوم سوالم هم راهنمایی کنید .

میخوام وقتی روی یک item دبل کلیک کردم ، کد خاصی (مربوط به همون item )اجرا بشه ؛ چطور می تونم با استفاده از این فیلد date ، تعیین کنم که item انتخاب شده مربوط به کدوم رکورد جدوله (با توجه به اینکه فیلد date یک newfield و ترکیبی از چند فیلد جدوله )

m-khorsandi
یک شنبه 03 مهر 1384, 08:16 صبح
میتونم منظورتون رو از Item بپرسم؟

sima_gh7
یک شنبه 03 مهر 1384, 09:05 صبح
همون مقادیری که در Listbox یا Combobox قرار می گیرند .

m-khorsandi
یک شنبه 03 مهر 1384, 09:24 صبح
زمانی که شما KeyField رو تنظیم میکنید ، میتونید از مزایای اون هم استفاده کنید،
با استفاده از KeyValue مربوط به DBLookupComboBox میتونید بدست بیارید که روی کدام رکورد قرار دارید.