{% set pas = 2 %}{% include '_stepper.html' %} {% from '_eroare.html' import card_erori %} {# prima_inregistrare poate veni din context (web_upload_import) sau derivat din sample_rows #} {%- set prima_inreg = prima_inregistrare if prima_inregistrare is defined else (sample_rows[0] if sample_rows else none) -%}

Mapare coloane — {{ filename or ("import #" ~ import_id) }}

{% if eroare_mapare %}
{{ card_erori([eroare_mapare]) }}
{% elif message %}
{{ message }}
{% endif %}

Asociaza fiecare coloana din fisier cu campul canonic corespunzator. Maparea se retine automat pentru fisiere cu acelasi antet.

{# Tabel orizontal preview: antet + prima inregistrare (US-003) #}
{% for col in columns %} {% endfor %} {% if prima_inreg %} {% for col in columns %} {%- set val = prima_inreg.get(col, '') | string -%} {% endfor %} {% else %} {% endif %}
{{ col }}
{{ val[:40] }}{% if val | length > 40 %}…{% endif %}
Antet fara randuri de date
sau YYYY-MM-DD, MM/DD/YYYY etc.
{% for col in columns %} {%- set sugg = fuzzy_suggestions.get(col, []) -%} {%- set best = sugg[0].camp_canonic if sugg else '' -%}
{{ col }}
{% if sugg %}
sugestie: {{ sugg[0].camp_canonic }} ({{ sugg[0].score | round | int }}%)
{% endif %} {%- set ns = namespace(samples=[]) -%} {%- for row in sample_rows -%} {%- if row.get(col) is not none and row.get(col) != '' -%} {%- set ns.samples = ns.samples + [row[col] | string] -%} {%- endif -%} {%- endfor -%} {% if ns.samples %}
ex: {{ ns.samples[:2] | join(", ") }}
{% endif %}
{% endfor %}
{% if not prima_inreg %} Fisierul nu contine randuri de date — incarca un fisier cu cel putin o inregistrare. {% else %} maparea se retine pentru fisiere cu acelasi antet {% endif %}
Incarca alt fisier