Bỏ qua

KPI — Base dữ liệu

Vị trí trên portal: Nhân sự (hr) › KPI; TT nhân sự › KPI cá nhân

Module dùng Base KPI (Ay2ZbkoAHaxExpsxnK3lW9dAgQh). Bảng 1.3 là bảng làm việc chính: mỗi dòng là một tiêu chí KPI của một nhân sự trong một tháng; job runKpiMonthlySeed (02:00 VN, chỉ chạy ngày 1) tạo dòng tháng mới từ 0.1 (đối tượng) × 0.2 (tiêu chí). KPI_SEED_DRY_RUN = "0" → đang ghi thật. Bảng HRIS 4.4.2 - Bảng tổng hợp KPI nằm ở Base HRIS (xem Trung tâm nhân sự); quan hệ với Base KPI: cần xác nhận.

Cách đọc bảng cột

Cột Ý nghĩa
Cột Tên cột trên Lark Base (🔑 = cột chính / primary field)
Kiểu Kiểu dữ liệu Lark Base
Nguồn giá trị Nhập liệu (người hoặc automation điền), Tự tính (công thức), Tự lấy (tra cứu) từ bảng khác, Liên kết bản ghi, Hệ thống (ngày tạo, người tạo…)
Chi tiết / công thức Công thức (đã đổi mã cột/bảng sang tên), bảng tra cứu, bảng liên kết, danh sách lựa chọn (ẩn nếu > 20 lựa chọn hoặc chứa tên người)
Mô tả trên Base Mô tả do người tạo Base ghi. Ô để trống = Base chưa có mô tả; ý nghĩa hiểu theo tên cột, cần xác nhận khi dùng cho nghiệp vụ quan trọng

Cấu trúc đọc qua Lark API (chỉ đọc) ngày 22/10/2026. Bảng/cột có thể đã thay đổi sau ngày này.

Base KPI — Ay2ZbkoAHaxExpsxnK3lW9dAgQh

Danh sách bảng mô tả bên dưới:

Bảng Số cột Code tham chiếu
1.1 - Bảng đánh giá KPI - Tổng hợp 5 có
1.2 - Bảng đánh giá KPI - Theo hạng mục 7 có
1.3 - Bảng đánh giá chi tiết KPI Hàng tháng 24 có
0.1 - QL Thông tin nhân sự 21 có
0.2 - QL Tiêu chí KPI 13 có

1.1 - Bảng đánh giá KPI - Tổng hợp

  • Table ID: tblCsCnhL7Z8AYoJ · Base: Base KPI · Số cột: 5 · Cột chính: NHÂN SỰ
  • Khoá trong config/lark-tables.mjs: KPI.TONG_HOP
  • Code ONE-ANNA tham chiếu: apps/api/src/portal/kpi-monthly-seed.js
  • Cơ cấu cột: 1 công thức · 1 tra cứu · 0 liên kết · 3 cột nhập/hệ thống
# Cột Kiểu Nguồn giá trị Chi tiết / công thức Mô tả trên Base
1 NHÂN SỰ 🔑 Người (User) Nhập liệu Một người
2 TỔNG ĐIỂM KPI Công thức Tự tính (công thức) Công thức: IF( [Phòng/Ban] = "Phòng Trải nghiệm khách hàng", MIN( '1.2 - Bảng đánh giá KPI - Theo hạng mục' .FILTER( CurrentValue.[NHÂN SỰ] = [NHÂN SỰ] && CurrentValue.[THÁNG/NĂM] = [THÁNG/NĂM] ) .[ĐIỂM ĐÁNH GIÁ - QUẢN LÝ] .SUM(), 1.05 ), '1.2 - Bảng đánh giá KPI - Theo hạng mục' .FILTER( CurrentValue.[NHÂN SỰ] = [NHÂN SỰ] && CurrentValue.[THÁNG/NĂM] = [THÁNG/NĂM] ) .[ĐIỂM ĐÁNH GIÁ - QUẢN LÝ] .SUM() )
3 THÁNG/NĂM Ngày giờ Nhập liệu Định dạng dd/MM/yyyy
4 Khoá dữ liệu Chọn một Nhập liệu Lựa chọn: Khoá dữ liệu
5 Phòng/Ban Tra cứu (Lookup) Tự lấy (tra cứu) Tra cứu, cột [Ban]. Biểu thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user]=[NHÂN SỰ]&&CurrentValue.[user]!="").[Ban].LISTCOMBINE()

