블로그 이미지
SITD

카테고리

분류 전체보기 (34)
1.DB (4)
2.OS (3)
3.PROGRAMMING (14)
4.학업 (0)
5.영어 (0)
6.KSIT (5)
7.증권 (1)
8.EXCEL (0)
9.Graduate (2)
기타 (5)
Total
Today
Yesterday

달력

« » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

공지사항

태그목록

최근에 올라온 글

1. 프로세스에서 가리키는 주소는 해당 프로세스 안에선 절대적인 위치값이지만, 이는 그 프로세스 안에서만 해당한다.
    즉, 프로세스 A와  프로세스 B가 있을 때 서로 100번지를 강제로 가리킨다고 해보자. 
    일반적으로 프로세스가 관리하는 메모리끼리는 관여가 불가능하지만 A 프로세스 종료 후 B프로세스를 생성했을 경우나 공유 메모리의 경우로 가정했을 때,
    A에서 100번지에 값을 넣고 B에서 100번지의 값을 읽을 때 실제론 서로 다른 메모리 위치를 사용하게 된다.
    프로세스에서 사용하는 메모리 주소는 물리 주소가 아니라 MMU에 의해 변경된 논리 주소이기 때문이다.

2. 그렇다면 공유메모리의 값을 다른 프로세스가 공유하려면 어떻게 해야 하는가?
    상대적인 위치값을 기록해서 shmget, shmat를 이용해 리턴된 주소에 포인터 연산을 해서 구한 주소를 사용해야 한다.
    즉, 1000만큼의 메모리를 shmget로 할당했다고 했을 때, 실제 객체가 저장된 위치가 그 중간이라면, 500이란 값을 공유메모리 변수에 저장해 둔 후, 이후 다른 프로세스에서 참조시, shmget -> shmat를 수행한 후 리턴된 주소에 + 500을 한 위치의 값을 사용하면 된다.
 
출처
 : http://kldp.org/node/38864
Posted by SITD
, |
1.데이터윈도우  컨트롤과 데이터윈도우 object의 상관관계를 알고 있으며 데이터윈도우의 개념을 명확하게 설명?

- 데이터윈도우 오브젝트는 매우 뛰어나고 강력한 데이터 처리 기능을 갖고 있으며 GUI형태로 데이터베이스에 있는 자료를 용이하게 처리할 수 있다. 데이터윈도우 오브젝트를 이용하여 텍스트형 SQL 문을 그래픽 모드로 쉽게 작성할 수있고 화면상에 나타나는 표현 형식에 따라 다양하게 화면을 구성할 수 있다. 또한 데이터 베이스 페인트에서 데이터를 효율적으로 관리하는 별도의 방법 들을 제공한다.
 
  데이터윈도우 오브젝트는 데이터베이스에 접근하는 트랜잭션 처리를 위한 독립적인 객체로 사용자에게 보여주는 화면 설계뿐 아니라 프린터로 출력하기 위한 보고서 형식으로 갖출 수도 있다. 데이터윈도우 오브젝트는 윈도우에서 별도의 데이터윈도우 컨트롤을 통해 사용자의 윈도우 화면에 나타나게 된다. 데이터윈도우 오브젝트는 트랜잭션과 결합하면서 DBMS와 연결되어 사용자가 원하는 정보를 가져다준다. 데이터윈도우 오브젝트는 그 자체가 SQL 질의문을 내재하고 있으므로 데이터를 조회 되면 데이터 윈도우의 SQL 질의문이 서버로 보내지고 그 수행 결과 값이 데이터윈도우 오브젝트에 보여진다. 즉, 사용자 인터페이스와 데이터베이스와의 중간적인 위치에서SQL문을 보내고 그 결과를 받는 교량 역할을 한다.

  트랜젝션 오브젝트를 사용하여 데이터베이스와 접속이 이루어지면 스크립트 페인터에서 SQL문을 기술하여 데이터베이스의 데이터를 액세스 할 수 있다. 파워빌더의 데이터윈도우 오브젝트로 데이터베이스를 참조할때는 데이터윈도우 오브젝트에 트랜젝션 오브젝트를 활당하여 데이터윈도우로 하여금 어떤 데이터베이스를 어떻게 사용할지 알려 주어야 한다.

  파워빌더는 이를 위해 settrans() 와 settransobject() 두가지 함수를 제공하는데 이것은 데이터윈도우 오브젝트가 놓여진 윈도우 오브젝트의 오픈 이벤트에 주로 선언된다. 그런 다음 Retrieve()나 update() 함수를 사용하여 데이터윈도우에 데이터를 조회해 오거나 데이터윈도우 상에 보여지는 현재의 데이터를 저장한다.

  이 두 함수의 기능은 동일하나 작동하는 방법이 조금 다르다. Settrans() 함수는 스크립트내에서 update()함수가 실행되면 곧바로 commit명령이 자동으로 발생하여 편리하지만 rollback 할 수가 없다. 또 한 settransobject() 함수보다 실행속도가 늦다. update() 함수는 데이터윈도우 상의 데이터를 새로 갱신하지만 그 결과를 데이터베이스에 영구적으로 저장하지 않고 윈도우의 버퍼에 임시로 저장하여 commit문을 만나면 버퍼의 내용이 데이터베이스에 저장한다. 그러므로 settranspbject()함수를 사용할 경우 commit을 하지 않고 프로그램을 종료하면 최종적으로 commit이 일어난 이후에 변경된 데이터들은 모두 잃어 버린다.


 

2.데이터윈도우를 만들 때 설정하게 되는 데이터윈도우 소스와 프리젠테이션 스타일에 대해서 유형별로 구별?


- Quick Select는 데이터베이스에 있는 여러 개의 테이블 중에서 하나의 테이블에서만 필요한 컬럼을 선택할 때 사용 한다일반적으로 입렵 전용으로 설계할 경우하나의 테이블 내용을 모두 사용하므로 이것을 이용하면 편리할 것이다그렇지만 입력 전용인 경우에도 여러 개의 테이블에서 컬럼을 선택한다면 여러 개의 테이블은 선택할 수 있는 SQL select방식을 이용해야 한다. Queck Select방식은 테이블의 연계성을 쉽게 알아볼 수 있는 장점을 가지고 있지만 그룹을 지정하거나 계산 컬럼을 포함할 수 없고 조회할 때 사용할 인자값을 지정할 수 없다. 종류  

composite ,

crosstab ,

 freeform,

graph,

,group,label

, n-up,ole2.0

,richtext,

Tabular

,treeview

등이 있다

 

 

3.데이터윈도우  object를 만들 때 일반적으로 가장 많이 쓰이는 것 프리젠테이션 스타일로 테뷸러(tabular)와 프리폼(FREEFORM)이 있다. 이두 유형의 프리젠테이션 스타일을  어떨 때 사용 하는지?


- 테이블러 스타일의 데이터윈도우는 컬럼과 헤더의 위치와 크기를 다른 컬럼에 영향을 받지 않고 자유롭게 편집할 수 있는 데이터 윈도우 스타일이다. 외곽선이나 선과 같은  여러 가지 오브젝트를 이용하여 정밀한 보고서를 작성할 수 있으며, 주로 그룹 데이터를 작성할 때 자주 사용한다. 프리폼 스타일 주로 자료 입력이나 한 로우의 데이터를 상세하게 표현하고자 할 때 사용 된다. 이 형식은 칼럼이 수직 방향으로 배열되며 각 칼럼은 LABEL과 함께 나타난다. 개발자는 칼럼이나 텍스트를 재배열 하거나 디자인 함으로써 기본 레이아웃을 변경할 수 있다. 화면 디자인은 칼럼이나 텍스트의  속성(PROPERTIES)을 수정하는 방식으로 이루어진다. 이 형식은 주로 사원의 개인 신상 정보나 제품의 거래 내역에 관한 데이터를 표현할 때 유용하다.

 

 

4.데이터윈도우 OBJECT에 올려서 사용할 수 있는 COMPUTED FIELD또는 COMPUTED OBJECT의 사용법?

- 기본적인 칼럼 외에 추가적으로 새로운 칼럼 객체를 만들고자 할 경우 사용한다. Computed Field 객체는 다음 그림과 같이 칼럼 객체와 데이터윈도우 내부 함수로 구성되어 있는데 일반적으로 파워빌더로 가져온 데이터를 필요한 정보로 가공하여 사용 할 때 많이 이용한다.

  Expression에 원하는 데이터윈도우와 칼럼을 선택하여 기술하고 문법이 맞는지는 Verify버튼을 클릭하여 점검하면 된다. 그룹 스타일 윈도우를  생성하면 날짜나 페이지 등의 많은 정보가 필요할 것이다. Average, count, Page, sum, today 등과 같이 자주 사용되는 칼럼 필드들은 미리 만들어져 있어 쉽게 사용할 수 있고 그외의 것은 위의 그림에서와 같이 데이터 윈도우 함수를 이용하여 사용자가 직접 Expression에 기술하여 사용할 수 있다. 여기서 사용하는 데이터는 클라이언트에서 가공하여 구현되는 것이므로 서버에는 영향을 미치치지 않는다.



5.
데이터베이스 프로파일의 기능?

* 데이터베이스 엑세스와 자원의 한계를 제어하는 것은 DBA가 수행해야 하는 매우 중요한 기능이다 .

  * 데이터베이스와 데이터 엑세스 관리를 위해서는 관리(Privilege)을 사용하며, 이 권한들을 관리하기 위해      롤을 생성한다.

    - 프로파일은 자원제한과 암호제한의 명명된 집합이다.

    - 프로파일이라는 객체를 통해 보안기능을 제공하며 설정 할수 있다.


   
프로파일로 자원관리(3단계)  - 중요

 1단계 : CREATE PROFILE 명령으로 프로파일을 생성하고 자원과 암호제한을 결정한다.

 2단계 : CREATE USER 또는 ALTER USER 명령으로 프로파일을 사용자에게 지정한다.

 3단계 : ALTER SYSTEM 명령을 사용하거나 파라미터 파일을 편집하여 자원제한을 시작한다.


  
프로파일로 자원사용 관리 단계

   SQL> system/oracle

  * 데이터베이스에 어떤 프로파일이 생성되었는지 확인

  SQL> select * from dba_profiles ;

  * 데이터 베이스 사용자에게 어떤 프로파일이 설정되어 있는지 확인

  SQL> select username, profile from dba_users ;

 

 (1) profile  생성 - 자원제한 결정

   * '회계관리' 업무를 개발하기 위해 데이터베이스 사용자를 생성하고자 한다.

     그런데 동시에 너무 많은 회계업무 사용자가 접속하면 처리속도가 너무 늦어져서 회계사용자의 접속 수를 1개로 , 접속시간은 10분으로 , 접속 후 1분 동안 어떤 작업  실행하지 않으면 접속을 해제하려고 한다. 위의 자원 제한을 참조하여 프로파일을 생성하시오 . 

      (프로파일명은 account_profile로 한다.)


SQL>  create profile account_profile limit

          sessions_per_user 1

          connect_time 10

          idle_tile 1 ;


SQL> select * from dba_profiles ;


 (2) user 
생성 - profile   user 에게 지정

  * 회계 사용자명은 account

     패스워드는 account123

     account 사용자가 생성하는 모든 테이블은 user 테이블스페이스에 생성하고 account

     사용자로 접속하여 실행하는 모든 분류(sorting)작업은 temp 테이블스페이스에서

     작업하는 사용자를 생성하시오

    SQL> create user account

             identified by account123

             default tablespace users

             temporary tablespace temp

             profile account_profile ;

    SQL> grant connect , resource to account ;

    SQL> select username, profile from dba_users



6.
데이터윈도우 object의 작업영역이 헤더밴드,디테일밴드,서머리밴드,푸터밴드로 나뉘어지며 이 밴드 각각의 이들의 유형별 사용법?

 - 데이터윈도우의 작업은 보통 밴드라고 불리는 영역으로 나우어져 있다. 이 밴드는 header, Detail, summary, footer의 네 가지로 되어 있으며, 그룹이 형성된 경우에는 Header Group과 Tailer Group영역이 추가된다. Band는 데이터윈도우 객체에서 나타나는 영역을 구분한 것이며, 각각의 Band는 Band의 이름이 있는 Bar로 식별된다.

마우스를 이용하여 이동함으로써 화면상에 나타나는 데이터사이의 여백을 조정할 수 있고, 실행 시 데이터가 화면에 출력되는 모습을 확인 하려면 페인트 바의 Preview아이콘을 클릭하면 된다. 각밴드들의 역할은 


Header  화면 페이지의 상단에 나타나는 칼럼의 Heading정보또는 현재 날짜나 리포트의 제목 등을                  표시하는 곳이다.

Detail  실제로 데이터베이스나 기타 데이터 소스에서 가져온 데이터가 나타나는 영역이다.

Summary  모든 데이터가 출력된 후 나타나는 요약 정보주로 전체 데이터의 합계나 수를 표시하는 영                   역이다.

