4

SharePoint 2007 のカスタム リストに、次の数式を使用した計算列があります。

=CONCATENATE("IR-",[ID],"-",LEFT(UPPER([Title]),25))

リストにアイテムが作成された場合は問題ありませんが、アイテムが更新されると、[ID] 列はそのアイテムの計算列に含まれなくなります。

したがって、作成時は「IR-40-TheTitleIsHere」ですが、編集後は「IR--TheTitleIsHere」になります。

なぜこれが起こるのかについての洞察を持っている人はいますか?

4

4 に答える 4

5

上記の動作を確認しました。追加/編集すると、[ID] 部分が消去されます。リストの列を編集して数式を更新すると、すべてのリスト項目が更新されて正しくなります (項目を編集するまで)。

同じ問題について言及しているこの投稿を見つけました。

リスト内のテキスト フィールドを更新する SharePoint Designer を使用して単純なワークフローを作成することが唯一の解決策のように思えます。

于 2009-07-09T17:46:49.680 に答える
2

しばらく前に同様の問題がありました。他のブログや専門家を通じて、[ID] 列は混乱を引き起こし、多くのエラーを引き起こすため、計算列で使用すべきではないことを発見しました。申し訳ありませんが、ID 列を削除してください。

于 2009-09-04T14:52:05.333 に答える
1

この質問は少し古いですが、私は同じ問題を抱えていて、それに対する解決策を見つけました。これはかなり具体的な修正であり、すべての人に役立つわけではありません。コンテンツエディタのWebパーツでjavascriptを使用して、計算フィールドを更新する必要があります。

このサイト(http://blog.pathtosharepoint.com/2008/09/01/using-calculated-columns-to-write-html/)は、私が使用したのと同じ方法でjavascriptを使用する方法の例を示しています。 ..コードの重要なブロックは、最初のwhileループです。重要なのは、リストからすぐに使用できるID列を取得し、IDが必要な計算フィールドを更新することです。

私の場合、パラメータとしてIDを必要とする計算フィールドにURLがありました。もちろん、計算フィールドにIDを入力できないため、通常は機能しません。計算フィールドのURLのIDパラメータに「?ID = null」を入力し、それをjavascriptを使用して取得したIDに置き換えました。ページが読み込まれるたびに、jsが開始され、すべてが更新されます。正しいIDを持つURLの。

于 2011-08-29T13:38:06.017 に答える