منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] عمل transaction واحد في إجرائين مختلفين - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] عمل transaction واحد في إجرائين مختلفين (/showthread.php?tid=36218)



عمل transaction واحد في إجرائين مختلفين - larbihamri - 25-08-20

السلام عليكم كيف حال الجميع ؟
كيف يمكن عمل Transaction لأكثر من إجراء
مثلا : 
PHP كود :
  Private Sub UpdateCréditClient()
 
      
        CMDupdateClient
.Parameters.Clear()
 
       CMDupdateClient.CommandText = ("update tbl_client set crédit=@crédit where id_client=" idClient)
 
       CMDupdateClient.Connection Sqlcon
        CMDupdateClient
.Transaction trans
        CMDupdateClient
.Parameters.AddWithValue("@crédit"créditRest)
 
       If Sqlcon.State 0 Then Sqlcon.Open()
 
       CMDupdateClient.ExecuteNonQuery()

 
   End Sub 

و أقوم بإستدعاء هذا الإجراء في هذا البلوك        


PHP كود :
Dim STRquery As String
        If Sqlcon
.State ConnectionState.Closed Then Sqlcon.Open()
 
       trans Sqlcon.BeginTransaction
        CMDversement
.Transaction trans

 CMDversement
.Transaction trans
                STRquery 
= ("insert into tbl_versementClient (id_client,crédit_ancien,versement,crédit_Rest,date_versemnt)
                                values(@id_client,@crédit_ancien,@versement,@crédit_Rest,@date_versemnt)"
)
 CMDversement.Parameters.Clear()
            CMDversement.CommandText STRquery
            CMDversement
.Connection Sqlcon

            CMDversement
.Parameters.AddWithValue("@id_client"idClient)
            CMDversement.Parameters.AddWithValue("@crédit_ancien"CDbl(txt_credit.Text))
            CMDversement.Parameters.AddWithValue("@versement"CDbl(txt_versement.Text))
            CMDversement.Parameters.AddWithValue("@crédit_Rest"créditRest)
            CMDversement.Parameters.AddWithValue("@date_versemnt"Picker1.Value)
            CMDversement.ExecuteNonQuery()

   UpdateCréditClient()

 trans.Commit() 



لكن عند التنفيذ يظهر الخطأ التالي :
PHP كود :
ExecuteReader implies that the command has a transaction when the connection assigned to the command is in a pending local transactionThe Transaction property of the order has not been initialized



RE: عمل transaction واحد في إجرائين مختلفين - asemshahen5 - 25-08-20

Insert multiple rows, Bulk Insert, Commit, Rollback, Transact-SQL, SQLBulkCopy, TVP, OOP, C #





RE: عمل transaction واحد في إجرائين مختلفين - larbihamri - 25-08-20

شكرا اخي عاصم لكني و الله صراحة لم افهم كثيرا مما جاء في الفيديو


RE: عمل transaction واحد في إجرائين مختلفين - عبد العزيز البسكري - 26-08-20

شوف هذا المحتوى كذلك ..
https://top4top.io/downloadf-1698q71hd1-rar.html
تحياتي