1.2 - Bảng đánh giá KPI - Theo hạng mục

  • Table ID: tblXcgfL9qutnfK2 · Base: Base KPI · Số cột: 7 · Cột chính: NHÂN SỰ
  • Khoá trong config/lark-tables.mjs: KPI.THEO_HANG_MUC
  • Code ONE-ANNA tham chiếu: apps/api/src/portal/kpi-monthly-seed.js
  • Cơ cấu cột: 2 công thức · 1 tra cứu · 0 liên kết · 4 cột nhập/hệ thống
# Cột Kiểu Nguồn giá trị Chi tiết / công thức Mô tả trên Base
1 NHÂN SỰ 🔑 Người (User) Nhập liệu Một người
2 HẠNG MỤC Văn bản Nhập liệu
3 ĐIỂM ĐÁNH GIÁ - NHÂN VIÊN Công thức Tự tính (công thức) Công thức: '1.3 - Bảng đánh giá chi tiết KPI Hàng tháng'.FILTER(CurrentValue.[NHÂN SỰ]=[NHÂN SỰ]&&CurrentValue.[THÁNG/NĂM]=[THÁNG/NĂM]&&CurrentValue.[HẠNG MỤC]=[HẠNG MỤC]).[ĐIỂM ĐÁNH GIÁ - NHÂN VIÊN].SUM()
4 ĐIỂM ĐÁNH GIÁ - QUẢN LÝ Công thức Tự tính (công thức) Công thức: '1.3 - Bảng đánh giá chi tiết KPI Hàng tháng'.FILTER(CurrentValue.[NHÂN SỰ]=[NHÂN SỰ]&&CurrentValue.[THÁNG/NĂM]=[THÁNG/NĂM]&&CurrentValue.[HẠNG MỤC]=[HẠNG MỤC]).[ĐIỂM ĐÁNH GIÁ - QUẢN LÝ].SUM()
5 THÁNG/NĂM Ngày giờ Nhập liệu Định dạng dd/MM/yyyy
6 Khoá dữ liệu Chọn một Nhập liệu Lựa chọn: Khoá dữ liệu
7 Phòng/Ban Tra cứu (Lookup) Tự lấy (tra cứu) Tra cứu, cột [Ban]. Biểu thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user]=[NHÂN SỰ]&&CurrentValue.[user]!="").[Ban].LISTCOMBINE()

1.3 - Bảng đánh giá chi tiết KPI Hàng tháng

  • Table ID: tblcVe8MV2V3lrJD · Base: Base KPI · Số cột: 24 · Cột chính: NHÂN SỰ
  • Khoá trong config/lark-tables.mjs: KPI.CHI_TIET_THANG
  • Code ONE-ANNA tham chiếu: apps/api/src/portal/kpi-monthly-seed.js
  • Cơ cấu cột: 7 công thức · 1 tra cứu · 0 liên kết · 16 cột nhập/hệ thống

Ghi chú nghiệp vụ: nhân viên ghi cột tự đánh giá/tài liệu (saveKpiEmployeeRows), quản lý ghi cột chấm (saveKpiManagerRows); nộp/thu hồi qua submitKpiReport, recallKpiReport, submitKpiManagerReport. Thông báo khi nộp: KpiSubmitNotify.js.

