開発-Linuxでの「キャッシャーの職場」。 GPL

最新ニュース



このシステムは15のキャッシュデスクで動作します。 追加されます。 git here github.com/redeyser/IceCash 。 私のメールはこちらredeyser@gmail.comビデオです

www.youtube.com/watch?v=69AF7n6sxDY



背景



そのため、私は小売チェーンのプログラマー/管理者として働いています。 私は2年前から働いていましたが、それ以前は特殊なプログラムや機器のサービスに出会ったことがありませんでしたが、時間の経過とともにそれを理解しました。 私の組織の特徴は、当局が通常の設備に明確に投資しないことです。 つまり、近代化のような匂いはまったくありませんが、多くの場合、再び使い果たされたものを交換するために急ぐ必要があります。 さらに、ほとんどのコンセントには、インストールされているWindows XP OSのライセンスがありません。 小売店では、老朽化が進んでいるコンピューターに基づく1つまたは2つのキャッシュデスク、同じ古い会計デバイスShtrikh-M PRK、さまざまなバーコードスキャナー(COM、USB、キーボード)およびメトラートレドスケールがあります。 ソフトウェアのうち、最初はライセンス(キー付き)1C v7.7 "STRICH-M Cashier"のみがありました。



可能な限りLinuxを展開する



チケットオフィスの監視業務に加えて、私はすべての1Cコンピューター、ハードウェア(新しいものでもありません)、サーバーを備えたオフィスとリモートブランチを担っていました。 そして、最初はこれをすべて提供することができませんでした。 正直なところ、私はUnixophileなので、急いでLinuxを紹介しました。 次第に、オフィスクライアントをLinuxに移行することができました。すぐに呼吸がしやすくなり、コンピューターがウイルスで成長しなくなり、ハードウェアを監視し、必要なプログラムを選択してインストールするだけになりました。 クライアントの主な作業はWindowsでも続けられましたが、すでにサーバー上の端末であったため、より簡単です。 可能であれば、サーバーもLinuxに移行し、Windows Server 2003を備えたサーバーのみを残しました。





チェックアウト時のWindows-管理者への余分な作業。



フラッシュドライブからのウイルスがチケットオフィスに頻繁に入り(音楽とゲームは絶えず対応していた)、OSを定期的に変更する必要がありました。 もちろん、新しくインストールされたOSでは、外部メディアの接続が禁止されていましたが、管理者ユーザーを拒否する方法はありませんでした。Bar-MCashierプログラムは適切に動作することを拒否しました。 地元のハッカー-販売者は絶えず保護を破り、稼働中のコンピューター上のウイルス、ゲーム、ライセンスのないソフトウェアを記録しました! わからない、たぶん、これらすべてのトラブルを解消するのに十分な忍耐力がなかったのですが、Linuxを興行所に置くというアイデアが生まれました。 会計レジストラのドライバーに問題がありました。スケールをロードするための特別なプログラムは窓の下でのみ動作します(ワインはありません!)。また、PMKプログラム自体もありませんでした(キャッシャーの職場)。



LinuxでのDensy-Cash



インターネットを検索したところ、DENSI-CASSが見つかりました。 プログラムの費用は1000rです。これは正気です。 私はubuntu / debianにインストールしようとしましたが、うまくいくようです。 WindowsがインストールされているサーバーからVPN経由でダウンロードすることで、スケールをロードする問題を解決しました。 DENSI-CASHIでの6か月の仕事の後、いくらかの経験が蓄積されました。 新しいキーボードスキャナーがバギーで動作するのは不満でしたが、それはプログラム自体が原因でした。 プログラム自体も落ちましたが、ubuntuとの互換性については間違っていたのかもしれません。 バージョンごとに、プログラムは概念を変更し、更新に適応する必要がありました。 開発者は無料のコードを発表しましたが、このコードはすべてオープンではなく、十分に新鮮ではありません。 DENSY-CASHIERから独自のブランチを作成することは、クローズドPRKドライバーで機能するため、意味のない演習です。

私にとって、GPLとは、プロジェクトが完全にオープンであり、共同開発を促進することを意味します。 友好的ではない共同設計ポリシーを持つ純粋に商業的なプロジェクトがありました。

