GetSelectionPaths() in a separate TreeSelectionListener-Method

I've define a JTree-Class with the Attribute "JTree jtree".
like this:
public class XY implements ActionListener{
     JTree tree=null;     
Furthermore in a method addSelectionListener() in this class I add a TreeSelectionListener.
If now a SelectionEvent occurs the code branch in the valuChanged-Method of
the SelectionListener. There I try to get the selected items by "tree.getSelectionPaths()".
And olthough I had selected some items the result I got is null.
But if I define the addSelectonListener() in this way: addSelectonListener(jtree) it works.
Why this ??
Any ideas?
incs

Hi Josh,
I've tryed to separate my problem. Following the extract. Now the problem seems to be reduced to the effect to assign the selection listener to only one tree-instance, videlicet for the tree that was instantiated at last.
public class JTreeSel
extends JFrame
DefaultTreeModel treeModel=null;
DefaultMutableTreeNode root=null;
DefaultMutableTreeNode treeNode=null;
JTree tree,vinTree,proNotree=null;
public JTreeSel(){
public void generateTree(){
JTabbedPane tp = new JTabbedPane();
root = new DefaultMutableTreeNode("root");
root.add(new DefaultMutableTreeNode("one"));
root.add(new DefaultMutableTreeNode("two"));
treeModel = new DefaultTreeModel(root);
tree = new JTree(treeModel);
tree.getSelectionModel().setSelectionMode
(TreeSelectionModel.DISCONTIGUOUS_TREE_SELECTION);
tree.setRootVisible(true);
this.addSelectionListener();
tp.add(tree);
root = new DefaultMutableTreeNode("root2");
root.add(new DefaultMutableTreeNode("one2"));
root.add(new DefaultMutableTreeNode("two2"));
treeModel = new DefaultTreeModel(root);
tree = new JTree(treeModel);
tree.getSelectionModel().setSelectionMode
(TreeSelectionModel.DISCONTIGUOUS_TREE_SELECTION);
tree.setRootVisible(true);
this.addSelectionListener();
tp.add(tree);
this.getContentPane().add(tp);
public void addSelectionListener(){
tree.addTreeSelectionListener(
new TreeSelectionListener(){
public void valueChanged(TreeSelectionEvent event){
TreePath[] selections = tree.getSelectionPaths();
TreePath tp = event.getNewLeadSelectionPath();
if (tp!=null && tp.getLastPathComponent().toString()!=null && ((DefaultMutableTreeNode)
tp.getLastPathComponent()).isLeaf()){
if (selections != null) {
for (int i = 0; i < selections.length; i++) {
TreePath selectedProdSet = selections;
System.out.println("SelektierterTreePath[]: " + selectedProdSet.toString());
} else {
System.out.println(" no leaf element selected");

Similar Messages

  • How to separate payment method by level of payment amount

    Hi
       Please help me, I want to set configuration for transaction F110, I have two payment method (C:Check, T:Transfer). At each vendor If payment amount less than 2 million --> T, if amount greater than 2 million --> C method, How I can do it?
    Thanks you.

    Hi,
    Please help me, I want to set configuration for transaction F110, I have two payment method (C:Check, T:Transfer). At each vendor If payment amount less than 2 million --> T, if amount greater than 2 million --> C method, How I can do it?
    Thanks you.
    In FBZP transaction code in the tab Payment methods in country you have to define the two payment methods C for cheque and T for transfer.
    In the next tab Payment methods in company code you have to define the max & min amount (2 million in digit) for payment method T and for payment method C the min amount will be
    million and max amount will be greater than  million.
    other wise at the time of running  F110 you can manually select the payment method  against the line item amount.
    Try this in Development client.
    With Regards,
    Sudipto

  • Can you have multiple payment methods in one family?

    I am a college student trying to make iTunes purchases. I put my account on my own Debit card and now make purchases through this. However, once I joined my Family group in iCloud, it overrode my payment info to the family card. Can we still be in a family and access each other's purchases and shared iCloud items such as Calendars and Reminders, etc. but be on separate payment methods?

    If you are in a Family Sharing group, but are not the Family Organizer, keep a credit balance on your account by redeeming gift cards. Any purchased items will then be charged to your account instead of the Family Organizer's credit card.

  • F111 and payment method field 'payment orders only' deactivated T042ZL-XNOP

    Hi
    F111 gives an error for a payment method: "Creation of payment orders is not supported. Message no. PZ588.
    Diagnosis
    Payment method B is configured so that a payment order is created. This function is not supported in the payment program for payment requests. This payment method is not permitted here."
    The cause is field 'payment orders only'T042ZL-XNOPO in FBZP of the payment method, which means no clearing of open items during payment run. Business reason for having this parameter activated: "As per the legal regulation in Poland, the vendor liability in your books cannot be cleared during Payment run.  The vendor liability in your books can be cleared only after receiving confirmation from bank about the payment having been made to the vendors account.
    Hence only Payment orders are created during SAP  payment run ( no FI posting) ..The DME files generated are sent to the bank. After the confirmation is received from bank ( via the bank statements imported thru EBS) that the funds  have been actually transferred to the vendor account, the vendor liability is cleared off form your books"
    I do not want to use F110 because I do not want to use customers or vendors but I want to use GL accounts. Business is against creating a separate payment method with field 'payment orders only' T042ZL-XNOPO deactivated.
    Any suggestion?

    Since your requirement is with reference to GL accounts then F111 is the correct tcode. Payment request is created (trx RVND) and in this case can be processed only by SAPF111S via trx F111.
    But to use tr. F111, a payment request should not contain a payment method, marked with "Payment order only" (tr. FBZP).
    In your case it is correct that such an error PZ588 is generated since such payment methods are not supported by F111.
    So please ensure that payment request may not contain a payment method, marked with "Payment order only".
    Hope this information helps.
    Kind Regards
    Soumya

  • Payment methods on Family Share

    Is there any way to keep separate payment methods for accounts linked on a Family Share setup?

    Hello microKOAT,
    With Family Sharing, billing is only setup through the family organizer unless the other accounts have iTunes Store credit or gift card balance. It will bill the credit first and if anything is left over, it will then default to your card. Take a look at the article below for more information. 
    Family purchases and payments
    http://support.apple.com/en-us/HT201079
    Regards,
    -Norm G. 

  • Query on Supplemental Payment methods

    Hi,
    Does anyone has information on the different supplemental payment methods and how they work in BSI ?
    BSI released changes for UTAH related to supplemental payment method : from Regular to Concurrent in TUB 170.
    "Removes the Supplemental Payment Method "Regular" and sets the system default method for Supplemental Payment to "Concurrent"."
    I am trying to understand the impact of this change and also how these methods work differently from each other.
    Any kind of help is appreciated.
    Thanks,
    Dipsy

    Hello Dipsy,
    Regarding the Concurrent or Regular, the end result should be the same taxation as the concurrent method.
    As you are aware about,the various options of the supplemental codes are
    00 regular method
    01 flat rate method
    02 separate aggregation method
    03 rate table method
    04 cumulative method
    05 aggregation with pay periodsmethod
    06 wage-associated method
    07 concurrent method
    08 Regular no exemptions method
    09 system-selected method
    The system selected method = 9 but you want flat rate. As you would like to override the supplemental method of taxation to use the flat rate method,you have two choices:
    1. Define Employee level tax override using IT234. or
    2. Use group level override using code EG99 (default), this means that
        all employees will be subject to the override. Since all employees
        are in group code EG99, the override can be done directly on
        TaxFactory.
    Cheers and Regards,
    Jaime

  • 3PR and Payment Method Supplement

    Our AP department has a need to use Payment Method Supplements for the amounts payroll sends them through 3PR.  AP is asking if there is a way for payroll to pass a Payment Method Supplement on the 3PR documents.  I can't seem to find a way to do this through config or in a t-code.  The only program I see where payroll can input the payment method supplements is in RFFOUS_C, which we do not use for 3PR.  Does anyone know of a way to pass the payment method supplement on through the 3PR process?
    Thanks!
    Denise

    Hi,
    Use separate payment method like you have check and configure it as per your requirement for payment methods in country and company code.
    Assign employee to same in IT0009 and see if it works as per your requirement.
    Thanks,
    Ameet

  • What is the best practice to handle JPA methods in JSF app?

    I am building a JSF-JPA web app(No EJB).
    I have several methods that has JPA QL inside.
    Because I have to put those methods inside JSF beans to inject EntityManagerFactory (am I right about this?).
    And I do want to separate those methods from regular JSF beans which are used by page authors.
    And I may need to use them in different JSF managed beans.
    My question here is that what is the best practice to handle that?
    I. write a or a few separate JSF Beans and inject them into regular Beans?
    II. write a or a few separate JSF Beans and access them into regular Beans using FacesContext?
    III. others?
    Waiting to hear from you opinions.

    You can create named queries on your Entities themselves then just call entityMgr.createNamedQuery("nameOfQuery");
    Normally, we put these named queries in the class of the entity which will be returned. This allows for all information pertaining to a given entity and all ways of accessing that entity (except em.find() and stuff, of course) to be in one place. As long as the entity is defined in your persistence.xml file, any named queries which reside on that entity will be available through the EntityManager.
    As for the EntityManagerFactory, we normally create an application scope bean which holds the factory itself (because this is a heavy-weight object) and then just get all EntityManager instances from that by injecting this bean into whatever needs it. For example, I might have:
    //emfBB is the injected app scope bean which holds the entity manager factory.
    private EmfBB emfBB;
    private void lookupSomeData()
    EntityManager em = this.getEmfBB().getEmf()
    I hope this answered your question?
    ~Zack
    Edited by: zmarr on Nov 6, 2008 1:29 PM

  • Fundamentals: Custom Nodes vs Methods and Controller in MVC

    I have a couple quick questions that I'd consider somewhat fundamental that I should have a better grasp this far along in development...
    - First of all, what do you guys/gals consider the best way to structure your JavaFX classes. I almost always create custom nodes (XCustomNodes usually... from JFXtras) representing certain "panels" filled with content (buttons, labels, text, etc). I realize you could also create a separate class/method to simply return HBoxes, VBoxes, Groups, etc. So... thoughts?
    - Second, I see all these articles/posts saying ghat JavaFX is a perfect MVC language. I agree for the most part, but what would you consider the Controller? Aren't the View and Controller pretty well married together in JFX? Separating the Controller into its own entity seems like it'd be more work than help.
    Just trying to extend my knowledge reach... Thanks in advance!

    evnafets
    Thank you!!!
    While I do not understand how to do this:(though I understand principle of it... the misunderstanding is the whole problem)
    To make this example work all in one file, you have to make RemindTask2 an
    inner class of Reminder (which is already an inner class)
    I do not always understand packages....and doing what you suggested, in forming the packages, and sorting the classes, will help me understand the structure better...plus get me in the norm of always creating packages !
    So what I'm going to do right now is go tear my code down into various packages
    and source files.....however...if you or anyone else could explain/show example
    of how to do what you said(for inner classes, not packages...understand packages) , it would be appreciated.
    This fundamental inner class creation is obviously a major bump right now...and creating the packages and linking the classes will be easy, because I understand how to do it when I already have functional classes created.
    I do not always understand class/method creation/implementation..such as here.
    (IE: can create network apps/gui apps of simple nature....but this easy ol' thing has been driving me nuts.)
    Creating those classes however,,,,even if not the most efficient way is something
    needed for my basic Java knowledge.
    Thank you,,,,VERY GOOD project/training is going to come from this !!
    Really, thank you in any case...if you do not have the time(100% understand) please lmk, will just give you your duke award.
    AEWSOME

  • Event driven drawing on separate panels

    Dear all,
    What I intend to achieve:-
    Suppose I have two panels in my JApplet. The first contains a
    textfield. When I input a number, say 'x', in the textfield and press enter,
    a circle of radius 'x' would have been drawn in the second panel.
    ONCE I AM THROUGH WITH THE FIRST PART, I JUST WANT TO ADD ANOTHER (3RD) JPANEL
    TO THE JAPPLET, SO THAT WHEN I ENTER THE VALUE OF 'X' IN THE JTEXTFIELD, NOT
    ONLY IS A CIRCLE DRAWN WITH RADIUS EQUAL TO 'X' IN THE SECOND PANEL, BUT
    SIMULTANEOUSLY A SQUARE OF SIDE EQUALLING 'X' IS DRAWN ON THE 3RD PANEL.
    How I plan to achieve that:-
    Set the layout of the contentpane as grid layout:-
    getContentPane().setLayout(new GridLayout(1,2,10,10));
    Create a JPanel object p1 as follows:
    JPanel p1 = new JPanel();
    Create another object p2 belonging to a nested class Panel2 which extends
    JPanel:
    Panel2 p2 = new Panel2();
    Define a JTextField:-
    JTextField t1 = new JTextField(4);
    Make t1 an ActionListener
    t1.addActionListener(this);
    Does 'this' refer to the whole contentPane?
    If I want t1 to send an action event to the second panel p2, how do I do that?
    Add the TextField to the JPanel object p1:-
    p1.add(t1);
    Add the panels p1 and p2 to the contentPane:-
    getContentPane().add(p1);
    getContentPane().add(p2);
    Next I include a paintComponent() method inside the nested class Panel2 and
    include all the drawing inside this method.
    In the actionPerformed() method I include the code for reading in a value for
    the variable 'x' into the JTextField and call repaint().
    This should draw the required circle with radius 'x' in the second panel.
    Please let me know if my thought process is on the right track so far.
    ONCE I AM THROUGH WITH THE FIRST PART, I JUST WANT TO ADD ANOTHER (3RD) JPANEL
    TO THE JAPPLET, SO THAT WHEN I ENTER THE VALUE OF 'X' IN THE JTEXTFIELD, NOT
    ONLY IS A CIRCLE DRAWN WITH RADIUS EQUAL TO 'X' IN THE SECOND PANEL, BUT
    SIMULTANEOUSLY A SQUARE OF SIDE EQUALLING 'X' IS DRAWN ON THE 3RD PANEL.
    Can it be done simply by modifying the above code? If yes, please let me know
    how? Can I have a separate paintComponent() method for the 3rd panel? I
    would appreciate if somebody could give me the pertinent code for just the
    relevant part (that deals with how to draw on the two different panels
    separately).

    Why are you creating a new thread on this when you never responded to help in your previous threads from yesterday? If you are going to be inconsiderate and ignore the input of volunteers who used their free time to consider your problem and give you advice why should anyone help you here now or in the future? Think on it.
    [http://forums.sun.com/thread.jspa?threadID=5339213&messageID=10462693#10462693]

  • OTM - supported methods for Cloning Transportation Management environments?

    Does anyone know if there are currently any supported methods for cloning entire OTM environments?
    OTM Admin Guide only mentions supported methods for Database-related objects, but nothing for Web or App tiers.
    Oracle Support Note 549353.1 (over a year old) states:
    You can not clone the OTM Software, you must run the full installer on your new instance.
    You can, however, clone the database portion so that you can have the same data content. This is
    documented in Note 1313815.1 Cloning Oracle Transportation Management Database Schemas.
    Not sure the above still applies to current OTM release 6.3.1.
    Thanks,
    Paul S.

    i'm very glad to read, from the article you referenced, that there's no performance hit.  but that's only 1 of 2½ issues.  i have some follow-up questions.  perhaps we should take this to a forum instead of the knowledge base?
    -what about prior issue #2 (securely wiping the drive)?  is this easily and instantly doable?  we'll ignore #3 (relying on microsoft gets ½ a point). 
    -with the encryption keys stored on the controller, doesn't using third-party encryption software mean the keys themselves aren't encrypted by a user pw, making it that much easier for someone with physical access to the drive to extract them from the firmware?
    -if the controller is doing the encryption, why bother with bitlocker?  is it so slightly-more-savvy-than-average joe can easily enable it, or so you don't have to write it into the firmware?  (i'm being serious, not snarky--i'm a software developer myself.)  personally, i'm dual-booting win7* and ubuntu 14, which means i need 2 separate encryption methods instead of just supplying my credentials at boot to decrypt the hd and then choosing which os to load.
    -also, if i upgrade the windows os, ms requires the os volume to be decrypted first.  this would obviously not be the case if windows was unaware that it was encrypted.
    *last, what about those poor silly saps who are running win7 (or earlier)?  i just read that win7 bitlocker doesn't support self-encrypting drives--it was an update as of win8.  we're just out of luck?  i realize you can't support everything, but win7 is still a ms-supported os, and it seems like a better service to (more of) your customers to enable full-disk encryption all the time.
    thank you!

  • Outlook Anywhere breaks when changing Internal Auth Method to NTLM

    I have an Exchange 2013 environment that I'm migrating to from Exchange 2007, and many of our Outlook clients are still 2007, which means they can't save passwords by default.  We have OA published through TMG's for machines on 4 separate domains to
    connect into the mail servers, which all reside on one domain.  We published this rule with Basic auth, and we've been happy, so we config'ed Exchange 2013 the same way.
    Since all clients use OA to connect to Exchange 2013, our Outlook 2007 clients are now being prompted for creds every single time they open outlook.  When I try to change the internalclientauthenticationmethod to NTLM, it fixes the cred challenge for
    domain members, but it breaks OA even though the externalclientauthenticationmethod is still Basic.  The internal and external host names are the same.  It's just the auth methods that differ, and both auth methods are set in IISAuthenticationMethods.
     Checking an Outlook client's proxy settings show NTLM.  If manually switched to Basic, it'll work until Autodiscover switches it back to NTLM.  The weird thing is that testconnectivity.microsoft.com tests come back no problem when using autodiscover
    and basic.  Is Outlook just not smart enough to do that?
    I'd attempt to use Negotiate on both, but I've read that's incompatible with Exchange 2007, and I'll users for a while trying to connect to resource mailboxes and public folders on Exchange 2007.  Is there a way to get to this to work?  If it can't
    work this way, why do they even bother having separate auth methods?
    Thanks!

    Thanks.  That's what I was afraid of.
    I've seen the article. We want to do preauth for OA, so we'd need to hack at it.
    Alternatively, create a separate external host name and ensure the internal host name is not resolvable on the Internet. That will ensure external Outlook users will use the external name and the external auth.
    Twitter!:
    Please Note: My Posts are provided “AS IS” without warranty of any kind, either expressed or implied.
    Yes.  Thanks.  That's what I was figuring. The problem with that is that our internal host name is the same external name that provides the entry point for EAS and EWS for a large number of users, so I'd have to rearchitect everything with the
    majority of our mobile devices already using that.  It's simply not going to happen.  I'll have to hack a bit to figure out a way to make it work.  I suppose I could use legacywebmail.domain.com, which is a SAN on the cert we use for Exchange
    and will now be unused during the migration, as the internal name and make it unresolvable externally. It's just ugly since Outlook clients will see that in proxy settings.  I like things neat.  
    Funny how with the introduction of internal/external hostnames and auth methods, that our Exchange 2007 environment is now setup the same way I'd want our 2013 setup (same hostnames internally and externally resolvable - NTLM internal/Basic external), and
    it works fine. 

  • Multiple paint methods

    Hi
    I'm working on a draughts game and to make it a little nicer looking I've used graphics for the board squares.
    My paint method is double buffered so when a peice is dragged it lags a little because it has to buffer so many images. The only images I need to buffer are the ones that move i.e. the draughts.
    Is there a way to draw the squares in a separate paint method so they don't get buffered? Or is java limited to one paint method per class?

    It's going to lag no matter how many paint methods you use. (Thats even if there ARE other paint methods) If it's lagging because of how many images must be drawn, then perhaps you should write an algorithm that repaints only the areas that have changed. ie: Only repaint wherever the single peice is moved.
    -Adam

  • XML toString method not working as expected.

    Why is the XML.toString method inconsistant?
    var xml:XML = new XML( "<root/>" );
    var xml_withtext:XML = new XML( "<root>a</root>" );
    var xml_withchild:XML = new XML( "<root><child/></root>" );
    trace(xml.toString()); //traces "" (blank)
    trace(xml_withtext.toString()); //traces "a"
    trace(xml_withchild.toString()); //traces "<root><child/></root>"
    If the XML contains only a root node, toString prints nothing.  When it contains text, it prints the text.  That would make sense if toString was printing only the contents of the root node, but if the root node contains a child, it doesn't print "<child/>" as one would expect.  Instead, it suddenly includes the root node as well in the string.  That is inconsistant/unexpected.  For some reason, there is also a separate toXMLString method that consistantly prints the entire XML structure.  Was that some kind of patch since toString doesn't work in a consistant manner, instead opting to sometimes include the root node depending on whether it contains simple or complex content?

    Andrei1:
    1. No, it's not what it is.  No, there aren't hundreds of reasons/dependencies why more descriptive or intuitive conventions are not chosen. In this case, the reason (singular) is spelled out in the E4X spec, and it basically boils down to them naively thinking it would be easier for programmers if the node would just magically return text if that's all it contains.  In other words, they thought it would be simpler for a node to run specialized arbitrary logic to decide what to return, than it would for a programmer to explicitly select what they want by typing ".text".  I see no reason why XML.toString should return anything other than the underlying/original string of characters that originally represented the node in the first place.  If programmers wanted the child text of a node, they should call a method like "getTextContent".  Since an original, unaltered string of XML character had to exist in the first place in order to instantiate an XML object, anything that creates a new string based on arbitrary logic, for whatever reason, has no business existing within the toString method.  For classes that represent data that is not fundamentally a string, any string representation is by definition arbitrary and in that case they can override the universal (i.e. a member of every base Object) toString method.  But for classes that represent strings, toString should return the string they represent, unaltered.
    2.  An AS3 XML object IS an XML-type object, but the AS3 XML class is actually instantiated from String-type data or from  bytes that represent encoded String data (i.e. sequences of known  characters), because XML is very strictly and fundamentally a "markup language" which is essentially a format of a string of characters.  Its rules are based around characters, exact unicode character classes, and a logical ordering of those characters.  XML is logically and fundamentally the kind of data that a String class represents, text, so its converstion to a String instance should be straightforward.   As a string, a "toString" method for a node should return the original string representation of that node from the first character that is part of that XML node to the last character that is part of that node.  XML may contain data the represents anything, but XML itself is a string of characters.  Period.
    3.  There is a universal string method called toString and it's a member of the most basic class "Object" which all other classes inherit from.  Although the technical details are different in different object-oriented langauges, they all tend to have a method like that, whether we're talking about AS3, C#, Java, or JavaScript.  Calling toString on a String returns the string itself.  Calling toString on a class that represents a string, should return the string it represents; not some arbitrary tranformation of that string.  Calling toString on a class that doesn't represent a string, has no default string representation to return, and therefore any string returned is by definition arbitrary.
    4.
    In other words toString() does not return XML at all but an un-interpreted representation that is cast to String
    That's precisely what it DOESN'T do.  Instead of returning the original, un-interpretted representation of the string FROM WHICH THE NODE WAS CONSTRUCTED, it returns some arbitrarily interpretted represention.  It decides whether the XML string is interpretted as complex or simple content, and then it arbitrarily decides to include or not include the outermost tags representing the XML of that node.  The fact remains, the string representation PRECEDES the existance of the XML instance, so toString should not be performing arbitrary logic to construct a brand new string.
    In other languages datatype string can be a totally different animal.
    No, actually a string always refers to a secquence of characters.  Each of those character may contain one or more bytes, they may be contiguous in memory or not, they may be represented by arrays, linked lists, doubly-linked lists, etc. but their logical data is always a sequence of characters.  That is the same in every programming language, and is even codified in the Unicode standards which represents characters in hundreds of different written languages.
    5.
    Again, XML is not a string until application says so and XML in AS3 is not a String but a special object.
    XML is actually a string BEFORE the application says it is XML, since the XML is constructed FROM A STRING.  XML is a special object, which is constructed from, represents, and processes a string.
    I could very easily create a class named "AllCapsSentence" and like "XML", the class itself is not "String", but they logically represent a string of characters and any "toString" method on either of such classes should return the underlying string representation without mangling it.

  • Valuation methods

    Hi,
    Can we use separate valuation methods (ex. moving average, FIFO etc) for each plant separately, when all the plants are under same company code and if we set up plant as our valuation area? Please advice.
    With regards,
    Prabhakar.

    Hi,
    If we set up plant as valuation area means,
    If a company code has been assigned to plants say plant1 and plant2, the vlaue of all the materials in plant1 and the value of all the materials in plant 2 will become the value of stocks in that company code.
    Each and every material in the plant will be having its own price depending upon the price control (v or s)(v--moving avarage price price value keeps changing over a period of time, s price will be constant over a period of time).
    the stock of that perticular material will be multiplied by the price in a perticular plant in all the storage loactions of that plant will be considered and will be added up (of all the materials in the plant) to find out the total stock value of in that plant.
    SAP can storage the data of stock values for each material in a plant and all the materials in the plant based upon the above said calculation.
    However differentiated valuation can be maimtained for a single material using the method split valuation.
    FIFO is the method to issue materials based upon first in first out method.
    The report TCODES MMBE, MB52 ,MC.9 etc will provide all the details with regard to the stocks, values.
    Regards,

Maybe you are looking for