diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/AbstractScriptEditRegisterForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/AbstractScriptEditRegisterForm.java
index 59559425dc479feccb7c87045361fba3fbc65f68..5f4e7bae029bb4a6d6499be6ec5dfc90f8b0e07b 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/AbstractScriptEditRegisterForm.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/AbstractScriptEditRegisterForm.java
@@ -20,8 +20,11 @@ import com.extjs.gxt.ui.client.event.BaseEvent;
 import com.extjs.gxt.ui.client.event.ButtonEvent;
 import com.extjs.gxt.ui.client.event.Events;
 import com.extjs.gxt.ui.client.event.Listener;
+import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
+import com.extjs.gxt.ui.client.event.SelectionChangedListener;
 import com.extjs.gxt.ui.client.event.SelectionListener;
 import com.extjs.gxt.ui.client.widget.form.FormPanel;
+import com.extjs.gxt.ui.client.widget.form.SimpleComboValue;
 import com.extjs.gxt.ui.client.widget.form.TextField;
 import com.google.gwt.user.client.Element;
 
@@ -78,12 +81,24 @@ abstract public class AbstractScriptEditRegisterForm extends AbstractRegistratio
         super(viewContext, createId(scriptIdOrNull), DEFAULT_LABEL_WIDTH + 20, DEFAULT_FIELD_WIDTH);
         this.viewContext = viewContext;
         this.nameField = new VarcharField(viewContext.getMessage(Dict.NAME), true);
+        this.scriptExecution =
+                new ScriptExecutionFramework(viewContext, asValidable(formPanel), entityKindOrNull);
         this.entityKindField =
                 new EntityKindSelectionWidget(viewContext, entityKindOrNull,
                         scriptIdOrNull == null, true);
+        entityKindField
+                .addSelectionChangedListener(new SelectionChangedListener<SimpleComboValue<String>>()
+                    {
+                        @Override
+                        public void selectionChanged(
+                                SelectionChangedEvent<SimpleComboValue<String>> se)
+                        {
+                            scriptExecution.updateEntityKind(entityKindField.tryGetEntityKind());
+                        }
+                    });
         this.descriptionField = AbstractRegistrationDialog.createDescriptionField(viewContext);
         this.scriptField = createScriptField(viewContext);
-        this.scriptExecution = new ScriptExecutionFramework(viewContext, asValidable(formPanel));
+
         scriptField.addListener(Events.Change, new Listener<BaseEvent>()
             {
                 public void handleEvent(BaseEvent be)
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/ScriptExecutionFramework.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/ScriptExecutionFramework.java
index dda9e45d301c4e79694488493873cce7eb77d183..0b7dec96153cf342efb82699293bcf43a6b55e1d 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/ScriptExecutionFramework.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/script/ScriptExecutionFramework.java
@@ -116,11 +116,12 @@ public class ScriptExecutionFramework
     }
 
     public ScriptExecutionFramework(IViewContext<ICommonClientServiceAsync> viewContext,
-            IValidable validable)
+            IValidable validable, EntityKind entityKindOrNull)
     {
         this.viewContext = viewContext;
         this.validable = validable;
-        entityKindChooser = new EntityKindSelectionWidget(viewContext, null, true, false);
+        entityKindChooser =
+                new EntityKindSelectionWidget(viewContext, entityKindOrNull, true, false);
         sampleChooser =
                 SampleChooserField.create(viewContext.getMessage(Dict.SAMPLE), true, null, true,
                         true, false, viewContext.getCommonViewContext(),
@@ -285,6 +286,14 @@ public class ScriptExecutionFramework
         state.setScript(script);
     }
 
+    public void updateEntityKind(EntityKind kind)
+    {
+        if (kind != null)
+        {
+            entityKindChooser.setSimpleValue(kind.name());
+        }
+    }
+
     private void evaluate()
     {
         if (StringUtils.isBlank(sampleChooser.getValue()) == false)