こんにちは、こんです🦊
今日は、「非エンジニアでも入出荷処理を自動化できる」仕組みをテーマに、Python × GUI × 汎用スクリプトのAppify構想を形にしてみました!
🧪 実験のきっかけ:「毎回pyスクリプトを書くの面倒くない?」
最近、複数の取引先に対して、受注や出荷のデータ処理をPythonで自動化してきました。
ただ、毎回個別対応でスクリプトを分けていたため:
誰かが設定変えたら壊れる
メンテナンスが属人化
GUIがないので非エンジニアが使いづらい
そんな課題感から「処理は全部1本の汎用スクリプト」「設定だけ変えて使い回せる」形にして、GUIから実行できる業務ツールとして整備できないか?と考えました。
🔧 作ってみた構成
✅ 汎用スクリプト run_incoming_job.py
入力ファイルの自動検出(フォルダ+prefix指定)
設定ファイル(JSON)に基づいて加工・出力
Slack通知付きで安心感◎
✅ 設定ファイル config/example_incoming.json
加工対象フォルダ・列名・Slack先などを記述
JSONなのでコピペで別得意先にも展開できる
✅ GUIランチャー gui_launcher.py(Tkinter)
設定ファイルを指定して実行ボタンをクリック
Pythonがわからなくても使える
.exe化 すれば社内配布も可能!
👀 動かしてみた感想:「使える!でも、UIがレトロ…!」
Tkinterは標準ライブラリでお手軽ですが、
UIが古めかしいのがネック…。
そこで次回以降は:
PySimpleGUIで見やすくて直感的なUIに刷新
入力欄やボタンの配置も調整しやすくする
ドラッグ&ドロップや進捗バーも追加したい!
✅ 実感したメリット
.py書けない人でも動かせる
GUIから実行するだけなので、現場でも即戦力
スクリプトは1本。設定で再利用できる
JSONだけ差し替えれば別案件にも転用可能
Slack通知と安全設計で、安心して放置できる
出力済みならスキップ、通知でミスなし
🔁 再利用できるテンプレ
if os.path.exists(output_path):
notify_slack("出力済のためスキップします")
exit()
client.chat_postMessage(channel="#通知チャンネル", text="処理完了しました!")
🔜 次回予告:PySimpleGUIで誰でも使える業務アプリに進化させる!
次はより見た目と操作性に優れた PySimpleGUI版のGUI を作ってみます!
入力欄や選択リストでconfig指定
処理中はローディング表示
出力ファイルの確認もGUI上でできるように
「ノーコードじゃないけど、ノーコード感覚」を目指して、非エンジニアでも業務改善できる武器に育てていきます!🦊
📌 ハッシュタグ
#業務改善 #Appify #Python自動化 #GUIツール内製 #Tkinter #PySimpleGUI #ChatGPTでDX #現場で使える内製ツール