|
23 Кб. |
|
| Доброго всем, опять... Снова прошу помощи, не ну могу я разобраться в NT... В старом добром FOX или Clipper свободно, а здесь затыки... Вот пример баз и форма. Я хочу ввести данные в переменные а затем эти переменные пока тупо записать в новую строку базы. Но не знаю какую конструкция применять.... Подможите кто можите... | |
|
| |
|
27 Кб. |
|
| Вобше есть много способов если хочеш через вба то вот так но мне этот способ не нравица если с твоей базый будит работат только один человек то всё ок | |
|
| |
|
16 Кб. |
|
| Клипперистам салют - тоже долго не мог догнать нюансы, оснобенно подчиненные формы, и почему только 3 вложения.
вот посмотри как мона делать - юзер получает доступ к табле непосредственно на форме "+" простота, "-" данные нужно озащищать от юзеров.
в качестве сточника можно использовать таблицы и запросы, запросы не все обновляемы, т.е. в некоторые запросы можно внести изменения в некоторые низя.
в таблу Заказ можно в поле Men "мастером" вносить данные из таблицы "менеджеры" создав не поле, а ПолеСоСписком, его источником является запрос - как бы визуальней проще да и с отчетами и формами проще, но можно и так. | |
|
| |
|
|
|
| Нужно (как мне кажется) через VBA, буду кое-что считать, проверять, и только потом заносить в базу. Работать будут 3-5 человек. Это не вери гуд? | |
|
| |
|
|
|
| Не в этом дело хорошо или плохо
просто надо продумать момент с блокировкой записей
представь ситуацию когда форма жестко связана с таблой, а юзеры вносят инфу
т.е. что бы не делал юзер форма постоянно получает инфу и вносит данные в таблицу
в какой -то момент может возникнуть ситуация что 2 (или более) юзеров сунутся на новую строку
сработает принцип кто раньше встал того и тапки
отсюда получается что форма должна быть связана с таблой максимально малое время
только на момент получения инфы и записи инфы, а все остальное время такое как редактирование полей, заполнение формы - форма не должна быть привязана к табле
а вот вопросы реализации данного утверждения вам предстоит разработать самому | |
|
| |
|
|
|
|
Dim str As String
str = "INSERT INTO Zakaz ( IdZak, FIO, Adress ) VALUES ('" & Me.NewIdZak.Value & "', '" & Me.FIOZak.Value & "', '" & Me.AdrZak.Value & "');"
DoCmd.RunSQL str
|
| |
|
| |
|
|
|
| Так друг другу юзери не будут мешать
Dim str As String это строковая переменая
str = "INSERT INTO Zakaz ( IdZak, FIO, Adress ) VALUES ('" & Me.NewIdZak.Value & "', '" & Me.FIOZak.Value & "', '" & Me.AdrZak.Value & "');" это его значение - SQL код где
"INSERT INTO добавить в Zakaz это имя таблицы
( IdZak, FIO, Adress ) поля в тоблице где нужно добавлать записись
VALUES - значения
('" & Me.NewIdZak.Value & "', '" & Me.FIOZak.Value & "', '" & Me.AdrZak.Value & "') - а вот откуда должны добавляца записи в твоём случии из формы если тип данных число то
убераем этот знака( ' )
например поле IdZak в таблице численое то твой sql код будет таким
str = "INSERT INTO Zakaz ( IdZak, FIO, Adress ) VALUES ((без знака ')" & Me.NewIdZak.Value & "(без знака '), '" & Me.FIOZak.Value & "', '" & Me.AdrZak.Value & "');"
потом команда для запуск SQL кода DoCmd.RunSQL str | |
|
| |
|
|
|
|
|
| Угу, вник... Спасибо за наводки. С сетевыми блокировками знаком, если только ето, то не страшно... но "стественно" сделаю... | |
|
| |
|
|
|
| Это не сетевые блокировки (на уровне администратора сети)
это не много другое
это, как бы это сказать, предоставление времени клиентской части базы данных пользоваться базой данных
более того если клиентская часть постоянно подцеплена к базе данных расположенной в сети
то появляется некоторое торможение (иногда сильно заметное) | |
|
| |
|
|