Footer  화면이나 페이지의 하단에 나타나는 정보주로 전체 페이지의 수 및 페이지 번호를 표시하는                 영역이다.

 

 

7.데이터윈도우 함수들중 Retrieve(), Update(), InsertRow(),deleteRow()함수에 대해서?

Retrieve()   - 데이터베이스에서 데이터윈도우 컨트롤에 연결된 데이터윈도 오브젝트에 자료를  읽어온다.

Update()     -데이터윈도우의 값이 수정되었거나,추가,삭제,되었을 경우  데이터베이스에 Update 한다.

InsertRow()  새로운 로우를 추가한다. Row의 값이 0이면 제일 마지막 위치에 데이터를 추가한다.

DeleteRow()-데이터윈도우의 로우를 삭제한다.



 

8.데이터윈도우 컨트롤의 함수의 하나인 AcceptText()함수의 기능에 대해서?

- 데이터윈도우의 현재 칼럼에 입력한 값을 데이터윈도우 버퍼에 받아들이도록 한다.




9.
데이터윈도우 이벤트의 하나인 ItemChanged 이벤트에 적용되는 리턴값 0,1,2각각의차이?

0:변경 데이터 수용

1:데이터를 거부하고 포커스가 이동하지 않는다.

2:데이터를 거부하지만 포커스는 이동한다.

 

 

 

10. Modify() 함수와 Describe() 함수 각각의 사용법?

Modify()  모디파이 함수를 이용하면 실행 시에 데이터윈도나 데이터윈도의 내의 어떠한  coponent의 속성이라도 변경할 수가 있다.  Modify()함수는 속성을 변경하기 위하여 String 타입의 Argument를 사용한다.


Dw_1.Modify(modstring)

modstring에는 데이터윈도우의 내용을 변경 시킬 문자열이 들어가면 된다.


//
데이터윈도우의 백그라운드 색상을 붉은 색으로 변화 시키는 문장이다.

Dw_1.modify(datawindow.color=255)


//
데이터윈도우 내의 component의 속성을 변경할 때는 Component 의 이름
을 명시해야 한다.

Dw_1.modify(dept_id.background.color=255)


* component
 property

- 데이터윈도우 내의 각 구성 요소들과 컬럼들을  Component,의 속성값을 참조하기 위해서 다음과 같은 표기법을 따른다.

<Dw_control>.object.<component>.<property>

 

위에서 Component란 컬럼이나 해더, Statitext등 데이터윈도우 내에 존재하는 모든 object들의 이름이다.


//
아래의 예는 헤드의 내용을 변경 한다.

Dw_1.modify(dept_name.font.italic=~tdept_name.color=255)


복수 component의변경

동시에 여러 개의 component 를 변경해야 하는 경우가 있다이 때에는 Modify()함수를 여러 번 실행할 것이 아니라 ~t 즉, 구분자를 사용한다.

 

Dw_1.modify(dept_name.font.italic=~tdept_name.color=255)

 

Component를 추가하거나 삭제

Modify()함수를 이용하여 다이나믹하게 데이터윈도우 내의 component( text,bitmaps,graphic)에 대해서 삭제를 하거나 추가할 수 있다.

Modify()함수의 Argument의 일부인 create,destroy를 사용한다.

Dw_1.Modify(destroy disp_data)

 
 

Describe()함수

데이터윈도우 속성의 현재 값을 가져오는데 사용한다.

Dw_1.describe(propertylist)

//데이터윈도우의 컬럼의 타입 ( number , date.)을 읽어온다.

String s

S= this.describe(this.getcolumnname()+.coltype)

드롭다운 데이터윈도우의 디스플레이값 얻기

 

일반적으로 데이터 윈도우의 값을 읽어오면 디스플레이 값을 얻어오지 못하고 실제 코드값을 읽어 온다디스플레이 값을 읽어올 때 LookupDisplay함수를 이용하여 읽어온 값을 Evaluating하면 된다.

 

String rownumber,displayvalue

Rownumber = string(dw_1.getrow())

//state_code컬럼의 디스플레이 값을 읽어온다.

Displayvalue=Dw_1.describe(Evaluate( lookupdisplay(state_code),+rownumber+))

 

 

11. dw_1.Describe(Evaluate(lookupdisplay(fname),1))가 의미하는 것은?

- Dw_1 1번째 fname 의 디스플레이를 읽어온다.



 

12. Sharedate()함수의 사용법?

- Sharedate() 함수는 두 개 이상의 데이터윈도우 컨트롤에서 데이터를 공유하는 함수로써 각 데이터윈도우의 컨트롤 객체가 같은 데이터를 공유하게 한다기본 데이터윈도우는 종속 데이터윈도우와 버퍼 (primart, delete, filter)를 공유한다그러므로 버퍼의 데이터를 수정하면 공유된 모든 데이터윈도에 표현되는 데이터는 동일하다이 함수는 조회된 데이터를 가지고 여러 형태로 표현하고자 할 때 많이 사용된다데이터윈도우를 공유하기 위해서는 선택된 칼럼의 타입과 길이 그리고 순서가 동일해야만 사용가능 하다.

  각 데이터윈도우 컨트롤 객체에서 다른 칼럼들을 공유하기 위해서는 데이터윈도우 오브젝트 작성시 데이터 소스에서 선택된 필드에서 보여지지 않는 컬럼들은 삭제하면 된다.

  다음 코드는 dw_test의 데이터윈도우가 dw_basic의 데이터윈도우를 공유 한다.

 

  기본 데이터윈도우 dw_basic만 트랜젝션을 지정한다.


Dw_basic.settransobject(sqlca)

//dw_test는 기본 dw_basic 데이터윈도우의 버퍼를 공유한다.

Li_rtn = dw_basic.sharedata(dw_test)

If li_rtn  = -1 then

    Messagebox(sharedata error,error sharing employee dw)

    Return 1

End if

//기본 데이터윈도우 dw_basic만 조회 한다.

Dw_basic.retrieve()

//데이터 공유가 끝났으면 해제한다.

Dw_test.shatredataoff



 

13. 데이터베이스 Cursor에 대해서?

* Cursor란 무엇인가?

Cursor SQL문장을 실행하기위해 DATABASE가 사용하는 Memory의 영역을 말한다.

DATABASE에서 갖는 Open_Cursor Default값은 50이다.

Maximum값은 User가 사용하는 System 에 따라 결정된다.

User의 환경에 따라 Open_Cursor의 적정값을 설정할 필요 있다.

 

만약 이 방법으로 해결이 안되면 다음의 방법을 따른다.

정확한 에러의 원인을 찾기 위해서 init.ora 화일에 다음과 같은 라인을 추가한다.

events = "604 trace name errorstack"

 

이렇게 init.ora를 변경하고 DB Shutdown 하고 Startup 하면 ORA-604 에러가 발생하는 경우에 자세한 정보를Trace 화일에 기록해 주므로 이 화일을 검사하여 에러의 원인을 찾을 수 있다.

 

에러의 다른 원인으로는 init.ora 화일의 파라미터 가운데 DC_FREE_EXTENTS  ROW_CACHE_ENQUEUES 의 값이 너무 작게 설정된 경우를 생각해 볼 수 있다.

이와같은 경우는 이들 값을 크게 설정해 주도록 한다.

 

테이블 스페이스가 가득 차거나 Extent 갯수의 최대 허용값을 초과해서 에러가 발생하는 경우 ORA-604 에러가 함께 발생할 수가 있는데 이와같은 경우에는 이들 문제를 먼저 해결하면 ORA-604 에러는 함께 해결 된다.

 

 

14.파워스크립트가 제공하는 제어문에는 어떤 종류가 있으며 각각의 기능상의 특징?

종류에는 IF문과 choose case문 이있다


IF
문 – 조건식이 참인지 거짓인지 판단후  문장을 수행하고 다음과 같이 3가지 유형이있다.

1.     IF...THEN

2.     IF 조건 THEN

        처리문

[ELSE 처리문]

END IF

3.     IF 조건 THEN

        처리문

ELSE IF 조건문 THEN

         처리문

END IF

 

CHOOSE CASE문 – CHOOSE CASE 테스트할 값 또는 변수

CASE 비교값1

    처리문

CASE 비교값2

    처리문2

       .

       .

CASE ELSE

    처리문n

END CHOOSE


CASE 
값에는 단일 값만 오는 것이 아니다여러 개의 값이 올 경우에는 컴마(,) 구분한고
어디에서 어디까지 할당된 값이 올 경우에는 TO를 사용하여 작성 한다다음은 CASE문장에 올 수 값들이다.


한 개의 값(10)

콤마로 연결된 여러 개의 값 리스트(1,2,3,4)

TO절을 사용한 여러 개의 값 ( 10 TO 30)

IS 뒤의 관계연산자 비교값 IS>10)

 

)

CHOOSE CASE VALUE

CASE 10,20,30  //value 10, 20, 30인경우 수행

    처리문1

CASE 40 to 70  // Value 40 -70 사이인 경우 수행

    처리문2

.

.

CASE ELSE

   처리문n

END CHOOSE

CASE에서 해당 결과 값이 없는 경우에는 CASE ELSE 문장을 수행한다.

조건의 수가 적은 경우에는 IF문을 사용하는 것이 좋고 , 많을 경우에는 CHOOSE CASE

문을 사용하는 것이 더욱더 효율적이다.



15.배열 선언 방법배열을 처리하는 방법과 배열의 크기를 가변적으로 설정하는 동적열의 구현에 대해서?

하나의 변수명에 인덱스를 두어 자료를 관리하기 위해 사용되는 변수 선언 방식으로 []을 이용하여 배열을 선언한다.
  일차원 배열은 관련된 아이템의 집합으로 하나의 크기나, to문을 사용하여 범위를 정의한다.
    String name_array[30]
    Integer name_array[10 to 20]
  첫번째 예제는 1부터 30까지의 인덱스를 갖는 30개의 스트링의 배열을 선언한 것이고 두번째 예제는 10부터 20까지의 인덱스를 갖는 11개의 Integer배열을 선언한 것이다.
  to표기법은 기본적으로 1부터 시작하는 인덱스를 재정의 하기 위하여 사용한다.
  그러므로 선언된 2개의 배열에서 1자리 코드를 사용하지 않는다면 to표기법을 사용하는 것이 메모리 낭비를 줄 일 수 있다이때 반드시 처음의 수가 나중의 수보다 작아야 한다.
  크기 제한이 없는 배열은 인덱스가 항상 1부터 시작 한다인덱스의 상한값은 그것을 검사할 때 그 시점에서 할당된 제일 큰 인덱스 값에 의해 결정된다제한이 없는 배열이 처음 생성될 때는 인덱스의 상한값 0이고 하한값은 1이다.
    Array[200] = 100
    Array[250] = 50
  첫번째 배열 참조는 파워빌더가 200개의 요소를 새로 생성하게 한다그리고 처음 199
개에는 기본값이 0로 초기화 하고 200번째 요소에는 100이란 값을 할당한다두 번째 배열 참조는 부가적인 50개 의 요소를 더  생성하여 배열에 덧 붙인다그리고 250  번째 요소에는 50을 대입한다.크기에 제한이 없는 배열을 선언 할때는 배열을 초기화 해놓고 작업을 한다면 크기 제한이 없는 배열을 사용하는 것은 최적화된 것이라 할 수 있다파워빌더가 부가적인 메모리를 할당할 때마다파워빌더는 윈도우 오퍼레이팅 시스템을 처리하여야 한다이것은 시간 및 비용이 많이 드는 작업이다그러므로 한번에 최대 크기에 배열을 생성하는 것이 보다 빨리 작업을 수행할 수 있다이것은 항상 가능한 것은 아니지만 반대로 배열이 자주 사용될 경우 고려해 볼만 하다.



16.
배열의 초기화 UpperBound() 함수 등 배열에 관련된 함수들에 대해서?

  배열의 상한과 하한값의 크기를 구하기 위하여 파워빌더에서는 UpperBound()  Lowerbound()라는  두개의 함수를 사용한다크기에 제한이 없는 배열의 경우  LowerBound()는 항상  1이라는 값을 반환 한다.

UpperBound()라는 함수는 일반적으로 배열을 순회하기 전에 사용해야 한다.

)

//올바르지 않음

For count = 1 to UpperBound()(array)

Next

//올바름

Number = UpperBound()(array)

For count = 1 to number

Next

 

다차원 배열은 항상 고정된 크기로만 정의할 수 있고 선언시에 일차원 배열보다 더많은 정보를 담게 된다다차원 배열은 초기화할 수 없다차원의 수와 크기는 단지 사용 가능한메모리의 크기에만 제한을 받는다그리고 다차원 배열은 쉼표(,)로 구분된 리스트를 인덱스로 사용하여 접근할 수있다.

Numarray[4,5] = 55 //2차원 배열 4 5열에 55값으로 대입한다.

Stringarray[34,54] = “kitri” //2차원배열 34 54열에 스트링값 kitri을 대입한다.

 

 

17.어플리케이션 object에서 데이터베이스와 연결하기 위해 설정하는 스크립트를 알고 있는가?

 

SQLCA.DBMS       = "O90 Oracle9i (9.0.1)" <- 데이터베이스 이름

SQLCA.LogPass    = "SGGZOO" ß로그인 페스워드

SQLCA.ServerName = "MSG" ß 서버이름

SQLCA.LogId      = "SGGZOO" ß 로그인 아이디

SQLCA.AutoCommit = False

SQLCA.DBParm     = "PBCatalogOwner='SGGZOO',DelimitIdentifier='No'"

 

 

18. Power build의 모든 object 들과 컨트롤들이 어떠한 형태로 상속계층구조에 기반을 두고 있는지 이해하는가?

어떤 객체를 만들 때 공통된 부분을 미리 만들어 사용함으로써 그 객체로부터 상속을 받고추가되는 부분만을 기술하여 사용하면 시스템의 재사용성과 효율성을 높일 수 있을 것이다모든 하위 클래스는 그상위 클래스의 모든 데이터 구조 및 함수들을 그대로 이어받는 새로운 파생 객체를 상속이라 할수있다하위클래스는 상속 받은 상위 클래스의 특성을 제거할 수는 없으나 상속받은 메소드의 행위를 확장하거나추가할 수 있으며선택적으로는 상속받은 메소드를 오버라이딩(Overridding)하여 재정의 가능하다어떤오브젝트 클래스가 프로퍼티를 변경하고자 할 때변경된 프로퍼티는 그 클래스를 상속 받은모든 하위 클래스에 전달된다파워빌더에서는 개발자가 정의한 시스템 클래스가 제공되므로 쉽게 재사용할 수 있으며여기에는 윈도우,메뉴,사용자 오브젝트 등이 상속을 받을 수 있다.

 

 

19.윈도우의 종류와 이들 각각의 기능상의 차이점?

-메인 윈도우

  메인 윈도우는 다른 윈도우에 종속되지 않는 독립적인 윈도우로  SDI에서는 주화면으로 사용하고, MDI에서는 다른 윈도우에 겹쳐질 수 있으므로 Sheet로 사용된다메인 윈도우는 다른 윈도우 (Child, Popup, Response) 를 부르는 부모 윈도우가 될수 있다.


-Response
윈도우

  리스폰스 윈도우는 사용자에게 정보를 요철할 때 사용한다 Model윈도우로 활성화 되며반드시 어떤 결과를 처리해야만 다른 윈도우가 활성화 되어 작업이 가능하다파워빌더에서는 메시지박스가 대표적으로 사용자에게 반드시 어떤 응답을 받아야만 메시지 윈도우가 닫힌다리스폰스 윈도우에서는 자체적인 메뉴를 가질수 없다.


-Popup
윈도우

  팝업 윈도우는 다른 윈도우(부모윈도우)에서 열리게 되므로 자신을 연 윈도우에 종속된다.

그러므로 팝업 윈도우의 부모윈도우가 최소화 되거나 닫히면 팝업 윈도우도 같이 사라진다그러나 팝업윈도우는 부모윈도우의 경계를 벗어 날 수 있다일반적으로 부모 윈도우를 지원하기 위해 많이 사용된다.


-Child
윈도우

  자신을 연 부모 윈도우에 종속되며항상 부모윈도우 내에서만 존재하며,메뉴를 가질수 없고,부모 윈도우에 상대적으로 위치하며 부모윈도우가 닫히면 차일드 윈도우는 자동적으로 사라진다.일반적으로 부모윈도우에 보조 되는 자료를 보여줄 때 사용하며 , 인터넷프로그램인 파워빌더 플러그인일 사용할 때 많이 이용한다.

 

 

20.파워바와 painter바의 기능상의 차이점?

- 데이터윈도우 오브젝트 작성시 텍스트 메뉴바 ,파워바페인터바 3종류의 메뉴가 나타난다.

  여기서는 페인트바에 표시되어 있는 중요한 기능들이 메뉴바에 포함되어 있다.



 

21.상속이 되는 Object 와 그렇지 못한 Object를 분류 할수 있는가?

- 상속 구조를 볼 수 있는 방법중 하나(제가 아는 유일한 방법?) 브라우져를 이용해 보십시요
브라우져를 실행하면 객체별로 분리되어 보입니다

거기서 show hierarchy 옵션을 선택하시면
 상속이 브라우져 ( 탐색기폴더처럼 ) 되어 보입니다
거기서 에디트 (팝업 메뉴중)를 선택하시면 해당 페인트로 이동합니다.

 

 

22.Instance 변수가 차지하는 역할을 윈도우 Object의 관점에서 설명할 수 있는가?

- 인스턴스 변수는 오브젝트 (애플리케이션,윈도우,사용자오브젝트,메뉴)내에 정의된다그러므로 오브젝트 내에서는 어느 곳에서나 사용이 가능하다이러한 변수는 접근 레벨에 의해 도트표기법을 사용하여 오브젝트의 외부에서도 사용할 수 있다(Public으로 변수 선언). 만일 접근 권한이 Private Protected로 선언 되어 있는 인스턴스 변수를 다른 오브젝트에서 참조하려고 하면 다음과 같은 에러 메시지가 나타난다.

(0001):Error C0158: the property ‘ii_sample’ was found in class

       ‘w_main’,

       But insufficient right are available to access it

인스턴스 변수는 그들이 선언된 오브젝트의 속성으로 효과적으로 사용될 수 있고오브젝트가 애플리케이션에 의해 생성될 때 초기화 된다오브젝트가 소멸될 때인스턴스 변수는 오브젝트를 따라 같이 소멸된다.




23.
전역변수의 사용이 프로그램의 전반에 걸쳐서 어떤 영향을 미치는지 알고 있는가?

- 전역 변수는 애플리케이션 전체에서 접근할 수 있고실제 애플리케이션 오브젝트에 저장된다.스크립트의 모든 곳에서 변수의 값을 변경할 수 있다그러나 이것은 디버깅을 어렵게 하고 애플리케이션이 수행되는 시간동안 메모리를 점유하게 되므로 전역변수의 개수는 최소한으로 사용하는 것이 좋다또한 전역변수는 애플리케이션이 처음 수행될 때 초기화 된다.



24.SQLCA 시스템 변수에 대해서 어떻게 알고 있는가?

- SQLCA는 쿼리가 수행 되었을 때 발생하는 리턴코드이며 정상적으로 수행하면 리턴값으로 0을 반환 한다.

 

 

25.파워스크립트 String의 결합연산자는 무엇이며 의미는?

NOT,And,Or  연산자는 논리 연산자이고결합 연산자(+)는 두문자열이나 BOLB변수의 내용을 합치는데 사용된다두 변수는 반드시 같은데이터 타입 이어야 한다.

) String Lname, Fname, Fullname

Fullname = Lname + ‘.’ + Fname

모든 연산자가 널(null)값의 연산자에서는 예상 밖의 결과가 나오게 된다.

따라서 연산식이 혹시 널이 되지 않았는가를 잘 살펴야 한다산술연산자 관계연사자는 널과의 연산은 항상 널 값을 갖는다.

 

 
 

26.Power build  전역함수의 사용상의 특징?

Global Function link 되어 있는 모든 라이브러리 내에서 사용 가능 하므로 특정 오브젝트와 관계 없이Application내의 어느 스크립트에서나 호출이 가능한 함수이다.

Global Function은 파워바에서 new >> pbobject탭에서 function아이콘을 선택하여 함수를 수정한다.

 

 

27.함수나 이벤트 스크립트에서 RETURN 문과 Return코드에 대해서?

함수가 성공적으로 수행되었을 때 호출한 곳으로 리턴 되는 값으로 함수의 리턴 타입은 파워빌더가 제공하는 모든 데이터 타입(integer,long,String) object, control의 객체타입 등이 사용되고 리턴값을 [none]으로 지정하면 함수를 수행 했을 때 값을 돌려주지 않는다.

 

 

28.파워스크립트를 디버깅 할 때 사용하는 디버거에 대해서 특히 Breakpoint설정에 대해서?

Breakpoint 탭은 현재 설정되어 있는 정지점을 나타내고 정지점을 새로 추가하거나 삭제등을 관리할수 있다.

 

 

29.비쥬얼사용자 Object 와 넌비쥬얼 사용자 Object의 차이점?

표준 비주얼 사용자 오브젝트는 파워빌더에서 제공하는 컨트롤 들의 기능을 상속 받은 뒤 특별한 기능을 추가하여 작성하는 오브젝트이다그리고 애플리케이션의 필요에 따라 상속된 컨트롤을 수정한다.

 

 

30.다섯가지 유형의 사용자 Object에 대해서 이해하고 있으며 제작방법?

-커스텀 비주얼 사용자 오브젝트

커스텀 비주얼 사용자 오브젝트는 기존에 만들어진 모든 오브젝트를 조합하여 새로 만들어 하나의 단위로 여러 개의 컨트롤을 가지는 오브젝트이다이것은 컨테이너 역할을 하는 점에서윈도우와 비슷하다 Custom유저오브젝트는 시스템 전체에 걸쳐 반복적으로 사용된는 인터페이슷 구현 할 때 자주 사용한다.

 

-외부 비주얼 사용자 오브젝트

윈도우오브젝트에 파워빌더가 아닌 개발환경에서 생성된 오브젝트 컨트롤을 불러 사용할 수 있는 유저 오브젝트이다.파워빌더에서 외부 사용자 오브젝트를 사용하면 커스텀 DLL을 사용할 수 있다외부 비주얼 유저 오브젝트에서는DLL파일을 연결하여 오브젝트를 만든다이를 사용하기 위해서는 DLL이 해석할 수 있는 클래스 DLL이 응답 하는 메시지 스타일등 DLL관련 정보가 필요하다.

 

 

 

-커스텀 클래스 사용자 오브젝트]

커스텀 클래스 사용자 오브젝트는 아미 만들어져 있는 Custom Class User-Object를 상속 받는 유저 오브젝트이다 그러므로 사용자에게 보이지 않는 프로세싱을 캡슐화 하는데 사용되고 이들 오브젝트는 어떤 파워빌더 오브젝트의 기본 정의로부터도 상속 받지 않으며 오로지 개발자가 직접 선언한 인스턴스 변수함수 및 이벤트에 의해서 완벽하게 표현 된다.

 

-Standard 클래스 사용자 오브젝트

Standard 클래스 사용자 오브젝트는 Standard 비주얼 사용자 오브젝트와 마찬가지로 파워빌더에서 제공하는nonvisual한 오브젝트에서 단일개 상속 받는 것으로 트랜잭션 오브젝트 또는 에러 오브젝트와 같은 것이 여기에 속한다.

 

-표준비주얼사용자 오브젝트

표준 비주얼 사용자 오브젝트는 파워빌더에서 제공하는 컨트롤 들의 기능을 상속 받은 뒤 특별한 기능을 추가하여 작성하는 오브젝트이다그리고 애플리케이션의 필요에 따라 상속된 컨트롤을 수정한다.

 

 
 

31.Select, Insert,Update,Delete.Connect 등의 SQL문장의 사용법?

-- Select.
-- [1] SELECT(
검색)

-- 
정의) Select FieldNameList From TableName [Where 조건] [Order By 정렬시킬 필드명 [ABC|DESC]]

 

-- [2] 시스템 정보만 얻어오기(시스템 함수 사용)
-- 
현재 서버의 이름을 검색

Select @@servername
-- 
현재 서버의 버전을 검색
Select @@version

 

-- [3] Memors의 모든 필드 검색.
Select Num, Name, Title, PostDate From Memos
-- Memors
의 모든 필드 검색('*'와일드문자 사용 : 모든것).
Select * From Memos

 

-- 참고시간차 주기 : WAITFOR(몰라도 상관없음)
BEGIN
 SELECT * FROM Memos
 WAITFOR DELAY '000:00:05' -- 
특정시간 후에 명령어 진행
END

 

-- [4] Memos에서 Name필드와 PostDate필드만 검색.
Select Name, PostDate From Memos

 

-- [5] 조건검색 : Name이 씨앗인 사람의 모든 것 검색.
Select * From Memos Where Name = '
씨앗'

 

-- 조건검색 : Name이 씨앗인 사람의 Num, Email만 검색.
Select Num, Email From Memos Where Name = '
씨앗'

 

-- [6] 조건검색 : Name ''로 시작하는 사람의 모든것 검색.
-- '%' 
와일드 문자 사용. %->모든것.../like 키워드 사용.

Select * From Memos Where Name like '
%'

 

-- 조건검색 : Name ''자가 들어가는 사람의 모든것 검색.
Select * From Memos Where Name like '%
%'

 

-- 조건검색 : Name ''자로 끝나는 사람의 모든것 검색.
Select * From Memos Where Name like '%
'

 

-- 조건검색 : Name ''자로 끝나는 사람의 Name Email만 검색.
Select Name, Email From Memos Where Name like '%
'

 

-- [7] 조건검색 : Memos 테이블에서 Name ''로 시작하고 [그리고|또는] Email 's'자가 들어가는 사람의 모든것 검색.
-- AND 
연산자 사용.
Select * From Memos Where Name like '
%' AND Email like '%s%'
-- OR 
연산자 사용.

Select * From Memos Where Name like '
%' OR Email like '%s%'

 

--[8] 정렬검색 : Num의 역순(내림차순)으로 정렬.
-- 
오름차순 정렬(ASCending) = 1,2,3 순서대로...(기본값)

-- 내림차순 정렬(DESCending) = 3,2,1 순서대로...
Select * From Memos Order By Num DESC


-- 
정렬검색 : Name 필드를 오름차순으로 정렬
Select * From Memos Order By Name ASC -- ASC는 생략가능.

 

-- Name ''자가 들어가는 사람의 Name Email Num의 역순으로 검색.
Select Name, Email From Memos Where Name like '%
%' Order By Num DESC

 

-- [9] 상위 5개 레코드만 검색.(Top 5)
Select Top 5 * From Memos Order By Num DESC

 

-- [10] 해당 테이블의 전체 레코드 수 반환
Select Count(*) From Memos
Select Count(*) As [
전체레코드수] From Memos
-- 
카운트 결과 값을 '전체레코드수'라는 별칭으로 조회하고자할 때 AS구문 사용.

 

-- 전세계 유일한 문자열 값을 출력시켜주는 함수.
Select newid()
-- 
각 사용자별로 서로 다른 어떤값을 부여해주고자할 떄 newid()라는 내장함수를 사용할 수 있는데 이를 통하면 절대로 똑 같은 값이 나오지않는 문자열을 만들어 낼 수 있다.

 

Insert

행의 삽입 - INSERT

형식

  INSERT [INTO]

    {table_name | view_name}[(column_list)]

  {VALUES | values_list | select_statement}

  - INSERT 

행을 삽입할 테이블 또는 뷰를 지정한다.

전체 행이 아닌 특정 컬럼들을 지정하는 컬럼 리스트를 사용할 수 있다

  - VALUES

삽입할 데이터를 지정한다.

모든 자료형들은 각각의 입력 형식을 가진다

  VALUES('123-45-6789', 'Chen', 'Sue', '900 555-1221',

  '214 Main St. ' , 'Kent' , 'WA' , '98000', 0)

 

디폴트 옵션

DEFAULT VALUES

  INSERT table_name DEFAULT VALUES

  - 모든 컬럼에 대해 디폴트 값을 가지는 행을 삽입한다.

DEFAULT

  INSERT table_name

       VALUES( ..., DEFAULT, .....)

  - 지정된 컬럼에 디폴트 값을 삽입한다.

  - 변수가 values_list에 나타날 수 있다.

 

고려사항

해당 컬럼에 대한 디폴트나 사용자정의 자료형에 대한 디폴트 값이 존재하는 경우에 그 값이 삽입된다.

컬럼이 IDENTITY 속성을 가지거나 timestamp자료형인 경우에는 적절한 값이 삽입된다.

- DEFAULT의 경우에는 IDENTITY속성을 가지는 컬럼에 대해서는 유효하지 않다.

컬럼에 디폴트가 없고 NULL이 허용되는 경우에는 NULL 이 삽입된다.

컬럼에 디폴트가 없고 NULL이 허용되지 않는 경우에는 에러를 반환하고 INSERT는 실패한다.

 

 

부분 데이터의 삽입

NULL이나 디폴트 값을 허용하는 컬럼에 대해서는 데이터를 지정하지 않을 수 있다.

INSERT [INTO]

  [table_name | view_name} (column_list)

  {VALUES | vlaues_list | select_statement}

- INSERT 절에 컬럼 이름을 명시한다.

- VALUES 절의 값들은 각각 column_list의 컬럼들에 대응된다.

열거 되지 않은 컬럼들에 대해서는 DEAFULT와 같이 처리된다.


 

INSERT publishers (pub_id, pub_name)
VALUES ('9975', 'Unbound Press')

SELECT * FROM publishers
WHERE pub_name = 'Unbound Press'

 
 

 

SELECT를 사용한 행의 삽입

SELECT 문을 사용하여 하나 이상의 다른 테이블로부터 이미 존재하는 테이블로 행을 삽입할 수 있다.

        INSERT table_name

                SELECT column_list

                FROM table_list

                WHERE search_conditions

 

고려사항

같은 테이블에서도 가능하다.

삽입할 테이블과 SELECT 결과 집합은 컬럼의 개수컬럼의 순서자료형 등에 호환성이 있어야 한다.

  - 완전히 같은 자료형이거나 SQL서버가 자동적으로 호환성이        있도록 변화 할 수 있는자료형이어야 한다.

- INSERT만을 사용하는 경우와는 달리 한번에 여러 행을 삽입한다.

생략된 컬럼에 대해서는 해당 컬럼에 디폴트가 존재하는지 또는 NULL이 허용되는지를 확인해야 한다.

 

저장 프로시져를 사용한 삽입

저장 프로시져에 의해 반환되는 결과 값을 사용하여 테이블을 조작할 수 있다.

        INSERT [INTO] table_name

        EXECUTE {procedure_name | @procedure_name_var}

        [[@parameter_name=]{value|@variable [OUTPUT]|DEFAULT }

        {,[@parameter_name=]{value|@variable[OUTPUT]|DEFAULT}]...]

        - 저장 프로시져는 로컬 또는 원격 시스템에 있을 수 있다.

        - 결과 정보를 로컬 테이블에 저장하는데 주로 이용한다.

       

고려사항

        - 삽입할 테이블은 반드시 미리 생성 되어 있어야 한다.

        - 테이블에는 저장 프로시져 내의 SELECT 문장에 의한 결과 데이터들이 삽입된다.

 - 저장 프로시져에서의 PRINT, RAISERROR, FETCH등의 결과는 테이블에 삽입되지 않는다.

- SELECT문의 결과로 반환되는 데이터들은 반드시 테이블의 컬럼들과 자료형이 일치해야 한다.

 

 

 

 

SELECT 문의 기본구성

    - SELECT

    - 검색할 컬럼들을 지정

    - FROM

    - 검색할 테이블을 지정

    - WHERE

    - 검색할 테이블 내의 행을 결정

    - WHERE절이 없는 경우에는 해당 테이블의 모든 행들을 검색한다.

 

 

SELECT select_list

        [INTO new_table_]

FROM table_source

        [WHERE search_condition]

        [GROUP BY group_by_expression]

        [HAVING search_condition]

        [ORDER BY order_expression [ASC | DESC] ]

// 참고 : [ ] = 생략가능 { } = 중복가능 | = 선택가능

Update

TABLE 내에 있는 한 개 이상의 열을 변경하기 위해 사용합니다.

사용법은 다음과 같습니다
.

UPDATE student
SET eng_score=85, kor_score=90 WHERE ename='
쎌리
';

student TABLE
의 쎌리학생의 성적을 변경시키는 명령문 입니다


그러니까 이런 구조

INSERT TABLE_NAME
SET ( COLUMN NAMES=VALUE ) WHERE ( 
조건 );

INSERT 
문에서는 WHERE 조건이 없는데

여기서는 사용할수 있습니다.
SQL
을 사용할 때 SELECT 다음으로 많이 사용하는 것이 UPDATE 


Delete

Delete 
TABLE 
내에 있는 한 개 이상의 열을 삭제하기 위해 사용합니다.
사용법은 다음과 같습니다
.
Delete FROM student WHERE ename='
쎌리
';
student TABLE
의 쎌리학생의 정보를 삭제해 버리네요~! 짤렸나보다
.
그러니까 이런 구조네요

Delete TABLE_NAME WHERE ( 
조건
 );
Delete 
문은 UPDATE 문 보다 더 쉽네요
~!
잘못 삭제했을 경우에는 ROLLBACK을 사용하면 되죠
~!
그리고 DML 문은 아니지만 Delete와 같이 DATA를 삭제할 수 있는 명령어가 있어요
.
TRUNCATE
가 바로 그것인데

어떤 TABLE 내의 모든 행을 삭제하고자 할 경우에는 Delete 문을 사용하는 것 보다는
 
TRUNCATE
문을 사용하는 것이 훨씬 효율적입니다
.

TRUNCATE TABLE student ;
TRUNCATE 
문은 삭제된 TABLE을 복구하는 것을 가정하지 않기 때문에
 
수행속도는 Delete 문보다 빠르지만한번 삭제가 되면 복구할 수 없는 단점이 있어요.

 

Connect

 

 

32. 데이터 윈도우 위에 Painter에서 데이터윈도우 Object 위에 배치할 수 있는 컨트롤Object Column Object 이다 Column Object는 데이터윈도우 Object 속의 Object

하여 일명 복합 Object(Composite Object)를 구성한다 Colunm Object의 기능에 대해서?

데이터베이스에서 기본적으로 가져온 칼럼 중 작업 영역에서 칼럼을 삭제 한 후 삭제된 칼럼을 다시 추가 하고자 할 경우 사용한다.

 

33.데이터윈도우 Paint에서 Column Object EDIT 탭에 있는 Style Type에는 크게 여섯가지가 있다 이들 각각의 대해서 유형별 사용법?

checkbox  체크여부 박스이며 체크 되면 Y N같은 값을 가질수 있다.

DropDownDW  여러 속성들을 묶어서 선택할수 있게 할 수 있다.

DropDownList  코드테이블 등의 자료를 처리하거나 다수의 정적인 코드를 사용자로부터 선택 하고자 할 때 사용한다.

EDIT MAKE-날짜나 특수한 형식의 나타낼 때 사용 한다.

RadioButtons여러 개 중에 하나만 선택할 수있게 버튼식으로 표현할수있다.

Inkedit-그림을 넣거나 텍스트를 입력할수있다.

 

34.Column Object Style Type  Edit 스타일에서 Limit , AutoSelection,  Display Only, ShowFocus Rectangle, Password, Required  Property들 각각에 대해서 정확한 사용법?

Limt- 칼럼 텍스트 박스에 입력할 문자의 길이를 나타낸다값이 0일 경우 길이에 제한 없이 입력할 수 있다.

Acceleator- 사용자가 특정한 단축키를 설정할 때 영문자 하나를 입력 하고 Alt+입력키를 선택했을 때 포커스를 컨트롤 내에 이동한다.

AutoSelection-선택된 칼럼을 돋보이게 한다만약 선택되지 않으면 필드에 포커스가 잡히지 않는다.

DisplayOnly-칼럼에 데이터의 출력만 한다.

ShowFocusRectangle-칼럼에 포커스가 잡힐 때 칼럼 주변에 흐린 사각형으로 표시된다.

Empty String is Null- 칼럼에 데이터를 입력하지 않으면 널 값으로 정의된다.

Password-데이터 입력시 애스테리크로(*)로 표기된다 그러므로 입력하는 데이터를 보여주지 않을 경우 사용한다.

Require-잘못된 데이터가 들어왔을 때 다른 컬럼으로 포커스가 이동 하지 않는다.

AutoHorz Scroll-입력되는 데이터가 칼럼 라인길이 보다 클 때 자동으로 수평 스크롤을 정의한다.

Auto vert Scroll- 입력되는 데이터가 칼럼 라인길이 보다 클 때 자동으로 다음 라인을 스크롤한다.

Horz Scroll bar-칼럼필드에 수평 스코롤바를 놓는다.

Vart Scroll bar-칼럼필드에 수직 스크롤바를 놓는다.

Use Code Table-이것을 선택하면 하단에 CODE를 입력할 수 있는 항목이 나타나며, Column항목이 코드값으로 구성되어 있으면 이 항목을 선택하여 코드를 정의한다. Display value 항목에는 화면에 보여주는 데이터를 입력하고 정의된 값을 입력하면 datavalue 에는

내부적으로 처리되는 코드값을 정의한다.

 

35.Column Object  Style Type  EditMask 스타일에서 Mask설정법?

이항목은 사용자가 열에 데이터를 입력할 때 특수 문자를 사용하여 일정한 포맷으로 자료를 편집하여 입력한다예들들면 필드에 에디트 마스크로 ##.###을 선언했으면 파워빌더는 입력을 숫자만 허용하고천단취로,을 표시하는 숫자만을 입력할 수있다.