# Cột Kiểu Nguồn giá trị Chi tiết / công thức Mô tả trên Base
1 NHÂN SỰ 🔑 Người (User) Nhập liệu Một người
2 HẠNG MỤC Văn bản Nhập liệu
3 CÔNG VIỆC CHÍNH/KPI Văn bản Nhập liệu
4 TRỌNG SỐ Số Nhập liệu Định dạng 0.00%
5 ĐƠN VỊ TÍNH Văn bản Nhập liệu
6 CÁCH ĐO LƯỜNG Văn bản Nhập liệu
7 Quy tắc đánh giá Chọn một Nhập liệu Lựa chọn: Xuôi - Có vượt, Ngược - Có vượt, Xuôi - Không vượt, Ngược - Không vượt
8 MỤC TIÊU Số Nhập liệu Định dạng 0.00
9 KẾT QUẢ THỰC ĐẠT - NHÂN VIÊN Số Nhập liệu Định dạng 0.00
10 MỨC ĐỘ HOÀN THÀNH (%) - NHÂN VIÊN Công thức Tự tính (công thức) Công thức: IF( [MỤC TIÊU] = "", "", IF( [MỤC TIÊU] = 0, IF( AND( [Quy tắc đánh giá] = "Ngược - Không vượt", [KẾT QUẢ THỰC ĐẠT - NHÂN VIÊN] = 0 ), 1, "" ), IF( [KẾT QUẢ THỰC ĐẠT - NHÂN VIÊN] = "", 0, IF( AND( [Quy tắc đánh giá] = "Ngược - Có vượt", [Vị trí].CONTAINTEXT("Trực page") ), 2 - ( [KẾT QUẢ THỰC ĐẠT - NHÂN VIÊN] / [MỤC TIÊU] ), IF( [Quy tắc đánh giá] = "Xuôi - Có vượt", [KẾT QUẢ THỰC ĐẠT - NHÂN VIÊN] / [MỤC TIÊU], IF( [Quy tắc đánh giá] = "Xuôi - Không vượt", MIN( 1, [KẾT QUẢ THỰC ĐẠT - NHÂN VIÊN] / [MỤC TIÊU] ), "" ) ) ) ) ) )
11 ĐIỂM ĐÁNH GIÁ - NHÂN VIÊN Công thức Tự tính (công thức) Công thức: [TRỌNG SỐ]*[MỨC ĐỘ HOÀN THÀNH (%) - NHÂN VIÊN]
12 TÀI LIỆU THAM CHIẾU Văn bản Nhập liệu Đính kèm link kết quả
13 KẾT QUẢ THỰC ĐẠT - QUẢN LÝ Số Nhập liệu Định dạng 0.00
14 MỨC ĐỘ HOÀN THÀNH (%) - QUẢN LÝ Công thức Tự tính (công thức) Công thức: IF( [MỤC TIÊU] = "", "", IF( [MỤC TIÊU] = 0, IF( AND( [Quy tắc đánh giá] = "Ngược - Không vượt", [KẾT QUẢ THỰC ĐẠT - QUẢN LÝ] = 0 ), 1, "" ), IF( [KẾT QUẢ THỰC ĐẠT - QUẢN LÝ] = "", 0, IF( AND( [Quy tắc đánh giá] = "Ngược - Có vượt", [Vị trí].CONTAINTEXT("Trực page") ), 2 - ( [KẾT QUẢ THỰC ĐẠT - QUẢN LÝ] / [MỤC TIÊU] ), IF( [Quy tắc đánh giá] = "Xuôi - Có vượt", [KẾT QUẢ THỰC ĐẠT - QUẢN LÝ] / [MỤC TIÊU], IF( [Quy tắc đánh giá] = "Xuôi - Không vượt", MIN( 1, [KẾT QUẢ THỰC ĐẠT - QUẢN LÝ] / [MỤC TIÊU] ), "" ) ) ) ) ) )
15 ĐIỂM ĐÁNH GIÁ - QUẢN LÝ Công thức Tự tính (công thức) Công thức: [MỨC ĐỘ HOÀN THÀNH (%) - QUẢN LÝ]*[TRỌNG SỐ]
16 DIỄN GIẢI GHI CHÚ Văn bản Nhập liệu
17 QUẢN LÝ Tra cứu (Lookup) Tự lấy (tra cứu) Tra cứu, cột [Leader]. Biểu thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user]=[NHÂN SỰ]).[Leader].LISTCOMBINE()
18 THÁNG/NĂM Ngày giờ Nhập liệu Định dạng dd/MM/yyyy
19 Khoá dữ liệu Chọn một Nhập liệu Lựa chọn: Khoá dữ liệu
20 Phòng/Ban Công thức Tự tính (công thức) Công thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user]=[NHÂN SỰ]&&[NHÂN SỰ]!="").[Ban].LISTCOMBINE()
21 Vị trí Công thức Tự tính (công thức) Công thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user]=[NHÂN SỰ]&&[NHÂN SỰ]!="").[Vị trí].LISTCOMBINE()
22 user_id Công thức Tự tính (công thức) Công thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user]=[NHÂN SỰ]&&[NHÂN SỰ]!="").[user_id].LISTCOMBINE()
23 Mức tối đa Số Nhập liệu Định dạng 0.0
24 USER_ID Văn bản Nhập liệu

