powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / подключение ДВ
39 сообщений из 39, показаны все 2 страниц
подключение ДВ
    #32814051
Необходимо реализовать следующее:

есть <filename.srd> - исходник датавиндова.

можно ли во время выполнения программы, подключить его?
...
Рейтинг: 0 / 0
подключение ДВ
    #32814187
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читаем про
Код: plaintext
dw_1.Create(ls_syntax)
...
Рейтинг: 0 / 0
подключение ДВ
    #32815227
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркЧитаем про
Код: plaintext
dw_1.Create(ls_syntax)


А не проще ли про LibraryImport PowerScript function почитать?
...
Рейтинг: 0 / 0
подключение ДВ
    #32815275
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФилиппА не проще ли про LibraryImport PowerScript function почитать?
Прочитать то может быть и проще, только зачем? Иметь динамически изменяющийся код программы, различный у разных пользователей, когда файлы - вот они лежат.
...
Рейтинг: 0 / 0
подключение ДВ
    #32815336
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин Марк ФилиппА не проще ли про LibraryImport PowerScript function почитать?
Прочитать то может быть и проще, только зачем? Иметь динамически изменяющийся код программы, различный у разных пользователей, когда файлы - вот они лежат.

Бред какой-то.
Если использовать LibraryImport - это грубо говоря 2 строчки кода (считая dataobject assignment).
Если вашим методом делать, то это
1) Чтение файла
2) Парсание его, поскольку .srd напрямую в dw_1.Create(ls_syntax) не пойдёт (то есть пойдёт, но "датавиндова" сблюёт :-) )
3) А уж потом dw_1.Create(ls_syntax)
...
Рейтинг: 0 / 0
подключение ДВ
    #32815783
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФилиппБред какой-то.
Да похоже.
ФилиппЕсли использовать LibraryImport - это грубо говоря 2 строчки кода (считая dataobject assignment).
Да?
ФилиппЕсли вашим методом делать, то это
1) Чтение файла
А для LibraryImport файл уже читать не нужно?
Филипп2) Парсание его, поскольку .srd напрямую в dw_1.Create(ls_syntax) не пойдёт (то есть пойдёт, но "датавиндова" сблюёт :-) )
Парсить - это здесь только одно название. Выкинуть первую строчку.
Код: plaintext
dw_1.Create(mid(ls_syntax,pos(ls_syntax,char( 10 )) +  1 ))
Распарсил? Заодно и DataWindow создал.
А по поводу сблюет - только лишнее свидетельство недальновидности (мягко выражаясь) авторов PB.
Филипп3) А уж потом dw_1.Create(ls_syntax)
И что мы имеет? В результате в вашем случае мы имеем лишнее действие - затягивание файла в библиотеку. В моем парсение синтаксиса (первую строчку, кстати, можно просто пропустить при чтении файла). Далее, когда набор DataWindow лежит в виде файлов, то от легко управляется любым броузером файлов и не привязан к программе. Затягивая это все хозяйство в библиотеку, мы имеем проблемы при обновлении версий (эту библиотеку ни в коем случае не накрывать другими версиями), переносе DataWindow из одного места установки программы в другой (объединение набора DataWindow из разных мест). Плюс ко всему, имеем неприятные особенности, связанные с PowerBuilder'ом. К примеру - необходимо контроливорать размер библиотеки (по крайней мере в PB6 при больших размерах библиотеки с вероятностью ~50% билдер при сохранении разрушал библиотеку - убеждался на личном опыте). Несколько раз в PB 9 при сохранении DataWindow после этого приходилось править руками синтаксис, т.к. криво сохранял. Один раз наблюдал сохраненное окно... но скрипты куда-то пропали.
Так что мы уж лучше доверим это дело файловой системе, благо она более надежна.
...
Рейтинг: 0 / 0
подключение ДВ
    #32815944
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин МаркПарсить - это здесь только одно название. Выкинуть первую строчку.
Код: plaintext
dw_1.Create(mid(ls_syntax,pos(ls_syntax,char( 10 )) +  1 ))

Распарсил? Заодно и DataWindow создал.
А по поводу сблюет - только лишнее свидетельство недальновидности (мягко выражаясь) авторов PB.Эта строка кода (мягко выражаясь недальновидно ) не учитывает наличие комментария к объекту.
...
Рейтинг: 0 / 0
подключение ДВ
    #32815992
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЗоринАндрейЭта строка кода (мягко выражаясь недальновидно ) не учитывает наличие комментария к объекту.
:( Согласен. Лучше искать char(10) + "release"
...
Рейтинг: 0 / 0
подключение ДВ
    #32817351
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Распарсил, заодно создал, а если ещё раз этот же dataobject в этом же runе программы нужно использовать?
Опять "распарсил, заодно создал"? Вместо того чтобы его on demand сунуть в пиббл и уже иметь там и просто назначать. Говорю же - бред :-)

2) Прочитать файл по вашему - это многоступенчатый Powerscriptовый процесс (о чём я уже говорил), вместо одного системного вызова...

3) Не нравится иметь эти dataobjectы постоянно - существует LibraryDelete PowerScript function - Deletes a library file or, if you specify a DataWindow object , deletes the DataWindow object from the library. Зови её в application object's close event...
...
Рейтинг: 0 / 0
подключение ДВ
    #32817596
iLLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оба приведенных варианта годятся, только все зависит от задачи. Если нужно одноразово закачать ДВ в приложение, то можно и в библиотеку. А вот если это технология работы программы и все или группа ее датавиндовов вынесена в файлы, то по другому может и не получится. Ведь в откомпилированную библиотеку ничего не заимпортируешь, да и не к чему это, держать на клиентах исходники.
А если этот датавиндов часто используется, то его можно при загрузке ПО закачать и держать в памяти. Более того, можно развить эту мысль, и держать исходный текст не в srd файлах, а в бд, например...
...
Рейтинг: 0 / 0
подключение ДВ
    #32817892
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФилиппОпять "распарсил, заодно создал"? Вместо того чтобы его on demand сунуть в пиббл и уже иметь там и просто назначать. Говорю же - бред :-)
Да, да, да.
Филипп2) Прочитать файл по вашему - это многоступенчатый Powerscriptовый процесс (о чём я уже говорил), вместо одного системного вызова...
О каком системном вызове идет речь, я никак не пойму.
Филипп3) Не нравится иметь эти dataobjectы постоянно - существует LibraryDelete PowerScript function - Deletes a library file or, if you specify a DataWindow object, deletes the DataWindow object from the library. Зови её в application object's close event...
Вот, я и говорю, по хорошему свой аналог library painter'а писать надо. А что будет если программа завершится аварийно? В pbl останется мусор? А если в это время компьютер зависнет? Останемся с кривой pbl? Нужно придумывать схему для задания уникальных названий DataWindow - а вдруг datawindow с таким именем уже есть, что тогда будет? Не нравится каждый раз считывать? Кэшируйте в памяти, сохраняя синтаксис DataWindow. Ваш метод с LibraryImport несет в себе лишь одни проблемы, перечисление которых можно продолжать. Единственная проблема, моего метода - это недокументированность формата *.srd
...
Рейтинг: 0 / 0
подключение ДВ
    #32819423
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВот, я и говорю, по хорошему свой аналог library painter'а писать надо. А что будет если программа завершится аварийно? В pbl останется мусор? А если в это время компьютер зависнет? Останемся с кривой pbl?
Кто мешает её чистить на старте программы?
И вообще, если бы во рту росли грибы...
...
Рейтинг: 0 / 0
подключение ДВ
    #32819729
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин Марк
Единственная проблема, моего метода - это недокументированность формата *.srd
Это как раз не проблема:)

А вот есть еще проблема: без LibraryImport не получится использовать это DW как вложенное в композитных отчетах.

С другой стороны у LibraryImport есть проблемы при работе нескольких экземпляров приложения, поскольку первый, кто импортирует, тот блокирует файл библиотеки, и остальные не смогут туда что-либо импортировать. Т.е. каждый экземпляр должен импортировать в свою личную библиотеку.
...
Рейтинг: 0 / 0
подключение ДВ
    #32821603
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
А вот есть еще проблема: без LibraryImport не получится использовать это DW как вложенное в композитных отчетах.
В отношении композитных отчетов эта проблема как раз разрешима и без LibraryImport :-)

Вот с nested - уже нет.
...
Рейтинг: 0 / 0
подключение ДВ
    #32821817
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Филипп Anatoly Moskovsky
А вот есть еще проблема: без LibraryImport не получится использовать это DW как вложенное в композитных отчетах.
В отношении композитных отчетов эта проблема как раз разрешима и без LibraryImport :-)

Вот с nested - уже нет.
И как можно сделать композит без LibraryImport?
...
Рейтинг: 0 / 0
подключение ДВ
    #32822043
iLLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlИ как можно сделать композит без LibraryImport?
Так же как и обычное ДВ. Только все нестеды должны быть уже в приложении, а вот создать нестед в композите не получится.
...
Рейтинг: 0 / 0
подключение ДВ
    #32822066
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iLLer White OwlИ как можно сделать композит без LibraryImport?
Так же как и обычное ДВ. Только все нестеды должны быть уже в приложении, а вот создать нестед в композите не получится.
Глупости.

Делается это так:

1) В нормальном скомпиллированном PBD должен иметься dataobject-болванка, с какой нибудь одной колонкой, external, неважно...

Преположим нужно сделать композит с N report objects, у которых dataobjectы не существуют в пибблах...

2) Берём готовое (или через dw_1.Create(ls_syntax)) создаем datawindow, затем в нём опять же с помощью Create создаем N report objects (именуя их уникально), причём dataobjectами им всем назначаем наш "dataobject-болванка".

3) В цикле делаем GetChild на все уникально именованные N report objects и с помошью datawindowchild.Create(syntax) засандаливаем в них синтакс, сидящий в памяти (или в .srd файлах)
...
Рейтинг: 0 / 0
подключение ДВ
    #32822068
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Филипп Anatoly Moskovsky
А вот есть еще проблема: без LibraryImport не получится использовать это DW как вложенное в композитных отчетах.
В отношении композитных отчетов эта проблема как раз разрешима и без LibraryImport :-)

Вот с nested - уже нет.
я именно это и сказал, только вместо nested употребил соответствующее слово на другом языке :)
...
Рейтинг: 0 / 0
подключение ДВ
    #32822098
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забавно, надо будет попробовать. А почему тот же самый метод не сработает для master-nested? Или datawindowchild.Create(syntax) откажется работать?
...
Рейтинг: 0 / 0
подключение ДВ
    #32822105
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlЗабавно, надо будет попробовать. А почему тот же самый метод не сработает для master-nested? Или datawindowchild.Create(syntax) откажется работать?

Для настоящих nested GetChild не будет работать...
...
Рейтинг: 0 / 0
подключение ДВ
    #32824086
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Филипп!!! Ты не знаешь как взять DataWindowChild не из композитного DW???
Я поражен! :)
...
Рейтинг: 0 / 0
подключение ДВ
    #32824121
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlФилипп!!! Ты не знаешь как взять DataWindowChild не из композитного DW???
Я поражен! :)
Вложенные DW могут быть не только в композитных DW. Вот там вот и нельзя получить для них DataWindowChild - фича которую обещают разрулить в PB11 (если у меня не срабатывает ложная память:)
...
Рейтинг: 0 / 0
подключение ДВ
    #32824189
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyВложенные DW могут быть не только в композитных DW. Вот там вот и нельзя получить для них DataWindowChild - фича которую обещают разрулить в PB11 (если у меня не срабатывает ложная память:)
Ну на мой взгляд, это не фича, а полноценный баг. И его давно пора чинить...
Но, вообще-то, существует трюк позволяющий обойти эту проблему :)
...
Рейтинг: 0 / 0
подключение ДВ
    #32824352
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl Anatoly MoskovskyВложенные DW могут быть не только в композитных DW. Вот там вот и нельзя получить для них DataWindowChild - фича которую обещают разрулить в PB11 (если у меня не срабатывает ложная память:)
Ну на мой взгляд, это не фича, а полноценный баг. И его давно пора чинить...
Но, вообще-то, существует трюк позволяющий обойти эту проблему :)

Ну что ж, тогда вот для примера, хочется узнать как это сделать для такого случая:
Есть tabular с источником данных "select id, name from customer". В его detail вставлено поле "name" и nested dw_orders, который в гриде показывает для каждого заказчика его заказы "select order_no, order_sum from orders where cust_id = :ai_customer". Аргумент ai_customer привязывается к полю id из tabular.
Таким образом получается отчет вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Microsoft
--------------
 01    |   1000 . 00 
 02    |   3000 . 00 
--------------
Borland
--------------
 01    |    200 . 00 
 02    |    300 . 00 
--------------
Задача:
Получить DatawindowChild для dw_orders.
Контрольный вопрос:
Допустим, что dwchild получен. Сколько в нем будет записей?
...
Рейтинг: 0 / 0
подключение ДВ
    #32824379
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky
Задача:
Получить DatawindowChild для dw_orders.
если главное dw зовут tabular, то:
Код: plaintext
1.
tabular.Object.DataWindow.Processing =  5 
tabular.GetChild('dw_orders', dwc);
5 - это код композитного dw. Тогда PB думает что tabular это на самом деле dw композитного типа и GetChild() работает без малейших проблем.
Что самое забавное, присвоение пятерки никак не влияет ни на что другое. Во всяком случае я пока с проблемами не сталкивался.

Anatoly MoskovskyКонтрольный вопрос:
Допустим, что dwchild получен. Сколько в нем будет записей?
А кто ж его знает?! :)
Смотря в какой момент это проверять. Если повесить процедурку на tabular.RetrieveRow, то возможно получишь доступ до всех строк nested dw по порядку.
Просто я сам ни разу не пытался получить доступ к данным в nested dw (не было нужды :) ), потому не могу сказать что там будет, но вытащить описание объектов из вложенного dw можно.
...
Рейтинг: 0 / 0
подключение ДВ
    #32824398
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl Anatoly MoskovskyВложенные DW могут быть не только в композитных DW. Вот там вот и нельзя получить для них DataWindowChild - фича которую обещают разрулить в PB11 (если у меня не срабатывает ложная память:)
Ну на мой взгляд, это не фича, а полноценный баг. И его давно пора чинить...
Но, вообще-то, существует трюк позволяющий обойти эту проблему :)

Хороший баг.
Так какого же из N (равному dwmain.RowCount()) children по-вашему рецепту "исправленный" GetChild вызов будет возвращать?
...
Рейтинг: 0 / 0
подключение ДВ
    #32824566
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl
Anatoly MoskovskyКонтрольный вопрос:
Допустим, что dwchild получен. Сколько в нем будет записей?
А кто ж его знает?! :)


Вот именно поэтому разработчики PB специально отключили работу GetChild в таких nested DW (а не по ошибке) - из-за неопределенности, что должна возвращать такая ф-я: вроде бы у всех nested метаинформация одна и та же, но наборы данных разные. И непонятно при dwc.Modify() должно ли изменение отражаться на все экземпляры или только на конкретный.

Так что это - 100% не баг.
...
Рейтинг: 0 / 0
подключение ДВ
    #32825732
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyВот именно поэтому разработчики PB специально отключили работу GetChild в таких nested DW (а не по ошибке) - из-за неопределенности, что должна возвращать такая ф-я:
Глупости говорить изволите. nested dw по логике ничем не отличаются от группировки. Если делаешь dw с группировкой, сколько строк в группе? А? Нет, ты не спрашивай меня в какой именно группе, ты мне скажи сколько строк в группе? Точно так же и с nested dw!

