Importance of split by value function options
In split by value function, we have Each value, value changed and emply value options. What are the functions of these options? ( I know split by value function will generate a field in the target, under a different target node, for every value of that in the source sturcture.). Please help me with the answer.
Regards,
Suresh.
Hi,
SplitByValue() is the counterpart to removeContexts(): Instead of deleting a context, you can insert a context change in the source value queue. You then receive this element for each inserted context change instead of a top node element. However, for this to be possible, the top node source field must be assigned a top node target field and minOccurs must be >0. A maximum of minOccurs top node target fields can be inserted here.
You can insert a context change in the queue after each value, after each change to the value, or after each tag without a value.
Refer this link for more details:
http://help.sap.com/saphelp_nw04/helpdata/en/21/3bb8c495125e4eb5969f0377885fe0/content.htm
Regards,
Nithiyanandam
Similar Messages
-
How do i test split by value functionality in mesage mapping with multiple
how do i test split by value functionality in mesage mapping with multiple values ?
regards,
venkatrepeat your source node. in mapping editor you can view queues by right clicking to mapped element.. selecting Display Queues option.. this will show u your values .
You can also select this Display Queue option for splitByValue option
for example
source--->splitByValue>target
Try viewing your queues to each this step... for splitByValue in display Queue you will see context inserted(grey colour) accodingly -
Document splitting & new GL function
Dear All,
I need document for document splitting & new GL function. It is urgent.
My email ID is [email protected]
Please help.
Thanks
GovHi
ARCHITECTURE OF THE NEW GENERAL LEDGER
With releases of SAP enterprise resource planning (ERP)
software up to and including SAP R/3 and SAP R/3 Enterprise
software, companies would handle general-ledger accounting
by using different SAP applications. Depending on specific
company or industry requirements, or local accounting principles,
you had to implement application components or functions
that sometimes had their own user interfaces. For example,
you might use special-purpose ledger software to meet
certain reporting requirements such as having totals in additional
table fields. In addition, SAP profit-center accounting
software resided in a separate application. Software for both the
special-purpose ledger and profit-center accounting offered
certain functions that were not automatically reconciled
with functions in the general-ledger accounting software.
Consequently, closing activities involved additional reconciliation
effort.
The new general ledger in mySAP ERP 2005 covers all these
functions and requirements, but retains the familiar accounting
interface with its variety of services, such as currency
translation and continues to provide functions that support
postings. Upstream software for sales and distribution and
materials management works with the new general ledger in
exactly the same way as before. Familiar and well-tested tables
BSEG, document table; BSIS, open items for new general-ledger
accounts; and BSAS, cleared items for general-ledger accounts
are still part of the solution and form the database for many
standard reports and customer-specific reports.
Users familiar with SAP R/3 will find a similar interface for the
new general ledger. New general-ledger functions for financial
allocation or statistical key figures, for example, share the same
interface design as functions for controlling.
The new general ledger offers the following technical
advantages:
The introduction and portrayal of business models now
occurs within a single solution. This design avoids any need
for a separate cost-of-sales ledger, special-purpose ledger,
reconciliation ledger, or profit-center ledger.
Users need to become familiar only with the interface and
functions of one application. Users already familiar with SAP
R/3 require little, if any, training.
Data is stored only once in the system (in a single totals table)
eliminating data redundancy.
No need for additional reconciliation activities during closing.
It is now easier to make adjustments to business-specific
requirements (such as the inclusion of customer fields as part
of flexible reporting).
DOCUMENT SPLITTING
Document splitting is an appropriate tool for determining
missing account assignments according to cause in common
accounting processes in SAP software (invoices, payments, or
clearing). For each financial-account document, document
splitting applies account-assignment information to nonassigned
accounts according to assignment rules set in the
customizing area. Take the example of a vendor invoice. You
can assign profit centers to expense accounts manually, derive
the assignment automatically, or make the assignment using a
substitute cost center. Document splitting places these profit
centers in the payables accounts of the invoice document.
This function can help you create balance sheets for entities
that extend beyond the scope of the company code. Typical
examples include balance sheets at the segment or profitcenter
level or balance sheets based on company-specific or
industry-specific entities.
There are also mechanisms to determine all account assignments
outside of document splitting in the delivering component
itself. This determination would include postings from SAP
human capital management or materials management software.
The document-splitting function is based on the following
model. Accounting documents contain accounts with assignments,
such as revenues or expenses. Such accounts provide
dependent accounts (accounts payables, accounts receivables,
and taxes, for example) with account assignments based on
context (such as invoice or payment). The model is processoriented:
account assignments from original processes are
projected into the subsequent processes, thereby enabling
account assignments according to cause in the subsequent
processes. Document-splitting information is built at two
technical points: document creation and the accounting
interface.
Document Splitting at Document Creation
A typical example of this instance is the clearing transaction
during which cash discount and realized exchange rate differences
are split according to source. (That is, according to the
proportions of the account assignments in the expense or
revenue lines of the original document, such as an invoice.)
What is special here is the specific reference to the original
transaction or line item. Controlling functions in the software
are updated accordingly and reconciled with the general-ledger
accounting functions. Another example of item-related document
splitting is foreign-currency valuation of open items. This
function transfers exchange-rate differences to the controlling
software.
Its important to note that the balance-valuation function
has no reference to items or transactions. Here, the dimensionspecific
balance of the account (such as the balance for each
segment) is used as the basic value.
Document Splitting at the Accounting Interface
The software limits itself to splitting general-ledger assignments,
which does not involve any transfer to controlling functions.
From a technical standpoint, this process has two variants.
The first variant is the account-assignment projection, which
results from customized settings. Account assignments are
projected from the base rows to the target rows. To minimize
the effort required for implementation, mySAP ERP provides
a number of preconfigured methods. You can activate only
one method per client. With method 12, the solution delivers
settings that support most standard processes (such as invoice,
payment, or payment on account).
The second variant is inheritance by subsequent processes
of business transactions, such as the clearing of vendor and
customer invoices. With this variant, the solution transfers the
original account assignments of the invoice to the clearing
lines. This variant is a fixed feature in the program and cannot
be altered. After the clearing transaction, the original item
(such as the payables or receivables line) and the clearing item
for the respective account assignment are balanced to zero.
Assign Points
Z -
Split Message value in Multi-Mapping
Hello everybody,
I got the following problem with 1:n Mapping
My Source Structure is
<root>
.<element_list> // 1:1
..<element> // 1:unbounded
...<value>
...</value>
..</element>
.</element_list>
</root>
Sample for source structure:
<root>
.<element_list>
..<element>
...<value><b>WILLIAM</b>
...</value>
..</element>
..<element>
...<value><b>RICHARD</b>
...</value>
.</element_list>
</root>
I want to split by multi-mapping!
The target structure looks similar as source target structure (just <element_list> is missing)!
So my structure looks in target:
<Messages>
.<Messages1>
..<element>
...<value>
...</value>
..</element>
.<Messages2>
..<element>
...<value>
...</value>
..</element>
For splitting the <value> tag is responsible:
Every RICHARD should be mapped to <Messages1>
Every WILLIAM should be mapped to <Messages2>
--> so I use the if-function (I dont want to use the SORT function!)
But this seems not to work.
Any suggestions?
Regards Mario
nullHi Vijaya
annotation:
I need different messages!
So in the tab >messages< of massage mapping
Target Message: The message type must occur in row 1 & 2
Like in thread: /people/sudharshan.aravamudan/blog/2005/12/01/illustration-of-multi-mapping-and-message-split-using-bpm-in-sap-exchange-infrastructure
Here: First screen shot under >Message Mapping<
Did you do this?
Regards Mario
Message was edited by:
Mario Müller -
Hi Experts,
I am learing about Split By Value and Context in Mapping Node Functions,
What is Split By Value ?
What is Context ?
Can anyone give some light on this topic WITH REAL TIME EXAMPLE.
Regards,
Study SAPHi,
What is Split By Value ?
-->
suppose you have an XML Like
code<root>
<node>1</node>
<node>2</node>
</root>[/code]
split by value(node) returns:
code<root>
<node>1</node>
</root>
<root>
<node>2</node>
</root>[/code]
Instead remove context does the opposite.
What is Context ?
-->
refer
http://help.sap.com/saphelp_nw2004s/helpdata/en/d6/e44fcf98baa24a9686a7643a33f26f/content.htm
/people/prasadbabu.nemalikanti3/blog/2006/09/20/receiver-determination-based-on-the-payload-of-input-dataextended-xpathcontext-object
Here is a scenario where context objects were used for BPM
Technical Context Object in ccBPM
Get the details here:
http://help.sap.com/saphelp_nw04/helpdata/en/d6/e44fcf98baa24a9686a7643a33f26f/frameset.htm
Technical Context Objects :
http://help.sap.com/saphelp_nw04/helpdata/en/d6/e44fcf98baa24a9686a7643a33f26f/frameset.htm
A list of the Technical Context Objects names can be found here:
http://help.sap.com/saphelp_nw04/helpdata/en/6e/ff0bf75772457b863ef5d99bc92404/content.htm
Thanks
Swarup -
Split By Value and Collapse context
Please give me the business requirement in your project that leads to work on split by value and collapse context?
I read so many documents but i am still confusing with above mentioned node functions?Hi praveen,
Check these links
http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
Message Mapping Simplified - Part I
/people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
New functions in the Graphical Mapping Tool XI 3.0 SP13
http://help.sap.com/saphelp_nw04/helpdata/en/ef/df564b6aa24fc9ab0d685460747de5/frameset.htm
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/b9af5e71-0701-0010-d0b8-f612fb6593dd
regards
srinivas -
How Can I Split Multi-Valued Attributes in Syndicator Map?
Is the option to split multi-values only available for fields and not on attributes that are also multi-valued?
How Can I Split Multi-Valued Attributes in Syndicator Map?
Currently this feature are not in MDM you can split this value by using any middleware software for e.g. PI
Is the option to split multi-values only available for fields and not on attributes that are also multi-valued?
Correct, Multi-values option only available for field not for attributes
Thanks,
Jignesh Patel -
Hello all,
I'm trying to set up an account on my Thunderbird and I'm having a weird problem. I can receive emails on it fine but I cannot send any emails. Whenever I try to send any emails I get the error message "Syntactically invalid EHLO argument(s)".
This email address that I'm trying to add as an account on Thunderbird works perfectly fine in my Gmail Android app on my phone. The difference in the Outgoing SMTP settings are that on my (working) gmail app the Security Type = NONE and the "Require signin" box is CHECKED, whereas in Thunderbird I can set my Outgoing SMTP Security Type setting to = NONE but I do not have the option to "Require signin". All of the options that are available do not work.
Is there any solution?
Thank you!
Best, NickHi Toad-Hall, thanks for offering to help. Here's the text below. Please let me know if you think this could be a Thunderbird issue, or more likely with my host...
Best,
Nick
Application Basics
Name: Thunderbird
Version: 31.6.0
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
Profile Folder: Show in Finder
Application Build ID: 20150330093429
Enabled Plugins: about:plugins
Build Configuration: about:buildconfig
Memory Use: about:memory
Mail and News Accounts
account1:
INCOMING: account1, , (imap) hnht-6bph.accessdomain.com:143, plain, passwordCleartext
OUTGOING: hnht-6bph.accessdomain.com:587, plain, passwordCleartext, true
account2:
INCOMING: account2, , (none) Local Folders, plain, passwordCleartext
account3:
INCOMING: account3, , (imap) hp87.hostpapa.com:993, SSL, passwordCleartext
OUTGOING: hp87.hostpapa.com:465, SSL, passwordCleartext, true
account5:
INCOMING: account5, , (imap) imap.googlemail.com:993, SSL, passwordCleartext
OUTGOING: smtp.googlemail.com:465, SSL, passwordCleartext, true
account6:
INCOMING: account6, , (im) prpl-gtalk, plain, 0
Crash Reports
Extensions
gContactSync, 2.0.4, true, [email protected]
Lightning, 3.3.3, true, {e2fda1a4-762b-4020-b5ad-a41df1933103}
Manually sort folders, 1.1, true, [email protected]
Provider for Google Calendar, 1.0.4, true, {a62ef8ec-5fdc-40c2-873c-223b8a6925cc}
S3.Google Translator, 4.02, true, s3google@translator
Mark Read On Reply and Reply-All, 2.1, false, [email protected]
Important Modified Preferences
Name: Value
accessibility.typeaheadfind.flashBar: 0
browser.cache.disk.capacity: 358400
browser.cache.disk.smart_size_cached_value: 358400
browser.cache.disk.smart_size.first_run: false
browser.cache.disk.smart_size.use_old_max: false
extensions.lastAppVersion: 31.6.0
font.internaluseonly.changed: true
font.name.monospace.el: Consolas
font.name.monospace.tr: Consolas
font.name.monospace.x-baltic: Consolas
font.name.monospace.x-central-euro: Consolas
font.name.monospace.x-cyrillic: Consolas
font.name.monospace.x-unicode: Consolas
font.name.monospace.x-western: Consolas
font.name.sans-serif.el: Calibri
font.name.sans-serif.tr: Calibri
font.name.sans-serif.x-baltic: Calibri
font.name.sans-serif.x-central-euro: Calibri
font.name.sans-serif.x-cyrillic: Calibri
font.name.sans-serif.x-unicode: Calibri
font.name.sans-serif.x-western: Calibri
font.name.serif.el: Cambria
font.name.serif.tr: Cambria
font.name.serif.x-baltic: Cambria
font.name.serif.x-central-euro: Cambria
font.name.serif.x-cyrillic: Cambria
font.name.serif.x-unicode: Cambria
font.name.serif.x-western: Cambria
font.size.fixed.el: 14
font.size.fixed.tr: 14
font.size.fixed.x-baltic: 14
font.size.fixed.x-central-euro: 14
font.size.fixed.x-cyrillic: 14
font.size.fixed.x-unicode: 14
font.size.fixed.x-western: 14
font.size.variable.el: 17
font.size.variable.tr: 17
font.size.variable.x-baltic: 17
font.size.variable.x-central-euro: 17
font.size.variable.x-cyrillic: 17
font.size.variable.x-unicode: 17
font.size.variable.x-western: 17
gfx.direct3d.last_used_feature_level_idx: 1
mail.openMessageBehavior.version: 1
mail.spotlight.firstRunDone: true
mail.winsearch.firstRunDone: true
mailnews.database.global.datastore.id: ecc20ba1-ea64-2846-9e03-19fcbea83da
mailnews.database.global.views.conversation.columns: {"threadCol":{"visible":true,"ordinal":"1"},"flaggedCol":{"visible":true,"ordinal":"3"},"attachmentCol":{"visible":false…
mailnews.database.global.views.global.columns: {"threadCol":{"visible":true,"ordinal":"1"},"flaggedCol":{"visible":true,"ordinal":"3"},"attachmentCol":{"visible":false…
network.cookie.prefsMigrated: true
places.database.lastMaintenance: 1429703534
places.history.expiration.transient_current_max_pages: 104858
plugin.importedState: true
Graphics
Vendor ID: 0x10de
Device ID: 0x 863
WebGL Renderer: false
GPU Accelerated Windows: 2/2 OpenGL
AzureCanvasBackend: quartz
AzureSkiaAccelerated: 0
AzureFallbackCanvasBackend: none
AzureContentBackend: quartz
JavaScript
Incremental GC: 1
Accessibility
Activated: 0
Prevent Accessibility: 0
Library Versions
Expected minimum version
Version in use
NSPR
4.10.6
4.10.6
NSS
3.16.2.3 Basic ECC
3.16.2.3 Basic ECC
NSS Util
3.16.2.3
3.16.2.3
NSS SSL
3.16.2.3 Basic ECC
3.16.2.3 Basic ECC
NSS S/MIME
3.16.2.3 Basic ECC
3.16.2.3 Basic ECC -
Problem with dg4msql and table-valued functions
Have configured dg4msql to connect from my oracle db to ms sql server.
Am able to do simple SELECTs from ms sql tables like:
select * from "sys"."procedures"@dg4msql;
or
select * from "dbo"."SomeTable"@dg4msql;
But am unable to do a SELECT from a table-valued function:
select * from "dbo"."GetData"@dg4msql('param1value');
or
select * from "dbo"."GetData"('param1value')@dg4msql;
In both cases I get:
ORA-00933: SQL command not properly ended
It does not like the parameters portion of the query ("('param1value')")
initdg4msql.ora:
HS_FDS_CONNECT_INFO=[svr1]//mydb
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_PROC_IS_FUNCT=TRUE
HS_FDS_RESULTSET_SUPPORT=TRUE
Have tried the other set of params:
HS_FDS_PROC_IS_FUNCT=FALSE
HS_FDS_RESULTSET_SUPPORT=TRUE
Same story. After changing the init*** file have bounced both Listeners (DB and Gateway), reconnected, and re-run the query.
Have I missed something?
Any help is greatly appreciated!Sorry, but for me it looks you did not get the problem.
Oracle® Database Gateway for SQL Server User's Guide,:
11g Release 2 (11.2)
Part Number E12069-02
*2 SQL Server Gateway Features and Restriction*
Result Sets and Stored Procedures
The Oracle Database Gateway for SQL Server provides support for stored procedures which return result sets.
By default, all stored procedures and functions do not return a result set to the user. To enable result sets, set the HS_FDS_RESULTSET_SUPPORT parameter value to TRUE.
PL/SQL Program Fetching from Result Sets in Sequential Mode
-- Execute procedure
out_arg := null;
refcurproc@MSQL('Hello World', out_arg, rc1);
Somewhere in this forum I've seen a message that the syntax "SELECT ... FROM sp@db(param1, param2)" works.
Anyway, even with the PL/SQL block the error message is the same - ORA-00933 "SQL command not properly ended"
and the cursor (* in SQL*PLUS) is put just at the first bracket.
Edited by: user636213 on Aug 10, 2012 5:17 AM -
Invalid value in OPTION field of value table for IN itab operator. operato
Hi,
I am working on SELECT-OPTIONS to accept single and multiple values for company code. I am using CREATE_RANGE_TABLE and ADD_SELECTION_FIELD and all is good but I was prompted with error "Invalid value in OPTION field of value table for IN itab operator. operator" when I enter 2 single value.
SIGN OPTION LOW HIGH
| |CN01| |
| |SG02| |
However, below combinations working good for me and I don't get the above error.
SIGN OPTION LOW HIGH
I |BT |CN01|CN02|
| |SG02| |
SIGN OPTION LOW HIGH
| |SG02| |
I am using below coding.
DATA:
ls_cmp_restrictions TYPE if_wd_select_options=>t_complex_restrictions,
ls_rsoptions TYPE rsoptions.
CLEAR ls_rsoptions.
ls_rsoptions-bt = abap_true.
ls_rsoptions-cp = abap_false.
ls_rsoptions-eq = abap_true. " for enable only single value*
ls_rsoptions-ge = abap_false.
ls_rsoptions-gt = abap_false.
ls_rsoptions-le = abap_false.
ls_rsoptions-lt = abap_false.
ls_rsoptions-nb = abap_false.
ls_rsoptions-ne = abap_false.
ls_rsoptions-np = abap_false.
ls_cmp_restrictions-m_exclude = ls_rsoptions.
CLEAR ls_rsoptions .
ls_rsoptions-bt = abap_true.
ls_rsoptions-cp = abap_false.
ls_rsoptions-eq = abap_true. " for enable only single value*
ls_rsoptions-ge = abap_false.
ls_rsoptions-gt = abap_false.
ls_rsoptions-le = abap_false.
ls_rsoptions-lt = abap_false.
ls_rsoptions-nb = abap_false.
ls_rsoptions-ne = abap_false.
ls_rsoptions-np = abap_false.
ls_cmp_restrictions-m_include = ls_rsoptions.
* Create a reference to range table
lr_field = wd_this->m_helper->create_range_table( `BUKRS` ).
* Add the select-option to the group
wd_this->m_helper->add_selection_field(
i_id = `BUKRS`
i_value_help_structure = 'P0001'
i_value_help_structure_field = 'BUKRS'
it_result = lr_field
i_no_intervals = abap_true
i_no_extension = abap_false
i_complex_restrictions = ls_cmp_restrictions
i_use_complex_restriction = abap_true ).
FREE lr_field.
Edited by: Girish Nabar on Jul 22, 2011 12:35 PMHi Girish,
People are answering not for points, just to share the knowledge.
And I think the way of structure is wrong. i think we cannot pass two single values in your way. am not sure about .
low means it will accept single value. for one record in sign structure.
wait for other replys.
Regards
Srinivas -
Mapping Issue: How to split the value of Lineitem
Hi All,
I have issue in Mapping .XML-> BAPI Scenario
1 line item has the one 50% Cost Centre , another 50% Cost centre data
2 line item has only 100% WBS elemnt
WBS elemnt mapping :
If A |EQUALS (Text) | WBS_ELEMNT |If without else| B(WBS value) |REmoveContexs| SplitByValue| WBS_ELEMNT(BAPI field)
But this supress second line item : WBS_ELEMNT data and uploads into1.Item .Hence PO is not getting created in SAP.
Could you please giv me a logic to actaually split the value into 2 seperate so that respective data of each line item are split properly .
Thank you ,
VaraHi I think you need an udf for this:
int total = Integer.parseInt(value[0]);
result.addValue(Integer.toString(a/2));
result.addValue(Integer.toString(a/2));
and after it you can add a splitbyvalue -
In which condition Table valued function should prefer over SP except use in joins?
Hi,
My requirements is:
Entity framework needs to call DB object (TVF or SP), which will provide some data to them and they'll work on it at app level.
DB object would be simple, one result set, it will join 5 tables and get around 30 columns to them. it would be parameterized query so can't use view.
Now my question is what DB object would be best to use, table valued function or store procedure. and why?
I google on it, I find some interesting links (example http://technet.microsoft.com/en-us/library/ms187650(v=sql.105).aspx)
they mentioned conditions to convert SP to TVF but not mentioned the reason, why I should convert?
Both have same cache plans strategy. SP has so many advantages over TVF, but I don't see any technical advantage of TVF over SP except it can be use in joins or so.
so In short my question is, why I can't use SP in all cases, why I would use TVF?, and which Table valued or multi-valued?
would appreciate your time and response.According to a few recent blogs you should be able to use TVP or stored procedure with EF 6.1.2 with ease. In our application we haven't switched yet to 6.1.2 (we're using 6.0.0) and there is no support for stored procedures or functions so we use StoreQuery.
I am wondering if you can share your experience of using EF with SP or TVP (and document the steps).
I am also wondering as how exactly it's working behind the scenes and where the full query is taking place. Say, in our case we may want to add some extra conditions after retrieving a set using, say, SP. Would the final query execute on the client (e.g.
SP executed on the server, result returned and then extra conditions executed on the "client")?
As I said, right now we're using StoreQuery which means that our extra conditions must be case - sensitive as opposed to SQL Server case insensitive. So, if someone already tried that scenario and can tell me how exactly it works, I would appreciate it.
Another question about EF - I defined a property as
[Column(TypeName = "varchar")]
public string PhoneNumber { get; set; } // area code + phone
and in the LINQ query as
var query = db.Accounts.Select(a => new AccountsList
AcctName = a.AcctName,
Contact = a.Contact,
FullName = a.FullName,
AreaCode = a.AreaCode,
Phone = a.Phone,
Hidden = a.Hide,
Hide = a.Hide,
PhoneNumber = a.AreaCode.Trim() + a.Phone.Trim(),
AcctTypeId = a.AcctTypeId
and I see that it's translated into CASE AreaCode IS NULL THEN N'' ELSE RTRIM(LTRIM(areaCode)) END + ...
My question is - why EF does it if there is no mentioning at all in the class as how NULL is supposed to be treated. Is it a bug?
For every expert, there is an equal and opposite expert. - Becker's Law
My blog
My TechNet articles -
JDBC Adapter Call a Table-Valued Function
Hello to all,
we're using the JDBC adapter to access a MS SQL-Server 2008.
I have to call a "Table-Valued Function" via JDBC.
Has anybody done this?
I've tried to call it like a stored procedure with the following:
<ns1:LGBuchungSAP_REQ xmlns:ns1="http://xyz.de/pi/mav/kantine">
<fLGBuchungenSAP>
<Tablename action="execute">
<table>dbo.fLGBuchungenSAP</table>
</Tablename>
</fLGBuchungenSAP>
</ns1:LGBuchungSAP_REQ>
but I get following error:
com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser:
Error when executing statement for table/stored proc. 'dbo.fLGBuchungenSAP' (structure 'fLGBuchungenSAP'): com.microsoft.sqlserver.jdbc.SQLServerException:
Fehler bei der Anforderung für 'fLGBuchungenSAP' (Prozedur), weil 'fLGBuchungenSAP' ein Tabellenwertfunktion-Objekt ist.
Calling with a select-statement also fails:
<ns1:LGBuchungSAP_REQ xmlns:ns1="http://xyz.de/pi/mav/kantine">
<STATEMENT_NAME>
<Tablename action="SELECT">
<table>dbo.fLGBuchungenSAP('20101101 00:00:00', '20110101 00:00:00')</table>
</Tablename>
</STATEMENT_NAME>
</ns1:LGBuchungSAP_REQ>
with error:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Eingangs-Message -->
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1></SAP:P1>
<SAP:P2></SAP:P2>
<SAP:P3></SAP:P3>
<SAP:P4></SAP:P4>
<SAP:AdditionalText>com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'dbo.fLGBuchungenSAP('20101101 00:00:00', '20110101 00:00:00')' (structure 'STATEMENT_NAME'): java.lang.IndexOutOfBoundsException: Index: 4, Size: 4</SAP:AdditionalText>
<SAP:Stack></SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
Please advice
Regards
ChristianHello to all,
I solved the problem.
You have to call it this way:
<ns1:LGBuchungSAP_REQ xmlns:ns1="http://xyzde/pi/mav/kantine">
<STATEMENT>
<LGBuchungSAP action="SQL_DML">
<access>select * from dbo.fLGBuchungenSAP('$DatumVon$', '$DatumBis$')</access>
<key>
<DatumVon>20101101 00:00:00</DatumVon>
<DatumBis>20110101 00:00:00</DatumBis>
</key>
</LGBuchungSAP>
</STATEMENT>
</ns1:LGBuchungSAP_REQ>
But I get the next error: "A result set was generated for the update task"
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1></SAP:P1>
<SAP:P2></SAP:P2>
<SAP:P3></SAP:P3>
<SAP:P4></SAP:P4>
<SAP:AdditionalText>com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'LGBuchungSAP' (structure 'STATEMENT'): com.microsoft.sqlserver.jdbc.SQLServerException: Es wurde ein Resultset für den Aktualisierungsvorgang generiert.</SAP:AdditionalText>
<SAP:Stack></SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error> -
Hello friends,
I have the following scenario where i get data from SQL table via JDBC and map it to an IDOC.
<Row>
<Header Ind>1111<Hearer Ind>
<Det1>5<Det1>
<Det1>5<Det1>
<Det1>5<Det1>
<Row>
<Header Ind>2222<Hearer Ind>
<Det1>6<Det1>
<Det1>6<Det1>
<Det1>6<Det1>
The above is the source Payload. In the Mapping I have taken the Header Ind node and done the below for all the target segments.
Header Ind --- Split by Value [value change] -
collapse context --- IDOC
Header Ind --- Split by Value [value change] -
collapse context --- EDIDC40
Header Ind --- Split by Value [value change] -
collapse context --- EIBPACH08
Header Ind --- Split by Value [value change] -
collapse context --- EIBACGL08
My question is where do I map the <row> node too ?? I am still getting an error below
Cannot create target element /ACC_GL_POSTING01/IDOC[2]/EDI_DC40. Values missing in queue context. Target XSD requires a value for this element, but the target-field mapping does not create one. Check whether the XML instance is valid for the source XSD, and whether the target-field mapping fulfils the requirement of the target XSD
Thank you,
TeresaIf i map <row context to destination IDOC then split by value and collapse context is not required?? I would like to genereate a new IDOC every time the header Ind changes.
Thanks,
Teresa -
How to declare variable in table valued function
hello.
i have the following code to define a inline table valued function
but the use of cmn.ReshteId('Lf_WL') as a function in where clause is not good performance.
Alter function lf.fn_WholeLifeBn_GetForm(@ViewKind tinyint, @CurrentLocation int) returns table
as
return
select B.*
from lf.fn_LifeBN_GetForm(@ViewKind, @CurrentLocation) B
where Reshte = cmn.ReshteId('Lf_WL')
for better performance following code is good:
declare @Reshte smallint
set @Reshte = cmn.ReshteId('Lf_TS')
select B.*
from lf.fn_LifeBN_GetForm(@ViewKind, @CurrentLocation) B
where Reshte = @Reshte
but can not use it as the first code block in inline function.
please help for define a good function.What do you think about Multi-Statement Table-Valued UDFs?
create function Func(@Var int)
returns @T table(ColName int)
as
begin
insert into @T(ColName) values (@Var)
return
end
select * from Func(10)
select * from Func(20)
---or
alter function Func()
returns @T table(ColName int)
as
begin
declare @Var int
set @Var = 10
insert into @T(ColName) values (@Var)
return
end
select * from Func()
Best Regards,Uri Dimant SQL Server MVP,
http://sqlblog.com/blogs/uri_dimant/
MS SQL optimization: MS SQL Development and Optimization
MS SQL Consulting:
Large scale of database and data cleansing
Remote DBA Services:
Improves MS SQL Database Performance
SQL Server Integration Services:
Business Intelligence
Maybe you are looking for
-
If someone has wiped my ipad and changed passwords on icloud how do i get my data back
if someone has wiped my ipad and changed passwords on icloud how do i get my data back? please could someone help me out thanks
-
Verify webaccess application version
We had a pci compliance issue that was fixed with 703hp4, which we have the webaccess application running on a SLES10sp2 server with the agent on netware 6.5sp6. After the hp4 installation, the PCI scan still reports the vulnerability exists, so I ne
-
I wonder if any of you have seen this one, which I encountered yesterday, along with a fix for it. Here's the scenario: I've been recording screencasts for a current project using "Automatic Recording," demonstration mode, no narration, no panning. A
-
Continuing to "index spotlight search" in Lion?
how do i help my MBP finish indexing the spotlight search now that i've upgraded to Lion?
-
Securing Non-Coldfusion Content in Distributed Mode
We are in the process of setting up our sites with CFMX7 Enterprise in distributed mode. IIS on one server and our CF instances on another. We have this working fine. In our current setup, IIS is set to allow anonymous access to allow access to the p