【操作マニュアル】在庫管理「あれ、まだあったっけ?」を無くす。

適正在庫を保つためのマスタ設定と、棚卸しの極意

「売る商品がない(欠品)」ことによる機会損失。
「売れない商品が山積み(過剰在庫)」ことによる資金の圧迫。

商売において、在庫は「現金そのもの」です。
しかし、Excelや手書きの台帳では、リアルタイムな数を把握するのは困難です。
nsra-keiri では、日々の売上・仕入入力が自動で在庫数に反映される仕組みを採用しています。

今回は、その自動化の土台となる「商品マスタ」の設定と、ズレを直す「在庫訂正」機能について解説します。

本記事の内容

  • 1. すべての基本「商品マスタ」の設定
  • 2. 「安全在庫数」で欠品アラートを出す
  • 3. 在庫一覧と、ズレを直す「在庫訂正」

1. すべての基本「商品マスタ」の設定

システムが正しく動くかどうかは、最初の設定(マスタ登録)にかかっています。
サイドメニューの「商品管理」から、商品の情報を登録しましょう。

ここでは、単に名前を入れるだけでなく、以下の「数字」を入れることが重要です。

項目名 役割・メリット
販売単価・仕入単価 ここに入力しておけば、日々の売上・仕入登録時に金額が自動セットされます。
「いくらだったっけ?」と調べる時間をゼロにします。
在庫管理をする/しない 「サービス料」や「送料」など、形の無いものには在庫がありません。
このチェックを外せば、在庫数の計算から除外されます。

セット商品・加工品の在庫管理も自動化

「詰め合わせギフト」や「部品を組み立てて売る商品」を扱う場合、在庫管理はさらに複雑になります。
セットが1つ売れたら、中身の商品もそれぞれの数だけ在庫を減らさなくてはいけません。

nsra-keiri の商品マスタには、「構成部品(セット内容)」を登録する機能があります。

例:お中元ビールセット(ビール10本入り)の場合
親商品
ビールセット
1個 売上
構成部品(子)
缶ビール
10本 自動出庫

このように親商品を登録する際、「この商品は、何と何でできているか」を設定しておけば、売上のたびに構成部品の在庫が自動的に引き落とされます。
手作業で1つずつ在庫を調整する必要はありません。

[ 画像:構成部品の登録エリア ]

2. 「安全在庫数」で欠品アラートを出す

商品マスタの中に、「安全在庫数」という項目があります。
これは、「最低でもこれだけは店に置いておきたい数」のことです。

例えば「安全在庫数:10個」と設定しておきます。
日々の売上によって実際の在庫が「9個」になった瞬間、在庫一覧画面でその商品が「赤色(または黄色)」で警告表示されるようになります。

⚠️ 欠品防止の切り札
いちいち数を数えなくても、画面を見て「色が着いている商品」だけを発注すれば良いのです。
この機能だけで、発注業務の効率は何倍にも上がります。

3. 在庫一覧と、ズレを直す「在庫訂正」

nsra-keiri では、以下の計算式が全自動で動いています。

現在の在庫 = 入荷した数 - 売れた数

基本的にはこれで合っているはずですが、現実には「破損」「入力ミス」「万引き」などで、システム上の数字と、棚にある実数が合わなくなることがあります。

そんな時は、「在庫訂正(棚卸し)」機能を使います。

  1. 在庫一覧から、数が合わない商品の「訂正」ボタンを押します。
  2. 「実在庫数(実際に数えた数)」を入力します。
  3. 保存すると、システムが自動的にズレを修正(調整出庫・調整入庫)します。

修正履歴もしっかり残るため、「いつ誰が直したか」も後から追跡可能です。


在庫は「生き物」です

在庫は日々変動し、放っておけばすぐに実態と乖離してしまいます。
しかし、nsra-keiri なら、売上と仕入を入力するだけで、ほぼ自動で在庫管理が完了します。

「月末の棚卸しで徹夜する」
そんな古い習慣から、そろそろ卒業しませんか。

