Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кому не лениво... / 21 сообщений из 21, страница 1 из 1
27.06.2003, 20:13
    #32194099
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Плз.
Допустим, я обращаюсь из контекста модуля формы к объекту "Имя1", причем оттуда может быть видна переменная с таким именем, поле формы, и поле источника данных формы (или что-нибудь еще, скажем, зарезервированное слово). В какой последовательности VBA и конструкции VB будут осматривать окрестности?
...
Рейтинг: 0 / 0
27.06.2003, 20:19
    #32194103
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
И вот еще: что же такое имхо/ИМХО/IMHO? Млин, замучался - все говорят, а я аки валенок.
...
Рейтинг: 0 / 0
27.06.2003, 20:30
    #32194111
Rusty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
IMHO сокр. (In My Humble Opinion) по моему скромному мнению (в сетях употребляется также непосредственно в виде "имхо" (существительное среднего рода))
Пжаста.
...
Рейтинг: 0 / 0
27.06.2003, 20:46
    #32194120
Нуф-нуф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Geo, именно по этому рекомендуется указывать ОДНОЗНАЧНЫЕ ПОЛНЫЕ пути! Т.е. не "МойКонтрол=5", а "Me.МойКонтрол=5".
Кстати, у меня была база в А97, которую не получалось перевести в А2000 (во время преобразования Акс сообщал что проект VBA разрушен). Так вот решилось все просто - оказалось, что код неоткомпилирован был и там были ошибки. Среди прочих ошибок была ссылка в коде на контрол без "Me"! Надо сказать, что без "Ме" иногда прокатывает, но тогда в ОТЧЕТЕ почему-то не прокатило...
//заглянул на минутку...
...
Рейтинг: 0 / 0
27.06.2003, 20:55
    #32194123
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
2Rusty
Спасиба

2Нуф-Нуф и All
Это понятно. Но у мя задача - определить, что делает аксес, если встречает неоднозначность. Вернее, в каком порядке он это делает :)
...
Рейтинг: 0 / 0
27.06.2003, 21:13
    #32194135
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
> Но у мя задача - определить, что делает аксес, если встречает неоднозначность. Вернее, в каком порядке он это делает :)

Я думаю, что ставить вопрос так не надо. То есть можно из любопытства разобраться для себя, но в фак включать не надо. Хрен его знает, может сейчас оно так, а в каком-нибудь Аксесс 2005 будет наоборот. В факе должно быть одно строгое предупреждение: неоднозначностей надо избегать, ибо с ними Аксесс обходится непредсказуемым образом.
...
Рейтинг: 0 / 0
27.06.2003, 21:18
    #32194137
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
В большинстве языков, которые я знаю, порядок обработки неоднозначной ссылки определен как основополагающее понятие (я не зря проверил работу своего MsgBox в трех аксесах и выложил это в фак). Не думаю, что мелкопрог так запросто обрабатывает подобные ссылки как бог на душу положит. Скорее, если уж это не документированно в соответствующем соглашении, они готовят пути к отступлению :) Но вряд ли. Я думаю, что плохо искал.
...
Рейтинг: 0 / 0
27.06.2003, 21:24
    #32194140
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
ИМХО я плохо искал.
...
Рейтинг: 0 / 0
27.06.2003, 21:26
    #32194142
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Но все равно нельзя рекомендовать опираться на такие вещи. Это плохой стиль программирования. А рекомендовать надо хороший.

Писать полное имя объекта желательно уже для того, чтобы программа хорошо читалась человеком. Даже если никаких неоднозначностей нет.
...
Рейтинг: 0 / 0
27.06.2003, 21:29
    #32194145
