Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Добавление новой ЗАПИСИ....... / 25 сообщений из 30, страница 1 из 2
08.09.2003, 17:43
    #32258977
Slava A. Odievich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
...... что я делаю неправильно.

1. Подготовил ЗАПИСЬ в ФОРМЕ

2. Открыл ТАБЛИЦУ выполнив Set rst = CurrentDb.OpenRecordset(ss) где ss соответсвующий ЗАПРОС

3. Подвел указатель текущей записи к последней записи DoCmd.GoToRecord , "DB_ТРАНЗАКЦИИ", acNewRec

В ответ на все это получаю уведомление, что ОБЪЕКТ DB_ТРАНЗАКЦИИ не открыт.......

В чем проблема?
...
Рейтинг: 0 / 0
08.09.2003, 17:44
    #32258979
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
А чего тебе в результате надо получить?
...
Рейтинг: 0 / 0
08.09.2003, 17:48
    #32258987
Slava A. Odievich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Да я новую запись вставить хочу в ТАБЛИЦУ, и не более.......
...
Рейтинг: 0 / 0
08.09.2003, 17:49
    #32258990
Добавление новой ЗАПИСИ.......
Посмотри, в каком режиме у тебя открылся запрос. Программа может открывать запросы без права добавления.
...
Рейтинг: 0 / 0
08.09.2003, 17:50
    #32258993
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
1) Делай через INSERT INTO - намного быстрее работает и проще делается
3) DoCmd.GoToRecord , "DB_ТРАНЗАКЦИИ", acNewRec - это чушь
2) Если хочешь париться с рекордсетом, то давай весь код!
...
Рейтинг: 0 / 0
08.09.2003, 17:51
    #32258998
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
DoCmd.GoToRecord , "DB_ТРАНЗАКЦИИ", acNewRec - это чушь
Погорячился я тут...
...
Рейтинг: 0 / 0
08.09.2003, 17:53
    #32259003
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
DoCmd.GoToRecord , "DB_ТРАНЗАКЦИИ", acNewRec - это чушь
Погорячился я тут...

Нет не погорячился :)
...
Рейтинг: 0 / 0
08.09.2003, 17:55
    #32259011
Slava A. Odievich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
1. Как узнать ЗАПРОС выполнился с правом добавления или нет?
Или как сделать ЗАПРОС с правом добавления.

2. Если можно подробности как сделать INSERT INTO (please). Я не эксперт :-((
...
Рейтинг: 0 / 0
08.09.2003, 17:59
    #32259018
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Покажи свой запрос!
Если запрос простой (простая выборка), то добавление возможно...

----------
INSERT INTO MyTABLE1 (Val1, Val2....) SELECT Field1, Forms!Field2 as 2 FROM MyTABLE2
...
Рейтинг: 0 / 0
08.09.2003, 18:06
    #32259032
Slava A. Odievich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Запрос простой (в том смысле что я просто перечисляю ВСЕ ПОЛЯ Таблицы)....

Я правильно понял, что в конструкции:

INSERT INTO MyTABLE1 (Val1, Val2....) SELECT Field1, Forms!Field2 as 2 FROM MyTABLE2

(Val1, Val2....) - это список ПОЛЕЙ, которые составляют новую ЗАПИСЬ?
...
Рейтинг: 0 / 0
08.09.2003, 18:10
    #32259043
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Запрос простой....
Тебе че в облом запрос показывать????????!!!!!

(Val1, Val2....) - это список ПОЛЕЙ, которые составляют новую ЗАПИСЬ?
Ты прав, Пяточек
...
Рейтинг: 0 / 0
08.09.2003, 18:13
    #32259048
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
У него там, наверное, база для министерства обороны :-)
...
Рейтинг: 0 / 0
08.09.2003, 18:15
    #32259050
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Блин, чего на человека накинулись...
Хочется ему так делать, пусть делает

3. Подвел указатель текущей записи к последней записи DoCmd.GoToRecord , "DB_ТРАНЗАКЦИИ", acNewRec

rst.AddNew
rsr.Field1 = Forms("aaa").Control("bbb")
rst.Update
...
Рейтинг: 0 / 0
08.09.2003, 18:17
    #32259056
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
2Vsevolod
INSERT INTO MyTABLE1 (Val1, Val2....) SELECT Field1, Forms!Field2 as 2 FROM MyTABLE2

Кстати, а кто сказал, что форма связана с таблицей? И что надо создавать столько же записей, сколько в TABLE2?
...
Рейтинг: 0 / 0
08.09.2003, 18:21
    #32259060
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Geo, предыдущее сообщение написано под влиянием дьявола?
...
Рейтинг: 0 / 0
08.09.2003, 18:24
    #32259063
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Geo
Member

Откуда: Ступино моск. обл.
Сообщений: 666

%))
Скорее нет, чем да. :))
...
Рейтинг: 0 / 0
08.09.2003, 18:28
    #32259064
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Geo,
Слава Богу!
...
Рейтинг: 0 / 0
08.09.2003, 18:28
    #32259065
Slava A. Odievich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Форма и в самом деле не связана с ТАБЛИЦЕЙ.
ЗАПИСЬ собирается в ФОРМЕ в которой ТАБЛИЦА не присутствует ни в каком виде. И по готовности КНОПКОЙ сбрасываю ее в ТАБЛИЦУ.

