良い一日、
私は SQL クエリ通知である SQL の強力な機能の 1 つを使用しています。
「ウィンドウハンドルが作成されるまで、コントロールで呼び出しまたは開始を呼び出すことはできません」..
C#
private void dependency_OnChange(object sender, SqlNotificationEventArgs e) {
try {
UIDelegate uidel = new UIDelegate(RefreshData);
this.Invoke(uidel, null);
SqlDependency dependency = (SqlDependency)sender;
dependency.OnChange -= dependency_OnChange; }
catch (Exception R) {
MessageBox.Show(R.Message);
}
}
これについて私が知っていることは、Aggregate Function Sum を使用するクエリからエラーが発生したということです。
SQL QUERY NOTIFICATION で集計関数 SUM を使用する方法は? これが私のクエリフォームです。親切にチェックしてください..問題が私のクエリにあることを100%確信しています..助けてください..ありがとうございます:)
SQL
SELECT SALES_ORDER.SALES_ORDER_ID AS [SALES ORDER ID],
CUSTOMER.CUSTOMER_NAME AS [CUSTOMER NAME],
SALES_ORDER.OrderDate,
SALES_ORDER.ORDERSTATUS AS [STATUS],
SUM(ORDERLINE.AMOUNT) AS [TOTAL AMOUNT]
FROM dbo.SALES_ORDER
INNER JOIN dbo.CUSTOMER
ON dbo.CUSTOMER.CUSTOMER_ID = dbo.SALES_ORDER.CUSTOMER_ID
INNER JOIN dbo.ORDERLINE
ON dbo.ORDERLINE.SALES_ORDER_ID = dbo.SALES_ORDER.SALES_ORDER_ID
WHERE dbo.SALES_ORDER.ORDERSTATUS = 'PENDING'
OR dbo.SALES_ORDER.ORDERSTATUS = 'COMPLETED'
OR dbo.SALES_ORDER.ORDERSTATUS = 'PROVISIONING'
AND dbo.ORDERLINE.OrderLineStatus = 'PENDING'
OR dbo.ORDERLINE.OrderLineStatus = 'COMPLETED'
OR dbo.ORDERLINE.OrderLineStatus = 'PROVISIONING'
GROUP BY dbo.SALES_ORDER.SALES_ORDER_ID,
dbo.CUSTOMER.CUSTOMER_NAME,
dbo.SALES_ORDER.OrderDate,
dbo.SALES_ORDER.ORDERSTATUS
ORDER BY [SALES ORDER ID] DESC