質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

10回答

12121閲覧

在庫管理システムを作り、継続的に改良を重ねていくために選択すべき言語および学習方法について

caramarijoe

総合スコア7

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

2グッド

7クリップ

投稿2018/03/15 07:13

現在、エクセルで在庫を管理しています。
在庫は物流フェーズごとに倉庫,輸送,工場の3つに分かれています。
各フェーズごとに、以下のCSVデータがあります。


CSVデータ

商品コード,数量
A,100
B,105
C,95

※実際には2〜3,000行あります。

エクセルにて「在庫管理表」というシートがあり、別シートに移動させた各CSVデータより参照して、各フェーズごとの在庫数及び総数を在庫管理表に表示させています。


在庫管理表

商品 | 総数 | 倉庫 | 輸送 | 工場 |
A  | 30 | 10 |  9 | 11 |
B  | 29 | 10 | 10 |  9 |
C  | 28 |  9 |  9 | 10 |

担当者が各フェーズごとのCSVを毎朝、別システムから出力し、それをエクセルのシートに移動させ、管理者が在庫管理表をチェックしています。

実際には物流フェーズはもっと多く存在し、商品についてもA-1,A-2、A-3と多くのSKUが存在します。
そのため、エクセルが非常に重くなりますので、プログラミングを利用してブラウザで確認したいと考えています。
ざっくりとしたイメージは以下の通りです。

1.各フェーズのCSVデータを担当者がブラウザ上からアップロードする
2.アップロードされたCSVデータを参照し、在庫管理表に反映される。

当方、html、css、javascriptを扱うことができます。
こういった在庫管理システムをつくるためには、どの言語で作るのが良いのでしょうか?

また、今後の展開のためにもブログラミング言語をこの機会に学び、社内の効率化に貢献すべく、作ったシステムの改良を加えていきたいと考えています。
そのため、どういった参考書もしくはwebサイトなどを参考にしながら学んでいくとよいでしょうか?

よろしくお願い致します。

m.ts10806, manzyun👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

szk.

2018/03/15 07:25

とてもよい心がけだと思いますが、個人(1人)でやるつもりですか。 完成の目標は、どのくらい先でしょうか。
bassbone

2018/03/15 07:29

たしかに↑、重要ですね。。。
szk.

2018/03/15 07:43

要件はかなり固まっているようなので、手っ取り早く立ち上げて社内の効率化を図りたいのか、自身の勉強も兼ねて時間をかけれるのかで、提案の方法が変わってくるかと、、、
guest

回答10

0

とてもよい志だと思いますが、
プログラミングのほかにサーバ運用も検討しないといけないので、現時点だとちょっと厳しいかと。

まずは、Excel VBAで担当者、管理者の負担を軽減するツール作成が良いかと。
で、効果がでれば、あらためて会社から予算もらっていわゆるスクールに通わせてもらうのがいいかなぁ。

web化しました!サーバ落ちました業務できません。が、一番コワイですよ。

ちなみに、現時点の内容だと、どのプログラミング言語でも大差ないです。
PHPが一番覚えることが少ないかなとは思います。

投稿2018/03/15 07:46

momon-ga

総合スコア4820

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

私も若干観点がずれるかもしれませんが、まずExcelでの運用をMicrosoft Accessに移行してみてはどうでしょう?

ブラウザで確認したいと考えています

この要望にはすぐに対応するのは難しいかもしれませんが、Accessでデータベース化しておけば、Excelからデータを読み取ったりするよりは容易に開発ができると思いますし、もっとデータ量が増えても対応できるはずです。

当方、html、css、javascriptを扱うことができます。

こういった在庫管理システムをつくるためには、どの言語で作るのが良いのでしょうか?

自分の案ですと SQL を扱える必要は出てきますが、Accessはもちろん、PostgreSQLやMySQL, MariaDB, SQLServerなどにデータベースを移行したとしても、普遍的な部分はありますのでかなり役立ちます。

私の感覚ですと、いきなりブラウザで動くようなWebアプリを作るのは難しいです。ですので、以下のような手順で改善していくと、人的負荷はもとより、新たにソフト開発する仲間を募集する際にも募集をかけやすいかもしれません。

  1. Accessに移行
  2. Accessでフォームやレポート、クエリを作成して、まずはネイティブアプリで開発
  3. Accessでまかないきれなくなったら、別DBへの移行含めてソフトリプレース
    無難なところだとJava、 C#、 PHP、 Ruby on Rails、Python Django、etc...言語選定はお任せします。

私自身、業務支援ソフトの開発会社を転々として、マネージャーや設計職にはついたことはないので、あまり有用な意見ではないかもしれませんが、参考になれば幸いです。

投稿2018/03/15 07:49

manzyun

総合スコア2244

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momon-ga

