cancel
Showing results for 
Search instead for 
Did you mean: 

udf

Former Member
0 Kudos
65

hi...fri's

when we r creating UDF's ,we have to see the value,context,queue.when we will select value ,when we will select context and queue

regards.

Pasi

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Pasi,

Here is the difference:

You can use the following user-defined functions:

● Simple Functions (Cache = Value)

This function type can process individual field input values for each function call. Therefore, simple functions expect strings as input values and return a string.

● Advanced Functions (Cache = Context or Cache = Queue)

This function type can process multiple field input values for each function call. Before you call the function, you can either import all the field values of a context or the whole queue for the field in an array. For more information, see Advanced User-Defined Functions.

Note that when dealing with large messages, saving the entire queue in the cache requires a lot of memory at runtime. In such cases, it is therefore better to work with contexts.

Advanced user-defined functions can access more than just individual field values. Instead, you can import a complete context or an entire queue for a field as an array before your function is called. This enables you, for example, to perform calculations on all field values of a context as well as to divide up the contexts themselves further by inserting a context change.

Advanced user-defined functions can import either just one context into the input arrays, or complete queues. Make your selection by selecting or deselecting the Save Entire Queue in Cache checkbox in the function editor.

Working with Contexts or Queues

Information in Cache

Implications

Context

Advanced functions that only import one context do not have an identifiable context change. You can of course insert a context change into the results list.

Queue

Since one or more entire queues are imported in this case, this option is more memory-intensive and is not suitable for very large messages.

The input arrays do not contain the context change at the start and end of the context (or of the queue). These context changes are implicitly always available and cannot be identified or deleted by the user-defined function.

Refer the below help:

http://help.sap.com/saphelp_nw04/helpdata/en/d9/718e40496f6f1de10000000a1550b0/frameset.htm

Thnx

Chirag

Former Member
0 Kudos

Hi...Chirag,

i am using pi 7.0 sp10, where we will find the simple and advanced functions... i click on that create function it was not showing simple and advanced....

regards,

Pasi

Former Member
0 Kudos

Hi,

You will not get the two functions like simple and advance.

When you click on UDF function it will give you the popup where you will give the name of the UDF and it will show you three options of value,context and queue.

Bys selecting value it will used as simple function and selecting Context and queue it will used as a Advance UDF.

Thnx

Chirag

Answers (3)

Answers (3)

prabhu_s2
Active Contributor
0 Kudos

UDF can be categorized as simple or advanced based on th cache type selceted. if u use VALUE then it is simple udf else if queue or context then it is advanced udf

prabhu_s2
Active Contributor
0 Kudos

u use value when u have simple udf like concatenating a string etc. when u wanna to parse a queue u go4 context or queue i.e. for complex udf's (entire queue needs to be processed for certain requirements)

Former Member
0 Kudos

Hi,

Working with Contexts or Queues

http://help.sap.com/saphelp_nw04/helpdata/en/f8/2857cbc374da48993c8eb7d3c8c87a/content.htm

value ---> is a value for the input parameter. It comes one by one.

Queue -


> it is an entire instance of XML message. That means, all the data will come in one shot.

Context -


> There will be a context change in the coming XML data.

Refer the following document which explains the differences b/w the various options with examples

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9202d890-0201-0010-1588-adb...

http://help.sap.com/saphelp_nw04/helpdata/en/d2/58cd3b11571962e10000000a11402f/frameset.htm

There are 2 types of UDF - Simple and Advanced.

Simple UDFs uses Value, wherein we can manipulate only one value (input is one String). Therefore a single string is expected as input and the output would also b a single string.

Advanced UDFs uses Context or Queue, where you manipulate many values (input is an array of Strings).

Refer this link:

http://help.sap.com/saphelp_nw04/helpdata/en/40/7b8e40496f6f1de10000000a1550b0/content.htm

Regards,

Sarvesh