Làm cách nào để triển khai phê duyệt nhiều bước với biểu mẫu web / biểu mẫu dựa trên các thành phần biểu mẫu?


7

Có thể gọi quy trình gửi nhiều bước bằng Webform hoặc Entityform không? Đây là kịch bản của quy trình công việc:

  • Một nhân viên nộp mẫu
    • Giám sát viên nhận được thông báo, sau khi xem lại biểu mẫu, anh ta sẽ chấp thuận hoặc từ chối yêu cầu trong cùng một bài nộp.
    • Nếu được phê duyệt, một thông báo email sẽ được gửi đến Giám đốc, người này lần lượt phê duyệt hoặc không chấp thuận cùng một bài nộp.
  • Nếu bị từ chối bởi người giám sát, một email sẽ được gửi đến một nhân viên.

Kịch bản này liên quan đến việc đệ trình bởi nhiều vai trò cho cùng một yêu cầu. Tôi có thể ẩn các trường phê duyệt cho vai trò của nhân viên, nhưng làm thế nào một người có thể truy cập thành phần trường phê duyệt biểu mẫu web thông qua các quy tắc cho mục đích thông báo? Làm thế nào tôi sẽ đóng băng trạng thái?

Tôi có nên sử dụng các biểu mẫu vì mọi thành phần của biểu mẫu được hiển thị không? Như một phương sách cuối cùng, tôi có thể thực hiện giải pháp của riêng mình bằng Forms_api. Nhưng tôi muốn biết đầu tiên nếu có thể sử dụng webform hoặc entityforms.


Tôi tưởng tượng vì EntityForms chỉ là một loại nội dung Drupal cơ bản mà mô-đun Workbench có thể làm tất cả điều này cho bạn.
tenken

Câu trả lời:


9

Có thể thực hiện quy trình công việc này bằng cách sử dụng kết hợp các mô-đun này (và các loại nội dung thông thường, không cần một cái gì đó như "webforms"):

Tham khảo câu trả lời của tôi trong câu hỏi về " Làm cách nào tôi có thể cho phép khách truy cập ẩn danh gửi nội dung? " Để biết ví dụ (và chi tiết hơn) về cách sử dụng 4 mô-đun này với nhau (câu hỏi này ở đây có vẻ giống như một biến thể của câu hỏi đó).

Dưới đây là một số chi tiết để thực hiện quy trình công việc của bạn với một cách tiếp cận tương tự:

Một nhân viên nộp mẫu

