Skip to content

Commit cc7cd52

Browse files
committed
Bugfix to StudiesTriggerFactory
1 parent 8b1bdbd commit cc7cd52

File tree

2 files changed

+12
-8
lines changed

2 files changed

+12
-8
lines changed

Studies/src/org/labkey/studies/query/StudiesTriggerFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ private void possiblyResolveStudy(@Nullable Map<String, Object> row, Container c
7676
if (!NumberUtils.isCreatable(row.get(sourceProperty).toString()))
7777
{
7878
Container target = c.isWorkbookOrTab() ? c.getParent() : c;
79-
SimpleFilter filter = new SimpleFilter(FieldKey.fromString("container"), target.getEntityId()).addCondition(FieldKey.fromString("name"), row.get(sourceProperty));
79+
SimpleFilter filter = new SimpleFilter(FieldKey.fromString("container"), target.getEntityId()).addCondition(FieldKey.fromString("studyName"), row.get(sourceProperty));
8080
List<Integer> rowIds = new TableSelector(StudiesSchema.getInstance().getSchema().getTable(StudiesSchema.TABLE_STUDIES), PageFlowUtil.set("rowId"), filter, null).getArrayList(Integer.class);
8181
if (rowIds.size() == 1)
8282
{

Studies/src/org/labkey/studies/query/StudiesUserSchema.java

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -124,23 +124,23 @@ else if (TABLE_LOOKUPS.equalsIgnoreCase(name))
124124
}
125125
else if (TABLE_STUDIES.equalsIgnoreCase(name))
126126
{
127-
return createStudyDesignTable(name, cf);
127+
return createStudyDesignTable(name, cf, false);
128128
}
129129
else if (TABLE_COHORTS.equalsIgnoreCase(name))
130130
{
131-
return createStudyDesignTable(name, cf);
131+
return createStudyDesignTable(name, cf, true);
132132
}
133133
else if (TABLE_ANCHOR_EVENTS.equalsIgnoreCase(name))
134134
{
135-
return createStudyDesignTable(name, cf);
135+
return createStudyDesignTable(name, cf, true);
136136
}
137137
else if (TABLE_EXPECTED_TIMEPOINTS.equalsIgnoreCase(name))
138138
{
139-
return createStudyDesignTable(name, cf);
139+
return createStudyDesignTable(name, cf, true);
140140
}
141141
else if (TABLE_TIMEPOINT_TO_DATE.equalsIgnoreCase(name))
142142
{
143-
return createStudyDesignTable(name, cf);
143+
return createStudyDesignTable(name, cf, true);
144144
}
145145
else if (TABLE_EVENT_TYPES.equalsIgnoreCase(name))
146146
{
@@ -155,14 +155,18 @@ else if (TABLE_EVENT_TYPES.equalsIgnoreCase(name))
155155
return super.createTable(name, cf);
156156
}
157157

158-
private TableInfo createStudyDesignTable(String name, ContainerFilter cf)
158+
private TableInfo createStudyDesignTable(String name, ContainerFilter cf, boolean addTriggers)
159159
{
160160
CustomPermissionsTable<SimpleUserSchema> ret = new CustomPermissionsTable<>(this, createSourceTable(name), cf);
161161
ret.addPermissionMapping(InsertPermission.class, StudiesDataAdminPermission.class);
162162
ret.addPermissionMapping(UpdatePermission.class, StudiesDataAdminPermission.class);
163163
ret.addPermissionMapping(DeletePermission.class, StudiesDataAdminPermission.class);
164164
ret.addPermissionMapping(ReadPermission.class, StudiesDataAdminPermission.class);
165-
ret.addTriggerFactory(new StudiesTriggerFactory());
165+
166+
if (addTriggers)
167+
{
168+
ret.addTriggerFactory(new StudiesTriggerFactory());
169+
}
166170

167171
return ret.init();
168172
}

0 commit comments

Comments
 (0)