powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Совсем несложно для асов
25 сообщений из 39, страница 1 из 2
Совсем несложно для асов
    #32276630
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как сделать чтобы из таблицы данные попадали в несвязанную форму каждое на своё место, так хочу, чтобы данные в таблице через форму не очень можно было изменить, ну т.е. потом если нажать сохранить, то изменения внесуться, а если отмену то ничего не изменится. а Если к форме привязывать таблицу то любое изменение сразу в ней появляется, а мне так не надо...
Подскажите?... спасибо
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276679
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну сделай еще одну таблицу временную, если ОК -тогда Insert Into в базовую, если ни - то ни...
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276693
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создай копию основной таблицы (Копировать-Вставить-только стрктура) Table2. Пусть будет буфером. Добавь туда же поле, в котором храни имя пользователя CUser.
Создай форму (без кнопок перехода и как модальное окно), которую привяжи к этой буферной таблице.
По кнопке главной формы открывай эту форму
Код: plaintext
1.
2.
3.
CurrentDB.Execute  "Insert into Table2 Select Table1.*, CurrentUser As "  _ 
&  " CUser From Table1 Where Kod = "  & Forms!Form1.Pole1
DoCmd.OpenForm  "Form2" ,,, "Where CUser = "  & CurrentUser

А дальше Update, Delete, Insert в основную таблу множеством разнообразных способов.
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276698
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну вот так мне и думалось, более хитрого способа нет? или это слишком сложно?
И еще в догонку тогда вопрос, если несколько пользователей работают одновременно, никаких споров возникать не будет? ну например, при нажатии Сохранить, данные (1 строка) из локальной таблицы должна удалиться, а если там еще кто-нибудь уже добавил свою строку, т.е. другую открыл запись? или просто удалять по ключу и никаких проблем? .. наверное да :)

спасибо zz!
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276702
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Класс, Витал!!! Огромнейшее мерси! :)
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276712
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Либо Витал - телепат, либо постинги Витала и Кофейника надо местами поменять
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276722
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zz
А чо!! Давай поменяем, чтобы не обвинили в мракобесии и суевериях, нарушающих железных подход научного материализма.
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276761
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну да, так оно и было, пока писала то сообщение, Витал написал свое :))
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276795
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Слушайте! а ведь работает!!! СУПЕР ПРОСТО!!!!

Целую сто раз ! :))

можно снова потом глупые вопросы задавать? :)
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276804
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ежели с поцелуями, то хоть сотню!
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276805
assa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если таблица _локальная_, то никаких сложностей у _разных_ юзеров не будет :). Только в запросах надо писать In ..., и обеспечивать одинаковые пути к локальным ("темповым") бд у разных юзеров.

Т.ч. совет Витал-а для _неЛокального_ размещения таблицы-буфера

Если добавить еще поле CSession, (которое заполнять например из таблицы со счетчиком сессий, автозаполняемым при запуске приложений), то _один_ юзер сможет работать в 2-х экземплярах программы, что иногда ему, юзеру, очень нужно (если заведомо не реализован MIDI интерфейс). Это может пригодиться и для локальной таблицы (CUser там не нужен).
Опять же несколько экземпляров, работающих с разными БД (если буферная размещена локально) Но там нужен более "хитрый" способ регистрации сессий - а именно - в той же в локальной базе. (Правда в этом случае, при нелокальном размещении счетчиков сессий, проблем работы с _разными_ бд не возникнет, останутся проблемы разных сеансов).
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276849
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Едрен-батон! Забыл добавить что на закрытие этой формы, связанной с буферной таблой следует добавить удаление записи
Код: plaintext
CurrentDB.Execute  "Delete * From Table2 Where CUser = "  & CurrentUser


С интересом прочитал рекомендации assa. Рекомендую их учесть.
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276862
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну про удаление-то я догадаласть ;))
а как assa советует больно уж сложно... :)
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276882
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это на будущее. Если можно без его наворотов, то и не надо.
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276899
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему он мои сообщения не вставляет, а гооврит спасибо щас все будет.. :( так нечестно!
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276902
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну вот, завставлял!

я хотела с казать что вполне можно и без наворотов.

а вот UPDATE его всегда надо SET t1.поле1=t2.поле1, t1.поле2=t2.поле2...
а если 45 полей таких?...
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276915
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я чего-то непонимаю ?

народ чтоли вообще не врубается что есть такая штука как транзакция?

если по рабочей области аксесса начать транзакцию то делай с базой что захочешь - и другие пользователи видеть не будут.

если понравилось что наваял - подтверждай транзакцию
не нравится откатывай

зачем такую кучу кода писать если есть стандартные способы ?
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276935
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Насколько мне извенстно, Да.
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276938
assa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
транзакции _в Формах_ появились не вдруг. В 97 Аксе их нет. Есть транзакции в Dao или Ado, но никак не в формах. (Я к примеру в 2000 акс-е только любопытствую. Поддерживаю приложения 97 и, о ужассс - 2.0 :). И, думается, вопрос об используемых версиях (иногда) упирается и в класс железа юзеров :).
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276970
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексейК
Стало интересно. И как следовало сделать в конкретном случае?
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276979
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to АлексейК:

если бы весь народ много знал, форумы такие не нужны бы были...


----

ну ведь правда кошмар setить 45 полей
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276995
assa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если в лом UPDATE-ить SQL-ем - откройте 2 рекордсета (по 1-й записи) и в путь циклом.
имена-то одинакие :0)
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32276997
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а так я не умею ...
если не трудно не объяснишь?
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32277004
Витал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кофейник! Не закипай
Если нет каскадного удаления, то можно гакнуть потом инсертить. А с другой стороны, ну 45! Один раз отмучилась и забыла. Пусть работает.
...
Рейтинг: 0 / 0
Совсем несложно для асов
    #32277011
Кофейник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
слушай, Витал, ты МОЗГ!!!
я вот и недопендрила что так можно
я тебя уже почти люблю!!
...
Рейтинг: 0 / 0
25 сообщений из 39, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Совсем несложно для асов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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