【操作マニュアル】仕入を管理する「発注したアレ、いつ届く?」を一覧で管理。

仕入登録から入荷処理までの確実な業務フロー

商売において「売ること」と同じくらい重要なのが、「仕入れること(発注業務)」です。

「先週頼んだ部品、今日届くはずだけど……」
「発注した数量と、届いた数量が合っているかな?」

これらを記憶や手書きメモで管理していると、欠品や過剰在庫の原因になります。
nsra-keiri では、発注(仕入登録)から、実際にモノが届いた時の処理(入荷)までを、一連の流れとしてシステム化しています。
今回はその操作手順を解説します。

本記事の内容

  • ステップ1:仕入登録(発注データの作成)
  • ステップ2:仕入一覧でステータス確認
  • ステップ3:入荷予定表で「入荷処理」を行う

STEP 1 仕入登録(発注データの作成)

サイドメニューの「仕入管理」から、新規登録画面を開きます。
基本操作は「売上登録」と同じですが、仕入ならではの項目として「個別納期」があります。

  1. 仕入先を選ぶ: 登録済みの業者を選択します。
  2. 商品と数量を入力: 金額(小計・合計)は自動計算されます。
  3. 納期を入力(任意): 「いつ届く予定か」を入力しておくと、後述する入荷予定表に反映されます。
💡 ポイント
金額の自動計算機能がついているので、発注書の金額と合っているかをその場で確認できます。
入力ミスを防ぎ、正確な資金繰り管理に役立ちます。

STEP 2
仕入一覧でステータスを確認

登録したデータは「仕入一覧」に表示されます。
ここでは、発注したモノが現在どういう状態にあるか(下書き、発注済、入荷完了)を一目で確認できます。

「まだ届いていない注文」だけを絞り込んで表示することも可能です。
納期の遅れがないか、定期的にここをチェックする癖をつけましょう。

STEP 3 入荷予定表で「入荷処理」を行う

実際に荷物が届いたら、いよいよ「入荷処理」です。
サイドメニューの「入荷予定表」を開いてください。
ここには、STEP 1で入力した納期に基づいて、「今日届く予定の商品」がリストアップされています。

ワンクリックで在庫を増やす

届いた商品の横にある「入荷」ボタン(またはチェックボックス)を押すだけで、システム上の在庫数が自動的に増えます。
いちいち「在庫管理画面」に行って手入力で数を増やす必要はありません。

  • 全数入荷: 予定通りの数が届いた場合。
  • 分納(一部入荷): 「今回届いた数」に入力し直してから、入荷ボタンを押してください。 残りの分については、改めて新しい発注として登録をお願いします。

モノの動きと、データの動きを一致させる

在庫管理がうまくいかない最大の原因は、「モノが届いたのに、データに入力するのを忘れていた」というタイムラグです。
nsra-keiri なら、荷解きをしたその場で、スマホやタブレットから「入荷ボタン」を押すだけで完了します。

「発注」から「入荷」までをシステムで繋ぐことで、常に正確な在庫数を把握できる安心感を手に入れてください。

【操作マニュアル】入金を管理する。「入金あったっけ?」をゼロにする。

売上検索から、月次請求書の発行までをスムーズに完結させる手順

売上を登録した後に待っている重要な仕事。それは「請求」「入金確認」です。

「先月の請求書、まだ送ってなかったっけ?」
「A社の入金、今月分はもう来たかな?」

通帳とExcelを交互に見比べる作業は、精神的にも負担が大きいものです。
nsra-keiri には、登録したデータを使って「未入金のチェック」から「請求書の発行」までを一気通貫で行う機能が備わっています。
その一連の流れを解説します。

本記事の内容

  • ステップ1:売上一覧で状況を把握する(検索機能)
  • ステップ2:入金があったら「消込」をする(入金管理)
  • ステップ3:月末に「合計請求書」をワンクリック発行する

STEP 1 売上一覧で状況を把握する

