Autor Thema: Validierung  (Gelesen 3449 mal)

Offline Raimund

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Validierung
« am: 13.09.02 - 08:12:59 »
Hi Entwickler,

folgendes Problem:

Habe eine Ein- und Ausgabe-Maske.
In der Eingabe-Maske habe ich Felder: _Abbildung("") und _ColWidth (Werte = no picture;original;100x100)
Im Feld _ColWidth ist als Vorgabewert "no picture".

Wenn ich im Feld _Abbildung ein Bild wähle, so soll im Feld _ColWidth die Optionsschaltfläche nicht mehr auf ""no picture" sondern "original" springen.

Habe schon einiges ausprobiert, leider ohne erfolg.

Hat jemand eine Idee?

Vielen Dank im Voraus

Gruß
Raimund
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Validierung
« Antwort #1 am: 13.09.02 - 08:18:34 »
Hi,

wie wählst du denn das Bild aus ? Wenn du es über eine Schaltfläche machst kannst du eventuelle den Code dort unterbringen.


Axel



« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Raimund

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Re: Validierung
« Antwort #2 am: 13.09.02 - 08:29:07 »
Hi,

die _Abbildung Schaltfläche ist eine Dialogliste mit der Funktion:

@DbColumn("":"NoCache"; ""; "vwFiles"; 1)
+ "|" +
@DbColumn("":"NoCache"; ""; "vwFiles"; 5)

und kein Vorgabewert.

Gruß
Raimund
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Validierung
« Antwort #3 am: 13.09.02 - 08:56:25 »
Hi,

versuch doch mal folgendes:

Setze im Feld _Abbildung die Option "Felder bei Schlüsselwortänderung aktualisieren".

Im PostRecalc-Event der Maske fügt du folgenden Code ein:

If source.document._colwidth(0) <> "no picture" Then
 source.document._colwidth = "original"
End if

Ist allerdings nur eine Idee.

Andere Alternative ist, das Feld _colwidth im Exiting - Event des Feldes _Abbildung zusetzen.

Eine Alternative, die auf jeden Fall funktionieren sollte, ist den Feldwert von _colwidth im QuerySave-Event der Maske entsprechend zu setzen.

Axel
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Raimund

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Re: Validierung
« Antwort #4 am: 13.09.02 - 09:46:49 »
Hi Axel,

vielen Dank für die Antwort.

Habe das Problem im PostRecalc-Event der Maske
so gelöst:

Sub Postrecalc(Source As Notesuidocument)
     If source.document.Abbildung(0) = "" Then
           source.document.colwidth = "no picture"
     Else
           source.document.colwidth = "original"
           
     End If
End Sub


Dabei ist es dann nicht möglich die Optionsschaltfläche auf "100x100" oder "original" zu setzen, wenn das Feld "Abbildung" leer ist

Ach ja. Die Felder dürfen dann aber nicht mit einem Unterstrich anfangen, z.B.: _Abbildung


Gruß
Raimund
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Validierung
« Antwort #5 am: 13.09.02 - 10:07:32 »
Hi,

Zitat
Dabei ist es dann nicht möglich die Optionsschaltfläche auf "100x100" oder "original" zu setzen, wenn das Feld "Abbildung" leer ist


Ist, denke ich mal ein angenehmer Nebeneffekt. Denn was macht es für einen Sinn die Auflösung (das soll doch das Feld beinhalten) einzutragen,  wenn kein Bild gewählt ist.

Zitat

Ach ja. Die Felder dürfen dann aber nicht mit einem Unterstrich anfangen, z.B.: _Abbildung


Irgendwo hab ich mal gelesen, dass man solche Felder (und auch die mit einem $) so ansprechen kann :

doc.~_Abbildung

Was auf jedenfall geht ist das: doc.GetItemValue("_Abbildung")


Axel

« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline harkpabst_meliantrop

  • Senior Mitglied
  • ****
  • Beiträge: 463
  • Geschlecht: Männlich
  • I love!
    • Heute schon gelebt?
Re: Validierung
« Antwort #6 am: 13.09.02 - 11:28:30 »
Allerdings sehe ich beim besten Willen keine Grund, sich das Leben unnötig kompliziert zu machen und Feldnamen mit Unterstrichen beginnen zu lassen. Dasselbe gilt übrgens meiner nichtwürdigen Einschätzung nach für alle Unterstriche in Feldnamen.

In Notes 5 gilt immer noch die Beschränkung der Unique Keyfile Table auf 64 kB. Alle Feldnamen zusammen dürfen nicht größer sein. Und es gibt Datenbanken, bei denen man an diese Grenze kommen kann. Jeder Unterstrich ist da einfach nur ein überflüssiges Zeichen.

Das ist schon fast so schlimm wie Feldnamen mit Punkten. Alles schon gesehen (und man kann das sogar speichern und benutzen), aber Heulen und Zähneklappern ist vorprogrammiert.

--E<:|
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Raimund

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Re: Validierung
« Antwort #7 am: 13.09.02 - 11:36:44 »
Hi,

habe auch die Feldnamen geändert.
Funktioniert aber noch nicht ganz.
Zwar wird das Feld auf "original" gesetzt, wenn ein Bild ausgewählt wurde, aber es ist dann nicht mehr möglich das Format 100x100 zu aktivieren.

Eine Idee??

Gruß
Raimund
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline harkpabst_meliantrop

  • Senior Mitglied
  • ****
  • Beiträge: 463
  • Geschlecht: Männlich
  • I love!
    • Heute schon gelebt?
Re: Validierung
« Antwort #8 am: 13.09.02 - 11:40:54 »
Was ist denn colwidth für ein Feldtyp und wie wird er gefüllt?

Ich denke, die einfachste Lösung für das Problem wäre einfach ein JavaScript, dass im onChange Event von Abbildung abläuft, und im colwidth die entsprechende Option selektiert. Ohne es ausprobiert zu haben ....

--E<:|
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline Raimund

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Re: Validierung
« Antwort #9 am: 13.09.02 - 11:46:56 »
Hi,

ColWidth ist eine Optionsschaltfläche mit den Werten:
no picture
original
100x100

Vorgabewert ist:"no picture"

Die Abfrage im PostRecalc-Event der Maske:

Sub Postrecalc(Source As Notesuidocument)
     
     
     If source.document.Abbildung(0) = "" Then
           source.document.colwidth = "no picture"
     Else
           source.document.colwidth = "original"
           
     End If
     
     
     End Sub


Habe es so versucht:
     If source.document.Abbildung(0) = "" Then
           source.document.colwidth = "no picture"
     Elseif source.document.Abbildung(0) <> "" Then
           source.document.colwidth = "100x100"
     Else
           source.document.colwidth = "original"
           
     End If

aber ohne Erfolg

Gruß
Raimund

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Validierung
« Antwort #10 am: 13.09.02 - 11:59:29 »
@harkpabst_meliantrop

Sehe ich genauso.

@Raimund

Versuchs mal so:

If source.document.Abbildung(0) = "" Then  
 source.document.colwidth = "no picture"  
Else
 If source.document.colwidth(0) = "no picture" Then
   source.document.colwidth = "original"  
 End If
End If

Müsste eigentlich funktionieren,

Axel  
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Raimund

  • Junior Mitglied
  • **
  • Beiträge: 83
  • Geschlecht: Männlich
Re: Validierung
« Antwort #11 am: 13.09.02 - 12:06:47 »
Hi,

habe es ausprobiert.
Und ... es funktioniert :)

Vielen dank

Gruß
Raimund
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz