2016-05-07 1 views
0

J'ai une liste SharePoint 2013 personnalisée (qui a démarré en tant que liste SP2010) avec environ 2 000 éléments. Il a été récemment porté à mon attention que j'ai un problème étrange avec une case à cocher/type booléen. Je ne me souviens pas s'il a été créé en tant que colonne Oui/Non dans SharePoint avant la création du formulaire Web dans InfoPath.Erreur de validation InfoPath sur les éléments de la liste plus anciens: uniquement 'true' ou 'false' autorisé

Le nom du champ est Rapport reçu. Jusqu'à présent, et uniquement pour le dépannage, la case à cocher n'était jamais réellement sur le formulaire. J'ai eu une règle où si une question a été répondue, la valeur du champ a été mis à 'vrai' en minuscules sans guillemets.

Si je crée un nouvel élément dans la liste, la case à cocher fonctionne comme prévu.

Si j'essaie de modifier un élément précédent que la valeur était déjà fausse, une erreur de validation s'affiche lors de la sauvegarde, indiquant que seuls 'true' ou 'false' sont autorisés. En conclusion, je ne peux que supposer que pendant un certain temps, quelque chose était bogué dans ma règle/forme/champ. Mon objectif est soit de définir ce champ sur blanc pour les éléments, soit de corriger la corruption supposée dans le champ sur ces éléments.

Heureusement, je n'ai pas beaucoup d'éléments à réparer.

Une idée que j'avais était de créer une vue appelée "Test". Dans cette vue, j'ai déplacé le champ Rapport reçu sur le formulaire. J'ai également ajouté un champ calculé ci-dessous qui me montre la valeur actuelle du champ, et 3 boutons, chacun avec une règle, soit pour définir la valeur à vide, le définir à false (minuscules), le définir à true (minuscules) . J'ai alors ouvert un ancien élément qui me donne l'erreur, de tester mes nouveaux boutons. Ma première observation est que le champ calculé indique que la valeur est actuellement fausse (minuscule) Malheureusement, quand je clique sur l'un d'entre eux, je vois immédiatement que la case devient rouge, indiquant que seulement 'vrai' ou 'faux' est permis quand je souris sur la case à cocher. La chose étrange est que mon champ calculé indique que la valeur a été changée à TRUE en majuscule, même si la case n'est pas cochée. Je le remarque avant d'essayer de sauvegarder le formulaire.

Si je crée un nouvel élément dans cette liste, et aller à mon « test » vue, les boutons fonctionnent très bien.

Alors que InfoPath semble préférer vrai et faux, la valeur dans les listes SharePoint sont Oui et n °

Toute idée comment je peux être en mesure enlever la corruption sur ces éléments de liste anciens, sans supprimer et de les recréer? J'utilise actuellement InfpoPath 2010 pour modifier le formulaire.

Merci!

Répondre

0

Je me donne des coups de pied. J'ai couru Rule Inspector et j'ai vu qu'une règle dont je n'étais pas au courant causait mes problèmes. Je l'ai supprimé, et maintenant tout fonctionne comme prévu.

0

Merci pour l'info. J'éprouvais la même chose et j'ai pu trouver mon erreur en utilisant Rule Inspector. Plus précisément, mon problème était dû à une règle qui s'exécutait sur les boutons "submit" qui définissaient la case à cocher ou le champ booléen sur "Oui" pour correspondre à ce qui était dans SharePoint. J'ai trouvé que vous devez utiliser le champ formule (fx) dans InfoPath et entrez boolean("true") comme formule pour qu'InfoPath transmette correctement la valeur à SharePoint!