JAXB 2.0, XMLAdaptor and HashMap for customized mapping
I have a requirement to implement a custom mapping of HashMap in JAXB. Basically I want to be able to use a HashMap structure to represent key/value pairs instead of the default List. So I need to be able to store (marshal) a HashMap structure into XML, and then be able to read (unmarshal) the XML back into a HashMap.
I've discovered the XMLAdaptor class and I think this is the way to do it:
https://jaxb.dev.java.net/nonav/jaxb20-pr/api/javax/xml/bind/annotation/adapters/XmlAdapter.html
However, my knowledge of generics and annotations in 5.0, and XML schemas are somewhat elementary - so I'm a bit stuck.
If someone has a complete working example of the HashMap example they show in the API doc linked above, I would greatly appreciate it if you could post it here.
Otherwise, perhaps you could answer a couple of questions for me.
1) I tried using the XSD directly from the example in the API doc (Step 2).
<xs:complexType name="myHashMapType">
<xs:sequence>
<xs:element name="entry" type="myHashMapEntryType"
maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="myHashMapEntryType">
<xs:simpleContent>
<xs:extension base="xs:string"/>
</xs:simpleContent>
<xs:attribute name="key" type="xs:int"/>
</xs:complexType>xjc complains when I generate the classes and says that the 'xs:attribute name=key' shouldn't be there. If I move it up into the 'xs:extension' node it works. But then I get strange XML when I create some key/value pairs and marshal them. The first XML node looks okay, but the rest of the List items start with '<xsi:entry ...', e.g.
<entry xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="myHashMapEntryType" key="key0">value0</entry>
<xsi:entry xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="myHashMapEntryType" key="key1">value1</xsi:entry>
...So my first question is, what is the proper XSD to represent a HashMap with XML like the following:
<hashmap>
<entry key="id123">this is a value</entry>
<entry key="id312">this is another value</entry>
</hashmap>2) Now for the HashMap part of it; you need to create a class that extends XmlAdaptor<HashMap, MyHashMapType> with marshal and unmarshal methods. This is where I get a little fuzzy on exactly what these methods need to do. The example in the API doc doesn't show this.
3) And finally; once I have all this in place, how do I actually marshal and unmarshal, presumably using the value types that I created instead of the value types that were auto generated by xjc? At least I think that's what I'm supposed to do.
Thanks.
Download the javaeetutorial5
Under this path is a working example.
\examples\jaxb\j2s-xmlAdapter-field
I've tried following the bad example you sited, and even with a great deal of work it still fails to work.
I think the example will help clarify how marshall and unmarshall methods are to be implemented. What would be really nice is for whoever wrote the example you sited to finish the job instead of expecting the reader of their documentation to figure it out.
I fail to understand why JaxB has failed to directly support a collection so prevalent in its use as a HashMap. I also don�t know why they can�t support a Map interface that by default maps to a HashMap.
Best of luck to you,
Robert
Similar Messages
-
I have seen some websites discussing about the performance of ArrayLists, LinkedLists, and Hashmaps:
http://forum.java.sun.com/thread.jspa?threadID=442985
http://java.sun.com/developer/JDCTechTips/2002/tt0910.html
http://www.javaspecialists.co.za/archive/Issue111.html
http://joust.kano.net/weblog/archives/000066.html
If I understand it right an ArrayList in general is faster for accessing a particular element in the collection and I can't find some pro's of using a LinkedList.
My question is: If I only use a large collection with more than 1 million elements for iterating from begin to end (i.e. for loop), is it faster to use a linked list or a custom linked list instead of an arraylist (or hashmap)? Since you can iterate "directly" through a (custom) linked list, which is not possible with a arraylist?
Edited by: 9squared on Nov 23, 2007 1:48 PMThanks for the help, I wrote some code and tested it
import java.util.ArrayList;
import java.util.List;
import java.util.LinkedList;
public class TestTemp {
public static void main(String[] args) {
List<Node> a = new ArrayList<Node>();
Node b = new Node("a");
String[] c = new String[10000000];
Node temp = b;
for (int i = 0; i < 10000000; i++)
a.add(new Node("a"));
temp.next = new Node("b");
temp = temp.next;
c[i] = "c";
long tstart;
tstart = System.currentTimeMillis();
for (int i = 0; i < 10000000; i++)
c[i] = "cc";
if (i%200000 == 0)
System.out.println("Array " + i + ": " + (System.currentTimeMillis()-tstart));
tstart = System.currentTimeMillis();
temp = b;
for (int i = 0; i < 10000000; i++)
temp.next.text = "bb";
temp = temp.next;
if (i%200000 == 0)
System.out.println("LinkedList " + i + ": " + (System.currentTimeMillis()-tstart));
tstart = System.currentTimeMillis();
for (int i = 0; i < 10000000; i++)
a.get(i).text = "aa";
if (i%200000 == 0)
System.out.println("ArrayList " + i + ": " + (System.currentTimeMillis()-tstart));
public class Node {
public String text;
public Node next;
public Node(String text)
this.text = text;
}Here are some results in milliseconds, and indeed just iterating doesn't take very long
Elements Linked Arraylist Array
200000 0 0 1
400000 5 13 5
600000 9 22 9
800000 14 32 12
1000000 20 42 16
1200000 25 52 19
1400000 31 63 23
1600000 37 72 26
1800000 42 82 30
2000000 47 92 33
2200000 51 101 37
2400000 56 112 40
2600000 60 123 44
2800000 65 134 47
3000000 69 143 51
3200000 73 152 55
3400000 78 162 59
3600000 84 175 63
3800000 103 185 67
4000000 108 195 70
4200000 113 207 74
4400000 117 216 78
4600000 122 225 81
4800000 127 237 85
5000000 131 247 88
5200000 136 256 92
5400000 142 266 97
5600000 147 275 101
5800000 153 286 107
6000000 159 298 113
6200000 162 307 117
6400000 167 317 121
6600000 171 326 125
6800000 175 335 128
7000000 180 346 132
7200000 184 358 136
7400000 188 368 139
7600000 193 377 143
7800000 197 388 147
8000000 201 397 150
8200000 207 410 154
8400000 212 423 157
8600000 217 432 162
8800000 222 442 167
9000000 227 452 171
9200000 231 462 175
9400000 236 473 178
9600000 242 483 182
9800000 249 495 185
10000000 257 505 189 -
Custom process code and FM for custom IDoc...
Hello Experts,
I created a custom IDoc based from ARTMAS05 IDoc. This is because we only need 3 segments and
the standard idoc(Artmas05) contains so many segments that we need.
Now, will I create a custom process code and FM for this? how do I go about this?
Thank you guys and take care!Hello,
Here are the Steps that we need to be following while creating a Custom Process Code with Custom Function Module. ( Since the Segments to be handled are very Less, I am recommending that you go for a Custom Function Module).
1. Go to SE37 Create a Function Module. Please ensure to Create it with the IMPORT / EXPORT /TABLES parameters exactly in the way that they exist in any Standard SAP Inbound FM (Refer to IDOC_INPUT_ORDERS for example).
2. Once our FM is Ready (Need not be Complete with the Code to go ahead with the Process Code Creation) and Active, the next Step is to Create an Entry in the Transaction Code BD51 where we will register the Function Module.
3. Next, we'll have to go to T-Code WE57 where we'll have to make an entry for the Function Module with the IDoc Type & Message Type.
4. Finally, go to WE42 and Create a New Process Code and assign the Function Module and the Message Type.
NOTE 1 : The Process Code is, as we know, Client Dependent. So, once you create a Process Code, we need to have it migrated to the Testing Environment to Start & Carry Out Testing.
NOTE 2: If Step 2 & 3 are missing, then we'll not be able to assign the Function Module in WE42 while Creating Process Code.
Hope it was helpful.
Thanks and Regards,
Venkata Phani Prasad K -
Use of OCO and OCDL for Customer Account and Party Merge
Requirement: Duplicate parties, previously identified by legacy, are being sent as messages which are polled in and processed upon by custom code.
Once these duplicate parties are identified by Legacy, the requirement is to merge them both and then go on merging the accounts within the master party (only).
We have considered using DQM capabilities for this. Off-Late a suggestion of using ORACLE customers Online and ORACLE Customers Data Librarian if applicable has come up. After reading the respective documentation we’ve found that both of the modules needs to be configured to use the DQM capability and are licensed products(Xerox owns the licenses for both).
Can anyone please throw light on the overall functionality and business scenarios for the use of OCDL.Hi Thiruchudar,
There are some setup you need to do. If you're not technically well grounded, i would suggest you get an ABAPer to do this for you. Basically, the following are what you need to do:
1. Create the Partner Profile for your Customer using transaction code <b>WE20</b>. Click on the create icon and enter Partner type <b>KU</b> (Customer) and enter the Customer Number.
2. Next, add an Outbound Message Type <b>FINSTA</b> by clicking on the <b>green +</b> icon under the outbound parameters. Complete all the other mandatory fields as appropriate. Save your Entries.
3. Test your outbound partner profile for your customer by running the customer statement again using transaction code <b>F.27</b>.
Your output control would have been created with the medium EDI.
4. Use transaction code <b>WE05</b> to display the iDocs that would have been created.
<u><b>Note:</b></u> You still have to set up the communication between your system and that of your Customer to allow for EDI transmission.
I hope the above helps.
Do not forget to award the points please.
Thanks and Regards,
Jacob -
PI Integration between SAP ERP system and Cloud for Customer
Hi,
We have set up integration between Cloud for Customer tenant and our SAP ERP system via PI.
For performing initial load, when we try to activate change pointers for Message types in the SALE transaction, we don't find the MATMAS_CFS and DEBMAS_CFS in the ERP system(IDES ECC 6.0 EhP6).
CODERINT 600(SP1 &2) are installed and BC set COD_BYD_ERP_INT is activated in the system.
Could anyone let us know what are we missing here, so that we can get the message types.
Also we tried using Message type MATMAS for sending a message from ERP to Cloud for Customer. In PI message monitoring, the status shows as 'Processed successfully', however we do not find the message in Business Communication Monitoring in the Cloud system. neither do we see the Business Object created for that Material master.
Please let me know how to debug such a scenario.
Regards,
SangeetaHi Vatsav,
Yes the outbound works now with the following urls with channel id as param. With the 'BusinessSystem used as the sender(COD) business system ID. Thanks for your help and the document
Customer Replication
/XISOAPAdapter/MessageServlet?channel=:<business system>:COD_SOAP_BusinessPartnerReplication_Send
Customer Address Replication
/XISOAPAdapter/MessageServlet?channel=:<business system>:COD_SOAP_BusinessPartnerAddress_Send
Customer Contact Replication
/XISOAPAdapter/MessageServlet?channel=:<business system>:COD_SOAP_BusinessParterContact_Send
Regards,
Sangeeta -
How do i create a platform to allow uploads of videos and photos for custom slideshows?
How do I create a platform that will allow for uploads of videos and photos to allow the creation of custom slideshows?
I built a System Message HTA for my previous employer that was used in a computer lab setting. It was a nice way to inform the users about things happening in the lab, as well as a nice way to ensure people knew who to contact if there were problems.
The HTA lived on a network UNC and each computer had a shortcut to the HTA in their All Users Startup folder (C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup). While you could push the shortcut with GPP, likes the others recommended, that's
about all you should do with Group Policy. This was neat - I had the HTA run custom .cmd files (in a hidden window) when it loaded (the Windows_onLoad subroutine) and then when it was closed by the user (button press that called an ExitProgram subroutine).
This allow me to capture who was logged on, how long the HTA was open, and what computer they were using. In a computer lab such as that one, it was nice to have additional way to track who was using what computer and when. Good luck and let us know if there
are any more questions - I really enjoyed that project.
Edit: Added additional info. -
Oracle RAC and implications for custom developed applications
Hi,
I'm wondering if there are limitations to custom developed applications when implementing a RAC solution. I need some advice though I can find no documentation on this topic. Of course the standard database features will work correctly but what about, let's say, OS-specific PL/SQL code? Any advice is welcome.
ThanksJos,
What do you mean by OS-specific PL/SQL code?
The main thing here is you need to make sure it works correctly on all instances, or you must bind it to an instance by submitting it as a job.
This implies the output needs to end up on a cluster file system, or you need to set up NFS links.
Please feel free to contact me internally, if you are the Jos Baan I know.
Sybrand Bakker
Senior Oracle DBA
(the real one) -
ABAP program and FB for value mapping replication
Hi,
we are using a 40B system and I want to use the value mapping replication in XI. To refill the data into the XI database I must write an ABAP and a function module to transfer the data out of R/3 into XI (via RFC). Has anybody an example how the program (and the FB) must look like? i.e I want to read table mvke and extract the materialnumber and the prodhierarchy.
Thanks and best regards
ArnoldHi Arnold,
First you need a table type with a structure like follows:
operation
groupid
context
identifier
agency
scheme
(corresponding to the Interface ValueMappingReplication)
All used data elements should have type string or charXX
for example: operation - char10, groupid - char32, rest - char120
Next you create a function module with attribute 'remote-enabled module'.
The import parameter is your new table structure.
Next you create an ABAP program. Here an example:
report z_value_mapping .
tables mvke.
data:
p_value_mapping type zvalue_mapping,
p_value_mapping_table type zvalue_mapping_table.
p_value_mapping-operation = 'Insert'.
p_value_mapping-context = 'http://xi.com/Material'.
select * from mvke where matnr between '170' and '501'.
check not mvke-prodh is initial.
* Create a value mapping group to join two entries.
* use a unique 32 digit number.
concatenate '00000000000000' mvke-prodh into p_value_mapping-groupid.
translate p_value_mapping-groupid using ' 0'.
* Store the mapping source as first entry to the group
p_value_mapping-identifier = mvke-matnr.
p_value_mapping-agency = 'SenderAgency'.
p_value_mapping-scheme = 'MATNR'.
append p_value_mapping to p_value_mapping_table.
* Store the mapping target as second entry to the group
p_value_mapping-identifier = mvke-prodh.
p_value_mapping-agency = 'ReceiverAgency'.
p_value_mapping-scheme = 'PRODH'.
append p_value_mapping to p_value_mapping_table.
endselect.
* Push data to XI
call function 'Z_VALUE_MAPPING' in background task
destination 'IS_XID'
exporting
value_mapping = p_value_mapping_table.
commit work.
Import the RFC to the Integration Builder, create a mapping between your RFC and the interface ValueMappingReplication.
Check this Blog for additional steps:
/people/sreekanth.babu2/blog/2005/02/23/value-mapping-replication
Choose names for context, agency and scheme which are useful your scenario.
Regards
Stefan -
Cloning For Custom Mappings In DAC
Hi All
Can anyone plz help me about cloning a task in DAC for customized mapping........
With Regards
Venhi
Thanks for the input Remco .....thought of sharing what I have come to know.... Cloning a task is mainly done if there are some customizations done to the existing BI Apps mappings and for this......what you do is create a new copy of the container (R12 complete) and just identify the tasks and overwrite the command for initial and incremental load names and save them....by doing so when you run a dac load it runs the customized version of the mappings rather than the preseeded one........Hope this helps....
With Regards
Ven -
Access af:table values from JavaScript array (for google maps task)
Hi!
I have JSP page with af:table where latitude and longitude for google maps are stored. I am using these tutorial [https://blogs.oracle.com/middleware/entry/integrating_google_maps_with_adf] and I know how to access latitude and longitude from output text (for one point). Now i need to do something similar with loop for all table rows. How can I achieve this?
I have JavaScript code which uses Google Maps API and can display many points on one map. Also I have longitude and latitude data in af:table (bindings), each table row has one point. My task is to take data from af:table and pass it to JavaScript.
May be it is better to use managed bean as you said. Firstly I will access binding data from managed bean. Then I have to pass this data to JavaScript method? Can you suggest some example? I have "Using JavaScript in ADF Faces Rich Client Applications"My table is there :
<af:table value="#{bindings.LocView1.collectionModel}" var="row"
rows="#{bindings.LocView1.rangeSize}"
emptyText="#{bindings.LocView1.viewable ? 'No data to display.' : 'Access Denied.'}"
fetchSize="#{bindings.LocView1.rangeSize}" rowBandingInterval="0"
filterModel="#{bindings.LocView1Query.queryDescriptor}"
queryListener="#{bindings.LocView1Query.processQuery}" filterVisible="true" varStatus="vs"
selectedRowKeys="#{bindings.LocView1.collectionModel.selectedRow}"
selectionListener="#{bindings.LocView1.collectionModel.makeCurrent}" rowSelection="single"
id="t1">
<af:column sortProperty="#{bindings.LocView1.hints.SoffOffCode.name}" filterable="true"
sortable="true" headerText="#{bindings.LocView1.hints.SoffOffCode.label}" id="c1">
<af:outputText value="#{row.SoffOffCode}" clientComponent="true" id="ot1"/>
</af:column>
<af:column sortProperty="#{bindings.LocView1.hints.SoffCode.name}" filterable="true"
sortable="true" headerText="#{bindings.LocView1.hints.SoffCode.label}" id="c2">
<af:outputText value="#{row.SoffCode}" id="ot2"/>
</af:column>
<af:column sortProperty="#{bindings.LocView1.hints.SoffLat.name}" filterable="true"
sortable="true" headerText="#{bindings.LocView1.hints.SoffLat.label}" id="c3">
<af:outputText value="#{row.SoffLat}" clientComponent="true" id="ot3"/>
</af:column>
<af:column clientComponent="true" sortProperty="#{bindings.LocView1.hints.SoffLng.name}" filterable="true"
sortable="true" headerText="#{bindings.LocView1.hints.SoffLng.label}" id="c4">
<af:outputText value="#{row.SoffLng}" clientComponent="true" id="ot4"/>
</af:column>
<af:column sortProperty="#{bindings.LocView1.hints.SoffZoom.name}" filterable="true"
sortable="true" headerText="#{bindings.LocView1.hints.SoffZoom.label}" id="c5">
<af:outputText value="#{row.SoffZoom}" id="ot5"/>
</af:column>
</af:table>
Javascript code:
alert(document.getElementById("t1"));
Result:
[object HTMLDivElement];
And
alert(document.getElementById("t1").innerHTML);
Result:
<div id="t1::ch" style="overflow: hidden; position: relative; width: 366px;" _afrcolcount="5" class="xzg"><table class="xzi" summary="This table contains column headers corresponding to the data body table below" id="t1::ch::t" style="position:relative;table-layout:fixed;width:525px" cellspacing="0"><tbody><tr><th style="padding:0px;padding-left:5px;width:100px;"></th><th style="padding:0px;padding-left:5px;width:100px;"></th><th style="padding:0px;padding-left:5px;width:100px;"></th><th style="padding:0px;padding-left:5px;width:100px;"></th><th style="padding:0px;padding-left:5px;width:100px;"></th></tr><tr><th _d_index="0" _afrfiltercol="true" class="xzr" align="left" nowrap="nowrap"><span id="t1:_afrFltrc1" class="x1u"><input id="t1:_afrFltrc1::content" name="t1:_afrFltrc1" class="x25" type="text"></span></th><th _d_index="1" _afrfiltercol="true" class="xzr" align="left" nowrap="nowrap"><span id="t1:_afrFltrc2" class="x1u"><input id="t1:_afrFltrc2::content" name="t1:_afrFltrc2" class="x25" type="text"></span></th><th _d_index="2" _afrfiltercol="true" class="xzr" align="left" nowrap="nowrap"><span id="t1:_afrFltrc3" class="x1u"><input id="t1:_afrFltrc3::content" name="t1:_afrFltrc3" class="x25" type="text"></span></th><th _d_index="3" _afrfiltercol="true" class="xzr" align="left" nowrap="nowrap"><span id="t1:_afrFltrc4" class="x1u"><input id="t1:_afrFltrc4::content" name="t1:_afrFltrc4" class="x25" type="text"></span></th><th _d_index="4" _afrfiltercol="true" class="xzr" align="left" nowrap="nowrap"><span id="t1:_afrFltrc5" class="x1u"><input id="t1:_afrFltrc5::content" name="t1:_afrFltrc5" class="x25" type="text"></span></th></tr><tr><th id="t1:c1" _d_index="0" _afrleaf="true" _afrroot="true" class="xzj" align="left"><div style="position:relative; float:right"><table id="t1:c1::afrSI" _afrhoverable="true" style="display:none" class="x104" cellpadding="0" cellspacing="0"><tbody><tr><td _afrsortasc="1"><a tabindex="-1" class="xzm" title="Sort Ascending"></a></td><td _afrsortdesc="1"><a tabindex="-1" class="xzn" title="Sort Descending"></a></td></tr></tbody></table></div><div class="x19p">SoffOffCode</div></th><th id="t1:c2" _d_index="1" _afrleaf="true" _afrroot="true" class="xzj" align="left"><div style="position:relative; float:right"><table id="t1:c2::afrSI" _afrhoverable="true" style="display:none" class="x104" cellpadding="0" cellspacing="0"><tbody><tr><td _afrsortasc="1"><a tabindex="-1" class="xzm" title="Sort Ascending"></a></td><td _afrsortdesc="1"><a tabindex="-1" class="xzn" title="Sort Descending"></a></td></tr></tbody></table></div><div class="x19p">SoffCode</div></th><th id="t1:c3" _d_index="2" _afrleaf="true" _afrroot="true" class="xzj" align="left"><div style="position:relative; float:right"><table id="t1:c3::afrSI" _afrhoverable="true" style="display:none" class="x104" cellpadding="0" cellspacing="0"><tbody><tr><td _afrsortasc="1"><a tabindex="-1" class="xzm" title="Sort Ascending"></a></td><td _afrsortdesc="1"><a tabindex="-1" class="xzn" title="Sort Descending"></a></td></tr></tbody></table></div><div class="x19p">SoffLat</div></th><th id="t1:c4" _d_index="3" _afrleaf="true" _afrroot="true" class="xzj" align="left"><div style="position:relative; float:right"><table id="t1:c4::afrSI" _afrhoverable="true" style="display:none" class="x104" cellpadding="0" cellspacing="0"><tbody><tr><td _afrsortasc="1"><a tabindex="-1" class="xzm" title="Sort Ascending"></a></td><td _afrsortdesc="1"><a tabindex="-1" class="xzn" title="Sort Descending"></a></td></tr></tbody></table></div><div class="x19p">SoffLng</div></th><th id="t1:c5" _d_index="4" _afrleaf="true" _afrroot="true" class="xzj" align="left"><div style="position:relative; float:right"><table id="t1:c5::afrSI" _afrhoverable="true" style="display:none" class="x104" cellpadding="0" cellspacing="0"><tbody><tr><td _afrsortasc="1"><a tabindex="-1" class="xzm" title="Sort Ascending"></a></td><td _afrsortdesc="1"><a tabindex="-1" class="xzn" title="Sort Descending"></a></td></tr></tbody></table></div><div class="x19p">SoffZoom</div></th></tr></tbody></table></div><div id="t1::db" class="xz9" style="position: relative; width: 366px; overflow: hidden; height: 521px; z-index: 1;" _afrcolcount="5"><table class="xza x102" style="table-layout:fixed;position:relative;width:525px;" _totalwidth="525" _selstate="{'0':true}" _rowcount="179" _startrow="0" cellspacing="0"><tbody><tr _afrrk="0" class="xzy p_AFSelected"><td style="width:100px;" class="xzv" nowrap="nowrap"><span id="t1:0:ot1">26</span></td><td style="width:100px;" class="xzv" nowrap="nowrap">01</td><td style="width:100px;" class="xzv" nowrap="nowrap"><span id="t1:0:ot3">47.90782714384932</span></td><td style="width:100px;" class="xzv" nowrap="nowrap"><span id="t1:0:ot4">106.88643654861448</span></td><td style="width:100px;" class="xzv" nowrap="nowrap">15</td></tr><tr _afrrk="1" class="xzy"><td class="xzv" nowrap="nowrap"><span id="t1:1:ot1">26</span></td><td class="xzv" nowrap="nowrap">02</td><td class="xzv" nowrap="nowrap"><span id="t1:1:ot3">47.91542113773543</span></td><td class="xzv" nowrap="nowrap"><span id="t1:1:ot4">106.88540658035276</span></td><td class="xzv" nowrap="nowrap">15</td></tr><tr _afrrk="2" class="xzy"><td class="xzv" nowrap="nowrap"><span id="t1:2:ot1">26</span></td><td class="xzv" nowrap="nowrap">03</td><td class="xzv" nowrap="nowrap"><span id="t1:2:ot3">47.90768330745696</span></td><td class="xzv" nowrap="nowrap"><span id="t1:2:ot4">106.89544877090452</span></td><td class="xzv" nowrap="nowrap">15</td></tr><tr _afrrk="3" class="xzy"><td class="xzv" nowrap="nowrap"><span id="t1:3:ot1">26</span></td><td class="xzv" nowrap="nowrap">04</td><td class="xzv" nowrap="nowrap"><span id="t1:3:ot3">47.90716549312801</span></td><td class="xzv" nowrap="nowrap"><span id="t1:3:ot4">106.86879834213255</span></td><td class="xzv" nowrap="nowrap">14</td></tr><tr _afrrk="4" class="xzy"><td class="xzv" nowrap="nowrap"><span id="t1:4:ot1">26</span></td><td class="xzv" nowrap="nowrap">05</td><td class="xzv" nowrap="nowrap"><span id="t1:4:ot3">47.89841940184846</span></td><td class="xzv" nowrap="nowrap"><span id="t1:4:ot4">106.82674130477903</span></td><td class="xzv" nowrap="nowrap">13</td></tr><tr _afrrk="5" class="xzy"><td class="xzv" nowrap="nowrap"><span id="t1:5:ot1">26</span></td><td class="xzv" nowrap="nowrap">06</td><td class="xzv
.etc
Javascript: alert(document.getElementById("t1:121:ot3").innerHTML); this retrieve in value
But only 50 rows in this result. I have many rows. How I can get all??? -
Table for Customer and vendor open balance on a key date
Dear All,
Can anyone please let me know Table for Customer and vendor open balance on a key date. We are developing one customized report.
I have checked with the below table :
Customer-KNC1, KNC3,BSID, BSAD
Vendor-LFC1, LFC3, BSIK, BSAK.
But these are not working properly for all customers and vedors. Also, in open items, there are items with clearing documents.
Plesae let me know, how to go for it.
Please suggest.Hi
Use BSID and BSIK for open items
And pass company code, year and from date and to date range in Posting date selection option
Reg
Vishnu -
How to get the salesprice and condition for a customer / material / date
Hi all,
how can I get the correct price and condition for a customer / material / date ?
I know this is possible using the BAPI_SALESORDER_SIMULATE, but this bapi is using to much ressources on the system.
I'm trying to get the correct price and condition WITHOUT using that BAPI.
Does anyone know how it is possible ? As said before : I have the customer, material and a date.
thanks in advance for your helpHi
You need it because it's possible to have a complex pricing procedure, and you can't do it with a simple select on a table. Think that you can have pricing requirements, formulas (ie: VOFM) and so on in your pricing procedure (tcode V/08).
I hope this helps you
Regards
Eduardo -
Table for Customer and Vendor Special GL Carryforward Balances
Hi,
What is the table to get the customer and vendor special GL carryforward balances?
Thanks in advanceHello,
I have more details to add to the thread.
If you are looking for carry forward balances for customer and vendor subledgers, the tables are:
By month
KNC1- customer (customer master transaction figures) - c/f debit/credit postings and lists by customer, company code and year
LFC1-vendor - (vendor master transaction figures) -c/f debit/credit postings and lists by customer, company code and year
By year
KNC3 (customer master - special G/L transaction figures)- c/f balances by customer, company code and year (lists totals for debit and credit)
LFC3 - (vendor master - special G/L transaction figures)- c/f balances by customer, company code and year (lists totals for debit and credit)
Hope this helps.
KF -
LO Settings (in SBIW) for SD and Inventory before Customizing LO (LBWE)
Hi,
Please let me know the LO Settings(in SBIW) to be maintained in R/3 for SD, Inventory and
Purchasing before Customizing LO (LBWE).
i.e, for :
<u>SD</u>
1. Change statistics currency for each sales organization
2. Assign Update Group
<u>Inventory :</u>
1.Determine Industry Sector
2.Transaction Key Maintenance for SAP BW
3.Stock initialization
4.Plant view
Warehouse View
<u>Purchasing :</u>
1.Determine Industry Sector
2.Transaction Key Maintenance for SAP BW
Note : I am NOT looking for LO steps
Thanks
KishoreHi,
For sales & distribution steps are
1.t-code = sbiw
2. expand "settings for application specific datasource (PI)"
3.expand "Logistics"
4.expand "Settings: Sales & Distribution"
5.click on "IMG-Activity" of " Change statistics currency for each sales organization"
Now you can change according to your requirements.
Hope this helps.
Cheers.
Sukanya -
How to clear the open items and parked items for customer
Hi Experts,
I need to clear the open items and parked items for customer.
So any one could let me know the transaction code and procedure for clearing the items for customer.
Best regards,
Kesava balaji.Hello,
Parked items will have NO RELEVANCE, unless you post it.
You CANNOT clear parked items.
You can clear the posted items using F.13 or F-32
Regards,
Ravi
Maybe you are looking for
-
Officejet Pro 8600 Plus says ink is empty when it is not
Each time I have to change one cartridge on the Officejet Pro 8600 Plus I check how full the other cartridges are. Typically the yellow one is 75% full and the other colours about 50%. So I buy and install one cartridge. It doesn't matter if it is
-
Required help with date format
Hi All, I am calling a webservice from plsql, for this I am using UTL_DBWS package. I want to insert the format of date as 'YYYY-MM-DD' only. I used to_char(sysdate, 'YYYY-MM-DD') , but it is throwing error. Please suggest any solution. Thanks and Re
-
Adressing multiple copies of Movieclips with the same instance name
Is it possible to iterate through MV copies with the same instance name? It would be very useful for my project.
-
Hierarchial query returns ex-employees
I have query that was developed from the similar queries I've found on various sites. It display the hierarchy starting from our board of directors in a descending manner. The problem is that the query is pulling our "Ex-employees" which are identifi
-
String to Object, then get the Class
hi I'm new in Java! what I want to do is to convert a String and convert it to a Object then get the classname of the Object. for example: ExampleClass classObject = new ExampleClass(); String exampleString = "classObject"; I want to convert the stri