پرش به مطلب اصلی

شماره‌گذاری خودکار رکوردها

هدف​

به هر رکورد تازه‌ی یک جدول شماره‌ی مرجعی بدهید که خودش شماره می‌خورد — شماره‌ی فاکتور، شماره‌ی پرونده، کد رزرو — تا کسی مجبور نباشد شماره‌ای بسازد یا دنبال آخرین شماره‌ی به‌کاررفته بگردد.

پیش‌نیازها​

  • با نقش سازنده وارد شده‌اید و راه‌حلِ جدول باز است.

گام‌ها​

  1. جدول را باز کنید و به فیلدها بروید. جدید را انتخاب کنید.

  2. یک نام نمایشی وارد کنید، مثلاً Reference. نام منطقی خودش پر می‌شود.

  3. شماره‌ی خودکار را به‌عنوان نوع داده انتخاب کنید. کادر قالب شماره ظاهر می‌شود که از پیش با REF-{yyyy}-{SEQ:00000} پر شده، و زیر آن پیش‌نمایشی از نخستین شماره.

  4. قالب را به دلخواه تغییر دهید. هر متنی که بنویسید همان‌طور می‌ماند؛ سه گونه نشانه جایگزین می‌شوند:

    نشانهتبدیل می‌شود بهنمونه
    {SEQ}شماره‌ی بعدی417
    {SEQ:00000}شماره‌ی بعدی، پرشده با صفر به تعداد صفرهایی که نوشته‌اید00417
    {yyyy} / {yy}سال ایجاد رکورد2026 / 26
    {MM} / {dd}ماه و روز ایجاد09 / 05

    پس CR-{yyyy}-{SEQ:000000} می‌شود CR-2026-000417. پیش‌نمایش هم‌زمان با تایپ به‌روز می‌شود.

  5. ذخیره را انتخاب کنید.

فیلد را مانند هر فیلد دیگری روی فرم و در نماهای جدول بگذارید. کاربران شماره را می‌بینند اما نمی‌توانند تغییرش دهند.

پشت صحنه چه می‌گذرد​

  • شماره هنگام ذخیره‌ی رکورد داده می‌شود. روی رکورد تازه، فیلد هنگام ذخیره تخصیص می‌یابد را نشان می‌دهد؛ پس از نخستین ذخیره، شماره‌ی رکورد را.
  • هر فیلد شمارنده‌ی خودش را دارد که پایگاه داده نگه می‌دارد. دو نفر که هم‌زمان ذخیره کنند دو شماره‌ی متفاوت می‌گیرند، و شماره‌ی رکورد حذف‌شده هرگز دوباره داده نمی‌شود. پس ممکن است فاصله پیش بیاید — رکوردی حذف شده یا ذخیره‌ای پس از گرفتن شماره شکست خورده — و این عادی است.
  • کسی نمی‌تواند شماره را تایپ کند. فرم آن را فقط‌خواندنی نشان می‌دهد و پلتفرم مقداری را که درون‌برد یا اسکریپت برایش بفرستد نادیده می‌گیرد، پس هیچ دو رکوردی دستی شماره‌ی یکسان نمی‌گیرند.
  • تاریخِ درون شماره تاریخ ایجاد به وقت UTC و در تقویم میلادی است، هر تقویمی که سازنده‌ی رکورد به کار ببرد. شماره‌ی مرجع یک شناسه است و نباید به خواننده‌اش بستگی داشته باشد.
  • شمارنده همراه راه‌حل منتقل نمی‌شود. درون‌برد راه‌حل به محیطی دیگر، فیلد و قالبش را می‌آورد و آن محیط شمارش خودش را از ۱ آغاز می‌کند. محیط تولید از جایی که محیط توسعه رسیده بود ادامه نمی‌دهد.

تغییر قالب​

فیلد را انتخاب کنید و ویرایش را بزنید. قالب تازه فقط بر شماره‌ی بعدی اثر دارد: رکوردهایی که شماره دارند آن را نگه می‌دارند، چون مرجعی که کسی پیش‌تر نقل کرده نباید زیر پایش عوض شود.

رفع اشکال​

  • شماره {YYYY} یا نشانه‌ی دیگری در آکولاد را نشان می‌دهد. — آن نشانه برای قالب شناخته نیست و همان‌طور که نوشته شده مانده است. نشانه‌ها به بزرگی و کوچکی حروف حساس‌اند: سال {yyyy} است و ماه {MM}. قالب را درست کنید؛ شماره‌ی بعدی درست خواهد بود.
  • شماره‌ها جا می‌اندازند. — بالا را ببینید: رکورد حذف‌شده یا ذخیره‌ی ناموفق یک شماره را مصرف می‌کند. اگر شماره‌گذاری بی‌فاصله الزام قانونی است، رکوردها را در یک گام فرایند شماره بزنید.
  • شماره از صفرهایی که نوشتم بلندتر است. — پرکردن با صفر کمینه است نه بیشینه. یک‌میلیونمین رکورد {SEQ:00000} می‌شود 1000000، تا هرگز با رکورد پیشین برخورد نکند.

سناریوهای مرتبط​