0

私は今、 FDTと呼ばれるプログラムに対処する必要があります。このプログラムは、私が働いている会社によってサポートされなくなりましたが、同じプログラムを使用しています。xml今、私は私が入ることができるサイトから、csvまたは他の何かからプログラムに新しい注文を挿入する必要がありますmagento。私はこのプロセスを自動化しようとしています。オフィスでのすべての作業は、在庫切れのチェック、請求書の印刷など、このソフトウェアFDTに基づいて行われます。

私は今、profilerイベントを追跡するために使用することを考えています。注文したときにプログラムがどのような処理をするのか知りたいのですが。私はProfilerの優れたユーザーではありません。どのテーブルに影響を与え、どの列を更新または書き込みするかを知ることができれば、いくつかの提案が必要です。

その上に新しい注文番号があります。プログラムが生成します。これは一意のIDであり、整数です。パターンがわかりません。私は変更を加えることができるテストサーバーを持っており、試行錯誤は問題ありません。

どのように進めるか、少なくとも始めるべきかについてのいくつかの提案をいただければ幸いです。

最も重要なのはトレースすることだと思いますT-sqlが、どのイベントとどのフィルターを使用するのでしょうか。それがばかげた質問であるならば申し訳ありません、私は..ソースコードを学ぼうとしています、そしてサポートはオプションではありません。

4

1 に答える 1

1

この質問には、トレースの方法、サポート契約後のアプリケーションの処理方法、アプリのリバースエンジニアリング方法、そしてそれが良いアイデアである場合でも(場合によってはそれが唯一のアイデアである場合もあります)、非常に多くの部分があります。これを一連の狭い技術的な質問として再質問するか、プログラマーに質問してください(FAQを読んだ後、彼らは特定の質問だけが好きです)

うん、それはやった。大規模な組織では、通常、これらのタスクは、予算の素晴らしい力を無駄にせず、元のベンダーとの新しい契約を個人的に交渉することができない技術者に委ねられます。私はあなたが支払うべき食費を持っていて、上司に「まあ、私たちはサポート契約を結ぶまで何もしません」と言うことができないと思います

ステップ0テーブルの図を作成します-エンティティの関係を計算し、データディクショナリ(名前とデータタイプだけでなく、各テーブルと列の動機を説明するもの)を組み立てます

ステップ1プロファイラをSQL2008のアクティブなインスタンスに接続します。SQLプロファイラについて特定の質問がある場合は、新しい質問を開きます。1つのヒント-マルチユーザーインスタンスに接続している場合は、自分のユーザー(接続文字列内のユーザー)のみにフィルターをかけます http://blog.sqlauthority.com/2009/08/03/sql-server- Introduction-to-sql-server-2008-profiler-2 /

ステップ2アプリケーションでアクションを実行し、どのSQLが発行されたかを監視します。SQLの場合は、コピーしてManagement Studioに貼り付けることができるため、クエリを図解して独自のテスト実行を実行できます。ストアドプロシージャの場合は、ストアドプロシージャのソースコードを読みます。ストアドプロシージャが暗号化されている場合、復号化できる場合とできない場合があります。コードを復号化する場合のシナリオは、コードを再配布しておらず、サポート会社が存在しない場合です。

ステップ3アプリを理解したら、レポートを作成できます。たとえば、新しいトランザクションまたは古いトランザクションを別の方法で記録することもできます。

アプリが.netまたはjavaで記述されている場合は、アプリを逆コンパイルしてコードを読み取ることができます。そのソースからカスタムビルドを作成するのは楽しいことではありません。より可能性の高いことは、同じテーブルを対象とするアプリケーションを作成するか、場合によってはすべてのデータを元のアプリから新しい特注のアプリにエクスポートすることです。

于 2013-01-30T16:00:31.940 に答える