cancel
Showing results for 
Search instead for 
Did you mean: 

ItemChanged on Matix

bruno_peyron
Active Participant
0 Kudos

Hello,

I want to display a messageBox on documents marketing Lines only ig  ItemCode or ItemName was modified so i must test if the value was modified but the event  ItemChanged does not work (since 2004 !!!) .

I try to test my value with the LOST/GOT events but this event is triggered 13 times in SAP 9.1 PL10 if you have created RF on the rows of the matrix (or header)

Have you a work around ?

Kind regards

Bruno

Accepted Solutions (0)

Answers (3)

Answers (3)

former_member185682
Active Contributor
0 Kudos

Hi Bruno,

Try something like this:


if(!BeforeAction)

{

  switch (pVal.EventType)

  {

  case BoEventTypes.et_VALIDATE:

  #region et_VALIDATE

  switch (pVal.ItemUID)

  {

  case "your matrix unique id":

  if (pVal.ColUID.Equals("your col unique id"))

  {

  if (pVal.ItemChanged) //had some change in matrix, should be something

  SBO_Application.MessageBox("Value Changed");

  }

  break;

  }

  default:

  break;

  }

}

Hope it helps.

Note: I use SAP 9.1 PL 9 and SAP 9.0 and this code works.


Best regards,

Diego Lother


View Diego Lother's profile on LinkedIn

Message was edited by: DIEGO LOTHER

bruno_peyron
Active Participant
0 Kudos

Hi Ad

innerevent=false  work only with the event VALIDATE. Not with LOST and GOT FOCUS so I can't know if the value has changed or no.


Can you try on your base if the LOST and GOT focus fired 13 times in your version with and without RF ?


Regards

Bruno

AdKerremans
Active Contributor
0 Kudos

Hi Bruno,

The got and lost focus is fired multiple times, also on my side. I usually use the after validate event.

For saving the "old" value iI use got focus and save it to a hastable with the column numer/name as key.

Regards

Ad

AdKerremans
Active Contributor
0 Kudos

Hi Bruno,

You could use the gotfocus event to save the current value and check in the lostfocus event if the value has changed

Regards

Ad

bruno_peyron
Active Participant
0 Kudos

Hi

I know that work around but this events was triggered 13 times in SAP 9.1 PL10 if you have created RF on the rows of the matrix (or header) so the process is very slowly....

Regards

Bruno

AdKerremans
Active Contributor
0 Kudos

Hi Bruno,

did you check the innervent property?

onlyp rocess when innerevent = false;

Regards

Ad