powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
24 сообщений из 24, страница 1 из 1
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756846
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую всех! С прошедшими праздниками! Помогите разобраться, чего не хватает на компе, на котором возникает эта ошибка?
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756847
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wladimirrrПриветствую всех! С прошедшими праздниками! Помогите разобраться, чего не хватает на компе, на котором возникает эта ошибка?
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756854
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно
docmd.openform "FormMain",acNormal,,,acFormEdit
а лучше
docmd.openform "FormMain"
поскольку все остальные значения - умолчальные
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756855
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,

ну наверно тот комп, на котором работает - шустрее...
а на медленном еще не открылась форма, а уже пишут...


Можно Start не закрывать, а делать visible формы = false
тогда в любой момент Forms!Start!Worker будет доступно ото всюду,
и не нужно таскать значение поля одной формы по полям других форм,
а еще есть глобальные переменные, где можно хранить значения на сеанс работы...
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756856
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleckoнужно
docmd.openform "FormMain",acNormal,,,acFormEdit
а лучше
docmd.openform "FormMain"
поскольку все остальные значения - умолчальные


Форма открывается нормально. Ругается на команду переноса данных из формы Start в MainForm/
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756857
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmag, интересный вариант, попробую
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756859
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmagwladimirrr,

ну наверно тот комп, на котором работает - шустрее...
а на медленном еще не открылась форма, а уже пишут...


Можно Start не закрывать, а делать visible формы = false
тогда в любой момент Forms!Start!Worker будет доступно ото всюду,
и не нужно таскать значение поля одной формы по полям других форм,
а еще есть глобальные переменные, где можно хранить значения на сеанс работы...

Невидимость не помогла. Я грешу на команду переноса данных из формы в др. форму. Может в ней что-то не так?
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756886
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,
Как я понял это стартовая форма и после ввода соответствующего пароля разрешается использование БД с определенными правами
Поясните,что должно произойти после ввода юзером правильного\неправильного(ну это ясно) пароля в поле password (за какой такой острой необходимостью в процедуре фигурирует "MainForm" )
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756891
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdkuwladimirrr,
Как я понял это стартовая форма и после ввода соответствующего пароля разрешается использование БД с определенными правами
Поясните,что должно произойти после ввода юзером правильного\неправильного(ну это ясно) пароля в поле password (за какой такой острой необходимостью в процедуре фигурирует "MainForm" )
После ввода правильного пароля открывается главная форма MainForm, в которой есть поле, где должно фиксироваться имя юзера. (поле Worker). Далее, если юзер из главной формы создает новые записи, то в них тоже должно фиксироваться его имя (переноситься с главной формы, которая все время сеанса открыта).
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756895
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdku,
почему то на компе клиента не работает строка Forms!MainForm!Worker = Forms!Start!Worker в коде, а так же макросы типа SetValue (задать значение).
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756915
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrr,
Почему на одном РС работает,а на другом нет-не знаю,но изначально можно записать имя пользователя во временную (мааааленькую)таблицу,создаваемую при входе в БД (ссылка на неё на всех компьютерах будет одинакова, а значение на каждом свое),которую удалять при выходе.В любых процедурах(в том числе и как значение по умолчанию при создании новых записей в других таблицах),в течение сеанса будет использоваться имя текущего пользователя
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756921
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wladimirrrНевидимость не помогла. Я грешу на команду переноса данных из формы в др. форму.
Не нужно переносить, нужно это значение брать из скрытой формы Start
wladimirrrПосле ввода правильного пароля открывается главная форма MainForm, в которой есть поле, где должно фиксироваться имя юзера. (поле Worker). Далее, если юзер из главной формы создает новые записи, то в них тоже должно фиксироваться его имя (переноситься с главной формы с формы Start, которая все время сеанса открыта и скрыта ).
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39756923
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и кстати, воркер в старте это не поле, а поле со списком вроде...
если команду переноса заремить а вместо неё написать

MsgBox Forms!Start!Worker

