Autor Thema: Abfrage auf Inhalt im Rich Text Feld  (Gelesen 6424 mal)

Offline Thunder

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 728
  • Geschlecht: Männlich
Abfrage auf Inhalt im Rich Text Feld
« am: 09.10.03 - 16:01:26 »
Hallo,

folgendes Problem. In einer Ankauf/Verkauf DB haben unsere Mitarbeiter die Möglichkeit ein Foto von dem Artikel einzustellen. Entweder als Anhang oder direkt das Bild. Ich würde gern in der ÜbersichtsAnsicht mit einem Icon verdeutlichen, daß so etwas eingestellt worden ist. Es funktioniert auch (über Formelsprache), wenn ein Anhang drin ist. Meistens stellen die User aber das Foto direkt ein, so daß es sofort zu sehen ist - macht ja auch Sinn, nur das bekomme ich leider nicht abgefragt. Gibt es da einen Trick den ich nicht kenne ?

Besten Dank schon einmal
Notes Server: 9.0.1 FP10
Workstations: 9.0.1 (ca.350)

Driri

  • Gast
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #1 am: 09.10.03 - 16:22:30 »
Hi,

mir wäre nicht bekannt, daß es da mit Formeln eine Möglichkeit gibt, das zu prüfen.

Ich würde folgendes vorschlagen :

- zusätzliches Flagfeld in die Maske
- beim Speichern des Dokuments wird geprüft, ob ein Anhang oder ein Objekt im Dokument existiert, wenn ja wird das Flagfeld auf "1" gesetzt
- in der View das Flagfeld abprüfen

Die Prüfung beim Speichern kannst Du mit Script machen :

If doc.HasEmbedded Then
   doc.Flag = "1"
End If

Offline Thunder

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 728
  • Geschlecht: Männlich
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #2 am: 09.10.03 - 16:34:56 »
Danke für die prompte Antwort.
Das mit dem Flagfeld würde ich für die Ansicht genauso machen.
Habe das Feld einfach 'Anhang' genannt und soll dann halt 1 oder 0 sein.
Das Script muß dann ja wohl in das QuerySave rein. Aber wie genau - bin Neuling in Sachen Script.
Notes Server: 9.0.1 FP10
Workstations: 9.0.1 (ca.350)

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #3 am: 09.10.03 - 16:57:44 »
Das Script muss ins QuerySave und zwischen die Zeilen, die der Designer da schon macht, machst Du folgendes:

If Source.document.HasEmbedded Then
  Source.document.Anhang = "1"
else
  Source.document.Anhang = "0"
End If
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #4 am: 09.10.03 - 17:04:10 »
ich habe es in einer meiner Datenbanken folgendermaßen gelöst

Spaltenformel:  @If ( @DocLength > 3000; 17; 0)

Mit dem Wert von Doclength musst du ein wenig rumspielen, bis es passt.

eknori
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Driri

  • Gast
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #5 am: 09.10.03 - 17:10:53 »
Hi,

das scheint nicht so trivial zu sein, mit HasEmbedded bekomme ich nicht raus, wenn da ein Benutzer ein Bild über "Erstellen"->"Bild.." reingepackt hat. Nen Dateianhang oder ein Objekt funktioniert.

Oder hab nur ich das Problem ?

@eknori :

Okay, das is natürlich schön einfach, aber dafür auch nicht besonders sicher. Wenn nen Benutzer da mal seitenweise Text reinpackt, dann kann die Doclength auch überschritten werden.

Offline Thunder

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 728
  • Geschlecht: Männlich
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #6 am: 09.10.03 - 17:20:37 »
Reicht aber für meine Bedürfnisse völlig aus.

Danke euch allen.
Notes Server: 9.0.1 FP10
Workstations: 9.0.1 (ca.350)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #7 am: 09.10.03 - 17:23:11 »
Nur so ganz auf die Schnelle:
Die bisherigen Lösungen funktionieren entweder nicht (HasEmbedded wirkt nicht bei importierten Pics, QuerySave bringt nichts, da zu diesem Zeitpunkt das RTF noch nicht im Backend gespeichert wurde, der Grössentest könnte durch andere Felder zu Verfälschungen führen)

Auch nicht ganz sicher, aber seit vier Jahren bei mir bewährt, folgender Code:

Code
Sub Queryclose (Source As Notesuidocument, Continue As Variant)
   Dim item As NotesItem
   Dim szOrgValue As String
   Dim lRTSize As Long
   
   szOrgValue = Source.Document.Anhang (0)
   
   Set item = Source.Document.GetFirstItem ("Bild")
   If item Is Nothing Then
      Source.Document.Anhang = "nein"
   Else
      lRTSize = item.ValueLength
      If lRTSize > 5000 Then
         Source.Document.Anhang = "ja"
      Else
         Source.Document.Anhang = "nein"
      End If
   End If
   
   If Source.Document.Anhang (0) <> szOrgValue Then
      Call Source.Document.Save (True, False, True)
   End If
   
End Sub

- Im QueryClose wurde das Dok ja bereits gespeichert
- es wird nur auf die Grösse des interessierenden Items geprüft (auch hier gilt wie bei eknori's Vorschlag: Mit der Grösse experimentieren ... Rund 100 Byte ist ein leeres RTF je nach Version)
- Gespeichert wird nur bei Änderungen (die im Lesemodus nicht passieren können, wenn QueryClose so erreicht wird)

HTH,
Bernhard

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #8 am: 09.10.03 - 18:02:07 »
Wenn ich das richtig lese, hast Du fürs Bild ein eigenes Feld in der Maske, das erleichtert die Sache natürlich. Tatsächlich ist es so, dass RT-Felder sich leider nicht so ohne weiteres auf ihren Inhalt überprüfen lassen.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Thunder

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 728
  • Geschlecht: Männlich
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #9 am: 09.10.03 - 18:10:58 »
Ja genau. Habe ein eigenes Feld dafür.
Die Abfrage funzt auch nur, wenn ein richtiger Anhang drin ist - kein eingefügtes Bild. Ich bin aber schon zufrieden mit der Größenabfrage-da hatte ich noch nicht dran gedacht. Ist auch schon realisiert.
Notes Server: 9.0.1 FP10
Workstations: 9.0.1 (ca.350)

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #10 am: 09.10.03 - 18:15:09 »
Ich hatte zwar die Frage an Bernhard und seinen Code gestellt. Aber für Dich heisst das, dass wahrscheinlich Bernhard hier die präziseste Lösung präsentiert hat.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Abfrage auf Inhalt im Rich Text Feld
« Antwort #11 am: 09.10.03 - 18:15:11 »
Aber Vorsicht Stolperfalle: Die Grössenabfrage des Dokuments funktioniert so lange, wie Du nur EIN RTF im Doc hast. Das mag ja heute so sein.
Und in einem jahr kommt dann jemand und fordert ein zweites RTF für PDFs mit Produktbeschreibungen. Du denkst: "He, kein Problem, ist in einer Minute erledigt!". Denkst aber nicht mehr an die Spaltenformel(n) - und auf einmal haben auch Dokumente ohne Bild, aber mit PDF im neuen Feld das Symbol ...

Kann schiefgehen, muß aber natürlich nicht.
Nur so als Tip am Rande ...

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz