WCMS는 (주)워드앤코드에서 제공하는 콘텐츠 관리 솔루션이다

================================================================================

 

이제부터 게시판 필드정보 설정에 대한 부분을 살펴보자

먼저 게시판필드는 기본필드가 존재하고 추가할수 있는 구조로 만들어져있다.

기본 필드를 살펴보자

 

[TITLE] [nvarchar](500) NOT NULL     --제목
[LINKURL] [nvarchar](500) NULL     --링크주소
[LINKURL_FL] [nchar](1) NOT NULL DEFAULT (N''N'') --링크주소 사용여부
[CONTENTS] [nvarchar](max) NULL     --내용
[DESCRIPTION] [nvarchar](max) NULL    --소개글
[USER_ID] [nvarchar](200) NULL     --사용자아이디
[USER_PWD] [varbinary](500) NULL     --사용자비밀번호
[USER_NM] [nvarchar](200) NULL     --사용자명
[USER_EMAIL] [nvarchar](400) NULL     --사용자이메일
[HOMEPAGE] [nvarchar](500) NULL     --홈페이지
[MAINIMG] [nvarchar](500) NULL     --메인이미지
[MAINIMG_CAPTION] [nvarchar](500) NULL   --메인이미지캡션
[MAINIMG_SIZE] [float] NULL DEFAULT ((0))   --메인이미지사이즈
[LISTIMG] [nvarchar](500) NULL     --리스트이미지
[LISTIMG_OVER] [nvarchar](500) NULL    --리스트이미지 오버
[LISTIMG_CAPTION] [nvarchar](500) NULL   --리스트이미지 캡션
[LISTIMG_SIZE] [float] NOT NULL DEFAULT ((0))  --리스트이미지 크기
[TARGET_NM] [nvarchar](20) NULL DEFAULT (N''_self'') --창 타켓
[NTC_OPT] [nchar](1) NULL DEFAULT (N''N'')  --공지여부
[SECRET_OPT] [nchar](1) NULL DEFAULT (N''N'')  --비밀글여부
[OPEN_OPT] [nchar](1) NULL DEFAULT (N''Y'')  --오픈글여부
[SDATE] [datetime] NULL       --시작일
[EDATE] [datetime] NULL       --종료일
[READ_CNT] [int] NOT NULL DEFAULT ((1))   --조회수
[IPADDR] [nvarchar](30) NOT NULL     --아이피
[POSTDATE] [nvarchar](20) NULL     --게시일
[REGDATE] [datetime] NOT NULL DEFAULT (getdate()) --등록일
[DEL_FLAG] [nchar](1) NOT NULL DEFAULT (N''N'') --삭제여부
[DEL_DATE] [datetime] NULL      --삭제일자
[ANSWER_FL] [nchar](1) NOT NULL DEFAULT (N''N'') --답변여부
[ANSWER] [nvarchar](max) NULL      --답변내용
[ANS_ID] [nvarchar](50) NULL      --답변자아이디
[ANS_NM] [nvarchar](50) NULL      --답변자이름
[ANS_DATE] [datetime] NULL      --답변일
[ANSIP] [nvarchar](30) NULL      --답변자IP

 

다양한 게시판의 요구를 모두 충족할수 있는 구조로 기본 테이블이 구성된다.

 

물론 여기서 추가를 하고 싶은 경우 추가할 수 있도록 구성되어있다

 

그래서 프로시저도

테이블 생성 프로시저, 테이블 필드추가프로시저 이렇게 2개로 구성된다

기본적으로 필드는 한번 생성되면 삭제는 되지 않게 했다.

왜냐하면 필드에 글이 있는 경우 다른 필드에 영향을 미칠수 있기 때문이다

단지 비활성화로 사용하지않게 하는 기능을 추가 하였다

필드 구성에 대한 사이트 이미지를 보자

 

 

 

필드 구성에서는 이전 포스트에서 설명한 기능이나 옵션에 따라 보이는 것을 다르다.

 

초기 필드 구성에 대한 소스를 한번 살펴보자

 

call xmlItemMake(oDom, "idx","40px", "번호", "int", "", "", "자동증가", "input", "", "E", "Y", "Y", "N","Y", "N", "N", "N", "1")
i = 2
if mainimg_opt = "Y" then
 call xmlItemMake(oDom, "mainimg","100px", "매인이미지", "short", "250", "", "", "input", "", "E", "Y", "Y", "N","Y", "N", "Y", "Y", i)
 i = i + 1
end if
call xmlItemMake(oDom, "title","*", "제목", "short", "250", "", "", "input", "", "C", "Y", "Y", "Y","Y", "Y", "Y", "Y", i)