まずはサイドメニューから「売上管理」を開き、一覧画面を見てみましょう。
ここには、登録されたすべての取引が時系列で並んでいます。

必要な情報だけを瞬時に探す

画面上部の「検索ボックス」を使えば、膨大なデータの中から必要なものだけをピックアップできます。

  • 「会社名」で検索: 特定の取引先の履歴だけを見たいとき
  • 「未入金」で絞り込み: まだお金をいただいていない案件だけをチェックしたいとき
  • 「日付」で指定: 「先月の売上」だけを確認したいとき

STEP 2 入金があったら「消込」をする

一覧画面の右端に、「未入金」「一部入金」「入金完了」というステータス表示があります。
銀行口座への振込を確認したら、このボタン(または編集画面)でステータスを「入金完了」に変更しましょう。

色が変わることで、「どこがまだ払われていないか」が一目瞭然になります。
Excel管理でよくある「入金チェック漏れ」や「二重請求」といったミスを、視覚的に防ぐことができます。

STEP 3 月末に「合計請求書」を発行

ここが本システムの真骨頂です。
月末、取引先ごとに溜まった売上データを集計して、請求書を作る作業。これを自動化します。

  1. 一覧画面の上部にある「月次請求書」ボタンを押します。
  2. 「取引先」「対象月」(例:株式会社〇〇、2026年2月分)を選択します。
  3. 「請求書PDDFを作成」ボタンを押します。

これだけで、その月に発生した売上をすべて自動で合算し、消費税計算を行った上で、PDFの請求書が生成されます。
「えーと、あの日の売上と、この日の売上を足して……」と電卓を叩く必要はもうありません。


事務作業を「記憶」から「記録」へ

「誰にいくら請求して、誰からいくら入金されたか」。
これを頭の中だけで把握しようとすると、いつか必ずミスが起きます。
システムに記録さえしておけば、検索も、入金確認も、請求書作成も、すべてが確実なものに変わります。

ぜひ、この安心感を nsra-keiri で体験してください。

【操作マニュアル】「売上登録」を3ステップで完了させる方法

「売上の管理」と聞くと、ノートに日付と金額を書き込んだり、Excelで合計範囲を選択したり……そんな面倒な作業をイメージしていませんか?

nsra-keiri の売上登録は、わずか3ステップで完了します。
電卓を叩く必要も、表計算ソフトの数式を直す必要もありません。
今回は、基本となる「売上の登録手順」を、実際の画面と共に解説します。

本記事の内容

  • ステップ1:売上管理画面を開く
  • ステップ2:商品を選んで数量を入れる(自動計算)
  • ステップ3:合計金額を確認して保存する

STEP 1 売上管理画面を開く

まず、ログイン後のトップページ(ダッシュボード)左側にあるメニューから、「売上管理」をクリックします。
(スマートフォンの場合は、左上の「三」メニューボタンを押すと出てきます)

売上の一覧画面が表示されたら、右上にある「新規登録」(または「売上登録」)ボタンを押してください。

STEP 2 商品を選んで数量を入れるだけ

登録画面には、入力行がずらりと並んでいます。
「追加」ボタンなどをいちいち押す必要はありません。以下の流れでサクサク入力できます。

  1. 日付を選ぶ: 今日以外の日付も登録できます。
  2. 商品を選ぶ: プルダウンから登録済みの商品を選択します。単価が自動でセットされます。
  3. 数量を入力する: 個数を入れた瞬間、「小計」が自動計算されて右側に表示されます。

2つ以上の商品を売り上げた場合は、そのまま下の行(2行目、3行目…)に続けて入力していってください。

💡 ポイント
数量を入れるたびに金額がリアルタイムで変わるため、入力ミス(桁間違いなど)にその場ですぐに気づくことができます。

STEP 3 合計金額を確認して保存する

すべての商品を入力し終えたら、表の一番下を見てください。
すべての小計を足した「総合計」が表示されています。

伝票の合計金額と合っているかを確認し、最後に「売上を登録する」ボタンを押してください。