私は彼らが仕事をうまく行っていないとは言いたくありませんが、もし彼らがそのような方法で彼らの知的財産を保護しなければ(彼らが商業的成功の鍵だと思うので)、開発ははるかに効率的になります。



shtrikh-m GLP pythonドライバーに基づくLINUXのキャッシュデスク



sourceforgeには、sourceforgeの特定のDmitry Shamov プロジェクトによってPythonで記述されたgplドライバーがありました。 著者に手紙を書いて、彼は確認しました-GPLプロジェクトは、あなたがそれでやりたいことをします。 インスピレーションを受けて、私は次の新しいクライアントスキームを見つけました。

会計レジストラとデータベースは、単純なAPIを使用してソケット(単純なtelnetでも)を介して通信できるデーモンによって制御されます。 これは、ネットワークから最も問題のある機器に直接アクセスし、あらゆる種類のクライアントを開発してこのAPIにバインドできるようにするためです。 したがって、私は、クライアントのインターフェース、販売の登録方法、および販売の登録プロセスに関する他の個人的な見解を誰にも押し付けていないようです。 さらに、複数のクライアントの1つの会計ですぐに作業が可能になります。これは私には必要ではありませんが、誰かが役に立つと思うかもしれません。 私はmysqlデータベースを選択しましたが、それで簡単です。 テストでは、ソケットクライアントを使用して、STDINから要求をストリーミングできます。 これらはすべてpythonで作成する必要があり、変更および理解が容易であり、さらに多くのプラットフォームです。 クライアント自体をWEBで作成することにしました。つまり、html + javascript + phpを使用します。 もちろん、これにはWebサーバーが必要です(apache2の方が簡単です)。 私の意見では、この構造はプロジェクト内で簡単に完成し、分岐し、rdp、vnc、sshに頼ることなくWebページの形で興行にアクセスすることができます(これは不要ではありませんが)



どうした



現在はテスト段階ですが、多くの作業があり、すべてを適切にテストすることはできません。 実際、何が起こったのか、私はそれが好きだった。 すぐに機能します。チェックセグメント、技術的なゼロ化、キャッシュドロアーを開くために、ドライバーに会計帳簿プログラミングを追加しました。 frkデーモンはトランザクションのアップロードを行い、価格表と割引カードをSHTRIH-Mファイル形式でロードします。 商品、ディスカウントカードの視覚的な選択は、視覚的なボタンとキーボードの両方を備えた登録モードで機能します。 OSはgnomeなしでDebian 6を取り、IceWMをインストールし、Xセッションの自動実行を行い、ssh、openvpn、x11vnc、samba、pidginをインストールした必須プログラム(mysql、apache、phpなど)を除き、最小限のプログラムを追加しました)、シンプルなブラウザ。 このすべてをUSBフラッシュドライブで展開し、ハードドライブを使用しないと考えているため、直接テストしています。これらは現在高価であり、古いものは信頼できません。 システム自体は1.4GBを占有するため、2GBのフラッシュドライブでも使用できます。 ソケットクライアントを介してバックオフィスと既にやり取りしていましたが、これは少し修正されました。 バックオフィスとの相互作用の特徴:モデムを介した通信またはVPN経由の専用。 体重計は2つ目のネットワークカードを介してネットワーク経由で接続され、体重計をロードするためのポートはチェックアウト時にファイアウォールによって転送されます。 すぐに私はコンセントにインストールするつもりです。 すべてをテストしたらすぐに、sourceforgeにプロジェクトを投稿します。 プロジェクトはIceCashと呼ばれます。 一般的に、sourceforgeで他の会計レジストラに他のドライバーを見ましたが、私にとってはSHTRIH-M PRK機能を実装するのに十分でした。



私のイデオロギー的な目標は、共同開発の可能性を持つ、本当にオープンソースのキャッシャーの職場を作ることであるため、私はこのようなプロジェクトに興味を持って、彼らのタスクのためにプロジェクトを完了する準備ができている人々がいることを期待してこの記事を書きました。 この問題に関するKhabrahabrovitesの意見も興味深いでしょう。

ご清聴ありがとうございました。




All Articles