Cách gọi query

Cách gọi query

Sau khi tạo xong, có 1 số cách gọi như sau
1. Gọi từ url
2. Gọi từ lệnh iif-F  (For)
3. Liên kết button
4. Thực thi xong và chuyển đến liên kết

 



1. Gọi từ url
 
1.1 Gọi cơ bản
  1.2 Gọi có thay đổi tham số query 
  1.3 Gọi có thêm add query (thêm 1 query khác vào)

------------------------

  
  1.1 Gọi cơ bản:
* Có thể xem dữ liệu gốc bằng cách vào click tiết và click nút xem
   * Link thực thi: adminxml/Query_Do.aspx?name=TEN_QUERY&out=json

          out=json/xml/txt/để trống
         ------------------------
          *  json: trả về kiểu dữ liệu json
          * xml: trả về kiểu dữ liệu xml 
          * txt trả về kiểu text  (áp dùng khi trả về 1 giá trị văn bản thông dụng, như số bảng ghi thực thi được hay giá trị 1 cột chỉ định )
          Ví dụ: /adminxml/Query_Do.aspx?name=BanHang_iif/test&out=txt
           Nếu query test trả về 2 table thì kết quả text trả về là 1 chuổi
      * Sẽ lấy mặc định là bảng cuối cùng, dòng 0, cột 0
      *** Vì 1 Query có thể trả về nhiều table từ  0 đến n, nếu có 1 bảng thì lấy chỉnh table đó
      * Nếu muốn chỉ định 1 giá trị theo mong muốn
     
    Thêm out_pos_txt=vi tri table, vi tri dòng, vi tri cột để lấy giá trị ra
     * Nếu để trống sẽ lấy mặc định là bảng cuối cùng, dòng 0, cột 0
     Vì 1 Query có thể trả về nhiều table từ  0 đến n
           Ví dụ: /adminxml/Query_Do.aspx?name=BanHang_iif/test&out=txt&out_pos_txt=0,0,0

          ở chế độ thực thi nếu chạy ở chế độ public thì thêm lệnh
   
<Security>public</Security>  
       *  Nếu không để puplic thì khi truy cập cần phải có mật khẩu


  
1.2 Gọi có thay đổi tham số:
 
* Truy cập query có thay đổi giá trị tham số (thay đổi cấu trúc text của query)
     adminxml/Query_Do.aspx?name=TEN_QUERY&out=json&replace_cmd=x
   
X là giá trị thay thế, cú pháp:
     [input>1]--->gt1/-and-/[input>2]--->gt2
    Sẽ tìm chuổi [input>1] thay thế lại thành gt1
                         [input>2] thay thế lại thành gt2
   [input>1], [input>2] có thể thay thế lại từ bất kỳ.

  
Ví dụ:
 adminxml/Query_Do.aspx?name=TEST&out=json&replace_cmd=[input>1]--->1/-and-/[input>2]--->sp.jpg
[input>1] có thể thay thế lại từ có trong query cần thay thế
  * Ví dụ trong Query có từ ABC thì ABC--->XYZ

    * Gợi ý: nếu truyền trên url quá lệnh dài, có thể viết rút gọn mà không cần  [input>1]... vì bỏ trống sẽ mặc định.
     gt1/-and-/gt2    
        - Nếu từ thay thế trống hệ thống mặc định là [input>1] .. [input>2]  ... n
       Giá trị có thể nhiều tham số tùy vào /-and-/

Ví dụ: tạo query có tên TEST

rút đầy đủ:

   adminxml/Query_Do.aspx?name=TEST&out=json&replace_cmd=[input>1]--->1/and/[input>2]--->sp.jpg
rút gọn:
   adminxml/Query_Do.aspx?name=TEST&out=json&replace_cmd=1/and/sp.jpg

<Query>
<ID>Q1</ID>
<Src>12</Src>
<Type>Sql</Type>
<Cmd>INSERT INTO tbHangHoa_SV(ID_HangHoa,HinhAnh) VALUES (@ID_HangHoa,@HinhAnh); </Cmd>
<SqlParameter>
ID_HangHoa/-/
[input>1]
HinhAnh/-/[input>2]
</SqlParameter>
<SqlConfig>
Call:ExecuteNonQuery
</SqlConfig>
</Query>

  
  1.3 Gọi có thêm add query (thêm 1 query khác vào)

Ví dụ:
/Adminxml/Query_Do.aspx?name=NhaHang_ThuChi/ChungTu_ChiTiet_Theo_DT2&out=json&add_q=NhaHang/HopDong_DanhSach_So

Thêm tham số url add_q=tên query

Tên tên Query add vào có ID là Q1 trùng với query gốc thì tự động thêm Q1_2
 


2. Gọi từ lệnh iif-F  (For)
<iif-F>
<Source><type:query/>NhanVien</>0</Source>
<ItemF>
+ <%i=HoTen=i%><br>
</ItemF>
</iif-F>
Tham khảo thêm: /ngon-ngu-iif/ham-foreach-ket-hop-nguon-du-lieu

3. Liên kết với nút button
Tham khảo các mở popup
Thay thế lại đường dẫn Query vào URL

4. Thực thi và chyển đến liên kết

Thêm trên URL tên tham số url_goto_success

url_goto_success=.... {0} để thay thế giá trị từ table 0 và dòng 0, cột 0

Chú ý: phải mã hóa khi đưa lên

Sử dụng javascript: var encodedUrl = encodeURIComponent(url);

 

 

Bài viết liên quan:

Cách gọi query