Что будет? Имя юзера?
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757208
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sdkuwladimirrr,
Почему на одном РС работает,а на другом нет-не знаю,но изначально можно записать имя пользователя во временную (мааааленькую)таблицу,создаваемую при входе в БД (ссылка на неё на всех компьютерах будет одинакова, а значение на каждом свое),которую удалять при выходе.В любых процедурах(в том числе и как значение по умолчанию при создании новых записей в других таблицах),в течение сеанса будет использоваться имя текущего пользователя
Есть какой нибудь пример или описание как это сделать? Я пока такой сценарий не использовал.
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757215
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmagwladimirrrНевидимость не помогла. Я грешу на команду переноса данных из формы в др. форму.
Не нужно переносить, нужно это значение брать из скрытой формы Start
wladimirrrПосле ввода правильного пароля открывается главная форма MainForm, в которой есть поле, где должно фиксироваться имя юзера. (поле Worker). Далее, если юзер из главной формы создает новые записи, то в них тоже должно фиксироваться его имя (переноситься с главной формы с формы Start, которая все время сеанса открыта и скрыта ).
Какая разница из какой формы брать? При создании новой записи надо преносить данные Worker (ID, число) в создаваемую запись, а это как раз и не получается(
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757217
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vmagи кстати, воркер в старте это не поле, а поле со списком вроде...
если команду переноса заремить а вместо неё написать

MsgBox Forms!Start!Worker

Что будет? Имя юзера?
Там число - ID юзера из таблицы Workers.
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757247
wladimirrr, у DoCmd.OpenForm есть аргумент OpenArgs. Можно передать туда значение при вызове. Тогда в MainForm это значение будет доступно в свойстве Me.OpenArgs.
На Open или Load формы можно присвоить его полю (кстати, это свободное поле в заголовке/примечании?).
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757296
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолийwladimirrr, у DoCmd.OpenForm есть аргумент OpenArgs. Можно передать туда значение при вызове. Тогда в MainForm это значение будет доступно в свойстве Me.OpenArgs.
На Open или Load формы можно присвоить его полю (кстати, это свободное поле в заголовке/примечании?).
Анатолий, а как правильно задать этому аргументу значение Worker? В стороке DoCmd.OpenForm или отдельной строкой?
Попробовал задать так: DoCmd.OpenForm "MainForm", acNormal, OpenArgs = Forms!Start!Worker, "", , acNormal, в форме MainForm на onLoad не возвращает.
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757305
wladimirrrа как правильно задать этому аргументу значение Worker? В стороке DoCmd.OpenForm или отдельной строкой?
Попробовал задать так: DoCmd.OpenForm "MainForm", acNormal, OpenArgs = Forms!Start!Worker, "", , acNormal, в форме MainForm на onLoad не возвращает.
wladimirrr, вы бы хоть справку посмотрели. OpenArgs, это последний аргумент метода, а вы всунули свою конструкцию в "FilterName".
Пробуйте так:
Код: vbnet
1.
2.
3.
DoCmd.OpenForm "MainForm", acNormal, , , , acNormal, Forms!Start!Worker
или
DoCmd.OpenForm "MainForm", acNormal, , , , acNormal, Me!Worker
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39757389
wladimirrr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий, Спасибо!
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39758235
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спрошу здесь.... так как проблема похожа
на форме программно удаляются и добавляются контролы. Форма сохраняется и открывается в норм виде, на ней выполняются операции, форма закрывается и далее по кругу.
форма открывается командами
Код: vbnet
1.
2.
DoCmd.OpenForm "frm", acDesign 
DoCmd.OpenForm "frm", acnormal



Периодически, непредсказуемо вылетает та же ошибка что и у ТС.
после первого появления ошибки она возникает уже всегда, и можно только удалить форму и создать ее заново. Тогда нормальная работа какое-то время продолжается.
Можно ли с этим как-нибудь бороться?
Access какой-то из последних, не 2010 точно
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39758275
alecko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311, проблема совсем не такая, у формы есть ограничение на количество контролов, причем при удалении оных счетчик не уменьшается, энтропия формы такая-счетчик только увеличивается, при достижения лимита вылетит ошибка- это сразу навскидку, и с этим лучше не играться - в компилированном формате контролы программа создавать не сможет. у тс же проблема-следствие небрежности-косяки наслаиваются и вываливают в ошибку "на ровном месте".
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39758277
Фотография Панург
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serg197311, такая да не такая - нужно создавать свой топик.
По сабжу, никто в трезвом уме и здравой памяти так не делает. На количество объектов у Access есть ограничение - смотри спецификацию. Счётчики объектов, ЕМНИП, но могу ошибаться, сбрасываются при сжатии бд.
Решение - создают контролы с запасом, делают их невидимыми, далее в коде "рулят" их свойствами (источники данных, видимость, положение и прочее)
...
Рейтинг: 0 / 0
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
    #39758293
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пожалуй да.... лучше видимостью управлять.... Так и переделаю.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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