powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Колбасит от Me.RecordSource = Me.RecordSource
17 сообщений из 17, страница 1 из 1
Колбасит от Me.RecordSource = Me.RecordSource
    #32363492
Фотография Лифчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В силу того, что был объявлен новогодний конкурс на самый глупый топик и самого тупого ламера, я решил поучаствовать. Тем более что свербит в одном месте и колбасит по черному.
Скажите мне, уважаемые, одинок ли я в своей аллергии к выражениям типа
Код: plaintext
Me.RecordSource=Me.RecordSource

которое согласно последним веяниям программистской моды должно что-то изменять в моем объекте, т.е. (ИМХО) выступать в качестве метода, применяемого над объектом (по типу Requery), а не являться просто оператором присваивания свойству (RecordSource string- слева) значения (он же – справа).
На мой взгляд, написанный пример – есть тавтология, если только не скрывать какие-то подспудные смыслы в:
1. Левой части оператора
2. В знаке присвоения «=»
3. В правой части оператора.

И ладно если свойство было бы какое-то сложное, само обращение к которому предполагало бы выполнение каких-то встроенных процедур. Но ведь RecordSource – строка-строкой. Чего тут может неявно исполняться?

Дело в том, что я – старый перышник, привыкший к дисциплине, и если вижу, что А – есть свойство, а Б – метод, то ситуация, когда А вдруг становится методом, меня начинает расстраивать и вводить в тоску – вдруг я в маразме перестал уже гибко реагировать на действительность? Хотя на самом деле в жизни такое случается сплошь и рядом – правда содержит в себе некоторую ложь и называется истинной (Жванецкий), черное становится белым, добро – злом, победа через некоторое время – оборачивается поражением.

Так что если уважаемое сообщество найдет в этом топике предмет для философского трепа – я буду очень рад, обратная ситуация даст мне шанс на победу в конкурсе чудаков – тоже неплохо. А может просто объясните ламеру подспудные смыслы 1-3 (повторно, потому что я уже как-то задавал подобный вопрос, но забыл где ибо склероз).
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363513
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Уже обсуждалось:\r
\r
FAQ. А почему у меня перестало работать...\r
\r
:^)))
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363516
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый кто?
В общем, не суть
Был бы ты достаточно старым - знал бы, что пропертя - это и есть набор из одного, двух или трех методов. Для удобства в VB эти методы идут под одним именем. Ну и что?
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363551
IgorM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2ЛП: свойство не обязательно должно быть представлено методом ("бывают и просто сны" (с) :) Но, это так, к слову. :)

2All: Вот вы лучше скажите мне, есть ли у кого-нибудь стабильно повторяемые условия, требующие такого использования RecordSource? Что надо сделать, чтобы форма никак не обновлялась, кроме как через Me.RecordSource = Me.RecordSource?

2Лифчик: Никаких подспудных смыслов. Access'у пофиг на что ты меняешь свойство, важен сам факт его смены, в результате чего происходит обновление набора данных.
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363614
Фотография Лифчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, спасибо, что напомнил.

Лох, спасибо, что разъяснил. Свойство есть метод. Все правильно. Как я мог забыть! Хотя про старость как-то уже намекал, что не все так просто, типа если долго жить, то ветры разучишься пускать.

А дальше вопрос конкретный, без всякой философии - почему в тьме случаев, описанных на этом форуме, не работает Requery, как раз для того вроде и предназначенный, а работает обновление через одно место Me.RecordSource = Me.RecordSource (откуда ветры дуют) Хорошо ли это? Не теряется ли стройность в теории, приводящая к гемору на практике?

ПС Старательно иду на победу в номинации
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363667
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Me.RecordSource=""
сколько записей будет в форме?

в чем разница
найди отличия

Код: plaintext
1.
mystr = Me.RecordSource
Me.RecordSource = mystr


и

Код: plaintext
Me.RecordSource =Me.RecordSource


