Count Input Fields

0
Hi there,   i want to add new customers in my app. This works fine to fill it in. Afterwards i want to read out how many input fields are filled out and count it (to show on a progress circle). When I filled out only one input field it shows me 100% (instead of 15-20%). Every inputfield value is type of String. I call the following microflow:
asked
3 answers
1

I think it is because of

Inputfield != '’

If the inputfield is in fact empty (null) or contains spaces, it will result in true. Try this:

trim(Inputfield) != '’
and
Inputfield != empty

 

answered
0

Several possible options: 

  • split conditions always result in true. Check this via stepping through debugging. Use a CommunityCommons-rule IsEmpty for this (DRY-coding)
  • $Kunde/ProfilAnzahl is not correctly calculated, for instance always resulting in the value 1. Although the annotation does show the correct formula. At the end check the values that are stored in the database.
  • input-parameters of the progress circle are not correct. Debug and see what value is passed along to ‘Value attribute’ and its actual value.

 

answered
0

Works thank you. i only got following error in console:

An error has occurred while handling the request. [User 'Admin' with session id '07f3541d-XXXX-XXXX-XXXX-XXXXXXXX1a37' and roles 'Administrator']

--------

com.mendix.core.CoreException: com.mendix.modules.microflowengine.MicroflowException: requirement failed: Change object 'Kunde' should not be null
    at Modul_IoT.CountProfilKunde (Change : 'Change 'Kunde' (Profilanzahl)')

Advanced stacktrace:
    at com.mendix.basis.component.InternalCoreBase.execute(InternalCoreBase.java:389)

Caused by: com.mendix.modules.microflowengine.MicroflowException: requirement failed: Change object 'Kunde' should not be null
    at Modul_IoT.CountProfilKunde (Change : 'Change 'Kunde' (Profilanzahl)')

Advanced stacktrace:
    at com.mendix.modules.microflowengine.MicroflowUtil.processException(MicroflowUtil.java:146)

Caused by: java.lang.IllegalArgumentException: requirement failed: Change object 'Kunde' should not be null
    at scala.Predef$.require(Predef.scala:281)
    at com.mendix.modules.microflowengine.actions.mxobject.ChangeAction.execute(ChangeAction.scala:48)
    at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47)
    at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:201)
    at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:157)
    at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46)
    at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:79)
    at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:57)
    at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:55)
    at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:150)
    at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
    at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:155)
    at com.mendix.basis.component.InternalCoreBase.execute(InternalCoreBase.java:383)
    at com.mendix.basis.component.InternalCoreBase.execute(InternalCoreBase.java:398)
    at com.mendix.webui.actions.client.ExecuteMicroflowAction.runMicroflow(ExecuteMicroflowAction.scala:46)
    at com.mendix.webui.actions.client.ExecuteMicroflowAction.apply(ExecuteMicroflowAction.scala:32)
    at com.mendix.webui.actions.client.ExecuteMicroflowAction.apply(ExecuteMicroflowAction.scala:15)
    at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$4(RegularClientAction.scala:46)
    at com.mendix.webui.requesthandling.helpers.StateHandling.withState(StateHandling.scala:33)
    at com.mendix.webui.requesthandling.helpers.StateHandling.withState$(StateHandling.scala:21)
    at com.mendix.webui.actions.client.RegularClientAction.withState(RegularClientAction.scala:21)
    at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$3(RegularClientAction.scala:44)
    at scala.util.Try$.apply(Try.scala:213)
    at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2(RegularClientAction.scala:44)
    at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2$adapted(RegularClientAction.scala:42)
    at com.mendix.webui.requesthandling.helpers.ContextHandling.$anonfun$inContext$4(ContextHandling.scala:41)
    at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
    at com.mendix.basis.actionmanagement.IMonitoredAction$$anon$1.execute(IMonitoredAction.scala:47)
    at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
    at com.mendix.basis.actionmanagement.IMonitoredAction.monitor(IMonitoredAction.scala:49)
    at com.mendix.basis.actionmanagement.IMonitoredAction.monitor$(IMonitoredAction.scala:25)
    at com.mendix.webui.requesthandling.helpers.ContextHandling$ClientMonitoredAction.monitor(ContextHandling.scala:49)
    at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:41)
    at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:27)
    at com.mendix.webui.actions.client.RegularClientAction.inContext(RegularClientAction.scala:21)
    at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:24)
    at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:19)
    at com.mendix.webui.actions.client.RegularClientAction.inContext(RegularClientAction.scala:21)
    at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$1(RegularClientAction.scala:42)
    at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
    at com.mendix.webui.requesthandling.helpers.ProfileHandling.profileRequest(ProfileHandling.scala:14)
    at com.mendix.webui.requesthandling.helpers.ProfileHandling.profileRequest$(ProfileHandling.scala:10)
    at com.mendix.webui.actions.client.RegularClientAction.profileRequest(RegularClientAction.scala:21)
    at com.mendix.webui.actions.client.RegularClientAction.execute(RegularClientAction.scala:39)
    at com.mendix.webui.requesthandling.ClientRequestHandler.handleAction(ClientRequestHandler.scala:124)
    at com.mendix.webui.requesthandling.ClientRequestHandler.processRequest(ClientRequestHandler.scala:101)
    at com.mendix.externalinterface.connector.RequestHandler.doProcessRequest(RequestHandler.java:40)
    at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:72)
    at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:69)
    at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
    at com.mendix.external.connector.MxRuntimeConnector.processRequest(MxRuntimeConnector.java:75)
    at com.mendix.basis.impl.MxRuntimeImpl.processRequest(MxRuntimeImpl.java:909)
    at com.mendix.m2ee.appcontainer.server.handler.RuntimeHandler.service(RuntimeHandler.java:42)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:867)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:542)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1588)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1557)
    at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
    at org.eclipse.jetty.server.Server.handle(Server.java:502)
    at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
    at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
    at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
    at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
    at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
    at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
    at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:748)

 

answered