0.1 - QL Thông tin nhân sự

  • Table ID: tbl8GbiNCT1zbGNR · Base: Base KPI · Số cột: 21 · Cột chính: user_id
  • Khoá trong config/lark-tables.mjs: KPI.NHAN_SU
  • Code ONE-ANNA tham chiếu: apps/api/src/portal/kpi-monthly-seed.js
  • Liên kết tới: 0.2 - QL Tiêu chí KPI
  • Cơ cấu cột: 1 công thức · 0 tra cứu · 1 liên kết · 19 cột nhập/hệ thống

Ghi chú nghiệp vụ: danh sách nhân sự thuộc đối tượng KPI; HR đặt đối tượng áp dụng qua saveKpiEligibility.

# Cột Kiểu Nguồn giá trị Chi tiết / công thức Mô tả trên Base
1 user_id 🔑 Văn bản Nhập liệu
2 user Người (User) Nhập liệu Một người
3 Leader Người (User) Nhập liệu Nhiều người
4 Họ và tên Văn bản Nhập liệu
5 Ngày sinh Ngày giờ Nhập liệu Định dạng dd/MM/yyyy
6 Ngày hết hạn Ngày giờ Nhập liệu Định dạng dd/MM/yyyy
7 Ngày thay đổi vị trí gần nhất Ngày giờ Nhập liệu Định dạng yyyy/MM/dd HH:mm
8 Ban Chọn nhiều Nhập liệu Lựa chọn: Ban Giám Đốc, Ban Hành chính Nhân sự, Phòng Công nghệ thông tin, Phòng Kho vận, Phòng Kiểm soát nội bộ, Ban Tài chính - Kế toán, Khối Mua hàng - Cung ứng, Phòng Mua hàng, Phòng Phát triển Dự án, Ban Marketing, Phòng Trải nghiệm khách hàng, Khối Vận Hành - Kinh Doanh, Phòng Marketing miền Nam, Phòng chuyển đổi số và ERP
9 Đơn vị Chọn nhiều Nhập liệu 125 lựa chọn (không liệt kê)
10 Vị trí Chọn nhiều Nhập liệu 123 lựa chọn (không liệt kê)
11 Phân loại Chọn nhiều Nhập liệu Lựa chọn: Cửa hàng, CSKH, Văn phòng, Trực page, Kho vận, Full công, AM, BP Design & Media, Phòng bán hàng (RSM-AM)
12 Ngày thay đổi trạng thái làm việc gần nhất Ngày giờ Nhập liệu Định dạng yyyy/MM/dd HH:mm
13 Trạng thái làm việc Chọn nhiều Nhập liệu Lựa chọn: Thực tập sinh, Thử việc, Chính thức, Nghỉ thai sản, Nghỉ dài ngày, Nghỉ việc, Chuẩn bị nghỉ việc
14 Trạng thái hoạt động Văn bản Nhập liệu
15 Ngày bắt đầu làm việc Ngày giờ Nhập liệu Định dạng yyyy/MM/dd HH:mm
16 SourceID Văn bản Nhập liệu
17 0.2 - QL Tiêu chí KPI Liên kết hai chiều Liên kết bản ghi Liên kết tới 0.2 - QL Tiêu chí KPI (một bản ghi); cột đối ứng: [USER_ID]
18 Đánh giá KPI Chọn một Nhập liệu Lựa chọn: Có, Không
19 Trạng thái đánh giá KPI Công thức Tự tính (công thức) Công thức: IF( [Đánh giá KPI] = "", "", IF( OR( [Đánh giá KPI] = "Không", [Trạng thái làm việc].CONTAINTEXT("Nghỉ việc") ), "Hết hiệu lực", "Còn hiệu lực" ) )
20 Tạo bảng KPI Checkbox Nhập liệu
21 Thâm niên Số Nhập liệu Định dạng 0.00

