Autor Thema: Probleme mit Sonderzeichen in Dateianhängen  (Gelesen 1729 mal)

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Probleme mit Sonderzeichen in Dateianhängen
« am: 28.11.12 - 08:57:02 »
Hallo Forum,

ich habe das Problem, dass Dateianhänge mit Sonderzeichen (ä,ü,ö usw.) per backend Agent vom Dominoserver die auf die Festplatte abgelegt werden sollen.
Diese Dateienanhänge mit Sonderzeichen werden aber nicht korrekt im Filesystem abgelegt.
Die Sonderzeichen werden falsch dargestellt.
Ich detache die Dateianhänge von E-Mails in ein konfiguriertes Fileverzeichnis.

Siehe Code:
Code
	.....
  ' Funktion löst alle Attachments direkt im Body Feld mit Originalnamen.
	Set rtItem = mDoc.Getfirstitem("Body")
	
	If Not rtItem Is Nothing Then
		lauf = -1
		If ( rtitem.Type = RICHTEXT ) Then
			' Wenn kein Attachment im Bodyfeld liegt, wird eine Type missmache geworfen! Bug ist der IBM gemeldet.
			On Error GoTo noAttachmentinBody
			ForAll o In rtItem.EmbeddedObjects
				On Error GoTo errhandler
				If ( o.Type = EMBED_ATTACHMENT ) Then
					Set objAttachment = Nothing
					Set objAttachment = rtItem.Getembeddedobject(o.name)
					
					lauf = lauf + 1
					
					ReDim Preserve FileArray1(1, lauf)
					FileArray1(0, lauf) = o.Name
					
					'-------------------------------------------------------------
					filename = objAttachment.Source
					OrgFilename = objAttachment.Source
					
					' Da mehrere Attachments mit gleichem Namen in Bodyfeldern möglich sind ---> 
					' Prüfen ob der Name schon im Array vorhanden ist. Wenn ja, so lange weiter suchen, 
					' bis keine fortlaufende Nummer mehr vorhanden ist. Dieser Wert wird dann übergeben.
					Dim FileExistInArray
					
					FileExistInArray = True
					fileIndex = 0
					
					Do While FileExistInArray = True
						fileIndex = fileIndex + 1
						
						' Im Array suchen
						foundFlag = False
						For a = 0 To lauf
							If FileArray1(1, a) = filename Then
								' File schon vorhanden
								foundFlag = True
								Exit For
							End If
						Next

						If foundFlag = True Then
							' Laufende Nummer im Dateinamen hochzählen
							filename = C_LeftBack(OrgFilename, ".")  +" (" + Trim(Str(fileIndex)) + ")." + C_RightBack(OrgFilename, ".")
						Else
							' Ende Do --> File noch nicht vorhanden
							FileExistInArray = False
						End If
					Loop
					'-------------------------------------------------------------				

					FileArray1(1, lauf) = filename
					Call objAttachment.ExtractFile(C_PathSeparator(filepath2 &"\" & filename))
					Call C_ALog("", 3, "files:  " + o.Name + "  (" + filename + ")", "")  
					
					' In die Liste der Attachments aufnehmen (Mit Namen der Datei wie diese im Filesystem liegt.)
					FileArray = C_AppendArray(FileArray, C_PathSeparator(filepath2 &"\" & filename), "string")
				End if			
			End ForAll
		End if
	End If
noAttachmentinBody:
....

Da das Ganze bei Test-Systemumgebungen wie Windows Server 2008 (64 Bit), Windows XP (32 Bit) und Open Suse 11.4 funktioniert, tippe ich, dass die Ursache irgendeine Systemeinstellung ist!

Kann hier jemand weiter helfen?

Domino Server:
Version 8.5.3 FP2HF25 (32 Bit)
Keine Sprachpakete installiert

Betriebssystem:
Suse Linux Enterprise Server 11 SP1 (64 Bit)
Linux 2.6.32.12-0.7 –default
Default Language: Englisch


Grüße
Bernd
Arbeite klug, nicht hart.

Driri

  • Gast
Re: Probleme mit Sonderzeichen in Dateianhängen
« Antwort #1 am: 28.11.12 - 09:28:44 »
Evtl. ist da die simpelste Lösung, die problematischen Sonderzeichen im Dateinamen einfach zu ersetzen. Das kann man via Replace ja recht einfach lösen.

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Re: Probleme mit Sonderzeichen in Dateianhängen
« Antwort #2 am: 28.11.12 - 09:41:08 »
Hallo Diri,

das wäre sicher ein Workarond!
Aber es handelt sich hier um Kundendaten die nicht einfach geändert werden dürfen.
Es kann ja schließlich auch sein, dass z.B. japanische oder schwedische Schriftzeichen im Dateinamen vorkommen.
Spätestens dann ist nichts mehr möglich mit Ersetzten usw.

Grüße
Bernd
Arbeite klug, nicht hart.

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Probleme mit Sonderzeichen in Dateianhängen
« Antwort #3 am: 28.11.12 - 09:52:44 »
Nachdem das Ganze unter Linux passiert ...

Hast Du schon mal die "locale" gecheckt? Vergleich mal den Output von "locale" auf der Linux box unter dem Domino User auf Test und Produktionssystem.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz