Custom event action to send stream message

  • 9 September 2021
  • 8 replies
  • 580 views

Userlevel 4
Badge +7

Hello Community,

 

Its my first time using the FND_Stream_API and I want to set up an event action that sends a stream message to the creator(a specific user) of Shop Order, everytime someone changes a particular date variable.

 

All I know is that FND Stream API is the way to do it, but can someone please educate me the syntactical stuff so that I can build the script.


This topic has been closed for comments

8 replies

Userlevel 6
Badge +7

Hi,

 

You have to first create a custom event on the table ‘SHOP_ORD_TAB’. See below.

 

Go to New Custom Event  window and create a new event. The Logical Unit and Table are as shown below.

As you planning to generate a stream message when a particular date variable is changed, you can choose Fire when option ‘Objects are changed’. Yo can either choose ‘Before’ or “After” from the drop down as shown in number ‘4’. 

Then select which attributes should be available when creating event action. 

Number 6 can be used as a condition which triggers the event when only particular attributes mentioned in this field gets change.

 

As an example, I have created an event which triggers when Need date in the Shop Order is changed.

 

 

Then you have to Create the event action. Click ‘Create new action’ in the top right corner.

Select Action Type : Streams Message and add a action description.

The fields you selected in the number 5 section in the first image will be listed in Available Substitution fields section. So you can use those fields as parameters.

Finally make sure to select the check box ‘Action Enabled’ in the event action and ‘Event Enabled’ in the Custom event. Unless these are enabled, stream message will not be sent even if you have correctly written the event and it’s action.

 

Hope this will help you.

Userlevel 6
Badge +7

Hi,

Additional information about stream messages.

 

Streams Message    
Creates a new stream message

Parameters:

From: The Foundation1 user who is sending the stream message
To: The Foundation1 user who should receive the message
Subject: This will be the header shown in the stream message.
URL: The URL to navigate when the stream message in clicked. (Optional)
Message: Message to display

 

If you have properly configured the custom event and action a stream message will be available in the bottom left corner of the application. You can click on it to open.

 

 

 

Userlevel 4
Badge +7

Hi,

Additional information about stream messages.

 

Streams Message    
Creates a new stream message

Parameters:

From: The Foundation1 user who is sending the stream message
To: The Foundation1 user who should receive the message
Subject: This will be the header shown in the stream message.
URL: The URL to navigate when the stream message in clicked. (Optional)
Message: Message to display

 

If you have properly configured the custom event and action a stream message will be available in the bottom left corner of the application. You can click on it to open.

 

 

 

The community is awesome, Thanks a lot chamika it really helps.

Userlevel 4
Badge +7

Strange enough I am getting an error that says following - 

 

Server error messages:
83705139-ef80-41a6-8250-4c5690be53cf

Ifs.Fnd.FndSystemException: Unexpected error while calling server method AccessPlsql/Invoke ---> Ifs.Fnd.FndServerFaultException: ORA-06550: line 8, column 23:
PL/SQL: ORA-00942: table or view does not exist

Failed executing statement (ORA-06550: line 8, column 23:
PL/SQL: ORA-00942: table or view does not exist
ORA-06550: line 8, column 1:
PL/SQL: SQL Statement ignored
ORA-06550: line 18, column 4:
PLS-00221: 'FND_STREAM_API' is not a procedure or is undefined
ORA-06550: line 18, column 4:
PL/SQL: Statement ignored
ORA-06512: at "IFSAPP.FND_EVENT_ACTION_API", line 2070
ORA-06512: at "IFSAPP.FND_EVENT_ACTION_API", line 2075
ORA-06512: at "IFSAPP.FND_EVENT_ACTION_API", line 1934
ORA-06512: at "IFSAPP.FND_EVENT_ACTION_API", line 1954
ORA-06512: at "IFSAPP.EVENT_SYS", line 199
ORA-06512: at "IFSAPP.SHOP_ORDER_DATE_MODIFY_EVU", line 13
ORA-04088: error during execution of trigger 'IFSAPP.SHOP_ORDER_DATE_MODIFY_EVU'
ORA-06512: at line 16)
   at Ifs.Fnd.AccessProvider.FndConnection.ParseErrorHeader(FndBuffer buffer, FndManualDecisionCollection decisions)
   at Ifs.Fnd.AccessProvider.FndConnection.UnMarshalResponseHeader(Stream responseStream, FndManualDecisionCollection decisions)
   at Ifs.Fnd.AccessProvider.FndConnection.HandleHttpSuccessResult(HttpWebResponse result, FndManualDecisionCollection decisions, String operation, FndBodyType responseBodyType, Object responseBody)
   at Ifs.Fnd.AccessProvider.FndConnection.InvokeInternal(Object requestBody, Object responseBody, String intface, String operation, FndRequestContext requestContext, FndManualDecisionCollection decisions, Boolean forcedSync)
   --- End of inner exception stack trace ---
   at Ifs.Fnd.AccessProvider.FndConnection.InvokeInternal(String intface, String operation, Object requestBody, Object responseBody, FndRequestContext requestContext, Boolean forcedSync)
   at Ifs.Fnd.AccessProvider.PLSQL.FndPLSQLCommandCollection.Invoke()
   at Ifs.Fnd.AccessProvider.PLSQL.FndPLSQLCommand.ExecuteNonQuery()
   at Ifs.Fnd.AccessProvider.PLSQL.FndPLSQLSelectCommandReader.Read(Boolean prepare)
   at Ifs.Fnd.Data.ADONetProvider.FndAPCommand.ExecuteDbDataReader(CommandBehavior behavior)

 

Is ti because I am in TEST environment and some setup probably in Object Connections or Something is missing ?

Userlevel 4
Badge +7

 

Userlevel 4
Badge +7

 

This is the error I get when i try to change dates and save the record.

Userlevel 6
Badge +7

Hi @amrflynn ,

 

Did you select the TABLE name from LOV. Is it added properly? SHOP_ORD_TAB?

Also, you may execute below select statement from the database.

 

SELECT * FROM SHOP_ORD_TAB;

 

Does the above return an error?

Userlevel 6
Badge +13

Would Subscription work?