Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Доброго дня, коллеги
Сделал грид по параметризированному представлению с параметром idobj1, и обновляю его по пермезению записи в другом
Но при открытии формы постоянно первый раз спрашивает параметр. Куда я его только не пытался засунуть... Load, Init формы и гридов и Data Enviriment, в свойство формы.. Идеи кончились, а нагуглить не получилось. Прошу помощь зала. |
Re: Начальный параметр представления | |
---|---|
ssa Сообщений: 13008 Откуда: Москва Дата регистрации: 23.03.2005 |
Надо просто вспомнить/узнать, что методы объектов вызываются не последовательно друг из друга и потому область действия приватной переменной оказывается такой же как и у локальной переменной, то есть только тот метод, в котором она определена. Создай свойство формы idobj1 и его используй в качестве параметра. ------------------ Лень - это неосознанная мудрость. |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Пробовал с самого начала.. ну еще разок , может ошибся где
|
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Не, не помогает. В форме свойство idobj1 есть у меня, default значение 1
На всякий пересоздал, та же фигня.. Главное , после ответа на запрос параметра все потом отлично работает и обновляется.. Исправлено 2 раз(а). Последнее : frontman, 25.10.18 14:19 |
Re: Начальный параметр представления | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Загадочная фраза. Переведите) ------------------ |
Re: Начальный параметр представления | |
---|---|
Taran Сообщений: 13625 Откуда: Красноярск Дата регистрации: 16.01.2008 |
Перевести на cursoradapter. У него добавить свойство и в тексте запроса писать типа this.miProp.
И глобальная переменная тогда не нужна и пр.. |
Re: Начальный параметр представления | |
---|---|
ssa Сообщений: 13008 Откуда: Москва Дата регистрации: 23.03.2005 |
Показывай как делал. ------------------ Лень - это неосознанная мудрость. |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Пожалста, ткните где не так
Исправлено 3 раз(а). Последнее : frontman, 25.10.18 16:12 |
Re: Начальный параметр представления | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Там где открывается это самое представление, там и нужно прописать параметр. Если используется DE (представление визуально "брошено" в DE, и открывается им автоматически), то беда - надо либо вообще убрать представление из DE, либо хотя бы запретить автооткрытие курсоров, чтобы в момент полу-ручного их открытия все нужные переменные-параметры существовали. Просто NoDataOnLoad в свойстве курсора, насколько я помню, в VFP9 уже не помогает - т.е. хоть сами данные и не будут выбираться, но переменные для параметров таки нужны. Т.е. я бы посоветовал очистить DE, поместить в Load код наподобии
В перспективе стоит заменить представления на курсорадаптеры, оставив логику их создания/открытия в том же самом Load. ------------------ WBR, Igor |
Re: Начальный параметр представления | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
В принципе да, конечно.
Хотя тут можно обойтись и малой кровью. Т.е. просто открываем DataEnvironment, дважды кликаем про пустому месту, открывается метод BeforeOpenTables. Он срабатывает раньше всех методов формы и ее объектов. Поэтому в нем бывает удобно прописывать даже скажем создание при включении подключенной к гриду таблицы с произвольной структурой. В данном случае всего пара строк все и решает:
Если же скажем вдруг есть детские страхи перед PUBLIC, как перед чем-то диким, темным и ужасающим, как замечал, бывает у пришедших в фокс из строгих языков и подсознательно боящихся его нестрогости, в принципе следом после использования при желании можно и изменить видимость этой переменной через ее RELEASE и дальнейшее объявление ее локальности при необходимости. Хотя по мне так ничего страшного в таких висящих глобальных переменных как бы и нет. Ну может где-то в толпе разработчиков, грызущих один проект, где каждый кто во что горазд, оно и бывает страшно, кто там чего наобъявлял. Но когда сам на сам, почему бы и не использовать. Ну безусловно, удобнее конечно всегда бывает использовать вместо такого объявления такое же по сути глобальное свойство формы, оно как бы еще и более гибкое по ряду моментов. Но здесь-то формы в общем-то еще нет. А экран, к которому тоже можно бы в принципе пристегнуть, у меня например обычно всегда невидим. Ну это уже пошли как бы нюансы конфессий - кто молится босиком, но в шапке, а кто обутым, но без шапки. Поэтому споры о таком в итоге обычно бесполезны. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) Исправлено 1 раз(а). Последнее : Crispy, 26.10.18 07:33 |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
PUBLIC idobj1 в Init формы спас отца демократии..
Давно в руки шашку не брал, такие простые вещи как видимость переменной забыл, спасибо. Вот интересно, почему в Load формы тоже самое не работает, он вроде раньше |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
То что оно гибче я понял, а по скорости в сравнении с представлениями есть информация? |
Re: Начальный параметр представления | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Скорее всего, у ТС не одна такая переменная. Чтобы ими никого не дразнить, можно объявить глобальный объект EMPTY, определив эти переменные как его свойства. |
Re: Начальный параметр представления | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Досада. ТС зареген на форму в 2005 г. 13 лет. Выбирает самый... из всех... плохой подход. ------------------ |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Я фоксом уже 15 лет не зарабатываю, программировал в основном на foxpro DOS 2.6 Но старая любовь не ржавеет, пишу немного для себя в редко свободное время, и изучаю VFP. А не знать чего-то не стыдно, за сим и обращаюсь к опытным на форуме, и никто кроме вас не кичится. |
Re: Начальный параметр представления | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Я вовсе не кичусь.
И спрашивать, не стыдно. Из всех советов, вы выбрали паблик, вот о чем досада была. Ясно что 15 лет, не зарабатывали фоксом, да и вообще программированием. ------------------ |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Чем кардинально в данном случае плох PUBLIC ?
На данном этапе прототипа проблема решена "малой кровью", будет время - разберусь с курсорадаптерами, а пока чтобы понять контуры будущего приложения и начать вводить первичные данные форма с представлением меня устроит. Исправлено 1 раз(а). Последнее : frontman, 26.10.18 12:58 |
Re: Начальный параметр представления | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Понимаешь, мне все равно.
Но коли это прототип, так тут и надо разбираться с такими вещами окончательно. 100% этот паблик дойдет до конца жизни приложения. Параметры - ну как раз для вашего случая придумали. С этого начинали. Столько правильных советов, и выбрать самый, якобы легкий, потенциально, очень опасный выход... Вам жить с этим) Но если это на раз. Сделать и выбросить, то запросто можно. Только я бы не стал об этом здесь сообщать))) ------------------ |
Re: Начальный параметр представления | |
---|---|
ssa Сообщений: 13008 Откуда: Москва Дата регистрации: 23.03.2005 |
Еще раз внимательно читаем мой первый ответ в этой теме. При необходимости повторить нужное до просветления количество раз. ------------------ Лень - это неосознанная мудрость. |
Re: Начальный параметр представления | |
---|---|
frontman Автор Сообщений: 89 Откуда: Москва Дата регистрации: 16.02.2005 |
Ну про раньше погорячился, но переменная Public , не Pivate
По идее тоже должна быть видна как глобальная. |
© 2000-2024 Fox Club  |