Skip to content

Native Auto-Increment / Serial Number Column (Static, Non-Computed) #77

@nvavna

Description

@nvavna

Native Auto-Increment / Serial Number Column (Static, Non-Computed)

Summary
Users need a native Auto-Incrementing Integer column type (1, 2, 3...) that assigns a permanent, sequential number to every new row upon creation.
Crucial Requirement: This must be a Basic Column (stored in the database), NOT a Computed column. Current workarounds are technically impossible to use with Glide Big Tables.

Current Problem

  • The "Joined List" Limit: The standard workaround (creating a Joined List of all Row IDs -> Find Index) fails completely at scale. Creating a text string containing 25,000+ or 100,000+ Row IDs is impossible.
  • Big Table Incompatibility: While these workarounds might work for small tables (500 rows), they are fundamentally incompatible with Big Tables designed for high-volume data.
  • Human Communication Gap: The standard Row ID is a complex alphanumeric string (e.g., Kj7-L9p...). In professional workflows (Finance, Logistics), employees cannot communicate using these hashes. They need to say "Check Order #1054".

Examples/Scenarios

  • Financial Reconciliation: A company has a General Ledger with 25,000+ transactions. Accountant A finds a discrepancy and needs to tell Accountant B: "Check Line #12405, the debit doesn't match."
    • Using Row ID is impossible for verbal communication.
    • Using Joined List calculation crashes the app at this volume.
  • Ticket Systems: Simple sequential ticketing (Ticket #1, Ticket #2).

Why This Matters

  • Performance & Stability: A native stored integer is zero-latency. Computed columns trying to scan 100k rows cause timeouts.
  • Enterprise Usability: This is a basic database feature (SQL AUTO_INCREMENT) essential for large-scale data management where users need to reference specific rows by a simple number.

Suggested UX

  • New Column Type: Add "Auto Number" or "Serial ID" to the Basic Column types.
  • Settings:
    • Start Value: (e.g., Start at 1).
    • Prefix (Optional): (e.g., "INV-" results in INV-1001).
  • Behavior: When a new row is added, Glide automatically assigns the next available integer. This value is read-only and static.
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions