014-008028

パッケージ版 サイボウズ Office

関心あり
0人の方が関心を示しています。

コマンドでCSVファイルからレコードを読み込むと、重複する値が登録される。

種別
不具合
機能
  • CSV読み込み
  • カスタムアプリ
再現バージョン
  • 10.0.0
  • 10.0.1
  • 10.0.2
改修バージョン
10.1.0
公開日
2014-03-28
更新日
2014-04-11

【準備】

  • カスタムアプリで、アプリを追加します。

    例:
    アプリ1

  • アプリ1に、「重複禁止」を設定した項目を追加します。

    例:
    -------
    項目名:項目1
    入力タイプ:文字列(1行)
    重複禁止:「重複する値の登録を禁止する」のチェックボックスを選択する
    -------

  • アプリ1に、レコードを登録します。

    例:
    -------
    項目1:レコード1
    -------

  • アプリ1をCSVファイルに書き出します。

    例:
    • ファイル名:db(アプリID).csv
      内容:
      -------
      "レコード番号","登録日時","登録者","更新日時","更新者","項目1"
      "","2014/4/20 12:00","ユーザー1","2014/4/20 12:00","ユーザー1","レコード1"
      -------

 

【再現手順】

  1. コマンドラインを開きます。

  2. データディレクトリーに移動します。

    例:
    Windowsの場合
    cd C:\Inetpub\scripts\cbag

    Linuxの場合
    cd /var/www/cgi-bin/cbag

    補足:
    お使いの環境によって、パスは異なります。

  3. -d オプションを指定せずに、レコードのCSVファイルからの読み込みコマンドを実行します。

    Windowsの場合

    ag.exe -csv -i (ファイルの絶対パス) -l (アプリID) -f

    Linuxの場合
    ./ag.cgi -csv -i (ファイルの絶対パス) -l (アプリID) -f

    補足:
    -d オプションを設定した場合、全レコードを削除後にレコードを新規登録するため、本現象は再現しません。

 

→現象発生:

 アプリ1に、重複する値が登録されます。

 例:
 -------

 項目1:レコード1

 -------


【回避方法】

 

次のどちらかの方法で回避できます。

  • 次のバージョンの製品で本現象を改修しています。バージョンアップを検討してください。
    • バージョン 10.1.0のサイボウズ Office

  • 次の操作で、CSVファイルからの読み込みを行うと、エラーが発生し、重複しているレコードがあるかどうか確認できます。

    1. [カスタムアプリ] > [アプリ1] > [運用管理] > [データの入出力] > [CSVファイルからの読み込み]の順にクリックします。

    2. 準備したCSVファイルを選択し、[次に、ファイルの中身を確認する]をクリックします。

      例:
      db(アプリID).csv

    3. 読み込む項目を指定し、[次に、データの割り当てを確認する]をクリックします。

    4. [読み込む]をクリックします。

    5. 次のエラーが発生することを確認します。
      -------
      エラー番号:13952
      「項目1」の値が、他のレコードと重複しています。
      -------