Das Notes Forum
HCL Notes / Domino / Diverses => Entwicklung => Thema gestartet von: smile.mon am 25.05.22 - 12:15:56
-
Servus zusammen,
gibt es eine Option, dass Leerzeichen nicht als neue Zeile interpretiert werden?
.CSV Beispieldatei mit folgendem Inhalt.
1;51110;Mannheim;StuttgarterStraße 100;EG
2;62220;Köln;Reihnuferstr.99;OG
Problem: im String "StuttgarterStraße 100" wird das Leerzeichen als neue Zeile interpretiert.
Keine Ahnung wieso. Eigentlich trivial, aber iwi für mich gerade nicht nachvollziehbar.
Client: 12.01., OS: win11
Jemand eine Idee? :)
und hier der Code:
Option Public
Option Declare
Sub Initialize
Const CS_FORM = "Test"
Dim s As New NotesSession
Dim uiws As New NotesUIWorkspace
Dim db As Notesdatabase
Dim doc As Notesdocument
Dim filenum As Integer
Dim vfilePath As Variant
Dim v1 , v2, v3 As Variant
Set db = s.currentdatabase
vFilePath = uiws.OpenFileDialog(False, "Please choose an csv file","*.csv", "c:\temp")
If Not(IsArray(vFilePath)) Then Exit Sub
filenum% = FreeFile()
Open vFilePath(0) For Input As filenum%
Do Until EOF(filenum%)
Input #filenum%, v1
Set doc = db.createdocument
Call doc.replaceItemValue("f1", v1)
Call doc.replaceItemvalue("form", CS_FORM)
Call doc.save(True,True)
Loop
Exit Sub
End Sub
-
Nur ein Verdacht:
Kann es sein, dass das Feld F1 in Deiner Maske, als Feld mit Merhfachwerten konfiguriert wurde und als Trennzeichen für Mehrfachwerte ein Leerzeichen eingestellt ist?
-
Ich vermute auch, daß das Feld F1 ein Mehrfachwerte Feld ist und das Leerzeichen als Trenner definiert ist.
Du kannst ganz einfach testen, ob der Fehler vom Skript kommt. Am einfachsten kürzt Du dafür die CSV-Datei auf eine Zeile mit einem Leerzeichen. Danach kannst Du Dir entweder im Debugger den Wert der Variablen v1 ansehen. Oder Du gibst den Inhalt mit "Print( v1 )" nach "Input #filenum%, v1" in der Statuszeile aus.
Wenn wir Recht haben, bekommst Du die komplette Zeile inkl. dem Leerzeichen angezeigt. Dann mußt Du in den Maskeneigenschaften das Leerzeichen als Trenner im Feld F1 entfernen.
-
bin von der Hilfe auf den falschen Dampfer geschickt worden. :-\
https://help.hcltechsw.com/dom_designer/11.0.1/basic/LSAZ_LINE_INPUT_LB_STATEMENT.html (https://help.hcltechsw.com/dom_designer/11.0.1/basic/LSAZ_LINE_INPUT_LB_STATEMENT.html)
When reading a multiline string from a sequential file, use the Input # statement, not the Line Input # statement.
mit line input (statt nur input) funktioniert es...