5. 레코드 관리
레코드는 스프레드시트의 각 행(row)에 해당합니다. 매물 하나하나가 레코드 한 줄이 됩니다. 이 장에서는 레코드를 추가하고, 수정하고, 삭제하고, 복원하는 전체 과정을 안내합니다.
5.1 레코드 생성
데이터베이스에 새로운 매물 정보를 입력하려면 먼저 빈 레코드를 추가해야 합니다. PropSheet에서는 두 가지 방법으로 레코드를 만들 수 있습니다.
5.1.1 빈 레코드 추가
- 테이블 맨 아래로 스크롤합니다.
- 테이블 하단에 있는 "+" 버튼을 클릭합니다.
- 모든 필드가 비어 있는 새 행이 테이블 맨 아래에 추가됩니다.
- 추가된 행의 각 셀을 클릭하여 데이터를 입력합니다.
record_id(예: rec1234)가 부여됩니다.
이 ID는 시스템이 자동 생성하며, 수정할 수 없습니다.
5.1.2 기존 레코드 복제
비슷한 매물 정보를 여러 건 입력할 때는 기존 레코드를 복제하면 훨씬 빠릅니다. 예를 들어, 같은 단지 내 여러 호실의 매물을 등록할 때 유용합니다.
- 복제할 레코드의 행 번호를 클릭하여 상세 패널을 엽니다.
- 상세 패널 상단의 "복제" 버튼을 클릭합니다.
- 원본 레코드의 모든 필드 값이 복사된 새 레코드가 생성됩니다.
- 복제된 레코드에서 다른 부분(호수, 면적, 가격 등)만 수정합니다.
record_id도 새로 발급됩니다.
5.2 인라인 셀 편집
PropSheet의 가장 핵심적인 기능은 스프레드시트처럼 셀을 직접 클릭하여 편집하는 것입니다. 별도의 편집 화면으로 이동하지 않고, 테이블 위에서 바로 데이터를 수정할 수 있습니다.
5.2.1 기본 편집 흐름
- 수정하려는 셀을 클릭합니다. 셀이 편집 모드로 변합니다.
- 필드 타입에 맞는 에디터가 나타납니다 (아래 타입별 설명 참조).
- 값을 입력하거나 선택합니다.
- Enter 키를 눌러 저장합니다.
- 수정을 취소하려면 Escape 키를 누릅니다. 원래 값으로 되돌아갑니다.
- Tab 키를 누르면 저장과 동시에 다음 셀로 이동합니다.
5.2.2 필드 타입별 에디터
셀을 클릭했을 때 나타나는 에디터는 필드 타입에 따라 달라집니다.
| 필드 타입 | 에디터 형태 | 사용 예시 | 조작 방법 |
|---|---|---|---|
| 텍스트 | 텍스트 입력 필드 | 지번주소, 매물명, 비고 | 키보드로 직접 입력. Enter로 저장. |
| 숫자 | 숫자 전용 입력 필드 | 매매가, 면적, 층수 | 숫자 키패드로 입력. 소수점 허용. Enter로 저장. |
| 날짜 | 달력 피커(Date Picker) | 등록일, 계약일, 준공일 | 달력에서 날짜 클릭 또는 직접 타이핑(YYYY-MM-DD). |
| 선택(단일) | 드롭다운 목록 | 매물유형, 거래구분, 방향 | 드롭다운에서 항목 클릭. 검색 입력으로 필터링 가능. |
| 체크박스 | 토글 스위치 | 광고여부, 추천여부 | 셀 클릭 한 번으로 체크/해제 전환. 별도 저장 불필요. |
5.2.3 키보드 단축키
| 키 | 동작 |
|---|---|
| Enter | 현재 셀 저장 |
| Escape | 편집 취소 (원래 값으로 복원) |
| Tab | 저장 후 오른쪽 다음 셀로 이동 |
| Shift + Tab | 저장 후 왼쪽 이전 셀로 이동 |
5.3 레코드 상세 슬라이드 패널
테이블 뷰에서는 가로 공간이 제한되어 모든 필드를 한눈에 보기 어렵습니다. 레코드 상세 패널을 사용하면 한 레코드의 모든 필드를 세로로 펼쳐 확인하고 편집할 수 있습니다.
5.3.1 상세 패널 열기
- 테이블에서 열고 싶은 레코드의 행 번호(맨 왼쪽 숫자)를 클릭합니다.
- 화면 오른쪽에서 슬라이드 형태로 상세 패널이 열립니다.
- 패널에는 해당 레코드의 모든 필드가 세로로 나열됩니다.
5.3.2 상세 패널에서 편집
상세 패널 내에서도 각 필드를 직접 편집할 수 있습니다.
- 수정하려는 필드의 값 영역을 클릭합니다.
- 인라인 셀 편집과 동일한 에디터가 나타납니다.
- 값을 수정하고 Enter를 눌러 저장합니다.
5.3.3 첨부파일 확인
첨부파일(대표사진, 건축물대장 등)은 상세 패널에서 미리보기로 확인할 수 있습니다. 이미지 파일은 썸네일이 표시되고, 클릭하면 원본 크기로 볼 수 있습니다.
5.4 레코드 삭제 및 휴지통
더 이상 필요 없는 매물 레코드는 삭제할 수 있습니다. PropSheet에서는 삭제된 레코드를 바로 영구 삭제하지 않고, 휴지통에 보관하여 실수로 삭제한 경우 복원할 수 있도록 합니다.
5.4.1 레코드 삭제 방법
- 삭제할 레코드의 행 왼쪽 체크박스를 클릭하여 선택합니다. 여러 개를 동시에 선택할 수 있습니다.
- 선택된 레코드가 있으면 상단에 "삭제" 버튼이 나타납니다.
- "삭제" 버튼을 클릭합니다.
- 확인 대화상자에서 "삭제"를 클릭하면 선택한 레코드가 휴지통으로 이동합니다.
5.4.2 휴지통
삭제된 레코드는 즉시 사라지지 않고 휴지통에 보관됩니다.
| 항목 | 설명 |
|---|---|
| 보관 기간 | 삭제 후 30일간 휴지통에 보관됩니다. |
| 자동 영구 삭제 | 30일이 지나면 자동으로 영구 삭제되어 복원할 수 없습니다. |
| 복원 | 휴지통에서 레코드를 선택하고 "복원" 버튼을 클릭하면 원래 테이블로 돌아갑니다. |
| 영구 삭제 | 30일을 기다리지 않고 즉시 영구 삭제할 수도 있습니다. 이 경우 복원이 불가합니다. |
5.5 동시 편집 충돌 감지
PropSheet는 여러 사용자가 동시에 같은 데이터베이스를 편집할 수 있습니다. 이때 같은 레코드를 두 사람이 동시에 수정하면 데이터 충돌이 발생할 수 있습니다. PropSheet는 낙관적 잠금(Optimistic Locking) 방식으로 이 문제를 해결합니다.
5.5.1 낙관적 잠금이란?
낙관적 잠금은 "대부분의 경우 충돌이 발생하지 않을 것"이라는 가정 하에 동작합니다. 수정을 시작할 때 잠금을 걸지 않고, 저장하는 시점에 다른 사용자가 먼저 수정했는지 확인합니다.
5.5.2 충돌 발생 시나리오
부동산 사무실에서 두 직원이 같은 매물을 동시에 편집하는 상황을 가정해 봅니다.
- 직원 A가 매물 "역삼동 오피스텔"의 매매가 셀을 클릭하여 편집을 시작합니다.
- 거의 같은 시간에 직원 B도 같은 매물의 매매가를 수정하고 먼저 저장합니다.
- 직원 A가 뒤늦게 Enter를 눌러 저장하려 하면, PropSheet가 충돌을 감지합니다.
- 화면에 "다른 사용자가 이 레코드를 수정했습니다"라는 알림이 표시됩니다.
- 직원 A는 새로고침 후 최신 데이터를 확인하고, 필요하면 다시 편집합니다.
5.5.3 충돌 해결 방법
| 단계 | 조치 |
|---|---|
| 1 | 충돌 알림이 나타나면, 내가 입력한 값을 메모해 둡니다. |
| 2 | 새로고침을 클릭하여 최신 데이터를 불러옵니다. |
| 3 | 다른 사용자가 수정한 값을 확인합니다. |
| 4 | 필요하면 다시 셀을 클릭하여 올바른 값으로 수정합니다. |