powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / копирование данных колонок
12 сообщений из 12, страница 1 из 1
копирование данных колонок
    #32573851
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет All,

У сеня есть DataWindow dw_1 который имеет 25 записей
и 4 однотипных столбца

следующее выражение верно:
dw_1.Object.col_1[1, 25] =dw_1.Object.col_0[1, 25]
dw_1.Object.col_2[1, 25] =dw_1.Object.col_0[1, 25]
dw_1.Object.col_3[1, 25] =dw_1.Object.col_0[1, 25]

вопрос:

можно ли по другому написать чтобы не юзать наремую Object ?
...
Рейтинг: 0 / 0
копирование данных колонок
    #32573869
Фотография ЗоринАндрей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
For i =  1  to dw.RowCount()
 dw.SetItem(i,'col_1',dw.GetItemXXX(i,'col_0'))
next
по крайней мере Object не юзается ;-)
З.Ы. что такое "наремую"?
Я было подумал что "переменную", но Object это как бы не переменная вовсе.
...
Рейтинг: 0 / 0
копирование данных колонок
    #32574114
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"напрямую"
>З.Ы. что такое "наремую"?


это не напрямую !!!
>For i = 1 to dw.RowCount()
> dw.SetItem(i,'col_1',dw.GetItemXXX(i,'col_0'))
>next

а вот напрямую, все 25 строк сразу
dw_1.Object.col_1[1, 25] =dw_1.Object.col_0[1, 25]

просто я хотел бы обобщить,
чтобы небыло привязки к col_0 и col_1
...
Рейтинг: 0 / 0
копирование данных колонок
    #32574181
Фотография PL99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вероятно, Вас интересует недокументированная функция get_attribute ?
Вообще-то, телепатов здесь нет :-\

2 ASCRUS
Кстати, неплохой кандидат для FAQ, может стоит добавить?
...
Рейтинг: 0 / 0
копирование данных колонок
    #32574218
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавил :)
...
Рейтинг: 0 / 0
копирование данных колонок
    #32574223
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я пробовал и не проходит:

>dw_1.Object.col_1[1, 25] =dw_1.Object.col_0[1, 25]

dw_1.Object.object.get_attribute("col_1",TRUE)[1, 25] = &
dw_1.Object.get_attribute("col_0",TRUE)[1, 25]
...
Рейтинг: 0 / 0
копирование данных колонок
    #32574309
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zuzuпросто я хотел бы обобщить, чтобы небыло привязки к col_0 и col_1
Да без проблем, обобщаю, не без помощи документации:
Syntax for data in a block of rows and columnsdwcontrol.Object.Data {.buffer } {.datasource } [ startrownum,startcolnum, endrownum, endcolnum ]

Код: plaintext
1.
//для пересылки из  1 -й колонки в  2 -ю
dw_1.Data.[ 1 ,  2 ,  25 ,  2 ] =dw_1.Object.Data[ 1 ,  1 ,  25 ,  1 ]

//А вот так попробуйте, будет работать или нет?
//Для пересылки из 1-й колонки в колонки со 2-й по 4-ю
dw_1.Data.[1, 2, 25, 4] =dw_1.Object.Data[1, 1, 25, 1]
...
Рейтинг: 0 / 0
копирование данных колонок
    #32574349
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо, заработало.

PS(на клаве нет русских букв)
...
Рейтинг: 0 / 0
копирование данных колонок
    #32575032
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Solution
dw_1.Data.[1, 2, 25, 2] =dw_1.Object.Data[1, 1, 25, 1]
work only for column, but in case when I have computed field solution is wrong,
in this case column 1 is computed field.

Problem remain
because computed field do not have DATA.
...
Рейтинг: 0 / 0
копирование данных колонок
    #32575363
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А про Computed Field's у Вас речи и не шло.
Попробуйте более внятно изложить проблему.
...
Рейтинг: 0 / 0
копирование данных колонок
    #32576281
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
This work and for computed fields !!!
>следующее выражение верно:
>dw_1.Object.col_1[1, 25] =dw_1.Object.col_0[1, 25]
>dw_1.Object.col_2[1, 25] =dw_1.Object.col_0[1, 25]
>dw_1.Object.col_3[1, 25] =dw_1.Object.col_0[1, 25]

This was response for my question
//для пересылки из 1-й колонки в 2-ю
dw_1.Data.[1, 2, 25, 2] =dw_1.Object.Data[1, 1, 25, 1]

but this work only for data column ...:(
...
Рейтинг: 0 / 0
копирование данных колонок
    #32576345
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zuzu , а что вас удивляет. Ваш вопрос был про "данных колонок".
Computed fields в bufferах не живут, поэтому ни коим образом через dot notation никуда не поедут.
Если они у вас нормальные (то бишь не включают в свои выражения retrieval arguments), то их просто нужно пересчитать в том datawindow, куда вы копировали с помощью GroupCalc() function, в противном случае вы, как у нас говорят - SOL (Shit Out of Luck)...
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / копирование данных колонок
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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