Issue with internal JMS queue

Hi,
We discovered following issue with Netweaver version:
SAP EP 6.0 ON WEB AS 6.20
J2EE version:
Cluster-Version: 6.40   PatchLevel 106831.313
Build-On:Thursday, October 26, 2006 18:56 GMT
Perforce-Server:
Project-Dir:JKernel/630_VAL_REL
JKernel Change-List:106831
Build machine:SAPInternal
Build java version:1.3.1_18-b01 Sun Microsystems Inc.
SP-Number: 19
Source-Dir: D:\make\engine\630_VAL_REL\builds\JKernel\630_VAL_REL\archive\dbg
During sending messages into internal JMS queue we sent messages bigger than 1MB. After that, JMS queue was not able to process any other messages even if it was smaller than 1MB. Same issue occured if there was more smaller messages sent in short time (e.g. in 2 seconds). We don't have any significant error message in any log.
See information thath we have found in dump stack trace file (ix.log):
"SAPEngine_Application_Thread[impl:3]_25" prio=5 tid=0x0000000101f5ebf0 nid=0x37 in Object.wait() [fffffffe0bdfd000..fffffffe0bdff8b0]
at java.lang.Object.wait(Native Method)
- waiting on <0xfffffffe2ebfa1b8> (a java.lang.Object)
at java.lang.Object.wait(Object.java:429)
at com.sap.jms.client.memory.MemoryManager.allocate(MemoryManager.java:132)
- locked <0xfffffffe2ebfa1b8> (a java.lang.Object)
at com.sap.jms.client.memory.MemoryManager.allocateMemoryForBigMessage(MemoryManager.java:92)
- locked <0xfffffffe2ebfa1b8> (a java.lang.Object)
at com.sap.jms.client.session.Session.processFinalMessage(Session.java:1732)
at com.sap.jms.client.session.Session.run(Session.java:675)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
which indicates to us that initializing of memory is locked.
Please let us know:
-if there is any log which indicates this behaviour without making thread dump
-which limits must be fulfilled to process messages without this error
-how to unblock this lock for processing correct messages without restarting NW - or if there is any predefined timout which kill this locked session and disable uncorrect message
-how to manage records in bc_jmsqueue table for removing big messages from queue if there were loaded already
-how to stop application which caused this problem. If we try to stop it through standard stop_App, application stays in Stopping mode forever.
This problem occured in test environment and also in productive environment using the same SAP NW. Now - we do not have any work around solution..... therefore periodically we need to restart SAP NW....
Thx for any suggestions.....

Hi,
We are also facing the same problem of restarting the SAP NW each time, if you have found the solution, please let me know.
Thx in advance.
Ramanath