Лично мне несколько раз надо было получать nested dw и вытягивать из них описания объектов. С данной задачей указаный мной трюк справляется на ура. Почему для этого пришлось трюкачить я не понимаю и считаю это в лучшем случае багом.

Anatoly Moskovskyвроде бы у всех nested метаинформация одна и та же, но наборы данных разные. И непонятно при dwc.Modify() должно ли изменение отражаться на все экземпляры или только на конкретный.
Конечно на все. Разве могут быть сомнения? Еще раз повторяю - nested dw это другой способ группировки данных. Расширить колонку - должно действовать на все экземпляры вложенных dw, добавить строку - на тот который у нас сейчас в работе. Просто как дважды-два!

Anatoly MoskovskyТак что это - 100% не баг.
Ага, только на 99.(9)% :)
...
Рейтинг: 0 / 0
подключение ДВ
    #32825750
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl Anatoly MoskovskyВот именно поэтому разработчики PB специально отключили работу GetChild в таких nested DW (а не по ошибке) - из-за неопределенности, что должна возвращать такая ф-я:
Глупости говорить изволите. nested dw по логике ничем не отличаются от группировки. Если делаешь dw с группировкой, сколько строк в группе? А? Нет, ты не спрашивай меня в какой именно группе, ты мне скажи сколько строк в группе? Точно так же и с nested dw!

Лично мне несколько раз надо было получать nested dw и вытягивать из них описания объектов. С данной задачей указаный мной трюк справляется на ура. Почему для этого пришлось трюкачить я не понимаю и считаю это в лучшем случае багом.

Anatoly Moskovskyвроде бы у всех nested метаинформация одна и та же, но наборы данных разные. И непонятно при dwc.Modify() должно ли изменение отражаться на все экземпляры или только на конкретный.
Конечно на все. Разве могут быть сомнения? Еще раз повторяю - nested dw это другой способ группировки данных. Расширить колонку - должно действовать на все экземпляры вложенных dw, добавить строку - на тот который у нас сейчас в работе. Просто как дважды-два!

Anatoly MoskovskyТак что это - 100% не баг.
Ага, только на 99.(9)% :)

Повторю ещё раз:
Так какого же из N (равному dwmain.RowCount() ) children по-вашему рецепту "исправленный" GetChild вызов будет возвращать?

Разница между обычным datawindow с dddw колонкой или там composite с report objectом и НАСТОЯЩИМ nested datawindow в том, что у composite на один report object один datawindowchild, у обычного datawindow с dddw колонкой на одну dddw колонку один datawindowchild (вне зависимости от количества рядов), а вот у НАСТОЯЩЕГО nested datawindow сколько рядов , столько и instances nested datawindows (children)

Утверждение, что nested dw это другой способ группировки данных верно с точки зрения конечного результата (чаще ввего для тех кто ленится правильный SQL написать :-), но не с точки зрения имплементации datawindow engina...
...
Рейтинг: 0 / 0
подключение ДВ
    #32825766
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Филипп
Повторю ещё раз:
Так какого же из N (равному dwmain.RowCount() ) children по-вашему рецепту "исправленный" GetChild вызов будет возвращать?
До вызова dwmain.Retrieve() оно должно вернуть (и возвращает) абстрактное описание вложенного dw.
В обработчике события dwmain.RetriveRow оно должно возвращать вложенное dw соответсвующее обрабатываемой строке из dwmain
По окончании dwmain.Retrieve() оно должно возвращать вложенное dw соответствуещее последней строке dwmain.

