Akcia číta text vo formáte CSV. Oddeľovač položiek v CSV je daný hodnotou parametra
delimiter. Súbor môže používať riadkovanie znakmi
LF (Unix formát),
CR (Mac formát) alebo
CR LF (Dos formát).
Úspešnosť operácie je indikovaná výstupným parametrom
retCodeIdent_Int. Hodnota 0 znamená úspešný import, hodnota rôzna od 0 chybu.
V závislosti od parametra
destStruct akcia importuje:
- celú štruktúru - parameter je celá lokálna štruktúra,
- stĺpec štruktúry - parameter je odkaz na stĺpec štruktúry.
Formát CSV textu je popísaný pri akcii
EXPORT_CSV_TEXT.
Pokiaľ nie je použitý identifikátor
timeMaskIdent, v položkách s absolútnym časom sa očakáva formát
"dd.mm.rrrr hh:mi:ss". Ak je použitý, import času prebieha podľa zadanej masky. V prípade že chýba
hh,
mi alebo
ss, tieto sú dopĺňané automaticky 0.
Pri importe reálnych čísel je ako oddeľovač desatinných miest akceptovaný znak "." (bodka) aj "," (čiarka).
Pri importe celých a reálnych čísel z CSV je ako oddeľovač tisícov akceptovaný znak medzera.
Ak je hodnota parametra
timeMaskIdent "" (prázdna maska), konverzia absolútneho času a reálnych hodnôt prebieha podľa nastavenia v
Regional and Language Options aktuálneho užívateľa na systémoch Windows. Pre iné operačné systémy je prázdna maska automaticky nahradená hodnotou
"dd.mm.rrrr hh:mi:ss".
V prípade konvertovania položky na typ Absolútny čas a zároveň je položka prázdny reťazec, akcia interpretuje takúto položku ako neplatnú hodnotu.
Ak je použité kľúčové slovo
TIME, predpokladá sa, že v CSV sú zapísané aj časy vzniku hodnôt (CSV má dvojnásobný počet stĺpcov).
V prípade potreby je lokálnej premennej
destStruct zmenený rozmer. Tento je daný počtom riadkov v CSV texte.
Parameter
timeZone určuje ako majú byť interpretované časové hodnoty. V prípade, že je zadaný prázdny text, sú časy interpretované ako lokálne časy. V prípade zadania názvu časovej zóny (napr. "Europe/London"), budú časy interpretované ako lokálne časy pre zadanú časovú zónu. V prípade zadania celočíselnej hodnoty, budú časy interpretované ako časy s fixným posunom voči UTC, kde zadaná hodnota parametra definuje posun voči UTC v sekundách. Z historických dôvodov sú akceptované aj hodnoty @FALSE - časy sú interpretované ako lokálne, a @TRUE - časy sú interpretované ako časy s fixným posunom 3600 sekúnd (1 hodina) voči UTC. Použitie hodnoty @TRUE sa neodporúča a generuje upozornenie pri ukladaní ESL skriptu. Odporúča sa nahradiť ju celočíselnou hodnotou.
Ak sú definované parametre
lineFrom a
lineTo, import prebieha od riadku definovaného parametrom
LineFrom po riadok
lineTo. Ak obidva parametre majú hodnotu -1, importuje sa celý CSV text.
Oddeľovač v CSV (parameter
delimiter) je možné získať volaním funkcie
%GetCSVDelimiter.