Hướng dẫn thực hành tạo App ghi nhận sự cố IT (Power Apps + SharePoint)


📘 BÀI GIẢNG THỰC HÀNH

Tạo App ghi nhận sự cố IT (Power Apps + SharePoint)

Kịch bản

  • Nhân viên tạo “phiếu báo lỗi” (ticket)
  • IT xem danh sách ticket và cập nhật trạng thái xử lý

Mục tiêu sau buổi học

Học viên có thể:

  1. Tạo SharePoint List làm “cơ sở dữ liệu ticket”
  2. Tạo Power Apps gồm 3 màn hình:
    • Nhân viên báo sự cố
    • IT xem danh sách
    • IT cập nhật trạng thái
  3. Chạy thử theo các kịch bản kiểm thử thực tế

🧰 Chuẩn bị trước khi thực hành

  • Có tài khoản Microsoft 365 (có SharePoint + Power Apps)
  • Quyền tạo SharePoint List trong site của công ty/lớp học

PHẦN A — TẠO “CƠ SỞ DỮ LIỆU” BẰNG SHAREPOINT LIST

A1. Tạo SharePoint List

  1. Vào SharePoint site (ví dụ: Team site)
  2. Chọn New → List
  3. Chọn Blank list
  4. Đặt tên List: IT_SuCo
  5. Bấm Create

✅ Giải thích: SharePoint List đóng vai trò như “database” lưu ticket. Power Apps sẽ đọc/ghi dữ liệu vào đây.


A2. Tạo các cột dữ liệu (Columns)

Mặc định SharePoint có cột Title. Bạn thêm các cột sau:

1) Cột MoTa (Mô tả)

  • Type: Multiple lines of text
  • Name: MoTa

✅ Giải thích: mô tả chi tiết lỗi (nhân viên nhập).

2) Cột PhongBan

  • Type: Choice
  • Name: PhongBan
  • Choices:
    • Kế toán
    • Kinh doanh
    • IT
    • Hành chính

✅ Giải thích: giúp IT ưu tiên theo phòng ban và lọc dữ liệu.

3) Cột MucDo

  • Type: Choice
  • Name: MucDo
  • Choices:
    • Thấp
    • Trung bình
    • Cao
    • Khẩn cấp

✅ Giải thích: mức độ khẩn cấp của sự cố.

4) Cột TrangThai

  • Type: Choice
  • Name: TrangThai
  • Choices:
    • Mới tạo
    • Đang xử lý
    • Hoàn thành

✅ Giải thích: cột quan trọng để IT quản lý tiến độ.

5) Cột NgayBao

  • Type: Date and Time
  • Name: NgayBao
  • Chọn Date only (khuyến nghị) hoặc Date & Time tùy bạn

✅ Giải thích: ngày tạo ticket để thống kê, lọc theo thời gian.

6) Cột NguoiBao

  • Type: Person or Group
  • Name: NguoiBao

✅ Giải thích: lưu người báo lỗi; có thể tự động lấy từ tài khoản đăng nhập Power Apps.


PHẦN B — DỮ LIỆU MẪU (≥ 15 DÒNG) ĐỂ COPY-PASTE

B1. Bảng dữ liệu mẫu

👉 Cách dùng nhanh cho giảng viên/học viên:
Copy bảng này sang Excel, sau đó nhập vào SharePoint (Import).

Lưu ý: NguoiBao là Person nên khi import Excel có thể khó khớp nếu không đúng email. Bạn có 2 cách:

  • Cách 1 (dễ nhất): import trước các cột không có NguoiBao, sau đó khi chạy app sẽ tự điền NguoiBao = User().
  • Cách 2: nếu lớp học có danh sách email mẫu, mình sẽ viết phiên bản bảng có email chuẩn theo tenant của bạn.

Bảng mẫu (không gồm NguoiBao để import dễ):

TitleMoTaPhongBanMucDoTrangThaiNgayBao
Máy không lên nguồnBấm nút không khởi độngKế toánCaoMới tạo01/02/2026
Không in đượcMáy in báo lỗi kẹt giấyHành chínhTrung bìnhĐang xử lý02/02/2026
Mạng chậmInternet lag, vào web lâuKinh doanhThấpHoàn thành02/02/2026
Outlook không gửi mailBáo lỗi kết nối serverITCaoMới tạo03/02/2026
Màn hình nhấp nháyNhấp nháy liên tục khi mở máyKế toánTrung bìnhĐang xử lý03/02/2026
Không đăng nhập đượcSai mật khẩu/khóa tài khoảnKinh doanhThấpHoàn thành04/02/2026
Laptop nóngQuạt kêu to, máy nóngITTrung bìnhMới tạo04/02/2026
Chuột không hoạt độngChuột không di chuyểnHành chínhThấpHoàn thành05/02/2026
Máy treo liên tụcMở phần mềm là đứng máyKế toánCaoĐang xử lý05/02/2026
Không vào wifiBáo “Limited”Kinh doanhTrung bìnhMới tạo06/02/2026
Phần mềm lỗiKhông mở được phần mềm kế toánITCaoMới tạo06/02/2026
Webcam không nhậnHọp online không thấy cameraHành chínhTrung bìnhĐang xử lý07/02/2026
Loa không có tiếngKhông nghe âm thanhKế toánThấpHoàn thành07/02/2026
Máy khởi động chậmKhởi động mất 5 phútKinh doanhTrung bìnhMới tạo08/02/2026
Bàn phím liệt phímMột số phím không gõ đượcITCaoĐang xử lý08/02/2026