これで登録は完了です!
トップページのダッシュボードに戻ると、今登録した金額がすぐにグラフや売上合計に反映されているはずです。


フリープランをご利用の方へ

フリープラン(無料)では、この売上登録操作を毎月10回までお試しいただけます。
「月末にまとめて入力」するのではなく、「毎日、売上があったその時に入力」する習慣をつけると、月末の事務作業が驚くほど楽になります。
まずは無料で、この「自動計算される便利さ」を体験してみてください。

「クラウドは怖い」という誤解を解く。

世界最強のインフラ「AWS」と、決済情報を「持たない」という安全設計

「大切な帳簿データを、Web上に保存しても大丈夫なのか?」
「ハッキングされたり、データが漏れたりしないか?」

お客様から、このようなご質問をいただくことがあります。その感覚は経営者として非常に正しいものです。
しかし、結論から申し上げますと、「自社のパソコンの中にデータを置いておくよりも、クラウド(本システム)の方が安全」であると私は考えています。

なぜ個人開発のシステムでそこまで言い切れるのか。
それは私がセキュリティの天才だからではありません。
「世界で最も堅牢な金庫」の中に、システムを置いているからです。

1. データの保管場所は、Amazonの巨大金庫(AWS)

当システム「nsra-keiri」は、PythonAnywhere というプラットフォーム上で稼働しています。
そして、そのPythonAnywhereが動いている土台(サーバー)は、Amazon Web Services (AWS) です。

AWSは、Amazonが提供するクラウドサービスで、以下のような組織が利用しています。

  • 米国防総省(ペンタゴン)
  • NASA(アメリカ航空宇宙局)
  • 日本の大手銀行や政府機関

つまり、このシステムのデータは、私の自宅のパソコンに入っているわけではありません。
世界中の政府や金融機関が信頼を寄せる、24時間365日、武装した警備員と高度なサイバーセキュリティに守られたデータセンターの中に厳重に保管されています。

個人でこれと同じレベルのセキュリティ環境(物理的な警備や防火設備含む)を構築することは、不可能です。
だからこそ、私は「自分でサーバーを作る」のではなく、「巨人の肩(AWS)に乗る」ことを選びました。

2. 枠組みとしての安全性(Django)

場所が安全でも、鍵が開いていては意味がありません。
システムの構築には、InstagramやPinterestなど、世界規模のWebサービスでも採用されている Python / Django(ジャンゴ) という枠組みを使用しています。

Djangoには、Webシステムへの攻撃として代表的な「SQLインジェクション(データの盗み見)」や「クロスサイトスクリプティング(不正なプログラム実行)」を防ぐための防御機能が、最初から標準装備されています。
私がゼロから防御壁を作るのではなく、世界中のエンジニアによって鍛え上げられた「標準の防御壁」をそのまま採用することで、高い安全性を担保しています。

3. 「決済情報を持たない」というリスク管理

もう一つ、皆様が心配されるのが「クレジットカード情報の漏洩」です。
これに対する当システムの回答はシンプルです。
「そもそも、お客様のクレジットカード情報を、当システムのデータベースには一切保存しない」という設計にしています。

現在の運用:銀行振込

現在は、最も確実でアナログな「銀行振込」のみを採用しています。
システム上でお金のやり取りが発生しないため、カード情報が漏れるリスク自体が物理的に存在しません。

将来的な運用:専門家への委任

将来的にカード決済を導入する場合でも、Stripe(ストライプ) などの世界的な決済代行会社を利用します。
カード番号は決済会社の高度なセキュリティ下で処理され、当システムには「決済が完了した」という信号だけが届きます。

「危険なもの(機密情報)は自分で持たず、プロに預ける」。
これが、現代のWebシステムにおけるセキュリティの鉄則であり、私が徹底しているポリシーです。


セキュリティとは、「絶対に壊れない壁」を作ることではなく、「信頼できる場所に、正しい方法で保管する」ことです。
どうぞ安心して、あなたの大切なデータをこのシステムにお預けください。

