|
|
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
Обращаюсь к Sub форме, чтобы добавить запись в таблицу Dim s As String Dim frm As Form_frmQryStaff Set frm = Form_frmQryStaff s = "insert into gaga_tblARM (id) values (" & frm.id.Value & ")" DoCmd.RunSQL s Me.Requery End Sub после того как добавлена запись и пРоявились нужные значения, необходимо проапдейтить одно поле по с помощью этих появившихся данных... в этом и ЗАГВОЗДКА на какое событие это можно повесить? 3 часа потратила, чтоб повесить апдейт внутри инсерта... не получилось :-( а когда ставила Private Sub cmdDobZapis1_Click() Dim s As String Dim frm As Form_frmQryStaff Set frm = Form_frmQryStaff s = "insert into gaga_tblARM (id) values (" & frm.id.Value & ")" DoCmd.RunSQL s Me.Requery s = "update gaga_tblARM set nARM=(SELECT TOP 1 str(struct_nkey) FROM_ dbo_ent_staff AS des WHERE des.id = " & frm.id.Value & ")" DoCmd.RunSQL s Me.Requery пишет, что операция должна использовать обновляемый запрос.. подскажите, чо делать... пожалуйста End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 12:59:55 |
|
||
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
Галкапочему не работает Dim s As String s = "insert into gaga_tblARM (id, nArm) values (" & frm.id.Value & ", " & "SELECT TOP 1 str(dbo_ent_staff.struct_nkey) from dbo_ent_staff where dbo_ent_staff.id = " & frm.id.Value & ")" DoCmd.RunSQL s вылетает ошибка, указывающая на неверность этого запроса (SELECT TOP 1 str(dbo_ent_staff.struct_nkey) from dbo_ent_staff where dbo_ent_staff.id = " & frm.id.Value & ")" Geo А это не то же самое? Галка Geo А это не то же самое? то же самое :-( хотела упростить вопрос А чего же не здесь? :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 14:54:32 |
|
||
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
Geo Галкапочему не работает Dim s As String s = "insert into gaga_tblARM (id, nArm) values (" & frm.id.Value & ", " & "SELECT TOP 1 str(dbo_ent_staff.struct_nkey) from dbo_ent_staff where dbo_ent_staff.id = " & frm.id.Value & ")" DoCmd.RunSQL s вылетает ошибка, указывающая на неверность этого запроса (SELECT TOP 1 str(dbo_ent_staff.struct_nkey) from dbo_ent_staff where dbo_ent_staff.id = " & frm.id.Value & ")" Geo А это не то же самое? Галка Geo А это не то же самое? то же самое :-( хотела упростить вопрос А чего же не здесь? :( блин, шестой час не могу проапдейтить поле в sub-форме при добавлении записи в таблицу, на основании к-ой сделана sub-форма. может кто ответит на вопрос: всё переделать и не работаться с sub-формами или грызть дальше? :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 14:58:39 |
|
||
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
гхм, а gaga_tblARM - это таблица с источником данных формЫ ? (иначе, смекаю я себе, зачем там рекваери). Т.е. форма _связанная_? а если так, зачем вы руками посылаете запросы из _связанной_ формы.? (аксес это вроде умеет сам). Пошлите данные форме (в ее контрол, или, на худой конец, в ее рекордсет-клон), а она вставит все по месту. Если нет - (форма отвязанная), т.е. надо самому следить за актуальностью всех данных и самому формировать запросы на вставку/обновления и т.п. - не выполняйте их аксесом (ограничиваясь его ограничениями на синтаксис), а шлите прямо SQL серверу Execute-ом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 15:06:15 |
|
||
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
4321гхм, а gaga_tblARM - это таблица с источником данных формЫ ? (иначе, смекаю я себе, зачем там рекваери). Т.е. форма _связанная_? а если так, зачем вы руками посылаете запросы из _связанной_ формы.? (аксес это вроде умеет сам). Пошлите данные форме (в ее контрол, или, на худой конец, в ее рекордсет-клон), а она вставит все по месту. . Запрос для гл. формы SELECT dbo_ent_staff.id, dbo_ent_staff!sur_name & " " & dbo_ent_staff!name & " " & dbo_ent_staff!patr_name AS ФИО, dbo_areas!town & " , " & dbo_areas!street & " , " & dbo_areas!building AS адрес, dbo_phone_book.room, dbo_phone_book.phone01, dbo_phone_book.lphone01, dbo_phone_book.mphone01, dbo_phone_book.email01, dbo_ent_staff.deleted FROM (dbo_areas RIGHT JOIN dbo_phone_book ON dbo_areas.id = dbo_phone_book.area_id) RIGHT JOIN dbo_ent_staff ON dbo_phone_book.id = dbo_ent_staff.id ORDER BY dbo_ent_staff!sur_name & " " & dbo_ent_staff!name & " " & dbo_ent_staff!patr_name DESC , dbo_areas!town & " , " & dbo_areas!street & " , " & dbo_areas!building; Запрос для подчинённой SELECT dbo_ent_structure.nkey, dbo_ent_staff.deleted, dbo_ent_staff.id, gaga_tblARM.ARMID, gaga_tblARM.nARM, gaga_tblARM.AdressID, gaga_tblARM.nKomn, gaga_tblARM.id FROM (dbo_ent_structure INNER JOIN dbo_ent_staff ON dbo_ent_structure.nkey = dbo_ent_staff.struct_nkey) INNER JOIN gaga_tblARM ON dbo_ent_staff.id = gaga_tblARM.id ORDER BY dbo_ent_staff.sur_name; В гл. форме стоит фильтр для ФИО Мне надо добавить запись в подч. Форму и сгенерировать nARM В принципе я понимаю, что получить этот nARM я могу после того, как увижу dbo_ent_structure.nkey и gaga_tblARM.id. Но чтоб им мне увидеть, то в подч. Форме надо выбрать id . Добавляю: s = "insert into gaga_tblARM (id) values (" & frm.id.Value & ")" для того, чтобы после добавления в табл и произошедшего реквери в подч. Форме добавилась запись. Не спорю, что это можно сделать проще. Когда генерировала nARM в простой форме- всё было без проблем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 15:41:16 |
|
||
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
гхкм... ...нет, я конечно умею читать, но прикидывать вашу структуру данных по приведенным запросам мне как-то лениво. И тем более разбирать задачу предметно по обрывкам сведений. (хоть на пальцах раскажите - сколько объектов, как связаны, что хотите куда воткнуть. Физ смысл, бишь.) Наводящий вопрос: Вкладочка данные подчиненной формы у вас заполнена? Т.е. чему там равны свойства «Подчиненные поля» (LinkChildFields), «Основные поля» (LinkMasterFields)? Почему у вас подчиненные поля в новой записи не заполняются формой? аха, я кажется начинаю догадыватья что просто ткнуть туда новую запись (и заполнять поля _формы_ руками/кодом) вы почему-то не можете (чтобы форма сама навставляла значения подчиненных полей в запись подчиненной формы). Какие-то поля связи запроса подчиненной формы для новой записи не можете задать? ...Кажется это можно, если в запросе есть оба поля (с обеих сторон INNER JOIN). (Предпочитаю, правда, писать (формами) в таблицы, на худой конец - в LEFT JOIN-ы 1-1 (т.е. в структуры с редкими включениями дополнительных полей) а не в джойны 1-много - там много чего можно понаделать лишнего и некрасивого. Хотя после модификации (нормализации) данных бывает и такое - когда таблица старая заменяется на вью 1-8, а интерфейс перерисовывать не хочется). (С удалением записей, помнится, бывают неожиданности - хочется удалить только запись на стороне "много" , ан ..., т.ч. приходится эти полеты разбирать програмно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 16:24:04 |
|
||
|
update в sub-форме
|
|||
|---|---|---|---|
|
#18+
4321гхкм... ). спасибо за участие, мне всегда приятно показать то, о чём я хотела узнать: Private Sub cmdDobZapis1_Click() Dim s As String Dim strNARM As String Dim v Dim v1 Dim frm As Form_frmQryStaff Set frm = Form_frmQryStaff s = "select top 1 struct_nkey from dbo_ent_staff where id=" & frm.id.Value v = CurrentProject.Connection.Execute(s).GetRows s = "select top 1 nARM from gaga_tblARM where id=" & frm.id.Value & " order by nARM desc" If CurrentProject.Connection.Execute(s).BOF = False And CurrentProject.Connection.Execute(s).EOF = False Then v1 = CurrentProject.Connection.Execute(s).GetRows: strNARM = CStr(v1(0, 0)): strNARM = CStr(v(0, 0)) & "-" & CStr(frm.id.Value) & "-" & CStr(CInt(Right(strNARM, 1)) + 1) Else strNARM = CStr(v(0, 0)) & "-" & CStr(frm.id.Value) & "-1" s = "insert into gaga_tblARM (id, nARM) values (" & frm.id.Value & ",'" & strNARM & "')" DoCmd.RunSQL s Me.Requery End Sub надеюсь с каждым разом сотрясать воздух буду более конкретнее!!! :-))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2004, 17:25:30 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=45&tid=1670800]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 311ms |

| 0 / 0 |