Нуф-нуф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Geo, я серьезно... Не стоит рассказывать (даже если знаешь) как оно обрабатывает неоднозначные ссылки (см. Владимир Саныча :)
Здесь не ТОЛЬКО вопрос в том будет ли он работать и дальше также (а вдруг, если все-таки не будет?!), а и в том, как этот код потом отлаживать! Скока, млин, лично я всевозможных багов усматриваю в неоднозначных ссылках! А код потом сам же читать как будешь? А, не дай Господь, этот код другие читать будут? Имхо, подобная экономия времени (за счет меньшего нажатия клавиш программером?!!!) чревата 1000 кратной потерей онного при чтении и отладке собственного же кода!
Знаю, что опять не по вопросу конкретно, но лично мне этот вопрос не интересен вовсе. Привычка до того дошла, что даже ежли у меня ADO не подключен, то я се равно пишу: "...As DAO.Recordset" и не морочусь как он там это все понимает...
Таким образом, присоединяюсь к Санычу... :)
...
Рейтинг: 0 / 0
27.06.2003, 21:30
    #32194147
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
> Писать полное имя объекта желательно уже для того, чтобы программа хорошо читалась человеком.
Программист = человек?
И разве плохо иметь возможность подменить стандартную функцию своей. Я это нашел, когда увидел, что для DateDiff разница между 31.01.2003 и 01.02.2003 составляет один месяц!
...
Рейтинг: 0 / 0
27.06.2003, 21:44
    #32194151
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Нуф, thanx!\r
\r
2 Geo:\r
\r
> Программист = человек?\r
\r
Программист = человек + специфический образ мышления.\r
\r
> для DateDiff разница между 31.01.2003 и 01.02.2003 составляет один месяц!\r
\r
DateDiff принимает параметр, который говорит, "в чем мерять". Если этот параметр задан "в месяцах", то оно как-то округляет. А про округление у нас был длииииииииииии... (ну, остановите меня кто-нибудь!) ...нный топик.
...
Рейтинг: 0 / 0
27.06.2003, 21:53
    #32194152
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Программист => человек
Человек => программист (обычно)
Поэтому в программах надо разбираться программистам - каждому свое (потом вспомню, как это на латыни - известное выражение).

Я читал этот топик :) И читал, в отличие от многих других, более-менее внимательно. :)
Но я с размаху могу придумать пару ситуаций, когда бывает нужно подменить имя поля именем, например, переменной. А раз нужно, значит, соответствующий код будет короче, значит, он будет лучше ((с) Чехов).

Между прочим, DateDiff("m",cdate("01-31-2003"),cdate("02-01-2003")), насколько я помню, вернет 13. Алгоритм работы стандартной функции предельно прост, и, как правило, совершенно бесполезен.
...
Рейтинг: 0 / 0
27.06.2003, 21:58
    #32194154
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
Тьфу ты, пропасть!
Человек => программист (не всегда справедливо, т.е. неверно)
Пиво, млин.
Кстати, с отпуском меня, и с почином ремонта квартиры.
Лучший отдых - активный отдых. :)
...
Рейтинг: 0 / 0
27.06.2003, 22:03
    #32194155
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
И читал, в отличие от многих других <топиков>...
н-да...
...
Рейтинг: 0 / 0
27.06.2003, 22:16
    #32194156
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
2Нуф-Нуф
Согласен. Если надо обратиться к DAO.Recordset, так и надо писать. Потом самому же проще будет. А "красивки" типа подмены функций надо комментарить. Сам же ты после первого вхождения, будешь их помнить и ими гордиться. :)
...
Рейтинг: 0 / 0
27.06.2003, 23:16
    #32194163
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
> каждому свое (потом вспомню, как это на латыни - известное выражение).

По-моему, это было на немецком и висело над воротами какого-то концлагеря. На латыни было богу богово, кесарю кесарево.

> Но я с размаху могу придумать пару ситуаций, когда бывает нужно подменить имя поля именем, например, переменной.

Именно с таким же именем? Сыграть на том, что поле и переменная носят одинаковые имена? If я правильно понял Then такое рекламировать можно только шепотом Else к чему это?

> Между прочим, DateDiff("m",cdate("01-31-2003"),cdate("02-01-2003")), насколько я помню, вернет 13.

Мне оно возвращает 0.
...
Рейтинг: 0 / 0
28.06.2003, 00:41
    #32194182
VIG
VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
каждому свое (потом вспомню, как это на латыни - известное выражение).
По-моему, это было на немецком и висело над воротами какого-то концлагеря

"Jedem das seine" (каждому свое )- надпись над воротами Бухенвальда.
...
Рейтинг: 0 / 0
28.06.2003, 00:42
    #32194183
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
О. Спасибо. Чуял я, что что-то не так...
...
Рейтинг: 0 / 0
28.06.2003, 12:03
    #32194234
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
все, молчу.
...
Рейтинг: 0 / 0
28.06.2003, 12:08
    #32194235
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кому не лениво...
:^) Добрый день.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Кому не лениво... / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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