важно не то что ты присвоил этому свойству а сам факт присвоения ибо инициируется событие формы изменение источника строк
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363689
Фотография Лифчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я уже понял (давно, спасибо Лоху), что в момент присвоения происходят фоновые процедурки, события, в которых может твориться все что угодно. Не возражаю. Мне просто кажется, что некоторые методы аксесса не делают того, что вроде бы должны делать, и наоборот - свойства выполняют роли методов. В моей (но только в моей!) голове возникает каша, мешающая разложить аксесс по полочкам.
А что касается вопроса про строки в форме с пустым RecordSource, то как я понимаю - в обоих случаях пресловутое событие формы изменения источника строк происходит один раз, когда Me.RecordSource = ... т.е. стоит слева. Нет?
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363695
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лично у меня это встречается на каждом шагу (ADP, SQL2000 + Access2000).
Ибо без него формы со сложными источниками строк - хранимыми процедурами просто не обновляются. Почему не работает requery - скорее вопрос к разработчикам, я полагаю... Потому же ИМХО, почему, например, в некоторых случаях Access не может получить для формы списка полей в случаях, когда в ХП используются сложные батчи.
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363727
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛифчикЯ уже понял (давно, спасибо Лоху), что в момент присвоения происходят фоновые процедурки, события, в которых может твориться все что угодно.
Ну почему что угодно?
В правой части равенства мы запоминаем текущее свойство RecordSource, а в правом присваиваем его заново. Естественно, при этом удобно сразу сделать и requery, что, видимо, автоматом и делается. Вроде как ничего лишнего?!
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32363830
Shkurenko Alexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Л>>Я уже понял (давно, спасибо Лоху), что в момент присвоения происходят
Л>>фоновые процедурки, события, в которых может твориться все что угодно.

AJ>Ну почему что угодно?


Разработчикам никто не мешал наваять такое:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Property Let RecordSource(ByVal RecordSource as String)
    If CurrentUser =  "ЛОХ ПОЗОРНЫЙ"  Or CurrentUser =  "IgorM"  Then
        Call СуперМетод
        ExitProperty
    Else 
        If CurrentUser =  "Лифчик"  Or CurrentUser =  "AlexJuice"  Then
            For i =  0  to  999 
                DoEvents
            Next
        End If
    End If
    Call ОбычныйМетод
End Property
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364013
Фотография AlexJuice
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Shkurenko Alexander:
Не спорю
А смысл?
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364033
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как это "а смысл"?
Как бы у меня иначе получилось пальцы гнуть, мол у меня все работает, причем быстро, а у вас все глючит, и медленно?
Это хитрый маркетинговый ход со стороны МС. Позволяет все остальные (необнаруженные ими) глюки списать на неопытность разработчиков.
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364136
Фотография Shark
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Каша в голове, Access по полочкам.
Мне кажется, что Access трудно разложить по полочкам. У Access-а масса достоинств, но один из недостатков- нелогичность синтаксиса. Многие вещи надо программировать именно определенным образом, и вопрос "почему" не имеет смысла. И квалификация разработчика на Access в основном определяется знанием этих трюков.
Пример- обновление связанных таблиц. Почему они обновляются так, а не иначе- вопрос нелепый.
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364158
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Shark
Какая связь между "нелогичностью синтаксиса" и внутренними кривостями библиотек?
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364169
Фотография Shark
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Какая связь
Дык причинно-следственная. Первое следствие второго:-)
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364193
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. глюки библиотеки DAO влекут за собой нелогичность языка C++ (например)? Что-то вы батенька фигню какую-то говорите.
...
Рейтинг: 0 / 0
Колбасит от Me.RecordSource = Me.RecordSource
    #32364208
IgorM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Shark: Кстати, а что со связанными таблицами? Меняется строка Connect, по-моему, всё логично...
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Колбасит от Me.RecordSource = Me.RecordSource
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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