Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 133 134 135 136 137 [138] 139 140 141 142 .. 195   вперед  Ctrl
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Daf
Member

Откуда: Москва
Сообщений: 1916
AlTis
Daf
А в царицыно ...
Ветер ... ! Прям маленький ураган.
Улица в речку превратилась.

я там живу рядышком. Соседи?


Я в царицыно работаю, а проживаю на Мусы Джалиля в Зябликово.
26 июн 06, 15:19    [2812618]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Сделал на дотнете форму на большом объеме данных, с 3 уровнями подчиненности. Фу-у-уф! Упарился! Это не в аксесе два раза мышой ткнуть! правда работает довольно быстро: на каждом уровне тащит не так много данных.
28 июн 06, 12:48    [2820811]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
AlTis
Member

Откуда: Penza - Moscow
Сообщений: 1099
Программист-Любитель
Сделал на дотнете форму на большом объеме данных, с 3 уровнями подчиненности. Фу-у-уф! Упарился! Это не в аксесе два раза мышой ткнуть! правда работает довольно быстро: на каждом уровне тащит не так много данных.

все собираюсь потихонечку переходить на сие чудо.
Каково отношение качесва/времени по соотношению с аксом?
можно пример чего нибудь, с описанием трудозатрат (что бы прикинуть сооответсвие с аксом)
28 июн 06, 12:53    [2820834]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Visitor
Member

Откуда:
Сообщений: 246
AlTis
отношение качесва/времени по соотношению с аксом?


вопрос опыта однако...
28 июн 06, 13:29    [2820980]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
У меня пока очень туго идет. Не привык еще. Или мало знаю про .NET.

Самая большая засада - прелести нета начинают работать, когда вся копия данных лежит в памяти станции, утянутая с сервера. Тогда его чудесные датасеты с релейшанами разворачиваются во всей красе.

Иначе - когда нужно дергать очередные маленькие порции - приходится все программировать на низком уровне, каждую отдельную ступеньку отношения мастер-детайл.

Что еще НЕ нравится - сначала сделай структуру логику на сервере, а потом еще раз почти то же самое в конструкторе или в коде на клиенте.

Вот кабы серверной части не было, тогда в памяти объектов и связей можно обсоздаваться, до выгрузки программы все будет переливаться и сверкать, редактироваться и удаляться само собой.

Еще минус - постые условия по поиску и выборке можно делать в локальной копии-итаьлице. Мало-мальски сложные условия - кроме как сделать новый селект другого пути нет.
28 июн 06, 13:29    [2820981]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Еще минус - простые условия по поиску и выборке можно делать в локальной копии-таблице. Мало-мальски сложные условия - кроме как сделать новый селект другого пути нет.
28 июн 06, 13:31    [2820987]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
AlTis
Member

Откуда: Penza - Moscow
Сообщений: 1099
Visitor
AlTis
отношение качесва/времени по соотношению с аксом?


вопрос опыта однако...

Знаю, что в аксе у Программист-Любитель опыта очень даже хорошо
судя по посту - в Net недавно.
Как раз та ситуация, с которой всем нам надо будет столкнуться в свое время.
28 июн 06, 13:33    [2820999]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Во, во, бью шишки и все равно идет медленно.

Совсем другая идеология - центр перенесен на работу с отсоединенной копией данных со всей структурой и прочим.

Т.е. все это прочее хочешь-нехочешь поддерживай параллельно серверной части, где уже и так все есть...
28 июн 06, 13:37    [2821022]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Visitor
Member

Откуда:
Сообщений: 246
AlTis
Как раз та ситуация


как раз такая ситуация, когда сравнивать сложно :) - я это имел в виду
28 июн 06, 13:55    [2821113]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Hummer
Member

Откуда:
Сообщений: 2583
Всё нормально в нете:) Только вот я ни разу конструктором датасетов и релейшенов не пользовался за почти 3 года:) Всё в коде.

Один совет - используйте сторонние компоненты (гриды, бары, панельки). Сразу пишите нормальный класс для доступа к данным, а то замучаетесь каждый раз конекшены и команды с параметрами прописывать.

А так, с опытом, всё очень даже быстро разрабатывается.
28 июн 06, 16:00    [2821950]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Примерчик любого класса такого рода сюда не положите ? Может еще какой совет по нему всплывет ?
28 июн 06, 17:39    [2822566]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Hummer
Member