Mask  필드형식을 설정 하는 항목이다예들 들어 전화번호는 (###)###-####형식으로 될 것이다.

!대문자 하나를 지정한다

^소문자 하나를 지정한다.

# 숫자혹은 숫자형 문자

A알파벳 문자

X모든 문자

 

36. Column Object  Style Type EditMask스타일에서 Auto Skip Property의 기능?

.AutoSkip-정해진 마스크에 값이 채워졌을 때 포커스가 자동으로 다음 탭의 순서로 이동한다.

 

37.Column objectstyle type  DropDownDataWindow 스타일에서 Allow Editng Always Show list Always Show Arrow, lines in DropDown  Property들의 사용법?

Allow Editing-사용자에게 여러 선택 값을 물을 때또는 사용자에게 자신의 값을 직접 입력하게 할 때 사용한다만약 이를 선택하지 않으면 리스트 상자에 있는 값만 사용할 수있다.

Sorted-이 항목을 선택하면 오름 차순으로 값을 보여준다.

Always ShowList  이항목을 선택하면 항상 리스트 박스가 나타난다.만약 선택하지 않으면 열에 포커스가 잡힐 때 열의 리스트 박스가 드롭 다운 될 것이다.

AlwayShowArrow-이 항목을 선탯하면 언제나 리스트 박스를 여는 화살표를 보여준다만약 선택되지 않으면 칼럼에 포커스가 잡힐 때만 화살표가 나타난다.

Dispay  Value,Data value : 화면상에 출력되는 값과 실제로 저장되는 값을 입력한다.

 

38.Column Object Style Type RadioButtons 스타일에서 Column Across Property 

기능에 대해서?

엇갈려 나타나는 열의 수를 정한다.

 

39.데이터윈도우 painter에서 데이터윈도우 Object의 밴드(bend)Property중에서 AutoSize Height기능이란?

자동으로 높이를 맞춘다.

 

40.데이터윈도우에 배치되는 컨트롤이나 Object Teb Order를 지정하여 탭 키를 지정된 순서로 이동하는 방법?

페인트바에서 텝오더를 클릭하면 컨트롤 이나 Object에 빨간색 숫자가 나오는데 그숫자가 작을수록 먼저 선택된다.먼저가야할 곳은 작은 순으로 정리하면된다.

 

41.데이터윈도우 Painter를 사용하여 데이터윈도우의 내용을 정렬(sort)하거나 필터(filter)하는 방법은?

데이터윈도우 오브젝트에서 데이터베이스로부터 검색된 데이터를 소트하려면 Sql Select문에 order by절을 사용한다이렇게 하면 DBMS자체가 소트하여 파워빌더에게 이미 정렬된 로우가 전달된다그러나 DBMS서버의 부하를 줄이거나 SELECT문에서는 사용하지 않고 클라이언트의 파워빌더내에서 정렬 하기를 희망할 것이다이때는 Sort Column을 이용한다.

소트할 컬럼을 Source Data에서 마우스로 선택하여 컬럼 박스로 드래그하고 오름차순으로 소트할 것인지 내림차순으로 소트할 것인지 칼럼의 오른쪽에 있는 체크박스를 지정한다여러 개의 칼럼을 선택할 경우 컬럼의 직접 없고,약간의 연산을 수행하고 난 뒤에 정렬하고 싶은 경우에는 오른쪽에 가져온 소트 키를 더블클릭하여 Modify Expression화면을 열고

직접 식을 입력한다. Setsort() Sort()함수를 이용하여스크립트 내에서 이용할 수 있는데

Setsort()함수는 정렬할 내용을 정의하고 sort()함수는 실제 정렬 작업을 한다.

예를 들어 칼럼을 부서 (dept_id),이름(name)순으로 정렬한다면 다음 2가지중 하나로 작업을 하면 된다.

Setsort(dept_id A,name A)

Setsort(dept_id A, 2A)

칼럼명으로 정렬을 할 경우에는 칼럼과 정렬방법 사이에 공간을 두고 ID index로 정렬할 경우에는 붙여서 사용한다.

Filter-sort와같이 데이터윈도우 버퍼에 있는 내용의 자료를 필터 기능을 사용해서 버퍼의 자료중 일부만을 보여 주고자 할 때 사용된다여기서는 다음 그림과 같이 Specify Filter항목에 원하는 조건을 기술하면 조건에 맞는 데이터는 프라이머리 버퍼에 위치하고 조건에 맞지 않는 데이터는 필터 버퍼에 위치한다그리고 새로운 조건을 주면 그조건에 의해 다시 버퍼의 배열이 이루어진다필터에서도 소트와 같이 Setfilter() filter()함수를 이용하여 스크립트내에서 사용할 수 있다. 3가지 타입으로 조건의 예를 들면 아래와 같으며

문자칼럼명 = 길동

숫자칼럼명 =<5000

날짜칼럼명 <date(2001.8/16)

문자는 양쪽에 따옴표를 붙여주고날짜형일 경우는 date() 함수를 사용해서 타입을 바꾸어주어야 한다.

 

42.데이터윈도우 Painter Rows Menu에서 Retrieve Options Rows As Needed Rows to disk Menu항목의 사용법?

Rows As Needed  한번에 데이터베이스에서 너무 많은 데이터를 가져올 경우 발생되는 시간을 줄이기 위하여 일단 검색되어진 약간의 데이터를 먼저 Retrieve하고 사용자의 요구가 있는 경우 다시 조금씩 Retrieve하고자 할 때 사용한다이 기능은 데이터가 매우 많을 것으로 예상되는 데이터윈도우에 보통 사용되지만 몇몇 다음과 같은 제약이 있다1sort()기능이나 sum,Avg와 같은 기능을 사용할 수 없다이 것은 모든 로우를 Retrieve해야만 구현이 간으하기 때문이다. 2여러 사용자가 공유하는 테이블인 경우에 Rows as Needed 기능을 사용할 수없다이것은 그 동안 테이블은 다름 사람에게 접근 금지가 된다필요 하면 윈도우의 스크립트 내에서 옵션을 변경할 수 있다.

Dw_1.modify(datawindow.retrieve.asneeded=no)

 

Rows to disk- 데이터윈도우가 많은 양의 데이터를 갖고 올 것으로 예상되는 경우 메모리에 읽어온 데이터를 저장하는 것이 아니라 임시 파일에 읽어온 데이터를 저장하여 Swap을 통하여 데이터윈도우에 보여질 데이터를 임시파일에서 교환하도록 한다이기능을 사용하면 속도는 조금 떨어지짖만 사용 메모리를 극대화함으로써 부가적인 성능향상을 꾀할 수있다.

 

43.데이터윈도우 Object update가 되도록 하려면 update property를 지정해 주어야 한다.

Update Properties 설정 다이얼로그 박스의 사용법?

데이터윈도우를 만들어 데이터베이스에 보낼 SQL문장의 기초적인 내용을 정의 하는것으로하나의 테이블만을 갖고 데이터 윈도우가 만들어 졌다면 모든 속성이 자동적으로 정의되나 선택된 테이블이 여러 개 이거나 기본키가 없는 경우에는 개발자가 직접 SQL문을 정의하여야 한다.

 

Allow Updates- 데이터윈도우의 버퍼에 입력 또는 수정된 자료의 저장을 허용할 것인지 결정한다단순한 조회의 기능으로  데이터윈도우를 작성한다면 선택할 필요가 없다.그러나 자료를 입력하고 수정 한다면 반드시 이 체크박스를 선택하고 테이블과 그안에 저장할 컬럼을 지정 해 주어야 한다.

 

Key column  Original Buffer의 키 값과 데이터베이스의 키 값을 비교 하여 두개의 값이 같으면 저장된다즉 사용자가 데이터를 클라이언트에 가져온 이후에 선택된 Row들의 키 값이 바뀌지 않았다면 update()함수는 성공할 것이다이 옵션을 사용할 때에는 주의해야 한다 파워빌더에게 Where절에 키 칼럼을 포함 시킬 것을 명령하면 다른 누군가가조회한 동일한 로우를 변경했을 경우  여러분이 데이터베이스를 갱신할 때에 그사람의 변경 내용은 갱신된다.단일 사용자 데이터베이스 또는 데이터베이스에 Lock을 걸어 놓은 경우에만 이 옵션을 사용한다.

 

Key and Update Column 두가지의 키 값과 update column에서 선택한 칼럼을 Original Buffer의 키 값과 DB의 키 값을 비교한 후에 두개의 값이 같으면 Update/Delete를 실행하고 그중 update column에서 선택한 컬럼이 하나라도 맞지 않으면 update/delete를 실행하지 않는다즉 로우가 조회된 후에 데이터베이스에 있는 어떤 칼럼이 다른 사용자가 먼저 자료를 수정하였다면 갱신은 실패한다.

 

Key and Modifyed column  키 값과 수정된 컬럼을 비교한 후에 저장을 한다즉 이옵션은 파워빌더가 update SQL문장을 만들 때 Where조건을 어떻게 만들 것인지를 결정해 주는 것이다.

위의 세가지 옵션은 데이터윈도우의 사용 목적과 기능들을 고려해서 선택해야 한다예로

한사람만이 해당 테이블을 사용한다면 처음의 Key Column을 선택하면 되고 여러 사람이 동시에 테이블을 사용한다면 반대로 Key Column을 사용해서는 안된다즉 데이터 무결성에 문제가 발생 되기 때문이다.

Key Modification Unique Key Column에서 선택된 컬럼의 값이 수정 되었을 때 즉 기본키 부분이 수정되었을 경우 어떻게 처리를 하는가를 경정 하는것으로 이옵션은 사용자로 하여금 키 값을 변경 하도록 허락하는 경우와 데이터베이스가 키의 변경을 수용해야만 이 옵션이 유효하다.

Use Delete then Insert 옵션은 데이터 윈도우에서 수정된 Row 를 파워빌더가 Delete문을 사용하여 지우고 다시insert문을 사용하여 자료를 입력 한다이 옶견을 사용함으로써 주목해야 하는 것은 Select문에 모든 컬럼을 넣아야 한다 그리고 데이터베이스의 모든 키 값이 바뀌게 되면 전체 Row들이 다시  삽입되어야한다.
Identity Column : 
테이블에 
automatic Incremental이 선택된 경우 정의하며 사용자가 입력하지 않아도 데이터가 저장되면서 자동으로 순차적인 값을 받게 된다.

 

44.데이터윈도우 painter를 사용하여 데이터윈도우 내용을 그룹(group) 짓는 방법?

특정한 칼럼으로 그룹을 만들어 데이터를 구현 할 때 사용 합니다 메뉴에서 새로운 그룹을 생성 하면 기본 4개의 밴드외에 header group , Trailer group 2개의 밴드가 추가되고,일반적으로 그룹으로 묶은 부분합 등의 내용들을 기술한다.

 

45.데이터윈도우의 네 가지 버퍼 Primary buffer, Filter buffer , Delete Buffer, Original buffrt의 사용법?

기본버퍼(Primary Buffer)-서버로부터 Retrieve된 데이터와 Insertrow()함수를 통하여 입력된 데이터가 이 버퍼에 저장되고사용자에 의해 변경된 데이터를 가지고 있다즉 현재 사용자가 보고 있는 Current한 버퍼라고 할 수있다.

 

필터버퍼(Filter Buffer)-filter()함수에 의해 걸러진 값 Filter 조건을 만족하지 않는 데이터를 포함하고 있다이때 filter조건을 만족하는 데이터는 Primary버퍼에 존제힌다.

 

삭제버퍼(Delete Buffer)- 데이터베이스에서 아직 삭제되지 않았지만 데이터윈도우에서 삭제된 데이터를 포함한다.데이터는 Deleterow()함수로 Primary 버퍼에서 삭제된 자료를 가진 버퍼이다.

 

Original Buffer-한 칼럼의 데이터를 변경 하여도 database로부터 초기에 Retrieve된 값을 가지고 있는 것이 원본(Original)버퍼이다.즉 수정되기 이전의 데이터나 update()함수에 의해 저장에 성공한 이후의 값을 가진 버퍼이다.사용자가 조회된 데이터를 수정하거나 삭제 추가 등의 작업을 하면 이런 일련의 변화들을 데이터 윈도우 Control은 데이터윈도우 버퍼에 반영한다.그리고 스크립트에서 데이터윈도우 컨트롤에 대해 update()함수를 실행 하면 데이터베이스를 변경하기 위한 SQL을 생성 하여 DBMS로 보내진다.

 

46.데이터윈도우의 SetitemStatus() GetItemStatus()함수의 의미와 사용법?

SetItemStatus()-Row 또는 Column의 수정 상태를 변경한다.수정상태는 update함수가 row에 관하여 생성하게될SQL문장의 타입을 결정한다.

Dwcontrol.SetItemStatus( Row,Column,dwbuffer,status)

GetItemStatus()-Row또는 Row내의 칼럼에 대한 수정 상태를 나타낸다수정상태는 update함수가 row또는Column에 관하여 생성할 SQL문장의 타입을 결정한다.

Dwcontrol.GetItemStatus( row,column,dwbuffer)

 

47.데이터윈도우의 Object에서 또는 데이터윈도우 컨트를에서 아이템 컨트롤에 있는 값을 얻어내는 함수  GETTEXT()애 대해서?

현재칼럼에 있는 텍스트 값을 구한다.

 

48.External데이터윈도우의 사용법?

데이터윈도우 오브젝트를 구현할 때 데이터베이스에서 데이터를 엑세스 하지 않고 사용자가 임의로 테이블과 같은 형식의 데이터를 이용하고자 할 때 External소스를 사용하며 이 External소스는 사용자가 직접 원하는 데이터의 칼럼과 타입을 지정하고 이를 마치 데이터베이스 내의 테이블처럼 취급할 수 있다.우리가 개발하는 데이터윈도우 오브젝트의 대부분은 데이터베이스에 있는 테이블과 연결하여 만들지만 직접 테이블과 연결될 필요가 없는 데이터 윈도우가 있다예를 들면 데이터를 사용자에게 보여주고 더 이상의 테이블과 연결이 필요 없는 경우 (readonly로 조회만 하는경우)이다이렇게 데이터윈도우를 만들어 데이터를 저장하였다면 이 데이터 윈도우는 update Retrieve와 같은 데이터윈도우 컨트롤의 메소드를 사용할 수 없다 그러므로 External데이터윈도우를 이용하는 것은 단순한report용이나 조회용으로 사용된다그러므로 데이터를 가지고 와서 사용자에게 보여주고 더 이상의 Network Traffic이 일어나지 않도록 하고 실제 데이테베이스에는 변경 없이 데이터를 조작하고자 할 때 Extenal Source를 사용한다.

 

49.Open()함수의 패러매터로 구조체를 넘기는 방법?

Open()함수는 윈도우와 연관된 컨트롤을 불러와서 화면에 나타내는데 사용한다.윈도우의 컨트롤과 속성함수,변수는 윈도우가 열리기 전까지 접근할 수가 없다. Open()함수를 이용하여 윈도우를 여는데 다음과 같이 여러 방법들이 있다.

Posted by SITD
, |
Accelerator Key(액셀레이터 키)
- 파워빌더에서 컨트롤이나 메뉴 아이템을 선택할 때 ALT키와 함께 사용하는 키를 말합니다. 윈도우즈 3.1과 윈도우즈 95에서는 니모닉 액세스 캐릭터즈(Mnemonic Access Characters)라 부르고 모티프에서는 니모닉스(Mnemonics)라 부르며, 매킨토시에는 이러한 용어가 없습니다. Shortcut Key 참조

Access Key(액세스 키)
- Accelerator Key참조

ActiveX Control(액티브 X 컨트롤)
 - 윈도우 ActiveX 참조

Ancestor(앤시스터) 
- 한 클래스에 대해 기본적인 기능들이 정의되어 있는 오브젝트로서 여기에서 계승을 받아 디센던트(Descendant) 오브젝트를 만듭니다. 

Any(애니) 
- 현재 지정된 값의 데이터 타입을 받을 수 있는 데이터 타입으로 넘겨받는 데이터 타입에 따라 변경이되는 데이터 타입입니다. 

Application Framework(어플리케이션 프레임웍) 
- 서로 연관성이 있는 기본 클래스들의 집합으로 필요한  오브젝트를 계승 받을 수 있습니다.

Application Object(어플리케이션 오프젝트) 
- 윈도우, 메뉴, 함수, 혹은 데이터윈도우처럼 파워빌더 라이브러리에 저장되어 있는 하나의 오브젝트로서 어플리케이션이 시작되는 출발점입니다. 
  이 오브젝트는 어플리케이션에서 사용하는 라이브러리 이름이라든가 어플리케이션이 시작될 때와 종료될 때 해야 하는 작업의 내용, 폰트에 관한 사항 등 어플리케이션 전체에 관한 정보를 가지고 있습니다. 

Asynchronous Request(에이싱크러너스 리퀘스트, 비동기 요청)
- 분산 어플리케이션에서, 클라이언트에서 호출한 함수가 서버에서 나중에 처리되는 것을 말합니다.
  클라이언트가 서버에 비동기 요청을 한 후, 서버가 처리하는 동안 다른 작업을 할 수 있습니다.

Base Class Object(베이스 클래스 오브젝트)
- 서로 계승관계에 있는 오브젝트들을 트리 구조로 나타낼 때 제일 위쪽에 위치합니다.
  베이스 클래스 오브젝트는 주로 일반적인 기능을 가지고 있고, 각각의 디센던트 오브젝트는 필요에 따라 계승 받은 기능을 수정해서 사용합니다.
  파워오브젝트(PowerObject)가 모든 파워빌더 오브젝트의 베이스 클래스 오브젝트가 됩니다.

Blob(블랍)
- 데이터 타입으로서 범위가 정해져 있는 않은 데이터를 저장할 때 사용합니다.
   (예를 들어 바이너리, 이미지 혹은 라지 텍스트)

Boolean(불리언)
- 참이나 거짓을 갖는 데이터 타입

BreakPoint(브레이크 포인트)
- 파워빌더에서 어플리케이션을 디버거 모드에서 실행을 할 때 잠시 중단을 하는 시점을 정하는 위치입니다.
   예를 들면, 함수를 부르는 문장 바로 전에 브레이크포인트를 지정하면, 실행이 되다가 그 시점에서 잠시 실행을 멈춥니다. 브레이크포인트는 스톱이라고도 부릅니다.

Cascading Menu(캐스케이딩 메뉴)
- 드롭다운 메뉴 아이템을 선택했을 때 옆에 나타나는 메뉴로서 캐스케이딩 메뉴 안에 또 캐스케이딩 메뉴를 가질 수 있습니다.

Char(캐릭터)
 - 한 자리의 글자, 숫자 혹은 기호를 저장하는 기본적인 데이터 타입으로 캐릭터라 표기하기도 합니다.

Child Class(차일드 클래스)
- 페어런트(Parent) 클래스 안에 있는 클래스로 네스티드(Nested) 클래스라고도 부릅니다.
  Class 참조

Child DataWindow(차일드 데이터윈도우)
- DataWindow Child 참조

Child Window(차일드 윈도우)
- 페어런트 윈도우(메인 윈도우)에 종속되어 있는 윈도우로서 페어런트 윈도우 영역 안에서만 존재 할 수 있습니다.
  차일드 윈도우의 위치는 페어런트 윈도우에 상대적입니다.
  차일드 윈도우를 페어런트 윈도우 밖으로 이동하면 페어런트 윈도우 안에 있는 부분만 보이고 페어런트 윈도우 밖으로 나간 부분은 화면이 잘립니다.
  페어런트 윈도우를 이동하면 차일드 윈도우는 상대적 위치를 유지하며 같이 이동됩니다.
  차일드 윈도우를 최소화 하면 페어런트 윈도우 안에 아이콘으로 나타납니다.

Class(클래스)
- 특정 오브젝트 타입에 대한 정의로서 그 오브젝트의 프로퍼티(Property), 이벤트, 함수, 스트럭쳐 그리고 스크립트 등을 정의합니다.
  한 클래스에 속해 있는 모든 인스턴스(Instance)는 그 형태와 기능에 있어서 동일하지만 변수 값, 프로퍼티 등 데이터는 각기 다릅니다.

Class Hierarchy(클래스 하이러키)
- 트리 구조로 표현된 클래스들 간의 관계 베이스 클래스는 한 개이지만 계승받는 클래스들의 숫자는 제한이 없습니다.

Class Library(클래스 라이브러리)
- 재사용이 가능하고 확장할 수 있는 클래스들의 집합으로 파워빌더에서는 클래스를 오브젝트라고 부릅니다.(예를 들어 윈도우 오브젝트, 메뉴 오브젝트 등)

Class User Object(클래스 유저 오브젝트)
- 유저 오브젝트 페인터를 통해서 만드는 오브젝트로서 보이지 않는 오브젝트로 클래스 유저 오브젝트를 사용하기 위해서는 스크립트 내에서 그 오브젝트의 인스턴스를 만들어서 안에 정의되어 있는 함수를 호출합니다.
  주로 비즈니스 룰이나 한 개의 단위로 작업해야 할 내용들을 정의하기 위해 클래서 유저 오브젝트를 사용합니다.
  클래스 유저 오브젝트에는 2가지 종류가 있습니다. 스탠더드(Standard)와 커스텀(Custom) 클래스 유저 오브젝트

Code Table(코드 테이블)
- 에디트 스타일에 사용할 테이블로서 디스플레이 값과 데이터 값을 갖습니다.
  디스플레이 값은 사용자가 보는 값이고 데이터 값은 데이터베이스에 저장되어 있는 값입니다.

Composite Report(컴퍼지트 리포트, 복합 보고서)
- 한 개 이상의 중첩 리포트로 구성됩니다.
  데이터 소스를 갖지 않으며 다른 리포트의 저장소로만 작용합니다.

Computed Field(컴퓨티드 필드, 계산 필드)
- 데이터 윈도우, 리포트 혹은 폼에 만들어진 필드로서 실행 중 클라이언트에서 계산된 값을 나타낼 때 사용됩니다.
  컬럼, 상수, 함수, 연산자 등을 사용해서 계산할 수 있습니다.
  예를 들어, 봉급과 상여금 컬럼을 가지고 있는 데이터윈도우에 봉급 + 상여금 값을 갖는 필드를 만들 수 있습니다.

Connection Object(커넥션 오브젝트)
- 분산 어플리케이션에서 클라이언트와 서버간에 커넥션을 설정하기 위해 필요한 오브젝트로 클라이언트 쪽에서 만들어지며, 서버에 관한 정보를 가지고 있습니다.

Context Object(컨텍스트 오브젝트)
- 파워빌더 오브젝트의 일종으로 어플리케이션이 특정 서버의 서비스를 참조할 때 사용되는 오브젝트입니다.

Control(컨트롤)
- 그래픽 오브젝트로서 윈도우 디자인을 향상시키고 사용자와 어플리케이션 간에 인터페이스가 됩니다.
  컨트롤도 이벤트를 가질 수 있어서 스크립트를 트리거(Trigger) 시키거나 함수를 호출할 수 있습니다.

Cursor Type(커서타입)
- 화면에 나타난 커서의 모양을 말합니다.

Custom Class User Object(커스텀 클래스 유저 오브젝트)
- 사용자가 프로퍼티나 함수들을 정의한, 보이지 않는 클래스 유저 오브젝트로 비즈니스 룰 등과 같이 보이지 않는, 한 단위로 처리해야 할 작업등을 정의할 때 사용합니다.
  파워빌더와 논비주얼 오브젝트 시스템 오브젝트로부터 계승받아 만들어 갑니다.

Custom Visual User Object(커스텀 비주얼 유저 오브젝트)
- 한 개 이상의 컨트롤로 이루어진 유저 오브젝트입니다.
  예를 들어 자주 함께 사용되는 컨트롤들을 유저 오브젝트로 만들어서 스크립트까지 작성해 놓으면 다음에 반복 작업 없이 쉽게 사용할 수 있습니다.

Database Interface(데이터베이스 인터페이스)
- 파워빌더에서 데이터베이스에 연결하는 인터페이스를 말하며 두 가지 방법으로 연결할 수 있습니다.
  파워소프트 ODBC 인터페이스를 통해서 연결하거나 파워소프트에서 제공하는 다이렉트 데이터베이스 인터페이스를 통해서 연결할 수 있습니다.

Database Profile(데이터베이스 프로파일)
- 파워빌더나 개발 환경에서 특정 데이터베이스에 연결할 때 필요한 정보들로서 PB.INI나 IM.INI파일에 저장되어 있는 파라미터들을 말합니다.

Data Source(데이터 소스)
- 데이터 윈도우 오브젝트에 가져올 데이터 소스로 어떤 경우에는 데이터를 선택하는 방법이 되기도 합니다.
  보통 윈도우 페인터에서 지정할 수 있으며 5가지 유형이 있습니다.
  Quick Select, SQL Select, Query, External, Stored Procedure

DataStore(데이터스토어)
- 스크립트를 통해서만 조정할 수 있는 보이지 않는 데이터윈도우입니다.

Data Type(데이터타입)
- 파워스크립트는 인티저나 스트링과 같은 스탠더드 데이터 타입, 윈도우 등과 같은 시스템 오브젝트 데이터 타입 외에도 정렬같은 이뉴머레이티드(Enumerated) 데이터 타입이 있습니다.
  각 DBMS마다 파워빌더 데이터 타입과 대응되는 데이터 타입이 있지만 정확하게 1 대 1 대응이 된다고는 할 수 없습니다.

Data Value(데이터 벨류)
- 데이터베이스에 저장되어 있는 값을 지칭합니다.
  Display Value 참조.

DataWindow Child(데이터윈도우 차일드)
- 데이터윈도우 오브젝트 안에 있는 드롭다운 데이터윈도우입니다.

DataWindow Control(데이터윈도우 컨트롤)
- 윈도우나 커스텀 유저 오브젝트에 올려 놓는 컨트롤로 데이터윈도우 페인터에서 작성한 데이터윈도우 오브젝트가 지정됩니다.

DataWindow Object(데이터윈도우 오브젝트)
- 관계형 데이터베이스나 혹은 비관계형 데이터베이스(엑셀, 디베이스 파일 등)에 있는 데이터를 가져오고 보여주고 조작할 수 있도록 만들어진 오브젝트로 데이터윈도우 오브젝트는 사용자가 SQL문장을 사용하지 않고도 데이터베이스에 있는 데이터를 볼 수 있고 수정할 수 있도록 합니다.

DataWindow Plug-in(데이터윈도우 플러그-인)
- 웹 브라우저에서 파워빌더 리포트 파일을 볼 수 있게 하는 기능입니다.

Date(데이트)
- 스탠더드 데이터 타입으로 날짜를 나타낼 때 yyyy-mm-dd형태로 나타냅니다. 
  yyyy : 1000~3000까지의 숫자로 연도를 나타내며,
  mm : 01~12까지의 숫자로 월을 나타내고,  
  dd : 01~31까지의 숫자로 일을 나타냅니다.

DateTime(데이트타임)
- 스탠더드 데이터 타입으로 데이트와 타입으로 이루어집니다.
  데이터베이스로부터 데이트타임 타입의 값을 읽고 쓰는데만 사용됩니다. 

DBMS(DataBase Management System)
- 데이터베이스 메지니먼트 시스템. 데이터베이스 관리에 필요한 소프트웨어입니다.

DDE(Dynamic Data Exchange)
- 다이나믹 데이터 익스체인지. 윈도우즈 어플리케이션 간에 데이터를 교환하는 프로시져로 윈도우즈 표준에 따릅니다.

Debug Mode(디버그 모드)
- 어플리케이션 실행 모드로서 에러를 찾기 위해 브레이크포인트를 삽입할 수 있고, 스크립트를 한줄 씩 진행하면서 변수의 값들을 볼 수 있습니다.

Decimal(데시멀)
- 스탠더드 데이터 타입으로 18자리까지의 소수를 표시합니다.
  소수점은 18자리 중 어느 위치에 있어도 관계없으며 자리 수로 계산되지 않습니다.
  줄여서  DEC로 표기하기도 합니다. 

Declaration(디클러레이션) 
- 변수나 함수의 선언을 말합니다.

Descendant(디센던트)
- 앤시스터 오브젝트로부터 모든 기능(프로퍼티, 변수들, 함수, 이벤트 스크립트)을 계승받은 디센던트 오브젝트.

Display Case(디스플레이 케이스)
- 영문의 경우 캐릭터 타입의 데이터를 나타낼 때 대문자, 소문자 혹은 대소문자를 혼합해서 사용할 수 있습니다.
  기본적인 제공은 Any로 입력된 형태 그대로 보여집니다.

Display Format(디스플레이 포맷)
- 데이터가 보여지는 형태, 예를 들어 화폐를 나타낼 때 앞에 달러 표시를 붙여서 보여준다거나 음수 값을 나타낼 때 색깔을 달리해서 보여줄 수 있습니다.
  파워빌더에는 미리 제공되는 여러 가지 디스플레이 포맷이 있고 사용자가 정의해서 사용할 수도 있습니다.

Display Value(디스플레이 벨류) 
- 사용자가 보는 값으로 코드 테이블에 지정된 데이터 값과 대응됩니다.

Distributed Computing(디스트리뷰트 컴퓨팅, 분산 컴퓨팅)
- 클라이언트/서버 환경에서 어플리케이션을 작성하거나 실행 시킬 때:
 * 비즈니스 로직을 서버에서 관리할 수 있고,
 * 어플리케이션 기능을 클라이언트와 서버로 나눌 수 있어서 클라이언트 쪽의 부담을 줄일 수 있습니다.
 * 어플리케이션을 쉽게 확장 할 수 있고 관리할 수 있습니다.
  이러한 분산 컴퓨팅은 비즈니스 로직과 사용자 인터페이스를 분리할 수 있는 자연스런 방법을 제공합니다.
  분산 어플리케이션에서는 클라이언트에서 서버에 있는 오브젝트가 제공하는 서비스를 호출 할 수 있습니다.
  마치 로컬 오브젝트에 정의되어 있는 함수나 이벤트처럼 서버에 있는 오브젝트에 정의되어 있는 함수나 이벤트를 클라이언트 쪽에서 호출해서 사용할 수 있습니다. 

DDL(다이나믹 링크 라이브러리)
- 다이나믹 링크 라이브러리. 필요에 따라 자동적으로 메모리에 올리거나 내리는 라이브러리 입니다.
  여러 개의 윈도우 어플리케이션에서 공통으로 사용할 수 있어서 메모리를 효과적으로 사용할 수 있습니다.

Dot Notation(도트 노테이션, 도트표기)
 - 오브젝트나 컨트롤에 정의되어 있는 함수를 호출하거나 속성값을 구하기 위해 다음과 같이 표기합니다.
  Object.Funtion
  Object.property
  페어런트 오브젝트나 프로퍼티 등을 표시하면 더욱 복잘해 질 수 있습니다. 

Double(더블)
- 소수를 나타낼 수 있는 스탠더드 데이터 타입으로 소수점 이하 15자리까지 표시할 수 있으며, 2.2E-308부터 1.7E+308까지 표기할 수 있습니다.

Drawing Obejct(드로잉 오브젝트)
- 이벤트를 가지지 않는 컨트롤. 4개가 있습니다. 라인, 원, 사각, 타원

Drop Area(드롭 에어리어)
- 드래그 모드에 있는 오브젝트가 드롭될 수 있는 범위입니다.

DropDown Menu(드롭다운 메뉴)
- 메뉴바에 있는 메뉴 아이템을 선택했을 때 리스트가 아래쪽으로 나타납니다.

Drop Lines(드롭 라인즈) 
- 그래프에서 축과 데이터 값을 연결해주는 선을 말합니다.

Dynamic Linking(다이나믹 링킹)
- 어플리케이션이 함수가 필요할 시점에 실행모듈에는 존재하지 않는 함수를 DLL에서 호출하여 사용하는 방식입니다.

Dynamic Link Library(다이나믹 링킹 라이브러리)
- DLL 참조

Dynamic Lookup(다이나믹 룩업)
- 앤시스터에서 존재하지 않는 함수나 이벤트를 디센던트에서 찾도록 하는 방식입니다.

Edit Mask(에디트 마스크)
- 입력된 값을 검증할 수 있는 포맷이나 컨트롤로 데이터의 디스플레이 형태를 조정합니다.

Edit Style(에디트 스타일)
- 데이터윈도우, 리포트, 폼 등에서 컬럼의 데이터가 보여지는 형태입니다.
  파워빌더 리파지토리에 재사용할 수 있는 형태로 저장되어 있습니다.
  데이터 타입이 맞는다면 데이터베이스나 테이블에 관계없이 사용할 수 있습니다.
  데이터윈도우에서도 지정할 수 있지만 데이터윈도우에서 지정하면 재사용이 불가능합니다.

Encapsulation(인캡슐레이션)
- 연관성이 있는 데이터와 프로시저를 함께 묶어서 생각하는 방법으로 인캡슐레이션을 통해서 오브젝트는 데이터와 그 데이터를 다루는 방법(이벤트와 함수들)을 포함합니다.

Enumerated Data Type(이뉴머레이트 데이터 타입)
- 특정 프로퍼티에 대한 값들을 정의하는 데이터 타입으로 뒤에 느낌표를 붙여서 사용합니다.
  예를 들어 정렬은 왼쪽(Left!), 오른쪽(Right!), 중앙(center!) 등의 값을 갖습니다.

Event(이벤트)
- 오브젝트나 컨트롤에 정의되어 있어서 스트립트를 트리거 시킵니다.
  이벤트는 사용자의 마우스 클릭이나 데이터의 입력 등에 의해서 트리거되거나 스크립트 문장이 수행되면서 발생합니다.

Exe File(이엑스이 파일)
- 실행파일. 파워빌더 어플리케이션을 사용자에게 나누어 줄 수 있는 파일 형태입니다.

Export Name(엑스포트 네임)
- 라이브러리 엔트리를 도스 파일로 전환 시킬 때 라이브러리 페인터에서 지정해주고 기본적으로 제공해주는 파일명으로 파일명의 확장자는 SRx입니다.
  x는 엔트리의 종류를 나타냅니다.
  예를 들어 윈도우의 경우는 확장자가 SRW가 되고 데이터윈도우의 경우는 확장자가 SRD가 됩니다.

Expression(익스프레션)
- 변수, 상수, 연산자, 함수 등의 조합으로 데이터 타입과 값을 갖습니다.
  일반적으로 함수의 인수나 지정문의 오른쪽에 사용해서 상수 값 대신 사용할 수 있습니다.

Extended Attributes(익스텐디드 애트리뷰트)
- 데이터베이스 컬럼의 확장된 정보로 디스플레이 포맷, 에디트 스타일, 컬럼의 넓이 높이 등을 포함합니다.
  데이터베이스 페인터나 테이블 페인터에서 정의할 수 있고 데이터베이스 안에 파워빌더 시스템 테이블에 저장됩니다.
  파워빌더에서 새로운 데이터윈도우나 리포트, 폼 등을 만들 때 이러한 확장 애트리뷰트를 기본값으로 사용합니다.

External Visual User Object(엑스터널 비주얼 유저 오브젝트)
- 사용자가 정의한 오브젝트로서 파워빌더 밖에서 만들어진 컨트롤(윈도우 시스템)을 포함한 오브젝트입니다.

Floating Toolbar(플로팅 툴바)
- 파워빌더에서는 툴바의 위치를 조정할 수 있고 화면의 좌우상하 뿐만 아니라 페인터 작업 영역이나 윈도우 위에도 디스플레이 시킬 수 있습니다.
  이렇게 페인터 작업 영역 위에 혹은 윈도우 위에 디스플레이 되는 툴바를 플로팅 툴바라 합니다.

Focus(포커스)
- 현재 키보드로부터 입력받을 수 있는 상태의 컨트롤이나 컬럼, 그래픽 오브젝트를 가리킵니다.
  드롭다운리스트박스나 리스트박스가 포커스를 가지면 첫번쨰 아이템에 점선 박스가 나타납니다.
  데이터윈도우 오브젝트의 컬럼이 포커스를 가지면 그 컬럼의 첫번째 행에 점선의 박스가 나타납니다.

Foreign Key(포링키)
- 다른 테이블의 프라이머리 키 값을 갖는 컬럼으로 포린 키로 연결되어 있는 테이블에 대응되는 값이 반드시 있어야 합니다.

Form(폼)
- 데이터베이스에 데이터를 입력하고 수정할 때 사용되는 전자문서형태입니다. 데이터베이스에 있는 데이터를 디스플레이 하기도 하고, 있는 데이터를 삭제하거나 수정할 수도 있습니다.
  아무것도 없는 폼을 사용해서 데이터를 입력할 수도 있습니다.

Function(펑션, 함수)
- 파워빌더에는 여러가지 함수가 내장되어 있고 사용자가 정의해서 사용할 수도 있습니다.
  객체지향 프로그램에서는 함수를 메소드라 부릅니다.

Garbage Collection(가비지 콜렉션)
- 파워빌더에서 실행 중, 필요 없어진 오브젝트를 표시하고 메모리에서 그 오브젝트를 제거하고 다시 메모리를 요구하는 기능입니다.

Global Function(글로벌 펑션, 전역함수)
- 사용자가 정의한 함수로 특정 오브젝트에 포함되어 있는 함수가 아니고 어플리케이션 어디에서도 호출할 수 있는 함수입니다.
  글로벌 펑션은 스트링을 다루는 함수 등과 같은 파워빌더의 빌트-인(Built-in)함수와 대응됩니다.

Global Structure(글로벌 스트럭처, 전역 구조체)
- 사용자가 정의한 구조체로 특정 오브젝트에 포함되어 있는 구조체가 아니고 어플리케이션 어디에서도 참조할 수 있습니다.

Global Variable(글로벌 베리어벌, 전역변수)
- 어플리케이션의 어디에서나 사용할 수 있는 변수입니다.

Graph(그래프)
- 파워빌더에서는 두 가지 방법으로 그래프를 작성할 수 있습니다.
  유저 오브젝트나 윈도우 위에 그래프 컨트롤을 올려놓고 데이터를 넣을 수 있고, 또 한가지 방법은 데이터윈도우 안에 그래프 오브젝트를 작성하면 데이터 윈도우에 조회된 데이터를 사용하게 됩니다.

Inheritance(인헤리턴스, 상속)
- 윈도우나 메뉴, 유저 오브젝트를 작성할 때 기존에 있는 오브젝트로부터 게승을 받아 만들 수가 있습니다.
  계승을 받아 작성하면 아래와 같이 몇 가지의 장점이 있습니다.
 * 앤시스터 오브젝트를 수정하면 변경된 사항이 디센던트 오브젝트에 자동적으로 반영됩니다.
 * 디센던트는 앤시스터의 스크립트을 계승받습니다.
 * 스크립트 코드와 오브젝트에 통일성, 일관성을 줄 수 있습니다.
 
INI File(아이앤아이 파일)
- 개발 환경의 초기값들을 저장하고 있는 파일입니다.

Instantiate(인스턴시에이트)
- 객체 지향 프로그램에서 클래스에 속한 한 개의 오브젝트(인스턴스)를 생성하는 과정입니다.

Library(라이브러리)
- 파워빌더에서 작성된 오브젝트를 저장하는 도스파일로 확장자가 PBL입니다.
  오브젝트의 소스코드와 컴파일된 바이너리 코드로 구성됩니다.
  파워빌더에서는 다음과 같은 오브젝트를 파워빌더 라이브러리에 저장합니다.
  어플리케이션, 파이프라인, 리포트, 데이터윈도우, 프로젝트, 스트럭쳐, 폼, 프락시, 유저 오브젝트, 함수, 쿼리, 윈도우, 메뉴 등
  PBL 파일 참조

Machine Code(머쉰 코드)
- 플랫폼 특정 언어로 P 코드에 비교하여 빠른 수행 속도를 가집니다.
  Pseudo Code 참조.

Main Window(메인 윈도우)
- 독립된 윈도우로 페어런트 윈도우라고도 합니다.
  MDI 어플리케이션을 작성하면 MDI 프레임 윈도우가 제일 먼저 오픈되지만, MDI 어플리케이션이 아닌 경우에는 메인 윈도우가 제일 먼저 오픈됩니다.

MAPI(Message Application Program Interface)
- 메시지 어플리케이션 프로그램 인터페이스. 마이크로소프트에서 만든 함수들의 집합으로 어플리케이션에 전자 우편 기능을 주고자 할 때 사용합니다.
  파워빌더 메일 함수는 MAPI를 사용합니다.

MDI Application(Multiple Document Interface, 엠디아이 어플리케이션)
- 멀티플 다큐먼트 인터페이스 어플리케이션. 한 개의 프레임 안에 여러 개의 쉬트를 동시에 오픈한 상태에서 작업할 수 있도록 합니다.
  MDI 프레임의 구성요소는 다음과 같습니다.
  메뉴바, 클라이언트 에어리어, 시트, 툴바, 그리고 마이크로헬프를 보여줄 수 있는 스테이터스 에이리어로 구성됩니다.
  MDI시트는 MDI프레임의 클라이언트 에어리어에 열리는 윈도우입니다.
  MDI시트의 타입은 MDI프레임을 제외한 어느 타입이든 상관없습니다.
  SDI Application 참조

MenuBar(메뉴바)
- 윈도우나 어플리케이션에서 사용자가 선택할 수 있는 최상위의 메뉴 아이템을 윈도우의 상단에 출력합니다.

Menu-Level Variable(메뉴-레벨 베리어블)
- 메뉴에 포함된 인스턴스 변수나 쉐어드 변수, SQL커서, SQL프로시져 등입니다.

MicroHelp(마이크로헬프)
- 메뉴 아이템이나 툴바에 있는 아이콘을 클릭했을 때, 윈도우 하단에 있는 스테이터스 바에 디스플레이 되는 간단한 설명으로 마우스 버튼을 누르고 있을 동안에는 마이크로 헬프가 디스플레이됩니다.

Nested Class(네스티드 클래스)
- Child Class 참조.

Object(오브젝트)
- 객체지향 프로그램에서 데이터와 그 데이터를 다루는 메소드를 같이 가지고 있는 자체적으로 완전한 모듈입니다.
  파워빌더에서는 라이브러리에 저장될 수 있는 그래픽 엔티티(어플리케이션, 데이터윈도우, 윈도우, 메뉴, 유저 오브젝트)를 말합니다.
  그러나 트랜잭션 오브젝트, 커스텀 클래스 유저 오브젝트, 스트럭처 등과 같이 눈에 보이지 않는 오브젝트도 있습니다.
  각각의 오브젝트는 그 모양과 기능을 특징 짓는 속성들이 있습니다.
  오브젝트의 속성을 변경하거나 알기 위해서 함수나 연산자, 파워스크립트 문장 등을 사용할 수 있습니다. 오브젝트의 속성을 변경함으로써 그 오브젝트의 모양을 조정할 수 있습니다. 오브젝트는 함수를 호출하거나 스크리브를 트기러 시킬 수 있는 이벤트도 가집니다.

Object-Level Function(오브젝트-레벨 펑션)
- 특정 윈도우나 메뉴, 유저 오브젝트 혹은 어플리케이션 오브젝트에 포함되어 있는 함수로 시스템 오브젝트는 내장 오브젝트-레벨 함수를 가지고 있습니다.
  사용자가 정의한 오브젝트-레벨 함수는 오브젝트 정의의 일부이며 그 오브젝트 안에 있는 스크립트에서는 언제든지 사용할 수 있습니다.
  또한 사용자가 정의한 오브젝트-레벨 함수를 자체 내 뿐만 아니라 어느 스크립트에서든지 참조할 수 있도록 정의할 수 있습니다.

Object-Level Structure(오브젝트-레벨 스트럭쳐)
- 특정 윈도우나 메뉴, 유저 오브젝트 혹은 어플리케이션 오브젝트에 포함되어 있는 스트럭처로 오브젝트-레벨 스트럭처는 그 오브젝트 정의의 일부이며 그 오브젝트 안에 있는 스크립트에서는 언제든지 사용할 수 있습니다.

OCX(OLE Custom Control)
- OLE 커스텀 컨트롤. OCX는 대체로 어플리케이션에서 제공하는 기능들을 포함하고 있고, 이러한 기능들을 함수나 이벤트, 속성 등을 통해 클라이언트 어플리케이션에 제공합니다.

ODBC(Open Data Base Connectivity)
- 오픈 데이터베이스 컨넥티비티. 마이크로소프트사에서 개발한 스탠더드 API로서 하나의 어플리케이션에서 ODBC 드라이버가 있는 데이터 소스라면 다 참조할 수 있도록 했습니다.
  SQL문을 스탠더드 데이터 참조 언어로 사용합니다. 파워빌더에서는 ODBC를 통해서 대부분의 모든 DBMS에 연결 할 수 있습니다.

OLE(Object Linking and Embedding)
- 오브젝트 링킹 앤 임베딩. 한 어플리케이션 내에서 다른 프로그램(서버 어플리케이션)과 데이터를 사용할 수 있도록 합니다.
  데이터 자체는 서버 어플리케이션의 포맷으로 남아있습니다.
  한 어플리케이션 안에 OLE 오브젝트를 포함하게 되면 그 OLE 오브젝트의 서버 어플리케이션을 기동할 수 있습니다. OCX 참조

Painter(페인터)
- 파워빌더 개발 환경 안에서 폼, 쿼리, 리포트 등의 오브젝트를 만들고 데이터를 다루는데 필요한 툴들을 제공하는 윈도우를 페인터라 부릅니다.

PainterBar(페인터 바)
- 현재 열려있는 페인터에 종속되어 있는 툴바로 페인터바에 있는 아이콘들은 각 페인터마다 다르고, 이들을 이용해 오브젝트를 만들 수 있습니다.

Parent Object(페어런트 오브젝트)
- 현재 오브젝트를 포함하고 있는 오브젝트입니다.
  예를 들어 윈도우는 그 안에 있는 컨트롤들의 페어런트 오브젝트가 됩낟.

PBD(PowerBuilder Dynamic Library)
- 파워빌더 다이나믹 라이브러리. 어플리케이션이 실행될 때 메모리에 로드 되는 라이브러리로 실행 중에 파워빌더는 실행 파일에 저장되는 PBD를 참조합니다.
  PBD에 실행 중 동적으로 로드되어야 할 오브젝트가 포함되어 있으면 반드시 도스 패스에 걸려 있어야 합니다.

PB.INI File(피비.아이앤아이 파일)
- 파워빌더 초기 파일. 파워빌더 개발 환경을 조정해주는 파라미터들을 저장하고 있습니다.

PBL(PowerBuilder Library)
- 파워빌더 라이브러리 파일. 피블이라 발음됩니다.
  Library 참조.

PBR(PowerBuilder Resource)
- 파워빌더 리소스 파일. 확장자가 PBR인 ASCII파일. 리소스 파일 안에는 스크립트에서 동적으로 지정된 리소스들의 파일명이 열거되어 있습니다.
  비트맵, 아이콘, 커서 등이 리소스에 포함될 수 있습니다.

PBU(PowerBuilder Unit)
- 파워빌더의 단위. PBU는 가상 인치를 정의합니다.
  가상 인치는 운영체제에 따라 픽셀의 배수로 정의되며 디스플레이 장비에 의해 결정됩니다. PBU를 사용함으로써 모든 플랫폼에서 어플리케이션을 실행 동일한 화면을 볼 수 있습니다.

P Code(P 코드)
- Pseudo Code 참조

Pipeline(파이프라인)
- 같은 데이터베이스 안에 혹은 다른 데이터베이스 안에 데이터를 복제하기 위해 사용할 수 있는 오브젝트로 데이터 파이프라인 페인터에서 생성합니다.
  파이프라인 오브젝트를 사용하는 용도는 같은 DBMS 안에서 혹은 다른 DBMS로 테이블에 있는 데이터를 다른 테이블로 옮긴다든가 혹은 테이블을 새로 생성해서 데이터를 옮길 수 있습니다.

Polymorphism(폴리모피즘, 다형상화)
- 인수의 개수나 순서는 다르지만 같은 오브젝트 안에 같은 이름으로 정의되어 있는 함수를 사용하는 방법입니다.
  파워빌더는 인수를 비교해서 어떤 함수를 호출할 것인지 결정합니다.

Popup Menu(팝업메뉴)
- 특정 이벤트가 발생하고 난 후에 디스플레이 되는 메뉴. 팝업 메뉴를 디스플레이 하기 위해서는 스크립트 내에서 PopMenu()라는 함수를 사용해서 화면에 디스플레이할 위치를 결정해 주어야 합니다.
  주로 오른쪽 마우스 버튼을 클릭했을 때 팝업 메뉴가 디스플레이 되도록 작성합니다.

Popup Window(팝업 윈도우)
- 윈도우 내에서 이벤트의 결과로 열리며, 팝업 윈도우를 연 윈도우 위에 열리고 그 윈도우가 닫혀도 팝업 윈도우는 닫히지 않습니다.
  팝업 윈도우는 페어런트 윈도우를 가질 수도 있고 갖지 않을 수도 있습니다.
  페어런트 윈도우가 최소화되면 팝업 윈도우는 숨겨지고, 페어런트 윈도우가 최대화되면 팝업 윈도우가 보입니다.(항상 페어런트 윈도우 앞에 열립니다)
  팝업 윈도우가 페어런트 윈도우가 없으면 독립적이고 팝업 윈도우를 연 윈도우에 가려질 수 있습니다.(뒤쪽으로 열릴 수 있습니다.)
  팝업 윈도우를 최소화하면 아이콘이 팝업 윈도우를 연 윈도우(페어런트 윈도우이든 아니든) 밖에 디스플레이 됩니다.

Position Pointer(포지션 포인터)
- 디스크 파일 상에서 다음 기록할 위치를 나타냅니다.
  매번 읽기, 쓰기 후에 자동적으로 이동됩니다.

PowerBar(파워바)
- 파워빌더에서 가장 기본이 되는 툴바로 파워빌더가 기동되면 화면 상단에 메뉴바 밑에 디스플레이됩니다.
  파워바를 통해서 각 페인터를 열 수 있고 도움말을 볼 수 있으며 작성 중인 어플리케이션을 디버깅 또는 실행할 수 있습니다.

PowerBuilder Window Plug-in(파워빌더 윈도우 플러그-인)
- 웹 브라우저에서 파워빌더 차일드 윈도우를 보여주는 기능으로 이 윈도우는 모든 컨트롤을 가질 수 있고 다른 윈도우를 부를수도 있습니다.

PowerObject(파워오브젝트)
- 파워빌더의 모든 시스템 오브젝트가 계승 받는 베이스 클래스입니다.

PowerPanel(파워패널)
- 리스판스 윈도우로 각 페인터를 열 수 있는 아이콘들을 제공합니다.
  파워패널은 조정할 수 없기 때문에 모든 페인터에 대한 아이콘들을 가지고 있습니다.
  주로 파워바를 사용해서 페인터를 열지만 파워바에 아이콘으로 등록되어 있지 않은 페인터를 열기 위해서는 파워패널을 사용하면 편리합니다.

PowerScript(파워스크립트)
- 파워빌더 언어를 지칭하며 파워스크립트는 고급 객체 지향 언어로서 파워빌더 환경을 위해 개발된 언어입니다.





Posted by SITD
, |

최근에 달린 댓글

글 보관함