2016-10-11 5 views
0

ну, я сделал объект для datawindow, в котором я сделал имя столбца как возраст возраста возраста и т. Д. Эта таблица не существует в базе данных и во время проектирования объекта datawindow у меня есть выбранный внешний стиль как объект dw. поэтому нет, что на самом деле я хочу сделать, это вставить данные, используя скрипт в этой колонке. для вставки строки i просто используется Datawindowcontrol.insertrow (строка) в событии с заменой элемента datawindow. но он просто добавляет строку, в которой я хочу, чтобы данные туда вставлялись ... заранее за комментарии yor ...Как динамически вставлять данные в datawindow с помощью powerbuilder 12.5

ответ

0

Метод вставки только вставляет новую строку в элемент управления данными. Вам нужно будет заполнить его данными, если это ваше намерение. Простой пример кода заключается в следующем:

long ll_row 
ll_row = dw_save.insertrow(0) 
dw_save.setitem(ll_row, "name", dw_entry.getitemstring(1,"name")) 
dw_save.setitem(ll_row, "gender", dw_entry.getitemstring(1, "gender)) 

выше предполагает, что вы есть запись данных DataWindow только с одной линией, и второй DataWindow, который будет сохранять данные в базу данных.

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

0

хорошо это заявление отлично работает здесь ....

this.insertrow(1) 
this.setitem(1,1,23) 
this.setitem(1,2,today()) 
this.setitem(1,3,13.5) 
this.insertrow(2) 
this.setitem(2,1,25) 
this.setitem(2,2,today()) 
this.setitem(2,3,14.5) 
+1

Да, вы могут использовать номера столбцов вместо имен, но вы создаете кошмар для обслуживания. Что произойдет, если вы измените пользовательский интерфейс окна данных? или добавить столбец позже? –

1

Альтернативная реализация с использованием ".object" запись (быстрее, чем GetItem/SetItem в последних версиях PB):

long newRow 
newRow = this.RowCount() + 1 

this.object.name[newRow] = dw_entry.object.name[1] 
this.object.gender[newRow] = dw_entry.object.gender[1]