2018/03/15 07:57 編集

たしかに、accessで業務アプリ作ることは普通ですので、この流れの実現するのは現実的ですね。 web化するのは手段であって、目的は「社内の効率化」ですよね。
guest

0

若干観点がずれますが、言語の選定も大事ですが、業務システムではデータ設計が肝ではないでしょうか。

以前業務システムのデータ設計を勉強するにあたり、こちらの本(+同じシリーズのもの)が参考になりました。
グラス片手にデータベース設計~販売管理システム編

投稿2018/03/15 07:24

bassbone

総合スコア767

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

このレベルだとそもそもレンタルサーバーしか選択肢がないので言語もPHPしか選びようがない。
まずはGoogleスプレッドシートを試す所から始めたほうがいいとは思う。

teratailだと自分でサーバー見る前提になりがちだけど世の中の一般的認識は違う。
そんな業務上重要なサイトをレンタルサーバーで動かしてるとか嘘だろ…と思ってもレンタルサーバーしか視界にない。
AWSとか言っても誰も分からない。

投稿2018/03/15 08:02

kawax

総合スコア10377

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momon-ga

2018/03/15 08:06

あ、これだ。
guest

0

少々提案の角度が違い、すいません。
正直、サーバサイドのプログラミングやSQLの経験がないとなると数年は見ておいたほうがいいです。
(1日中在庫管理システムを作ることが出来る職場であれば、1年以内に完成は可能かもしれませんが、、)

ということで、早急に立ち上げるのであれば、
CSVファイルをそのままDBに取り込んでSQLツールで確認するのが、一番手っ取り早い気がします。
DBはpostgres、SQLツールはa5m2辺りであればどちらも無料です。

HTMLが触れる程度ということは、
サーバの設定や環境構築などハードルが高いモノが多少なりともあります。

また質問中にある

別システムから出力し

そのシステム作った会社に頼むなどはないでしょうか。

投稿2018/03/15 07:55

szk.

総合スコア1400

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

CSVをHTMLのテーブルに展開して見るするだけであれば
javascriptだけで行けそうな気がします
検索や集計など絡むならSQLが必要になり
そうなるとサーバー側のプログラムが必要になると思います。
いくつか触ってみて自分にあうものを選ぶとよいでしょう。
トレンドで言えば、Ruby,PHP,Pythonのどれか
あとは自信があればperlでもいいですし、
サーバーサイドのjsも選択肢にあがるでしょう。
javaは個人でやるには処理コストが高いのであまりおすすめしません

投稿2018/03/15 07:27

yambejp

総合スコア114784

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

javascriptはとりあえず使えるなら
GoogleSpredSheetという手もあり

GoogleSpredSheetはjavascriptで色々自動化できるんですが
GoogleDriveとの連携もできるから
ファイル生成・整理まで自動化できます

Excelだと基本開いてるファイルの値までしか参照できないのですが
GoogleSpredSheetは開いていないファイルの値の参照もできます

投稿2018/03/15 08:26

KazuhiroHatano

総合スコア7804

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

社内のみの取り扱いか、社外からのアクセスも可能か(営業さんが出先で確認できたり) というところも要件をかためる上で必要かと思います。

ただ、あまり個人や社内だけで対応するのは難しいかなと。
もちろん費用面など厳しいというのはあるのかもしれませんが・・・。
既に懸念点としてコメントが出ている通り、いつまでに必要かとか、期限・予算・自身が割ける時間 といったところとの兼ね合いになると思います。

何ヶ月も(もしくは何年も)かけられるのであれば良いですが、
後々のメンテナンス性や、「会社として業務で使っていく」という観点で考えた場合、問題がまだまだたくさんあるのではないかと思います。

業務効率化を目指すのであれば要件定義だけまとめて
外部に(なるべく業務システムに特化したところ)委託するのが最良では、と思います。
Webシステムといってもブラウザからの閲覧・操作だけではありませんし。

投稿2018/03/15 08:06

編集2018/03/15 08:08
m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

javascriptが使えるのでしたら、google spread sheetはいかがでしょうか。
あまり膨大な量のcsvだと、動きが怪しくなりますが・・・

投稿2018/03/15 08:03

namimon

総合スコア726

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

みなさま、たくさんのご教示、ありがとうございます!

初めてのteratailでの質問で、時間軸や予算、範囲についてなど、自分自身でもっと要件を追及できていなかったにもかかわらず、社内効率化という一番の目標について何かとアドバイス頂きましたことに感謝致します。

みなさまからご提案頂いた、Accessやgoogleスプレッドシートなどを活用しながら、まずは目標をクリアしていきたいと思います。

本当にありがとうございました。

投稿2018/03/19 05:09

caramarijoe

総合スコア7

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問