Customizing JTree data rendering for Dates

I have a JTree that has different data types in each column that I'm sorting. I'd like to be able to control the String that appears in the table cell(s) based on the value in the model. I'm trying to make it so that if a Date is less than some predeterminded Date value that a custom string is output to the Table cell instead of the normal Date string.
I thought a JTable took the toString() of the Date object for its value and that I could just subclass the java.util.Date object and override the toString() with a conditional. such as (toString() in my CustomDate subclass that extends java.util.Date):
public String toString() {
    defaultDate = new java.util.Date();
    if (defaultDate.getTime()>this.getTime()){
        return "Date entered in the past";
    } else { //get the normal Date toString
        return new String(super.toString());
}I'm not so much asking what is wrong with my code, but how to accomplish this task, the code is simply to show the direction I've taken. Am i close, or way out in left field?
Thanks for any help guys!

Zulfi100 needs a BrainCellRenderer.He is strangely disturbing yet amusing at the same time. It worries me that he is going to use the skills he learns here to teach.

Similar Messages

  • Custom Jtree Cell Renderer goes to infinite loopp...any suggestion???

    Hey ...thanks for you help before....
    Another problem..
    My Jtree works fine with default Cell Renderer .. but goes to infinite
    loop with CustomDefaultRenderer after few minutes...
    Any suggestions....
        public DynamicTree() {
            super(new GridLayout(1,0));
            rootNode = new DefaultMutableTreeNode("POSTINGS & SEARCHES");
            treeModel = new DefaultTreeModel(rootNode);
            treeModel.addTreeModelListener(new MyTreeModelListener());
            tree = new JTree(treeModel);
            tree.setEditable(false);
            tree.getSelectionModel().setSelectionMode
                    (TreeSelectionModel.SINGLE_TREE_SELECTION);
            tree.setShowsRootHandles(true);
      //      tree.addMouseListener(ml);
      //      tree.addKeyListener(kl);
            JScrollPane scrollPane = new JScrollPane(tree);
            add(scrollPane);
            //          tree.setCellRenderer();
            tree.addTreeSelectionListener(new TreeSelectionListener(){
                public void valueChanged(TreeSelectionEvent evt){
                    System.out.println("Tree's lead selection path is " +
                            tree.getLeadSelectionPath());
            tree.setCellRenderer( new CustomDefaultRenderer());              
    public class CustomDefaultRenderer extends DefaultTreeCellRenderer {
        String suffix = null ;
        String prefix = null ;
        boolean expired = false;
        boolean matched = false ;
        PostingHandler pHandler = new PostingHandler();
        public Component getTreeCellRendererComponent(
                JTree tree,
                Object value,
                boolean sel,
                boolean expanded,
                boolean leaf,
                int row,
                boolean hasFocus) {
            super.getTreeCellRendererComponent(
                    tree, value, sel,
                    expanded, leaf, row,
                    hasFocus);
            suffix = (String)value.toString() ;
            try {
                prefix = value.toString().substring(0,value.toString().indexOf(":") + 1);
                suffix = suffix.substring(suffix.indexOf(":")+1,suffix.length());
                System.out.println("Prefix:"+prefix +"\tSufix :"+suffix);
            }catch (Exception e){System.out.println("Nothing to index yet" + e);}
            //    value = (Object)suffix;
            if(pHandler.newPostingsMatch.contains(prefix)) {
         //            if(hasFocus){pHandler.removePostingMatch(prefix);}               
                         setBackgroundNonSelectionColor(Color.CYAN);
            }else
                setBackgroundNonSelectionColor(Color.WHITE);
            System.out.println("Other <>values:\tValue" + value.toString() + "\tSEL:"+sel +"\tExpanded:" + "\tLEAF:"+leaf +
                    "\tRow:" +row + "\tfocus:"+hasFocus );
            return this;
        public void paintComponent(Graphics g){
            System.out.println("Paint is called");
            //g.drawLine(0, 0, 100, 100);
            if(expired){
                g.drawLine(22, 11, 100,11);
            g.drawString(suffix, 22,15);
            validate();
            repaint();
    }

    Figured it out right after this post :)
    I had to do the following in my cellrenderer
    setBackgroundNonSelectionColor(new Color(0, 0, 0, 0));As a parameter I sent a color object with a alpha level of 0 (completly transparent)...

  • 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 help

    Hi
    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

  • Error during create CR for MDGC "Enter a relevant role for creation of customer master data"

    Hello Experts,
    I am unable to create a Customer CR in 'MDG 6.1 Customer UI' , the UI throws an error saying "Enter a relevant role for creation of customer master data".It looks like it is expecting me to mention the BP role ( like FLCU01 Customer or FLCU00 FI Customer ) , but I don't see that BP role section in the Customer UI to mention .
    While creating the vendor CR  , I am able to enter the BP role ( like FLVN01 vendor or FLVN00 FI Vendor ) in the UI BP Role section.
    Following are the UI's for Customer and Vendor
    Customers BS_OVP_BP: BS_OVP_CU > OVP: BS_CU_OVP - I do not see BP role section here.
    Vendors BS_OVP_BP: BS_OVP_SP > OVP: BS_SP_OVP - This is working fine  , I see BP role section here.
    Please advice what I am missing here , what should I do for the successful CR creation . Should I change the UI for Customers or do I need to do anything in CVI configuration.
    Thanks,

    Hi Abdullah,
    You were right in the first place the UIBB is missing  , the UIBB 'Role' was present in the 'Search Customer' page but not available in the 'Create Customer CR' page , so I created the 'Role' UIBB again and was able to create the CR now . Not sure how it got deleted in the first place , is there any options where we reset the UI screen to the default initial configuration
    But after approving the CR , only the Business Partner BP is getting created and the Customer is not getting created . Not sure what might be the issue now. Is there any config that tells to automatically create customer when BP is created. I was able to create Vendor using the create Vendor CR before.
    Thanks

  • Change Logs for customer master data in 3.1 H version

    Hello All
    Are they any existing reports or change logs for viewing changes to customer master data in 3.1h version.  I want to be able to report based on changes made to customer master.
    I know there is a good report in 6.0 version for this- S_ALR_87012182.
    If I have to develop a custom program for this in 3.1h. Which table I should use? KNA1 or CDPOS.
    Any ideas will be appreciated.
    Hema.

    Hi,
    Please check the filter settings maintained for the adapter object CUSTOMER in R3AC1. The same filter settings can be referred in tables Table: CRMFILTAB (R/3) and SMOFFILTAB(CRM) as per srinivas's reply.
    Check the sales area of the customer maintained (Sales Area, Division, Distribution Channel etc.) and see if the current filter settings are restricting the customer from getting replicated in CRM. If everything is maintained fine then check for any failure Bdocs in SMW01 or SMW02.
    Regards,
    K

  • Change Message Control for Customer Master data

    Hi Friends,
    I have to choose/populate a message when the user is about to create an already existing customer.
    In SPRO --> Financial Accounting --> Accounts Receivable and Accounts Payable --> Customer Accounts --> Master Data --> Preparations for creating customer master data --> "change message control for customer master data" ...
    OK...
    When u click this it goes into Change View "message control by User" Overview screen wherein u can insert new messages and texts and the type of message ....
    Now .....
    I want to display the 145th message (F4 help of the Message column) ..... it picks up the text "Customer found with same address;check"..... with Online mesasage type 'I' and batch type 'I' and with standard type '-' ..
    I want to have the same message with message types 'E','E', and 'I' respectively.......
    How is this possible (or) what should i do to meet my requirement :-|
    Expecting ur answers
    Thanks in advance ........
    Cheers,
    R.Kripa.

    Hey yes it is not possible (as of now
    I ve met the requirement by just using message statement in the program itself ............
    My requirement is met but still if anyone knows about this do answer / reply
    Thanks
    Cheers,
    R.Kripa.

  • Dual Control for Vendor/Customer Master Data

    We can set Dual Control for Vendor/Customer Master Data. I have set it. According to the cycle, I have customized sensitive field, and make changes in Vendor/Customer A/c. Here the changes will be confirmed by other user who is authorised to confirm the changes. In this scenario, I would like to know, can we avoid this confirmation once we have actived? If, no than how could we confirm the changes and where can we set authorisation?

    Dear,
    No, You cannot avoid the dual check if You activate it. Another user by FK08 has to confirm the changes.
    Then You can delete the field for the dual control into the table T055F and no check will be done in the future.
    I hope this helps.
    Mauri

  • BADi used for creating customer own data in transaction me52n

    Hi experts,
    please any one tell me what is the procedure for creating or changing. How to get access for customer own data in transaction me52n. How to get authorization checks.
    thank you,
    regards
    vijay krishna

    Hi
      check this link.
    Name of Badi used with transaction ME52N
    Thanks
    Viquar Iqbal

  • Are there any set guidelines for customer master data cleansing.

    1) I was wondering if there are any set guidelines for customer master data cleansing.
    2) Part of the cleansing effort involves consolidating number of divisions etc. Any pointers to this regard?
    3) Also how do we deal with open docs, billing plans etc?

    The data cleansing requirement will take place, while move the data from legacy system to new target ERP / system. I.e. need to cleanse, enrich, de-duplicate, & standardize.
    The existing data may not have consistent format since it is often being derived from various sources. It may contain duplicate information as well missing or incomplete information. Cleanse and normalize content to achieve accuracy, consistency and proper understanding of the data.
    Also it’s a process of organizing the data, which will ensure enrichment of your data which are up-to-date, accurate, and complete. These processes are manual / labor intensive and require a fair bit of specialization.
    If you need to have more details please feel free to interact with us as per below.
    Thanks
    Kumar
    www deebrostech.com

  • Reg lsmw for customer master data transfer

    Hello All,
    I want to know while transfering data by lsmw for customer master data .
    Scenario : There are more then one ship-to-party and bill to party so how to upload the data in this case?????
    Thanks,
    Sunny

    hi
    just refer to the link below
    http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g   
    <b>step by step procedure with screen shots</b>          
    regards
    vijay
    <b>plz dont forget to reward points if helpful</b>

  • How to create customer master data for walking customer in retail

    hi experts !!!!!!
    for retail industry e.g books trading industry
    how to create customer master data for walking customer in retail
    its dummy or one time customer
    if i create one time customer then same customer number can i use for every new order and every new customer how ?????
    thanks

    Dear Hanumant,
    As per my view,,
    You can use one time customer functionality to full fill your requirement.
    When you create sales order with one time customer system take you to the customer data maintanence screen through that you can maintain the one time customer data.
    Same one time customer number you can use for every new order through maintaining different data.
    I hope this will help you,
    Regards,
    Murali.
    Edited by: Murali Mohan.Tallapaneni on Dec 19, 2008 6:08 AM

  • Non-editable mode for customer master data in VA01 and VA02

    Hi all,
    User requirement is they don't want to give permission to change customer master data (payer & ship-to ). I didn't find any user exit to do screen non-editable.
    Can any one help me in this..
    Regards,
    Sudhakara

    Hi Sudhakar Reddy,
    For this transaction code user exits available :
    SDTRM001  Reschedule schedule lines without a new ATP check
    V45A0001  Determine alternative materials for product selection
    V45A0002  Predefine sold-to party in sales document
    V45A0003  Collector for customer function modulpool MV45A
    V45A0004  Copy packing proposal
    V45E0001  Update the purchase order from the sales order
    V45E0002  Data transfer in procurement elements (PRreq., assembly
    V45L0001  SD component supplier processing (customer enhancements
    V45P0001  SD customer function for cross-company code sales
    V45S0001  Update sales document from configuration
    V45S0003  MRP-relevance for incomplete configuration
    V45S0004  Effectivity type in sales order
    V45W0001  SD Service Management: Forward Contract Data to Item
    V46H0001  SD Customer functions for resource-related billing
    V60F0001  SD Billing plan (customer enhancement) diff. to billing
    For ur requirement whixh exit is suitable plz check it out. other wise put breakpoint for userexit and check it out.
    Rewards somr points.
    Rgds,
    P.Nag

  • Search for BAdi for Customer Master Data (XD01)

    Hi experts,
    i am looking for a BAdi for Customer Master data (XD01). Can anyone suggest me which one can i use?
    thanks in advance.
    Regards,
    aksh

    hi
    execute this report
    *& Report  ZNAGBADI
    REPORT  ZNAGBADI.
    *report zbadi_find .
    tables : tstc,
    tadir,
    modsapt,
    modact,
    trdir,
    tfdir,
    enlfdir,
    sxs_attrt ,
    tstct.
    data : jtab like tadir occurs 0 with header line.
    data : field1(30).
    data : v_devclass like tadir-devclass.
    parameters : p_tcode like tstc-tcode,
    p_pgmna like tstc-pgmna .
    data wa_tadir type tadir.
    start-of-selection.
    if not p_tcode is initial.
    select single * from tstc where tcode eq p_tcode.
    elseif not p_pgmna is initial.
    tstc-pgmna = p_pgmna.
    endif.
    if sy-subrc eq 0.
    select single * from tadir
    where pgmid = 'R3TR'
    and object = 'PROG'
    and obj_name = tstc-pgmna.
    move : tadir-devclass to v_devclass.
    if sy-subrc ne 0.
    select single * from trdir
    where name = tstc-pgmna.
    if trdir-subc eq 'F'.
    select single * from tfdir
    where pname = tstc-pgmna.
    select single * from enlfdir
    where funcname = tfdir-funcname.
    select single * from tadir
    where pgmid = 'R3TR'
    and object = 'FUGR'
    and obj_name eq enlfdir-area.
    move : tadir-devclass to v_devclass.
    endif.
    endif.
    select * from tadir into table jtab
    where pgmid = 'R3TR'
    and object in ('SMOD', 'SXSD')
    and devclass = v_devclass.
    select single * from tstct
    where sprsl eq sy-langu
    and tcode eq p_tcode.
    format color col_positive intensified off.
    write:/(19) 'Transaction Code - ',
    20(20) p_tcode,
    45(50) tstct-ttext.
    skip.
    if not jtab[] is initial.
    write:/(105) sy-uline.
    format color col_heading intensified on.
    Sorting the internal Table
    sort jtab by object.
    data : wf_txt(60) type c,
    wf_smod type i ,
    wf_badi type i ,
    wf_object2(30) type c.
    clear : wf_smod, wf_badi , wf_object2.
    Get the total SMOD.
    loop at jtab into wa_tadir.
    at first.
    format color col_heading intensified on.
    write:/1 sy-vline,
    2 'Enhancement/ Business Add-in',
    41 sy-vline ,
    42 'Description',
    105 sy-vline.
    write:/(105) sy-uline.
    endat.
    clear wf_txt.
    at new object.
    if wa_tadir-object = 'SMOD'.
    wf_object2 = 'Enhancement' .
    elseif wa_tadir-object = 'SXSD'.
    wf_object2 = ' Business Add-in'.
    endif.
    format color col_group intensified on.
    write:/1 sy-vline,
    2 wf_object2,
    105 sy-vline.
    endat.
    case wa_tadir-object.
    when 'SMOD'.
    wf_smod = wf_smod + 1.
    select single modtext into wf_txt
    from modsapt
    where sprsl = sy-langu
    and name = wa_tadir-obj_name.
    format color col_normal intensified off.
    when 'SXSD'.
    For BADis
    wf_badi = wf_badi + 1 .
    select single text into wf_txt
    from sxs_attrt
    where sprsl = sy-langu
    and exit_name = wa_tadir-obj_name.
    format color col_normal intensified on.
    endcase.
    write:/1 sy-vline,
    2 wa_tadir-obj_name hotspot on,
    41 sy-vline ,
    42 wf_txt,
    105 sy-vline.
    at end of object.
    write : /(105) sy-uline.
    endat.
    endloop.
    write:/(105) sy-uline.
    skip.
    format color col_total intensified on.
    write:/ 'No.of Exits:' , wf_smod.
    write:/ 'No.of BADis:' , wf_badi.
    else.
    format color col_negative intensified on.
    write:/(105) 'No userexits or BADis exist'.
    endif.
    else.
    format color col_negative intensified on.
    write:/(105) 'Transaction does not exist'.
    endif.
    at line-selection.
    data : wf_object type tadir-object.
    clear wf_object.
    get cursor field field1.
    check field1(8) eq 'WA_TADIR'.
    read table jtab with key obj_name = sy-lisel+1(20).
    move jtab-object to wf_object.
    case wf_object.
    when 'SMOD'.
    set parameter id 'MON' field sy-lisel+1(10).
    call transaction 'SMOD' and skip first screen.
    when 'SXSD'.
    set parameter id 'EXN' field sy-lisel+1(20).
    call transaction 'SE18' and skip first screen.
    endcase.
    reward for useful answers
    regards
    Nagesh.Paruchuri

  • Display changes for classification in customer master data

    Dear Experts,
    In Customer master data, FD03, we have additional classification (Extras - Classification).
    My question is, if we changed the classification in master data, how to know when the display changes of the classification?
    I have checked through tcode FD04 but no display changes found of classifications.
    Kindly advice.
    Thank you

    Hi Suhas,
    Thanks for your reply.
    I have checked but environment-doc changes is grey.
    I thougt its a authorization issue but after checked from /nsu53, my authorization is already completed.
    Kindly advice.
    Thank you

  • Customized delta data source for deleting data record in the source system.

    Hello Gurus,
           there is a customized delta data source,  how to implement delta function for deleting data record in the source system?
    I mean if there is record deleted in the source sytem, how to notify SAP BW system for this deleting change by this customized delta
    data source?
    Many thanks.

    Hi,
    when ever record deleted we need to write the code to insert the record in  Z table load this records into BW in a cube with similar structure.while loading into this cube multiply the Keyfigure by -1.
    add this cube in the Multi Provider.The union of the records in the orginal cube and the cube having deleted records will result in zero vale and will not be displayed in report .
    Regards,

Maybe you are looking for