Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / обновления из грида в базу / 25 сообщений из 60, страница 1 из 3
20.05.2004, 12:00
    #32525667
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
заполняю ultragrid
Me.ultragrid.DataSource = Me.dataset.Tables("tabl")
затем в ячейках грида редактирую данные
потом делаю
BindingContext(dataset, "tabl").EndCurrentEdit()
OleDbDataAdapter1.Update(dataset)
dataset.AcceptChanges()
ничего в базе не обновляет ....

Dim OleDbDataAdapter1 As System.Data.OleDb.OleDbDataAdapter
Dim OleDbUpdateCommand1 As System.Data.OleDb.OleDbCommand
OleDbDataAdapter1.UpdateCommand = OleDbUpdateCommand1
OleDbUpdateCommand1.CommandText = "[NewSPUpdateCommand]"
OleDbUpdateCommand1.CommandType = System.Data.CommandType.StoredProcedure

что не так?
...
Рейтинг: 0 / 0
20.05.2004, 12:21
    #32525742
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
[src]BindingContext(dataset, "tabl").EndCurrentEdit()
MsgBox(dataset.HasChanges().ToString()) ' Что здесь возвращает HasChanges()?
OleDbDataAdapter1.Update(dataset)
dataset.AcceptChanges()
[src]
...
Рейтинг: 0 / 0
20.05.2004, 12:22
    #32525744
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Очепятка:
Код: plaintext
1.
2.
3.
4.
BindingContext(dataset, "tabl").EndCurrentEdit()
MsgBox(dataset.HasChanges().ToString()) ' Что здесь возвращает HasChanges()?
OleDbDataAdapter1.Update(dataset)
dataset.AcceptChanges()
...
Рейтинг: 0 / 0
20.05.2004, 12:38
    #32525793
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
true
...
Рейтинг: 0 / 0
20.05.2004, 12:45
    #32525809
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
А это что возвращает:
Код: plaintext
1.
MsgBox(dataset.HasChanges(DataRowState.Modified).ToString())
...
Рейтинг: 0 / 0
20.05.2004, 12:51
    #32525830
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
тоже true
...
Рейтинг: 0 / 0
20.05.2004, 12:53
    #32525839
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Интересует структура обновляемой таблицы и код NewSPUpdateCommand.
...
Рейтинг: 0 / 0
20.05.2004, 13:08
    #32525895
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
в приложеном txt код хп
структура таблицы видна там же
...
Рейтинг: 0 / 0
20.05.2004, 13:10
    #32525911
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Архив битый, или чем вы запаковывали?
...
Рейтинг: 0 / 0
20.05.2004, 13:22
    #32525953
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Понял что это обычный text. Только расширение zip для чего?

Видно много параметров к этой хранимой процедуре. Интересует код этих параметров на VB.NET.
Код: plaintext
1.
2.
OleDbUpdateCommand1.Parameters.Add(bla-bla-bla)
.........
...
Рейтинг: 0 / 0
20.05.2004, 13:56
    #32526089
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Понял что это обычный text. Только расширение zip для чего?

я кладу обычный txt , пробовал скачать - качается тоже txt

вот код параметров
...
Рейтинг: 0 / 0
20.05.2004, 14:10
    #32526147
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Первичный ключ = iduvsd ?
...
Рейтинг: 0 / 0
20.05.2004, 14:33
    #32526221
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Первичный ключ = iduvsd ?
да
...
Рейтинг: 0 / 0
20.05.2004, 14:39
    #32526241
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Так давайте попробуем следующее:
Код: plaintext
1.
2.
3.
4.
BindingContext(dataset, "tabl").EndCurrentEdit()
AddHandler OleDbDataAdapter1.RowUpdating, AddressOf OleDbDataAdapter1_RowUpdating ' Добавить эту строку
OleDbDataAdapter1.Update(dataset)
dataset.AcceptChanges()

Добавьте следующую процедуру:
Код: plaintext
1.
2.
3.
4.
5.
Public Sub OleDbDataAdapter1_RowUpdating(ByVal sender As Object, ByVal e As OleDbRowUpdatingEventArgs)
    Console.WriteLine(vbTab & "iduvsd = " & e.Row("iduvsd").ToString())
    Console.WriteLine(vbTab & "Original iduvsd = " & e.Row("iduvsd", DataRowVersion.Original).ToString())
    Console.WriteLine()
End Sub

