Skip to content

HBHR102_파일 메뉴 ​

(Hereby) HR 급여 관리 > 시트 워크스페이스 > 파일 메뉴

항목내용
앱HR 급여 관리 (HBHR)
대상 사용자조건1 [HR_ADMIN]
부모 화면[[HBHR100_시트 워크스페이스 (공통 Shell)]]
프로토타입TBU
관련 정책[[POL_급여정본경계]]
Statusreview
Owner카나

개요 ​

스프레드시트 툴바([[HBHR100_시트 워크스페이스 (공통 Shell)]])의 "파일 ▾" 메뉴를 정의한다. 7개 항목("📄 새 시트" / "📤 업로드" / "⎘ 사본 만들기" / "⬇ 다운로드" / "🖨 인쇄"(신규) / "✏️ 이름 바꾸기" / "🛠 시트 정보")으로 구성된다. 파일 메뉴에 시트 삭제 항목은 없다 — 시트 삭제는 좌측 사이드바 시트 우클릭 → "삭제"로 수행한다 ([[HBHR108_폴더·휴지통 사이드바]] 참조).

문서 히스토리 ​

날짜작성자팀변경 내용
2026-07-06카나PM최초 작성
2026-07-10카나PM라이브 기능 검토 반영
2026-07-13카나PM버튼 행동 명세 보강
2026-07-21카나PMGC700 깊이 재작성
2026-07-21카나PM가독성 패스 + 액션 표기 (GUIDE §7·§8)
2026-07-21카나PM셀 스타일 확정판 적용 (콸 승인)
2026-09-23카나PM📤 업로드(20)에 매핑 단계·검증 리포트·임포트 변경 세트 진입 동선 한 줄 반영(eea3dac #832, 1193e00 #836) — 커밋 근거, 라이브 실사 이월(TBU)
2026-09-30카나PMPR #888 반영: 파일 메뉴 「업로드 파일 관리」(25) + 업로드 파일 관리 모달 사양표 신설 · PR #886 반영: 「원본 보기」 보관 만료 안내 문구 · PR #831 반영: 「인쇄」(45)가 곧장 인쇄하지 않고 「인쇄 설정」 모달(46)을 먼저 엶 — 커밋·소스 근거, 라이브 실사 이월(TBU)
2026-10-07카나PMPR #1065 반영(MED-935): 설정 중 시트에서 파일 메뉴 맨 아래 「시트 재설정 하기」 자리에 「설정 완료」 항목(65 신설) — 커밋 근거, 라이브 실사 이월(TBU)

Data I/O ​

Client → Server ​

액션전달 값tRPC procedure권한 토큰
사본 만들기sheetIdsdk.payrollSheet.duplicate() (추정)payroll:write (추정)
다운로드sheetId, formatsdk.payrollSheet.export() (추정)payroll:read (추정)
이름 바꾸기sheetId, namesdk.payrollSheet.rename() (추정)payroll:write (추정)
시트 정보 조회sheetIdsdk.payrollSheet.info() (추정)payroll:read (추정)

procedure는 라이브 확인 전 추정치이며, 확정 시 갱신한다. "📄 새 시트"는 모달([[HBHR101_새 시트 만들기 모달]]) 진입만 담당하여 서버 액션 없음.


화면 플로우 ​


파일 메뉴 사양표 ​

번호항목/기능명타입사양 및 기능 설명연관/영향 범위비고
00노출 조건-스프레드시트 툴바 "파일 ▾"([[HBHR100_시트 워크스페이스 (공통 Shell)]] 참조) 클릭 시 드롭다운 노출
조건1 [HR_ADMIN] 시 노출
[[HBHR100_시트 워크스페이스 (공통 Shell)]]권한 세부 TBU
01초기 상태-메뉴 닫힘. 현재 시트가 액션 대상현재 시트TBU: 시트 미열림 상태 메뉴 활성 여부
10📄 새 시트MenuItem• 새 시트 생성을 시작하는 기능. 서버 액션 없이 모달 진입만 담당
• 클릭 시: "새 시트 만들기" 모달 오픈
[[HBHR101_새 시트 만들기 모달]]
20📤 업로드MenuItem• 외부 파일을 업로드해 시트로 가져오는 기능
• 클릭 시: 파일 업로드 동선 진입 → 매핑 단계 → 검증 리포트 → 승인 후 시트 생성(생성 결과는 임포트 변경 세트로 되돌릴 수 있음) — 상세는 [[HBHR100_시트 워크스페이스 (공통 Shell)]] ㄴ25-U
[[HBHR101_새 시트 만들기 모달]] 업로드 탭 · [[HBHR100_시트 워크스페이스 (공통 Shell)]] ㄴ25-U매핑·검증·임포트 변경 세트 동선 추가 (코드 반영: eea3dac #832 · 1193e00 #836) · TBU: 지원 포맷·포맷 미지원 시 에러
25업로드 파일 관리MenuItem• 조직의 업로드 원본 파일 전부(시트로 이어진 것 · 분석만 하고 닫은 것 · 지운 이력)를 보고 직접 삭제하는 기능. title "업로드한 원본 파일을 보고 삭제해요"
• 클릭 → "업로드 파일 관리" 모달 (아래 별도 표)
20 · 업로드 파일 관리 모달 · [[HBHR101_새 시트 만들기 모달]] 원본 보기신설 (PR #888) · 목록 payroll:read / 삭제 payroll:manage
30⎘ 사본 만들기MenuItem• 현재 시트를 복제해 사본을 만드는 기능
• 클릭 시: 현재 시트 복제 실행
sdk.payrollSheet.duplicate() (추정)TBU: 복제본 이름·저장 폴더 규칙·원본 미저장 처리
40⬇ 다운로드MenuItem• 현재 시트를 파일로 내보내 다운로드하는 기능
• 클릭 시: 시트 다운로드 실행
[[HBHR270_전자서명 발송·eCount 연동 시트 (2섹션)]]TBU: 지원 포맷·eCount export 관계
45🖨 인쇄MenuItem• 현재 시트를 인쇄하는 기능. 서식 도구 모음의 프린터 단추(title "인쇄 ({단축키})")와 같은 동작
• 클릭 → "인쇄 설정" 모달 (46) — 곧장 브라우저 인쇄를 부르지 않음
46 · [[HBHR100_시트 워크스페이스 (공통 Shell)]] 63 서식 도구 모음인쇄 설정 모달 경유로 변경 (PR #831 G-8) · 메뉴 title 원문 "브라우저 인쇄 (Ctrl/Cmd+P)"
ㄴ 46인쇄 설정 모달Modal• 인쇄 전 범위·용지·배율·격자선을 고르는 모달. 제목 "인쇄 설정"
• 항목: "인쇄 범위"(현재 시트 "— 지금 보이는 {N}행" / 선택한 셀 "— 칸을 두 개 이상 골랐을 때") · "용지 방향 (A4)"(가로/세로) · "배율"(너비에 맞춤/실제 크기 (100%)) · "격자선 표시" · "맨 위에 시트 이름 · 기간 표시"
• [인쇄] 클릭 → 인쇄 전용 표를 모든 행으로 그려 브라우저 인쇄 창을 열고, 인쇄 창이 닫히면 치움
45 · 가상 스크롤 그리드신설 (PR #831 G-8) · 안내 원문 "다음 화면(브라우저 인쇄 미리보기)에서 프린터·용지·PDF 저장을 고를 수 있어요. 필터로 가린 행과 숨긴 열은 인쇄되지 않고, 열 이름 줄은 쪽마다 다시 찍혀요." · X·취소·Esc 즉시 닫힘
50✏️ 이름 바꾸기MenuItem• 현재 시트명을 변경하는 기능
• 클릭 시: 시트명 변경 동선 진입
[[HBHR100_시트 워크스페이스 (공통 Shell)]] 시트 헤더TBU: 인라인/모달 방식·시트 헤더 더블클릭과 동선 관계
60🛠 시트 정보MenuItem• 현재 시트의 메타 정보를 조회하는 기능
• 클릭 시: "시트 정보" 모달 노출 (61)
61
ㄴ 61시트 정보 모달Modal• 시트 메타 정보를 표시하는 모달 (수정시각·건수·작성자 후보)—TBU: 필드 구성·Empty(값 부재 필드) 처리
65시트 재설정 하기 / 설정 완료MenuItem• 파일 메뉴 맨 아래 항목. 시트 상태에 따라 둘 중 하나가 옴
• CASE01 [설정 완료된 시트]: "시트 재설정 하기" 노출
• CASE02 [설정 중 시트]: 같은 자리에 "설정 완료" 항목이 옴 — 클릭 → 툴바 [설정 완료]와 같은 확정 다이얼로그(구조 요약)를 엶
툴바 [설정 완료] · [[HBHR100_시트 워크스페이스 (공통 Shell)]]신설 (PR #1065, MED-935) · 권한 = 재설정과 같은 canManageSetup · 다이얼로그 문구 원문 TBU(실사 대기)
70시트 삭제 경로-파일 메뉴에는 시트 삭제 항목이 없다
시트 삭제는 좌측 사이드바 시트 우클릭 → "삭제"로 수행
네이티브 confirm "삭제된 시트는 사이드바 상단 [휴지통]에서 복원할 수 있습니다." 후 휴지통으로 이동
[[HBHR108_폴더·휴지통 사이드바]]파일 메뉴 외 경로

업로드 파일 관리 모달 사양표 ​

번호항목/기능명타입사양 및 기능 설명연관/영향 범위비고
00모달 헤더Text• 제목 "업로드 파일 관리" + 설명 "업로드로 올라온 원본 파일이에요. 개인정보가 들어 있을 수 있어 12개월이 지나면 자동으로 지워지고, 그 전에도 여기서 직접 지울 수 있어요. 지워도 그 파일로 만든 시트의 데이터는 그대로예요."sheetImport.listUploads신설 (PR #888)
10지운 파일도 보기Checkbox• 기본 해제 = 지울 수 있는 파일만 표시
• 체크 → 삭제 이력(사용자 삭제·보관 만료 삭제)까지 목록에 펼침
20 목록
11새로고침Button• 클릭 → 업로드 원장 목록 재조회(조회 중 비활성)20 목록
20업로드 파일 목록Table• 조직의 업로드 원장을 최신순 표시. 열 = "파일"(파일명 + 형식 · 크기) / "올린 사람 · 시각" / "상태" / "시트"(그 파일로 만든 시트, 휴지통 시트는 취소선, 4개 초과 시 "외 {N}개")
• 조회 중: "불러오는 중…"
sheet_import_uploads · sheetImport.listUploads실패 시 "업로드 파일 목록을 불러오지 못했어요."
ㄴ21상태 배지Badge• CASE01 [시트로 이어짐]: "시트 {N}개"(green)
• CASE02 [분석만 하고 닫음]: "시트 없음"(yellow)
• CASE03 [사용자 삭제]: "삭제됨" / CASE04 [12개월 보관 만료]: "보관 만료 삭제"(gray)
removedReason(user · retention)
ㄴ22삭제Button• 클릭 → 컨펌 "「{파일명}」 원본 파일을 삭제할까요? 삭제한 파일은 복구할 수 없어요." + 시트 안내("이 파일로 만든 시트 {N}개의 데이터는 그대로 남고, 「원본 보기」 만 안내 문구로 바뀌어요." / "이 파일로 만든 시트는 없어요.") → [삭제] 실행
 - 성공: 토스트 "「{파일명}」 원본을 삭제했어요." · 진행 중 라벨 "삭제 중…"
 - 실패: 오류 창 "삭제 실패: {사유}"
sheetImport.deleteUpload · storage 원본 · sheet_views.importSourceKeypayroll:manage · 이미 지운 행은 멱등
20-EEmptyText• "남아 있는 업로드 파일이 없어요." (지운 파일도 보기 체크 시 "업로드한 파일이 없어요.")
30원본 보기 안내 (삭제 후)-• 원본이 지워진 시트에서 「원본 보기」 시 안내로 거절
 - CASE01 [보관 만료]: "보관 기간(12개월)이 지나 원본 파일이 삭제됐어요. 시트 데이터는 그대로예요."
 - CASE02 [사용자 삭제]: "원본 파일이 「업로드 파일 관리」 에서 삭제됐어요. 시트 데이터는 그대로예요."
[[HBHR101_새 시트 만들기 모달]] 원본 보기 · sheetImport.originalPR #886(만료 워커) · PR #888(사용자 삭제)
40닫기Button• 클릭 → 모달 닫힘(즉시 서버 반영 모달이라 저장 확인 없음)

Open Question ​

  • 업로드(20) 지원 포맷·업로드 동선 및 포맷 미지원 시 에러 처리 = TBU
  • 사본 만들기(30) 복제본 이름·저장 폴더 규칙 = TBU
  • 다운로드(40) 지원 포맷 및 eCount export와의 관계 = TBU
  • 이름 바꾸기(50) 인라인/모달 방식 및 시트 헤더 더블클릭과의 동선 관계 = TBU
  • 시트 정보 모달(61) 표시 필드 구성 = TBU
  • 시트 미열림 상태에서 파일 메뉴 항목 활성 여부 = TBU