Skip to main content
Announcements
Global Transformation Awards! Applications are now open. Submit Entry
cancel
Showing results for 
Search instead for 
Did you mean: 
MartensCPArtis
Contributor III
Contributor III

Zellen mit Zeilenumbruch aus Excel auslesen

Guten Tag, 

ich komme bei einem Sachverhalt nicht weiter. Für meine Auswertung bekomme ich von einem Dienst jede Nacht eine Excel-Datei zur Verfügung gestellt, wo Angaben in den Zellen mit Zeilenumbrüchen aufgeführt werden. Wenn ich die Tabelle in Qlik View einlese, dann wird immer nur die letzte Zeile der Zelle eingelesen, nicht der komplette Inhalt. 

Da ich keine Chance habe jeden Tag manuell die Excel-Liste umzuformatieren oder aber die Ausgabeart der Excel-Datei anzupassen, benötige ich eine Möglichkeit dieses beim Einlesen in Qlik View abzufangen. Gibt es hier eine Möglichkeit?

Labels (3)
10 Replies
marcus_sommer

Das sollte normalerweise nicht passieren. Wie wird denn darauf geprüft, welcher Inhalt sich wirklich in der geladenen Zelle befindet?

Im Standard zeigen die meisten Objekte eine einzelne Zeile an und wenn man mit der Maus drauf zeigt, gibt es ein kleines Popup, wenn nicht der komplette Inhalt in Höhe und/oder Breite angezeigt wird. Hierüber oder über die Erhöhung der anzuzeigenden Lines (Tab Präsentation), sollte der ganze Inhalt sichtbar werden.

MartensCPArtis
Contributor III
Contributor III
Author

Passiert aber leider. Weder über Zeilenhöhe, PopUp oder ähnliches werden die Daten der oberen Zeilen mit aufgeführt.

Gibt es eine Art Formatierungsmöglichkeit im Skript für mehrzeilige Textfelder oder so ähnlich?

marcus_sommer

Prüfe mal zusätzlich mit: len(MeinFeld) as FeldLänge ob es nicht doch mehr Inhalt gibt?

Ansonsten gebe noch ein paar mehr Details zu wie geladen + transformiert wird - per Load oder ODBC, als dual(), ...

MartensCPArtis
Contributor III
Contributor III
Author

Ich habe die Ursache gefunden. Wenn ich die Excel-Datei über einen direkten Laufwerkspfad abfrage, werden alle Zeilen berücksichtigt. Da ich aber gezwungen bin über die Webabfrage auf die Datei zuzugreifen, musste ich feststellen, dass bei dieser Zugriffsvariante lediglich die letzte Zeile ausgelesen wird.

marcus_sommer

Was bedeutet denn "Webabfrage"? Wo liegt die Quelle? Welcher Konnektor wird benutzt? Wie sieht das Load-Statement aus?

MartensCPArtis
Contributor III
Contributor III
Author

Die Datei wird auf einem FTP Server bereitgestellt. Die Anbindung erfolgt in Qlik View über Web-Datei und dann über Internet-Datei. Es wird in der Abfrage dadurch ein HTTP Pfad verwendet.

marcus_sommer

Bitte poste mal das komplette Load-Statement und ersetze etwaige vertrauliche Teile wie IP/URL/Filename generisch mit Server/Pfad/Datei.

MartensCPArtis
Contributor III
Contributor III
Author

LOAD Auftragsnummer,
Kundendaten,
Datum,
Day(Datum) as Tag,
Month(Datum) as Monat,
Year(Datum) as Jahr,
Week(Datum) as Woche,
Weekday(Datum) as Wochentag,
'Q' & Ceil(Month(Datum)/3) as Quartal,
Date(Monthstart(Datum), 'MMM-YYYY') as Jahrmonat,
YearName(Datum) as JahrName,
Beschreibung
FROM
[http://XXX:XXXX/XXX/Checklisten.xlsx]
(ooxml, embedded labels, table is [XXX]);

marcus_sommer

Das ist ein normaler Excel-Import über die Standard-Bibliotheken. Der jeweilige Zell-Inhalt ist faktisch beliebig - inkl. aller Sonderzeichen, wie Zeilenumbrüche. Irrelevant ist hierbei auch die Quelle - denn der Zugriff erfolgt gegen die gesamte Datei. Es sollte also nichts verloren gehen.

Deutlich wahrscheinlicher ist es daher, dass dieser Inhalt gar nicht in der Datei enthalten ist. Das mag jetzt komisch klingen, aber eine per Excel Desktop Client generierte bzw. gespeicherte Datei, ist nicht zwingend identisch mit einer Excel Online generierten Datei und/oder über irgendwelche Dritt-Tools exportierten Dateien - und die direkte Online-Sicht im Browser ist nochmal was anderes. OOXML - sofern überhaupt vollständig und korrekt implementiert - bietet hier durchaus verschiedene Varianten ...

Bevor man versucht hier tiefer einzutauchen, schaue mal rauskommt, bei:

...
text(Beschreibung) as a,
len(Beschreibung) as b,
replace(replace(Beschreibung, chr(10), ' X1 '), chr(13), ' X2') as c
substringcount(Beschreibung, chr(10)) as d
...

Ergeben sich hieraus Hinweise, dass doch mehr Inhalt und hier auch Zeilenumbrüche vorhanden sind?