Теперь запускаем и смотрим в Output что туда выходит при Update?
...
Рейтинг: 0 / 0
20.05.2004, 15:19
    #32526388
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
не заходит он в эту процедуру
...
Рейтинг: 0 / 0
20.05.2004, 15:25
    #32526414
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
А вы при этом что нибудь меняете в таблице?
...
Рейтинг: 0 / 0
20.05.2004, 15:35
    #32526455
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
в гриде меняю данные
и MsgBox(dataset.HasChanges(DataRowState.Modified).ToString()) дает true
может для грида какой метод нужен?
...
Рейтинг: 0 / 0
20.05.2004, 15:41
    #32526478
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Попробовать перед Update:
Код: plaintext
1.
2.
3.
4.
Dim modified As DataSet = dataset.GetChanges(DataRowState.Modified)
Console.WriteLine(modified.Tables( 0 ).TableName)
OleDbDataAdapter1.Update(dataset)
dataset.AcceptChanges()
...
Рейтинг: 0 / 0
20.05.2004, 15:51
    #32526509
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
ругается на Console.WriteLine(modified.Tables(0).TableName)
Object reference not set to an instance of an object.
...
Рейтинг: 0 / 0
20.05.2004, 15:55
    #32526527
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Ну ясно почему updating не срабатывает, только я не понимаю как
dataset.HasChanges(DataRowState.Modified) возвращает True, если

Dim modified As DataSet = dataset.GetChanges(DataRowState.Modified) // modified = Nothing - то есть обновлений нет.

Привидите еще раз полученный код.
...
Рейтинг: 0 / 0
20.05.2004, 15:58
    #32526538
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
А лучше дойдите Debugом до Update. И в этот момент в Watch посмотрите:
modifed, dataSet.HasChanges(DataRowState.Modified)
...
Рейтинг: 0 / 0
20.05.2004, 16:01
    #32526546
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
код ты мне на днях давал :)
по ссылке на пост и ниже видно как я это с твоей помощью сделал :)
/topic/63982#684095
...
Рейтинг: 0 / 0
20.05.2004, 16:04
    #32526558
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Нет меня сейчас интересует, все что до Update находиться
OleDbDataAdapter1.Update(dataset)
dataset.AcceptChanges()

Я все никак не могу въехать почему HasChanges говорит изменения модифицированных строк есть, а GetChanges говорит что нет.????
...
Рейтинг: 0 / 0
20.05.2004, 16:06
    #32526561
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Кстати пора думаю все эти топики собирать воедино. :-)

Ну и все таки хотелось бы посмотреть весь код завязанный с DataSet, иногда лишняя строка может все испортить.
...
Рейтинг: 0 / 0
20.05.2004, 16:19
    #32526601
hmsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновления из грида в базу
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
             
        Dim OleDbDataAdapter1 As System.Data.OleDb.OleDbDataAdapter
        Dim OleDbUpdateCommand1 As System.Data.OleDb.OleDbCommand
        Dim OleDbConnection1 As System.Data.OleDb.OleDbConnection
        OleDbDataAdapter1 = New System.Data.OleDb.OleDbDataAdapter
        OleDbUpdateCommand1 = New System.Data.OleDb.OleDbCommand
        OleDbConnection1 = New System.Data.OleDb.OleDbConnection

        OleDbDataAdapter1.TableMappings.AddRange(New System.Data.Common.DataTableMapping() {New System.Data.Common.DataTableMapping("Table", "uchveks", New System.Data.Common.DataColumnMapping() {New System.Data.Common.DataColumnMapping("iduvsd", "iduvsd"), New System.Data.Common.DataColumnMapping("iduveks", "iduveks"), New System.Data.Common.DataColumnMapping("perevod", "perevod"), New System.Data.Common.DataColumnMapping("idvekseldat", "idvekseldat"), New System.Data.Common.DataColumnMapping("seria", "seria"), New System.Data.Common.DataColumnMapping("number", "number"), New System.Data.Common.DataColumnMapping("datesost", "datesost"), New System.Data.Common.DataColumnMapping("mestosost", "mestosost"), New System.Data.Common.DataColumnMapping("idvalnom", "idvalnom"), New System.Data.Common.DataColumnMapping("nominal", "nominal"), New System.Data.Common.DataColumnMapping("procent", "procent"), New System.Data.Common.DataColumnMapping("datenprocent", "datenprocent"), New System.Data.Common.DataColumnMapping("idvpog", "idvpog"), New System.Data.Common.DataColumnMapping("datepog", "datepog"), New System.Data.Common.DataColumnMapping("mestpogash", "mestpogash"), New System.Data.Common.DataColumnMapping("avalist", "avalist"), New System.Data.Common.DataColumnMapping("idmesthran", "idmesthran"), New System.Data.Common.DataColumnMapping("idvveks", "idvveks"), New System.Data.Common.DataColumnMapping("prim", "prim"), New System.Data.Common.DataColumnMapping("fotoL", "fotoL"), New System.Data.Common.DataColumnMapping("fotoI", "fotoI"), New System.Data.Common.DataColumnMapping("fotoA", "fotoA"), New System.Data.Common.DataColumnMapping("datepok", "datepok"), New System.Data.Common.DataColumnMapping("dateopl", "dateopl"), New System.Data.Common.DataColumnMapping("dateprod", "dateprod"), New System.Data.Common.DataColumnMapping("datepost", "datepost"), New System.Data.Common.DataColumnMapping("idvalpok", "idvalpok"), New System.Data.Common.DataColumnMapping("cenapokA", "cenapokA"), New System.Data.Common.DataColumnMapping("cenapokB", "cenapokB"), New System.Data.Common.DataColumnMapping("idvalprod", "idvalprod"), New System.Data.Common.DataColumnMapping("cenaprodA", "cenaprodA"), New System.Data.Common.DataColumnMapping("cenaprodB", "cenaprodB"), New System.Data.Common.DataColumnMapping("doprash", "doprash"), New System.Data.Common.DataColumnMapping("doprashPR", "doprashPR"), New System.Data.Common.DataColumnMapping("idsd", "idsd"), New System.Data.Common.DataColumnMapping("bal", "bal"), New System.Data.Common.DataColumnMapping("idsdpr", "idsdpr"), New System.Data.Common.DataColumnMapping("datevRepo", "datevRepo"), New System.Data.Common.DataColumnMapping("cenRepo", "cenRepo"), New System.Data.Common.DataColumnMapping("vh", "vh"), New System.Data.Common.DataColumnMapping("vyh", "vyh"), New System.Data.Common.DataColumnMapping("vyhREPO", "vyhREPO"), New System.Data.Common.DataColumnMapping("vyhREPOc", "vyhREPOc"), New System.Data.Common.DataColumnMapping("bREPO", "bREPO"), New System.Data.Common.DataColumnMapping("tip", "tip"), New System.Data.Common.DataColumnMapping("bProved", "bProved"), New System.Data.Common.DataColumnMapping("byvidveks", "byvidveks")})})
        OleDbDataAdapter1.UpdateCommand = OleDbUpdateCommand1

        Dim frm As FormSpVeks = New FormSpVeks
            frm.AddVeks(dsNewSD)
            Me.ugVeks.DataSource = Me.dsNewSD.Tables("spVeks")
        BindingContext(dsNewSD, "spVeks").EndCurrentEdit()
        BindingContext(dsNewSD, "spVeks").EndCurrentEdit()
        MsgBox(dsNewSD.HasChanges(DataRowState.Modified).ToString())
        AddHandler OleDbDataAdapter1.RowUpdating, AddressOf OleDbDataAdapter1_RowUpdating ' Добавить эту строку
        Dim modified As DataSet = dsNewSD.GetChanges(DataRowState.Modified)
        Console.WriteLine(modified.Tables( 0 ).TableName)
        OleDbDataAdapter1.Update(dsNewSD)
        dsNewSD.AcceptChanges()
        Dim modified As DataSet = dsNewSD.GetChanges(DataRowState.Modified)
        Console.WriteLine(modified.Tables( 0 ).TableName)
        OleDbDataAdapter1.Update(dsNewSD)
        dsNewSD.AcceptChanges()
в вызванной форме
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
   Friend Function AddVeks(ByRef dsNewSD As Data.DataSet) As Boolean
        ShowDialog()
        Dim selRows As Infragistics.Win.UltraWinGrid.SelectedRowsCollection = ugSelVeks.Selected.Rows
        Dim dataRows(selRows.Count -  1 ) As System.Data.DataRow
        Dim i As Integer
        For i =  0  To selRows.Count -  1 
            dataRows(i) = CType(selRows(i).ListObject, DataRowView).Row
        Next
        dsNewSD.Merge(dataRows)
        Return True
    End Function
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / обновления из грида в базу / 25 сообщений из 60, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]