変更できるものと変更できないもの
レコードが編集できない5つの理由、部分的な理由1つ、そして編集ボタンが表示される前に回答が表示される理由について説明します。
各画面は編集ボタンを表示する前に必ず1つの質問を投げかけ、サーバー上の1箇所がその質問に答えます。そして同じ関数が保存の可否を判断します。つまり、ボタンが表示されれば正常に機能し、ボタンが表示されなければその理由が代わりに表示されます。
デフォルトは「はい」です。レコードは、以下の5つのうちいずれか1つに該当しない限り編集可能です。
| 地面 | なぜだめですか | 代わりに何をすべきか |
|---|---|---|
| ビュー | その画面は、それ自体で完結するのではなく、他の記録から組み立てられている。 | それらの記録を変更してください。次の記録が続きます。 |
| 不変 | それは監査証跡、あるいはシステムログであり、チャートへのアクセス記録、株価の変動、ジョブの実行記録などである。 | 何もありません。変わらないことこそが、それを維持する意義なのです。 |
| 状態 | 文書は掲載済み、キャンセル済み、または変換済みです。 | 取り消すか、クレジットメモを発行してください。 |
| 期間 | 当該会計年度は既に終了しています。 | 修正内容を公開期間に掲載してください。 |
| 歴史的 | これは有効期限付きのバージョンであり、その有効期間は既に終了しています。 | 有効なバージョンを変更してください。これは、それ以前の日付でも引き続き回答されるものです。 |
部分的な地面
他のレコードがこのレコードを指し示すと、その識別番号またはコードが固定され、それ以外の部分はすべて編集可能な状態になります。40もの雑誌が引用しているアカウントの番号を変更すると、それらの雑誌は実際には言っていないことを言うことになります。しかし、住所が間違っている仕入先は、請求書が関連付けられているからといって編集できないわけではありません。フォームには、固定されたフィールドが理由とともに表示され、住所を修正することができます。
読み取り専用はもはや変更不可を意味するものではありません。ナビゲーションで読み取り専用と表示されている画面でも、このルールに基づいて修正できる場合があります。サーバーは、レコードごと、ユーザーごとに、リクエスト時に判断します。ある行に編集ボタンがないからといって、別の行の画面が修正できないと決めつけないでください。
日付に依存するデータの変更
有効期間が設定されているレコードでは、編集フォームで変更の有効開始日を尋ねられます。日付を前日に変更すると、有効になっているバージョンは前日に終了し、変更内容が反映された後継バージョンが作成されます。日付をそのままにしておくと、そのバージョンがそのまま修正されます。
歴史は決して書き換えられることはありません。だからこそ、基準日が意味を持つのです。3月の特定の日付におけるレート、価格、または職務等級を尋ねた場合、返されるのは現在の値ではなく、3月当時の実際の値です。このルールは、一覧、レコードページ、マスターデータパネルのいずれからでも同様に当てはまります。
すべての画面にはフォームがあります
キュレーションされたフォームが指定されている場合は、それが使用されます。指定されていない場合は、サーバーがレコードが実際に受け入れる列(型、必須フィールド、およびすべての外部キーの選択機能)からフォームを定義します。これにより、誰も設計していない画面でもレコードを修正できるようになり、誰もまだ手を付けていないために修正不可能になるという事態を防ぐことができます。