Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Escort am 08.04.04 - 14:39:43

Titel: Problem mit @GetDocField
Beitrag von: Escort am 08.04.04 - 14:39:43
Hallo Spezialisten...

....ich habe mit @GetDocField folgendes Problem (langsam bin ich am verzweifeln).

...komischerweise liefert mir diese Funtkion nur dann einen Wert zurück, wenn das referenzierte Feld vom Typ TEXT ist?
Lt. Hilfedefinition sollte es allerdings folgende Rückgabewert liefern:
-->Text oder Textliste; Zahl oder Zahlenliste; Zeit und Datum oder Zeit- und Datumsbereich

Bsp: ich habe in einer Maske folgende Felder:
++ Laufnummer   Zahl    Berechnet Vorgabewert 1
++ Laufnummer1   Text   Berechnet Vorgabewert "1"

Ich bastle mir in einer 2. Maske eine Schaltfläche:
Click:
@Prompt([OK]; "Laufnummer"; @GetDocField(DocID;"Laufnummer"))
@Prompt([OK]; "Laufnummer1"; @GetDocField(DocID;"Laufnummer1"))

Hier liefert mir nur die 2. Funktion für das Feld Laufnummer1 den richtigen Wert, für sämtliche Zahlenfelder bekomme ich keinen Wert zurück.

Warum? Ich versteh's nicht.

Danke für Eure Hilfe
Titel: Re:Problem mit @GetDocField
Beitrag von: Glombi am 08.04.04 - 14:48:39
In Prompt darf als 2. Parameter nur Text verwendet werden. Evtl liegt das Problem da.
Titel: Re:Problem mit @GetDocField
Beitrag von: klaussal am 08.04.04 - 14:48:47
... ganz verstehen tu ich's auch nicht, wenn man die hilfe gelesen hat, abär:Gibt eine leere Zeichenfolge zurück, wenn die UNID oder der Feldname ungültig ist.

sieht so aus, als ob der rückgabewert eine zeichenfolge ist.
also: zahlenwert vorher in text umwandeln.
Titel: Re:Problem mit @GetDocField
Beitrag von: Escort am 08.04.04 - 14:56:24
... ganz verstehen tu ich's auch nicht, wenn man die hilfe gelesen hat, abär:Gibt eine leere Zeichenfolge zurück, wenn die UNID oder der Feldname ungültig ist.

sieht so aus, als ob der rückgabewert eine zeichenfolge ist.
also: zahlenwert vorher in text umwandeln.

-->die UNID stimmt sicher, den die 2. Funktion für Laufnummer1 zeigt sehr wohl was an.

--> habe auch schon
@Prompt([OK]; "Laufnummer"; @Text(@GetDocField(DocID;"Laufnummer")))
@Prompt([OK]; "Laufnummer1"; @Text(@GetDocField(DocID;"Laufnummer1")))
versucht - fürs Zahlenfeld zeigt er trotzdem nix an
Titel: Re:Problem mit @GetDocField
Beitrag von: klaussal am 08.04.04 - 15:12:08
 ??? ??? :P :'(
Titel: Re:Problem mit @GetDocField
Beitrag von: rar am 08.04.04 - 16:50:06
Probiers mal mit
@Prompt([OK]; "Laufnummer"; @Text(@GetDocField(@Text(DocID);"Laufnummer")))

lg
-rar
Titel: Re:Problem mit @GetDocField
Beitrag von: Escort am 09.04.04 - 08:37:16
Probiers mal mit
@Prompt([OK]; "Laufnummer"; @Text(@GetDocField(@Text(DocID);"Laufnummer")))

lg
-rar

da steigt er leider mit einer Fehlermeldung aus (falscher Datentyp / @Funktion)
Titel: Re:Problem mit @GetDocField
Beitrag von: rar am 09.04.04 - 10:18:46
Ich habe jetzt folgendes gemacht:
Erste Maske:
ein berechnetes Feld ID mit @Text(@DocumentUniqueID)
ein Textfeld und ein Zahlfeld.

Zweite Maske:
ein Feld DocID und eine Schaltfläche mit der Firmel
@Prompt([OK]; "Zahlfeld"; @Text(@GetDocField(DocID;"Zahlfeld")));
@Prompt([OK]; "TextFeld";@Text(@GetDocField(DocID;"Textfeld")))


Dann hab ich ein Dokument mit Maske 1 erstellt, abgespeichert, den Inhalt des Feldes ID kopiert und in das Feld DocID bei einem neuen Dokument, das mit Maske 2 erstellt wurde, eingefügt.
Wenn man jetzt auf den Button drückt, funktioniert alles wunderbar.

