Mehrstufige Antworten

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 1 Minute Lesedauer
  • Ein Beispiel für eine mehrstufige Antwort ist eine Reihe von Bildern in einem Karussell oder einem Datumssteuerelement.

    RichControl für mehrteilige Steuerungen verfügt über die folgenden Attribute, die zum Transformieren von Steuerungen verwendet werden können.
    • Inhalt: Rich-Steuerung, die im aktuellen Schritt dargestellt werden muss.
    • navigierenBtnLabel: Bezeichnung für die Schaltfläche „Weiter“ oder „Mehr“, auf die der Anwender klicken muss, um zum nächsten Schritt zu wechseln.
    Beispiel:
    {
            uiType: "MultiPartOutput",
            group: "DefaultMultiPartOutput",
            navigationBtnLabel: "Go next",
            content: {
                    uiType: "OutputHtml",
                    style: "inline",
                    type: "html",
                    height: 100,
                    width: 100,
                    value: "<div>html</div>"
            }
    }

    Ausgehendes Transformationsskript

    (function execute(inputs, outputs) {
    
        try{
          var richControl = inputs.rich_control;
          var payload = inputs.payload;
      
          var content = richControl.content;
          var navigationBtnLabel = richControl.navigationBtnLabel;
          var uiType = content.uiType;
          var partResult = null;
      
          switch (uiType) {
            case "OutputText":
              partResult = sn_fd.FlowAPI.executeActionQuick('example_default_text_outbound_transformer', {
                  rich_control : content,
                  payload : payload
                });
              break;
            case "OutputLink":
              partResult = sn_fd.FlowAPI.executeActionQuick('example_default_output_link_outbound_transformer', {
                  rich_control : content,
                  payload : payload
                });
              break;
            case "OutputImage":
              partResult = sn_fd.FlowAPI.executeActionQuick('example_default_image_outbound_transformer', {
                  rich_control : content,
                  payload : payload
                });
              break;
            case "OutputHtml":
              partResult = sn_fd.FlowAPI.executeActionQuick('example_default_html_outbound_transformer', {
                  rich_control : content,
                  payload : payload
                });
              break;
            default:
              break;
          }
          partResult =  partResult + addButtonMore(navigationBtnLabel)
          outputs.result = JSON.stringify(outActivity);
        }
        catch(e){
          gs.error("Error in default multipart outbound transformer : " + e.message);
          throw e; 
        }
      
      })(inputs, outputs);

    Eingehendes Transformationsskript

      (function execute(inputs, outputs) {
        try {
          var requestContext = inputs.request_context;
          var typedValue = requestContext.typed_value;
          outputs.result = typedValue;
        } catch(e) {
           gs.error("Error in default multipart inbound transformer : " + e.message);
           throw e; 
        }
      })(inputs, outputs);