クラウド上の頼れる存在、PythonAnywhere。

開発者が押さえておくべき「3つの神器」と、エラーとの付き合い方

Webシステムを自作する際、多くの人が躓くのが「サーバーへの公開(デプロイ)」です。
AWSやVPSは自由度が高い反面、セキュリティ設定やOSの管理など、開発以外の知識が膨大に求められます。

私が「nsra-keiri」の運用基盤として選んだのは、PythonAnywhereでした。
その理由は、余計なインフラ管理を削ぎ落とし、「コードを書くこと」に集中させてくれるからです。
今回は、このPythonAnywhereを使いこなすために必須となる3つの機能(Files, Web, Consoles)と、Django開発における勘所について解説します。

本記事の構成

  • 1. 管理画面の基本:Files, Web, Consoles の役割
  • 2. Filesの中身:Djangoを構成する5つの重要ファイル
  • 3. Webタブ:エラーログは「答え」を知っている
  • 4. Consoles:黒い画面(ターミナル)の歩き方

1. 管理画面の基本:Files, Web, Consoles

PythonAnywhereのダッシュボードは非常にシンプルです。開発者が主に見るのは、以下の3つのタブだけです。

Files(ファイル)
Windowsのエクスプローラーのような場所です。サーバー上にアップロードされたプログラムの修正や、設定ファイルの編集をここから直接行えます。
Web(ウェブ)
サーバーの「司令塔」です。アプリの再起動(Reload)や、エラーログの確認を行います。コードを書き換えた後は、必ずここで再起動ボタンを押す必要があります。
Consoles(コンソール)
いわゆる「黒い画面」です。コマンドを入力してデータベースを操作したり、ライブラリをインストールしたりする「作業場」です。

2. Filesの中身:Djangoを構成する重要ファイル

「Files」タブを開くと、プロジェクトの中身が見えます。
Djangoフレームワークにおいては、以下のファイルがそれぞれの「職務」を全うすることでシステムが動いています。

ファイル名 役割(たとえ話)
models.py 「設計図・金庫」
どのようなデータを保存するか(売上、顧客、日付など)を定義します。データベースの構造そのものです。
views.py 「店員・処理係」
ユーザーからの「保存したい」「見たい」というリクエストを受け取り、計算したりデータベースに問い合わせたりする、処理の中心です。
urls.py 「受付・案内係」
ブラウザのURLを見て、「経費登録ならあちらの係(View)へどうぞ」と適切な処理へ案内します。
settings.py 「ルールブック」
パスワード、言語設定、使用するアプリの登録など、システム全体の基本設定を管理します。
.html 「ショーウインドウ」
最終的にユーザーの目に触れる画面です。views.py から受け取ったデータを、見やすく表示します。

3. Webタブ:エラーログは「答え」を知っている

開発中、画面に「Something went wrong」といきなり表示されることがあります。
この時、慌てずに「Web」タブを開いてください。そこにある Error Log のリンクこそが、解決への最短ルートです。

Example:
NameError: name ‘datetime’ is not defined

ログの一番下を見れば、「何行目で」「何が起きているか」が書いてあります。
上記なら「datetimeという言葉が定義されていない(import忘れ)」が一目瞭然です。エラーログを恐れず、読み解く癖をつけることが、安定稼働への第一歩です。

4. Consoles:黒い画面の歩き方

最後に、コンソール(Bash)での重要な2つの操作について触れます。

① cd (Change Directory)

これは「部屋を移動する」コマンドです。
ファイル操作をする際、自分が今どのフォルダにいるかは重要です。

$ cd myproject

(myproject という部屋に入る、という意味です)

② (venv) の役割

コンソールの入力行の先頭に (venv)(myenv) と表示されているでしょうか。
これは「仮想環境(Virtual Environment)」に入っている印です。