Nhân viên tạo một nút loại nội dung (giả sử) "Yêu cầu" (Sử dụng quyền truy cập nội dung để hoàn thiện tất cả các loại quyền về "vai trò nào được phép tạo các loại đó, nếu bạn có nhiều loại yêu cầu bạn chỉ cần mở rộng cho nhiều loại nội dung).

Người giám sát nhận được thông báo, sau khi xem lại biểu mẫu, anh ta sẽ chấp thuận hoặc từ chối yêu cầu trong cùng một bài nộp.

  • Sử dụng Quy tắc để "gửi email" (= hành động) cho Người giám sát "Sau khi nội dung của loại 'Yêu cầu' được lưu" (= sự kiện). Trong email (tùy chỉnh) cho Người giám sát, bao gồm tất cả các chi tiết có liên quan về Yêu cầu (tùy thuộc vào các dữ liệu khác nhau có sẵn cho Quy tắc). Chẳng hạn như một URL của nút được xem xét.

  • Để đảm bảo Người yêu cầu không thể thay đổi dữ liệu Yêu cầu (trong khi quá trình xem xét vẫn còn tồn tại), hãy thêm một hành động bổ sung vào cùng quy tắc (trước đó) để cập nhật quyền truy cập vào Yêu cầu (để chỉ đọc cho người yêu cầu).

  • Sử dụng mô-đun Cờ để cho phép (các) Người giám sát đánh dấu nút đã gửi bằng các cờ như 'Được phê duyệt (bởi Người giám sát)' hoặc 'Bị từ chối (bởi Người giám sát)' (Bị từ chối?). Quyền đặt các cờ này được giới hạn trong (các) Giám sát viên.

Nếu được phê duyệt, một thông báo email sẽ được gửi đến Giám đốc, người này lần lượt phê duyệt hoặc không chấp thuận cùng một bài nộp.

  • Sử dụng Quy tắc (một lần nữa) để "Sau khi một nút được gắn cờ với 'Được phê duyệt (bởi Người giám sát)'" (= sự kiện), nó sẽ gây ra "gửi email" (= hành động) tương tự cho Giám đốc. Trong email (tùy chỉnh) cho giám đốc, bao gồm tất cả các chi tiết có liên quan về Yêu cầu (tùy thuộc vào các dữ liệu khác nhau có sẵn cho Quy tắc). Chẳng hạn như một URL của nút được xem xét.

  • Sử dụng mô-đun Cờ (một lần nữa) để cho phép Giám đốc đánh dấu nút đã gửi bằng các cờ như 'Được phê duyệt (bởi Giám đốc)' hoặc 'Bị từ chối (bởi Giám đốc)'. Quyền cho phép đặt các cờ này được giới hạn cho Giám đốc.

  • Sử dụng Quy tắc để "gửi email" (= hành động) cho Người yêu cầu "Sau khi nội dung của loại 'Yêu cầu' bị gắn cờ là bị từ chối (bởi Giám đốc)" (= sự kiện).

Nếu bị từ chối bởi người giám sát, một email sẽ được gửi đến một nhân viên.

  • Sử dụng Quy tắc để "gửi email" (= hành động) cho Người yêu cầu "Sau khi nội dung của loại 'Yêu cầu' bị gắn cờ là bị từ chối (bởi Người giám sát)" (= sự kiện).

Vì vậy, chỉ cần một số quy tắc / cờ cơ bản ...

Nó không (chưa) bao gồm bất cứ điều gì liên quan đến Node Convert . Mô-đun này chỉ cần được thêm vào hỗn hợp này nếu bạn muốn tinh chỉnh thêm ở trên với các "trường" cụ thể mà một số người tham gia quy trình công việc không nên "nhìn thấy" (để tránh bạn phải sử dụng "quyền trường", đó có thể là một sự thay thế cho điều đó.

Cải tiến có thể

Khối biểu mẫu

Tôi chưa có kinh nghiệm với mô đun Khối khối . Trên trang dự án của nó có ghi " Cho phép trình bày đăng ký người dùng, liên hệ trên toàn trang hoặc các biểu mẫu tạo nút trong các khối. Điều này đặc biệt hữu ích để bao gồm các biểu mẫu trên bảng. "

Dường như với tôi rằng nếu bạn đang sử dụng bảng điều khiển thì có thể có một số giá trị gia tăng khi sử dụng mô-đun này. Tuy nhiên, tôi chưa bị thuyết phục (chưa) về giá trị gia tăng thực sự của mô-đun này.

Có một vài điều mặc dù tôi có vẻ thích cờ đỏ (= Tôi đã nghĩ hai lần trước khi sử dụng mô-đun đó):

  • Tài liệu ở đâu?

    Ngoài những gì nó nói trên trang dự án, không có (a) không có tài liệu cộng đồng (ít nhất là không được liên kết từ trang dự án) và (b) một số readme.txt đi kèm với mô-đun, nhưng không có nội dung "thực" .

  • Bản phát hành D7 ở đâu?

    Có một bản phát hành chính thức có sẵn cho D6. Nhưng phiên bản D7 chỉ tồn tại dưới dạng alfa 1, đã hơn một năm tuổi. Và sau đó đã có phiên bản D8 ở trạng thái beta. Không chắc chắn những gì sắp diễn ra trong D8, nhưng đối với D7 dường như có gì đó không đúng. Có bao giờ sẽ có một phiên bản D7 chính thức? Tuy nhiên, nhìn vào số liệu thống kê sử dụng có rất nhiều trang web D7. Gần 10K báo cáo cài đặt cho phiên bản D7-alfa đó. Các trang web 10K sử dụng các mô-đun không thể sai, do đó, nó phải là một cái gì đó như "phiên bản alfa1 đó gần như là một bản phát hành chính thức nên được gắn thẻ như vậy".

Các viên đạn trên chỉ là một vài trong số các tiêu chí tôi thường sử dụng để quyết định các mô-đun đóng góp. Tham khảo tài liệu cộng đồng về Phiếu bảo trì để biết thêm chi tiết. Đây là phần giới thiệu về nó (từ trang đó):

... Chứa danh sách 23 tiêu chí (= 28-5) có thể giúp đánh giá việc duy trì và hỗ trợ các mô-đun đóng góp. Dưới đây là một nỗ lực để áp dụng các tiêu chí đó cho từng mô-đun biểu đồ gốc ...

Rõ ràng, các phiếu ghi điểm này có liên quan đến "các mô-đun biểu đồ", nhưng các tiêu chí tương tự được áp dụng, IMHO, khi bạn cần quyết định giữa nhiều mô-đun.

hạt đậu

Có thể xem xét thêm một mô-đun khác trong khu vực của Khối, bằng cách xem mô-đun Bean . Đây là một trích dẫn về trang dự án của nó:

Hãy nghĩ về Bean như một phương thức để cung cấp các loại mới (so với nút này sẽ là một loại nội dung) sau đó cung cấp giao diện thêm nội dung để tạo nhiều khối như bạn yêu cầu (xem ảnh chụp màn hình bên dưới). Nội dung bean sau đó có thể được đặt xung quanh trang web giống như bất kỳ khối nào khác.

Kết hợp với các tùy chọn có sẵn để cấp quyền Bean phù hợp , nó sẽ cung cấp cho bạn rất nhiều tính linh hoạt về cách chính xác bạn muốn sử dụng mô-đun (tuyệt vời) này trong trường hợp cụ thể của bạn. Như một phần thưởng, các mô-đun Bean cũng hoạt động tuyệt vời khi kết hợp với các UUIDtính năng UUID tích hợp mô-đun. Trên hết, sau khi bạn làm quen với mô-đun Bean, bạn có thể tìm thấy các trường hợp khác trong trang web của mình, nơi bạn cũng muốn sử dụng mô-đun Bean (bằng cách nào đó bù lại thực tế là bạn cần thêm mô-đun khác).

Video hướng dẫn

Nếu bạn không quen thuộc với Quy tắc , hãy xem hướng dẫn bằng video Tìm hiểu khung Quy tắc . Và / hoặc bộ 8 video hướng dẫn tương tự về mô-đun Flag .

Video hướng dẫn mô-đun Drupal Bean - sử dụng Bean Admin UI cung cấp một giới thiệu tuyệt vời để thực sự hiểu sức mạnh của mô-đun Bean và loại điều bạn có thể làm với nó (chỉ bằng cách sử dụng các kỹ thuật xây dựng trang web, không có mã hóa tùy chỉnh liên quan). Nó cũng cho thấy mô-đun Bean biến đổi các khối Drupal thành các thực thể có thể thực hiện được.


1
Cách tiếp cận nhà trồng thú vị!
tenken

1
Điều này rất đơn giản! Mối quan tâm duy nhất tôi có với phương pháp này là trải nghiệm người dùng. Đối với nhân viên ít nhất, đó sẽ là nhiều nội dung / thêm quy trình, chứ không phải là một hình thức đơn giản (như nó đã có trong các biểu mẫu web). Tôi sẽ thử cách tiếp cận được đề xuất và đánh dấu câu hỏi cho phù hợp. Cảm ơn bạn.
JT-Drupal

Thx cho phản hồi. Vâng, đây sẽ là nội dung / thêm quy trình, nhưng với sức mạnh mà "Quy tắc" (và "Cờ") thêm vào, bạn cũng có thể tự động hóa (và thực thi!) Một vài điều. Hang oa bit và tôi sẽ mở rộng câu trả lời của tôi AbitMORE về ý nghĩa của tôi với điều đó ...
Pierre.Vriens 7/07/2015

1
Pierre, nó chắc chắn đã làm việc. Cảm ơn đã gợi ý ý tưởng này. Tôi đang sử dụng mô-đun form_block để cải thiện trải nghiệm người dùng và chỉ thêm phần biểu mẫu. Bây giờ nó giống như một hình thức web nhưng mạnh mẽ hơn.
JT-Drupal

1
Bạn có thể vui lòng đưa drupal.org/project/formblock vào câu trả lời của mình để nó cũng giúp người khác không? :)
JT-Drupal
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.