2011-03-16 7 views
1

J'ai essayé d'obtenir la valeur spécifique d'un champ en utilisant dbLookup dans une vue cachée, mais j'obtiens cette erreur "champ: Version: Entrée introuvable dans l'index". Je suis sûr que le champ Version a été ajouté comme dans la vue en tant que colonne. La colonne 2 est le "champ Version". Comment puis-je résoudre celui-ci?Entrée non trouvée dans l'index

@DbLookup ("": "NoCache"; "": ""; "(vwLDoc)"; ParentId + @ Texte (version); 2) (?)

Répondre

2

En supposant que ce code est dans un champ Re -WRITE votre code comme celui-ci

key := @trim(ParentID + @Trim(@Text(Version))); 
lkup := @DbLookup("":"NoCache";"":"";"(vwLDoc)";key; 2); 
val := @if(@IsError(lkup);@Text(lkup) + ", key:" + key;lkup); 
val; 

cela vous permet de séparer la clé du DBLookup, afin que vous puissiez enquêter sur ce que la valeur réelle est utilisée pour exécuter la recherche. La concaténation de deux chaînes peut entraîner l'insertion d'espaces supplémentaires, créant ainsi une valeur de clé non valide.

Il gère également les erreurs avec plus d'élégance, car vous pouvez utiliser la variable "val" sans provoquer l'apparition d'une boîte de message laide qui affecte également les formulaires lors de leur ouverture.

Je vérifierais que la vue "(vwLDoc)" a une colonne triée. S'il n'y a pas de colonnes triées dans la vue, le dblookup retournera toujours "l'entrée non trouvée dans l'index".

Vous pouvez tester la clé en ouvrant la vue et en saisissant simplement la valeur de la clé et vous devez accéder aux documents correspondants. Pour ouvrir les vues cachées, sélectionnez simplement "View" => "Goto" (maintenez la touche ctrl-shift enfoncée lorsque vous faites cela pour voir les vues cachées), puis sélectionnez la vue.

Si vous collez la totalité de la formule dans laquelle vous utilisez ce dblookup, je peux vous fournir une meilleure réponse.

+0

Giulio- Merci. Je trier le champ Version et cela fonctionne. Je n'ai pas la valeur. – user335160

+0

De toute façon avez-vous une idée sur la façon d'obtenir le dernier document créé par catégorie dans la vue en utilisant des notes de lotus @formula? – user335160

+0

Vous pouvez ajouter une nouvelle colonne et la mettre dans la formule @Created. Rendre cette colonne triable soit ascendante/descendante. Notez que la manière dont une vue trie les documents dépend de l'ordre de gauche à droite des colonnes "triées". Ainsi, si cette nouvelle colonne est ajoutée à droite d'une colonne triée existante, le tri des premières colonnes aura priorité, puis la colonne triée suivante et ainsi de suite. Vous devrez donc les déplacer pour obtenir le résultat souhaité. (Je ne recommande pas de faire trop de colonnes triées, 3 ou 4 devraient suffire.) – giulio