問題タブ [business-objects]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 質の高いドメインモデルのいくつかの優れたオープンソースc#の例は何ですか
私はかなり若い開発者であり、まだ私のキャリアのエミュレーション段階にあります。並行性や、作業単位を使用してビジネス層が永続性トランザクションを制御できるようにするなど、いくつかのトピックについて多くのことを読みました。これらのトピックを実装する、面倒ですが機能的なコードも実装しました。しかし、私は本当にエレガントな実装の実例を見たことがありません。私の周りには良いTDD、パターンに焦点を合わせた役割モデルがあまりないので、私はガイダンスのために外の世界を見ることを余儀なくされています。
だから、私はオープンソースのエンタープライズアプリドメインモデルのいくつかの素晴らしい例を探しています。できればc#で記述しますが、クリーンでエレガントなドメインモデルソリューションの良い例である限り、他の言語でも問題ありません。
私が本当に見たいもののいくつかは、並行性、ビジネスルールとオブジェクト検証、トランザクション/作業単位、および半透過的なロギングメカニズムのためのエレガントなソリューションです。また、ドメインモデルコードでの例外処理に関する実際のベストプラクティスのいくつかを知りたいと思います。
いくつかのオープンソースプロジェクトをランダムに引き裂き始めて、良いものと悪いものを解読しようとすることができることは知っていますが、ここの専門家コミュニティが、作業を合理化するために検討すべきプロジェクトのいくつかの良いアイデアを持っていることを望んでいました。
御時間ありがとうございます。
編集
設計と構築を容易にするフレームワークにはあまり興味がありません。フレームワークの選択、またはフレームワークを使用するかどうかは必要な考慮事項ですが、ここでの私の質問とはまったく別のものです。それらのフレームワーク自体がオープンソースであり、掘り下げるための非常に良い例でない限り。
私が探しているのは、「正しく理解した」プロジェクトであり、柔軟性があり、保守が容易なコードで現実世界の問題を解決し、自分の目で見て、その方法の例を理解できるようにすることです。これは、簡単な50行のチュートリアルの例ではありません。
sap - SAP Business Objects
私は雇用主から、SAPBusinessObjectsで大量のデータを分析するように依頼されました。
それを受け入れる前に、次の疑問があります
。私はプログラミングが大好きで、それとの接触を失いたくありません。このツールに取り組むことで、ソフトウェアの構築を愛する人を興奮させると思いますか?または、ウィザードのようなインターフェイスを介して構成可能なツールのほとんどの部分のようですか?
b。このツールは、調査およびテストの目的で収集されたデータを処理できますか?
グーグルを試してみましたが、1分間に12回以上「ビジネスインテリジェンス」について言及しているビデオしか入手できませんでした。予備的な分析を行うのに役立つ提案やリンクさえあれば役に立ちます。ありがとう...
c# - ビジネス オブジェクトにオブジェクトまたは参照を含める必要がありますか?
ビジネス オブジェクトに他のオブジェクトへの参照が含まれているか (id フィールドが別のデータベース レコードを参照するように)、または実際のオブジェクトのインスタンスが含まれている必要があります。
例えば:
また
c# - 多対多リレーションシップのクラスはどのように設計すればよいですか?
'ProductionLine'それぞれが複数'Stages'あり、各ステージが複数ある製薬会社向けのソフトウェアを開発しているとします。'Machines'
ここで、ステージとそのマシンを記録するために 3 つのテーブルを維持しているとします (議論を揺るがすため、ProductionLine は省略します)。
(1) ステージ(生産ラインが取りうるすべてのステージを表す基礎データ)
(2) マシン (生産工場が持つことができるすべての可能なマシンを表す基本データ)
(3) StageMachines (ステージに割り当てられたマシンの数を表します)
ステージには複数のマシンを含めることができ、マシンは複数のステージの一部になることができることに注意してください。しかし、Machine クラスは Stages のリストを持つべきではありません。なぜなら、それはビジネス問題のドメインによると無関係だからです。
次のクラスを設計しました。
今、私はジレンマに直面しています:
(1) ステージを作成するとき、すべてのマシンからいくつかのマシンを選択してデータを保存する必要があります。私のコードでこれをどのように処理すればよいのでしょうか。次のコードを記述できるはずです。
(2) コード内でこの多対多の関係を維持するにはどうすればよいですか? という名前の 3 番目のクラスを作成する必要があります'StageMachine'か? その場合、Stage オブジェクトを作成するときにマシンをどのように保存すればよいですか?
誰でも私に解決策を教えてもらえますか?
*** 追加の質問は、ステージのマシンを取得するときに、nTier のどこでどのようにマッピングを行うべきかということです。
他のクラスを参照する必要があるクラスの C# での適切な設計パターンは何ですか?
このリンクでは、クラス設計の問題について説明していますが、NTier 設計のステージ オブジェクトのマシンの保存と取得のメカニズムには答えていません。
c# - オブジェクト マスターを埋める方法 - データイル コレクション c#/SQL2005
ビジネス オブジェクト コレクションを使用しています。
(データセットは使用しません。ジェネリック コレクションのみ。)
ビジネス オブジェクトのコレクションは、SQL リーダーを使用して入力されます。
マスター詳細 (または親子) コレクションを埋めるための最良の方法は何か、あなたの意見を知りたいです
Invoice と Invoice_Details の 2 つのオブジェクトがあるとします。
Invoice オブジェクトには汎用コレクション「Details」(Invoice Details のタイプ) があります。
両方のコレクションを機能させる/埋めるための最良のアプローチは何ですか?
(例: 2008 年以降のすべての請求書を読み取り、GUI に表示したい)
- すべての子よりも、選択した日付範囲のすべての請求書を読み、適切な請求書の詳細を入力しますか?
- または、請求書と関連する詳細を 1 つずつ読みますか? (例: 乗算結果セットを使用)
- また、バインディング ソースに基づくアプローチにも気付きました -> 現在のレコード位置を変更するときにのみ子を読み取ります...
私はあなたの意見に非常に興味があります.最高/最速のシナリオは何ですか?
sql-server - デフォルトで DISTRIBUTED TRANSACTION を実行する Business Objects XI - オフにする方法
2 つのデータベースに対して分散クエリを実行している Business Objects Web Intelligence レポートがあります。
BEGIN DISTRIBUTED TRANSACTION QUERY を含むこのクエリを実行すると、
SET xact_abort ON
GO
USE Pipeline2
GO
BEGIN DISTRIBUTED TRANSACTION
SELECT * FROM [CQSR_PROD].CqUSer.Cq4User1.Defect
COMMIT TRAN
GO
次のエラーが表示されます。
サーバー: メッセージ 7391、レベル 16、状態 1、行 2 OLE DB プロバイダー 'SQLOLEDB' が分散トランザクションを開始できなかったため、操作を実行できませんでした。[OLE/DB プロバイダーがメッセージを返しました: 新しいトランザクションは、指定されたトランザクション コーディネーターに登録できません。] OLE DB エラー トレース [OLE/DB プロバイダー 'SQLOLEDB' ITransactionJoin::JoinTransaction が 0x8004d00a を返しました]。
このエラーを解決したいです。この KB 記事を見たことがあります...
http://support.microsoft.com/kb/839279
これまでのところ、システム管理者は「インバウンドを許可する」チェックボックスを有効にしましたが、それは役に立ちませんでした. すべてのサーバーが Windows 2003 サーバーとして関係していると思います。
運用サーバーに変更を加えて、KB 記事で説明されている残りのオプションを試すことは、変更について非常に慎重であるため、歯を抜くよりも悪いことです。その結果、回避策を探しています:
クエリ時に分散トランザクションを実行しないように BO に指示する方法はありますか? 上記のSQLから「BEGIN DISTRIBUTED TRANSACTION」を削除すると、すべて機能します。BO はデフォルトでこれを行うようです。
c# - BindingSource の更新
私には2つのクラスがあります。つまりCustomerOrder、Customerクラスには注文のコレクションへの参照があります。マスターディテールを使用していますBindingSource。
私の問題は、注文に遅延読み込みパターンを使用すると、詳細BindingSourceが更新されないことです。
UI
だから私のdatagridView1クリックイベントで
これについて何か助けていただければ幸いです。
c# - ビジネスオブジェクトで私を救う
私はビジネスオブジェクトでこのような例をよく見ました:
では、なぜここで、ビジネスオブジェクトについてですか?これは、ビジネスロジックよりも、コンテキストまたはデータに関連しているように見えます。
たとえば、このオブジェクトのコンシューマーは、次のようなことを経験する可能性があります...
または、更新のためにこのようなもの...
では、これはなぜですか?計算やビジネス固有のルールなどの実際のビジネスロジックを含めて、取得/永続化を避けてはどうでしょうか。
このアプローチを使用すると、コードは次のようになります。
または、更新のためにこのようなもの...
これらの例の両方で、オブジェクトに対して何が行われているのかを最もよく知っているコンシューマーは、リポジトリーを呼び出し、ADDまたはUPDATEのいずれかを要求します。オブジェクトはそのコンテキストではDUMBのままですが、オブジェクトの取得方法や永続化方法ではなく、オブジェクト自体に関連するコアビジネスロジックを提供します。
つまり、GETメソッドとSAVEメソッドをビジネスオブジェクト自体に統合することのメリットはわかりません。
不平を言って従うのをやめるべきですか、それとも何かが足りないのですか?
.net - カスタムビジネスオブジェクトのdataGridViewColumnの順序を制御するにはどうすればよいですか?
dataGridViewにスライドするカスタムビジネスオブジェクトを作成すると、驚異的に機能します...列の順序をプログラムで設定する方法が考えられない場合を除きます。
より良い並べ替えを行うために、手動でもう一度手動で追加する必要がありますか、それとも使用できる不可解な隠し属性がありますか?
.net - ビジネスクラスにメッセージボックスを持っているのは間違っていますか?
ビジネス クラスで System.Windows.Forms を参照し、MessageBox.Show を使用するのは間違っていますか?
現在、サービス クラスを装飾するイベント処理デコレータ クラスがあります。特定のイベントが発生すると、デコレータはユーザーに特定の機能の処理を続行するかどうかを尋ねます。
このデコレータ クラスにこれらのメッセージ ボックスがあっても大丈夫ですか?