فیلدهای تاریخ و زمان

فیلدهای تاریخ و زمان

این راهنما نشان می‌دهد چگونه با کلاس‌های فیلد تاریخ و زمان آگاه از تقویم در Aspose.Words FOSS برای .NET کار کنید — FieldDate, FieldCreateDate, FieldPrintDate، و FieldSaveDate — که پیاده‌سازی می‌کنند Word’s DATE, CREATEDATE, PRINTDATE، و SAVEDATE فیلدها به ترتیب. هر کلاس از Field و پیاده‌سازی می‌کند IFieldWithCalendar؛ برای پایه Field مدل شیء خود (به‌روزرسانی، حذف پیوند، حذف، و قالب‌بندی هر فیلد)، برای مشاهده کار با فیلدها راهنما.


چهار کلاس فیلد تاریخ و زمان

FieldDate فیلد DATE را پیاده‌سازی می‌کند. FieldCreateDate فیلد CREATEDATE را پیاده‌سازی می‌کند، که تاریخ ایجاد سند است. FieldPrintDate فیلد PRINTDATE را پیاده‌سازی می‌کند، که تاریخ آخرین چاپ سند است. FieldSaveDate فیلد SAVEDATE را پیاده‌سازی می‌کند، که تاریخ آخرین ذخیره‌سازی سند است. هر چهار کلاس زیرکلاس‌های Field هستند و IFieldCodeTokenInfoProvider و IFieldWithCalendar را پیاده‌سازی می‌کنند، بنابراین آن‌ها GetFieldCode()، Update()، Unlink()، Remove() و اعضای قالب‌بندی (Format) Field را به‌اشتراک می‌گذارند، به‌علاوه سوئیچ‌های تقویم مخصوص خود که در ادامه توضیح داده شده‌اند.


انتخاب یک تقویم غیرگرگوری

هر یک از این چهار کلاس UseLunarCalendar (bool) را برای رندر نتایج با تقویم هجری قمری یا عبری قمری، UseSakaEraCalendar (bool) برای تقویم دوره ساکا، و UseUmAlQuraCalendar (bool) برای تقویم عمر القریه فراهم می‌کند. قبل از فراخوانی Update()، ویژگی مربوطه را به true تنظیم کنید تا فیلد نتیجه خود را با استفاده از آن سیستم تقویمی به‌جای تقویم پیش‌فرض گرگوری بازمحاسبه کند.


سوئیچ Application-Format FieldDate

FieldDate علاوه بر این UseLastFormat (bool) را افشا می‌کند، که کنترل می‌کند آیا فیلد از قالبی که آخرین بار توسط برنامه میزبانی استفاده شده است وقتی یک فیلد DATE جدید وارد می‌شود، استفاده کند یا نه. FieldCreateDate، FieldPrintDate و FieldSaveDate این ویژگی را افشا نمی‌کنند.


نکات و بهترین روش‌ها

  • یک سوئیچ تقویم (UseLunarCalendar، UseSakaEraCalendar یا UseUmAlQuraCalendar) تنظیم کنید و سپس Update() را روی فیلد فراخوانی کنید — تغییر تنها ویژگی، Result را بازمحاسبه نمی‌کند.
  • فقط یک سوئیچ تقویم را برای true در یک نمونه فیلد مشخص تنظیم کنید؛ ترکیب بیش از یک سوئیچ منجر به نتیجه‌ای مبهم می‌شود.
  • استفاده کنید Field.Format (a FieldFormat، پوشش داده شده در قالب‌بندی نتیجه فیلد راهنما) همراه با این سوئیچ‌های تقویم برای کنترل تصویر قالب‌بندی عددی یا تاریخ/زمانی که بر نتیجه اعمال می‌شود.
  • کلاسی را انتخاب کنید که با معنایی که نیاز دارید مطابقت داشته باشد — FieldSaveDate و FieldPrintDate زمان‌مهرهای ثبت‌شده در سند را می‌خوانند، در حالی که FieldDate تاریخ هر زمان که فیلد به‌روز می‌شود را بازتاب می‌دهد.

مسائل رایج

مسئلهدلیلرفع
سوئیچ تقویم هیچ تأثیری بر نتیجه نمایش داده شده نداردفیلد پس از تنظیم ویژگی دوباره محاسبه نشدمتد Update() را بر روی نمونه فیلد پس از تنظیم UseLunarCalendar، UseSakaEraCalendar یا UseUmAlQuraCalendar فراخوانی کنید
UseLastFormat در FieldPrintDate یا FieldSaveDate کامپایل نمی‌شودآن ویژگی فقط در FieldDate وجود دارداز FieldDate برای رفتار application-format-follows استفاده کنید، یا Format را به‌صورت صریح بر روی کلاس‌های دیگر تنظیم کنید
نتیجه سیستم تقویم نادرستی را نشان می‌دهدبیش از یک سوئیچ تقویم روی همان فیلد به true تنظیم شده بوددر هر نمونه فیلد فقط یکی از UseLunarCalendar، UseSakaEraCalendar یا UseUmAlQuraCalendar را تنظیم کنید

FAQ

تفاوت بین FieldDate و FieldCreateDate چیست؟

FieldDate فیلد DATE را پیاده‌سازی می‌کند (هر بار که به‌روز می‌شود به تاریخ فعلی بازمحاسبه می‌شود)؛ FieldCreateDate CREATEDATE را پیاده‌سازی می‌کند (تاریخی که سند ایجاد شده است).

چگونه می‌توانم یک فیلد تاریخ را طوری تنظیم کنم که از تقویم هجری قمری استفاده کند؟

مقدار UseLunarCalendar = true را بر روی نمونه FieldDate، FieldCreateDate، FieldPrintDate یا FieldSaveDate تنظیم کنید، سپس Update() را فراخوانی کنید.

کدام یک از این چهار کلاس زمان آخرین ذخیره‌سازی سند را پیگیری می‌کند؟

FieldSaveDate، که فیلد SAVEDATE را پیاده‌سازی می‌کند.

آیا این کلاس‌ها از قالب‌بندی سفارشی تصاویر پشتیبانی می‌کنند، نه فقط سوئیچ‌های تقویم؟

بله — هر یک یک Format خاصیت (FieldFormat) به ارث‌برده از زیرساخت فیلد پایه؛ برای مشاهده قالب‌بندی نتیجه فیلد راهنما برای NumericFormat and DateTimeFormat.


API Reference خلاصه

کلاس/متدتوضیح
FieldDateفیلد DATE را پیاده‌سازی می‌کند
FieldCreateDateفیلد CREATEDATE را پیاده‌سازی می‌کند
FieldPrintDateفیلد PRINTDATE را پیاده‌سازی می‌کند
FieldSaveDateفیلد SAVEDATE را پیاده‌سازی می‌کند
UseLunarCalendarنتیجه را با استفاده از تقویم قمری هجری یا تقویم قمری عبری رندر می‌کند
UseSakaEraCalendarنتیجه را با استفاده از تقویم ساکا رندر می‌کند
UseUmAlQuraCalendarنتیجه را با استفاده از تقویم ام القریه رندر می‌کند
FieldDate.UseLastFormatاز قالبی استفاده می‌کند که آخرین بار توسط برنامه میزبانی برای فیلد جدید DATE استفاده شده بود
IFieldWithCalendarرابطی که توسط هر چهار کلاس برای نتایج فیلدهای آگاه به تقویم پیاده‌سازی شده است

همچنین ببینید:

 فارسی