import improvements
This commit is contained in:
@@ -556,52 +556,88 @@ analytics-result-meta-truncated = { $rows ->
|
||||
# --- Import / export -------------------------------------------------------
|
||||
transfer-eyebrow = Data transfer
|
||||
import-title = Import CSV
|
||||
import-lead = Choose a browser-local file or paste CSV. Rows are validated against live table structures before gRPC bulk insertion.
|
||||
import-lead = Prepare an import in three steps: say where the data is going, say what each column of your file is, then look at the result before anything is written.
|
||||
import-scope = Scope
|
||||
import-choose-scope = Choose global or a profile
|
||||
import-target-tables = Target table
|
||||
import-choose-table = Choose a table
|
||||
import-csv-file = CSV file
|
||||
import-csv-data = CSV data
|
||||
import-csv-format-hint = Use UTF-8 CSV with a comma separator and every field in double quotes, for example: "name","number","active"
|
||||
import-csv-format-hint = Use UTF-8 CSV with a comma separator and every field in double quotes, for example: "Acme","12345678","true"
|
||||
import-source-mode = How the source is laid out
|
||||
import-source-header = The file has a header row
|
||||
import-source-data = The file is data only
|
||||
import-source-template = Generate an empty template
|
||||
import-source-mode-hint = This is always your answer, never a guess. A real data row can hold words that read exactly like column names, so nothing here decides on its own whether the first row is a header.
|
||||
import-continue = Continue
|
||||
import-carried = Importing into { $table } in { $scope }.
|
||||
import-error-title = Could not import CSV
|
||||
import-import-rows = Import rows
|
||||
import-import-rows = Import prepared data
|
||||
import-success-title = Import complete
|
||||
import-success-message = Inserted { $inserted ->
|
||||
[one] { $inserted } record
|
||||
*[other] { $inserted } records
|
||||
} from { $source_rows ->
|
||||
[one] { $source_rows } CSV row
|
||||
*[other] { $source_rows } CSV rows
|
||||
} across { $table_count ->
|
||||
[one] { $table_count } table
|
||||
*[other] { $table_count } tables
|
||||
[one] { $inserted } row
|
||||
*[other] { $inserted } rows
|
||||
} into { $table }, from { $source_rows ->
|
||||
[one] { $source_rows } prepared row
|
||||
*[other] { $source_rows } prepared rows
|
||||
}.
|
||||
|
||||
# --- Step 2a: mapping ------------------------------------------------------
|
||||
import-mapping-heading = Send each position to a column of { $table }
|
||||
import-mapping-hint = Values are placed by position, not by name. A source name is shown only so you can tell the positions apart; it decides nothing. A position left on Ignore is not imported, and a column not chosen here is left to the table.
|
||||
import-mapping-rows = The file holds { $rows } data rows.
|
||||
import-th-position = Position
|
||||
import-th-source-name = Source name
|
||||
import-th-example = Example value
|
||||
import-th-destination = Send to
|
||||
import-destination-ignore = Ignore
|
||||
import-back-to-source = Back to the source
|
||||
import-to-preview = Prepare and preview
|
||||
|
||||
# --- Step 2b: template generator -------------------------------------------
|
||||
import-template-heading = Build a template for { $table }
|
||||
import-template-hint = Tick the columns the file should contain and arrange them in the order you want to fill them in.
|
||||
import-th-order = Order
|
||||
import-th-include = Include
|
||||
import-required-column = required
|
||||
import-template-generated = The header this generates:
|
||||
import-template-nothing-chosen = Tick at least one column.
|
||||
import-template-round-trip = Fill this in elsewhere, then bring it back with "The file has a header row" selected. Because these are the table's own column names, every position will already be pointed at the right column for you to confirm.
|
||||
import-download-template = Download template
|
||||
|
||||
# --- Step 3: preview -------------------------------------------------------
|
||||
import-preview-heading = Prepared import for { $table }
|
||||
import-summary-rows = Source rows
|
||||
import-summary-columns-used = Columns used
|
||||
import-summary-ignored = Source positions ignored
|
||||
import-summary-omitted = Destination columns omitted
|
||||
import-summary-missing-required = Not filled in by this import, and declared NOT NULL by the table: { $columns }. If those columns have no default, the server will refuse the rows.
|
||||
import-preview-more-rows = { $rows } further rows are prepared and not shown here.
|
||||
import-prepared-csv = The prepared CSV
|
||||
import-prepared-csv-hint = This is the file that gets imported, and the same file the download hands over.
|
||||
import-download-prepared = Download prepared CSV
|
||||
import-back-to-mapping = Back to the mapping
|
||||
import-move-up = Move { $name } up
|
||||
import-move-down = Move { $name } down
|
||||
|
||||
# --- Refusals --------------------------------------------------------------
|
||||
import-err-select-profile = Select a scope.
|
||||
import-err-tables-required = Select a target table.
|
||||
import-err-csv-required = Choose a CSV file or paste CSV data.
|
||||
import-err-unknown-profile = Unknown scope.
|
||||
import-err-tables-not-in-profile = The target table does not belong to the selected scope.
|
||||
import-err-missing-structure = The backend omitted a requested table structure.
|
||||
import-err-no-importable-columns = CSV has no importable columns for table '{ $table }'.
|
||||
import-err-column-not-importable = Column '{ $column }' is not importable for table '{ $table }'.
|
||||
import-err-csv-row = CSV row { $row }: { $error }
|
||||
import-err-multi-headers = Multi-table CSV needs a table-header row and a column-header row.
|
||||
import-err-first-row = The first CSV row must contain only selected table names.
|
||||
import-err-header-lengths = Table and column header rows have different lengths.
|
||||
import-err-row-width = A CSV data row has a different number of fields than the header.
|
||||
import-err-no-data-rows = CSV contains headers but no data rows.
|
||||
import-err-header-padded = Header '{ $header }' has spaces around it, so it is not the column '{ $trimmed }'. Remove them, or use “Normalize headers”.
|
||||
import-err-duplicate-header = Header '{ $header }' appears twice for the same table, so it is not clear which column the values belong to.
|
||||
import-err-column-near-match = Header '{ $header }' is not a column of table '{ $table }', but '{ $column }' is - they differ only in spacing or capitalisation. Fix the header, or use “Normalize headers” to rewrite it and see the result before importing.
|
||||
import-normalize = Normalize headers
|
||||
import-normalize-hint = Rewrites the header rows to the table's own column names. Nothing is imported - you see the changed CSV first.
|
||||
import-normalized-message = Headers rewritten. Read the CSV below before importing it.
|
||||
import-normalized-unchanged = Headers already match the table exactly; nothing was changed.
|
||||
import-system-columns = File includes system columns
|
||||
import-system-columns-hint = Tick this for a file exported with system columns. It loads as it stands: 'deleted' is written from the file, so a row that left deleted arrives deleted. 'id', 'row_revision' and 'created_at' are assigned by the server and cannot be carried over.
|
||||
import-err-system-columns-present = The file contains system columns ({ $columns }). Tick “File includes system columns” to import it as it stands, or remove those columns from the file.
|
||||
import-success-ignored-system = { $columns } are assigned by the server, so the imported rows carry new ones.
|
||||
import-err-no-importable-columns = Table '{ $table }' has no columns an import can write into.
|
||||
import-err-csv-row = Row { $row }: { $error }
|
||||
import-err-row-width = Every row must hold the same number of positions. This file starts with { $expected } and later has a row of { $found }.
|
||||
import-err-no-data-rows = The file holds no data rows.
|
||||
import-err-source-mode = Say how the source is laid out.
|
||||
import-err-template-has-no-source = A template is generated from the table, so there is no file to prepare.
|
||||
import-err-template-empty = Tick at least one column for the template.
|
||||
import-err-mapping-stale = The mapping was built for a file of { $mapped } positions and this one has { $positions }. Prepare it again.
|
||||
import-err-mapping-unknown-column = Position { $position } is pointed at '{ $column }', which is not a column this table can be imported into. The table may have changed while the form was open.
|
||||
import-err-mapping-duplicate = Two positions are pointed at '{ $column }'. A column can be filled from one position only.
|
||||
import-err-mapping-empty = Every position is set to Ignore, so there is nothing to import.
|
||||
import-err-missing-type = Missing type for column '{ $column }'
|
||||
import-err-permission = Import permission is required. A table also needs insert permission before it can be loaded.
|
||||
import-err-unterminated-quote = CSV contains an unterminated quoted value.
|
||||
|
||||
Reference in New Issue
Block a user