نمایش نتایج 1 تا 11 از 11

نام تاپیک: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

  1. #1

    نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    سلام دوستان
    در گزارشات و همچنین در dbgrid تاریخ به صورت میلادی نشون میده آیا راهی هست که بتونم آنها رو به صورت شمسی در گزارشام و dbgrid نشون بدم ممنون میشم راهنمایی ام کنید خیلی درگیرم

  2. #2

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    بهترین راه برای نمایش تاریخ به صورت شمسی استفاده از Persian.dll هستش

    کافیه کنار فایل اجرایی برنامه قرارش بدی و از توابع زیر داخل برنامه استفاده کنی
    Function PrintDate : ShortString;
    External 'persian.dll';

    Function PrintNormal : ShortString;
    External 'persian.dll';
    فایل های ضمیمه فایل های ضمیمه

  3. #3
    کاربر دائمی آواتار hp1361
    تاریخ عضویت
    دی 1384
    محل زندگی
    تهران
    پست
    750

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    سلام

    شما می تونید در رویداد GetText فیلد بانکتون(همون فیلدی که تاریخ رو ذخیره کرده اید) دستوراتی رو بنویسید که فیلد مورد نظر به صورت دلخواه شما نمایش داده بشه.مثلا از Persian.dll که دوستمون در بالا معرفی کردن استفاده کنید و کد تغییر مقدار فیلد مورد نظر رو بنویسید.نتیجه دلخواه در زمان نمایش فیلد در DBGrid ظاهر خواهد شد.

    موفق باشیم

  4. #4

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    نقل قول نوشته شده توسط hp1361 مشاهده تاپیک
    سلام

    شما می تونید در رویداد GetText فیلد بانکتون(همون فیلدی که تاریخ رو ذخیره کرده اید) دستوراتی رو بنویسید که فیلد مورد نظر به صورت دلخواه شما نمایش داده بشه.مثلا از Persian.dll که دوستمون در بالا معرفی کردن استفاده کنید و کد تغییر مقدار فیلد مورد نظر رو بنویسید.نتیجه دلخواه در زمان نمایش فیلد در DBGrid ظاهر خواهد شد.

    موفق باشیم
    دوست عزیز 1کم راجع به این مورد توضیح بدین
    با تشکر

  5. #5
    کاربر دائمی آواتار hp1361
    تاریخ عضویت
    دی 1384
    محل زندگی
    تهران
    پست
    750

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    نقل قول نوشته شده توسط MOJTABAATEFEH مشاهده تاپیک
    دوست عزیز 1کم راجع به این مورد توضیح بدین
    با تشکر
    سلام

    کجاشو توضیح بدم؟نام رویداد که مشخصه!کاری هم که باید بکنی مشخصه! کجاشو متوجه نمیشید بگین توضیح بدم

  6. #6

    Smile نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    نقل قول نوشته شده توسط hp1361 مشاهده تاپیک
    سلام

    کجاشو توضیح بدم؟نام رویداد که مشخصه!کاری هم که باید بکنی مشخصه! کجاشو متوجه نمیشید بگین توضیح بدم
    یه خورده باهاش کار کردم طریقه ارسال به این رویداد و دریافت خروجی و نمایش در DBgrid رو بفرمایید و اینکه متغییر TEXT چکاری انجام میده؟
    فرق این رویداد با Settext چیه؟
    با تشکر

  7. #7
    کاربر دائمی آواتار hp1361
    تاریخ عضویت
    دی 1384
    محل زندگی
    تهران
    پست
    750

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    سلام

    دیتاست زمانیکه اطلاعات رو از بانک میخونه و می خواد نمایش بده مقدار فیلد مورد نظر رو در متغیر Text میریزه.حالا شما در رویداد OnGetText تعریف میکنید که چه کارهایی با مقدار Text انجام بده و در آخر چه چیزی نمایش بده.

    رویداد OnSetText هم زمانیکه مقدار یک فیلد تفییر میکنه فراخوانی میشه.مثلا اگه شما میخواهید مقدا فیلد چیزی بغیراز اون مقداری باشه که نمایش داده میشه از این رویداد استفاده می کنید.

    تنها کاری که شما میکنید اینه که در رویدادOnGetText مقدار فیلد مورد نظر رو با استفاده از همون Persian.dll تغییر بدید و در متغیرText بریزید

    چون persian .dll رو نداشتم کد رو اینطوری نوشتم


    procedure TForm1.ADOTable1DateGetText(Sender: TField; var Text: string;
    DisplayText: Boolean);
    begin
    Text:=Sender.AsString+'test';
    end;

    موفق باشیم

  8. #8

    Smile نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    نقل قول نوشته شده توسط hp1361 مشاهده تاپیک
    سلام

    دیتاست زمانیکه اطلاعات رو از بانک میخونه و می خواد نمایش بده مقدار فیلد مورد نظر رو در متغیر Text میریزه.حالا شما در رویداد OnGetText تعریف میکنید که چه کارهایی با مقدار Text انجام بده و در آخر چه چیزی نمایش بده.

    رویداد OnSetText هم زمانیکه مقدار یک فیلد تفییر میکنه فراخوانی میشه.مثلا اگه شما میخواهید مقدا فیلد چیزی بغیراز اون مقداری باشه که نمایش داده میشه از این رویداد استفاده می کنید.

    تنها کاری که شما میکنید اینه که در رویدادOnGetText مقدار فیلد مورد نظر رو با استفاده از همون Persian.dll تغییر بدید و در متغیرText بریزید

    چون persian .dll رو نداشتم کد رو اینطوری نوشتم


    procedure TForm1.ADOTable1DateGetText(Sender: TField; var Text: string;
    DisplayText: Boolean);
    begin
    Text:=Sender.AsString+'test';
    end;

    موفق باشیم
    مقدار اولیه Text که خالیه من به صورت زیر عمل کردم :
    Text:=Sender.AsString+'test';
    showmessage(text);

    نمایش پیغام هم text رو درست و طبق انتظار نشون میده ولی در dbgrid مقدار اصلی نمایش داده میشه مشکل از چیه؟

    با تشکر


  9. #9

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    کسی از این مورد استفاده نکرده؟

  10. #10
    کاربر دائمی آواتار sasan_vm
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    زاهدان
    پست
    494

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    سلام
    به نظر من بهتره تبدیل را با sql انجام بدی و به راحتی در هر query از اون استفاده کنی فارق از IDE, Compiler, Package,...
    تبدیل تاریخ ...

  11. #11

    نقل قول: نمایش تاریخ میلادی موجود در بانک sql به صورت شمسی در گزارش گیری با quickrep دردلفی

    سلام دوستان
    ببخشید امکان داره نحوه استفاده از persian.dll را توضیح بدید ؟

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •