メインコンテンツに移動

CSVインポーター

FETからエクスポートされたリストファイルをセクションごとにインポートし、最初から正しく設定すべき唯一の並び順のルールに対応します。

FETは、そのリストのそれぞれを個別のCSVファイルとしてエクスポートできます。これらのファイルのうち7つがここで読み込まれ、それぞれデータエディターの独自のセクションに取り込まれるため、プロジェクト全体を一度にではなく、一度に1つのリストを取り込むことができます。

7つのファイル

  • 教師 — 教師リスト。
  • 科目 — 科目リスト。
  • アクティビティタグ — タグリスト。
  • 部屋と建物 — FETと同様に、両方をカバーする1つのファイル。
  • 学生 — 年、グループ、サブグループ、およびそれらのネスト。
  • アクティビティ — アクティビティリスト。これは、時間割が生成される前に学校の授業負荷を実際に保持するファイルです。
  • 教師の利用不可時間 — リストではなく、ルールを保持する唯一のファイルです。これは教師からではなく、時間制約からインポートされます。

それぞれが独自のセクションからインポートされます。データエディターでそのセクションを開き、CSVインポートボタンを使用してください。ファイルが読み込まれ、何が行われるかが表示され、確認するまで何も書き込まれません。

利用不可ファイルは置き換え、追加しません

最初の6つのファイルは、不足しているものを追加し、残りはそのままにします。教師の利用不可ファイルは、その内容のために異なる動作をします。FETは完全なグリッドを書き込みます。これは、すべての教師とすべての時間に対して、その教師が教えることができない場所にマークが付いています。

空のセルは「情報なし」ではありません。それは、この教師はその時間帯は空いているとファイルが言っていることを意味します。したがって、ファイルをインポートすると、リストされている教師の利用不可時間が置き換えられます。これは、空いた時間枠を実際に適用できる唯一の方法です。

ファイルに記載されていない教師は完全にそのままにされるため、3人の教師をカバーするファイルが他の30人の教師に影響を与えることはありません。

何かを書き込む前に、いくつの制約が削除され、いくつの制約が書き込まれ、何人の教師が手つかずであるかが通知されます。元に戻すことはできないため、時間割が重要である場合は、まずバックアップを取ってください。

名前がまだ時間割にない教師は、作成されるのではなくスキップされます。— このファイルは既存の人物を調整するものであり、新しい人物を導入するものではありません。

マークはブロックではなく、好みである場合があります

そのファイル内のセルはチェックマークではありません。— それぞれが0から100までの重みを持ち、その重みによってマークの意味が変わります。

100は「不可」を意味します。これは通常のケースであり、単純な教師の利用不可ルールとなります。

100未満は「できれば避けたい」を意味します。「利用不可」ルールにはそれより弱い設定はありません。それは絶対的であるか、何もないかのどちらかです。したがって、重み付けされたマークは逆の形で記録されます。つまり、教師の授業がその重みで配置され得るすべての場所をリストする希望時間枠として記録されます。これは、同じ制約を肯定的に述べたものです。

FETにはこれに対するインポートモードがありません。FET自身のヘルプでは、100未満の重みが必要な場合に希望時間を使用するように指示しています。このインポーターがそのステップを代行します。

それらの間で選択する必要はなく、間違った設定をすることはありません。ファイルに重み付けされたセルが含まれている場合、インポートは書き込み前にその旨を通知し、見つかった重みの名前を表示します。

アクティビティの前に学生をインポートする

これは、厳密に従うべき唯一のルールです。

アクティビティがまだ存在しない学生セットを指定した場合、そのセットはフラットに作成され、その後、適切な年-グループ-サブグループ構造にアップグレードされることはありません。

まず学生ファイルをインポートすると、階層が正しく取り込まれます。アクティビティを先にインポートすると、リストでは正しく見えるが、構造が重要な場所では誤動作するフラットなグループの山ができてしまいます。後で修正するには、それらを削除してやり直す必要があります。

アクティビティ行で指定された教師、科目、アクティビティタグにも同じ自動作成が適用されます。それらについては無害です。— 教師は教師だからです。— これがまさに学生のケースで人々が戸惑う理由です。

コミット前のプレビュー

Choosing a file does not import it: the columns it recognised, what it would add, what it would skip because it is already there, and the row it could not use.
Choosing a file does not import it: the columns it recognised, what it would add, what it would skip because it is already there, and the row it could not use.

ファイルを選択してもインポートはされません。まずファイルが読み込まれ、何が起こるかの概要が表示されます。何行が理解され、何が作成され、使用できなかった行に関する警告が表示されます。名前がない行は、黙って空白を作成するのではなく、報告されスキップされます。

確認した場合にのみ、何かが書き込まれます。

知っておくべきフォーマットに関する事項

FET自身の出力ファイルを準備する必要はまったくありません。それらはそのまま読み込まれます。これらは、手動でファイルを作成したり、スプレッドシートで編集したりする場合に重要になります。

  • ファイル名はサフィックスで照合されます。FETは出力ファイルに時間割名をプレフィックスとして付けます。そのため、myschool_teachers.csvは教師ファイルとして認識されます。サフィックスを保持すれば、プレフィックスは何でも構いません。
  • バイトオーダーマークが想定されます。FETはそれを書き込み、読み込み時に削除されます。それなしで保存されたファイルも問題ありません。
  • 区切り文字はファイルごとに検出されます。想定されるのではなく、セミコロン区切りの出力もコンマ区切りの出力と同様に機能します。
  • リソースセルはネストします。|は1つの分割コンポーネントを次のコンポーネントから区切り、+はコンポーネント内のメンバーを区切ります。— したがって、1つのセルで1つの授業に複数の教師を指定したり、コンポーネントごとに異なる教師を指定したりできます。
  • 科目名は+で分割されません。科目名には合法的にプラス記号が含まれる場合があるため、分割すると名前が切り詰められます。複数の科目を1つのセルに入れている場合、それはこのフォーマットがサポートするものではありません。
  • 空の数値セルは「制約なし」を意味します。ゼロではありません。最小日数セルを空白にしても、最小値が何もないことを課すわけではありません。— それは制約が存在しないことを意味します。

その後に得られるもの

これらのファイルから構築された時間割は、実際のアクティビティリストを保持するため、単なる絵ではなくプロジェクトのように動作します。期間と分割コンポーネントが存在し、ダウンロードするものは実際のデータから構築されます。

次のステップ