AcceptText PowerScript Function
◆ 기 능
DataWindow edit control의 내용을 DataWindow control buffer의 current item에 적용시킨다. edit control에 있는 data는 item에 저장되기 전에 column에 대한 validation rule을 통과해야만 한다.
◆ 적 용
DataWindow controls과 child DataWindows
◆ 문 법
DataWindowName.AcceptText ()
Parameter |
Description |
datawindowname |
에디트 컨트롤에 내장된 자료를 받아들이고자하는 데이터윈도우이름과 자식 데이터원도우 |
◆ 반환값
Long. 정상적으로 수행되면 1, 실패하면 -1을 리턴한다.
⼦ 사용법
사용자가 DataWindow에서 item에서 item으로 이동할 때 사용자가 edit한 data를 맞는지 확인하고 받아들인다.사용자가 window에서 다른 control로 즉시 바꾼 후 DataWindow item을 기록할 때 DataWindow는 그 data를 받아들이지 않는다. 그 data는 edit control에 남아있다.
DataWindow object가 사용자가 edit한 data를 포함하고 있다는 것을 확인하는 AcceptText()를 사용한다. AcceptText를 ItemChanged event에서 호출하지 말아야 한다.
⼦ 예제
이 예제는 사용자가 데이터윈도우 오브직트의 칼럼안에 사번과 같은 키값을 입력하고 ok button을 클릭할것이라는 기대를 하는 경우이다. clicked event를 위한 이 script는 기재된 내용을 확인하고 그것을 데이터윈도우 콘트롤안에 위치하기 위해 accepttext를 호출한다. 그때 이 script는 킷값의 행을 검색하기 위해 retrieve함수안에 아이템을 사용한다.
IF dw_emp.AcceptText() = 1 then
dw_emp.Retrieve(dw_emp.GetItemString(dw_emp.GetRow(),dw_emp.GetColum()))
END IF
command button의 click 사건을 위한 이 script는 dw_emp 데이터 윈도우안의 텍스트를 적용시키고 balance 열이 0보다 큰 행의 수를 센다.
Integer I, count
dw_emp.AcceptText()
FOR I = 1 to dw_emp.rowcount()
IF dw_emp.GetItemNumber(I, 'balance') > 0 THEN
count = count +1
END IF
NEXT
cliked 사건을 위한 이 script는 child datawindow안의 텍스트를 적용한다.
DataWindowChild dwc
integer rtncode
rtncode = dw_emp.GetChild("emp_id",dwc)
dwc.SetTransObject(sqlca)
dwc.Retrieve("argument")
.....
dwc.AcceptText()
AddItem PowerScript Function
■ 기능
임의의 리스트박스의 리스트 값에 새로운 항목을 추가한다.
■ 문법
listboxname.AddItem(item)
Parameter Description
---------- -----------------------------------------------------
listboxname item을 추가하고자 하는 listbox나 DropDownLisrBox 이름
item 추가하고자 하는 item의 문자값은 text이다.
⼆ 반환값
Integer. 새로운 아이템의 위치를 반환한다. 리스트가 소트되어 있다면 리턴된 위치는 리스트가 소트된 후의 아이템의 위치이다. 실패하면 -1을 반환한다.
⼆ 사용법
ListBox가 이미 아이템을 포함하고 있다면 AddItem은 리스트의 끝에 새로운 아이템을 추가한다. 만약 리스트가 소트되어 있다면 PowerBuilder는 아이템이 첨가된 후에 리스트를 다시 소트한다.
⼆ 예 제
integer rownbr
string s
s = "Edit File"
rownbr = lb_Actions.AddItem(s)
// 이 예제는 ListBox lb_Actions에 Edit File 아이템을 추가한다.
Check PowerScript Function
◆ 기 능
downdrop이나 cascade menu에서 item 다음에 체크표시를 하고 item의checked 속성이 true가 된다.
⼦ 적 용
Menu object에 있는 menuitem
⼦ 문 법
menuitem.Check ()
Parameter Discription
--------- ------------------------------------------------------
menuitem 메뉴바의 item이 아니라 downdrop이나 cascade menu이어야
한다.
◆ 사용법
메뉴 item 다음의 체크표시는 메뉴의 선택사항이 현재 작동하고 있으며 사용자가 그것을 선택함으로써 그 선택사항이 작동하는지 안하는지를 알려준다. 사용자는 선택사항을 작동하게 할때 메뉴 item을 표시하기 위해 item Checked라는 스크립트에 check를 사용할 수 있다. 또 그 선택사항을 작동시키지 않을 때는 check를 없애기 위해 uncheck를 사용할 수 있다.
◆ 상당어구
check를 호출하는 대신 MenuItem의 Checked 속성을 지정할 수 있다.
menuitem.Checked = True
◆ 예 제
m_Appl.m_View.m_Grid.Check()
// 이 용례는 m_Appl 메뉴바 상의 m_View dropdown 메뉴의 m_Grid
메뉴항목 다음을 체크한다.
Close PowerScript Function
⼦ 기 능
window 또는 OLE storage 또는 stream을 닫는다.
⼦ 적 용
(문법 1) Window objects
(문법 2) OLEStorage objects
(문법 3) OLEStream objects
⼦ 문법 1
Close(windowname)
windowname 닫고자하는 윈도우의 이름
⼦ 반환값 1
Integer. 성공하면 1을 반환하고 실패하면 -1을 반환한다.
⼦ 문법 2
olestorage.Close()
olestorage 저장하고 닫기를 원하는 OLEStorage object 변수
⼦ 반환값 2
Integer. 성공하면 0을 반환하고 실패하면 -1 또는 -9를 반환한다.
⼦ 사용법
윈도우 내의 모든 control들과 윈도우에 의해 점유되었던 기억장소를 해제하고 윈도우를 닫는다. Close 함수를 호출하면 powerbuilder는 view에서 윈도우를 제거하고 그 윈도우를 닫고, Close event와 Closequery에 대한 스크립트를 수행한다. 그리고나서 Close 함수를 부른 스크립트에서 나머지 문장을 수행한다. 윈도우가 닫혀진 후, 그 속성들과 instance variable, control들은 스크립트에서 더 이상 참조될 수 없다. 스크립트의 문장이 닫혀진 윈도우나 그 속성들, 또는 instance variable, control들을 참조한다면 실행 에러가 발생한다.
⼦ 예 제
다음은 윈도우 w_employee를 닫는 형식을 표현하고 있다.
Close( w_employee )
CloseQuery event에 대한 스크립트에서 다음 문장은 어플리케이션을 빠져나가기 전에 사용자에게 확인을 받는다.
IF MessageBox ( 'ExitApplication', 'Exit!', &
Question!, YesNo! ) = 1 Then
Close ( w_employee )
END IF
만약 Yes이면 윈도우를 닫고, No이면 아무런 action을 행하지 않는다.
CloseWithReturn PowerScript Function
⼦ 기 능
윈도우를 닫고 메시지 객체에 리턴값을 저장한다. 응답 윈도우에 대해서만 CloseWithReturn을 사용할 수 있다. 윈도우 객체에 적용된다. 주어진 윈도우를 닫을 때 윈도우를 화면에서 보이지 않게 할 뿐 아니라 원도우가 소유하고 있던 모든 리소스를 제거한다.
⼦ 적 용
window objects
⼦ 문 법
CloseWithReturn (windowname, returnvalue)
windowname에는 close하고자 하는 윈도우의 이름을 기입한다. returnvalue에는 윈도우가 close 될 때 메시지 객체에 저장하고자 하는 값을 기입한다. Returnvalue에는 string, numeric, powerobject와 같은 데이터 타입이 적용된다.
⼦ 반환값
Integer. 성공일 때에는 1을 리턴하고, 실패일 때에는 -1을 리턴한다.
⼦ 사용법
CloseWithRetun의 목적은 응답 윈도우를 닫고 그 응답 윈도우로부터의 정보를 그 윈도우를 열었던 윈도우로 리턴하는 것이다. 윈도우 내의 모든 control들과 윈도우에 의해 점유되었던 기억장소를 해제하고, 윈도우를 닫고 값을 리턴하기 위해 사용한다. Close와 같이 ClosewithReturn은 view에서 윈도우를 제거하고 그 윈도우를 닫고, Close event와 Closequery에 대한 스크립트가 있다면 그것을 수행한다. event 스크립트를 수행하기 전에 메시지 객체에 returnvalue를 저장한다. powerbuilder는 Close 함수를 호출한 스크립트의 나머지를 수행한다.
⼦ 예 제
다음은 응답 윈도우 w_employee_response를 닫고 그것을 열었던 윈도우에 문자열 emp_name을 리턴한다.
CloseWithReturn (Parent, "emp_name")
Date PowerScript Function
⼦ 기 능
DateTime형, string형 이나 숫자형의 데이터를 date형으로 변환한다. 또한 bolb형도 가능하다. 함수에 들어오는 Parameter의 자료형에 의해 세가지 Syntex중 한가지를 사용 할수 있다.
* Syntex1 : DateTime형, blob형에 의해
* Syntex2 : string형을 date형으로 형변환
* Syntex3 : 수치값에 의해
⼦ 문법 1
Date(datatime)
parameter Description
datetime DateTime 자료나 blob에 저장된 자료의 첫번째 값은
date또는 DateTime 값이다.
⼦ 반환값 1
date형이다. datetime형을 date형으로 리턴한다. datetime값이 date형에 맞지않는 자료형이면 Date함수는 1900-01-01을 리턴한다.
⼦ 문법 2
Date(string)
parameter Description
---------- ---------------------------------------------------
string string형의 값은 January 1,1998이나 12-31-99 이어야지
date 형으로 리턴 된다.
⼦ 반환값 2
date형이다. string형을 dategud으로 리턴한다. date형에 맞지않으면 Date함수는 1900-01-01을 리턴한다.
⼦ 문법 3
Date(year, month, day)
parameter Description
---------- ---------------------------
year 년 (-9999 에서 9999까지)
month 월 (1에서 12까지)
day 일 (1에서 31까지)
⼦ 반환값 3
date형이다. 년, 월, 일의 정수로 특정지어진 date형의 값이 리턴된다. 만약 각각의 값이 범위에 들지않으면, Date함수는 1900-01-01을 리턴한다.
⼦ 사용법
string안에 알맞은 날짜(1부터 31), 달수(1부터 12), 그리고 두개나 네개로 이루어진 년도수의 조합으로 이루어지게 된다. 한자리수의 날짜나 달수 앞에 '0'을 붙일 것인지는 옵션이다.
Date litral은 yyyy-mm-dd의 format을 갖고 있다.
⼦ 예 제
1. 데이터 베이스로부터 ldt_StartDateTime에 DateTime형의 값을 활당 받은 다음, ldt_StartDateTime의 date값을 date형 ld_StartDate에 셋팅한다.
DateTime ldt_StartDateTime
date ld_StartDate
ld_StartDate = Date(ldt_StartDateTime)
데이터베이스로부터 ib_blob에 blob 값을 활당받은 다음, ib_bolb의 32byte부터 date값을 date형 ld_date에 셋팅한다.
date ld_date
ld_date = Date(Blobmid(ib_blob,32))
2. 이들 문장들은 모두 July 4, 1994(1994-07-04)를 표현하는 date형을 리턴한다. 시스템은 month의 위치를 가운데에로 setting시켜준다.
Date("1994/07/04")
Date("1994 July 4")
Date("July 4, 1994")
위의 예제는 sle_start_date가 올바른 date인지 먼저 확인하고, 아닌 경우에는 message를 display한다. 첫번째 version은 Date()의 결과를 통해 date가 올바른지 알아보고, 두번째 version에서는 IsDate()를 사용하여 Date()를 사용하기 전에 확인해 본다.
version 1:
date ld_my_date
ld_my_date = Date( sle_start_date.Text )
IF ld_my_date = Date("1900-01-01") THEN
MessageBox("Error", "This date is invalid: " &
+sle_start_date.Text )
END IF
version 2:
date ld_my_date
IF IsDate( sle_start_date.Text ) THEN
ld_my_date = Date(sle_start_date.Text )
ELSE
MessageBox("Error", "This date is invalid: " &
+ sle_start_date.Text )
END IF
3.이 예제는 ld_my_date를 1994-10-15로 set하기 위해서 정수값을 사용한다.
date ld_my_date
ld_my_date = Date( 1994, 10, 15 )
Day PowerScript Function
⼦ 기 능
주어진 date형의 값에서 일자를 가져온다.
⼦ 문 법
Day( date )
parameter Description
--------- -------------------------------------
date Date형으로 부터 day를 가져온다.
⼦ 반환값
date에서 일자(1부터 31) 정수를 리턴한다.
⼦ 예 제
다음 예제는 1994-01-21에서 날짜인 31을 반환한다.
integer li_day_portion
li_day_portion = Day(1994-01-31)
다음 예제는 sle_date에서 date를 확실히 하기위해 체크하여 그럴 경우
li_day_portion에 sle_date의 날짜를 입력한다.
integer li_day_portion
IF Isdate(sle_date.Text) THEN
li_day_portion = Day(Date(sle_date.Text))
ELSE
MessageBox("Error","This date is invalid:"+sle_date.Text)
END IF
DayAfter PowerScript Function
⼦ 기 능
기존의 날짜로부터 차이 일 수를 알아낸다.
⼦ 문 법
DaysAfter( date1, date2 )
parameter Description
---------- ----------------------------------------
date1 측정될 차이 일수의 기준 날짜.
date2 차이 일수의 끝 날짜의 값
⼦ 반환값
Long형이다. date1이 있은 후, date2까지의 경과된 날짜수의 값을 long형으로 리턴한다. 만약 date2가 date1보다 이전이면, DaysAfter함수는 음수를 리턴한다.
⼦ 예 제
// 4를 리턴한다.
DaysAfter( 1996-12-20, 1996-12-24 )
// 4를 리턴한다.
DaysAfter( 1996-12-24, 1996-12-20 )
// 0을 리턴한다.
DaysAfter( 1996-12-24, 1996-12-24 )
//5를 리턴한다.
DaysAfter( 1994-12-29, 1995-1-3)
만약 date형변수 date1과 date2에 February 16,1995,와 April 28,1995,를 각각 입력하고
date date1, date2
date1 = 1996-02-16
date2 = 1996-04-28
그리고 DaysAfter함수를 사용하면 71을 리턴한다.
DaysAfter( date1, date2 )
DaysAfter( 1996-02-16, date2 )
DaysAfter( date1, 1996-04-28 )
DaysAfter( 1996-02-16, 1996-04-28 )
date 형으로 선언된 변수를 사용하나, 직접 날짜를 사용하나 같은 결과가 나온다.
DeletedCount PowerScript Function
◆ 기 능
데이터베이스에서 삭제된 행들의 갯수를 알아낸다.
◆ 문 법
datawindowname.DeletedCount()
Parameter |
Description |
datawindowname |
삭제했었던 행의 숫자 그러나 연관된 데이터베이스 테이블에는 갱신되지 않은 자식데이타원도우나 데이터윈도우 컨트롤의 이름 |
◆ 반환값
long datawindowname에서 삭제되고 연결된 database table에서는 변경되지 않은 행의 수를 반환한다. 지워진 행이 없거나 모두 database table 에서 변경되었다면 0을 반환하고 에러 발생시 -1을 반환한다.
⼦ 사용법
변경할수 있는 datawindow control은 몇 개의 buffer를 갖고 있다. primary buffer는 현재 보여지는 행을 저장한다. delete buffer는 deleterow 함수로 지워진 행을 저장한다. 이 행들은 database에서 변경될 때 까지 저장된다. DeleteConut fh delete buffer안에 있는 모든 행의 수를 알수 있다.
⼦ 예 제
만약 두행이 dw_emp에서 삭제되고 아직 연결된 database에서 변경되지 않았다면 이 예제는 ll_deld에 2가 저장된다.
long ll_del
ll_del = dw_emp.DeleteCount()
다음 예제는 delete buffer 안에 행들이 있는 지 test한다. 그리고 있다면 database table을 변경한다.
long ll_del
ll_del = dw_emp.DeleteCount()
IF ll_del <> 0 THEN dw_emp.Update()
DeleteItem PowerScript Function
⼦ 기 능
ListBox나 DropDownListBox의 제어를 위해 특정 list의 item을 삭제한다.
⼦ 적 용
ListBox와 DropDownListBox의 제어
⼦ 문 법
listboxname.DeleteItem(index)
Parameter Discription
---------- ---------------------------------------------------
listboxname 삭제하고자 하는 item을 포함하고 있는 listbox나
DropDownListBox 이름
index 삭제하고자 하는 item의 위치
⼦ 반환값
integer. item이 삭제된 후 list에 남은 item의 수를 리턴한다.
실패하면 -1을 리턴한다.
⼦ 예 제
integer li_Index
li_Index = lb_action.SelectedIndex()
lb_action.DeleteItem(li_Index)
// lb_actions에 있는 첫번째 선택된 아이템을 제거한다.
lb_purpose.DeleteItem(lb_purpose.FindItem("Personal", 1))
// ListBox lb_purpose로부터 "Personal" 아이템을 제거한다.
DeleteRow PowerScript Function
⼦ 기 능
데이터윈도우 콘트롤이나 child datawindow에서 한 행을 삭제한다.
⼦ 적 용
DataWindow controls와 child datawindows
⼦ 문 법
DataWindowName.DeleteRow(row)
Parameter Description
------------ ---------------------------------------------
datawindowname 삭제하고자하는 row의 datawindow 이름
row 삭제될 row의 위치
⼦ 반환값
long. 정상적으로 삭제되면 1을, 실패하면 -1을 return.
⼦ 사용법
Deleterow는 DataWindow의 primary buffer의 row를 삭제한다.
DataWindow control이 갱신불가능하면 그 row와 관련된 모든 기억장소가 없어지고, 갱신가능하면 DeleteRow는 그 row를 delete buffer에 보낸다.
application이 Update함수를 호출할 때까지 해당 row는 database로부터 삭 제되지 않는다.
⼦ 예 제
이 예제는 dw_emp에서 현재행을 삭제시킨다.
dw_emp.DeleteRow(0)
5번째 행을 삭제시키고 데이터베이스에서 변경시키는 예제
dw_emp.DeleteRow(5)
dw_emp,.Update()
Describe PowerScript Function
⼦ 기 능
DataWindow 요소들에대한 정보를 리턴한다.
데이타윈도우내의 오브젝트들에 대한 속성을 알아낸다.
⼦ 문 법
datawindowname.Describe (attributelist )
datawindowname에는 구조에 대한 정보를 얻고자 하는 데이터위도우나 차일드데이터 윈도우의 이름을 기입한다.
attributelist에는 Evaluate 함수 혹은 속성의 공백으로 분리된 리스트의 값이 담긴 문자열이 들어간다.
objectname.attribute
tab character(~t) 는 문자열 안의 값들을 분리하는데 사용된다. objectname에는 데이터 윈도우 페인터는 자동적으로 열의 이름과 열 레이블을 표시해 준다.
Attriute Reported Values
datawindow.Bands header~tdetail~tsummary
datawindow.objects emp~tempname~temp_h
emp.Type column
empname.Type column
empname_h.Type text
emp.Cottype char(20)
state !(잘못된 아이템을 표시)
empname_h.Visible ?
⼦ 반환값
string. 정상적인 경우 각 속성에대한 값이나 평가함수(evaluate Fn)를 포함하는 문자열을 리턴한다. 개행문자는 (~n)는 Attribute List에있는 각 아이템의 값을 구분짓는다.
Attribute List에서 잘못된 Item이 있으면 "!"를 리턴하고 Attribute List의 나머지를 무시한다. 속성에 값이 없는 경우에는 "?"를 리턴한다.
⼦ 사용법
DataWindow의 구조를 이해하는데 Describe함수를 사용한다. 예를들어 사용자는 일련의 DataWindow사용법과 칼럼의 데이터타입을 찾을 수 있다. 현재 속성값을 찾고 추가 수정을 하는 데 Describe함수를 사용할 수 있다.
Describe함수는 종종 구문을 수정하기위해 DataWindow의 SELECT문장을 포함한다. (예. WHERE 절을 추가하는데 사용)
⼦ 예 제
아래 예제는 속성들의 리스트를 가지고 Describe함수를 호출한 것이다.
string Is_request, Is_report
Is_request="DataWindow.Bands DataWindow.Objedct"&
+"empname_n.Text" &
+"empname_h.Type emp.Type emp.Coltype" &
+"state.Type empname.Type empname_h.visible"
Is_report=dw_1.Describe(Is_request)
Describe함수는 Is_report값을 아래 스트링으로 놓을수 있다.
header~tdetail~tsummary~tfooter~theader. 1~ttrailer.1~N
emp~tempname~temp_h~tempname_h~N"Employee~R~NName"cb~N text~n
column~Nchar(20)~N!
Disable PowerScript Function
⼦ 기 능
menuitem의 글자 색깔을 흐릿하게(대개 회색으로) 만들고, 사용자는 이 아이템을 선택할 수 없게 된다.
⼦ 적 용
Menu object에 있는 menuitem
⼦ 문 법
menuitem. Disable ()
Parameter Discription ---------- ---------------------------------------------
menuitem 비활성화시키고자 하는 menuitem 이름
⼦ 반환값
integer. 성공하면 1, 실패하면 -1을 리턴.
menuitem의 Enabled 속성을 지정하는 것은 Disable을 호출하는 것과 같다.
즉, menu_appl.m_delete,Enabled = False는 menu_appl.m_delete.Disable()
과 같다
⼦ 예 제
mwnu m_appl의 m_edit Menuitem을 비활성화한 문장:
menu_appl.m_edit.Disable()
Enable PowerScript Function
⼦ 기 능
메뉴에 있는 item을 이용 가능하도록 하고 사용자는 그것을 선택할 수 있다.
⼦ 적 용
Menu objects에 있는 Menuitems
⼦ 문 법
menuitem. Enable ()
Parameter Description
---------- ----------------------------------------------
menuitem enalble시키고자 하는 menuitem 의 이름
⼦ 반환값
Integer 성공하면 1, 실패하면 -1을 리턴.
⼦ 사용법
메뉴 아이템을 enable 하면 그 색깔이 활성화된 색으로 변하고 enable을
호출하면 아이템의 속성을 true로 지정한다.
menuitem의 Enabled 속성을 지정하는 것은 Enable을 호출하는 것과 같다.
즉, menu_appl.m_delete,Enabled = True는 menu_appl.m_delete.Enable()과 같다.
⼦ 예 제
m_appl.m_delete,Enable()
메뉴 menu_appl의 menuitem m_delete를 동작할 수 있게 한다.
FindItem PowerScript Function
⼦ 기 능
임의의 찾고자 하는 텍스트를 찾기 시작하는 리스트박스나 DropDownListBox에서 그 다음 항목을 찾는다.
⼦ 문 법
listboxname.FindItem(text,index)
Parameter Description
---------- -----------------------------------------------
listboxname 찾고자 하는 item을 포함하고 있는 listbox명
text 찾고자 하는 item명
index 탐색을 시작할 위치(item의 번호)
⼦ 반환값
Integer. 첫번째 매칭되는 아이템의 인덱스를 리턴한다. 매치시키기 위해서 아이템은 지정된 텍스트에서 출발해야 한다. 그러나 아이템에 있는 텍스트는 지정된 텍스트보다 길수 없다. 매치되는 것을 찾을 수 없거나 에러가 발생하면 -1을 반환한다.
⼦ 사용법
FindItem이 매칭하는 아이템을 찾을 때 그 아이템을 선택하지 않은 아이템의 인덱스를 리턴한다. 아이템을 찾아서 선택하기 위해서 SelectItem function을 사용하라.
⼦ 예 제
ListBox lb_actions이 다음의 리스트를 포함한다고 가정하자.
index number Item text
1 Open files
2 Close files
3 Copy files
4 Delete files
integer Index
Index = lb_actions.FindItem("Delete", 2)
// 아이템 2(Close files)를 가진 출발을 제거하기 위하여 검색을 시작한다. FindItem은 인덱스를 4로 지정한다.
GetClickedColumn PowerScript Function
⼦ 기 능
DataWindow 에서 click 또는 double click한 column의 번호를 얻는다.
⼦ 적 용
DataWindow control 및 자식 DataWindow.
⼦ 문 법
DataWindowName.GetClickedColumn()
Parameter Description
------------- ----------------------------------------------
DataWindowName click 또는 double click한 column에 대한
DataWindow의 이름
⼦ 반환값
integer.유저가 datawindowname의 열을 클릭, 더블클릭하면 열의 번호를 반환한다.
특정한 열(예를들면 데이타의 범위 밖, 열사이의 공간이나 문자, header, summary, footer area부분)을 클릭하거나 더블클릭하지 않으면 0을 반환한다.
⼦ 사용법
데이타윈도우 컨트롤에 대해 클릭이나 더블클릭의 이벤트가 발생되면 GetClickedColumn을 호출한다.
User가 열(Column)에 클릭했을때, 즉 클릭이나 더블클릭후에 현재 열에 표시된다.
GetColumn, GetClickedColumn의 이벤트가 발생하는 동안 다른값이 반환될 수 있다. User가 다른 방법 즉 tab를 이용하여 열을 이동시킨다면 GetClickedColumn를 사용했다고 볼 수 없다.
⼦ 예 제
dw_Employee의 열을 User가 클릭 또는 더블클릭하면 열의 번호를 표시한다.
integer li_ColNbr
li_ColNbr = dw_Employee.GetClickedColumn()
GetClickedRow PowerScript Function
⼦ 기 능
DataWindow에서 click 또는 double click한 row의 번호를 얻는다.
⼦ 적 용
DataWindow control 및 자식 DataWindow.
⼦ 문 법
DataWindowName.GetClickedRow()
Parameter Description
------------- ----------------------------------------------------
DataWindowName click 또는 더블클릭한 row에 대한 DataWindow의 이름.
⼦ 반환값
Long.
DataWindowName에서 click 또는 double click된 row의 번호를 반환한다.
row을 click 또는 double click하지 않았을시 zero(0)값을 반환한다.
(예를 들어 data 영역을 벗어나 row 사이의 공간에서, 또는 header, summary, footer영역에서 click 또는 double click 시)
⼦ 사용법
데이타윈도우 컨트롤에 대해 클릭이나 더블클릭의 이벤트가 발생되면 GetClickedRow을 호출
User가 행(Row)에 클릭했을때, 즉 클릭이나 더블클릭후에 현재 행에 표시된다.
GetRow, GetClickedRow의 이벤트가 발생하는 동안 다른값이 반환될 수 있다.
User가 다른 방법 즉 tab를 이용하여 행을 이동시킨다면 GetClickedRow를 사용했다고 볼 수 없다.
⼦ 예 제
dw_Employee의 행을 User가 클릭 또는 더블클릭하면 행의 번호를 표시한다.
long ll_RowNbr
ll_RowNbr = dw_Employee.GetClickedRow()
GetColumn PowerScript Function
⼦ 기 능
현재 열의 번호를 나타낸다. 현재 열이란 초점(focus)이 지시하고 있는 곳을 말한다.
⼦ 적 용
DataWindow control 및 자식 DataWindow.
⼦ 문 법
DataWindowName.GetColumn()
Parameter Description
------------- --------------------------------------------------
DataWindowName 현재 column에 대한 DataWindow의 이름
⼦ 반환값
Integer. DataWindowName에서 현재 column의 번호를 반환한다.
현재의 column이 없으면 zero(0), error가 발생하면 '-1'값을 반환한다.
⼦ 사용법
GetColumn 과 GetclickedColumn을 클릭 또는 더블클릭 했을 때 다른 값이 반환 될 수 있다.
유저가 클릭한 현재 열은 이벤트을 발생한 후 까지는 현재 열의 번호를 나타내지 않는다. 열의 이름이 필요하다면 GetColumn 대신에 GetColumnName를 사용하라.
데이타윈도우는 사용하지 않을때나 적어도 한개의 열이 사용중일때에도 현재 열의 번호를 가지고 있다.
⼦ 예 제
dw_Employee의 현재 열의 번호를 리턴한다.
Integer li_ColNbr
li_ColNbr = dw_Employee.GetColumn()
GetItemXXXX PowerScript Function
⼦ 기 능
DataWindow의 buffer로부터 자료를 얻고자할 때 사용한다.
DataWindow buffer의 각 field는 item이라고 부르며 각 item은 관련 함수 를 사용해서 참조할 수 있다.
GetItem()들은 인수로서 row과 column(번호나 column 이름으로써)을 요구한다.
또한 buffer를 명시할수도 있으며(Primary가 default이다), database로부터 색된 원래의 값을 얻기 위한 인수를 추가할 수도 있다.
⼦ 적 용
DataWindow control 및 자식 DataWindow.
함수의 종류
GetItemDate()
GetItemDateTime()
GetItemNumber()
GetItemString()
GetItemStatus()
GetItemTime()
상태 code
각 row은 한 buffer를 갖는다.
#Primary!
#Delete!
#Filter!
각 item도 역시 상태 code를 가지고 있다.
#NotModified! 변경되지 않은 상태
#DataModified! 사용자에 의해 변경되었음
#New! 새로 삽입된 item
#NewModified! 변경되어진 새로운 item
row들도 역시 상태들을 가진다.
#New! 추가된 row
#NewModified! 변경되어진 새로 추가된 row
#DataModified! 변경된 field를 포함
#notModified! 검색이후로 변경되지 않음
GetItemDate PowerScript Function
⼦ 기 능
데이터윈도우콘트롤의 특정 버퍼로부터 자료형이 Date인 데이터를 얻는다.
primary, delete, filter 버퍼안에 있는 현재 값들 뿐만 아니라 데이타베이스에서
검색되고, 저장되어진 데이타를 original 버퍼로 부터 얻을 수 있다.
⼦ 적 용
DataWindow control 및 자식 DataWindow.
⼦ 문 법
DataWindowName. GetItemDate(row,column{,dwbuffer,originalvalue})
Parameter Description
-------------- ------------------------------------------------
dwbuffer(선택) data를 얻고자하는 DataWindow buffer의 열거형 data 값.
originalvalue(선택) column 및 row의 최초 또는 현재값을 나타내는
boolean 값.
.TRUE - database로부터 최초로 검색된 값을 반환.
.FALSE - 현재값을 반환(default) dwbuffer를 지정시, originalvalue 또한 지정해야한다.
⼦ 반환값
Date. 열의 값이 널이면 널값을 반환
에러발생시 1900-01-01을 반환하고 시스템에러유발
⼦ 예 제
dw_employee의 first_day의 컬럼에서 기본버퍼의 세번째 행에서 현재 Date형
데이타로 HireDate를 set.
Date HireDate
HireDate = dw_employee.GetItemDate(3, "First_Day")
dw_employee의 first_day의 컬럼에서 필터버퍼의 세번째 행에 현재 Date형
데이터로 HireDate를 세트.
Date HireDate
HireDate = dw_employee.GetItemDate(3, "First_day", Filter!)
dw_employee의 hdate의 컬럼에서 기본버퍼의 세번째 행에 처음 Date형 데이터로 Hire-Date를 세트.
Date HireDate
HireDate = dw_employee.GetItemDate(3, "hDate", Primary!,TRUE)
GetItemDateTime PowerScript Function
⼦ 기 능
DataWindow 컨트롤의 특정 버퍼로 부터 자료형이 DateTime인 데이터을 얻는다.
primary, delete, filter 버퍼안에 있는 현재 값들 뿐만 아니라 데이타베이스에서
검색되고, 저장되어진 데이타를 original 버퍼로 부터 얻을 수 있다.
⼦ 적 용
DataWindow control 및 자식 DataWindow.
⼦ 문 법
DataWindowName.GetItemDateTime(row,column{,dwbuffer,originalvalue})
Parameter Description
------------ --------------------------------------------------
DataWindowName row와 column에 포함된 DateTime data에 대한
DataWindow의 이름
row data의 row의 위치
column data의 column의 위치
자료형은 DateTime
dwbuffer(선택) Primary!(default)
Delete!
Filter!
originalvalue TRUE
(선택) FALSE(default)
⼦ 반환값
DataTime. 열의 값이 널이면 널값을 반환
에러발생시 1900-01-01 00:00:00.000000을 리턴하고 시스템에러 유발
⼦ 사용법
오리지널 버퍼에 있는 행에 접근하기위해서는 행이 현재 자리하고있는 버퍼와
그 버퍼에서 행의번호를 지정해야한다.
⼦ 예 제
dw_emp 데이타윈도우의 start_dt 컬럼의 세번째행에 대해 기본버퍼에 현재
날짜시간형 데이터로 AsOf를 세트.
DateTime AsOf
AsOf = dw_emp.GetItemDateTime(3, "start_dt")
dw_emp의 end_dt의 컬럼 세번째행에 대해 삭제버퍼에 현재 날짜시간형 데이터로 AsOf를 세트.
DateTime AsOf
AsOf = dw_emp.GetItemDateTime(3, "end_dt", Delete!)
dw_emp의 end_dt 컬럼 세번째행에 대해 기본버퍼에 오리지널 날짜시간형 데이터로 AsOf를 세트.
DateTime AsOf
AsOf = dw_emp.GetItemDateTime(3, "end_dt", Primary!, TRUE)
'PowerBuilder' 카테고리의 다른 글
datawindow does not hava update capability (0) | 2012.07.29 |
---|---|
SELECT ERROR: column lists do not match (0) | 2012.07.29 |
파워빌더 함수 4 (0) | 2012.07.29 |
파워빌더 함수 3 (0) | 2012.07.29 |
파워빌더 함수 2 (0) | 2012.07.29 |