switt
I'm new here

Ein-/Ausblenden von Tabs über Rules

Hallo,

ich stehe vor dem problem, dass ich über eine Combobox mit den Regeln Formular-Tabs abhängig vom gewählten Comboxeintrag ein- und ausblenden möchte.

  <CMS_INPUT_COMBOBOX name="mt_doctype">

        <CMS_INCLUDE_OPTIONS type="database">

          <LABELS>

            <LABEL lang="*">#item.Doctype</LABEL>

          </LABELS>

          <QUERY name="DB.doctype_query"/>

          <TABLE>DB.documenttypes</TABLE>

        </CMS_INCLUDE_OPTIONS>

        <LANGINFOS>

          <LANGINFO lang="*" label="Doctype"/>

        </LANGINFOS>

      </CMS_INPUT_COMBOBOX>

Die Combox bezieht die Daten aus einer Datenquelle. Die Einträge sehen dann in etwa so aus: "Software", "Handbücher" ...

Das zugehörige Rules-Element:

<ON_EVENT>

        <WITH>

            <EQUAL>

                <PROPERTY source="mt_doctype" name="ENTRY"/>

                  <TEXT>Software</TEXT>

            </EQUAL>

        </WITH>

        <DO>

            <PROPERTY source="#form.media" name="VISIBLE"/>

        </DO>

    </ON_EVENT>

Das ein- und ausblenden funktioniert hierbei zu keiner Zeit und der Tab bleibt immer unsichtabr.

Gruß,

Sebastian

0 Kudos
7 Replies
StefanSchulz
I'm new here

Hallo Sebastian,

wie in der Doku angemerkt ist, funktioniert die Eigenschaft ENTRY nicht bei dynamisch gefüllter Combobox. Zur gleichartigen Diskussion siehe auch hier: Regel für dynamische Combobox

Beste Grüße

Stefan

Hallo und danke für die Antwort, muss es wohl überlesen haben.

Wäre es denn möglich den Inhalt der dynamischen Combobox an einen Service zu übergeben der dann prüft welches Element ausgewählt wurde, z.B. über einen ValueService?

Gruß,

Sebastian

0 Kudos

Das kann man tatsächlich tun (Eigenschaft allerdings dann VALUE und nicht ENTRY), funktioniert aber nicht gleichzeitig für Webedit und Java-Client, da hier aktuell andere Wertetypen übergeben werden: ein interner Datentyp bei Webedit und Option beim Java-Client.

Gruß

Stefan

0 Kudos

Hallo,

ich habe jetzt probiert den Wert der Combobox an einen ValueService zu übergeben. Dabei kommt folgende Fehlermeldung in der Java-Konsole.

WARN  08.04.2013 10:53:48.696 (de.espirit.firstspirit.forms.rules.FactService): Fact for parameter '' is not serializable: 1484

Wenn statt dem Combobox-Wert z.B. ein Textfeld übergeben wird, dann kann in dem Service der Wert weiter verarbeitet werden.

Der Aufruf sieht so aus:

<ON_EVENT>

<SCHEDULE service="MyValueService" id="vs_1" delay="10">

  <CONDITION>

   <NOT_NULL>

    <PROPERTY source="mt_doctype" name="VALUE"/>

   </NOT_NULL>

  </CONDITION>

  <PARAM name="doc">

   <PROPERTY source="mt_doctype" name="VALUE"/>

  </PARAM>

</SCHEDULE>

<DO>

  <PROPERTY source="mt_text" name="VALUE"/>

</DO>

</ON_EVENT>

0 Kudos

Hi,

das ist ja extrem schade, sowohl der Fehler als auch die Fehlermeldung.

Bitte mit entsprechenden Informationen angereichert als Bug beim HelpDesk einreichen.

Gruß

Stefan

0 Kudos

Immerhin schön zu wissen, dass man im Prinzip keinen Knoten im Hirn hatte Smiley Happy

Dann muss die unschöne Variante über einen FS_Button herhalten.

Gruß,

Sebastian

0 Kudos
felix_reinhold
Returning Responder

Hallo zusammen,

gibt es hierzu eigtl. mittlerw. einen Fix bzw. wo kann ich den Status von dem Ticket nachverfolgen?

Stoße mit der aktuellen Version 5.0.424 auf das gleiche Verhalten, wenn ich den Wert eines FS_DATASET an meinen ValueService übergebe:

RULE (Parameterübergabe):

<PARAM name="entity">

     <PROPERTY source="dummy_employee" name="VALUE"/>

</PARAM>

FORM:

       <FS_DATASET name="dummy_employee" allowEmpty="yes" hFill="yes" mode="sheet" useLanguages="no">

        <LANGINFOS>

          <LANGINFO lang="*" label="Content Publisher" description="Employee"/>

        </LANGINFOS>

        <SOURCES>

          <CONTENT name="mitarbeiter"/>

        </SOURCES>

      </FS_DATASET>

MELDUNG:

WARN  05.02.2014 10:59:59.388 (de.espirit.firstspirit.forms.rules.FactService): Fact for parameter 'entity' is not serializable: de.espirit.firstspirit.client.access.editor.DatasetEditorValueImpl$DatasetContainerImpl@13a5da77

Wurde das Problem bisher gar nicht gelöst, oder nur nicht für alle Typen von Eingabefeldern? Gibt es einen Workaround ohne FS_BUTTON?

Gruß

Felix

0 Kudos