Ankündigung

Einklappen
Keine Ankündigung bisher.

Anhänge aus E-Mail speichern bzw. weiterverarbeiten

Einklappen
X

Anhänge aus E-Mail speichern bzw. weiterverarbeiten

Einklappen
  • Filter
  • Zeit
Alles löschen
neue Beiträge

  • Anhänge aus E-Mail speichern bzw. weiterverarbeiten

    Hallo zusammen,

    ich baue gerade eine Applikation die aus E-Mails Anhänge weiterverarbeiten soll. Allerdings scheitere ich an den
    Anhängen und finde leider auch keine Lösung für mein Problem. Mit dem Werkstattbeitrag komme ich soweit klar,
    allerdings wie verarbeite ich die Anhänge weiter?

    Code:
    import de.uplanet.lucy.server.mail.SimpleMailParser
    def msg = g_event.message
    def path = g_dirWorkflowTmp.toPath()
    def smp = SimpleMailParser.newInstance()
    def pm = smp.parseMessage(msg, path)
    
    def strFrom = pm.sender.address
    def strTo = TextUtil.listToString(pm.recipients*.address)
    def strCC = TextUtil.listToString(pm.recipientsCc*.address)
    def attachments = pm.getAttachments()
    def strHTMLContent = pm.getRawHTMLContent()
    def strPlainTextContent = pm.getPlainTextContent()
    Soweit ich es gesehen habe, kann ich die Anhänge mit
    Code:
    attachments.each {}
    durchlaufen, aber wie könnte ich diese nun zum Beispiel in einem temporären Verzeichnis wie "C:\Temp\123"
    ablegen und dann weiterverarbeiten?

    Hat jemand damit Erfahrung und kann mir hier etwas auf die Sprünge helfen?

    Vielen lieben Dank vorab!

  • #2
    Hallo blue_shift!

    Habe gerade das gleiche Problem

    Ich habe bisher folgendes, leider ohne erfolg zusammengebastelt:

    Code:
    for(attachment in attachments){
        attachment.getFile()
        FileUCHelper.copyFileToIntrexx(g_context, attachment, "6A7C09971A9340971FA646093D775219E6B9291F", maxTicketLid, false)
    }
    Ich werde mal mit deinem attachments.each testen

    Ansonsten hoff ich mal das Martin keinen Urlaub hat

    Kommentar


    • #3
      Ne der Martin hat keinen Urlaub ;-)

      Du hast da zwar die Methode getFile aufgerufen, übergibst danach aber nicht das Ergebnis dieser Methode sondern wieder das Attachment.
      Versuche es mal so:
      Code:
      for(attachment in attachments){
        def myFile = attachment.getFile()
        FileUCHelper.copyFileToIntrexx(g_context, myFile, "6A7C09971A9340971FA646093D775219E6B9291F", maxTicketLid, false)
      }

      Kommentar


      • #4
        yayyyy...

        Klappt, cool. Danke Dir!

        Kommentar


        • #5
          Morgen Martin und Michael,

          ich habe das gerade getestet und es funktioniert... bei mir legt er aber irgendwie bei mehreren Anhängen nicht
          alles ab. Ich habe mal in der Schleife noch ein attachment.getFileName() mit reingenommen um den Dateinamen
          in das Log zu schreiben. Da tauchen aber alle Anhänge auf, auch der zu übergebende Schlüssel passt.

          Eine Idee weshalb der mir nicht alles über FileUCHelper.copyFileToIntrexx verarbeitet? Ich habe auch schon in die
          Tabelle reingesehen und darin taucht etwas auf und auch der Fremdschlüssel passt zu meinem neuen Eintrag - aber
          nur einer von mehreren.

          @Martin: Ist idr da eine Limitierung bei FileUCHelper.copyFileToIntrexx bekannt?

          Kommentar


          • #6
            Hi blue_shift,

            das Problem hatte ich dann auch, es wurde immer nur ein Dokument aus dem Anhang eingespielt.

            Du musst bei


            Code:
            FileUCHelper.copyFileToIntrexx(g_context, myFile, "6A7C09971A9340971FA646093D775219E6B9291F", maxTicketLid, false)
            hinten noch ein true hängen, also


            Code:
            FileUCHelper.copyFileToIntrexx(g_context, myFile, "6A7C09971A9340971FA646093D775219E6B9291F", maxTicketLid, false, true)
            damit werden dann auch mehrere Anhänge abgelegt.

            Kommentar


            • #7
              Hi Michael,

              vielen Dank dafür! Da gibt es tatsächlich noch einen Parameter zum Anhängen... ich war schon soweit, dass mir klar war dass nur
              der letzte Eintrag hinzugefügt wird. Habe auch eine Dokumentation von Intrexx gefunden - das war aber nur eine Kompaktversion,
              da wurde das nicht erwähnt.

              Nochmals Danke

              Kommentar


              • #8
                Ich hatte das in dieser Klassenbib. von Intrexx gefunden. Musste aber auch gut graben

                Kommentar

                Lädt...
                X