Wegen der Fehlermeldung... Da kann ich mir nur vorstellen, daß was mit der DocID nicht passt. Wie befüllst du denn das Feld?
Titel: Re:Problem mit @GetDocField
Beitrag von: Escort am 09.04.04 - 11:30:25
Ich habe jetzt folgendes gemacht:
Erste Maske:
ein berechnetes Feld ID mit @Text(@DocumentUniqueID)
ein Textfeld und ein Zahlfeld.

Zweite Maske:
ein Feld DocID und eine Schaltfläche mit der Firmel
@Prompt([OK]; "Zahlfeld"; @Text(@GetDocField(DocID;"Zahlfeld")));
@Prompt([OK]; "TextFeld";@Text(@GetDocField(DocID;"Textfeld")))


Dann hab ich ein Dokument mit Maske 1 erstellt, abgespeichert, den Inhalt des Feldes ID kopiert und in das Feld DocID bei einem neuen Dokument, das mit Maske 2 erstellt wurde, eingefügt.
Wenn man jetzt auf den Button drückt, funktioniert alles wunderbar.

Wegen der Fehlermeldung... Da kann ich mir nur vorstellen, daß was mit der DocID nicht passt. Wie befüllst du denn das Feld?

also ich hab deine Variante mal nachvollzogen - allerdings funktionierts bei mir nicht!
++ weder, wenn ich die docid reinkopiere noch
++ wenn das Textfeld DocID aus der Ansicht berechnen lasse mittels
@DbLookup("":"NoCache";"C1256E5B:002E01FA";"Productgroups";ProjektProduktgruppe ;4))

@Prompt([OK]; "Zahlfeld ";@GetDocField(tmpProduktgruppeDocID;"Zahlfeld"));
@Prompt([OK]; "TextFeld";@GetDocField(tmpProduktgruppeDocID;"Textfeld"));
@Prompt([OK]; "Zahlfeld ";@Text(@GetDocField("D28F2B1D86614113C1256E71002E70B1";"Zahlfeld")));
@Prompt([OK]; "TextFeld";@Text(@GetDocField("D28F2B1D86614113C1256E71002E70B1";"Textfeld")))

Die Prompt-Anweisung zeigt fürs Zahlfeld gar nix, beim Textfeld schon-
vielleicht liegt's an meinem client 5.02c??
Titel: Re:Problem mit @GetDocField
Beitrag von: rar am 09.04.04 - 12:41:13
Ob es an der Version liegt, kann ich dir nicht sagen. Ich habs auf 5.0.10 getestet.

Pobier mal ob es bei dir mit meiner Test DB geht!
Titel: Re:Problem mit @GetDocField
Beitrag von: Escort am 09.04.04 - 12:59:45
Ob es an der Version liegt, kann ich dir nicht sagen. Ich habs auf 5.0.10 getestet.

Pobier mal ob es bei dir mit meiner Test DB geht!
hab jetzt deine version getestet ->es funktioniert nur das Textfeld?

wenn ich den Code debugge gibt er folgendes aus:


'@Text(' ausgeführt -- Name:'', Typ: Textliste, Einträge: 1
        1> '7038B7D281593093C1256E71002CAB2D'
'@GetDocField(' ausgeführt -- Name:'', Typ: Zahl, Wert: ?
'@Text(' ausgeführt -- Name:'', Typ: Fehler, Wert: Falscher Datentyp für Operator oder @Funktion
'@Prompt(' ausgeführt -- Name:'', Typ: Fehler, Wert: Falscher Datentyp für Operator oder @Funktion
'@Text(' ausgeführt -- Name:'', Typ: Textliste, Einträge: 1
        1> '7038B7D281593093C1256E71002CAB2D'
'@GetDocField(' ausgeführt -- Name:'', Typ: Textliste, Einträge: 1
        1> 'Text'
'@Text(' ausgeführt -- Name:'', Typ: Textliste, Einträge: 1
        1> 'Text'

anscheinend hat meine client-version eine macke??

danke nochmals.....robert
Titel: Re:Problem mit @GetDocField
Beitrag von: rar am 09.04.04 - 13:05:06
Zitat
anscheinend hat meine client-version eine macke??

Nein Tim. Das glaube ich nicht.
Ich kann mir nicht vorstellen, daß Notes eine Macke hat. ;)

Jetzt weiß ich auch nicht mehr weiter.  :-\

lg
Titel: Re:Problem mit @GetDocField
Beitrag von: Escort am 09.04.04 - 14:56:03
Zitat
anscheinend hat meine client-version eine macke??

Nein Tim. Das glaube ich nicht.
Ich kann mir nicht vorstellen, daß Notes eine Macke hat. ;)

Jetzt weiß ich auch nicht mehr weiter.  :-\

lg
SO! Habe jetzt mal auf einen Testrechner den Notes-Client 5.05 draufgespielt und siehe da, deine Version funktioniert!