Re: Научите работать с Data Environment | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Вообще так по мелочам - много чего, если бы немного доработать - могло бы сегодня сделать фокспро едва ли не самым удобным средством разработки.
Вот скажем недавно взялся перелопатить один сам-для-себя проектик на лазарусе, и как же оно раздражало со всеми этими паскальными сложностями визуализации объектов, которые на фоксе, как бы оно странно ни прозвучало, были реализованы намного удобнее! Несмотря на всю уже моральную устарелость собственно VFP9. Т.е. как раз по мыслям - в древнем как бы по своей сути фоксе разные задумки были намного более удобные для программиста. Нежели во всех этих "современных" иных средах. Как и сама структура языка - изначально гениальная. В отличие от всех прочих. Причем, самое удивительное - даже в отношении набрасывания визуального интерфейса! Еще бы ему добавить чуть больше встроенных возможностей по более углубленной работе с графикой, вообще было бы просто таки супер. Т.е. фокспро - намного более высокого уровня язык получается. При достаточной все еще компактности. Что для многих нужд - намного более удобно. Нежели закапываться в мелочах, как в сишных и прочих моделях именно с визуальным интерфейсом. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) Исправлено 2 раз(а). Последнее : Crispy, 14.09.20 09:05 |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Можно еще добавить, что DE и объекты Cursor имеют свои Init-ы. Откуда-то сохранился чей-то порядок загрузки формы:
|
Re: Научите работать с Data Environment | |
---|---|
LUCIAN Автор Сообщений: 343 Откуда: Лида Беларусь Дата регистрации: 25.03.2008 |
Шутенко где то предлагал в Load формы вставлять такой код:
|
Re: Научите работать с Data Environment | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Этот метод имеет смысл использовать только если используется сам DE - и как раз для "настройки" объектов в DE расположенных (обычно ограничиваются путями к таблицам/базам). Метод Load формы хоть и работает после данного, но до того как происходит "привязка" элементов управления к своим источникам данных - поэтому нет ни единой проблемы всю подготовку источников данных делать в Load. Есть лишь проблема в "заполнении" этих источников, т.к. зачастую для заполнения нужно знать какие параметры переданы извне в форму, а их, увы, можно получить только в Init самой формы - что уже слишком поздно для нормального открытия куросров, выполнения запросов и.т.д. Если DE не используется (там нет объектов-курсоров), то и смысла в DE.BeforeOpenTables нет никакого. Это требует отключения "автооткрытия" курсоров в DE (т.к. если курсор уже открыт, то поменять его CursorSource/Database не получится, да и бессмысленно). А сделать это при помощи суюклассирования нельзя. Т.е. настройку нужно производить для каждой scx формы в проекте отдельно. Да, в принципе можно делать эту програмно - даже несколько вариантов есть, но это всё уровень "мастеров приложения/построителей/генераторов-модификаторов кода" - для среднего/малого размера проектов это выглядело явным перебором. Кстати, если уж заморачиваться на построители/генераторы, то не проблема просто прописывать этот самый код в DE.BeforeOpenTables. Лично я пользовался недокументировнным багом/фичей, которая позволяла "волшебным образом" заставить все пустые DE.BeforeOpenTables в проекте исполнять мой код. Т.е. через зад но сделал нечто типа "субклассирования DE". Впрочем, для многих применений вообще не требуется шаманитиь с этими самыми путями к таблицам - можно обойтись тупым автоматическим поиском dbf в Default папке или по SET PATH - для малых/средних проектов это нормальный вариант (главное на время разработки использовать сугубо локальную копию таблиц/БД, чтобы в DE не прописывались абсолютные пути к файлам). ------------------ WBR, Igor |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
А в чем собственно проблема с DE, или без писанины с USE старперам некомфортно что-ли?
С этой известной ИК-проблемой передачи параметров через INIT - заведите глобальный объект goPublic класса EMPTY и храните в нем хоть тыщу своих параметров как свойства. С субклассированием DE и прочее - заведите объект класса CUSTOM и обращайтесь к нему из DE. |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Логика домохозяйки - при проблемах с DE раскрасить нужно пост lulgu.
|
Re: Научите работать с Data Environment | |
---|---|
of63 Сообщений: 25254 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Закладки, чтобы долго не искать
|
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
С такими метками мимо поста поневоле не проскочишь. |
Re: Научите работать с Data Environment | |
---|---|
pasha_usue Сообщений: 3649 Откуда: Е-бург Дата регистрации: 06.10.2006 |
Просто с luglu дискутировать неинтересно. У неё аргументация бабкина. Поэтому и красят, когда очередную чушь сморозит. |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Еще один художник, проснулся.
Хоть бы разок хоть что-то путное услужил. |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
По DE основное обозначено аж восемнадцать лет назад, когда знатоков местного разлива еще в проекте не было:
forum.foxclub.ru Остальное в поиске по "BeforeOpenTables". |
Re: Научите работать с Data Environment | |
---|---|
pasha_usue Сообщений: 3649 Откуда: Е-бург Дата регистрации: 06.10.2006 |
И нахера? С native ďatabase ещё ничего, а с external - никак. |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Сам-то хоть понял, что написал? |
Re: Научите работать с Data Environment | |
---|---|
sphinx Сообщений: 31180 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Посильно почистил карму. Но мало. ------------------ "Veni, vidi, vici!"(с) |
Re: Научите работать с Data Environment | |
---|---|
sphinx Сообщений: 31180 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Пашка, подбирай выражения. Ты же на основном форуме. ------------------ "Veni, vidi, vici!"(с) |
Re: Научите работать с Data Environment | |
---|---|
sphinx Сообщений: 31180 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Одно другому не помеха. На универсальных формах через инит и передаю, где надо перекрою по NODEFAULT, и глобальный класс есть. ------------------ "Veni, vidi, vici!"(с) |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Конечно, надо иметь здравый смысл - ничего друг друга взаимно не исключает. Про карму - я давно знаю, что эти художники не программисты. |
Re: Научите работать с Data Environment | |
---|---|
sphinx Сообщений: 31180 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
По ссылке про DE:
Цитата: Это что ли в тексте программы прописываются? Вроде здравомыслящие всегда используют какой-то файл настроек - DBF, TXT (INI), XML и пр. Или как-то еще "жестко" можно задать? ------------------ "Veni, vidi, vici!"(с) |
Re: Научите работать с Data Environment | |
---|---|
Божья_коровка Сообщений: 25731 Дата регистрации: 23.08.2001 |
Кто бы сейчас спросил ХелаРайсера использует ли он DE В свое время тоже задавалась этим вопросом и хотела использовать DE в приложении, на что piva сказал - забудь. С тех пор этим вопросом и не задавалась. ------------------ Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается... Исправлено 3 раз(а). Последнее : Божья_коровка, 19.09.20 15:45 |
Re: Научите работать с Data Environment | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Так ведь никто не заставляет. Но на форуме свою точку зрения все-таки надо уметь хоть как-то аргументировать. Но здесь, когда Главные асы форума ищут DE то в классах, то в Database, то в среде домохозяек, попутно устраивая срач, то это нехорошо. Или, упомянутое субклассирование без конкретного примера просто вброс ни о чем, только чтобы потрындеть для важности. |
© 2000-2024 Fox Club  |