Kết nối dữ liệu là một liên kết động giữa biểu mẫu Microsoft Office InfoPath và nguồn dữ liệu ngoài lưu trữ hoặc cung cấp dữ liệu cho biểu mẫu đó. Nguồn dữ liệu là tập hợp các trường và nhóm xác định và lưu trữ dữ liệu cho biểu mẫu. Điều khiển được liên kết với các trường và nhóm trong nguồn dữ liệu và hiển thị dữ liệu cho người dùng.
Một biểu mẫu có thể có một kết nối dữ liệu chính, được gọi là kết nối dữ liệu chính và có thể tùy chọn có một hoặc nhiều kết nối dữ liệu phụ. Tùy thuộc vào mục tiêu của bạn cho biểu mẫu, kết nối dữ liệu có thể truy vấn hoặc gửi dữ liệu biểu mẫu đến nguồn dữ liệu bên ngoài, chẳng hạn như cơ sở dữ liệu Microsoft SQL Server hoặc dịch vụ Web.
Trong bài viết này
- Tổng quan về kết nối dữ liệu
- Làm việc với kết nối dữ liệu chính
- Làm việc với kết nối dữ liệu thứ cấp
- Lưu trữ dữ liệu để sử dụng ngoại tuyến
- Những điều cần cân nhắc khi kết nối với nguồn dữ liệu ngoài
Tổng quan về kết nối dữ liệu
Kết nối dữ liệu là một liên kết động giữa biểu mẫu và nguồn dữ liệu lưu trữ hoặc cung cấp dữ liệu cho biểu mẫu đó. Một biểu mẫu có thể có một kết nối dữ liệu chính, được gọi là kết nối dữ liệu chính và có thể tùy chọn có một hoặc nhiều kết nối dữ liệu phụ. Kết nối dữ liệu chính xác định nguồn dữ liệu chính của biểu mẫu. Sơ đồ XML mô tả cách dữ liệu được lưu trữ trong nguồn dữ liệu chính của biểu mẫu. Chỉ có thể có một kết nối dữ liệu chính cho biểu mẫu và được tạo tự động khi bạn tạo mẫu biểu mẫu dựa trên nguồn dữ liệu ngoài. Bạn có thể tạo bao nhiêu kết nối dữ liệu phụ tùy thích khi thiết kế mẫu biểu mẫu.
Tùy thuộc vào mục tiêu của bạn cho biểu mẫu, bạn có thể tạo kết nối dữ liệu chính hoặc phụ đến nguồn dữ liệu bên ngoài, chẳng hạn như cơ sở dữ liệu Microsoft SQL Server hoặc dịch vụ Web. Nguồn dữ liệu ngoài là kho dữ liệu gửi dữ liệu đến hoặc có thể nhận dữ liệu từ biểu mẫu dựa trên mẫu biểu mẫu của bạn. InfoPath hoạt động với các nguồn dữ liệu ngoài sau đây:
- Cơ sở dữ liệu Microsoft Office Access
- Cơ sở dữ SQL Server microsoft
- Dịch vụ web
- Thư viện tài liệu hoặc danh sách trên máy chủ chạy Microsoft Windows SharePoint Services
- Tệp XML
Bạn có thể tạo ba kiểu kết nối dữ liệu đến nguồn dữ liệu ngoài: chỉ dữ liệu truy vấn, chỉ gửi dữ liệu hoặc cả truy vấn và gửi dữ liệu. Kết nối dữ liệu truy vấn nhận dữ liệu từ nguồn dữ liệu và lưu trữ dữ liệu đó trong biểu mẫu. Kết nối gửi dữ liệu sẽ gửi dữ liệu từ biểu mẫu đến nguồn dữ liệu, đến một ứng dụng trên máy chủ Web, đến thư viện tài liệu trên máy chủ chạy Microsoft Windows SharePoint Services hoặc trong thư email. Truy vấn và gửi kết nối dữ liệu cả nhận dữ liệu từ và gửi dữ liệu đến nguồn dữ liệu. Khi bạn tạo kết nối dữ liệu, bạn xác định kiểu kết nối dữ liệu mà bạn muốn. Ví dụ: bạn có thể tạo kết nối dữ liệu thực hiện bất kỳ thao tác nào sau đây:
- Truy vấn dữ liệu từ cơ sở dữ liệu
- Gửi dữ liệu biểu mẫu trong thông điệp email
- Gửi dữ liệu biểu mẫu đến một ứng dụng trên máy chủ Web
- Gửi dữ liệu biểu mẫu đến một ứng dụng tùy chỉnh sử dụng điều khiển XmlFormView
- Truy vấn hoặc gửi dữ liệu thông qua mã lập trình tùy chỉnh, chẳng hạn như C#, Microsoft Visual Basic .NET hoặc Microsoft JScript.
- Sử dụng thiết đặt kết nối được lưu trữ trong thư viện kết nối dữ liệu trên máy chủ chạy Microsoft Office SharePoint Server 2007
- Truy vấn hoặc gửi dữ liệu đến Dịch vụ Dòng công việc Con người trên Microsoft BizTalk Server 2004 hoặc BizTalk Server 2006
Loại kết nối mà bạn sử dụng phụ thuộc vào mục tiêu của bạn đối với biểu mẫu và loại nguồn dữ liệu bên ngoài mà bạn muốn kết nối biểu mẫu.
Kết nối dữ liệu truy vấn
Kết nối dữ liệu truy vấn lấy dữ liệu từ nguồn dữ liệu ngoài và lưu trữ dữ liệu đó vào các trường trong nguồn dữ liệu chính hoặc phụ của biểu mẫu. Sau đó, bạn có thể liên kết các điều khiển với các trường đó để hiển thị dữ liệu đó trong biểu mẫu. Bạn có thể tạo kết nối dữ liệu truy vấn theo những cách sau đây:
- Thiết kế mẫu biểu mẫu dựa trên cơ sở dữ liệu, dịch vụ Web hoặc thiết đặt được lưu trữ trong thư viện kết nối. Sau đó, cấu trúc của nguồn dữ liệu ngoài sẽ xác định nguồn dữ liệu chính cho biểu mẫu.
- Sửa đổi mẫu biểu mẫu hiện có bằng cách thêm kết nối dữ liệu phụ truy vấn cơ sở dữ liệu, dịch vụ Web, danh sách hoặc thư viện SharePoint hoặc tệp XML.
Khi bạn thiết kế mẫu biểu mẫu mới dựa trên cơ sở dữ liệu, dịch vụ Web hoặc thiết đặt trong thư viện kết nối, bạn tạo kết nối dữ liệu truy vấn trở thành kết nối dữ liệu chính cho biểu mẫu dựa trên mẫu biểu mẫu đó. Bạn chỉ có thể xác định một kết nối dữ liệu truy vấn làm kết nối dữ liệu chính cho mẫu biểu mẫu. Nếu bạn cần truy vấn dữ liệu từ các nguồn dữ liệu bổ sung, bạn có thể tạo kết nối dữ liệu thứ cấp truy vấn dữ liệu từ các nguồn dữ liệu đó. Bạn sẽ tìm hiểu thêm về kết nối dữ liệu phụ ở phần sau của bài viết này.
Khi bạn thêm kết nối dữ liệu phụ có truy vấn dữ liệu vào mẫu biểu mẫu của mình, bạn có thể xác định liệu InfoPath có nên sử dụng kết nối dữ liệu mỗi lần người dùng mở biểu mẫu hoặc sau các sự kiện cụ thể xảy ra khi người dùng điền vào biểu mẫu hay không, chẳng hạn như bấm vào một nút để hiển thị danh sách các tùy chọn. Để sử dụng kết nối dữ liệu sau khi các sự kiện cụ thể xảy ra, hãy sử dụng một trong các phương pháp sau đây:
- Chèn điều khiển nút làm mới dữ liệu trong biểu mẫu.
- Thêm quy tắc để sử dụng kết nối dữ liệu khi một điều kiện trên biểu mẫu tồn tại.
- Viết mã tùy chỉnh cho các sự kiện cụ thể.
Gửi kết nối dữ liệu
Khi người dùng gửi biểu mẫu, dữ liệu từ biểu mẫu đó sẽ được gửi thông qua kết nối dữ liệu gửi đến nguồn dữ liệu bên ngoài. Bạn có thể cấu hình mẫu biểu mẫu đó để cho phép người dùng gửi dữ liệu đến các kiểu nguồn dữ liệu bên ngoài sau đây:
- Cơ sở dữ liệu Microsoft Office Access
- Cơ sở dữ SQL Server microsoft
- Dịch vụ web
Bạn cũng có thể thêm kết nối dữ liệu phụ gửi dữ liệu theo những cách sau:
- Gửi dữ liệu biểu mẫu đến thư viện tài liệu trên máy chủ đang Microsoft Windows SharePoint Services.
- Gửi dữ liệu biểu mẫu trong thông điệp email.
- Gửi dữ liệu biểu mẫu đến một ứng dụng trên máy chủ Web.
Bạn tạo kết nối dữ liệu gửi theo những cách sau đây:
Thiết kế mẫu biểu mẫu mới dựa trên cơ sở dữ liệu, dịch vụ Web hoặc thiết đặt được lưu trữ trong thư viện kết nối trên máy chủ chạy Office SharePoint Server 2007. Sau đó, cấu trúc của nguồn dữ liệu ngoài sẽ xác định nguồn dữ liệu chính cho biểu mẫu.
Sửa đổi mẫu biểu mẫu hiện có bằng cách thêm kết nối dữ liệu phụ, rồi cấu hình mẫu biểu mẫu để cho phép người dùng gửi biểu mẫu của họ thông qua kết nối dữ liệu phụ này.
Mẹo
Khi bạn thiết kế mẫu biểu mẫu dựa trên Office Access hoặc cơ sở dữ liệu SQL Server, InfoPath sẽ tự động cấu hình kết nối dữ liệu gửi nếu cơ sở dữ liệu đáp ứng các yêu cầu nhất định. Tìm các nối kết để biết thêm thông tin về các yêu cầu này trong phần Xem Thêm. Bạn có thể chọn tắt tính năng Gửi nếu bạn muốn người dùng của mình gửi biểu mẫu đã hoàn thành của họ bằng cách sử dụng một loại kết nối dữ liệu gửi khác.
Trong hầu hết các trường hợp, bạn sẽ cấu hình một kết nối dữ liệu gửi làm hành động gửi chính cho mẫu biểu mẫu của bạn. Tuy nhiên, bạn có thể thiết kế mẫu biểu mẫu của mình để người dùng có thể gửi biểu mẫu đã hoàn thành của họ đến nhiều vị trí bằng cách sử dụng quy tắc hoặc mã tùy chỉnh. Ví dụ, bạn có thể cấu hình mẫu biểu mẫu của bạn để cho phép người dùng của bạn gửi các biểu mẫu đã hoàn thành của họ đến một dịch vụ Web cũng như thông qua một thông điệp email. Thông thường, bạn cấu hình mẫu biểu mẫu để gửi tất cả dữ liệu trong biểu mẫu. Tuy nhiên, nếu bạn sử dụng mã tùy chỉnh để gửi dữ liệu biểu mẫu hoặc bạn đang cấu hình mẫu biểu mẫu để cho phép biểu mẫu gửi dữ liệu đến dịch vụ Web, bạn có thể gửi một phần dữ liệu của biểu mẫu.
Truy vấn và gửi kết nối dữ liệu
Khi bạn thiết kế mẫu biểu mẫu dựa trên cơ sở dữ liệu hoặc dịch vụ Web, bạn có thể tạo kết nối dữ liệu có thể lấy dữ liệu từ đó và gửi dữ liệu đến cơ sở dữ liệu hoặc dịch vụ Web. Nếu bạn đang thiết kế mẫu biểu mẫu dựa trên cơ sở dữ liệu, kết nối dữ liệu có thể nhận hoặc gửi dữ liệu. Tuy nhiên, để các biểu mẫu dựa trên mẫu biểu mẫu này gửi dữ liệu đến cơ sở dữ liệu, các yêu cầu sau đây phải được đáp ứng:
- Bạn đang không thiết kế mẫu biểu mẫu tương thích với trình duyệt.
- Tất cả các bảng trong kết nối dữ liệu chính phải chứa khóa chính, ràng buộc duy nhất hoặc chỉ mục duy nhất.
- Tất cả các bảng trong truy vấn phải có một mối quan hệ đơn giản, phân cấp.
- Không trường dữ liệu nào trong nguồn dữ liệu chính của biểu mẫu có thể lưu trữ kiểu dữ liệu nhị phân lớn.
Bạn có thể tìm hiểu thêm về các yêu cầu này trong mục Cân nhắc kết nối với nguồn dữ liệu ngoài ở phần sau của bài viết này.
Kết nối dữ liệu có thể lấy dữ liệu từ hoặc gửi dữ liệu đến dịch vụ Web cũng giống như kết nối dữ liệu truy vấn và kết nối dữ liệu gửi kết hợp thành một kết nối dữ liệu duy nhất.
Làm việc với kết nối dữ liệu chính
Kết nối dữ liệu chính thiết lập kết nối với nguồn dữ liệu chính của biểu mẫu. Sơ đồ XML mô tả cấu trúc để lưu trữ dữ liệu trong nguồn dữ liệu chính của biểu mẫu. Bạn có thể thiết kế nguồn dữ liệu bằng cách sử dụng ngăn tác vụ Nguồn Dữ liệu hoặc bạn có thể cho phép InfoPath tự động tạo nguồn dữ liệu khi bạn thêm điều khiển vào mẫu biểu mẫu của mình. Bạn cũng có thể thiết kế mẫu biểu mẫu dựa trên nguồn dữ liệu ngoài, lần lượt xác định cấu trúc của nguồn dữ liệu chính. Mẫu biểu mẫu chỉ có thể có một kết nối dữ liệu chính.
Nếu kết nối dữ liệu chính kết nối với nguồn dữ liệu bên ngoài, cách bạn làm việc với kết nối dữ liệu chính phụ thuộc vào loại nguồn dữ liệu mà nguồn dữ liệu đó kết nối đến.
Cơ sở dữ liệu Khi bạn thiết kế mẫu biểu mẫu dựa trên cơ sở dữ liệu, InfoPath sẽ tạo kết nối dữ liệu chính để truy vấn và tùy ý gửi dữ liệu đến cơ sở dữ liệu đó. Nếu biểu mẫu sẽ chỉ được điền bằng InfoPath và cơ sở dữ liệu đáp ứng các yêu cầu được liệt kê trong mục Cân nhắc kết nối với nguồn dữ liệu bên ngoài, InfoPath sẽ tự động tạo kết nối dữ liệu gửi và cấu hình mẫu biểu mẫu để cho phép người dùng gửi biểu mẫu của họ. Nếu biểu mẫu sẽ được điền bằng trình duyệt, InfoPath sẽ không tạo kết nối gửi dữ liệu đến cơ sở dữ liệu. Các kết nối dữ liệu gửi dữ liệu đến cơ sở dữ liệu không được hỗ trợ trong mẫu biểu mẫu tương thích với trình duyệt.
Mẹo
Nếu biểu mẫu sẽ được điền bằng trình duyệt và bạn muốn gửi dữ liệu đến cơ sở dữ liệu, bạn có thể thực hiện điều này bằng cách kết nối biểu mẫu với dịch vụ Web gửi dữ liệu đến cơ sở dữ liệu đó.
Dịch vụ web Khi bạn thiết kế mẫu biểu mẫu dựa trên dịch vụ Web, bạn có thể tạo kết nối dữ liệu chính để cả truy vấn và gửi dữ liệu, chỉ gửi dữ liệu truy vấn hoặc chỉ gửi dữ liệu. Nếu bạn chọn gửi dữ liệu, InfoPath sẽ tự động cấu hình mẫu biểu mẫu để cho phép người dùng gửi biểu mẫu của họ. Bạn có thể chỉ định gửi một số dữ liệu biểu mẫu hay tất cả dữ liệu biểu mẫu. Nếu chỉ gửi một số dữ liệu, bạn có thể chỉ định trường nào trong một nhóm cụ thể chứa dữ liệu cần được gửi, tùy thuộc vào yêu cầu của dịch vụ Web.
Khi bạn thiết kế mẫu biểu mẫu dựa trên cơ sở dữ liệu hoặc dịch vụ Web, InfoPath sẽ tạo nguồn dữ liệu chính với các trường truy vấn, trường dữ liệu và nhóm tương ứng với cách dữ liệu được lưu trữ trong cơ sở dữ liệu hoặc dịch vụ Web. Trường truy vấn chứa giá trị được sử dụng trong truy vấn để truy xuất dữ liệu từ cơ sở dữ liệu bằng cách sử dụng kết nối dữ liệu truy vấn. Kết quả của truy vấn được đưa vào các trường dữ liệu, có thể chỉnh sửa khi người dùng mở biểu mẫu. Khi người dùng gửi biểu mẫu, dữ liệu trong các trường dữ liệu sẽ được gửi bằng cách sử dụng kết nối dữ liệu gửi. Vì các trường và nhóm trong nguồn dữ liệu chính phải khớp với cách dữ liệu được lưu trữ trong nguồn dữ liệu ngoài nên bạn không thể sửa đổi các trường và nhóm này. Tuy nhiên, bạn có thể thêm các trường hoặc nhóm vào trường gốc trong nguồn dữ liệu chính.
Để cho phép người dùng xem, chọn, chỉnh sửa hoặc gửi dữ liệu trong các trường dữ liệu, bạn có thể kết ghép các điều khiển, chẳng hạn như hộp văn bản và hộp kiểm, vào các trường trong biểu mẫu. Nếu bạn muốn truy vấn và hiển thị các giá trị bổ sung mà người dùng có thể chọn làm lựa chọn, bạn có thể kết ghép một điều khiển, chẳng hạn như hộp danh sách với các trường truy vấn. Nếu bạn muốn người dùng chọn giá trị từ danh sách, bạn có thể kết ghép một điều khiển, chẳng hạn như hộp danh sách với trường dữ liệu, rồi đặt thuộc tính của điều khiển để hiển thị giá trị từ nguồn dữ liệu phụ hoặc trường lặp trong nguồn dữ liệu chính.
Làm việc với kết nối dữ liệu thứ cấp
Kết nối dữ liệu thứ cấp kết nối biểu mẫu với nguồn dữ liệu ngoài. Kết nối dữ liệu thứ cấp rất hữu ích khi bạn cần truy vấn hoặc gửi dữ liệu biểu mẫu đến một nguồn dữ liệu ngoài ngoài nguồn dữ liệu ngoài trong kết nối dữ liệu chính hoặc khi bạn muốn người dùng gửi dữ liệu đến nhiều nguồn dữ liệu bên ngoài. Bạn có thể tạo bao nhiêu kết nối dữ liệu phụ tùy thích.
Kết nối dữ liệu thứ cấp có thể truy vấn hoặc gửi dữ liệu đến các kiểu nguồn dữ liệu bên ngoài sau đây:
- Cơ sở dữ liệu Office Access
- Cơ sở dữ liệu SQL Server
- Dịch vụ web
- Thư viện tài liệu hoặc danh sách trên máy chủ chạy Windows SharePoint Services
- Tệp XML
Bằng cách sử dụng kết nối dữ liệu thứ cấp, bạn cũng có thể cho phép người dùng gửi dữ liệu biểu mẫu đến một ứng dụng trên máy chủ Web, đến thư viện tài liệu trên máy chủ chạy Windows SharePoint Services hoặc thông qua thư email.
Nếu bạn tạo kết nối dữ liệu phụ truy vấn dữ liệu, theo mặc định biểu mẫu sẽ sử dụng kết nối dữ liệu này khi biểu mẫu mở. Bạn cũng có thể sử dụng kết nối dữ liệu này bằng cách đặt cấu hình mẫu biểu mẫu theo những cách sau:
- Thêm nút làm mới vào mẫu biểu mẫu mà người dùng có thể bấm để gửi truy vấn.
- Thêm quy tắc vào mẫu biểu mẫu để truy vấn nguồn dữ liệu bằng kết nối dữ liệu này.
- Thêm mã tùy chỉnh vào mẫu biểu mẫu gửi truy vấn.
Khi bạn thêm kết nối dữ liệu phụ vào biểu mẫu, InfoPath sẽ tự động tạo nguồn dữ liệu phụ với các trường dữ liệu và nhóm khớp với cách dữ liệu được lưu trữ trong nguồn dữ liệu ngoài. Điều này giúp đảm bảo tính toàn vẹn của dữ liệu. Bạn không thể sửa đổi các trường và nhóm trong nguồn dữ liệu phụ.
Lưu trữ dữ liệu để sử dụng ngoại tuyến
Khi bạn thêm kết nối dữ liệu phụ truy vấn dữ liệu từ nguồn dữ liệu ngoài, bạn có thể cấu hình kết nối để lưu trữ kết quả của truy vấn trên máy tính của người dùng. Điều này đảm bảo rằng người dùng có thể điền vào biểu mẫu nếu máy tính của họ không được kết nối với mạng. Thao tác này được gọi là làm việc ngoại tuyến.
Nếu bạn cấu hình kết nối dữ liệu phụ theo cách này, truy vấn sẽ được gửi đến nguồn dữ liệu ngoài trong khi máy tính của người dùng được kết nối với mạng. Sau đó, kết quả của truy vấn sẽ được lưu trữ trong nguồn dữ liệu thứ cấp của biểu mẫu và xuất hiện trong biểu mẫu khi người dùng điền vào biểu mẫu. Dữ liệu được lưu trong bộ đệm ẩn mỗi lần người dùng thực hiện một truy vấn mới, để dữ liệu được cập nhật càng nhiều càng tốt.
InfoPath sẽ xem xét tham số truy vấn khi quyết định xem dữ liệu được lưu trữ có phù hợp với truy vấn đã cho hay không. Khi bạn tạo kết nối dữ liệu, bạn có thể chọn có hiển thị một bộ dữ liệu được lưu trữ mặc định trong biểu mẫu hay không, trong trường hợp không có sẵn nguồn dữ liệu. Bạn nên xem xét liệu dữ liệu từ truy vấn có phù hợp cho tất cả người dùng của mình hay không hoặc liệu biểu mẫu có hiển thị dữ liệu cụ thể cho từng người dùng hay không. Ví dụ: nếu dữ liệu do truy vấn trả về được dựa trên danh tính hoặc vai trò của người dùng, việc sử dụng một tập dữ liệu mặc định đã được cấu hình tại thời điểm thiết kế thay vì sử dụng kết quả truy vấn có thể dẫn đến dữ liệu không chính xác cho người dùng đó.
Những điều cần cân nhắc khi kết nối với nguồn dữ liệu ngoài
InfoPath hỗ trợ kết nối dữ liệu đến các loại nguồn dữ liệu bên ngoài sau đây:
- Cơ sở dữ liệu Office Access
- Cơ sở dữ liệu SQL Server
- Dịch vụ web
- Thư viện tài liệu hoặc danh sách trên máy chủ chạy Microsoft Windows SharePoint Services
- Tệp XML
Các phần sau đây cung cấp thông tin và cân nhắc về kết nối với từng nguồn dữ liệu bên ngoài này.
Microsoft Office Access hoặc cơ sở dữ SQL Server liệu
InfoPath hỗ trợ kết nối dữ liệu đến cơ sở dữ liệu Access SQL Server sở dữ liệu. Để kết nối với một loại cơ sở dữ liệu khác, bạn có thể sử dụng một dịch vụ Web hoạt động với cơ sở dữ liệu đó.
Một biểu mẫu có thể truy vấn dữ liệu từ cơ sở dữ liệu thông qua kết nối dữ liệu chính hoặc phụ và bạn có thể chọn bất kỳ số lượng bảng cơ sở dữ liệu nào cho một kết nối. Bảng đầu tiên bạn chọn là bảng chính. Bất kỳ bảng nào sau đó bạn chọn đều phải chứa một trường có liên quan đến bảng chính. InfoPath tìm cách đặt mối quan hệ này bằng cách khớp với tên trường trong hai bảng. Bạn có thể chọn sử dụng mối quan hệ này hoặc thêm mối quan hệ bảng của riêng mình khi tạo kết nối dữ liệu.
Một biểu mẫu có thể gửi dữ liệu đến cơ sở dữ liệu thông qua kết nối dữ liệu chính của biểu mẫu nếu mẫu biểu mẫu mà biểu mẫu đó dựa trên đó và cơ sở dữ liệu đáp ứng các yêu cầu sau:
- Mẫu biểu mẫu không phải là mẫu biểu mẫu tương thích với trình duyệt InfoPath sẽ không tạo kết nối dữ liệu gửi trong kết nối dữ liệu chính nếu bạn đang thiết kế mẫu biểu mẫu tương thích với trình duyệt. Để cho phép người dùng gửi dữ liệu trong biểu mẫu dựa trên mẫu biểu mẫu tương thích với trình duyệt, hãy sử dụng dịch vụ Web hoạt động với cơ sở dữ liệu đó.
- Bảng bên trái trong mỗi cặp bảng liên quan trong nguồn dữ liệu chính chứa khóa chính Ít nhất một trong các mối quan hệ của mỗi cặp bảng liên quan phải bao gồm khóa chính từ bảng bên trái.
- Không có trường dữ liệu nào trong nguồn dữ liệu chính của biểu mẫu lưu trữ kiểu dữ liệu nhị phân lớn InfoPath sẽ tắt kết nối gửi dữ liệu nếu truy vấn bao gồm các trường có thể lưu trữ kiểu dữ liệu nhị phân lớn, chẳng hạn như ảnh, hình ảnh, đối tượng OLE, tệp đính kèm, kiểu dữ liệu bản ghi nhớ Office Access hoặc kiểu dữ liệu Văn bản SQL.
Nếu mẫu biểu mẫu và cơ sở dữ liệu đáp ứng tất cả các yêu cầu này, InfoPath sẽ tạo kết nối dữ liệu gửi và cấu hình mẫu biểu mẫu để cho phép người dùng gửi biểu mẫu của họ. Bạn có thể tắt kết nối dữ liệu gửi trong kết nối dữ liệu chính nếu bạn muốn người dùng gửi dữ liệu biểu mẫu của họ thông qua một kết nối dữ liệu khác.
Khi bạn thiết kế mẫu biểu mẫu dựa trên cơ sở dữ liệu, InfoPath sẽ tạo nguồn dữ liệu chính có chứa trường truy vấn và trường dữ liệu khớp với cách lưu trữ dữ liệu trong cơ sở dữ liệu. InfoPath cũng thêm các nút Chạy Truy vấnvà Bản ghi Mới vào dạng xem mặc định của mẫu biểu mẫu. Khi người dùng bấm nút Chạy Truy vấn , InfoPath sẽ gửi truy vấn có dữ liệu trong trường truy vấn đến cơ sở dữ liệu. Nút Bản ghi Mới sẽ xóa mọi dữ liệu hiện có trong biểu mẫu và đặt các điều khiển được liên kết với các trường dữ liệu thành giá trị mặc định của trường dữ liệu. Khi người dùng gửi dữ liệu đến cơ sở dữ liệu, mọi thay đổi đối với dữ liệu trong trường dữ liệu sẽ thay đổi các bản ghi tương ứng trong cơ sở dữ liệu. Nếu người dùng xóa dữ liệu khỏi trường dữ liệu, bản ghi tương ứng sẽ bị xóa khỏi cơ sở dữ liệu. Cuối cùng, mọi dữ liệu đã được thêm vào trường dữ liệu sẽ cập nhật các trường tương ứng hoặc thêm các bản ghi tương ứng vào cơ sở dữ liệu.
Nếu bạn muốn kết nối biểu mẫu với cơ sở dữ liệu và kết nối dữ liệu chính đã được tạo cho biểu mẫu, bạn có thể thêm kết nối dữ liệu phụ truy vấn cơ sở dữ liệu đó. Khi bạn thêm kết nối dữ liệu phụ, InfoPath sẽ tạo nguồn dữ liệu phụ với các trường truy vấn, trường dữ liệu và nhóm khớp với các trường trong bảng cơ sở dữ liệu. Bạn có thể chọn nhiều bảng cơ sở dữ liệu và thiết lập mối quan hệ bảng giống như cách bạn thực hiện cho kết nối dữ liệu chính.
Khi bạn tạo kết nối dữ liệu phụ truy vấn dữ liệu, bạn có thể cấu hình kết nối để gửi truy vấn mỗi lần người dùng mở biểu mẫu hoặc bạn có thể thực hiện một trong các thao tác sau để gửi truy vấn:
- Thêm nút mà người dùng có thể bấm để làm mới dữ liệu từ kết nối dữ liệu.
- Tạo quy tắc gửi truy vấn bằng kết nối dữ liệu.
- Viết mã tùy chỉnh gửi truy vấn khi chạy.
Dịch vụ web
Biểu mẫu có thể truy vấn hoặc gửi dữ liệu đến dịch vụ Web thông qua kết nối dữ liệu chính hoặc phụ. InfoPath tuân thủ các tiêu chuẩn sau đây cho các kết nối với dịch vụ Web:
- Giao thức Truy nhập Đối tượng Đơn giản (SOAP) SOAP là giao thức giao tiếp xác định các thông báo XML được sử dụng để liên lạc với dịch vụ Web.
- Ngôn ngữ Mô tả Dịch vụ Web (WSDL) WSDL là tiêu chuẩn Sơ đồ XML được sử dụng để mô tả vị trí, giao thức giao tiếp và giao diện cho dịch vụ Web. InfoPath chỉ có thể sử dụng các dịch vụ Web kiểu tài liệu theo nghĩa đen.
- Khám phá và Tích hợp Mô tả Phổ quát (UDDI) UDDI là dịch vụ thư mục mô tả các dịch vụ Web do một doanh nghiệp cung cấp.
Khi bạn thiết kế mẫu biểu mẫu mới dựa trên dịch vụ Web, InfoPath sẽ tạo kết nối dữ liệu chính đến dịch vụ Web, rồi tạo nguồn dữ liệu chính có chứa trường truy vấn, trường dữ liệu và nhóm khớp với Sơ đồ XML của dịch vụ Web.
Nếu bạn cấu hình mẫu biểu mẫu để sử dụng một thao tác khác trong cùng một dịch vụ Web hoặc bạn muốn sử dụng hoàn toàn một dịch vụ Web khác, bạn có thể thêm kết nối dữ liệu phụ vào mẫu biểu mẫu. Khi bạn thêm kết nối dữ liệu phụ có truy vấn dữ liệu, InfoPath sẽ tạo nguồn dữ liệu phụ với các trường và nhóm khớp với sơ đồ của dịch vụ Web. Nếu bạn thêm kết nối dữ liệu phụ gửi dữ liệu, bạn có thể cấu hình kết nối để gửi tất cả hoặc chỉ một số dữ liệu trong biểu mẫu, tùy thuộc vào các tham số trong dịch vụ Web.
Khi bạn tạo kết nối dữ liệu chính hoặc phụ với một dịch vụ Web, bạn có thể xác định liệu dữ liệu truy vấn kết nối chỉ, gửi dữ liệu hay cả hai truy vấn và gửi dữ liệu. Nếu dữ liệu truy vấn kết nối, InfoPath sẽ thêm nút Truy vấn Chạy vào mẫu biểu mẫu. Khi người dùng bấm nút Chạy Truy vấn, InfoPath sẽ gửi truy vấn kèm theo dữ liệu trong các trường truy vấn đến dịch vụ Web. Nếu kết nối gửi dữ liệu, InfoPath sẽ bật tính năng Gửi cho biểu mẫu. Khi bạn cấu hình kết nối dữ liệu gửi, InfoPath sẽ xác định dữ liệu nào được dịch vụ Web yêu cầu. Dựa trên thông tin đó, bạn có thể xác định trường nào trong mẫu biểu mẫu nên gửi dữ liệu của chúng đến dịch vụ Web.
Thư viện tài liệu hoặc danh sách trên site SharePoint
Một biểu mẫu có thể truy vấn dữ liệu thông qua kết nối dữ liệu phụ đến thư viện tài liệu hoặc danh sách trên máy chủ đang Windows SharePoint Services. Một biểu mẫu cũng có thể gửi dữ liệu đến thư viện tài liệu trên máy chủ. Bạn không thể kết nối với thư viện hoặc danh sách thông qua kết nối dữ liệu chính.
Nếu bạn tạo kết nối dữ liệu phụ truy vấn dữ liệu từ thư viện tài liệu hoặc danh sách, InfoPath sẽ tạo nguồn dữ liệu phụ cho biểu mẫu khớp với các cột trong thư viện tài liệu hoặc danh sách.
Nếu bạn tạo kết nối dữ liệu phụ gửi dữ liệu đến thư viện tài liệu và bạn muốn kết nối dữ liệu gửi này trở thành hành động gửi chính cho mẫu biểu mẫu, bạn phải bật tính năng Gửi cho mẫu biểu mẫu và liên kết nó với kết nối dữ liệu bằng cách sử dụng hộp thoại Tùy chọn Gửi (menu Công cụ, Lệnh Tùy chọn Gửi). Theo mặc định, tất cả dữ liệu trong biểu mẫu được gửi thông qua kết nối dữ liệu gửi. Nếu bạn chỉ muốn gửi một số dữ liệu, bạn có thể gửi bằng cách viết mã tùy chỉnh cho mẫu biểu mẫu.
Tệp XML
Một biểu mẫu có thể truy vấn dữ liệu thông qua kết nối dữ liệu phụ đến tệp XML. Ví dụ: bạn có thể lưu trang tính Microsoft Office Excel dưới dạng tệp XML, rồi sử dụng kết nối dữ liệu thứ cấp để truy vấn và hiển thị dữ liệu từ tệp đó trong biểu mẫu. Bạn cũng có thể sử dụng kết nối dữ liệu thứ cấp để truy vấn dữ liệu từ tệp XML để truy xuất dữ liệu từ một ứng dụng trên máy chủ Web trả về XML, chẳng hạn như ứng dụng Microsoft ASP.NET, tập lệnh Common Gateway Interface (CGI) hoặc ứng dụng sử dụng Giao diện Lập trình Ứng dụng Máy chủ Internet (ISAPI).
Ứng dụng trên máy chủ Web
Bạn có thể tạo kết nối dữ liệu thứ cấp gửi dữ liệu đến một ứng dụng trên máy chủ Web, chẳng hạn như ứng dụng ASP.NET, tập lệnh CGI hoặc ứng dụng sử dụng ISAPI. Để gửi dữ liệu đến một ứng dụng trên máy chủ Web, bạn phải cấu hình mẫu biểu mẫu để cho phép người dùng gửi dữ liệu biểu mẫu của họ và cấu hình các tùy chọn gửi cho kết nối dữ liệu bằng cách chọn Máy chủ Web (HTTP) trong hộp thoại Tùy chọn Gửi (menu Công cụ, lệnh Tùy chọn Gửi).
Lưu ý
Một biểu mẫu chỉ có thể có một kết nối dữ liệu gửi dữ liệu đến một ứng dụng trên máy chủ Web. Bạn không thể cấu hình mẫu biểu mẫu để cho phép biểu mẫu sử dụng quy tắc để gửi dữ liệu đến một ứng dụng trên máy chủ Web.
Thiết đặt kết nối trong thư viện kết nối dữ liệu
Nếu một số biểu mẫu sử dụng cùng một kết nối dữ liệu hoặc tương tự, hãy cân nhắc lưu trữ các thiết đặt cho từng kết nối dữ liệu trong tệp kết nối dữ liệu trong thư viện kết nối dữ liệu trên máy chủ chạy Office SharePoint Server 2007. Tệp kết nối dữ liệu là một tệp XML chứa thông tin kết nối cho một nguồn dữ liệu ngoài duy nhất và có phần mở rộng tên tệp .xml hoặc .udcx. Khi người dùng mở biểu mẫu kết nối với tệp kết nối dữ liệu, InfoPath sẽ sử dụng các thiết đặt trong tệp đó để kết nối với nguồn dữ liệu ngoài. Ưu điểm của việc sử dụng tệp kết nối dữ liệu bao gồm:
- Nhiều biểu mẫu có thể sử dụng cùng một tệp kết nối dữ liệu, vì vậy không cần phải tạo cùng một kết nối dữ liệu từ đầu cho mỗi biểu mẫu.
- Nếu thiết đặt vị trí hoặc kết nối cho một nguồn dữ liệu bên ngoài thay đổi, bạn chỉ cần cập nhật tệp kết nối dữ liệu, không phải mỗi mẫu biểu mẫu.
- Tệp kết nối dữ liệu có thể chứa thông tin xác thực thay thế mà máy chủ có thể sử dụng khi người dùng điền vào biểu mẫu bằng trình duyệt.
- Các biểu mẫu được điền vào một trình duyệt mà không có mức bảo mật tin cậy đầy đủ có thể kết nối với máy tính trong một miền khác nếu tất cả các kết nối dữ liệu trong biểu mẫu sử dụng tệp kết nối dữ liệu.
Để kết nối biểu mẫu với tệp kết nối dữ liệu, tệp phải được lưu trữ trong thư viện kết nối dữ liệu trên máy chủ chạy Office SharePoint Server 2007 và tệp phải theo định dạng tệp Universal Data Connection (UDC) 2.0.
Lưu ý
Định dạng tệp UDC 2.0 là một siêu tập hợp định dạng phiên bản 1.0 được Sử dụng bởi Microsoft Office FrontPage. InfoPath không thể sử dụng tệp kết nối dữ liệu ở định dạng phiên bản 1.0. Tìm các nối kết để biết thêm thông tin về thư viện kết nối dữ liệu và tệp kết nối dữ liệu trong phần Xem Thêm.