仮想環境とは、そのプロジェクト専用の「道具箱」のことです。
もし (venv) が表示されていない状態でライブラリをインストールしても、システムには反映されません。
作業をする前には必ず workon myenv などのコマンドで、正しい道具箱を開く(仮想環境を有効にする)ことが鉄則です。


PythonAnywhereは、これら3つの画面を行き来するだけで、本格的なWebシステムを運用できる素晴らしいサービスです。
黒い画面に怯えることなく、少しずつ「相棒」としての付き合い方を覚えていけば、開発はもっと楽しくなります。

【AI活用術】Geminiはエスパーではない。「伝える難しさ」とそれを乗り越えるための対話テクニック

「AIに頼めば、あっという間にシステムができる」
世間ではそう言われていますが、実際に数ヶ月にわたってGeminiとペアプログラミングを行ってきた私の実感は少し違います。

AIは優秀ですが、決してエスパー(超能力者)ではありません。
こちらの意図が伝わらず、エラーの迷宮に迷い込むことも一度や二度ではありませんでした。

今回は、私が業務アプリ「NSRA-KEIRI」の開発を通じて痛感した「AIに伝えることの難しさ」と、それを乗り越えるために編み出した「打開策(コミュニケーション術)」について共有します。

目次

  1. Geminiは「察して」くれない:開発現場のリアル
  2. 壁その1:長くなるほど「記憶」が曖昧になる
  3. 打開策:「共有情報の再定義」というテクニック
  4. 壁その2:回答の無限ループ
  5. 打開策:人間側が「視点」を変えて提案する
  6. まとめ:AI時代に必要なのは「翻訳力」と「忍耐力」

1. Geminiは「察して」くれない:開発現場のリアル

Geminiとのやり取りは、非常に優秀な、しかし「少し物忘れの激しい新入社員」への指示出しに似ています。
基本的な知識は人間を凌駕していますが、文脈(コンテキスト)の理解には限界があります。

「いつものアレでやっておいて」
この言葉はAIには通用しません。毎回すべての環境(OS、言語のバージョン、現在のファイル構成など)を入力して問いかけるわけではないため、Geminiも不足した情報を「推測」で埋めて回答してきます。
この「推測」がズレた時、開発は停滞します。

2. 壁その1:長くなるほど「記憶」が曖昧になる

開発が進むにつれ、チャットの履歴は膨大になります。
すると、「以前このファイルを修正したはずなのに、なぜ古いコードを提案してくるんだ?」という事態が頻発します。

AIの記憶領域(トークン)には限界があり、古いやり取りは徐々に忘れられていくからです。
ここでイライラして「さっき言ったでしょ!」と怒っても、AIには届きません。

打開策:「共有情報の再定義」というテクニック

私が実践している解決策は、チャットが長くなったり、話が噛み合わなくなったりした時に、あえて立ち止まることです。

「今、共有化する情報は何ですか?」

そう問いかけ、現在のファイルの状況やエラーログ、実現したいゴールを改めて提示し直します。
「分かっているはずだ」という思い込みを捨て、定期的に前提条件をリセットする。この一手間で、Geminiの回答精度は劇的に回復します。

3. 壁その2:回答の無限ループ

エラーが発生し、Geminiに修正コードを書いてもらう。それを貼り付けるが、また同じエラーが出る。
「すみません、修正しました」とGeminiが新しいコードを出すが、よく見るとさっきと同じコード…。

この「無限ループ」にハマると、時間だけが過ぎていきます。

打開策:人間側が「視点」を変えて提案する

ループし始めた時、私はGeminiを信じるのを一時的にやめます。
「修正して」と頼むのではなく、自分でネット検索をしてヒントを探したり、エラーの視点を変えてみます。

  • 「コードではなく、設定ファイルが間違っているのでは?」
  • 「このライブラリのバージョンが古いのでは?」

このように、人間側から「こういう可能性はないか?」と提案することで、Geminiが「ハッ」としたように正しい答えを導き出すことが多々あります。

まとめ:AI時代に必要なのは「翻訳力」と「忍耐力」

