初めてのプラグイン開発

19
1 初めてのプラグイン開発 - SAPTracの連携 -

Upload: ikikko-nakamura

Post on 28-May-2015

1.190 views

Category:

Technology


3 download

DESCRIPTION

2009/01/24 Shibuya.trac 2009新年会http://sourceforge.jp/projects/shibuya-trac/wiki/meeting%2F03

TRANSCRIPT

Page 1: 初めてのプラグイン開発

1

初めてのプラグイン開発 - SAPとTracの連携 -

Page 2: 初めてのプラグイン開発

2

今の心境

こういった場での発表は、初めてできんちょーしてます

5分どころか10分以上かかりそうなので、今回どら娘がこなくてほっとしてます

Page 3: 初めてのプラグイン開発

3

アジェンダ

自己紹介

プラグイン作成の背景

プラグインの概要

今後の課題

Page 4: 初めてのプラグイン開発

4

自己紹介

id:ikikko はてな(ブログ:Talking Nonstop)

Gmail, Twitter, Wassr某SIer所属 客先常駐

商社向けのシステム開発

SAPのアドオン(プラグイン)開発を担当

Page 5: 初めてのプラグイン開発

5

背景

「Excel+Eメール」での管理にうんざり 管理用のExcelファイルが5~6

同じ内容を別々のファイルに転記

ファイルを複数立ち上げて作業

離れた拠点の連絡は、EメールでExcelを送付 手動でメール送信が無駄な労力

どこに最新のファイルがあるのかも不明

Page 6: 初めてのプラグイン開発

6

勉強会

便利そうだけど、セキュリティは?

SAP上のソースコードと連携できる?

SSL通信やユーザIDによる制御など一通りのことはできます

中をいじってやればできると思いますが、

標準機能にはないみたいです

ITSで解決できるということを啓蒙するために勉強会を開催!

Page 7: 初めてのプラグイン開発

7

勉強会を終えた後の感想

ソースコードのバージョン管理と連携不可なのは不便だよな

無いならば作ってしまえプラグイン!

Page 8: 初めてのプラグイン開発

8

プラグインの概要 - Sap2SvnPlugin -

チケット更新時にSAPにアクセスして情報を取得、その内容をSubversionにコミット

SAPへのアクセス: ActiveXを利用したRFC(Remote Function Call)

を利用

Subversionへのコミット Trac付属のモジュールを利用

Page 9: 初めてのプラグイン開発

9

Trac

SubversionSAP

イメージ図

①:アクセス

②:オブジェクト抽出・コミット

③:閲覧

リポジトリカスタムフィールド•リリース済•移送依頼番号

チケット

Page 10: 初めてのプラグイン開発

10

SAP用語の解説

リリース Subversionでのコミット

リリース後は、該当のオブジェクトは変更されない

移送依頼番号 Subversionでのリビジョン番号

一つの移送依頼番号に複数のオブジェクトが紐付く

Page 11: 初めてのプラグイン開発

11

プラグイン設定画面

SAPのログイン情報

•APサーバ•ユーザ名•パスワード etc

コミットのための作業領域

Page 12: 初めてのプラグイン開発

12

チケット更新時

「リリース済」がチェックされて、かつ「移送依頼番号」に値がある場合にのみ

プラグイン実行

ボタンを押して、10秒くらい待つ・・・

チケット

Page 13: 初めてのプラグイン開発

13

チェンジセットの番号を追記

チケット更新後

※:画面はイメージです。実際のものとは異なる可能性があります。

概要とチケット番号をコミットログ出力

リポジトリ

チケット

相互リンクを実現!

Page 14: 初めてのプラグイン開発

14

苦労した点

Python初心者 「みんなのPython」で基礎固め

SAPのプログラム制御初心者 PythonでSAPを制御しようという人が少ないので、Web

上にも情報が少ない

Subversionのプログラム制御初心者 APIのドキュメントが少なく、使いにくい

⇒ Google Codeのテストケースで使用方法を調査

Tracプラグイン作成初心者 参考:Shibuya.trac「プラグインの作り方」

(http://sourceforge.jp/projects/shibuya-trac/wiki/trac%2Fplugindev)

柴田淳氏 著

Page 15: 初めてのプラグイン開発

15

今後の課題

プラグインの洗練 バージョン管理対象オブジェクトの対応増

画面制御・レイアウトコード

データベーススキーマ

例外処理の追加様々な環境での動作検証

現状はコンセプトの検証レベル

Page 16: 初めてのプラグイン開発

16

そして何より・・・

Page 17: 初めてのプラグイン開発

17

Trac & 自作プラグインを導入する!

Page 18: 初めてのプラグイン開発

18

今後の課題

セキュリティに関しても条件厳しい

使ってもらってこそのTrac 実際に使わないと便利さが分からない

使うにつれてプラグインの改善点も見えてくる

使ってもらいたいけど、使うに使えない

堂々巡り状態・・・

Page 19: 初めてのプラグイン開発

19

うまく導入する方法をアドバイス下さい><