Dynamic process simulation

Hi Forum members,
As a newbie to LabVIEW I'm in some need of basic guidance on best way to proceed in developing my process simulation in LabVIEW,  The following is basically what I want to implement:
1. A vessel is initially set at a certain level (I'm expressing the contents as volumetric cubic units).
2. Press a start button.
3. Open a valve at bottom of vessel (opening time is 2 seconds) - then the following steps 4. and 5. happen simultaneously
4. Material flows out of vessel (I have a volumetric flow rate expression in cubic units per second)
5. Material feeds into the top of vessel (I have the volumetric flow rate as XX cubic units per second)
I have attempted to implement the above using various methods (i.e. Simulation frame, timed sequence, etc.) however with all the various functions in LabVIEW I'm baffled which one to select considering that I have rates of flow, delays going on in my application.  I would also like to make some animations and show graphs of the discharge volume and vessel contents volume over time.
If anyone can suggest the best approach to this problem it would be appreciated.
Regards,
Solved!
Go to Solution.

Hi buddy,
                          It will be great if  you talk in general words. See we here may or may not worked in that environment so helping you in that context will be bit difficult.
Let us know the operation you want to perform.
Something like this ?
Kudos are always welcome if you got solution to some extent.
I need my difficulties because they are necessary to enjoy my success.
--Ranjeet
Attachments:
INC & DEC.vi ‏25 KB

Similar Messages

  • Dynamic Process Levels

    Hi Experts,
    In my workflow i have to create dynamic process levels. My probelm here is ...
    I have to group the shopping cart items based on account assignment, and am successful up to this part. After this I have to send one group of items to User Manager and based on his approval limit i have to increase no of approvals like next approval to his manager and continues ..... 
    Is there any BADI to do ? I have tried /SAPSRM/BD_WF_PROCESS_CONFIG but this particular BADI is getting triggered before ordering the shopping cart...
    I am using SRM 7.0 , Process Controlled workflow.
    Regards,
    Bhanu Gattu.

    Hi Bhanu,
        SAP has provided the standard Response Resolver for this requirement 'RR_SPENDING_LIMIT_APPROVER'. There are two Badi implementations will be triggered. First one is '/SAPSRM/BD_WF_CONFIG_SC_SL' and second one is '/SAPSRM/BD_WF_SC_RR_SLu2019. In order to increase the index we use Approval_Index in SRM 5.0, the same way in SRM 7.0 we use BADI Definition '/SAPSRM/BD_WF_PROCESS_CONFIG' to increase the index.
    Put a break-point in /SAPSRM/BD_WF_CONFIG_SC_SL' and see how the index is getting increase. SAP also provides some standard expressions, but from my experience most of customer will only maintain the approval limit. If your scenario is only approval limit based then you have create custom expression to meet your requirement. Try out this and let me know your feedback..
    Saravanan..

  • Dynamic Processing Problem

    I've been having the problem of sound basically being muted when I use dynamic processing. This problem wasn't present in an earlier version of Audition, so I'm wondering if it's a feature to tell me something or if it's a problem, as in the settings aren't right.
    To go around this problem, I use a heavy clip restoration effect, but it doesn't work on the sound files
    i all the time
    , because the audio still leaves spikes that can cause the muting.
    Is this a bug in the software, am I doing something wrong, or is this a warning of some kind?
    Jeremy

    Yes that's true when ever you try to use  ParForEach block then for each value entry in the table a separate workitem ID is created, i.e. a separate instance is created that paralle processing is not possible like that
    Instead of that what you can do is create a fork with 3 branches and define a End Condition such that until all 3 branches are executed .
    Before to the fork step determine all the agents and store them in a internal table , you can access the one internal table entry by using the index value check this [wiki|https://www.sdn.sap.com/irj/scn/wiki?path=/display/abap/accessingSingleEntryfromMulti-line+Element] to access single entry from a internal table.
    For each task in the fork assgin a agent
    So, as we have defined the condition that until all the three branches are executed you don't want to come out of the fork step so, it will wait until all the stpes are completed.

  • Business Process Simulation

    Hello,
    we want to know how can we accomplish the Business Process Simulation with BPA Suite. What componentes do we need to install?
    thanx.
    Francesco

    Hello Francesco,
    Take at look at the "When will the entire BPA Suite be available" message. This will give you a suggestion how to start with the simulation until the complete suite is available.
    Dirk

  • AT0 : static and dynamic processing

    dear guru ,
    whose are the differences in assembly to order with planned
    order between static and dynamic processing ?
    Thanks.

    Hi,
    Static assembly processing :
    If you create a sales order for a material with the 'assembly processing' technique, the system carries out an availability check for the components needed for the assembly and creates a single procurement element in the background.
    The procurement element is assigned to the sales order directly. The number of the procurement element is determined in the sales order.
    Dynamic assembly Processing :
    If you create a sales order for a material with the 'assembly processing' technique, the system carries out an availability check for the components needed for the assembly. Depending on the results of the availability check, either one or several procurement elements are created. The quantity for a one-time delivery and/or the next possible deadline for a full delivery and/or a delivery proposal with then ext possible deadline are displayed on the availabililty control screen.
    During dynamic assembly processing, you can not change the quantities and deadlines. You can, however, select the 'fix date and quantity' field, if necessary. The 'check scope' and 'other plants' functions are not available here.
    The procurement element numbers are not saved in the sales order. The link between the procurement element and the sales order is created using the number of the individual stage (sales order number/item). For this reason, it is possible to carry out another availability check taking into account incoming stock and additional, manually entered procurement elements.
    In Requirements class definition (OVZG), The assembly type indicator determines:
    - Which procurement element is created
    - Whether a 1:1 link exists between the sales order and the procurement element (static procedure) or whether a loose link exists with the option of splitting dates and quantities (dynamic procedure).
    In the case of static assembly order processing, you make the changes to the production order directly from the sales order.
    In the case of dynamic assembly order processing, you must call the production orders separately.
    Also refer link below for more details:
    http://help.sap.com/saphelp_47x200/helpdata/en/41/191eab45fd11d188ff0000e8322f96/frameset.htm
    Regards,
    Ashok

  • Error while setting input parameter for dynamic process - GP

    Hi All,
    I am using CAF 7.1 GP.
    Here I have to start a process dynamically and it is working fine.
    But, when I tried to set value for input parameter of this process by
    IGPStructure params = GPStructureFactory.getStructure(process.getInputParameters());
    params.setAttributeValue("Val","MyValue");
    ( <b>Val</b> is the name of grouped input parameter ), it is giving
    com.sap.caf.eu.gp.exception.api.GPInvocationException: Structure with name input and namespace http://wwww.sap.com/nw/eup/gp does not have an attribute with name Val and namespace null.
    But no where I have mentioned http://wwww.sap.com/nw/eup/gp.
    I dont have any structures in my input and output.
    Here is my full code
           try
                IGPProcess process = null;
                IUser tl_user =UMFactory.getUserFactory().getUserByLogonID("fahad");
                     IGPUserContext userContext = GPContextFactory.getContextManager().createUserContext(tl_user);//, user.getLocale());
                     process =GPProcessFactory.getDesigntimeManager().getActiveTemplate("F5D76840A56F11DC983B001966243CAD",userContext);
                     wdComponentAPI.getMessageManager().reportSuccess("Title of process is "+process.getTitle());
                     IGPRuntimeManager rtm = GPProcessFactory.getRuntimeManager();
                     IGPProcessRoleInstanceList roles = rtm.createProcessRoleInstanceList();
                     int rolenum = process.getRoleInfoCount();
                     wdComponentAPI.getMessageManager().reportSuccess("Number is "+rolenum);
                     IGPProcessRoleInstance roleInstance=null;
                     IUser ho_User=null;
                     for (int i = 0; i < rolenum; i++)
                             wdComponentAPI.getMessageManager().reportWarning("Role Text is "process.getRoleInfo(i).getText()"  Role Name is "+process.getRoleInfo(i).getRoleName());
                             if(i==1)
                                  ho_User = UMFactory.getUserFactory().getUserByLogonID("poornendu");
                                  roleInstance = roles. createProcessRoleInstance(process.getRoleInfo(i).getRoleName());
                                  roleInstance.addRuntimeDefinedUser(ho_User);
                                  roles.addProcessRoleInstance(roleInstance);
                             if(i==2)
                                  ho_User = UMFactory.getUserFactory().getUserByLogonID("fahad");
                                  roleInstance = roles. createProcessRoleInstance(process.getRoleInfo(i).getRoleName());
                                  roleInstance.addUser(ho_User);
                                  roles.addProcessRoleInstance(roleInstance);
                     wdComponentAPI.getMessageManager().reportSuccess(""+process.getStructure().getItemCount());
                     IGPStructure params = GPStructureFactory.getStructure(process.getInputParameters());
                     wdComponentAPI.getMessageManager().reportSuccess("Title of process is "+process.getTitle());
                     <b>params.setAttributeValue("Val","MyValue");</b>                     
                     String pName=wdContext.currentContextElement().getProcessName();
                     IGPProcessInstance prInstance = rtm.startProcess(process,pName,"This process has been started using the GP public API",tl_user,roles,params,tl_user);
           catch(Exception e)
                wdComponentAPI.getMessageManager().reportException(""+e);
    Can anyone help me on this.
    Thanks,
    Fahad Hamsa

    Hi Experts,
    I solved it myself.
    The problem was, I have to make the input parameter as exposed. Thats all
    Anyway, thanks for the support.
    Regards,
    Fahad Hamsa

  • Dynamic process levels in BRF

    Hi Experts,
    I have configured a BRF workflow in SRM 7.0 which is suppose to have theree step approvals. I am able to achieve the two levels among the total three by creating custom events and expressions in BRF from the help of many experts provided in SDN. I have tested the shopping cart and succesfully found the two levels are working fine. In the third level the approval process is different it is not static it is dynamic. After the second level approval is completed the cost centre managert approval is required. I need to get cost centre manager from a ztable and compare the shopping cart price with the approval limit of the cost centre manager. If the shopping cart value is more than the approval limit of cost centre manager,  then the cost centre manager will aprove and also the shopping cart should go to his manager for approval.
    From lot of reasearch and exploring SDN now I am able to understand the process workflow but I am not able to understand the dynamic determination of process levels. Can someone help me on this.
    Thanks and REgards,
    Prashanth..

    use BADI /SAPSRM/BD_WF_RESP_RESOLVER to set your agents..

  • Error during Parforeach dynamic processing!

    Hello All:
    Hope to have some input to an unsolvable error in the workflow template that I have developed.
    I have developed a workflow in which I am using a block with “parforeach” dynamic parallel processing and in that block I am displaying notification of absence. IN the block I have created a task which displays notification of absence.
    I have maintained User_ID(this is a multiline container element which has multiple user ids) as my parallel processing multi-line element so that all the users entered in the User_ID element can access the workitem. Now I was able to create different work items for all the users entered , but when any one of the user is accessing the work-item, the work flow is getting in the error status with the following error log messages.
    Flow item Test Worflow for dynamic block (Workflow 000000033121) has the status "Error" 
    Error when starting work item 000000033121                                              
    JOIN entry missing for fork on node 0000000008                                          
    Error when loading the callback component (work item 000000033126)                      
    Error during result processing of work item 000000033126                                
    Work item 000000033121: Object FLOWITEM method EXECUTE cannot be executed               
    Error when loading the callback component (work item 000000033126)                      
    Error when loading the callback component (work item 000000033126)                      
    User_ID is entered as Multiline element.
    In the control tab of block, (Note: USER_ID is the multielement)
    &USER_ID[&_WF_PARFOREACH_INDEX&]&    ->    &_USER_ID_LINE&
    In the “display absence” step of block, I am assigning in the “Agents” area of the control tab as: &_USER_ID_LINE&
    Now, when I execute the workflow, I am able to see that the work-items are sent to the respective agent inboxes given in the USER_ID element and when I execute(display absence form) any one of it , the workflow is set to error status giving the above mentioned errors.
    Please help me. I am missing any binding elements??
    Do I need to add any JOIN in my dynamic step??
    Regards,

    Hi Satya,
    Hmmmm.... well you've correctly assigned the multiline container element and the binding between workflow and container.  However the way you have assigned the agents is a little suspicious - as it relies on a guaranteed order of processing.  That might be what is confusing the workflow.
    Try the following instead.
    a) Put your task into a subflow.
    b) Call the subflow using the parforeach processing
    I think you'll find this less problematic.
    Also be careful to watch what you are passing back from the task to the workflow - you don't want any deadlocks here.  Either don't pass anything back, or pass back the values into  a table using the APPEND binding option rather than the usual assign (just select the arrow button in the binding).
    Regards,
    Jocelyn

  • Process chain / DM error in 'Modify dynamically' process

    Hello experts,
    I try to run the following how to : "move date between applications using Data Manager ..."
    Yon can find the pdf here : http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/b0480970-894f-2d10-f9a5-d4b1160be203
    I'm looking after someone who used it successfully, on my side after implementing all steps and running the package I get the message "IMMEDIATE RUN: Request to run the package on the server was successful The package is now running"
    When I look the log for the process chain, overall status of the process chain is yellow, and steps "modify dynamically" and "clear BPC Tables" are in error.
    I can't get any usefull error messages.
    Thx....D

    Hi Deepak,
    We are experiencing a similar issue while trying to Light optimize one Application.  The step "Clear BPC Tables" stays in red status, in addition to "Plan mode on" process.  The Application Set has three applications, but this issue only happens regarding one of them.
    Have you found a solution from SAP to this problem or any workaround?
    Regards,
    Maximiliano

  • Multiple user in a parallel dynamic process step?

    Hi,
    anyone an idea how to address an process step in an parallel dynamic block simultaneously to multiple users?
    I already tried the ‘Assign Users to Process Role’-Callable Object. Unfortunately each added user to one step in the parallel dynamic block was added to the same step in each parallel thread.
    Any suggestions how to solve this problem in a other way?
    Thanks and best regards
    Robert

    WKAriyoshi wrote:
    Is there a way to execute the Prompt User for Input in parallel process while executing the read data part? Is there another way to request a password from the user?
    Executing these tasks (reading from instrument AND prompting user for inputs) in parallel loops can solve your problem instantly, if you can share the code, one can pin point what & where exactly changes are required or parallel loop can be included (along with any other changes which might be required).
    I am not allergic to Kudos, in fact I love Kudos.
     Make your LabVIEW experience more CONVENIENT.

  • How to create a BPEL dynamic process?

    Hi gurus,
    We have encountered the following scenario, hope somebody can help!
    The client will manage some provisioning activities with an end system that will service them, BPEL is required to be the "Activity Manager", and handle these as they come; meaning, the client will send an array message describing the order in sequence on how they should be sent to the end system. This activities can have dependencies between them, also defined within the input message. The following is a muck up example of input message structure:
    <ActivityOrder>
    <!-- Some descriptions about the ActivityOrder>
    <Id/>
    <Status/>
    <DateInitiated/>
    <!-- This can have N number of ListActivity descriptions-->
    <ListActivity>
    <ListAtivityHeader>
    <SequenceNumber/>
    <Dependency/>
    <ActivityId/>
    <Status/>
    <Description/>
    <!-- ListActivityItem will contain message details to send to partnerLink>
    <ListActivityItem>
    </ListActivityItem>
    </ListActivity>
    </ActivityOrder>
    The order in which these activities are processed in BPEL will be dynamic, and they will be sent at run time, so to support this approach, a dynamic orchestration process will be needed on the integration layer. The client will send an array containing the sequential activities described by <SequenceNumber>, and also the dependencies between them, if that activity requires it, described by <Dependency> which will contain the sequence number that has to be completed before the current activity can be performed. After the end system resolves and replies to the activity requestin BPEL, an update must be sent to the client notifying status.
    All these interactions are assynchronous and could take as long as 6-8 weeks. Is it technically feasable the implementation of the above requirements? If so, how can we accomplish this?
    We are on SOA Suite 10.1.3.1
    Regards,
    Wilver
    Edited by: user633514 on Feb 4, 2010 8:21 AM

    Thanks for the reply, and yes, I have taken ideas from it that sample, but this is not the case I'm stating, parterLink is wellknown at design time, so its not a Dynamic partnerLink type of scenario since its the process flow the one that needs to be determined at run time. Dependant activities can't start until reply of the activity that it depends on has being received. How can I verify that an activity sent has being received?
    I've been weightin options; Can't use flowN since there could exists dependencies between processes. It can be accomplished by doing a combination of logical while structures or to call recursively another bpel process that will manage the Invoke/Receive, depending on the nature of the flow. Is there any other way of doing this that we haven't seen? What are the pros and cons I could encounter? What is the best practice recommendation for such scenario?
    Right now we have the following algorithm:
    Channel Initiates process
    Receive Input
    While Message has Activity
    If Activity has no Dependencies
    Invoke CurrentActivityCreationService
    End-If
    Else
    Set $receiveStatus = 'NO'
    While Activity Dependancy NOT Received
    Verify Activity Dependancy Receive Status (Where I get this info??)
    Update $receiveStatus with the outcome of the Verify activity above
    If $receiveStatus = 'NO'
    Receive ActivityCreationServiceResponse
    Update Channel
    End-If
    Else
    Invoke CurrentActivityCreationService
    Set $receiveStatus = 'NO'
    End-Else
    End-While
    getNextActivity
    End-Else
    While Exist a Pending Activity Responses to be Received
    Receive ActivityCreationServiceResponse
    Update Channel
    End-While
    Invoke Channel Callback
    The above algorithm creates me the following restrictions:
    • Activities are needed to be sent sequentially ordered.
    • Each activity may only have one dependency.
    • An activity can never depend on another that is later in the sequence.
    • Before sending activities that depend on previous one, it needs to know the state of that previous activity dependency, if already received or not.
    • For better performance, all independent activities should be first in the sequence, and activities with dependancies last.
    As usual most of these restriction are a hard sell since the activity stack will be tailored by a functional end user, so their not desired. Any fresh idea will be more than welcome, thanks for the time.
    Regards, Wilver
    Edited by: Wilver Cortes on Feb 5, 2010 6:34 AM
    Edited by: Wilver Cortes on Feb 5, 2010 6:38 AM

  • AU Dynamic Processer - Where did I get it?

    I have a list of AU processing plug-ins in GB and was wondering if someone knew where they might have come from. Do they come with Garageband?
    Also, anything like Anteras Mic Modeler available for Mac? I loved that plugin on my windows machine.
    thx,
    seed

    Do they come with Garageband?
    yes
    Also, anything like Anteras Mic Modeler available for Mac?
    Anteras Mic Modeler comes in an AU version that should work with GB

  • Issue with Process Simulation with Oracle BPM Studio

    Hi.
    Im using Oracle JDeveloper 11.1.1.6 and BPM Studio and i have a problem with include Simulation Models into a Simulation Definition. I think that this is a bug in PS5 release and only can add one Simulation Model into a Simulation Definition, can you confirm that?
    Thanks, regards.

    No.
    Just go to your definition, double click on the existing model name , there will be drop down which shows all of your existing models.
    thanks,
    Murugesh

  • Dynamic process call in Oracle BPM 11g

    Hi All,
    I worked on oracle BPM 10g and in that we can decide the target process based on a parameter (targetprocessname) in subflow / process creation by creating a interface.
    simillaly do we have any way by which we can decide child process in runtime?
    For example: I have 3 process (1 main - A and 2 child process - B and C ), Main process can call anyone of child process based on one parameter. i.e., if a parameter value X>10 then it should call process B else process C 
    Thanks in advance

    Automatic activities no longer exist.
    To make process/project variable assignments you use a Script activity to make simple or XPath expression based value assignments.
    You can also make assignments based on a XSL transformation. This is useful in cases where you're calling a service and the inputs/outputs don't quite match what you have defined in your business objects in the BPMN process.
    For conditional assignments ("if A then B, else C") you would typically use a Business Rule activity.
    I'm not aware of a way to output debugging log messages or set breakpoints directly in a BPMN process in 11g. You can however use a file adapter at the composite.xml level and call that as a service in your BPMN process to write out data values to the filesystem for debugging - although this approach is kludgy at best.

  • Dynamic processes in BPA?

    Hi,
    I'm doing a little research on the possibilities of Oracle BPA. I am working with the demo version and I'm prety excited about the possibilities on creating proces overviews and I'm looking forward to the launch of the final version so I can publish processes as well via a web interface. There is only one thing I coulnd't find out and which I actually really need.
    I want to publish proces overviews based on some settings, which are stored in a datase. So for example, when I have 3 events within a proces, and the last event should only be published when a certain value in the database is set to true. I hope this small example makes you understand what I mean. Can anybody tell me if this is possible with Oracle BPA? Any suggestion or help will be appreciated.
    Regards,
    Ralf

    Hi Ralf,
    there is a filter wizard available that helps you to set up your individual filter. Look in the Administration Module / Conventions / Filter
    With a right mouse click you can activate the wizard.
    Regarding the content of the filter it is highly recommended to be familiar with the underlying ARIS methodology concept. Unfortunately there is no detailed explanation how to set up a specific filter for a specific purpose.
    You can copy a filter as well and use it as starting point for your changes (that's what I would recommend in your case).
    Within this filter you only have do define the differences you need to separate the web exports. The newly developed filter will then be used as an input parameter for the publishing engine.
    But as I mentioned, this is not suitable to identify differences on the attribute level. But sometimes you can create a work around by using a special combination of objects. But therefore I do not know enough about your use case
    Dirk

Maybe you are looking for