AI開発は「全自動」ではありません。
こちらのやりたいこと(要件)を、AIが理解できる言葉に噛み砕いて伝える「翻訳力」
そして、伝わらない時にも感情的にならず、手を変え品を変えアプローチする「忍耐力」

この2つこそが、AIを有効に使うための必須スキルだと感じています。
Geminiは最強のパートナーですが、それを導くのはあくまで人間の役割なのです。

【開発秘話】Geminiと二人三脚。非エンジニアがPythonで業務アプリを完成させるまでの記録

副業を考え、自分のこれまでの社会経験が生きる道を探したとき、たどり着いた答えが「業務アプリの作成」でした。
世の中には大手メーカーのソフトが多く存在しますが、現場には「もっとこうしたい」という個別化(カスタマイズ)のニーズが必ずあると考えたからです。

しかし、私はプロのエンジニアではありません。
この記事では、私がAIパートナー「Gemini」と相談しながら、どのようにしてPythonとDjango、そしてPythonAnywhereという環境にたどり着き、実用的なシステムを作り上げたのか。
その試行錯誤と、AIとの付き合い方について記録します。

目次

  1. Kotlin、Blazorでの挫折。そしてPythonへの転換
  2. 「コードを書く」のではなく「指示を理解する」ことに徹する
  3. Geminiとの知恵比べ:バージョン問題と無限ループ
  4. 機能拡張と公開:経費精算から統合管理へ
  5. AIに仕事を奪われるか?生成AI時代の「人間の役割」

1. Kotlin、Blazorでの挫折。そしてPythonへの転換

最初から順調だったわけではありません。最初はKotlinやBlazorなど、いくつかの技術を試しては寄り道をしていました。
しかし、思うようなものができず、開発は一度頓挫しました。

時間をおいて、改めてGeminiに相談してみました。
「業務アプリを個人で、効率よく作りたい」。
そこで提案されたのが、現在の構成である「Python + Django + PythonAnywhere」でした。

不思議なもので、Geminiもしばらく時間が経つと、性格が変わったような気がすることがあります。
以前は提案してこなかった解決策を、成長した彼(彼女?)が提示してくれたおかげで、今の開発スタイルにたどり着くことができました。

2. 「コードを書く」のではなく「指示を理解する」ことに徹する

まず最初に取り掛かったのは「経費管理システム」でした。日頃の営業活動で、外出先での出費をスマホで簡単に記録したかったからです。

コピペの繰り返し、その先に見えたもの

開発フローはシンプルかつ泥臭いものです。
Geminiにやりたいことを問いかけると、作成すべきファイル名とコードが返ってきます。私はそれを、場所を間違えずにひたすらコピペします。

当然、エラーが発生します。またGeminiに問いかけ、修正コードをコピペする。
最初はチンプンカンプンだったPythonAnywhereの構造(Consoles, Files, Web, Database)も、この反復作業の中で少しずつ理解できるようになりました。

プログラミングをどこまで理解すべきか?

ここで一つの決断をしました。
「自分でも修正できるようにコードを深く理解すべきか?」
Geminiと相談して決めた私の方針は、「プログラミング(詳細な記述)はGeminiに任せ、自分はGeminiの指示を理解できるレベル(監督)に徹する」ことでした。

3. Geminiとの知恵比べ:バージョン問題と無限ループ

もちろん、AIは万能ではありません。開発中には何度も「AIとの格闘」がありました。

バージョンの壁

環境構築の際、Geminiが推奨するバージョンが、実際の最新版と違うことがよくあります。
あまりに古いバージョンを推奨されたとき、「本当にそれでいいのか?」と問い返しても、やはり古い方を推してくる。
そんな時は、「ダメだったら戻す」と覚悟を決めて、自分の判断で最新版をインストールして進めることもありました。

回答のループと「共有化する情報」

Geminiはこちらの環境をすべて記憶しているわけではありません。推測で回答してくることもあります。
長いチャットになると文脈が忘れられ、「さっき言ったのになぜ?」となることも。

