Skip to main content

Zugriff auf FS_List Typ=Inline über API

Comments

8 comments

  • Zendesk API User
    Author: gockel - 9/15/2011 14:13

    Hallo,

    mit welcher FS-Version arbeiten Sie?

    zudem steht da auch "This part of the API is preliminary and may change in future versions." im Interface "FormData".

    Dieser Disclaimer ist ab Version 4.2.452 entfernt. Ich denke, dass sich zu Ihrer Version (je nachdem welche Sie haben) nichts mehr an dem Interface geändert hat.

    Jetzt weiß ich nicht, wie ich aus dem formData eine Section bekomme

    Gar nicht, da hier die neue FormData-API vorliegt. Ist aber auch nicht erforderlich, denke ich.

    Die zweite Sache ist, wie bekomme ich den Typ heraus?

    So sollte es gehen.

    if (section.getData().get(variable).getEditor() instanceof FsListEditorValue) {

         FsListEditorValue fsListEditorValue = (FsListEditorValue) section.getData().get(variable).getEditor();

         FormDataList dataList = fsListEditorValue.get(language);

              for (FormData formData : dataList) {

                    for (final GomFormElement form: formData.getForm().forms()) {

                        final String innerVarName = form.name();

                        FormField field = formData.get(language, innerVarName);

                        if (field.getType().equals(FormDataList.class)) {

                             // found inner fs list

                             // todo

                        }

                   }

              }

         }

    }

    0
  • Zendesk API User
    Author: andre - 9/15/2011 15:36

    Levent Meric wrote:

    Die zweite Sache ist, wie bekomme ich den Typ heraus? Es interessieren mich an dieser Stelle nur die Inline FS_Lists.

    über. DataSource

    http://www.e-spirit.com/odfs42/en/vorlagenentwicklung/formular/fs/fs_list/inline/inline_1.html?community#s2

    bzw. DataSourceType

    http://www.e-spirit.com/odfs42/en/vorlagenentwicklung/formular/fs/fs_list/inline/inline_1.html?community#s2_0

    also sowas in der Art:

    fsListEditorValue.getForm().getDataSource().getType() == DataSourceType.INLINE;

    0
  • Zendesk API User
    Author: lmeric - 9/15/2011 20:59

    formData eine Section:

    Doch, ich muss auf die Texte zugreifen können. Deswegen muss ich an dieser Stelle wissen, wie ich die Texte extrahieren kann.

    0
  • Zendesk API User
    Author: lmeric - 9/15/2011 21:09

    Danke an dieser Stelle, ich werde es ausprobieren.

    Trotzdem die Frage, wie ich an die Texte herankomme, die in der FS_List abgelegt sind.

    0
  • Zendesk API User
    Author: gockel - 9/16/2011 7:18

    Das ist auch möglich, allerdings über die neue FormData / FormField API

    Wenn das Formular des inneren FS_LIST Eintrages z.B. eine CMS_INPUT_TEXT Komponente mit Namen "text" enthält so würde das so aussehen.

    for (FormData formData : dataList) {

         final FormField textField = formData.get(language, "text");

         if (field.getType().equals(String.class)) {
              final String textValue = (String) textField.get();

              // todo:

         }
    }

    API-Links:

    FormField.get()

    0
  • Zendesk API User
    Author: lmeric - 9/17/2011 12:41

    Hallo!

    Ich habs jetzt. Ich wollte auf die einzelnen EditorValues hinaus, so wie es in den alten Eingabekomponenten auch ist.

    So gehts:

    for (FormData formData : dataList) {
        

               Iterable<GomFormElement> testing = formData.getForm().forms();

                        for (GomFormElement gomFormElement : testing) {

                            System.err.println("varName   : " + gomFormElement.getName());

                            System.err.println("editorType: " + gomFormElement.getDefaultValue());

                           

                            if (gomFormElement.getDefaultValue() instanceof TextEditorValue) {

                              //TODO!

                            }

                        }


    }

    Danke an dieser Stelle,

    Levent Meric

    0
  • Zendesk API User
    Author: lmeric - 9/18/2011 12:55

    Ich sehe gerade, dass unter dem getDefaultValue keine Werte sich befinden.

    Gibt es keine Möglichkeit aus dem FormData irgendwie die z.B. TextValue-Eingabekomponenten zu bekommen?

    0
  • Zendesk API User
    Author: gockel - 9/19/2011 6:00

    Siehe meine Antwort weiter oben: Re: Zugriff auf FS_List Typ=Inline über API

    0

Please sign in to leave a comment.