CE-1068 - Handle join fields; no message when running for process

This commit is contained in:
2024-05-01 16:54:01 -05:00
parent e0bb0ef2de
commit 4e0ccaa147
2 changed files with 12 additions and 5 deletions

View File

@ -28,6 +28,7 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import com.kingsrook.qqq.backend.core.actions.dashboard.widgets.AbstractWidgetRenderer; import com.kingsrook.qqq.backend.core.actions.dashboard.widgets.AbstractWidgetRenderer;
import com.kingsrook.qqq.backend.core.actions.reporting.GenerateReportAction;
import com.kingsrook.qqq.backend.core.actions.tables.GetAction; import com.kingsrook.qqq.backend.core.actions.tables.GetAction;
import com.kingsrook.qqq.backend.core.actions.values.QPossibleValueTranslator; import com.kingsrook.qqq.backend.core.actions.values.QPossibleValueTranslator;
import com.kingsrook.qqq.backend.core.context.QContext; import com.kingsrook.qqq.backend.core.context.QContext;
@ -126,10 +127,8 @@ public class ReportValuesDynamicFormWidgetRenderer extends AbstractWidgetRendere
{ {
if(criteriaValue instanceof FilterVariableExpression filterVariableExpression) if(criteriaValue instanceof FilterVariableExpression filterVariableExpression)
{ {
////////////////////////// GenerateReportAction.FieldAndJoinTable fieldAndJoinTable = GenerateReportAction.getFieldAndJoinTable(table, criteria.getFieldName());
// todo - join fields!! // QFieldMetaData fieldMetaData = fieldAndJoinTable.field().clone();
//////////////////////////
QFieldMetaData fieldMetaData = table.getField(criteria.getFieldName()).clone();
///////////////////////////////// /////////////////////////////////
// make name & label for field // // make name & label for field //
@ -185,7 +184,13 @@ public class ReportValuesDynamicFormWidgetRenderer extends AbstractWidgetRendere
if(CollectionUtils.nullSafeIsEmpty(fieldList)) if(CollectionUtils.nullSafeIsEmpty(fieldList))
{ {
widgetData.setNoFieldsMessage("This Report does not use any Variable Values"); ///////////////////////////////////////////////
// actually don't show this for process mode //
///////////////////////////////////////////////
if(!input.getQueryParams().containsKey("processName"))
{
widgetData.setNoFieldsMessage("This Report does not use any Variable Values");
}
} }
return new RenderWidgetOutput(widgetData); return new RenderWidgetOutput(widgetData);

View File

@ -74,9 +74,11 @@ public class RenderSavedReportPreStep implements BackendStep
/////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////
// put the savedReportId in values - this'll get passed into the widget, so it knows // // put the savedReportId in values - this'll get passed into the widget, so it knows //
// what report we're working with, and thus what inputs to prompt for // // what report we're working with, and thus what inputs to prompt for //
// also put a value in just to help it know we're running the process //
/////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////
SavedReport savedReport = new SavedReport(records.get(0)); SavedReport savedReport = new SavedReport(records.get(0));
runBackendStepOutput.addValue("savedReportId", savedReport.getId()); runBackendStepOutput.addValue("savedReportId", savedReport.getId());
runBackendStepOutput.addValue("processName", runBackendStepInput.getProcessName());
} }
} }