|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
SharkЕсли в браузере нажмете вид-исходный код страницы, увидите пример htm файла Если запишете его бейсиком на диск, то будет пример формирования )) Понял:)) Вот я и хотел пример того, как бэйсиком это всё делается:) Самому лень:)) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 09:10 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
ПЕНСИОНЕРКА, СПАСИБО:) Классный!!! Пример:) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 09:12 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
ПЕНСИОНЕРКА, Правильно ли я понимаю, что вывод в HTM и последующее его открытие в Excel позволяет достичь намного более высокой скорости вывода в Excel? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 09:32 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
NeboПЕНСИОНЕРКА, Правильно ли я понимаю, что вывод в HTM и последующее его открытие в Excel позволяет достичь намного более высокой скорости вывода в Excel? естественно, только ругнется при открытии если доработать теги по правилам ексель, то и ругани не будет ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 10:23 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
Nebo, и надо будет выводить особенно если не используется синтаксис тегов, учитывающий формат ексель -длинные коды 00000000001254 как '00000000001254 . чтобы не терять нули -иногда это надо для текстовых типа 1.02, чтобы не переводило в даты у меня основное было - печать в ворд с автоподбором высоты и ширины клеток - убирание хвостика (1-3 строки в предыдущий лист при печати) - просмотр слабовидящими в броузере и ворде в крупном виде, но печать в ворде в нормальном ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 10:32 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
AndDestrЕсли не сложно ссылку на "трюк" и на "штатный способ" :) буду очень благодарен Штатный способ В приложении пример mdb 2003. Не забудьте при открытии app.mdb переподключить ссылку на lib.mdb. Ссылку на трюк поппробую посмотреть на работе. Дома не оказалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 10:41 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
П-ЛAndDestrЕсли не сложно ссылку на "трюк" и на "штатный способ" :) буду очень благодарен Штатный способ В приложении пример mdb 2003. Не забудьте при открытии app.mdb переподключить ссылку на lib.mdb. Спасибо большое. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 17:23 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
NeboБудет желание напишите сюда побольше про CodeDB. Как Вы с ним работаете. Ну какой-нибудь примерчик:) Простейший вариант: запускной файл app.mdb (2000) не забудьте в переподключить библиотеку lib.mdb ... |
|||
:
Нравится:
Не нравится:
|
|||
21.11.2010, 17:26 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
AndDestr, Спасибо:) Скачал, посмотрел. Сразу увидел, что Lib видит свои таблицы. И что форма может открываться не в диалоговом режиме. А что Вы делаете для того, чтобы Lib видел, например, те-же присоединённые таблицы, что и основной модуль?? Другими словами как Вы программно переподключаете присоединённые таблицы одновременно сразу во всех модулях и в основном модуле?? Ведь они же все должны быть синхронно подключены в случае если изменился путь к базе? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 02:39 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
Как и обещал, ссылка нашлась: рецепт для использования New с классом из библиотеки от Сергея Гаврилова. Ссылка ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 08:30 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
Более свежий "рецепт" для (New) классов в библиотечном файле: Serge Gavrilov 05.09.2009 в 23:03Я сейчас делаю проще, в окне отладки выполняю vbe.VBProjects("ProjectName").VBComponents("ClassName").Properties("Instancing")=5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 15:45 |
|
Использование своих библиотек или как правильно построить масштабируемое приложение
|
|||
---|---|---|---|
#18+
NeboAndDestr, Другими словами как Вы программно переподключаете присоединённые таблицы одновременно сразу во всех модулях и в основном модуле?? Ведь они же все должны быть синхронно подключены в случае если изменился путь к базе? Сложного ничего нет. я уложился в 4-ре нормализованные таблицы (можно обойтись одной не нормализованной и около 100 строчек кода :) основой переподключения таблиц служит две функции: 1-я отключение всех прилинкованных таблиц, перечень которых задается рекордсетом, в указанной базе Private Function DisconectTablesForModule(ByRef ARst As DAO.Recordset, ByRef ADb As DAO.Database) As Boolean Dim tdf As TableDef On Error GoTo ERR_DisconectTablesForModule DisconectTablesForModule = False ARst.MoveFirst Do While Not ARst.EOF For Each tdf In ADb.TableDefs If tdf.Name = ARst.Fields("TableName") Then ADb.TableDefs.Delete tdf.Name Exit For End If Next ARst.MoveNext Loop ARst.MoveFirst DisconectTablesForModule = True Exit Function ERR_DisconectTablesForModule: ' сообщение об возникшей ошибке при отключении таблицы End Function 2-я собственно само подключение таблиц: кусок кода из функции: strSQL1 = "SELECT BaseFileName, TableName FROM ListFileBases " Set rst1 = CodeDb.OpenRecordset(strSQL1) If Not rst1.EOF Then Set db = DBEngine.OpenDatabase(strPathToModule) If Not DisconectTablesForModule(rst1, db) Then: GoTo END_FUNCTION strBaseFileName = "" Do While Not rst1.EOF If strBaseFileName <> rst1.Fields("BaseFileName") Then strBaseFileName = rst1.Fields("BaseFileName") If Not gFileExists(strPathToBase & "\" & strBaseFileName) Then: GoTo END_FUNCTION End If Set tdfLinking = db.CreateTableDef(rst1.Fields("TableName")) tdfLinking.Connect = ";DATABASE=" & strPathToBase & "\" & strBaseFileName tdfLinking.SourceTableName = rst1.Fields("TableName") db.TableDefs.Append tdfLinking rst1.MoveNext Loop rst1.Close db.Close Set db = Nothing end if плюс еще пару десятков сервисных строк, которые позволяют перебрать перечень библиотек и таблиц и собирают нужный рекордсет (ну это уже зависит от реализации самой структуры таблиц в которых расписывается из какой базы, какую таблицу в какую библиотеку линковать) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2010, 18:04 |
|
|
start [/forum/topic.php?fid=45&gotonew=1&tid=1629574]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
12ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
others: | 257ms |
total: | 420ms |
0 / 0 |