Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escaping: Escape characters +-&|!(){}[]^"~*?:\ with \, e.g. \+
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Zurück zum Beitrag

Versionen 7

vor 3 Jahren
Subtable Zellen/Spalten via JS löschen/inaktivieren
Subtable Zellen/Spalten via JS löschen/inaktivieren
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column('SUBVName', 'SUBV_Column'); } else { jr_hide_subtable_column('SUBVName', 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_SUBV_Column_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit ```js ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox")); ``` oder indem du ```js ShowOrHideSubtableColumn("subview", "testField", true); ``` in das `OnChecked` und ```js ShowOrHideSubtableColumn("subview", "testField", false); ``` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_SUBV_Column_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit ```js ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox")); ``` oder indem du ```js ShowOrHideSubtableColumn("subview", "testField", true); ``` in das `OnChecked` und ```js ShowOrHideSubtableColumn("subview", "testField", false); ``` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
vor 3 Jahren
Subtable Zellen/Spalten via JS löschen/inaktivieren
Subtable Zellen/Spalten via JS löschen/inaktivieren
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_SUBV_Column_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit ```js ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox")); ``` oder indem du ```js ShowOrHideSubtableColumn("subview", "testField", true); ``` in das `OnChecked` und ```js ShowOrHideSubtableColumn("subview", "testField", false); ``` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_SUBV_Column_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
vor 3 Jahren
Subtable Zellen/Spalten via JS löschen/inaktivieren
Subtable Zellen/Spalten via JS löschen/inaktivieren
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_SUBV_Column_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
vor 3 Jahren
Subtable Zellen/Spalten via JS löschen/inaktivieren
Subtable Zellen/Spalten via JS löschen/inaktivieren
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } const rowIds = jr_get_subtable_row_ids(subtable); rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { const rowIds = jr_get_subtable_row_ids(subtable); if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
vor 3 Jahren
Subtable Zellen/Spalten via JS löschen/inaktivieren
Subtable Zellen/Spalten via JS löschen/inaktivieren
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { const rowIds = jr_get_subtable_row_ids(subtable); if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else if (jr_get_value('checkbox') === 0) { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { const rowIds = jr_get_subtable_row_ids(subtable); if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
vor 3 Jahren
Subtable Zellen/Spalten via JS löschen/inaktivieren
Subtable Zellen/Spalten via JS löschen/inaktivieren
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else if (jr_get_value('checkbox') === 0) { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { const rowIds = jr_get_subtable_row_ids(subtable); if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmaeinmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else if (jr_get_value('checkbox') === 0) { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { const rowIds = jr_get_subtable_row_ids(subtable); if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst
vor 3 Jahren
Original
Subtable Zellen/Spalten via JS löschen/inaktivieren

so schlecht sieht das ja nicht aus, dir fehlt ja nur die id id für Untertabellenzellen setzt sich aus ```js const columnId = `${subtable}_${column}_${rowId}`; ``` zusammen. `jr_hide_subtable_column`/`jr_show_subtable_column` solltest du natürlich nicht im loop aufrufen, das reicht auch einmaeinmalig Hier dein Beispiel entsprehend abgeändert ```js function Test() { const checked = jr_get_value('checkbox'); if (checked) { jr_show_subtable_column(subtable, 'SUBV_Column'); } else { jr_hide_subtable_column(subtable, 'SUBV_Column'); } jr_loop_table('SUBVName', function (subtable, rowId) { const columnId = `${subtable}_${column}_${rowId}`; if (checked) { jr_set_disabled(columnId, false); } else if (jr_get_value('checkbox') === 0) { jr_set_subtable_value(subtable, rowId, 'SUBV_Column', ''); jr_set_disabled(columnId, true); } }); } ``` besser wäre natürlich die funktion gleich so aufzubauen, so dass man sie auch wiederverwenden kann ```js function ShowOrHideSubtableColumn(subtable, column, hide = false) { const rowIds = jr_get_subtable_row_ids(subtable); if (hide) { jr_hide_subtable_column(subtable, column); } else { jr_show_subtable_column(subtable, column); } rowIds.forEach(rowId => { const columnId = `${subtable}_${column}_${rowId}`; jr_set_disabled(columnId, hide); if (hide) { jr_set_subtable_value(subtable, rowId, column, ''); } }); } ``` aufrufen könntest du dies dann mit `ShowOrHideSubtableColumn("SUBVName", "SUBV_Column", jr_get_value("checkbox"));` oder indem du `ShowOrHideSubtableColumn("subview", "testField", true);` in das `OnChecked` und `ShowOrHideSubtableColumn("subview", "testField", false);` in das `OnUnChecked` Skipting Feld der Checkbox einfügst