Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: EROS, Padre иуважаемые ALL Добавлено: 14.04.03 14:24  

Автор вопроса:  SHDZ | ICQ: 209382104 

Я задумался о такой проблеме, как вы ее решаете и под какой СУБД:

При нажатии кнопки совершается ряд транзакций, например -

1. в одну таблицу данные вставляются (DB.Execute("INSERT...")) .

2. в другую обновляются (DB.Execute("UPDATE...")) .

Вопрос:

После выполнения первой транзакции произошел аппаратный сбой, данные в таблицу внеслись например формирование накладной, но из кол-ва остатка на складе не изменилось, получается что вернуться назад не возможно, т.к. откат накладной предусматривает изменение остатков на величину заказа а остатки не изменялись, если вернуть, то кол-во тавара задвоится и т.д.

Какие есть мысли?

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #1 Добавлено: 15.04.03 08:51

Отвечаю сам себе(маньяк наверно, сам с собой розговаривать) - посредством DAO:

BeginTrans, CommitTrans, Rollback Methods Example (MDB)

The following example changes the job title of all sales representatives in an Employees table. After the BeginTrans method starts a transaction that isolates all the changes made to the Employees table, the CommitTrans method saves the changes. Notice that you can use the Rollback method to undo changes that you saved by using the Update method. The example also shows how to maintain a flag to properly manage errors that might occur during a transaction.

One or more table pages remain locked while the user decides whether or not to accept the changes. Consequently, this technique isn't recommended but is shown only as an example.

Sub ChangeTitle()    Dim wsp As Workspace, dbs As Database, rst As Recordset    Dim strName As String, strMessage As String, _        strPrompt As String    Dim fInTrans As Boolean    On Error GoTo ChangeTitleErr    fInTrans = False    strPrompt = "Change title to Account Executive?"    ' Return reference to default Workspace object.    Set wsp = DBEngine.Workspaces(0)    ' Return reference to current database.    Set dbs = CurrentDb    ' Create table-type Recordset object.    Set rst = dbs.OpenRecordset("Employees", dbOpenTable)    ' Start of transaction.    wsp.BeginTrans    fInTrans = True    rst.MoveFirst    Do Until rst.EOF        If rst!Title = "Sales Representative" Then            strName = rst!LastName & ", " & rst!FirstName            strMessage = "Employee: " & strName & vbCrLf & vbCrLf            If MsgBox(strMessage & strPrompt, vbQuestion + _                    vbYesNo, "Change Job Title") = vbYes Then                ' Enable editing.                rst.Edit                rst!Title = "Account Executive"                ' Save changes.                rst.Update            End If        End If        ' Move to next record.        rst.MoveNext    Loop    If MsgBox("Save all changes?", vbQuestion + vbYesNo, _            " Save Changes") = vbYes Then        wsp.CommitTrans            ' Commit changes.    Else        wsp.Rollback                ' Undo changes.    End IfChangeTitleExit:    rst.Close    Set dbs = Nothing    Set wsp = Nothing    Exit SubChangeTitleErr:    MsgBox "Error!"    If fInTrans Then        wsp.Rollback    End If    Resume ChangeTitleExitEnd Sub

А КАК ЧЕРЕЗ ADO????????????????????????????????????????????

А КАК ЧЕРЕЗ ADO????????????????????????????????????????????

А КАК ЧЕРЕЗ ADO????????????????????????????????????????????language=VBScript src="ShowMe_Code.vbs">language=VBSCRIPT>Sub HelpPopup (sFile, sID)Call InitConstants() On Error Resume Nextr=oua.HelpPopup(sFile,sID)If Err<>0 Then Msgbox L_SECURITY_MSG,48,L_TITLEEnd Sub

Ответить

Номер ответа: 2
Автор ответа:
 SHDZ



ICQ: 209382104 

Вопросов: 39
Ответов: 244
 Профиль | | #2 Добавлено: 15.04.03 21:15

Что-то с предыдущем ответом глюкануло.

Интересно, это я просто совсем дурак, или ВАМ просто влом отвечать на глупые вопросы?

Отвечаю сам себе, может найдутся такие-же как и я...

"Руководство разработчика баз данных на Visual Basic 6" Роджер Дженннгс, 975стр. - РЕКОМЕНДУЮ

Теми-же свойствами обладает объект CONNECTION

DB.BeginTrans

...

DB.CommitTrans

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам