Kon's DX Lab - Case Study

Day 53|Pythonで「.exe付き業務ツール」を内製!ノーコード感覚で誰でも実行できる仕組みに挑戦

Published on 2025-05-24

🔬 Case Study Summary
Problem

(ここに課題を記述)

Result

(ここに具体的な成果を記述)


Tech & Process

(ここに採用技術とプロセスを記述) コードを詳しく見る »

こんにちは、こんです🦊
今日は、「非エンジニアでも入出荷処理を自動化できる」仕組みをテーマに、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に刷新

  • 入力欄やボタンの配置も調整しやすくする

  • ドラッグ&ドロップや進捗バーも追加したい!


✅ 実感したメリット

  1. .py書けない人でも動かせる

    • GUIから実行するだけなので、現場でも即戦力

  2. スクリプトは1本。設定で再利用できる

    • JSONだけ差し替えれば別案件にも転用可能

  3. 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 #現場で使える内製ツール