Import CSV überlange Texte
Ich importiere über eine gespeicherte CSV-Datei Datensätze in meine DB.
Wenn ich aber Datensätze mit überlange Textfeldern (z.B. 1x A4-Seite beschreiben) importiere wird die Zuordnung des gebildeten Arrey zu meinen Feldern durcheinander gebracht.
Der Import-Code ist folgender:
let id := this;
let titel := "LV importieren?";
let nachricht := "Soll ein LV aus einer CSV-Datei importiert werden?
zu beachten:
- die Struktur der Importdatei muß angepaßt sein
- es wird ein anderer Zeichensatz verwendet";
let antwortOptionen := ["Ja", "Nein"];
if dialog(titel, nachricht, antwortOptionen) = "Ja" then
if 'Ablage Import CSV-Datei LV (UTF-8)' then
let id := this.Nr;
do as server
"// Datum in Textform DD.MM.YYYY in Ninox-Datum umwandeln";
function fx_TextToDate(vDate : text) do
let vDay := number(substr(vDate, 0, 2));
let vMonth := number(substr(vDate, 3, 2));
let vYear := number(substr(vDate, 6, 4));
date(vYear, vMonth, vDay)
end;
"// Zahl in Textform in Zahl umwandeln";
function fx_Zahl(vZahl : text) do
number(replacex(vZahl, "[\,\.]", "."))
end;
"// Hier startet die eigentliche Verarbeitung des CSV-Files";
let myShareUrl := shareFile('Ablage Import CSV-Datei LV (UTF-8)');
let response := http("get", myShareUrl);
let myArray := split(text(response.result), "
");
let CntmyArray := cnt(myArray);
myArray := slice(myArray, 1, CntmyArray);
"// Aus dem bereinigtem Array werden die Daten ausgelesen und als neue Records in der Zieltabelle erstellt ";
delete Leistungsverzeichnis[Projekt = id];
for i in myArray do
let new := (create LV);
let mynewArray := split(i, ";");
new.(OZ := item(mynewArray, 0));
new.('Kurz-Info' := item(mynewArray, 1));
new.(Kurztext := item(mynewArray, 2));
new.(ME := item(mynewArray, 3));
new.(Einheitspreis := fx_Zahl(item(mynewArray, 4)));
new.(Menge := fx_Zahl(item(mynewArray, 5)));
new.(Langtext := fx_Zahl(item(mynewArray, 6))); >>>>>>>>hier sind überlange Texte enthalten<<<<<<<<<<<
new.(Projekt := id)
end
end
end
end
Antwort
Content aside
- vor 1 MonatZuletzt aktiv
- 16Ansichten
-
1
Folge bereits