powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Нужна помощь чайнику!
9 сообщений из 9, страница 1 из 1
Нужна помощь чайнику!
    #32261837
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока 2 вопроса!

1) Имеется DW-грид, как сделать, что бы после настройки пользователья полей (длинну, переставит местами столбцы) и все это сохранялось при следующем открытии?

2) Опять же DW, стоял на (пусть 5-ой) записи, нодо сделать retrieve, но после обновления, остатся на это же записи?

опа, появился 3 вопрос!

3) Что это там у Вас за крутые библиотеки, без которых не сделаешь толковую программу, как к ним обращатся, и где узнать какие там есть функции и за что они отвечают?

Временно остановлюсь, но вопросов на самом деле киллометр!
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32261852
Фотография alienzzzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот ответы(хотя это мое мнение):
Насчет сохранения полей и .т.д :
1. Ты можешь сохранять Дв(точней uDw.Object.DataWindow.Syntax) куда -нибудь(например в базу), ну а после его накладывать.
2. Ты можешь пробегать по всем контролам и сохранять X и Y каждого, но это наверное не очень удобно.
Насчет после ретрива :
Long lRow
lRow = uDw.GetRow( )
uDw.Retrieve( )
uDw.SetRow( lRow )
Насчет третьего вопроса Я непонял какие библтотеки.
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32261926
Фотография alienzzzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Меня поправили :
Насчет гетрова забудь Вот способ лучше:
Тебе надо сохранять Поле с ID(с ключом)
String sColumnIDName
Any aColumnIDValue
Long lColumnID
Long lRow
На Событие RowFocusChanged вешаешь такую фишку
lColumnID = Long( uDw.Describe( sColumnIDName + ".ID" ) )
IF lColumnID <> 0 THEN
aColumnIDValue = String( uDw.Object.Data.Primary.Current[ lRow, lColumnID ] )
ELSE
aColumnIDValue = '-'
END IF
////// После Retrieve ///////
Long lRow
IF aColumnIDValue <> '-' THEN
lRow = uDw.Find( 'String( ' + sColumnIDName + ' ) = "' + aColumnIDValue + '"', 1, uDw.RowCount( ) )
IF lRow > 0 THEN
SetRow( lRow )
END IF
END IF
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32262046
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что первый способ не сработает!? он мне больше нравится, потму что короче и понятнее!!!

По поводу библиотек, помоему они называются pfc или что то вроде этого,

А как же всеже ответ на первый вопрос?! только сильно когда отвечаете старайтесь сильно не употреблять ваш слэнг!
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32262063
Фотография Ikar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Пробегаешься по DW, опрашиваешь все поля на предмет их порядкового номера и ширины поля, сохраняешь то что надергал. Потом, когда нужно, дергаешь сохраненную информацию и восстанавливаешь необхдимые значения. Для того чтобы получить информацию о полях DW используй Describe , чтобы изменить свойства полей используй Modify . Форматы команд (с примерами, кстати) хорошо описаны в HELP`е.

2) Если ты точно уверен, что после Retrieve запись по прежнему осталась под номером 5, то так:
Код: plaintext
1.
2.
3.
4.
long ll_row
ll_row = dw.GetRow()
dw.Retrieve()
dw.SetRow(ll_row)


А если не уверен, то примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
long ll_row
ll_row = dw.GetRow()
<тип данных уникального поля> l_key
l_key = dw.object.<имя_уникального_поля>[ll_row]
dw.Retrieve()
ll_row = dw.Find ( string (l_key),  1 , dw.RowCount() ) 
dw.SetRow(ll_row)
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32262095
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, со 2-м вопросом разобрались!

Можно 1-й немного поконкретнее (хотябы как и куда сохранять параметры полей и столбцов!?)

И как на 3-го
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32262184
Mykola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
3. библиотека pfc
pfcapp.pbl
pfcapsrv.pbl
pfcdwsrv.pbl
pfcmain.pbl
pfcutil.pbl
pfcwnsrv.pbl

расширение pfc

pfeapsrv.pbl
pfedwsrv.pbl
pfemain.pbl
pfeutil.pbl
pfewnsrv.pbl

1.
a) после того как пользователь настроил под себя dw , необходимо сохранить
єти настройки (1. в ini файле, таблицах бази или еще где то) чтоб при последующих обращениях их считивать.
б) возможно стоит воспользоваться динамическим построением dw исходя из определения пользователя. Воспользовавшись SyntaxFromSQL() or Create()
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32262263
Moiseeff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Один из возможных ответов на вопрос №1
Personalized Grid DataWindows, by Dave Alessi
...
Рейтинг: 0 / 0
Нужна помощь чайнику!
    #32262308
DIGITALPRO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ТЕМА ЗАКРЫТА!

ВСЕМ БОЛЬШОЕ СПАСИБО!
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Нужна помощь чайнику!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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