在庫データを簡単に入力できるシステムの開発（編集中）

## まず初めに伝えておくべきこと
早めにシステムを導入したいのであれば、GoogleフォームとGoogleスプレの組み合わせをお勧めします。
### 手法
1. Googleスプレに製品の品番情報の一覧を作成
1. Googleフォームを作成し、スプレと連携させる
1. Googleフォームの途中入力状態（品番が多数ある場合は記述式をお勧め。）でリンクを保存
1. Googleスプレにリンクを貼り付け、その情報をQRコード化する

事前入力されたフォームに日本語が含まれている場合は[日本語を変換](https://tech-unlimited.com/urlencode.html)しておくこと

## 在庫管理システム
### メリット
* 在庫管理を徹底することにより無駄な注文を省く
* エクセルデータ入力により発生してしまう入力ミスを避ける

### デメリット
* 既製サービスの導入費用がかかる

### 手法
プロトタイプとして、品番ごとにバーコードを作成し、スマホなどのリーダーで品番情報を収集、その品番の残数をスマホで入力したデータを社内ネットワークを通じてエクセルデータに追加する。

## システム開発の手順
1. バーコード生成
    1. 品番にユニークなバーコードを作成する
    1. 作成させるためにPythonを使う
    1. Pythonの[barcode](https://github.com/WhyNotHugo/python-barcode)パッケージの理解
    1. [barcodeパッケージのバーコード画像作成プログラム](https://qiita.com/K4715959155160/items/f3d0728f21c48402f9df)を開発する
    1. エクセルによる生成も可能（むしろ今回ならこっちの方が楽）
1. バーコードリーダー
    1. リーダーの手段を検討
        1. スマホ
            1. 拡張性あり
            1. 開発に時間がかかる
            * [Fourguncy：専用アプリで読み取る](https://forguncy.zait.jp/report1/)
            * [Webアプリケーションでバーコードを読み取らせる手法](https://blog.aspose.com/ja/barcode/python-barcode-reader/#python-barcode-reader-api)
            * [自作](https://qiita.com/K4715959155160/items/f53bec2a3980e484ee6c)
            
        1. 専用機
            1. 導入スピードが早い
            1. 拡張性が難しい
1. バーコードリーダーとサーバーの通信
    1. 受信したデータをエクセルに追加する

## 参考サイト
https://expy-style.net/python/app-bcstockmanager/

https://expy-style.net/python/chain-vba-bcreader/

https://expy-style.net/python/excel-bcstockmanager/

https://expy-style.net/others/app-firebase-bcstockmanager/

https://github.com/twostraws/CodeScanner











## 追記・生成系AIによる回答集
### バーコードを読み取る手段を考えられるだけあげてください。
* バーコードを読み取るためには、さまざまな手段があります。以下にいくつか一般的な手段を挙げてみます。
    1. **バーコードリーダー（スキャナー）:** 専用のバーコードリーダーを使用するのが最も一般的な方法です。これは光学センサーを備え、バーコードをスキャンしてデジタルデータに変換します。USB接続やBluetoothなどでコンピューターやモバイルデバイスに接続できます。
    1. **スマートフォンアプリ:** スマートフォンにバーコードリーダーアプリをインストールし、カメラを使用してバーコードをスキャンすることができます。多くの小売業者やアプリがこれをサポートしています。
    1. **ウェブカメラ:** パソコンに内蔵されたウェブカメラを使用してバーコードを読み取ることもできます。専用のソフトウェアやウェブベースのアプリケーションを使用してください。
    1. **携帯型デバイス:** ハンディターミナルや携帯型デバイスを使用してバーコードを読み取ることができます。これらのデバイスは、小売業や在庫管理などの分野でよく使用されています。
    1. **コンピューターカメラ:** デスクトップコンピューターに接続されたウェブカメラや組み込まれたカメラを使用して、バーコードを読み取ることができます。特定のソフトウェアが必要な場合があります。
    1. **RFIDテクノロジー:** バーコードとは異なり、RFID（Radio-Frequency Identification）は電波を使用して情報を読み取ります。RFIDリーダーを使用して、バーコードと同様にアイテムを識別できます。

これらの手段は、異なる状況や要件に応じて選択できます。具体的な用途や環境によって最適な方法が異なる可能性があります。

* バーコードを読み取る手段には、以下のものが考えられます:

    1. **バーコードリーダー**: 反射光を内蔵するセンサーによってバーコードを読み取る装置[3]。
    1. **スマートフォンアプリ**: スマートフォンのカメラを使用してバーコードを読み取ることができるアプリケーション[1]。
    1. **POSシステムのバーコードリーダー機能**: バーコードを読み取り、商品情報を自動的に取り扱うPOSレジスター（レジ）[3]。

    これらの手段は、商品の識別や情報取得に広く使用されています。

    Citations:
    [1] https://rpointcard.faq.rakuten.net/detail/000012374
    [2] https://orange-pos.jp/pos-media/pos/12625.html
    [3] https://www.postas.co.jp/makesmiles/536/
    [4] https://qr-biz.quel.jp/support_qr.php?page=consl_jirei
    [5] https://nice-system.co.jp/blog/169

### バーコードリーダーで読み取った情報をwifiを介して同ネットワーク内のコンピュータにデータとして転送する手段を考えるだけあげてください。

* バーコードリーダーで読み取った情報をWi-Fiを介して同じネットワーク内のコンピュータに転送するための手段はいくつかあります。以下にいくつかの一般的な手法を挙げてみます：

    1. **Wi-Fi Direct:** バーコードリーダーがWi-Fi Directをサポートしている場合、直接データを同じネットワーク内のコンピュータに転送できます。Wi-Fi Directはアクセスポイントを介さずにデバイス間で直接通信を行うため、簡単なセットアップが可能です。
    1. **HTTP POSTリクエスト:** バーコードリーダーは、HTTP POSTリクエストを使用してデータをWebサーバーに転送できます。同じネットワーク内にWebサーバーを構築し、リーダーが読み取ったデータをこのサーバーに対してPOSTリクエストで送信することができます。
    1. **MQTT通信:** MQTT（Message Queuing Telemetry Transport）は、軽量なメッセージングプロトコルで、IoTなどの分野でよく使用されています。バーコードリーダーがMQTTをサポートしている場合、読み取った情報をMQTTブローカーに送信し、同じネットワーク内のコンピュータが購読してデータを受信できます。
    1. **WebSocket通信:** WebSocketは、双方向通信を提供するプロトコルであり、リアルタイムなデータ転送に適しています。バーコードリーダーがWebSocket通信をサポートしている場合、データをWebSocketを介して同じネットワーク内のコンピュータに送信できます。
    
これらの手段は、バーコードリーダーの機能やサポートしている通信プロトコルに依存します。具体的なデバイスやシステムによって最適な方法が異なるため、デバイスの仕様を確認して適切な手段を選択することが重要です。

* バーコードリーダーで読み取った情報をWi-Fiを介して同一ネットワーク内のコンピュータにデータとして転送する手段には、次の方法が考えられます:

    1. **ワイヤレスバーコードリーダー**: Wi-Fiに直接接続されたバーコードリーダーを使用して、リアルタイムでデータをコンピュータに転送します[1]。
    1. **中継ポイントを使用した転送**: バーコードリーダーがWi-Fi中継ポイントに接続し、中継ポイントを介してコンピュータにデータを転送する方法[1]。

これらの方法を使用することで、バーコードリーダーで読み取った情報を効果的にコンピュータに転送することができます。

Citations:
[1] https://nice-system.co.jp/blog/169
[2] https://rpointcard.faq.rakuten.net/detail/000012374
[3] https://qr-biz.quel.jp/support_qr.php?page=consl_jirei
[4] https://www.postas.co.jp/makesmiles/536/
[5] https://mysmartphonelives.com/2022/11/17/wireless-barcodeleader-app-2022/