Maximo

Maximo

Come for answers, stay for best practices. All we're missing is you.

 View Only
Expand all | Collapse all

Enabling basic flow control

  • 1.  Enabling basic flow control

    Posted Tue August 03, 2021 02:08 PM
    Edited by System Admin Wed March 22, 2023 11:50 AM
    MAM 7.6.1.2:

    What does enabling flow control do? (without using any of the extra functionality, like sequence, flow action, etc.)


    As far as I can tell, enabling flow control does this:

    1. WO can't be changed to complete until all child WOs & tasks are complete
    2. When the user completes all child WOs & tasks, the WO automatically changes to complete.

    Is that correct? Does basic flow control do anything else?
    Thanks.


    #AssetandFacilitiesManagement
    #Maximo


  • 2.  RE: Enabling basic flow control

    Posted Wed August 04, 2021 09:46 AM
    Dear 1971,

    Those are the basics of Flow Control but there is more such as in this technote:

    Work Order Flow Control in Release 7.1

    and if you google "maximo flow control" you will find more info, too.

    Please let me know if have specific questions.

    g'day                          ..............dick

    ------------------------------
    Dick Chertow
    L2 Maximo Support
    IBM
    Littleton MA
    ------------------------------



  • 3.  RE: Enabling basic flow control

    Posted Wed August 04, 2021 02:08 PM
    Edited by System Admin Wed March 22, 2023 11:52 AM


    Thanks Dick.

    To be honest, I find the online info about flow control to be a bit fragmented. I haven't found anything yet that tells me what exactly happens when I enable the WO.FLOWCONTROLLED field.
    For example, the two points mentioned in the original post...I couldn't find that stuff in the documentation anywhere. The only reason I know about that is from testing.





    #Maximo
    #AssetandFacilitiesManagement


  • 4.  RE: Enabling basic flow control

    Posted Mon August 09, 2021 12:44 PM
    Hi 1971,

    I think of the Inherit Status Changes and Flow Control as basically opposing options.

    Inherit goes way back to the early Maximo days and is a one way inheriting of statuses from top down.   When you change the status of a parent, the children with it enabled also change status.    There is no peer to peer (from one child to the next) status changing or child to parent.   When I say child it might be a child workorder (WO) or a task.

    Flow control is bidirectional and also peer to peer so is more functional.    Where Workflow controls the processing of a single record, Flow control goes record to record.   When the parent is started, the first tasks in line below it start.   As they complete, the next tasks in line are started and so on.   When the last one completes, it feeds that status back up to the parent.

    As there are some cases where using Inherit is better and some where Flow Control is better you may select which one is best on a WO by WO basis.

    ------------------------------
    Dick Chertow
    L2 Maximo Support
    IBM
    Littleton MA
    ------------------------------



  • 5.  RE: Enabling basic flow control

    Posted Wed August 04, 2021 03:29 PM
    Edited by System Admin Wed March 22, 2023 11:54 AM
    My users have asked that I enable WORKORDER.FLOWCONTROLLED by default for all WOs. I would do that by setting the default value to 1 in Database Configuration.

    As mentioned, that would mean:
    1. WOs can't be changed to complete until all child WOs & tasks are complete
    2. When the user completes all child WOs & tasks, the WO automatically changes to complete

    Any issues come to mind with that approach?
    #AssetandFacilitiesManagement
    #Maximo


  • 6.  RE: Enabling basic flow control

    Posted Wed August 04, 2021 04:19 PM
    Regarding mxe.app.wo.flowControlStatusInheritance:

    "If you are using process flow control, you can ensure that the status is inherited from the parent work order to the child work order. To allow status inheritance, you must activate the mxe.app.wo.flowControlStatusInheritance setting in the System Properties application. Two statuses can never be inherited with process flow control; the Flow Start and Flow Complete statuses. Flow Start and Flow Complete are INPRG and COMP, by default. You can change the default status settings in the Organizations application, by selecting Work Order Options > Work Type and specifying values for the start status and the complete status."

    Do you happen to know why we would need that setting setting, when we can use the Inherit Status Changes check box? Maybe I've misunderstood something...



  • 7.  RE: Enabling basic flow control

    Posted Mon August 16, 2021 12:32 PM
    Edited by System Admin Wed March 22, 2023 11:51 AM
    I've been having a hard time getting information from IBM support on this. They don't seem to understand that enabling FLOWCONTROLLED does things by default, even without setting up other flow control functionality like task sequences, flow action, etc.

    My question is:
    What else happens behind the scenes? I need to know this in case it impacts other functionality. For example, with #2 above, I only discovered that by chance. It's important to know about things like auto-completing a WO when all child WOs & tasks are complete, because that could impact workflow.


    Anyone have any idea how to get some definitive information on what FLOWCONTROLLED does by default?
    #Maximo
    #AssetandFacilitiesManagement


  • 8.  RE: Enabling basic flow control

    Posted Mon October 04, 2021 01:36 PM
    Edited by System Admin Wed March 22, 2023 11:53 AM

    For what it's worth, Anywhere WT 7.6.4 doesn't seem to handle basic flow control correctly:

    Maximo Desktop follows rules #1 and #2, but Anywhere doesn't:

    1. Desktop: WO can't be changed to complete until all child WOs & tasks are complete
         - Anywhere doesn't honor this rule. If flow control is enabled, and there are tasks that are incomplete, the WO can still be completed prematurely via Anywhere.

    2. Desktop: When the user completes all child WOs & tasks, the WO automatically changes to complete.
        - Anywhere: If all tasks get completed via Anywhere, and the system tries to auto-complete the WO due to flow control, then Anywhere will error-out:
           "WO has been updated by another user. Your changes have not been saved. Refresh the record and try again.- BMXAA8229W "




    #Maximo
    #AssetandFacilitiesManagement


  • 9.  RE: Enabling basic flow control

    Posted Wed October 06, 2021 04:51 PM
    Dear 1971,

    I wasn't sure if these 2 problems were bugs in Anywhere WT so I met with the Anywhere team who concluded that:

    1. For your problem 1 where a WO can be changed to complete even if all child WOs & tasks are not complete in Anywhere WT they said this is not a bug.   Anywhere WT is not a robust enough application to include all the business runs that are part of Flow Control on the Desktop.   They knew this so I guess it needs to be documented better.

    2. For your second problem, where when  the system tries to auto-complete the WO due to flow control, then Anywhere will error-out:       "WO has been updated by another user. Your changes have not been saved. Refresh the record and try again.- BMXAA8229W "
    they thought this problem had been fixed.
    Do you have the latest IFix for Anywhere installed for Anywhere 7.6.4?

    If so, also try this setting:
    1.Login to Maximo.
    2.Go to Object Structure, search on OSLCWOSTATUS 
    3.From More Actions select Advanced Configuration
    4.Looks for WOCHANGESTATUS
    5.Check the box for Invoke Execute on non-persistent object.
    6.Save
    7.Retest the task status change issue

    If you are still getting the error after that please open a Case with support so we can get an APAR entered and fixed.

    What part of the world are you in?    If in North America you can ask that the Case be assigned to me.   If not, ask whoever gets the Case to contact me.

    cheers                                                  ......................dick




    ------------------------------
    Dick Chertow
    L2 Maximo Support
    IBM
    Littleton MA
    ------------------------------



  • 10.  RE: Enabling basic flow control

    Posted Wed October 06, 2021 06:57 PM

    Thanks Dick.

    Here's my Anywhere info:
    IBM Maximo Anywhere 7.6.4.0 Build 20200117_195427-0500 DB Build V7640-12

    I'll ask Support to add you to the case:
    TS007056440 - Anywhere WT 7.6.4 doesn't handle basic flow control correctly

    And I'll test that setting that you suggested.

    Thanks for your help.




  • 11.  RE: Enabling basic flow control

    Posted Wed October 13, 2021 09:10 PM
    Edited by System Admin Wed March 22, 2023 11:45 AM
    Here's what IBM said (TS007056440):

    "​I did a test on my environment and I didn't see that error. After completing the tasks on a WO that has under flow control checked the WO was complete and synchronized without any errors.

    I'm on Anywhere 7.6.4 IFIX1 and based on the System Information that you put on the case I can see that you are not:
    TPAE OSLC Object Structure 7.6.4.0 Build 20200219_092917-0500 DB Build V7640-04

    On IFIX 1 we have a few APAR related to Flow Control, check below:
    https://www.ibm.com/support/pages/readme-interim-fix-ibm-maximo-anywhere-764

    Can you apply this fix and try the Flow Control again?"


    Me:
    Unfortunately, we're too short staffed to apply the iFix at this time. We will need to put this on hold.


    @Dick Chertow, with that said, I wanted to follow up on something you said earlier:

    "...they thought this problem had been fixed.
    Do you have the latest IFix for Anywhere installed for Anywhere 7.6.4?

    If so, also try this setting:
    1.Login to Maximo.
    2.Go to Object Structure, search on OSLCWOSTATUS
    3.From More Actions select Advanced Configuration
    4.Looks for WOCHANGESTATUS
    5.Check the box for Invoke Execute on non-persistent object.
    6.Save
    7.Retest the task status change issue"


    I took a look, and I don't see a WOCHANGESTATUS object in the OSLCWOSTATUS object structure. I only see WOSTATUS.



    Question:
    Like I mentioned, we're not able to apply the iFix at this time. With that said, do you know if we're missing the WOCHANGESTATUS object in the OSLCWOSTATUS object structure?
    Should I try manually adding it? Or is there any chance that "WOCHANGESTATUS" was a typo, and WOSTATUS is fine? (Note that Invoke Execute on non-persistent object isn't enabled for that object.

    Thanks.



    #AssetandFacilitiesManagement
    #Maximo


  • 12.  RE: Enabling basic flow control

    Posted Thu October 14, 2021 08:55 AM
    WOCHANGESTATUS wasn't specific to 7.6.4.0 IFIX 01. I saw issues before where that didn't get created and I couldn't run the build after pulling RDF files and had to manually add it. For clarity, I honestly don't know whether or not this will fix your specific issue.  

    This is what it looks like in my sales VM (along with the execute on non-persistent object)


    All attributes except WOGROUP were included (using the Exclude/Include fields)

    ------------------------------
    Steven Shull
    ------------------------------



  • 13.  RE: Enabling basic flow control

    Posted Fri October 15, 2021 12:48 PM
    Dear 1971,

    For step 2, Go to Object Structure, and search on  OSLCWODETAIL not OSLCWOSTATUS.

    have a good weekend                              ...............dick


    ------------------------------
    Dick Chertow
    L2 Maximo Support
    IBM
    Littleton MA
    ------------------------------



  • 14.  RE: Enabling basic flow control

    Posted Wed November 17, 2021 05:07 PM
    Edited by System Admin Wed March 22, 2023 11:53 AM
    IBM Support (the product designer) says this is what happens when we enable flow control on a WO:
    TS006384882


    The below 5 main things the flag does:

    1) At a parent level, it sets the whole work package of children and tasks to also be on.
    • When using flow control, the best practice is to have the entire branch of the hierarchy on together so it works as a group. To that end, when the parent is not on, you cannot manually turn children and tasks on. When you turn the parent on, all children and tasks inherit that setting. You can then turn individual children and tasks off, but best practice is to have the whole record set following the flow control rules so children and tasks complete in sequence and finally write the set's completion up to the parent.
    • What "on" meant was that the 'Flow Control option in use' option (check box) is to be selected.
      The main use case was a small packet of work comprised of a work order with tasks. Example, a help desk job with a bunch of steps. The tasks being linked to each other in sequential order as finish-to-start predecessors/successors. The customer wants each task in the set, when completed, to start it's successor (thus getting that one to the assignee quickly with whatever process they use to do that.) also, to prevent that successor from starting until it's predecessor was complete. So it can make a procedural packet of work go faster, and only in the prescribed order. Of course some of that depends on the customer's processes etc.
    2) When a parent goes to INPRG, it sets the first eligible child/task to INPRG.

    3) When a predecessor is completed, it sets its successor(s) to INPRG.

    4) When the last of the children is completed, it sets the parent to complete.

    5) A record is prevented from various other status changes while waiting for the flow to set it in progress or complete it.

    I hope the above information answers your question(s).


    #Maximo
    #AssetandFacilitiesManagement