Similar Messages

  • Issue with MDB (jms Queue) in weblogic 8.1

              Hi all...
              I'm facing a strange kind of problem with MDB using weblogic 8.1.
              The code worked perfectly in weblogic 7.0.
              This is wht i'm trying to achieve..
              i'm having a MDB which implements a onMessage().
              I'm publishing message thru a standalone client. Publishing works fine..
              The problem is onMessage(javax.jms.Message msg) is never been called :-(.
              when i monitor it shows that messages are recieved..
              Am is missing something that is really important..
              here is my code
              package com.csxwt.zodiac.service.domain;
              import javax.ejb.*;
              import javax.jms.*;
              import javax.naming.*;
              import java.io.Serializable;
              //import com.csxwt.zodiac.service.domain.TestObject;
              public class MDBTestBean implements MessageDrivenBean, MessageListener {
              MessageDrivenContext messageDrivenContext;
              public void ejbCreate() throws CreateException {
              System.out.println("into the ejb create");
              /**@todo Complete this method*/
              public void ejbRemove() {
              /**@todo Complete this method*/
              public void onMessage(javax.jms.Message msg) {
              System.out.println("into the onMessage method 1 ");
              ObjectMessage objectMsg = null;
              String strObject = "Test";
              try
              System.out.println("into the onMessage method 2 ");
              if (msg instanceof ObjectMessage)
              System.out.println("into the onMessage method 3");
              objectMsg = (ObjectMessage) msg;
              Serializable serializableObj = objectMsg.getObject();
              String test = serializableObj.toString();
              System.out.println("value of the message sent " + test);
              TestObject test1 = null;
              if(serializableObj instanceof TestObject )
              test1 = (TestObject) serializableObj;
              System.out.println("after getting the test value ");
              System.out.println("getting the test object valuye " + test1.getName());
              else
              return;
              catch (Exception e)
              System.out.println("Message Bean:unexpected Exception thrown ");
              e.printStackTrace();
              public void setMessageDrivenContext(MessageDrivenContext messageDrivenContext)
              System.out.println("into MDB context");
              this.messageDrivenContext = messageDrivenContext;
              here are the 2 xml files....
              <ejb-jar>
              <enterprise-beans>
              <message-driven>
              <display-name>MDBTest</display-name>
              <ejb-name>MDBTest</ejb-name>
              <ejb-class>com.csxwt.zodiac.service.domain.MDBTestBean</ejb-class>
              <transaction-type>Container</transaction-type>
              <message-selector>GATE_LANE</message-selector>
              <message-driven-destination>
              <destination-type>javax.jms.Queue</destination-type>
              </message-driven-destination>
              </message-driven>
              </enterprise-beans>
              <assembly-descriptor>
              <container-transaction>
              <method>
              <ejb-name>MDBTest</ejb-name>
              <method-name>*</method-name>
              </method>
              <trans-attribute>Required</trans-attribute>
              </container-transaction>
              </assembly-descriptor>
              </ejb-jar>
              <weblogic-ejb-jar>
              <weblogic-enterprise-bean>
              <ejb-name>MDBTest</ejb-name>
              <message-driven-descriptor>
              <pool>
              <max-beans-in-free-pool>200</max-beans-in-free-pool>
              <initial-beans-in-free-pool>20</initial-beans-in-free-pool>
              </pool>
              <destination-jndi-name>zodiac.jms.queue.HardWareOutMessageQueue</destination-jndi-name>
              </message-driven-descriptor>
              </weblogic-enterprise-bean>
              </weblogic-ejb-jar>
              Am i missing something somewhere?????
              any help in this is highly appreciated..
              thanks in advance.
              r
              sasi
              

    Check your log for error and warning messages. If there
              are some, they should help trace down the problem. If there
              aren't any, try confirm that your MDB is deploying in
              the first place.
              The MDB below is a Q MDB, but you write below that your client
              is a "publisher". "Publisher" implies a topic producer, not
              a queue producer, and topic producer can't publish to queues.
              Tom
              T. Sasii Dharma wrote:
              > Hi all...
              >
              > I'm facing a strange kind of problem with MDB using weblogic 8.1.
              > The code worked perfectly in weblogic 7.0.
              > This is wht i'm trying to achieve..
              > i'm having a MDB which implements a onMessage().
              > I'm publishing message thru a standalone client. Publishing works fine..
              > The problem is onMessage(javax.jms.Message msg) is never been called :-(.
              > when i monitor it shows that messages are recieved..
              > Am is missing something that is really important..
              >
              > here is my code
              >
              > package com.csxwt.zodiac.service.domain;
              >
              > import javax.ejb.*;
              > import javax.jms.*;
              > import javax.naming.*;
              > import java.io.Serializable;
              > //import com.csxwt.zodiac.service.domain.TestObject;
              >
              > public class MDBTestBean implements MessageDrivenBean, MessageListener {
              > MessageDrivenContext messageDrivenContext;
              > public void ejbCreate() throws CreateException {
              > System.out.println("into the ejb create");
              > /**@todo Complete this method*/
              > }
              > public void ejbRemove() {
              > /**@todo Complete this method*/
              > }
              > public void onMessage(javax.jms.Message msg) {
              > System.out.println("into the onMessage method 1 ");
              > ObjectMessage objectMsg = null;
              > String strObject = "Test";
              > try
              > {
              > System.out.println("into the onMessage method 2 ");
              > if (msg instanceof ObjectMessage)
              > {
              > System.out.println("into the onMessage method 3");
              > objectMsg = (ObjectMessage) msg;
              > Serializable serializableObj = objectMsg.getObject();
              > String test = serializableObj.toString();
              > System.out.println("value of the message sent " + test);
              > TestObject test1 = null;
              > if(serializableObj instanceof TestObject )
              > {
              > test1 = (TestObject) serializableObj;
              > System.out.println("after getting the test value ");
              > System.out.println("getting the test object valuye " + test1.getName());
              > }
              >
              > }
              > else
              > {
              > return;
              > }
              >
              > }
              > catch (Exception e)
              > {
              > System.out.println("Message Bean:unexpected Exception thrown ");
              > e.printStackTrace();
              > }
              >
              > }
              > public void setMessageDrivenContext(MessageDrivenContext messageDrivenContext)
              > {
              > System.out.println("into MDB context");
              >
              > this.messageDrivenContext = messageDrivenContext;
              > }
              > }
              >
              >
              > here are the 2 xml files....
              >
              > <ejb-jar>
              > <enterprise-beans>
              > <message-driven>
              > <display-name>MDBTest</display-name>
              > <ejb-name>MDBTest</ejb-name>
              > <ejb-class>com.csxwt.zodiac.service.domain.MDBTestBean</ejb-class>
              > <transaction-type>Container</transaction-type>
              > <message-selector>GATE_LANE</message-selector>
              > <message-driven-destination>
              > <destination-type>javax.jms.Queue</destination-type>
              > </message-driven-destination>
              > </message-driven>
              > </enterprise-beans>
              > <assembly-descriptor>
              > <container-transaction>
              > <method>
              > <ejb-name>MDBTest</ejb-name>
              > <method-name>*</method-name>
              > </method>
              > <trans-attribute>Required</trans-attribute>
              > </container-transaction>
              > </assembly-descriptor>
              > </ejb-jar>
              >
              > <weblogic-ejb-jar>
              > <weblogic-enterprise-bean>
              > <ejb-name>MDBTest</ejb-name>
              > <message-driven-descriptor>
              > <pool>
              > <max-beans-in-free-pool>200</max-beans-in-free-pool>
              > <initial-beans-in-free-pool>20</initial-beans-in-free-pool>
              > </pool>
              > <destination-jndi-name>zodiac.jms.queue.HardWareOutMessageQueue</destination-jndi-name>
              > </message-driven-descriptor>
              > </weblogic-enterprise-bean>
              > </weblogic-ejb-jar>
              >
              > Am i missing something somewhere?????
              > any help in this is highly appreciated..
              >
              > thanks in advance.
              >
              > r
              > sasi
              

  • Freegoods issue with internal order CO

    Dear Experts,
    I am facing a Problem with free goods issue,
    When I am doing sales order VA01 I am entering internal order number, once I complete the process flow it is crediting stock account (24240000) and debiting the COGS FG (50014000) account.
    When I am doing sales order VA01 without internal order once I complete the process flow it is crediting Stock account (24240000)  and Debiting the Free goods expenses account(60014010) (as per business process it is correct)
    With internal order also it should post to free goods expenses account.
    Kindly help me on this I am not able to trace.

    Hi
    Please check item category TANN settings.Also check in VTLA copy control  there is a feild "Update Cost", tick the feild.
    Please go through the links which may help you
    PGI accounting
    Regards
    Srinath

  • How can  SAP XI JMS Queue communicate with external JMS Queue

    Dear All ,
    we are Implementing SAP XI . Sender business system is splitting a file into small files and keeping them into JMS queues we want SAP XI JMS queue should communicate directly with the sender JMS queue (which is an external JMS queue) without any Adapter ,programming efforts and Middleware.
    Can you please tell me is it possible?

    I dont think it is possible directly without adapter

  • Problems and Issues with Internal Order Transactions

    Hello I have a couple of problems with Internal Order Transactons.
    Its strange really, when I simulate in the development server. I do the following process:
    Assign Asset with IO -> Create PR with account assignment to an Asset -> Create PO with Reference to PR -> Create GR.
    Once this occurs, the transaction seems to reflect in particular reports such as List: Order by Cost Element, List: Budget/Actual/Commitments, etc.
    But when another user does a similar process in PRD, it doesnt seem to reflect in these reports.
    Also while, I cant seem to pass the GR if the Internal Order has not been released. The user was able to create a GR whose IO has not been released yet.
    These problems are quite striking to me. Does anyone know the possible causes of the situations at hand? Any feedback will be most helpful.
    Thank you all and good day.

    Ok never mind, seems I found the culprit (though the reason gives more questions than answers)! Thanks anyways

  • Jms/xbusResources-jms.xml - how OSB creates internal JMS queue?

    Hi there,
    In a project I have 3 proxy services, 1 dispatch request to the other 2 routing directly to them and with no Business services.
    One of these 2 is an HTTP, the other is a JMS. On this last I actually make a publish action along the pipeline and looks it doesn't require the JNDI name in the action itself, simply the proxy name or reference.
    Now in my local box it works, in JIT it doesn't. The only difference I can see is on the jmsResource tab:
    my local
    local-sso-audit-1142838076     Queue     local-sso-audit     local-sso-audit-1142838076     wlsbJMSServer
    local-sso-auditRequest33430637     Queue     local-sso-auditRequest     local-sso-auditRequest33430637     wlsbJMSServer
    local-sso-mail26453307     Queue     local-sso-mail     local-sso-mail26453307     wlsbJMSServer
    and in JIT none of the above is present.
    I guess these are internal queue created by OSB on deployment, but why should have not created in JIT??
    Thanks in advance

    Hi Alesandro,
    Do you get any exception back?
    Did you set QualityOfService=Exactly-Once in the Routing options inside your Publish action? This will make the exception visible.
    Regards,
    Fabio.

  • Pdf issue with internal links in Safari

    Hello,
    I am creating a web site that has 80 or so pdf's available to download. They each contain a series of 20 or so speeches. To make navigation easier I have created a new page in Open Office that is an index to each pdf, with it's page number as an internal link to the correct page. This is what I did:
    1. Open each pdf in Preview and inserted a blank page (page 2), and saved the pdf. This gives me the correct page numbering for when I put in the real index.
    2. Noting the start of each speech  page number, I created an idex page in Open Office.
    3. I saved the index as a pdf.
    4. I opened the origional pdf and the new pdf index.
    5. I deleted the blank page and then dragged the new index page across and made sure it was the same page position - page 2.
    6. I then used the link too in Previewl to drag a link box over the page number in the index and then chose the correct page number to set as the target via Previews inspector.
    7. Saved the pdf and opened and tested - everything worked fine.
    The problem comes when I upload the pdfs and test the site with safari. When I open the pdf in the default safari window, the links are all out by one page i.e. if i click on page number 30 from the index, I go to the next page - page 31. If I hover the mouse at the bottom of the page and bring up the open in Preview icon and do so, the index links to the pages work fine???? I have tried with Explorer under bootcamp and the default window that opens for the pdf shows the same issue - it's out by one page.
    Thanks in advance
    nige.

    Hi...
    Try this...
    Go to   /Library/Internet Plug-Ins
    Move the Adobe PDF Browser plugin (or just PDF Browser plugin) to the Trash.
    See if that makes a difference.

  • Issue with Internal Table

    Hi All,
    I have defined an internal table 'with occurs 0'.
    While debuggining, i am observing that only 50,000 lines are getting populated in that internal table.
    How to increase the capacity of the internal table, so that it can hold more number of lines?
    Regards
    Pavan

    I would like to explaing you all about this issue.
    I have defined an internal table as follows...
    data:  IT_CATSDB       TYPE BAPICATS2 OCCURS 0 WITH HEADER LINE.
    I have used a BAPI called "BAPI_CATIMESHEETRECORD_GETLIST" which will retirieve the Timesheet details of all employees within a given date range.
    Now, the number of entries that we got from this BAPI are stored in the internal table it_catsdb.
    I have observed that this internal table is holding max of 50k lines.
    If i check the database table (CATSDB) for the same conditions in SE11, i am able to get around 1L lines.
    Hence my report is showing incorrect output.
    Kindly help me out with some logic, so that this internal table can hold as much as data possible without any restriction.....
    Regards
    Pavan

  • SO to PR issue with Internal order copying

    I have one issue : The SO has Internal order and Profit center information. When a PR is created for the SO it only copies PC but not IO for some SO types.
    Our client uses a Z transaction which releases the requirement + automatically updates the PR information in SO schedule lines. I feel that the requirements release is done using the standard user exit but updation of PR information in sales order is developed in the program.
    Is there any standard customization at SO type or some other place where we define which account assignments get copied from SO to PR ?

    Dear Kuppam,
    For your first issue, you have to manually push in the Internal order value in Debit memo  i.e. enhance the BADI.
    What I understand for your second issue is, PSG is populated in the Debit memo request which is a real cost object and hence system is creating PSG document when accounting and controlling document is created. If the posting is to happen to internal order then that should appear in debit memo request and then only you will see the values in internal order.Some settings are required in CRM which will resolve your second issue.
    To resolve this,please refer the SAP note 1310727 - Account assignment for CRM documents with sales items
    Hope this will resolve your issues.
    regards,
    makrand

  • Issue with internal order postings

    Hi Experts,
    I have created one service order in CRM and created a debit memo. In this i have two issue, please help me if know the solution.
    1. Once i created the Debit memo, it was replicated in to ECC and line item wise one internal order should be created and displyed in account assignemnt tab, but it is not showing any values in the internal order field, showing as blank. when i checked in the T.Code IAOMC with CRM service order there showing internal order which was generated for the line item.
    can you please tell me which settings need to be done for displaying in sales order account assignment filed.
    2. In that Internal order the sales order values are not flowing even we done billing and accounting. In the accounting document one controling document is created which is posted the values to CO-PA.
    Can you please tell me the settings need to be done to overcome this errors.
    CAHANDU

    Dear Kuppam,
    For your first issue, you have to manually push in the Internal order value in Debit memo  i.e. enhance the BADI.
    What I understand for your second issue is, PSG is populated in the Debit memo request which is a real cost object and hence system is creating PSG document when accounting and controlling document is created. If the posting is to happen to internal order then that should appear in debit memo request and then only you will see the values in internal order.Some settings are required in CRM which will resolve your second issue.
    To resolve this,please refer the SAP note 1310727 - Account assignment for CRM documents with sales items
    Hope this will resolve your issues.
    regards,
    makrand

  • Exchange upgrade causing issues with internal wiri...

    Recently our exchange was upgraded to accommodate bt infinity and at the same time our broadband started playing up. we called bt and I spent 1.5 hours checking and re checking equipment with the call center. Tests were done with the hub at either end of the internal wiring. All the tests were still showing faults even with hub connected to the test socket. They asked me to leave connected for 24 hours while they monitor the line. They promised to call me back which they did not. I called them again the following day to be told I should have left the hub in the test socket which I was not told the previous day. I then had to wait 48 hours while they monitored the line this time in the test socket. All the tests still showed the fault was still there so an engineer called out.
    The hub was still in the test socket when engineer arrived and the first thing he did was hook up his test equipment to the test socket and he stated there and then that there was nothing wrong with the line but it had been throttled down. 2 minute phone call and 10 minutes later broadband was back and working perfectly at the test socket. He checked the internal extention and the faults were being thrown up by an extension that has been in place for 10 years +. He stated to me that the new equipment installed in the exchange was more advanced and did more line checks so, although this equipment has been used for Internet with BT for 10 years it is no longer adequate.
    All of this I find understandable but the whole way that BT handled this from day 1 of my first call has been appalling. BT openly admitted that the original engineer calls were handled badly and we were credited £9 for the lack of services we had for overly long time. However we are now, 2 months after this, faced with nearly £130 charge for the engineer visit which, looking back with the info I have now, was completely unnecessary. Had the engineers on the phone bothered to reset the line while hub was in the test socket when they were allegedly monitoring it for 48 hours they could have told me there were no faults on their equipment up to the socket and I would have sorted out the internal wiring myself. Even now I can find mention on the Internet of old wiring causing issues but no specific posts to do with exchange upgrades potentially meaning that you need to upgrade internal wiring or mention by the BT call center itself on any of the calls I made to them. All I was told was that everything up to the main box is BT and everything after that mine but since we have made no changes to the wiring we did not think it was applicable until the engineer arrived and told us what he told us then. Yesterday I called Bt again around 9am to dispute the charge. I was informed that because the fault was with our equipment the charge stands. I explained all of the above and I had my case put to the review team. I was told I would get a call back within 4 hours which I did but the phone rang 3 times and as I answered they hung up. I then got a text saying they had tried to call and asked for me to call back which I did to be told that his computer wasn't working. He took my details and said someone would call me back which no one did. I chased again to be told that someone would definitely call me that day. No one did. I chased again today to be told the decision still stands. He has put to final review and promised a call back within 5 days. Until this is resolved direct debit is cancelled. To the letter of the contract we have with BT this is our charge to pay I know that but this could have been avoided if the information was out there on the net, if the original checks done over the phone were done correctly or if I had been told this directly by Bt themselves prior to the engineer being called out which is why I am posting this here so hopefully no one else falls into this trap.

    You're right I'm not connected to the BT infinity cabinet. But the BT Infinity cabinets all still route back through the exchange that I am connected to -
    http://www.ichilton.co.uk/blog/phones/faster-broadband-bt-infinity-fibre-to-the-cabinet-coming-to-in...
    Quote :
    What this modem does is connects using VDSL from your home to the VDSL cabinet using the existing copper wires, on to the DSLAM, back to the exchange (over the fibre) and on to BT’s core network.
    Your phone line is then still terminated in the original cabinet for telephony (using the cross connect between the old and new cabinets I mentioned above) and back to the exchange over the original multi pair copper cable as it always has done.
    http://www.robertos.me.uk/html/fttx.html
    Quote:
    FTTC involves BT Openreach installing a new street cabinet near to the existing one and linking the two. They run optical fibre from the exchange to the new cabinet then link individual lines from the old cabinet to the new one and back to get VDSL2 onto the copper connection to the premises. The PSTN phone connection continues to operate over the pre-existing cable from the old cabinet to the exchange.  It does not get put onto the fibre connection.
    In other words the linkage is Exchange >> Old >> DSLAM in New >> Old >> Premises. (Traffic in both directions of course!)
    Presumably the equipment in the exchange cannot stay as it is and is upgraded in the process?

  • E-Recruiting 6.04. Issue with internal candidates e-mail.

    Hi,
    We are on E-Rec 604 with seperated standlone e-rec system.
    We did the initial transfer of employees with ALE and we though that all were ok, but now we realized that there are some internal candidates that no have e-mail adress in e-recruiting.
    We have been investigating and those employees have filled the infotype 105 subtype 0010 in Hr system. In E-Recruting system the user created by ALE has the e-mail too, but in transaction BP only a few of them have filled the field e-mail in the block of adress independent comunication. So only this few internal candidates have e-mail in the portal of E-Recruiting.
    We are looking for any differences of those employees in HR system but we can´t find anything.
    Someone could help me with the reason of this problem, please?.
    And someone know if there is any way for repared this in the e-recruiting system.
    Best Regards,
    Esther

    Hi,
    I just want point out the HCM ALE processes. Firstly independently of connected to eRecruiting or not.
    The message type HRMD_B is containing the infotypes belonging to the software component SAP_BASIS.
    The message type HRMD_ABA is containing the infotypes of the message type HRMD_B and the infotypes belonging to the software component SAP_ABA.
    The message types HRMD_B and HRMD_ABA must be used to distribute HCM data into non-ERP based landscapes.
    The message type HRMD_A is containing the infotypes of the message type HRMD_B and the infotypes belonging to the software component SAP_HR. It should then be used to distribute HCM data into an ERP based landscapes.
    Esther is describing an eREcruiting standalone based on an ERP landscape. Therefore, the message type HRMD_A should be used.
    Then, from the HCM integration in Business Partner point of view, the standard implementation of the BAdI HRALE00INBOUND_IDOC should be deactivated. This implementation is normally converting the object P into a CP, because the object P is known only in HR (and ERP based landscape). In an ERP based landscape, the P will exist with its CP. The integration to the BP will not work during the ALE-Inbound process, but during the Synchronization run (report HRALXSYNC). The implementation makes sense only in none-ERP based landscapes (where message type HRMD_ABA will be used).
    Ester should then adapt her distribution model to be able to distribute the necessary infotypes for the consistency of a P (infotypes 0000, 0001, 0002, 0003) as well as the one which are used for the BP-integration (infotype 0006 subtype 1, infotype 0009, infotype 0105 subtypes 0001, 0005, 0010, 0020), as well as the HR-object CP and its relationship to the P (infotypes 1000 and infotype 1001 subtype B209).
    With the hope it is clarifying the usage of the message types depending on the used scenario and on the used landscapes.
    Best regards.
    Pierre

  • Issue with internal table in object oriented ABAP.

    Hello Gurus,
    I am having trouble defining internal table in Object oriented ABAP. for following:
    DATA: BEGIN OF IT_TAB OCCURS 0.
            INCLUDE STRUCTURE ZCUSTOM.
    DATA    tot_sum   TYPE char40.
    DATA END OF IT_TAB.
    Can someone help ?
    Regards,
    Jainam.
    Edited by: Jainam Shah on Feb 5, 2010 8:33 PM
    Edited by: Jainam Shah on Feb 5, 2010 8:33 PM
    Moderator message - Please post in the correct forum. You can easily find out for yourself by looking at SAP help for internal tables using OOP - thread locked
    Edited by: Rob Burbank on Feb 5, 2010 2:49 PM

    No, you can not declare internal table with header line in OO context. You have to declare the work are/header line separately
    Example:
    TYPES: BEGIN OF ty_it_tab.
            INCLUDE STRUCTURE mara.
    TYPES:  tot_sum TYPE char40.
    TYPES: END OF ty_it_tab.
    DATA: it_tab TYPE STANDARD TABLE  OF ty_it_tab.
    DATA: wk_tab TYPE ty_it_tab.
    LOOP AT it_tab INTO wk_tab.
    ENDLOOP.
    Edited by: Dean Q on Feb 5, 2010 8:50 PM

  • Logic issue with Internal Table

    Hi All,
    I have an internal table with following structure.
    Name of Internal table: ITAB
    Fields:   userid      login date     number
    Values:  abc         01012008    
                 abc         02012008
                 abc         02012008
                 abc         03012008
    Now i should store the value for the field itab-number, based on the ita-logindate.
    If the field logindate is having same date for 2 times (for the user 'abc'),
    the field itab-number should have the value as '2' .
    Basically i want to display a report to show how many times a user has logged into SAP system for a given date.......
    How to incorporate this logic?
    Regards
    Pavan

    Hi,
    Use the below logic.
    data: begin of itab1 occurs 0,
           uid  like sy-uname,
           date like sy-datum,
          end of itab1.
    data: begin of itab2 occurs 0,
           uid  like sy-uname,
           date like sy-datum,
           count type i,
          end of itab2.
    data v_count type i.
    start-of-selection.
    itab1-uid = 'abc'.
    itab1-date = '20080101'.
    append itab1.
    itab1-uid = 'abc'.
    itab1-date = '20080102'.
    append itab1.
    itab1-uid = 'abc'.
    itab1-date = '20080102'.
    append itab1.
    itab1-uid = 'abc'.
    itab1-date = '20080103'.
    append itab1.
    itab1-uid = 'abc'.
    itab1-date = '20080104'.
    append itab1.
    sort itab1 by uid date.
    loop at itab1.
    v_count = v_count + 1.
    at end of date.
    itab2-uid = itab1-uid.
    itab2-date = itab1-date.
    itab2-count = v_count.
    append itab2.
    clear  v_count.
    endat.
    endloop.

  • Errors with PTP JMS queue

    here the command from the c prompt and the message I get
    C:\JAVA>java -Djms.properties=%J2EE_HOME%\config\jms_client.properties SimpleQue
    ueSender MyQueue 3
    Queue name is MyQueue
    ERROR! Shared library ioser12 could not be found.
    Exception in thread "main" java.lang.UnsatisfiedLinkError: specialLoadClass at com.sun.corba.ee.internal.util.JDKClassLoader.specialLoadClass(Native
    Method)
    at com.sun.corba.ee.internal.util.JDKClassLoader.loadClass(JDKClassLoade
    r.java:58)
    at com.sun.corba.ee.internal.util.JDKBridge.loadClassM(JDKBridge.java:18
    0)
    at com.sun.corba.ee.internal.util.JDKBridge.loadClass(JDKBridge.java:83)
    at com.sun.corba.ee.internal.javax.rmi.CORBA.Util.loadClass(Util.java:37
    8)
    at javax.rmi.CORBA.Util.loadClass(Unknown Source)
    at javax.rmi.PortableRemoteObject.createDelegateIfSpecified(Unknown Sour
    ce)
    at javax.rmi.PortableRemoteObject.<clinit>(Unknown Source)
    at com.sun.enterprise.naming.SerialContext.getProvider(SerialContext.jav
    a:57)
    at com.sun.enterprise.naming.SerialContext.<init>(SerialContext.java:79)
    at com.sun.enterprise.naming.SerialInitContextFactory.getInitialContext(
    SerialInitContextFactory.java:54)
    at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
    at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
    at javax.naming.InitialContext.init(Unknown Source)
    at javax.naming.InitialContext.<init>(Unknown Source)
    at SimpleQueueSender.main(SimpleQueueSender.java:40)

    There is a DLL file located in the nativelib directory of the J2EE installation directory called ioser12.dll. That file needs to be placed in a directory in the library path (e.g., the windows system directory) or the nativelib directory needs to be added to the PATH (I'd choose the latter). I suspect you are running Win95 as WinNT environments don't need to take that extra step of adding the nativelib directory to the PATH.

Maybe you are looking for