2017-05-02 15 views
0

私はウィンドウアプリケーションを持っています在庫管理システムとEコマースsite.i両側で在庫を同期させるために両方のシステムを統合したいと思います.Webから1つの製品を販売したら、Windowsアプリケーションの在庫を更新する必要があります。 Windowsアプリケーションから電子商取引サイトのインベントリは、このシナリオを達成するためにupdate.howでなければなりません??インベントリデータは、ドメイン上のXML Formateに保持され、そこからXMLがWindowsアプリケーションによって読み込まれる必要があります。このことは全プロセスが自動化されています。内部在庫システムとEコマースサイトを統合する方法は?

+0

と 最後の項目は、同時に両方のアプリケーションから販売されている場合は? @ TheEvilMetalによれば、トランザクションとロックをサポートするストレージを移動する必要があります。 XMLはそれをしません。おそらくXMLであなたのためにそれを行うライブラリを見つけることができますが、XMLはこの目的のために拡大縮小しません。 –

答えて

0

一般的に、ストアドプロシージャやトランザクションなどのようなものへのアクセスがあれば、データベースを更新するほうが適しています。ある場所で何かを変更する必要がある場合は、ストアドプロシージャを更新してすべての場所で更新する必要があり、他の場所を更新することを忘れることはなく、間違いの気づきを減らすことができます。

トランザクションは、ロールバックが発生する原因となるエラーや状況がある場合、変更が取り消され、コミットされない場合に役立ちます。

XMLベースのインベントリシステムを使用することを主張する場合は、システムのもう一方の端がすでに変更されていることを考慮した標準化されたXML対話方法が必要です。インベントリが新しい在庫のために更新されているが、誰かがウェブサイトから何かを購入しようとしている場合は、おそらく紛争が発生する可能性が高い。

ファイルが現在別のプログラム(在庫を追加している在庫管理システム)によって使用されている可能性があります。ファイルを使用できるようになるまでウェブサイト/管理システムを常に待機させることができますが、それは多くの不必要な遅延を追加し、クリーンではありません。

あなたは絶対にXMLを使用する必要があれば、そこにすでにそこにいくつかの良いツールがそのヘルプパースだとXMLの読み取り/書き込みを管理:How do I read and parse an XML file in C#?

+0

しかし、このプロセスを自動化する方法。 5分または10分の定期的な間隔。 –

+0

2つのプログラム間の競合を避けることができるが、文書や制限の変更を考慮する必要がある場合は、XMLがどのプログラムによって更新されるかを制限することによって、オートメーションはファイルに値を書き込む別のスレッドで実行することも、別のサービスで行うこともできます。おそらく、他の人がアップデートのスケジューリングに関してより良い回答を与えることができます。しかし、最終的には、データベースの維持と更新が容易になり、私の最初の選択となります。 – TheEvilMetal

関連する問題