b1: Tạo query để lưu chữ ký
Có tên ChungTu_ChuKy_Luu
<Query>
<ID>Q1</ID>
<Src>cnSQL_HDND</Src>
<Type>Sql</Type>
<Cmd>
DECLARE @KEY_Tao UNIQUEIDENTIFIER
SET @KEY_Tao = NEWID()
IF NOT EXISTS (Select _SYS_KEY From dbo.tbChungTu_ChuKy Where ChungTu_KEY=@ChungTu_KEY AND DoiTuong=@DoiTuong)
begin
Insert
into tbChungTu_ChuKy
(_SYS_KEY,ChungTu_KEY,DoiTuong,ChuKy,UserName,HoTen,GhiChu,NgayKy)
VALUES
(
LOWER(@KEY_Tao ) ,@ChungTu_KEY,@DoiTuong,@ChuKy,@UserName,@HoTen,@GhiChu,getdate()
)
SELECT @@ROWCOUNT
end
else
begin
Select N'Không thể ký, vì đã ký trước đó'
end
</Cmd>
<SqlParameter>
ChungTu_KEY<pr&/><iif-DGVL>Form:chungtu_key</iif-DGVL>
DoiTuong<pr&/><iif-DGVL>Form:doituong</iif-DGVL>
ChuKy<pr&/><iif-DGVL>Form:image</iif-DGVL>
UserName<pr&/>{#SysUser-UserName}
HoTen<pr&/>{#SysUser-Name}
GhiChu<pr&/>
</SqlParameter>
</Query>
Chú ý: Query bắt buộc trả về
1: là khi ký thành công , còn lại là lỗi
b2: Tạo nút lệnh để ký
* Nút lệnh chỉ lưu file vào thư mục
<button type="button" id="btChuKy_Duyet" class="bt_open_w_pIIF btn btn-dark " p_l="/ManagerFile/signature-pad-main/Default.aspx?__state=save_file&__path_file_save=/UserFiles/kytay.jpg" p_w="500px" p_h="460px" p_t="Ký tên - DUYỆT" data-toggle="modal" data-target="#Obj_popup_pIIF"><i class="fas fa-signature"></i> Ký duyệt</button>
Đổi lại /UserFiles/kytay.jpg đường dẫn file lưu
Thêm đoạn hiển thị chữ ký:
<hr>
<img src="/UserFiles/kytay.jpg?ver=<iif-D>Math:Random</iif-D>
" alt="Chưa ký" width="500px">
* Nút lệnh lưu vào CSDL
<button type="button" id="btChuKy_Duyet" class="bt_open_w_pIIF btn btn-dark " p_l="/ManagerFile/signature-pad-main/Default.aspx?chungtu_key=<iif-D>Url:_SYS_KEY</iif-D>&doituong=Duyet&__state=call_query&__name_query=ChungTu_ChuKy_Luu" p_w="500px" p_h="460px" p_t="Ký tên - DUYỆT" data-toggle="modal" data-target="#Obj_popup_pIIF"><i class="fas fa-signature"></i> Ký duyệt</button>
Đường dẫn chức năng ký: /ManagerFile/signature-pad-main/Default.aspx
** Giải thích tham số URL:
__state : chế độ lưu ảnh
save_file: lưu vào thư mục
call_query: lưu qua gọi query
__name_query
Nếu chọn chế độ là gọi query thì tên query gọi là
__path_file_save
Nếu chọn chế độ save_file là tên file cần lưu
Để trống sẽ lưu vào vị trí /UserFiles/ky.jpg
Nếu nhập thì /UserFiles/LuTruChuKy/kytay.jpg
__aftersave
Để trống thì sau khi lưu sẽ reload lại trang dạng thông thường
Lệnh JS
* Gọi 1 hàm từ trang cha
__aftersave=loadFormPopup() thì sau khi lưu gọi hàm JS loadFormPopup được viết ở trang cha
function loadFormPopup()
{
//alert("test");
$("#btLoad").trigger("click");
IIF_f_Close_Popup(); // nếu muốn đóng cửa sổ
}
*** Lệnh gán mở popup
url="/ManagerFile/signature-pad-main/Default.aspx?chungtu_key="+obj._SYS_KEY+"&doituong=PC_Duyet&__state=call_query&__name_query=NhaHang/ChungTu_ChuKy_Luu&__aftersave=loadFormPopup()";//
IIF_f_OpenUrlPopup(url,"400px","350px",'Ký duyệt phiếu chi'); //hàm này trong trang master
Cách tạo chữ ký tay và lưu chữ ký và cơ sỡ dữ liệu