i = i+1
call xmlItemMake(oDom, "linkurl","50px", "관련URL", "short", "350", "", "", "input", "", "C", "Y", "Y", "N","N", "Y", "Y", "Y", i)
 
if write_right > 1 then '회원제일경우
 call xmlItemMake(oDom, "user_id","70px", "아이디", "short", "100", "", "", "input", "", "D", "Y", "Y", "N","N", "N", "N", "N", i+1)
 call xmlItemMake(oDom, "user_nm","70px", "작성자", "short", "20", "", "", "input", "", "A", "Y", "Y", "N","Y", "Y", "Y", "N", i+2)
 call xmlItemMake(oDom, "user_email","50px", "이메일", "short", "200", "", "", "input", "", "E", "N", "N", "N","N", "N", "N", "N", i+3)
 call xmlItemMake(oDom, "homepage","50px", "홈페이지", "short", "250", "", "", "input", "", "C", "N", "N", "N","N", "N", "N", "N", i+4)
 i = i + 5
else
 call xmlItemMake(oDom, "user_nm","70px", "작성자", "short", "20", "", "", "input", "", "A", "Y", "Y", "N","Y", "Y", "Y", "N", i+1)
 call xmlItemMake(oDom, "user_email","50px", "이메일", "short", "200", "", "", "input", "", "E", "Y", "Y", "N","N", "Y", "Y", "Y", i+2)
 call xmlItemMake(oDom, "homepage","50px", "홈페이지", "short", "250", "", "", "input", "", "C", "N", "N", "N","N", "N", "N", "N", i+3)
 i = i + 4
end if
call xmlItemMake(oDom, "postdate","70px", "게시일", "datetime", "", "", "", "input", "", "A", "N", "N", "N","N", "N", "N", "N", i)
call xmlItemMake(oDom, "regdate","70px", "등록일", "datetime", "", "", "", "input", "", "D", "Y", "Y", "N","Y", "N", "N", "N", i+1)
call xmlItemMake(oDom, "read_cnt","50px", "조회수", "int", "", "1", "", "input", "", "D", "Y", "Y", "N","Y", "N", "N", "N", i+2)
call xmlItemMake(oDom, "contents","*", "내용", "long", "", "", "", "input", "", "C", "Y", "Y", "Y","N", "Y", "Y", "Y", i+3)
i = i + 4

if descript_opt = "Y" then
 call xmlItemMake(oDom, "description","*", "소개글", "long", "", "", "", "input", "", "A", "Y", "Y", "N","Y", "Y", "Y", "Y", i)
 i = i + 1
end if

if master_reply = "Y" then
 call xmlItemMake(oDom, "answer_fl","70px", "답변상태", "short", "2", "N", "", "input", "", "E", "Y", "Y", "N","Y", "N", "N", "N", i)
 i = i + 1
end if

if term_opt = "TY" OR term_opt = "TI" then
 call xmlItemMake(oDom, "period","70px", "게시기간", "short", "2", "", "", "input", "", "E", "Y", "Y", "N","N", "Y", "Y", "Y", i)
 i = i + 1
end if

if file_use = "FY" OR file_use = "FM" then
 call xmlItemMake(oDom, "filename","60px", "첨부파일", "short", "250", "", "", "input", "", "E", "Y", "N", "N","N", "N", "Y", "Y", i)
 i = i + 1
end if

if board_style <> 2 then
 if write_right = 1 then '비회원제일경우
  call xmlItemMake(oDom, "user_pwd","70px", "비밀번호", "short", "15", "", "", "input", "", "E", "Y", "Y", "N","N", "N", "Y", "Y", i)
  i = i + 1
 end if
end if
if listimg_opt = "Y" then
 call xmlItemMake(oDom, "listimg","100px", "목록이미지", "short", "250", "", "", "input", "", "E", "Y", "Y", "N","Y", "N", "Y", "Y", i)
 i = i + 1
end if

if topimg_opt = "Y" then
 call xmlItemMake(oDom, "topimg","100px", "대표이미지", "short", "250", "", "", "input", "", "E", "Y", "Y", "N","N", "N", "Y", "Y", i)
 i = i + 1
end if

 

소스에 보듯이 기능에 따른 필드 구성이 조금 달라진다.

추후 소스에 대한 분석 설명때 다시 다루기로 하자

 

오늘은 필드정보 구성화면을 살펴봤다.

다음에는 필드 구성 후 옵션에 대한 기본 생성된 XSL파일에 대해서 살펴보기로 하자

top