Откуда:
Сообщений: 2583
Выкладывать класс не буду, по причине того, что класс без описательной части на сиквеле и хранения там команд и прочих атрибутов доступа к данным безполезен, тут надо просто рассматривать всю трехзвенную архитектуру приложения.
Скажу просто - это автоматизация описания команд датаадаптера. Сейчас способны работать с сиквелом и с ораклом, используются родные клиенты двух субд. ODBC не использовали, поскольку возможности родных клиентов шире (в частности, возврат кодов ошибок и т.п.).

По каким-либо вопросам проконсультировать могу.

P.S. Не надо "утягивать" все данные с зависимыми таблицами сразу по мере загрузки формы. Данные проще подкачивать в датасет по мере перехода по главным записям формы - так быстрее. Иерархическая структура в гридах строится таким же образом. Т.е. по релейшенам стандартный грид сразу показывает подчинённые, а сторонии это делают не всегда.
28 июн 06, 22:42    [2823292]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Hummer
P.S. Не надо "утягивать" все данные с зависимыми таблицами сразу по мере загрузки формы. Данные проще подкачивать в датасет по мере перехода по главным записям формы - так быстрее. Иерархическая структура в гридах строится таким же образом. Т.е. по релейшенам стандартный грид сразу показывает подчинённые, а сторонии это делают не всегда.


Т.е. когда я сделал это руками через каскадный вызов процедур с параметрами (от уровня к уровню) - это единственный способ ? Сам дот.нет для отработки релейшенов все-таки требует закачки всего массива и не будет закачивать порционно ?

Если бы можно посмотреть на небольшие куски кода, иллюстрирующий ваш способ работы с иерархически связанными данными. Как отслеживается перемещение по гриду (аналог события Current), как при этом обновляются дочерние гриды (аналог LinkMaster/ChildFields). Просто саму идею, так сказать с точки зрения аксесника.
29 июн 06, 08:19    [2823773]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Alexander G
Member

Откуда: Чукчи мы, однако
Сообщений: 3270
Скоро 1 июля. Купил 4 литра водки, до отпуска должно хватить. Ну почему опять в России все через задницу???
29 июн 06, 09:23    [2823884]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Hummer
Member

Откуда:
Сообщений: 2583
2 Программист-Любитель
автор
Т.е. когда я сделал это руками через каскадный вызов процедур с параметрами (от уровня к уровню) - это единственный способ ? Сам дот.нет для отработки релейшенов все-таки требует закачки всего массива и не будет закачивать порционно ?

Да, фактически датасет это возможность организовать локальную копию данных со всеми связями, ключами и прочими атрибутами нормальной СУБД (ну не со всеми конечно же:) )
Т.е. просто по мере перехода по записям нужно делать вызов процедур lkz получения дочерних записей и объединять таблички в датасете (см. Merge).
В стандартном гриде я не силён, используем Janus, там это выглядит примерно так:
        ' разворачивание строки в гриде
        Private Sub Grid_Search_ExpandingRow(ByVal sender As Object, ByVal e As Janus.Windows.GridEX.RowActionCancelEventArgs) Handles Grid.ExpandingRow
            Dim LDT_OperParam As DataTable = Nothing
            Dim IDLog As Int32, IDOperation As Int32, IDAbonent As Int64
            If e.Row.RowType = Janus.Windows.GridEX.RowType.Record AndAlso e.Row.Table Is Grid.RootTable Then
                IDLog = Common.Func.NZ(e.Row.Cells.Item("IDLog").Value, 0)
                IDOperation = Common.Func.NZ(e.Row.Cells.Item("IDOperation").Value, 0)
                IDAbonent = Common.Func.NZ(e.Row.Cells.Item("IDAbonent").Value, 0)
                If Not e.Row.ChildrenLoaded Then
                    ' получаем параметры операции
                    LDT_OperParam = Common.ContentAdminData.ContentLogOperationList(1, IDAbonent, IDOperation, IDLog)
                    If LDT_OperParam Is Nothing Then Exit Sub
                    LDT_OperParam.TableName = "LogParam"
                    ' добавляем табличку в датасет и строим связь
                    If DS_Search.Tables.Count = 1 Then
                        DS_Search.Tables.Add(LDT_OperParam.Copy)
                        Dim pc As DataColumn() = New DataColumn() {DS_Search.Tables("LogList").Columns("IDLog")}
                        Dim chc As DataColumn() = New DataColumn() {DS_Search.Tables("LogParam").Columns("IDLog")}
                        DS_Search.Relations.Add("Log_Param", pc, chc)
                        Grid.DataSource = DS_Search
                        Grid.DataMember = "LogList"
                        Grid.RootTable.ChildTables(0).DataMember = "Log_Param"
                    Else
                        DS_Search.Tables("LogParam").Merge(LDT_OperParam)
                    End If
                End If
            End If
        End Sub