これに対する私の対処法は2つです。

  • 情報の再定義: 新たな問い合わせをする際に、「共有化する情報は何か?」とこちらから確認情報を加える。
  • 外部リソースの活用: エラー解決策がループし始めたら、一度Geminiを諦める。ネット検索でヒントを探し、「こういう方法はどう?」と逆にGeminiに提案する。

4. 機能拡張と公開:経費精算から統合管理へ

動作確認を繰り返し、「経費申請」機能が完成した段階で、PythonAnywhereのHackerプラン($5/month)に申し込み、独自ドメインを取得して公開しました。

一度公開までたどり着くと、開発は加速します。
販売管理、仕入管理、在庫管理、給与・勤怠管理、そして報告書管理。
これまで自分が社会経験の中で「必要だ」と感じてきた機能を、次々と追加していきました。

5. AIに仕事を奪われるか?生成AI時代の「人間の役割」

私はChatGPTが話題になり始めた頃から有償版を使い、その後、Googleのエコシステムとの親和性からGeminiへ移行しました。
プログラミングだけでなく、市場予測、株価予測、健康相談、確定申告まで、今や私の生活にAIは欠かせません。

よく「生成AIに仕事を奪われる」と言われますが、私はそうは思いません。
これまで「情報量」だけで勝負してきた業務は代替されるでしょう。しかし、これからの成否を分けるのは以下の2点です。

  • 生成AIから生み出された回答を、いかに実現するかという「行動力」
  • 生成AIをどう使うかという「想像力」

そして何より、AIがあってもなくても、人としての営みの本質は変わらない気がしています。
これからもGeminiという相棒と共に、現場の役に立つシステムを作り続けていきます。

経費管理機能の詳細

「入力の手間」を減らし、「お金の流れ」を見える化する。
NSRA-KEIRIの経費管理は、個人事業主の実務に特化しています。

大量の明細を一括処理「CSVインポート」

銀行口座やクレジットカードのWeb明細(CSV形式)を、そのままシステムに取り込むことができます。日付や金額を一つひとつ手入力する必要はありません。AIによる自動仕訳の補助で、経理作業の時間を大幅に短縮します。

  • ネットバンキング・カード明細に対応
  • 入力ミス・漏れを防止
  • 重複データのチェック機能付き

スマホで完結「経費登録フォーム」

出先でもサッと入力できる、シンプルで直感的な登録画面です。スマホのカメラで撮影した領収書画像をそのまま添付可能。電子帳簿保存法の要件を満たすための「証憑(しょうひょう)管理」も、この画面からスムーズに行えます。

  • 領収書・レシート画像のアップロード
  • 勘定科目の簡単選択
  • インボイス(適格請求書)情報の記録対応

経営判断を助ける「カテゴリー別グラフ」

入力されたデータはリアルタイムで集計され、見やすいグラフに変換されます。「今月は何にいくら使ったか」「交際費が増えすぎていないか」などが一目でわかるため、直感的なコスト管理と利益の予測が可能になります。

月別・科目別の推移を可視化
  • 無駄な経費の早期発見
  • 確定申告前の収支予測に活用

面倒な経理作業から解放されませんか?

無料で試してみる

料金を確認する

販売管理、仕入管理、在庫管理

見積・請求から、発注・在庫管理まで。 商流のすべての業務へここからアクセスできます。

販売管理 (売る)

お客様へのアプローチから代金回収までを管理します。

  • 見積書の作成・発行
  • 受注登録・注文請書
  • 納品書・請求書の発行

仕入・在庫管理 (買う・管理)

商品の確保から在庫の変動・棚卸までを管理します。

  • 仕入先への発注
  • 入荷検品・在庫計上
  • 現在の在庫数確認・棚卸

業務の流れ

1. 見積・受注

販売管理機能

2. 発注・入荷

仕入機能(在庫増)

3. 納品・請求

販売機能(在庫減・売上)