delphi4arab منتديات دلفي للعرب

نسخة كاملة : PRint في SQL server أريد إظهارها في دالفي
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
Heart السلام عليكم   Heart
في SQL server عملت تريڨر فيه شرط إذا تحقق  'print 'passed و أريد إضهار تلك الكلمة passed في showmessage في دالفي  وشكرا لكم
يمكن فعل ذلك عن طريق حدث infomessage لعنصر الـ adoconnection:
كمايلي:
كود :
procedure TForm1.ADOConnection1InfoMessage  (Connection: TADOConnection; const Error: Error; var EventStatus: TEventStatus); begin  Memo1.Lines.Add(Error.Description); end;

وإذا كان هناك أكثر من رسالة يمكن تعديل الكود السابق:
كود :
procedure TForm1.ADOConnection1InfoMessage (Connection: TADOConnection; const Error: Error; var EventStatus: TEventStatus); var i:integer; begin //Memo1.Lines.Add(Error.Description);  for i := 0 to AdoConnection1.Errors.Count - 1 do  begin    Memo1.Lines.Add(ADOConnection1.Errors.Item[i].Description);  end; end;
وفقكم الله...
ربي يحفظك أخي وشكرا لك
أخي لكن هذا هوا الخطء 'The transaction ended in the trigger. The batch has been aborted.' الذي يخرج في دالفي وليسا الذي كتبته في SQL SERVER في PRINT
قم بتنفيذ التريغر الخاص بك داخل Sql server و تأكد من أنه يعمل بشكل جيد ويخرج الرسالة الخاصة بك, لأنه لا علاقة لدلفي بهذه الرسالة.
و أيضاً تأكد من ضبط الخاصية CursorLocation للعنصر AdoConnection إلى clUseServer.
مع مراعاة إستخدام العنصر AdoCommand لتنفيذ إستعلامات التحديث و الحذف على الجداول, لأنها هي من تقدح الحدث infomessage.