Т.е. в гриде построена иерархия из 2-х таблиц, по мере раскрытия родительской записи получаем дочерние, если они ещё не были получены.
29 июн 06, 09:58    [2824044]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Программист-Любитель
Member

Откуда:
Сообщений: 16839
Спасибо за пример.

Я еще удумал сделать раскрывающееся дерево на стандартном гриде (привык делать на обычных гридах аксеса тако же). Работает :( существенно (в разы)медленнее чем в акссессе на тех же данных.

Где бы взять контрол, который имел бы структуру как треевью + справа таблицу для чисел/сумм на нужное число столбцов ? На каждом уровне либо значение последнего узла, либо сумма расположенных ниже узлов ?
29 июн 06, 10:08    [2824096]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Hummer
Member

Откуда:
Сообщений: 2583
В DevExpress есть такой контрол, в 3-й версии Janus тоже есть - там называется TreeListView. Есть и опенсурс контролы.
Можно сделать пользовательский контрол, но я обычно обходился деревом и детализацией спправа (аналог проводника).
Стандартный грид я бы вообще не использовал.
29 июн 06, 10:15    [2824150]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
ЛП
Guest
Hummer
Выкладывать класс не буду, по причине того, что класс без описательной части на сиквеле и хранения там команд и прочих атрибутов доступа к данным безполезен, тут надо просто рассматривать всю трехзвенную архитектуру приложения.
Скажу просто - это автоматизация описания команд датаадаптера. Сейчас способны работать с сиквелом и с ораклом, используются родные клиенты двух субд. ODBC не использовали, поскольку возможности родных клиентов шире (в частности, возврат кодов ошибок и т.п.).

Хаммер, что ж ты людей пугаешь?
Люди интересуются обычным мастер-детейлом, а ты им подсовываешь советы по вырубанию из дерева настраиваемой тридцатипятизвенки :)
29 июн 06, 14:17    [2825830]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Hummer
Member

Откуда:
Сообщений: 2583
2 ЛП
Я не понторез:)

Ну я не совсем пугаю:) Это ж относилось просто к классу доступа к данным - я ж не виноват, что он таким у нас получился:)

Ну а про мастре-детайл тут прозрачно, не всегда нужно всё в датасет выгребать, тогда и работать шустро будет:)
29 июн 06, 14:28    [2825925]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Александра-Александра
Member

Откуда:
Сообщений: 1742
Немного разнервничалась - сделала на скорую руку блюдо "мексиканских рабов"... стало легче
29 июн 06, 17:46    [2827459]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Владимир Саныч
Member

Откуда: Израиль (причем это 1 человек, а не 2 => прошу на ты)
Сообщений: 40414
Александра-Александра
Немного разнервничалась - сделала на скорую руку блюдо "мексиканских рабов"... стало легче

Блюда, приготовленные в нервном состоянии, вредны для организма.
29 июн 06, 18:02    [2827535]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
bubucha
Member

Откуда:
Сообщений: 5636
http://ziza.ru/2006/05/26/pyatnichnaya-podborka-boyanov.html
29 июн 06, 18:09    [2827568]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Александра-Александра
Member

Откуда:
Сообщений: 1742
Владимир Саныч
Александра-Александра
Немного разнервничалась - сделала на скорую руку блюдо "мексиканских рабов"... стало легче

Блюда, приготовленные в нервном состоянии, вредны для организма.

Да, это верно... но как тут не разнервничаешся, если весь форум не в состоянии помочь решить простую задачу и ещё некоторые грубят при этом...
29 июн 06, 18:32    [2827669]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Владимир Саныч
Member

Откуда: Израиль (причем это 1 человек, а не 2 => прошу на ты)
Сообщений: 40414
29 июн 06, 19:06    [2827802]     Ответить | Цитировать Сообщить модератору
 Re: Лестница (новенькая, чистенькая, заходите) [основана 21 июл 05]  [new]
Александра-Александра
Member

Откуда:
Сообщений: 1742
Десерт – Клубника со взбитыми сливками - сделал своё дело... Настроение хорошее!
29 июн 06, 19:21    [2827851]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 133 134 135 136 137 [138] 139 140 141 142 .. 195   вперед  Ctrl
Все форумы / Microsoft Access Ответить