Так же вполне нормальным был-бы вариант добавить в GetChild еще один опциональный параметр - номер строки в dwmain. Тогда может получится что при пропуске этого параметра, после окончания dwmain.Retrieve(). Мы можем получить dw для первой строки или ошибку "строка с номером ноль" или что-то подобное. Это тоже будет приемлимым вариантом.

Сейчас, при использовании трюка с выставлением Processing=5, может быть все что угодно. Трюк он трюк и есть. Но получить абстрактное описание вложенного dw все же можно, это у меня работает.

ФилиппУтверждение, что nested dw это другой способ группировки данных верно с точки зрения конечного результата (чаще ввего для тех кто ленится правильный SQL написать :-), но не с точки зрения имплементации datawindow engina...
Согласен. Но прошу сделать следующий шаг и понять что принцип и имплементация это все же разные вещи. Принцип один, имплементаций - множество.
...
Рейтинг: 0 / 0
подключение ДВ
    #32825776
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторТак же вполне нормальным был-бы вариант добавить в GetChild еще один опциональный параметр - номер строки в dwmain. Тогда может получится что при пропуске этого параметра, после окончания dwmain.Retrieve(). Мы можем получить dw для первой строки или ошибку "строка с номером ноль" или что-то подобное.
Из всей вами написанной повести только это и имеет смысл.
Идите на ISUG и заказывайте enhancement - может для PB11 ещё не поздно...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
подключение ДВ
    #33669297
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у меня вопрос появился. Кто видел DataWindowChild.Create(...) ? :)
...
Рейтинг: 0 / 0
подключение ДВ
    #33669795
18-я весна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дежавю какое-то :)

Уже ж вроде определились, что для DWC надо использовать Modify, а не Create.
Динамическая загрузка Nested reports
...
Рейтинг: 0 / 0
подключение ДВ
    #33670264
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
18-я весна Дежавю какое-то :)
Упс... забыл совсем :) Стал скачивать и на диске у себя этот dwparser.zip обнаружил :)
Не, ну и после этого мне будут говорить, что PB - это круто. :)
Придется все же их в библиотеки загружать... но по всей видимости не на лету, а заранее, типа в монопольном режиме.
...
Рейтинг: 0 / 0
подключение ДВ
    #33670401
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин Марк 18-я весна Дежавю какое-то :)
Упс... забыл совсем :) Стал скачивать и на диске у себя этот dwparser.zip обнаружил :)
Не, ну и после этого мне будут говорить, что PB - это круто. :)
Придется все же их в библиотеки загружать... но по всей видимости не на лету, а заранее, типа в монопольном режиме.

Не, можно по другому:
При старте приложение
- генерирует уникальную строку
- создает пустую PBD со сгенерированным именем
- подключает PBD в список библиотек

Если этот временный файл распологать локально, то в качестве уникальной строки можно использовать ID или порядковый номер запущенного экземпляра программы.

Для запуска из IDE (где не поддерживается смена списка библиотек) надо предусмотреть отдельную библиотеку в списке.
...
Рейтинг: 0 / 0
подключение ДВ
    #33670511
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyНе, можно по другому:
А зачем?
А по поводу локального уникального имени файла есть
Код: plaintext
Function Long GetTempFileName  (string lpPathName, string lpPrefixString, long uUnique, ref string lpTempFileName ) Library "kernel32" Alias For "GetTempFileNameA"
А еще можно и GUID'ом обойтись :)
...
Рейтинг: 0 / 0
подключение ДВ
    #33670659
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
М-да вопрос конечно интересный
Только вот автору не совсем понятный наверное
Все гуру форума собрались обсудить
...
Рейтинг: 0 / 0
подключение ДВ
    #33670691
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spas2001М-да вопрос конечно интересный
Только вот автору не совсем понятный наверное
А автор уже как бы не причем. Ему я думаю уже не надо, все-таки больше года прошло :)
...
Рейтинг: 0 / 0
подключение ДВ
    #33670837
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное
...
Рейтинг: 0 / 0
39 сообщений из 39, показаны все 2 страниц
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / подключение ДВ
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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