B2. Import dữ liệu vào SharePoint

  1. Mở List IT_SuCo
  2. Chọn New → Excel hoặc Integrate → Import data (tùy giao diện)
  3. Dán dữ liệu vào Excel, lưu file
  4. Import file Excel vào SharePoint, map đúng cột

✅ Kiểm tra: Sau khi import, SharePoint phải có ít nhất 15 dòng.


PHẦN C — TẠO POWER APPS

C1. Tạo Canvas App

  1. Power Apps → Create
  2. Chọn Canvas app
  3. Đặt tên: App_IT_HoTro
  4. Chọn layout: Tablet (khuyến nghị)

✅ Giải thích: Tablet bố cục rộng, dễ bố trí Gallery + Form khi dạy.


C2. Kết nối dữ liệu SharePoint List

  1. Vào tab Data
  2. Add data
  3. Chọn SharePoint
  4. Chọn site → chọn list IT_SuCo
  5. Add

✅ Giải thích: App muốn hiển thị/ghi ticket thì phải kết nối đúng datasource.


PHẦN D — MÀN HÌNH 1: NHÂN VIÊN BÁO SỰ CỐ

D1. Tạo màn hình “Báo sự cố”

  1. Insert → New screen → Form
  2. Đổi tên Screen: scrBaoSuCo
  3. Chọn EditForm (ví dụ tên form: frmBaoSuCo)
  4. DataSource của form: IT_SuCo

Chọn các trường hiển thị

Trong form, chọn Edit fields và thêm:

  • Title
  • MoTa
  • PhongBan
  • MucDo

✅ Giải thích: nhân viên chỉ cần nhập 4 thông tin chính.


D2. Tự động điền NguoiBao, NgayBao, TrangThai

Ta không cho nhân viên tự chọn để tránh sai.

(1) Tự điền Người báo

Chọn DataCard của NguoiBao → Unlock (nếu bị khóa)
Trong Default của input, đặt:

User()

Và đặt DisplayMode của card thành:

DisplayMode.View

✅ Giải thích: User() lấy thông tin người đăng nhập app, đảm bảo đúng.


(2) Tự điền Ngày báo

DataCard NgayBao → Default:

Now()

DisplayMode:

DisplayMode.View

✅ Giải thích: Now() giúp auto timestamp khi tạo ticket.


(3) Tự đặt Trạng thái ban đầu = “Mới tạo”

DataCard TrangThai → Default:

{Value:"Mới tạo"}

DisplayMode:

DisplayMode.View

✅ Giải thích: ticket mới phải vào trạng thái “Mới tạo” để IT xử lý.


D3. Nút “Gửi yêu cầu”

Insert → Button, Text: Gửi yêu cầu

OnSelect:

SubmitForm(frmBaoSuCo);
Notify("Đã gửi yêu cầu thành công!", NotificationType.Success);
NewForm(frmBaoSuCo)

✅ Giải thích:

  • SubmitForm: lưu dữ liệu
  • Notify: thông báo cho người dùng
  • NewForm: reset form để gửi ticket mới

PHẦN E — MÀN HÌNH 2: IT XEM DANH SÁCH TICKET

E1. Tạo màn hình “Danh sách”

Insert → New screen → Blank

Đổi tên: scrDanhSachIT

Insert → Vertical gallery
Đặt tên gallery: galTickets

Items của Gallery:

SortByColumns(IT_SuCo, "NgayBao", Descending)

✅ Giải thích: sắp xếp ticket mới nhất lên đầu.


E2. Hiển thị thông tin trong Gallery

Trong mỗi item của gallery, hiển thị:

  • Title
  • PhongBan
  • MucDo
  • TrangThai
  • NgayBao

✅ Mẹo dạy học: dùng layout “Title, subtitle, body” để nhìn rõ.


E3. Lọc theo Trạng thái (Dropdown)

Insert → Dropdown, tên: ddTrangThai

Items:

["Tất cả","Mới tạo","Đang xử lý","Hoàn thành"]

Sửa Items của Gallery thành:

If(
    ddTrangThai.Selected.Value = "Tất cả",
    SortByColumns(IT_SuCo, "NgayBao", Descending),
    SortByColumns(
        Filter(IT_SuCo, TrangThai.Value = ddTrangThai.Selected.Value),
        "NgayBao",
        Descending
    )
)

✅ Giải thích: IT chọn trạng thái để lọc nhanh.


PHẦN F — MÀN HÌNH 3: IT CẬP NHẬT TRẠNG THÁI

F1. Tạo màn hình “Chi tiết & xử lý”

Insert → New screen → Form screen

Đổi tên: scrXuLy

Tạo Edit form tên: frmXuLy
DataSource: IT_SuCo
Item:

galTickets.Selected

Chọn fields:

  • Title (view)
  • MoTa (view)
  • PhongBan (view)
  • MucDo (view)
  • TrangThai (edit)
  • (NguoiBao, NgayBao nếu muốn view)

✅ Giải thích: IT chỉ cần chỉnh TrangThai là chính.


F2. Chuyển màn hình khi IT bấm vào ticket

Trong galTickets, đặt OnSelect:

Navigate(scrXuLy, ScreenTransition.Fade)

F3. Nút “Cập nhật”

Insert → Button Text: Cập nhật trạng thái

OnSelect:

SubmitForm(frmXuLy);
Notify("Đã cập nhật trạng thái!", NotificationType.Success);
Back()

✅ Giải thích: lưu và quay lại danh sách.


PHẦN G — HƯỚNG DẪN CHẠY THỬ & KIỂM THỬ SAU KHI CHẠY (BẮT BUỘC)

G1. Chạy thử lần 1 (nhân viên tạo ticket)

  1. Bấm Play (▶) trên Power Apps
  2. Vào màn hình Báo sự cố
  3. Nhập:
    • Title: Không mở được file Excel
    • MoTa: File báo corrupted, cần hỗ trợ
    • PhongBan: Kế toán
    • MucDo: Cao
  4. Bấm Gửi yêu cầu

✅ Kết quả đúng:

  • Có thông báo “Đã gửi yêu cầu thành công”
  • SharePoint List xuất hiện dòng mới (TrangThai = Mới tạo)

G2. Chạy thử lần 2 (IT lọc và xem danh sách)

  1. Vào màn hình Danh sách IT
  2. Ở dropdown chọn Mới tạo

✅ Kết quả đúng:

  • Ticket vừa tạo xuất hiện trong danh sách
  • Các ticket mẫu import trước đó cũng hiển thị đúng theo lọc

G3. Chạy thử lần 3 (IT cập nhật trạng thái)

  1. Chọn ticket vừa tạo
  2. Chuyển sang màn hình xử lý
  3. Đổi TrangThai:
    • Mới tạo → Đang xử lý → bấm Cập nhật
  4. Quay lại danh sách, lọc Đang xử lý để kiểm tra
  5. Sau đó đổi tiếp Hoàn thành

✅ Kết quả đúng:

  • Trạng thái cập nhật ngay trong SharePoint
  • Bộ lọc hoạt động chuẩn, ticket “chạy” qua các trạng thái

G4. Checklist lỗi thường gặp (để học viên tự sửa)

  • Không thấy dữ liệu → kiểm tra DataSource đã Add đúng list chưa
  • SubmitForm không lưu → kiểm tra Form.DataSource + Required fields
  • TrangThai không đúng giá trị → phải đúng Choice (Mới tạo/Đang xử lý/Hoàn thành)
  • galTickets.Selected bị rỗng → đảm bảo OnSelect của item gallery có Navigate

PHẦN H — BÀI TẬP THỰC HÀNH TRÊN LỚP

Bài tập 1 (bắt buộc)

Tạo thêm 2 ticket mới, mỗi ticket thuộc phòng ban khác nhau.

Bài tập 2 (lọc nâng cao)

Hiển thị chỉ các ticket chưa hoàn thành:

Gợi ý Items Gallery:

Filter(IT_SuCo, TrangThai.Value <> "Hoàn thành")

Bài tập 3 (thống kê nhanh)

Đếm số ticket “Đang xử lý”:

CountRows(Filter(IT_SuCo, TrangThai.Value = "Đang xử lý"))

✅ TỔNG KẾT

Học viên đã hoàn thành:

  • SharePoint List quản lý ticket
  • Power Apps 3 màn hình: báo lỗi → danh sách IT → cập nhật
  • Dữ liệu mẫu ≥ 15 dòng
  • Quy trình chạy thử & kiểm thử sau khi chạy

Scroll to Top