0.2 - QL Tiêu chí KPI

  • Table ID: tblZpPWzkC0BDaKw · Base: Base KPI · Số cột: 13 · Cột chính: HẠNG MỤC
  • Khoá trong config/lark-tables.mjs: KPI.TIEU_CHI
  • Code ONE-ANNA tham chiếu: apps/api/src/portal/kpi-monthly-seed.js
  • Liên kết tới: 0.1 - QL Thông tin nhân sự
  • Cơ cấu cột: 1 công thức · 1 tra cứu · 1 liên kết · 10 cột nhập/hệ thống

Ghi chú nghiệp vụ: danh mục tiêu chí KPI; HR sửa qua saveKpiCriteria (màn Cài đặt KPI).

# Cột Kiểu Nguồn giá trị Chi tiết / công thức Mô tả trên Base
1 HẠNG MỤC 🔑 Văn bản Nhập liệu
2 CÔNG VIỆC CHÍNH/KPI Văn bản Nhập liệu
3 TRỌNG SỐ Số Nhập liệu Định dạng 0.00%
4 ĐƠN VỊ TÍNH Văn bản Nhập liệu
5 CÁCH ĐO LƯỜNG Văn bản Nhập liệu
6 Quy tắc đánh giá Chọn một Nhập liệu Lựa chọn: Xuôi - Có vượt, Ngược - Có vượt, Xuôi - Không vượt, Ngược - Không vượt
7 MỤC TIÊU Số Nhập liệu Định dạng 0.0
8 USER_ID Liên kết hai chiều Liên kết bản ghi Liên kết tới 0.1 - QL Thông tin nhân sự (một bản ghi); cột đối ứng: [0.2 - QL Tiêu chí KPI]
9 NHÂN SỰ Tra cứu (Lookup) Tự lấy (tra cứu) Tra cứu, cột [user]. Biểu thức: '0.1 - QL Thông tin nhân sự'.FILTER(CurrentValue.[user_id]=[USER_ID]).[user].LISTCOMBINE()
10 NGÀY ÁP DỤNG Ngày giờ Nhập liệu Định dạng yyyy/MM/dd HH:mm
11 NGÀY KẾT THÚC Ngày giờ Nhập liệu Định dạng yyyy/MM/dd HH:mm
12 TRẠNG THÁI Công thức Tự tính (công thức) Công thức: IF(AND([NGÀY ÁP DỤNG]!="",[NGÀY KẾT THÚC]!=""),IF([NGÀY KẾT THÚC]<=TODAY(),"Hết hiệu lực","Còn hiệu lực"),IF(AND([NGÀY ÁP DỤNG]!="",[NGÀY KẾT THÚC]=""),"Còn hiệu lực",""))
13 Mức tối đa Số Nhập liệu Định dạng 0.0