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

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


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


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

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


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

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

MsgBox Forms!Start!Worker

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

MsgBox Forms!Start!Worker

Что будет? Имя юзера?
Там число - ID юзера из таблицы Workers.
...
Рейтинг: 0 / 0
09.01.2019, 15:28
    #39757247
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
wladimirrr, у DoCmd.OpenForm есть аргумент OpenArgs. Можно передать туда значение при вызове. Тогда в MainForm это значение будет доступно в свойстве Me.OpenArgs.
На Open или Load формы можно присвоить его полю (кстати, это свободное поле в заголовке/примечании?).
...
Рейтинг: 0 / 0
09.01.2019, 16:14
    #39757296
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
Кривцов Анатолий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
09.01.2019, 16:25
    #39757305
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
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
09.01.2019, 17:31
    #39757389
wladimirrr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
Кривцов Анатолий, Спасибо!
...
Рейтинг: 0 / 0
11.01.2019, 08:40
    #39758235
Serg197311
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ошибка Method 'Item' object 'Forms' failed на одном компе, а на другом все работает.
Спрошу здесь.... так как проблема похожа
на форме программно удаляются и добавляются контролы. Форма сохраняется и открывается в норм виде, на ней выполняются операции, форма закрывается и далее по кругу.
форма открывается командами
Код: vbnet
1.
2.
DoCmd.OpenForm "frm", acDesign 
DoCmd.OpenForm "frm", acnormal



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


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