Q:チケットの一括登録したがデータ不備があったため再度一括登録をする必要がある。チケットの一括削除する方法は?

運用中のプロジェクトにチケットの一括登録を行ったのですが、登録情報に不備があり再度、一括登録を行いたいと思ってます。 チケットの一括削除する方法はありませんか?

tracpath の標準機能として提供しておりませんが、以下の2つの方法をご提案致します

一括削除する方法ですが、tracpath の標準機能として提供しておりません。申し訳ございません。 解決方法として、2つの案をご提案いたします。

  1. チケットの一括インポートはチケットの新規追加と更新が可能です。この機能を利用する方法
  2. tracpathはXML-RPCと呼ばれる外部向けAPIを提供しております。この機能を利用すると一括削除が可能

1.チケットの一括インポートで追加と更新

チケットインポートについて 添付ファイル「tracpath-sample-ticketimport.xls」のように一括イン ポートデータの「ID」列に更新したいチケットのIDを入力することで、チケットの更新を実行します。

tracpath-sample-ticketimport.xls

注意して頂く点として、チケットの更新は更新履歴として残ることになります。

2. XML-RPC(外部向けAPI)利用した一括削除のサンプル

Python用のサンプルファイルをお送りいたします。xml-rpc-sample.zip このサンプルは2つのファイルから構成されています。

それでは、スクリプトの使い方を説明します。

  1. まず Python をご用意ください。2.4 以上であれば問題ありません。
  2. xmlrpc-test.py をテキストエディタで開いていただいて、以下の部分をご利用のプロジェクトのパスと使用されているユーザ/パスワードに置き換えてください。

    hostname = 'xxxxxxx.tracpath.com' # 変更してください(契約しているURLのサブドメインを記載してください)
    proj     = 'sandbox'   # 対象のプロジェクト名を入力してください。
    username = 'userid'    # 対象プロジェクトの管理者権限を持つユーザー名を入力してください。
    password = 'password'  # 対象プロジェクトの管理者権限を持つユーザーのパスワードを入力してください。
  3. python xmlrpc-test.py を実行します。うまくいけば、以下のような [1, 1, 2] が出力されます。これは Trac XML-RPC のバージョンです。この機能を利用するには TRAC_ADMIN 権限ないし XML_RPC 権限が必要になりますので、権限がない場合には割り当てを行ってから実施してください。

    C:> python xmlrpc-test.py
    [1, 1, 2]
  4. xmlrpc-ticket-delete.py では、10042 から 10194 までのチケットを削除するようなスクリプトとなっています。削除対象にあわせて変更してご利用ください。

  5. xmlrpc-ticket-delete.py をテキストエディタで開きます。接続情報とチケットIDの範囲を指定してください。python xmlrpc-test.py と同じように接続に必要な情報を変更する必要があります。削除したいチケットの範囲をIDを指定します。

    # 10042 から 10194 のチケットを削除
    begin = 10042  # チケットの範囲:開始を設定してください
    end   = 10194  # チケットの範囲:終了を設定してください

削除したチケットを復旧することはできませんので、ご注意願います。

Pythonについて対応が難しい場合、お時間を頂きますが、php/perl/ruby 等のサンプルスクリプト提供も可能です。

お気軽にご相談ください。


リンク

TipsAndHowto/チケットの一括登録したがデータ不備があったため再度一括登録をする必要がある (last edited 2021-04-21 06:15:06 by omae)