| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            This is complete method code In my case llNewUser = .F. and pmks_form_id has correct integer value   _
      Public Function mmks_save() As String
          Dim lcErrorMessage As String = "SUCCESS"
          Dim llNewUser As Boolean = pmks_form_Id < 0
          Dim lSaveResult As MicroFour.StrataFrame.Data.SaveUndoResult
          Dim lcUploadErrorMessage As String = ""
          Dim loPSOFormStoreBO As PSOFormStoreBO = New PSOFormStoreBO()
          If llNewUser Then
              loPSOFormStoreBO.Add()
          Else
              loPSOFormStoreBO.FillByPrimaryKey(pmks_form_Id)
          End If
 
 
          If Me.FileUploadPng.HasFile() = True Then
              Dim lcFormName As String = Me.PSOForm_filename.Text
              Dim lcFormStem As String = ""
              If lcFormName.IndexOf(".") > 0 Then
                  Dim lcFormStems As String() = lcFormName.Split(".")
                  lcFormStem = lcFormStems(0)
              Else
                  lcFormStem = lcFormName
              End If
 
 
              If Not String.IsNullOrEmpty(lcFormStem) Then
                  Dim rootpath As String = Server.MapPath("~/")
                  Dim lcMandatorPath As String = rootpath + Session("session_mandator_name") + "\"
                  Dim loDirectoryInfo As DirectoryInfo = New DirectoryInfo(lcMandatorPath)
                  If Not loDirectoryInfo.Exists() Then
                      loDirectoryInfo.Create()
                  End If
                  Dim lcFormPath As String = lcMandatorPath + lcFormStem + "\"
                  loDirectoryInfo = New DirectoryInfo(lcFormPath)
                  If Not loDirectoryInfo.Exists() Then
                      loDirectoryInfo.Create()
                  End If
                  Try
                      Me.FileUploadPng.PostedFile.SaveAs(lcFormPath + Path.GetFileName(Me.FileUploadPng.FileName))
                  Catch ex As Exception
                      lcUploadErrorMessage = ex.Message
                  End Try
 
 
              End If
 
 
          End If
 
 
 
 
 
 
          Try
              BusinessLayer.TransactionBegin("PENSOLUTIONOFFICE", "PENSOLUTIONOFFICE", Data.IsolationLevel.ReadCommitted)
              mmks_updatePSOForm(loPSOFormStoreBO)
 
 
              lSaveResult = loPSOFormStoreBO.Save(True, "PENSOLUTIONOFFICE")
              If lSaveResult = MicroFour.StrataFrame.Data.SaveUndoResult.Success Then
                  BusinessLayer.TransactionCommit("PENSOLUTIONOFFICE", "PENSOLUTIONOFFICE")
                  lcErrorMessage = "SUCCESS"
              Else
                  Throw New Exception("An error happen during save data!")
              End If
          Catch ex As Exception
              lcErrorMessage = ex.Message
              BusinessLayer.TransactionRollback("PENSOLUTIONOFFICE", "PENSOLUTIONOFFICE")
          End Try
          Return (lcErrorMessage)
      End Function                
			            				
			                                 
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            Sorry.. I copy wrong code   ))) 
 
 
      _
      Public Function mmks_save() As String
          Dim lcErrorMessage As String = "SUCCESS"
          Dim lcTransactionKey As String = Guid.NewGuid().ToString()
          Dim llNewUser As Boolean = pmks_form_Id < 0
          Dim lSaveResult As MicroFour.StrataFrame.Data.SaveUndoResult
          Dim lcUploadErrorMessage As String = ""
          Dim loPSOFormStoreBO As PSOFormStoreBO = New PSOFormStoreBO()
          If llNewUser Then
              loPSOFormStoreBO.Add()
          Else
              loPSOFormStoreBO.FillByPrimaryKey(pmks_form_Id)
          End If
 
 
          If Me.FileUploadPng.HasFile() = True Then
              Dim lcFormName As String = Me.PSOForm_filename.Text
              Dim lcFormStem As String = ""
              If lcFormName.IndexOf(".") > 0 Then
                  Dim lcFormStems As String() = lcFormName.Split(".")
                  lcFormStem = lcFormStems(0)
              Else
                  lcFormStem = lcFormName
              End If
 
 
              If Not String.IsNullOrEmpty(lcFormStem) Then
                  Dim rootpath As String = Server.MapPath("~/")
                  Dim lcMandatorPath As String = rootpath + Session("session_mandator_name") + "\"
                  Dim loDirectoryInfo As DirectoryInfo = New DirectoryInfo(lcMandatorPath)
                  If Not loDirectoryInfo.Exists() Then
                      loDirectoryInfo.Create()
                  End If
                  Dim lcFormPath As String = lcMandatorPath + lcFormStem + "\"
                  loDirectoryInfo = New DirectoryInfo(lcFormPath)
                  If Not loDirectoryInfo.Exists() Then
                      loDirectoryInfo.Create()
                  End If
                  Try
                      Me.FileUploadPng.PostedFile.SaveAs(lcFormPath + Path.GetFileName(Me.FileUploadPng.FileName))
                  Catch ex As Exception
                      lcUploadErrorMessage = ex.Message
                  End Try
 
 
              End If
 
 
          End If
 
 
 
 
 
 
          Try
              BusinessLayer.TransactionBegin("PENSOLUTIONOFFICE", lcTransactionKey, Data.IsolationLevel.ReadCommitted)
              mmks_updatePSOForm(loPSOFormStoreBO)
              MicroFour.StrataFrame.Data.DataBasics.DataSources("PENSOLUTIONOFFICE").SetDebugOn("c:\DebugFile.html", True)
              lSaveResult = loPSOFormStoreBO.Save(True, lcTransactionKey)
              If lSaveResult = MicroFour.StrataFrame.Data.SaveUndoResult.Success Then
                  BusinessLayer.TransactionCommit("PENSOLUTIONOFFICE", lcTransactionKey)
                  lcErrorMessage = "SUCCESS"
              Else
                  Throw New Exception("An error happen during save data!")
              End If
          Catch ex As Exception
              lcErrorMessage = ex.Message
              BusinessLayer.TransactionRollback("PENSOLUTIONOFFICE", lcTransactionKey)
          End Try
          Return (lcErrorMessage)
 
 
 
                  
			            				
			                                
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                Edhy Rijo
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 2.4K, 
    Visits: 23K 
    
 
          
		     | 
				                       
                 
                
                    
			            I really don't see anything wrong, so at this point is just to try and error unless Trent or somebody else have another suggestion. Try moving the code mmks_updatePSOForm(loPSOFormStoreBO) before the TransactionBegin... 
  mmks_updatePSOForm(loPSOFormStoreBO)
  BusinessLayer.TransactionBegin("PENSOLUTIONOFFICE", lcTransactionKey, Data.IsolationLevel.ReadCommitted)
 
                  
			            				
			            Edhy Rijo                     
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            Now I get closer to my problem..
 
 
  Please look...
  [code]
         Try
              BusinessLayer.TransactionBegin("PENSOLUTIONOFFICE", lcTransactionKey, Data.IsolationLevel.ReadCommitted)
  ''' ************************************************************************************
  ''' HERE I UPDATE BUSINESS OBJECT PROPERTIES            mmks_updatePSOForm(loPSOFormStoreBO)
  ''' IF I UPDATE ONE or ANY PROPERTIES OF BO - then SAVE() works perfect but TransactionCommit - FAIL
  '' IF I DO NOT UPDATE ANY PROPERTIES OF BO - then TransactionCommit SUCCESS!!!!!
  ''' *************************************************************************************
              MicroFour.StrataFrame.Data.DataBasics.DataSources("PENSOLUTIONOFFICE").SetDebugOn("c:\DebugFile.html", True)
              lSaveResult = loPSOFormStoreBO.Save(True, lcTransactionKey)
              If lSaveResult = MicroFour.StrataFrame.Data.SaveUndoResult.Success Then
                  BusinessLayer.TransactionCommit("PENSOLUTIONOFFICE", lcTransactionKey)
                  lcErrorMessage = "SUCCESS"
              Else
                  Throw New Exception("An error happen during save data!")
              End If
          Catch ex As Exception
              lcErrorMessage = ex.Message
              BusinessLayer.TransactionRollback("PENSOLUTIONOFFICE", lcTransactionKey)
          End Try
  [code]
 
 
  The diffrence between developer machine and customer machine where I currently debug it with Visual Studio.. 
 
 
  on development machine I have included PenSolutionOfficeBO as Project.. but
  on customer machine - its only DLL which located in BIN folder.
 
 
  So.. any ideas now?
 
 
  Thanks!                 
			            				
			                                 
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            Please look my last comment.. I thinking I localize the problem untill one line of code                   
			            				
			                                
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                Edhy Rijo
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 2.4K, 
    Visits: 23K 
    
 
          
		     | 
				                       
                 
                
                    
			            Good, so the problem is here: 
  Private Sub mmks_updatePSOForm(ByVal toBO As PSOFormStoreBO)
 
 
  Dim lcXformXML As String = ""
  If Me.FileUploadXForm.HasFile() = True Then
  Dim loStreadReader As StreamReader = New StreamReader(Me.FileUploadXForm.PostedFile.InputStream)
  lcXformXML = loStreadReader.ReadToEnd()
  End If
 
 
  toBO.filename = Me.PSOForm_filename.Text
  toBO.formsetid = Me.PSOForm_formsetid.Text
  toBO.validForm = Me.PSOForm_validFrom.Value
  toBO.validto = Me.PSOForm_validTo.Value
  toBO.papersize = Me.PSOForm_Papersize.Value
  toBO.topage = Me.PSOForm_topage.Value
  toBO.frompage = Me.PSOForm_fromPage.Value
  toBO.comment = Me.PSOForm_HtmlEditor1.Text
 
 
  If Not String.IsNullOrEmpty(lcXformXML) Then
  toBO.xformxml = lcXformXML
  End If
 
 
  End Sub 
 
 
 As I understand it you are sending your BO as toBO to update some properties.  Did you try calling mmks_updatePSOForm() before TransactionBeign...?                
			            				
			             Edhy Rijo                     
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            Yes.
  Even if I leave only one line for update
  toBO.filename = Me.PSOForm_filename.Text
 
 
  TransactionCommit fail in any case..
 
 
  Yes. I change order of lines and try update befor TransactionBegin.. it does not help...
  For this business object I use RowVersionOrTimestampColumn - timestamp
  UpdateConcurrencyType - OptimisticTimestamp                
			            				
			                                 
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                Edhy Rijo
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 2.4K, 
    Visits: 23K 
    
 
          
		     | 
				                       
                 
                
                    
			            This quote is from the "Using Transactional Processing" topic in the SF help file: Transaction processing is often used to implement pessimistic concurrency.  Database tables participating in the transaction can be locked, depending on the IsolationLevel used when the transaction was started.  This prevents client applications other than the transaction owner from modifying the tables while the transaction is processing.  Since you are using ReadCommitted Isolation Level and then modifying the BO properties, then the transaction triggers an error.  I believe you have two options here: 1-Move mmks_updatePSOForm() before TransactionBeign  2-Change the Isolation Level to ReadUncommitted Also check this KB:  http://msdn.microsoft.com/en-us/library/ms173763.aspxTry boths and let me know.                
			            				
			             Edhy Rijo                     
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            I made so             mmks_updatePSOForm(loPSOFormStoreBO)             BusinessLayer.TransactionBegin("PENSOLUTIONOFFICE", lcTransactionKey, Data.IsolationLevel.ReadUncommitted) and have no success.. same error.. about transaction end and can't be used.. I give up  for today.. now is 01:19 am in Moscow    Maybe morning bring something    Thanks for your help! See ya! Denis                
			            				
			                                
                      
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     | 
			
						
	           
    		
	    
				| 
                   
                			                                                     		            
                
                    
                             
                    
                
                dgsoft
                
             | 
				
                
                
                                
               
                	
             | 
			
			
		
				| 
		        
                
 
 
	Group: StrataFrame Users 	        
    Posts: 93, 
    Visits: 236 
    
 
          
		     | 
				                       
                 
                
                    
			            This is error message details..
  Transaction still does not work. I had restart a SQL Server.
  What is ZombieCheck is?                
			            				
			                                 
                     
                                            
                         
                    
                  
             | 
			
			
        
				|            
                            
		     | 
						
			
			            
           
			    			
                 
                    
                 
		     |