Оно понятно, что для этого ТАБЛИЦУ необходимо открыть и подвести указатель к последней записи......

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Dim s11 As String, s12 As String
    Dim s13 As String, s14 As String
    Dim ss As String
    Dim frm As Form, rst As DAO.Recordset

On Error GoTo Err_Êíîïêà_ÄÇ_Click
    
    s11 =  "SELECT DB_ÒÐÀÍÇÀÊÖÈÈ.Äàòà, DB_ÒÐÀÍÇÀÊÖÈÈ.Öåíòð, DB_ÒÐÀÍÇÀÊÖÈÈ.Òèï, " 
    s12 =  "DB_ÒÐÀÍÇÀÊÖÈÈ.DOC, DB_ÒÐÀÍÇÀÊÖÈÈ.Ê_Ïîëó÷åíèþ, DB_ÒÐÀÍÇÀÊÖÈÈ.Ïîëó÷åíî, " 
    s13 =  "DB_ÒÐÀÍÇÀÊÖÈÈ.Ê_Îïëàòå, DB_ÒÐÀÍÇÀÊÖÈÈ.Îïëà÷åíî, DB_ÒÐÀÍÇÀÊÖÈÈ.Êîììåíòàðèé " 
    s14 =  "FROM DB_ÒÐÀÍÇÀÊÖÈÈ;" 
    
    ss = s11 & s12 & s13 & s14
    
    Set rst = CurrentDb.OpenRecordset(ss)

    DoCmd.GoToRecord ,  "DB_ÒÐÀÍÇÀÊÖÈÈ" , acNewRec
...
Рейтинг: 0 / 0
08.09.2003, 18:29
    #32259070
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Slava A. Odievich
Там какой-то дьявольский шрифт в коде :-(
...
Рейтинг: 0 / 0
08.09.2003, 18:33
    #32259075
Slava A. Odievich
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Я просто сделал CUT & PASTE

Sorry :-((
...
Рейтинг: 0 / 0
08.09.2003, 18:34
    #32259076
Varan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
А не проще для этого использовать
dim rst as recordset
rst.addnew
rst("Поле1")=...
rst("Поле2")=...
rst("ПолеN")=...
rst.update
Или аналог этого в ADO...
...
Рейтинг: 0 / 0
08.09.2003, 18:34
    #32259077
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
s11 = "SELECT DB_ÒÐÀÍÇÀÊÖÈÈ.Äàòà, DB_ÒÐÀÍÇÀÊÖÈÈ.Öåíòð, DB_ÒÐÀÍÇÀÊÖÈÈ.Òèï, "
s12 = "DB_ÒÐÀÍÇÀÊÖÈÈ.DOC, DB_ÒÐÀÍÇÀÊÖÈÈ.Ê_Ïîëó÷åíèþ, DB_ÒÐÀÍÇÀÊÖÈÈ.Ïîëó÷åíî, "
s13 = "DB_ÒÐÀÍÇÀÊÖÈÈ.Ê_Îïëàòå, DB_ÒÐÀÍÇÀÊÖÈÈ.Îïëà÷åíî, DB_ÒÐÀÍÇÀÊÖÈÈ.Êîììåíòàðèé "
s14 = "FROM DB_ÒÐÀÍÇÀÊÖÈÈ;"


Не сомтря на шрифт итак видно, что это чушь


Кстати, а кто сказал, что форма связана с таблицей? И что надо создавать столько же записей, сколько в TABLE2?
согласен - никто не говорил :)
...
Рейтинг: 0 / 0
08.09.2003, 18:35
    #32259079
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Я просто сделал CUT & PASTE

Это делать можно - просто нужно, чтобы в этот момент была русская раскладка
...
Рейтинг: 0 / 0
08.09.2003, 18:36
    #32259080
Vsevolod V
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление новой ЗАПИСИ.......
Не сомтря на шрифт итак видно, что это чушь
Будем считать, что этого никто не видел
Я не заметил
ss = s11 & s12 & s13 & s14
...
Рейтинг: 0 / 0
08.09.2003, 18:36
    #32259081
Добавление новой ЗАПИСИ.......
Круто!!!

Я впервые вижу такой способ. Если сработает - напиши!!!

Я обычно пользуюсь таким способом (для ADO):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
    Dim rst As New ADODB.Recordset
    Dim fld As ADODB.Field
    Dim Source As String
    If CLng(Me.ID) =  0  Then
        rst.Open  "Table" , CurrentProject.Connection, adOpenKeyset, adLockOptimistic
        rst.AddNew
    Else
        Source =  "SELECT * FROM [Table] WHERE [ID] = "  & Me.ID
        rst.Open Source, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    End If
    On Error Resume Next
    For Each fld In rst.Fields
        If fld.Name <>  "ID"  Then
            rst.Fields(fld.Name).Value = Me(fld.Name).Value
        End If
    Next
    On Error GoTo  0 
    rst.Update
    rst.Close


Незнаю, правильно это или нет!!! Пока проблем не было (написан более года назад. Работает под ADO)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Добавление новой ЗАПИСИ....... / 25 сообщений из 30, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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