The Infor Communities is globally accessed system by Infor and its customers, please do not post or upload any content that could be deemed as sensitive, confidential or subject to any data regulation requirements. If you are unsure whether or not the content contains sensitive, confidential or has any data regulation requirements, please seek the advice of your internal security, legal, and compliance experts.

CSI Getting Header Value to Sum Grid Column

Hi All

 

I’m running into some issues while trying to get a header value to correctly show the summed value of a particular grid column. However, when I make a change to a value in this grid column, after I save the value is one save behind.

 

I’ve tried multiple different approaches to this – My initial thought was that it would just be a derived column and sum the values in the grid, but this didn’t work.

My next step was to try and emulate forms where this already looked to be working, namely the Customer Order Quick Entry. I noticed that the two of these forms use Triggers to Sum the header values, which I’ve also got working, but still cannot seem to get it to stay in lockstep.

Interestingly enough I see that the Purchase Order Quick Order Entry is also suffering from this issue.

I’ve tried using the following code:

   Dim bValue As Boolean

   bValue = ThisForm.PrimaryIDOCollection.RefreshKeepCurIndex()

 

Which presents its own issues. I have it hooked up with the save completed event, but if I have the focus set inside the grid, CSI Crashes. I believe this a toolset issue as I have seen it mentioned on xtreme before.

 

I have also tried using the NotifyDependentsToRefresh function on the Primary IDO, but this too is still one refresh behind.

 

If anyone has any help or suggestions I’d be keen to hear them.

 

Cheers,

 

Jamie.

Parents
  • That being said...

    My preferred approach is that you handle this in your report code.

    • Create an unbound IDO Property on your report's IDO, something like GroupTotal (and column value in your SQL procedure if used)
    • In your SQL procedure or IDO Extension Class, write a section of code that loops through and updates that column based on the group key
    • Add the IDO Property to the header section in your report just like any other IDO Property and display the calculated value from your report code

    This approach makes sure your business logic is in the proper place, your report code, and provides the most consistent approach to ensure your data calculates and displays correctly. It also allows you to show the calculated total in other places in CSI where you may not be able to use the Form Script-based approach.

Reply
  • That being said...

    My preferred approach is that you handle this in your report code.

    • Create an unbound IDO Property on your report's IDO, something like GroupTotal (and column value in your SQL procedure if used)
    • In your SQL procedure or IDO Extension Class, write a section of code that loops through and updates that column based on the group key
    • Add the IDO Property to the header section in your report just like any other IDO Property and display the calculated value from your report code

    This approach makes sure your business logic is in the proper place, your report code, and provides the most consistent approach to ensure your data calculates and displays correctly. It also allows you to show the calculated total in other places in CSI where you may not be able to use the Form Script-based approach.

Children
No Data