Reset an IIR Filter with new data

hello one and all,  i am creating waveforms and pumping them into an IIR filter.  at times the parameters of the experiment change and i want to reset the data that the IIR filter is drawing off of so that it is calculating from scratch.  i know about the reset input of the IIR filter, however, it is for redesigning the filter coefficients, etc., as stated in the labview help file.  so how do you tell the IIR filter that the waveforms coming in are now a new set of waveforms?
thank you in advance.
lucas

Hi Lucas,
I assume you are using the Digital IIR Filter.vi.  The logic is not immediately obvious on the diagram of the instances of this VI, but there are two sorts of reset that can happen, namely a coefficient redesign, and a filter state reset.  The coefficient redesign happens when either:
1.  It is the first time the VI has been called
2.  The reset control (on Digital IIR Filter.vi) is true
3.  The dt value of the waveform changes from the previous iteration
4.  The design specifications change from the previous iteration.
The filter state reset (which is what you want I think) will happen:
1.  If there has been a coefficient redesign
2.  If the timestamp of the last point of the previous waveform does not match the timestamp of the first point of the current waveform + dt.  This is basically an assumption of continuity of the waveforms over consecutive calls to the VI.
I think you have two choices to get the behavior you want.  First, you can use the continuity of the waveforms as a way of controlling the reset of the filter state.  When you want a reset, then make the current waveform discontinuous.  The second option would be to use the lower level VIs on the signal processing->filters->IIR palette.  This allows you to explicitly separate the design and implementation of the filter on your diagram, with explicit reset control on the filter states.

Similar Messages

  • A serious problem with JTable to update with new data.

    I am customizing a JTable. In the table 3 rows and row wise same data presents. After every 30 sec table will be update with new data. But a exception is coming like: ArrayIndexOutofBound 4>=0. Exception is not coming so frequently some time it comes within 1 min or after 1 hour of program running and each time *4>=0* is varies with different number.
    Here is the model i am using and to update table i am calling setTableData( ) with updated vector as a argument.
    public class MyModel extends AbstractTableModel {
              protected Vector m_vector;          
              public MyModel(Vector m_vector) {     this.m_vector = m_vector;     }
              public int getColumnCount() {          
                   return m_vector==null ? 0 : m_vector.size();           
              public int getRowCount() {     return 3;          }
              public String getColumnName(int col) {     return null;     }
              public Object getValueAt(int row, int col) {
                       if (col < 0 || col>=getColumnCount())
                      return null;
                  try{
                  MyData column = (MyData)m_vector.elementAt(col);               
                  switch (row) {
                      case 0: return column.gate;
                      case 1: return column.time;
                      case 2: return column.status;            
                  }}catch(Exception e){
                        System.out.println("Error is here");
                        e.printStackTrace();
                  return null;               
              public Class getColumnClass(int c) {return getValueAt(0, c).getClass();     }
              public boolean isCellEditable(int row, int col) {
                   if (row == 1) { return false; } else { return true; }
              public void setTableData( Vector mData)
                         this.m_vector = new Vector(mData);                    
                         fireTableStructureChanged();
         }Please help me out.

    This is the exception:
    java.lang.ArrayIndexOutOfBoundsException: 4 >= 3
         at java.util.Vector.elementAt(Vector.java:431)
         at javax.swing.table.DefaultTableColumnModel.getColumn(DefaultTableColumnModel.java:277)
         at javax.swing.plaf.basic.BasicTableUI.paintCells(BasicTableUI.java:1047)
         at javax.swing.plaf.basic.BasicTableUI.paint(BasicTableUI.java:974)
         at javax.swing.plaf.ComponentUI.update(ComponentUI.java:142)
         at javax.swing.JComponent.paintComponent(JComponent.java:541)
         at javax.swing.JComponent.paint(JComponent.java:808)
         at javax.swing.JComponent.paintChildren(JComponent.java:647)
         at javax.swing.JComponent.paint(JComponent.java:817)
         at javax.swing.JViewport.paint(JViewport.java:722)
         at javax.swing.JComponent.paintChildren(JComponent.java:647)
         at javax.swing.JComponent.paint(JComponent.java:817)
         at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4787)
         at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4740)
         at javax.swing.JComponent._paintImmediately(JComponent.java:4685)
         at javax.swing.JComponent.paintImmediately(JComponent.java:4488)
         at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:410)
         at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:117)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)and Column may increase/decrease depending upon data retrieved.

  • Updating graph with new data

    I have a problem updating my graphs with new data in Illustrator. When I update them with new data each month the y and x-axis tend to change font and size.
    What can be the problem? Please help me!

    Hi Rajasekar
    You can purchase the enterprise toolkit fron NI, it includes a "database connectivity toolkit".
    As regards the design pattern to do you you describe, it will depends on the refresh rate you need and the rate at which you want to write your data to the database.
    I would have 2 loops :
     - one acquiring the data and putting it in a queue,
     - and a second that get the data from the queue, logging data to database and refreshing the graph.
    If the write time to database is too long and slows down the graph refresh you place it in another loop.
    Hope this helps
    When my feet touch the ground each morning the devil thinks "bloody hell... He's up again!"

  • Problem defining partition for storing value 0 with new data

    Hi forumers,
    I've a problem with partitioning and need some advices.
    I've a table that will be partitioned by column Process_N which have values from 0 to 50000:
    Process_N between 1 and 29999 represents old data;
    Process_N >= 30000 represents new data;
    Process_N = 0 means the row is not processed yet and so these value represents new data too.
    Can I have a partition for old values (from 1 to 29999) and another partition to store new values (0 + values >= 30000) ? Hou can I define that ?
    Thank you in advance.
    Best Regards,
    Helena

    Helena,
    What's your oracle version? I think it will be better to create 3 partitions usign RANGE partitions (< 1, 2-29999, >=30000 <=50000). Is there a specific reason you want to include 0 and values greater than 29000 in one partition? What the significant difference between 0 and 30000 specially as both represent new data?
    CREATE TABLE my_part_table (
       process_n NUMBER NULL,
       my_data VARCHAR2 (1 BYTE) NULL,
       my_other_data VARCHAR2 (30 BYTE) NULL,
       data_state NUMBER NULL
    TABLESPACE test_data
    PARTITION BY RANGE (process_n)
       (PARTITION partition_0
           VALUES LESS THAN (1)
           TABLESPACE test_data,
       PARTITION partition_2_29999
          VALUES LESS THAN (30000)
          TABLESPACE test_data,
       PARTITION partition_30000
          VALUES LESS THAN (50001)
          TABLESPACE test_data);Regards

  • How to trigger process chain when datasource is loaded with new data? PUSH

    Hi all,
    Till now we use the pull method to load data in BW which is done manually......but we would like to work with the PUSH method where whenever new data is loaded in the datasource an event is triggered which inturn triggers the process chain...
    how is this possible? can we do this on a timestamp on the datasource to trigger the event?
    rgds,
    wills

    hi Geo,
    Thanks for ur response. I appreciate it.
    The case is slightly different. I am working on Bank analyzer data which is residing in a source system defined to load the results from the Results DataBase, a part of the Bank analyzer.
    If it was R3 we have the standard calling procedures...but now the data in not in R3 but in Bank analyzer.
    I am keen to look at some procedure to push the data automatically whenever an end user execution is done at the BA level into the BW.
    ur help would be highly appreciated....
    thks,
    rgds.
    wills

  • Problem with new data-sources format

    Hi, I m moving to Oracle IAS 10.1.3, so i m testing the application with the standalone version.
    I use the datasource converter just like the manual say.
    this is how datasources looks..
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <data-sources>
    <managed-data-source user="scott" password="tiger" login-timeout="-1" connection-pool-name="OracleDS_connectionPool" jndi-name="jdbc/OracleCoreDS" name="OracleDS_jdbc/OracleCoreDS"/>
    <managed-data-source login-timeout="-1" connection-pool-name="OracleDS_connectionPool" jndi-name="jdbc/OracleCoreDS_non_tx" name="jdbc/OracleCoreDS_non_tx_jdbc/OracleCoreDS_non_tx"/>
    <managed-data-source login-timeout="-1" connection-pool-name="OracleDS_connectionPool" jndi-name="jdbc/OracleDS" name="jdbc/OracleDS_jdbc/OracleDS"/>
    <native-data-source user="user" password="pass" url="jdbc:oracle:thin:@70.101.0.200:1521:DEV" login-timeout="-1" data-source-class="oracle.jdbc.pool.OracleDataSource" jndi-name="jdbc/etgs" name="etgs"/>
    <connection-pool name="etgs_connectionPool" connection-retry-interval="0" inactivity-timeout="30" max-connections="2147483647">
    <connection-factory factory-class="oracle.jdbc.pool.OracleDataSource" user="etgs" password="etgs" url="jdbc:oracle:thin:@70.101.0.200:1521:DEV" login-timeout="-1"/>
    </connection-pool>
    <connection-pool name="OracleDS_connectionPool" connection-retry-interval="0" inactivity-timeout="30" max-connections="2147483647">
    <connection-factory factory-class="oracle.jdbc.driver.OracleDriver" user="scott" password="tiger" url="jdbc:oracle:thin:@//localhost:1521/oracle.regress.rdbms.dev.us.oracle.com" login-timeout="-1"/>
    </connection-pool>
    </data-sources>
    When I start de oc4j, I have the following problem:
    C:\soft\oc4j_101300\bin>oc4j -start
    Starting OC4J from C:\soft\oc4j_101300\j2ee\home ...
    [2006-08-23 17:54:46,210] WARN org.hibernate.cfg.HbmBinder - Could not perform validation checks for component as the c
    lass ar.com.tgs.spac.domain.solicitud.SolicitudProgramada was not found
    [2006-08-23 17:54:49,882] WARN org.hibernate.util.JDBCExceptionReporter - SQL Error: 17002, SQLState: null
    [2006-08-23 17:54:49,882] ERROR org.hibernate.util.JDBCExceptionReporter - Excepci¾n de E/S: Socket is not connected
    [2006-08-23 17:54:49,897] WARN org.hibernate.cfg.SettingsFactory - Could not obtain connection metadata
    java.sql.SQLException: Excepci¾n de E/S: Socket is not connected
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:175)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:287)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:328)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:430)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:151)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:608)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:218)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:159)
    at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionP
    rovider.java:80)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:72)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:1463)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1004)
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:777
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:70
    3)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowi
    reCapableBeanFactory.java:1058)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:363)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueRes
    olver.java:176)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAuto
    wireCapableBeanFactory.java:1012)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCap
    ableBeanFactory.java:823)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:345)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueRes
    olver.java:176)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAuto
    wireCapableBeanFactory.java:1012)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCap
    ableBeanFactory.java:823)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:345)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueRes
    olver.java:176)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:105)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedMap(BeanDefinitionValueRe
    solver.java:225)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:117)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.resolveConstructorArguments(Abst
    ractAutowireCapableBeanFactory.java:713)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAuto
    wireCapableBeanFactory.java:611)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:329)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueRes
    olver.java:176)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAuto
    wireCapableBeanFactory.java:1012)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCap
    ableBeanFactory.java:823)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:345)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueRes
    olver.java:176)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAuto
    wireCapableBeanFactory.java:1012)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCap
    ableBeanFactory.java:823)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:345)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueRes
    olver.java:176)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionV
    alueResolver.java:105)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAuto
    wireCapableBeanFactory.java:1012)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCap
    ableBeanFactory.java:823)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapab
    leBeanFactory.java:345)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:226)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:147)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListable
    BeanFactory.java:275)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:318)
    at org.springframework.web.context.support.AbstractRefreshableWebApplicationContext.refresh(AbstractRefreshableW
    ebApplicationContext.java:134)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:230)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:156)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:48)
    at com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1015)
    at com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:649)
    at com.evermind.server.ApplicationStateRunning.getHttpApplication(ApplicationStateRunning.java:428)
    at com.evermind.server.Application.getHttpApplication(Application.java:512)
    at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.createHttpApplicationFromReference(HttpSite
    .java:1975)
    at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.<init>(HttpSite.java:1894)
    at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:633)
    at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:302)
    at com.evermind.server.http.HttpServer.setSites(HttpServer.java:273)
    at com.evermind.server.http.HttpServer.setConfig(HttpServer.java:180)
    at com.evermind.server.ApplicationServer.initializeHttp(ApplicationServer.java:2296)
    at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:944)
    at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:113)
    at java.lang.Thread.run(Thread.java:595)
    [2006-08-23 17:54:50,179] WARN net.sf.ehcache.config.Configurator - No configuration found. Configuring ehcache from eh
    cache-failsafe.xml found in the classpath: code-source:/C:/soft/oc4j_101300/j2ee/home/applications/app-web/WEB-INF/lib/e
    hcache-1.1.jar!ehcache-failsafe.xml
    Any idea ?
    really thanks

    Another strange thing..
    My ABAP colleague, debugged the program for me and point out:
          *   get data class (only standard and user values)
    >         SELECT * FROM ddart INTO TABLE l_t_ddart
                                  ORDER BY tabart.
              DELETE l_t_ddart WHERE   ddclass <> 'STD'  AND
                                       ddclass <> 'USR'.
              LOOP AT l_t_ddart INTO l_s_ddart.
    The l_t_ddart table contains only 21 rows (without my new Data Class, which is visible under SE16!)! I checked under oracle sqlplus and SELECT * FROM SAP<SID>.ddart; returned 22 rows WITH my new Data Class!
    I'm a little bit confused...

  • Audigy vista driver with new date 16 Mar 2

    There is drivers for the Audigy cards and there is a new date 6 Mar 2007 with the same old number is this new or just a date change ?. And if new more info please on this version.

    No there is no change, same as the old drivers, ?why a new date ?? Asking CL this question.

  • Old Recharge Voucher with New Data Pass

    Hi Telstra, I have recently read about Telstra's new Data Pass (https://www.telstra.com.au/broadband/mobile-broadband/prepaid) for prepaid mobile broadband and it appears that it now has better value than the old plans. However, I have already purchased my $180 recharge voucher from Coles a few months ago and yet to use this recharge, and I am just wondering if I can take advantage of this new Data Pass using my old recharge. Perhaps I'm I able to go to the store, give my current recharge number and swap my $180 recharge + $10 cash with $140 Data Pass + $50 Data Pass? Or perhaps there are any other alternatives? Please let me know. Cheers!

    For anyone wondering how to do this change from the old plan to the data pass, it might be old hat news by now, but the tip is to into your Telstra account, and then "change rate plan" from within manage my or in your case, manage your account.You have to change rate plan to the new data pass.Took a few minutes for me, ... I am very happy Telstra brought in the data pass system.After you have changed your rate plan, you can then recharge with your voucher, either the $50 or the $140 ones online.Otherwise, if you don't change your rate plan, the other older rates will always appl/appear for you to recharge with it.

  • Help on moving frames with new Date()

    I'm a AS beginer and I need help. I trying to move frames accordind to the hour, for example: at 7 am the at frame 1 and at 8 am at frame 10. I have a code that moves the frames every one hour but I need also to move the by the half hour. For instance: at 7 am frame 1, at 7:30 am frame 5, and at 8 am frame 10. This is the code I have so far that moves ever hour:
    // new Date object
    myDate = new Date();
    myHour = myDate.getHours();
    _root.onLoad = function() {
    switch (myHour) {
    //this start at 7 am and end at 6 am
    case 7 :
      trace("It's 7:00 AM");
      switcher_mc.gotoAndStop(1);
      break;
    case 8 :
      trace("It's 8:00 AM");
      switcher_mc.gotoAndStop(3);
      break;
    case 9 :
      trace("It's 9:00 AM");
      switcher_mc.gotoAndStop(5);
      break;
    case 10 :
      trace("It's 10:00 AM");
      switcher_mc.gotoAndStop(7);
      break;
    and so on till 6 am. As you see I need some half hours for some frames.
    I will appreciate any help.
    Thanks in advance
    Pao Pao

    I'm sorry I don't get what you mean. As you see the frame noves when it get to the "case #" like "case 7" it goes to play when is seven am and case 19 goes to play when is 7 pm. what I want is how to get to 7.5 to go and play at 7:30.

  • End Routine is NOT modifying the DSO with new data after load into that DSO

    Hi all,
      I am creating an End Routine for DSO to populate a field ZFCMP_FLG (to store 'Y' ) with lookup from another DSO ZMDS_D01. This new field shows blank instead of 'Y', after activating the DSO. The RESULT_PACKAGE record is populated with 'Y' for ZFCMP_FLG  while debugging that End Routine and why it is NOT writing the modified records into DSO, please ? It is a Characteristic InfoObject with length 1 to store 'Y'. The following is some part of the code:
    DATA: wa_fcmp_flag   TYPE c VALUE 'Y'.
    LOOP AT RESULT_PACKAGE ASSIGNING <RESULT_FIELDS>.
        READ TABLE it_zmds_d01 INTO wa_zmds_d01 WITH KEY
                    /BIC/ZAUFNR    = <RESULT_FIELDS>-CS_ORDER
                    NOTIFICATN     = <RESULT_FIELDS>-NOTIFICATN  BINARY SEARCH.
         IF sy-subrc = 0.
           <RESULT_FIELDS>-/BIC/ZFCMP_FLG = wa_fcmp_flg.
        ENDIF.
    ENDLOOP.
    Thanks,
    Venkat.

    hi...
    Since you are using Field symbol to loop the internal Table there is no need to use the MODIFY Statement in the loop.
    So your code is correct only.
    But here you have to check the status of READ TABLE command in the debug mode.
    it may be failing that's why the RESULT_PACKAGE is not getting modified.
    Plz check it.
    Note: You may need to SORT the Int Table since you are using BINARY SEARCH. check below.
    DATA: wa_fcmp_flag   TYPE c VALUE 'Y'.
    Sort it_zmds_d01 by  /BIC/ZAUFNR    NOTIFICATN  .
    LOOP AT RESULT_PACKAGE ASSIGNING <RESULT_FIELDS>.
        READ TABLE it_zmds_d01 INTO wa_zmds_d01 WITH KEY
                    /BIC/ZAUFNR    = <RESULT_FIELDS>-CS_ORDER
                    NOTIFICATN     = <RESULT_FIELDS>-NOTIFICATN  BINARY SEARCH.
         IF sy-subrc = 0.
           <RESULT_FIELDS>-/BIC/ZFCMP_FLG = wa_fcmp_flg.
        ENDIF.
    ENDLOOP.

  • Unable to connect with new Data Source

    Hi everybody,
    After many developpment, I finally get my class to do what we need with crystal and webi report using Rebean and RAS SDK's.
    But, today we found a special case that I was thinking to solve following examples but the solutions given by the example do not work.
    Here is the case :
    We have Crystal report in BO using DSN file localted on the C:\ disk of the server. So, the Information for a such report founded in the IConnectionInfo object is :
    ConnectionInfo Kind = CRQE
    QE_DatabaseType = >ODBC (RDO)< (java.lang.String)
    SSO Enabled = >false< (java.lang.Boolean)
    Database DLL = >crdb_odbc.dll< (java.lang.String)
    QE_DatabaseName = >< (java.lang.String)
    QE_LogonProperties = >{FILEDSN=C:\path to DSN, UseDSNProperties=false, Trusted_Connection=false}< (com.crystaldecisions.sdk.occa.report.lib.PropertyBag)
    QE_SQLDB = >true< (java.lang.Boolean)
    QE_ServerDescription = >C:\path to DSN< (java.lang.String)
    Today, we had to import old crystal report in BO and for that report, the Data Source gives a DSN file on another disk R:\...
    So for the report where I found in a IConnectionInfo object a DSN file beginning by R:\, I have to change it by a new one pointing to the right DSN file on the C:\ disk. (The DSN file on the C:\ work perfectely because we can use it with other report).
    I follow this example : http://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/e068eba5-1f57-2c10-10a0-91e111c98bc7
    And so I get the following code where I put all the parameter need for the correct DSN file on the C:\ :
    ConnectionInfos ci = (ConnectionInfos)dbcontroller.getConnectionInfos(null).clone();
                   IConnectionInfo ici = ci.getConnectionInfo(0);
                   // Create a new connection and start setting new properties
                   IConnectionInfo newConnectionInfo1 = new ConnectionInfo();
                   newConnectionInfo1.setKind(ConnectionInfoKind.CRQE);
                   newConnectionInfo1.setUserName("momtest");
                   newConnectionInfo1.setPassword("testmom");
                   PropertyBag newpb = new PropertyBag();
                   newpb.put(PropertyBagHelper.CONNINFO_CRQE_DATABASETYPE,"ODBC (RDO)");
                   newpb.put(PropertyBagHelper.CONNINFO_SSO_ENABLED,false);
                   newpb.put(PropertyBagHelper.CONNINFO_DATABASE_DLL,"crdb_odbc.dll");
                   newpb.put(PropertyBagHelper.CONNINFO_CRQE_DATABASENAME,"");
                   newpb.put(PropertyBagHelper.CONNINFO_CRQE_SQLDB,true);
                   newpb.put(PropertyBagHelper.CONNINFO_CRQE_SERVERDESCRIPTION,"path to DSN");
                   PropertyBag LogonProperties = new PropertyBag();
                   LogonProperties.put("FILEDSN","path to DSN");
                   LogonProperties.put("UseDSNProperties", false);
                   LogonProperties.put("Trusted_Connection","false");
                   newpb.put(PropertyBagHelper.CONNINFO_CRQE_LOGONPROPERTIES,LogonProperties);
                   newConnectionInfo1.setAttributes(newpb);
                   try {
                        dbcontroller.replaceConnection(ici, newConnectionInfo1, null, DBOptions._useDefault);
                   catch (ReportSDKServerException error)
                     System.out.println(error.getServerError());
                   System.out.println("--->" + dbcontroller.getServerNames());
                   System.out.println("Refreshing document...");
                   clientDoc.refreshReportDocument();
                   System.out.println("Document refreshed");
                   ByteArrayInputStream byteIS = (ByteArrayInputStream) clientDoc.getPrintOutputController().export(ReportExportFormat.PDF);
    When we arrived at line "ByteArrayInputStream byteIS = (ByteArrayInputStream) clientDoc.getPrintOutputController().export(ReportExportFormat.PDF);" we get a message that the logon failed.
    Someone have an idea?
    Edited by: jerome.vervier on Dec 29, 2011 4:23 PM

    Thanks Adam
    It ensure me that I get no usual error in my code and it confims me what I think.
    Thanks for help !

  • JTable will not refresh with new data from database

    Hi,
    I have a JTable that does not recoginzed when the data has changed. The table is dynmaically populated with data from the database using a table model.
    Please help!!
    public JTable getUpdateContractTable() {
    QueryTableModel model;
    String [] dlrs = getSelectedDealers();
    String [] stats = getSelectedStatuses();
    String sql = buildContractQuery(dlrs, stats);
    try {
    if(isContractSet) {
    model = new QueryTableModel();
    model.setQuery(sql);
    table.setModel(model);
    table.setColumnModel(new UpdtCtrctColumnModel());
    table.invalidate();
    table.repaint();
    //model.fireTableChanged(new TableModelEvent(model));
    else {
    model = new QueryTableModel();
    UpdtCtrctColumnModel column = new UpdtCtrctColumnModel();
    model.setQuery(sql);
    table = new JTable(model, column);
    table.createDefaultColumnsFromModel();
    table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    table.setPreferredScrollableViewportSize(new Dimension(500, 70));
    model.fireTableChanged(null);
    isContractSet = true;
    catch (Exception e) {
    System.out.println(e.getMessage());
    //JOptionPane.show
    //.showMessageDialog("Error: " + e.getMessage(),
    // "Click Ok",
    // JOptionPane.INFORMATION_MESSAGE);
    return table;
    }

    thank you for your help. i finally got it to refresh. i have a follow-up question if you don't mind answering it. i have 2 jtables where one depends on the other. when i do a refresh i want the other table to disappear, so i call the getContentPane().remove(component), but the table doesn't disappear. what should i do.
    anthony

  • Weird Problems With New Data Plan

    Hi. I just received a new Droid smartphone and have been having a great time looking through the phone and seeing all of the cool things you can do with it. I have downloaded a couple of programs and what not by connecting to my home Wi-Fi service, but I haven't used up THAT much MB's of space. However, this morning I got a text from verizon saying that I exceeded my $15 a month Data limit, but I don't see how this is possible. When I go to my account online and check out how much I've used, it tells me I've used up about 28 MB's out of 150, which is the limit. Is this just a glitch or is it a problem I need to to address with haste? Will it add on to the bill? Also, has anyone else had this problem before?

    It can take a bit of time to update, like the last poster wrote. If I can make a suggestion, though: with using a droid device, consider placing the unlimited package and cutting the loss from the increase. If you go over, even by a byte, it will charge you for another full 150MB allowance, basically eliminating the savings. The Droid devices are insatiable data hogs (it is like slop to them). I see a lot of instances where users go over this feature when attempting to save a bit of money. On the Droid phones, it is usually not worth the risk of overage.

  • Env: Weblogic 8.1.5 Getting empty return in test view with new data

    Hi, I am using Weblogic 8.1.5, Basically a run down of this issue is that my response in test view, is completely Empty when I add a new piece of data in the response current code example below:
      SuccessResponseType srtype = SuccessResponseType.Factory.newInstance();
                srtype.setFacDesig(inFacDesig);
                srtype.setFacType(inFacType);
                srtype.setFacTermA(inTermA);
                srtype.setFacTermZ(inTermZ);
                srtype.setNotes(NoteRtn);
                srtype.setE3Array(rtn);
                Response.setSuccessResponse(srtype);Basically when srtype.setNotes(NoteRtn); is added in test view NONE of the values get populated, but once I comment srtype.setNotes(NoteRtn); out all the other values get populated in the response. At this point I am just plugging dummy data for the value of NoteRtn just to figure out why its doing this. Here is some example output.
    This is a response when the new line is commented out : (Its a decent amount of stuff so I cut some out, but you get the idea)
    <ns:successResponse>
    <ns:FacDesig>20027</ns:FacDesig>
    <ns:FacType>T1F</ns:FacType>
    <ns:FacTermA>MMPHTNMAFD1</ns:FacTermA>
    <ns:FacTermZ>MMPHTNMA43T</ns:FacTermZ>
    <ns:E3info>
    <ns:E3FacDesig>7101</ns:E3FacDesig>
    <ns:E3FacType>E3</ns:E3FacType>
    </ns:E3info>
    </ns:successResponse>
    This is what I get when I add in srtype.setNotes(NoteRtn);
    <ns:successResponse>
    </ns:successResponse>
    its just completely empty. My experience with weblogic and webservices is limited as it is, I am basically looking for someone to point me in the right direction for getting this resolved. I did not code the app I am just enhancing to in essence just add 2 strings of data to the response. The .xsd file is properly set up with the new elements and the response in the .xsd is properly set up. I am just at a loss as to what can cause the whole response to go kaput, by adding one more response type.
    Anyway, Thanks in advance

    Hi, I am using Weblogic 8.1.5, Basically a run down of this issue is that my response in test view, is completely Empty when I add a new piece of data in the response current code example below:
      SuccessResponseType srtype = SuccessResponseType.Factory.newInstance();
                srtype.setFacDesig(inFacDesig);
                srtype.setFacType(inFacType);
                srtype.setFacTermA(inTermA);
                srtype.setFacTermZ(inTermZ);
                srtype.setNotes(NoteRtn);
                srtype.setE3Array(rtn);
                Response.setSuccessResponse(srtype);Basically when srtype.setNotes(NoteRtn); is added in test view NONE of the values get populated, but once I comment srtype.setNotes(NoteRtn); out all the other values get populated in the response. At this point I am just plugging dummy data for the value of NoteRtn just to figure out why its doing this. Here is some example output.
    This is a response when the new line is commented out : (Its a decent amount of stuff so I cut some out, but you get the idea)
    <ns:successResponse>
    <ns:FacDesig>20027</ns:FacDesig>
    <ns:FacType>T1F</ns:FacType>
    <ns:FacTermA>MMPHTNMAFD1</ns:FacTermA>
    <ns:FacTermZ>MMPHTNMA43T</ns:FacTermZ>
    <ns:E3info>
    <ns:E3FacDesig>7101</ns:E3FacDesig>
    <ns:E3FacType>E3</ns:E3FacType>
    </ns:E3info>
    </ns:successResponse>
    This is what I get when I add in srtype.setNotes(NoteRtn);
    <ns:successResponse>
    </ns:successResponse>
    its just completely empty. My experience with weblogic and webservices is limited as it is, I am basically looking for someone to point me in the right direction for getting this resolved. I did not code the app I am just enhancing to in essence just add 2 strings of data to the response. The .xsd file is properly set up with the new elements and the response in the .xsd is properly set up. I am just at a loss as to what can cause the whole response to go kaput, by adding one more response type.
    Anyway, Thanks in advance

  • Removing rows and inserting new rows with new data in JTAble!!! (Plz. help)

    I have a problem, The scenario is that when I click any folder that si in my JTable's first row, the table is update by removing all the rows and showing only the contents of my selected folder. Right now it's not removing the rows and instead throwing exceptions. The code is attached. The methods to look are upDateTabel(...) and clearTableData(....), after clearing all my rows then I proceed on adding my data to the Jtable and inserting rows but it's not being done. May be I have a problem in my DefaultTableModel class. Please see the code below what I am doing wrong and how should I do it. Any help is appreciated.
    Thanks
    import javax.swing.*;
    import javax.swing.event.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.table.*;
    import javax.swing.border.*;
    import java.io.*;
    import java.text.SimpleDateFormat;
    import java.util.*;
    public class SimpleTable extends JPanel{
         /** Formats the date */
         protected SimpleDateFormat           formatter;
    /** variable to hold the date and time in a raw form for the directory*/
    protected long                          dateDirectory;
    /** holds the readable form converted date for the directories*/
    protected String                     dirDate;
    /** holds the readable form converted date for the files*/
    protected String                     fileDate;
    /** variable to hold the date and time in a raw form for the file*/
    protected long                          dateFile;
    /** holds the length of the file in bytes */
    protected long                         totalLen;
    /** convert the length to the wrapper class */
    protected Long                         longe;
    /** Vector to hold the sub directories */
    protected Vector                     subDir;
    /** holds the name of the selected directory */
    protected String                    dirNameHold;
    /** converting vector to an Array and store the values in this */
    protected File                     directoryArray[];
    /** hashtable to store the key-value pair */
    protected static Hashtable hashTable = new Hashtable();
    /** refer to the TableModel that is the default*/
    protected MyTableModel               tableModel;
    /** stores the path of the selected file */
    protected static String               fullPath;
    /** stores the currently selected file */
    protected static File selectedFilename;
    /** stores the extension of the selected file */
    protected static String           extension;
    protected int COLUMN_COUNT = 4;
         protected Vector data = new Vector( 0, 1 );
         protected final JTable table;
    /** holds the names of the columns */
    protected final String columnNames[] = {"Name", "Size", "Type", "Modified"};
    public SimpleTable(File directoryArray[])
              this.setLayout(new BorderLayout());
              this.setBorder( BorderFactory.createEmptyBorder( 0, 0, 0, 0 ) );
              (SimpleTable.hashTable).clear();
              formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm aaa");
              for(int k = 0; k < directoryArray.length; k++)
                   if(directoryArray[k].isDirectory())
                        dateDirectory = directoryArray[k].lastModified();
                        dirDate = formatter.format(new java.util.Date(dateDirectory));
                        data.addElement( new MyObj( directoryArray[k].getName(), "", "File Folder", "" + dirDate ) );
                        (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);                    
                   else if(directoryArray[k].isFile())
                        dateDirectory = directoryArray[k].lastModified();
                        fileDate = formatter.format(new java.util.Date(dateDirectory));
                        totalLen = directoryArray[k].length();
                        longe = new Long(totalLen);
                        data.addElement( new MyObj( directoryArray[k].getName(), longe + " Bytes", "", "" + fileDate ) );
                        (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);
    tableModel = new MyTableModel();
              table = new JTable( tableModel );
              table.getTableHeader().setReorderingAllowed(false);
              table.setRowSelectionAllowed(false);
              table.setBorder( BorderFactory.createEmptyBorder( 0, 0, 0, 0 ) );
              table.setShowHorizontalLines(false);
              table.setShowVerticalLines(false);
              table.addMouseListener(new MouseAdapter()
    public void mouseReleased(MouseEvent e)
         Object eventTarget = e.getSource();
                        if( eventTarget == table )
                             upDateTable(table);
                             table.tableChanged( new javax.swing.event.TableModelEvent(tableModel) ) ;
              DefaultTableCellRenderer D_headerRenderer = (DefaultTableCellRenderer ) table.getTableHeader().getDefaultRenderer();
              table.getColumnModel().getColumn(0).setHeaderRenderer(D_headerRenderer );
              ((DefaultTableCellRenderer)D_headerRenderer).setToolTipText("File and Folder in the Current Folder");
    //Create the scroll pane and add the table to it.
    JScrollPane scrollPane = new JScrollPane(table);
    //Add the scroll pane to this window.
    this.add(scrollPane, BorderLayout.CENTER);
    * Searches the Hashtable and returns the path of the folder or the value.
    public File findPath(String value)
         return (File)((SimpleTable.hashTable).get(value));
    * This clears the previous data in the JTable
    public void clearTableData(JTable table)
         for(int row = 0; row < table.getRowCount() ; row++)
                   //for (int col = 0; col < table.getColumnCount() ; col++)
                        tableModel.deleteSelections( row );
              tableModel.fireTableStructureChanged();
              tableModel.fireTableRowsDeleted(0,table.getRowCount());
              //table.getModel().fireTableChanged(new TableModelEvent(table.getModel()));
    private void upDateTable(JTable table)
    if((table.getSelectedColumn() == 0) && ((table.getColumnName(0)).equals(columnNames[0])))
         dirNameHold =(String) table.getValueAt(table.getSelectedRow(),table.getSelectedColumn());
                   File argument = findPath(dirNameHold);
                   if(argument.isFile())
                        CMRDialog.fileNameTextField.setText(argument.getName());
                        try
                             fullPath = argument.getCanonicalPath();                          
                             selectedFilename = argument.getCanonicalFile();                          
    CMRDialog.filtersComboBox.removeAllItems();
                             extension = fullPath.substring(fullPath.lastIndexOf('.'));
                             CMRDialog.filtersComboBox.addItem("( " + extension + " )" + " File");
                        catch(IOException e)
                             System.out.println("THE ERROR IS " + e);
                        return;
                   else if(argument.isDirectory())
                        String path = argument.getName();
                             //find the system dependent file separator
                             //String fileSeparator = System.getProperty("file.separator");
                        CMRDialog.driveComboBox.addItem(" " + path);
              subDir = Search.subDirs(argument);
              /**TBD:- needs a method to convert the vector to an array and return the array */
              directoryArray = new File[subDir.size()];
                   int indexCount = 0;
                   /** TBD:- This is inefficient way of converting a vector to an array */               
                   Iterator e = subDir.iterator();               
                   while( e.hasNext() )
                        directoryArray[indexCount] = (File)e.next();
                        indexCount++;
              /** now calls this method and clears the previous data */
              clearTableData(table);     
                   (SimpleTable.hashTable).clear();
                   //data = new Object[this.getRowTotal(directoryArray)][this.getColumnTotal()];
                   formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm aaa");
                   for(int k = 0; k < directoryArray.length; k++)
                        if(directoryArray[k].isDirectory())
                             dateDirectory = directoryArray[k].lastModified();
                             dirDate = formatter.format(new java.util.Date(dateDirectory));
                             data.addElement( new MyObj( directoryArray[k].getName(), "", "File Folder", "" + dirDate ) );
                             (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);                    
                        else if(directoryArray[k].isFile())
                             dateDirectory = directoryArray[k].lastModified();
                             fileDate = formatter.format(new java.util.Date(dateDirectory));
                             totalLen = directoryArray[k].length();
                             longe = new Long(totalLen);
                             data.addElement( new MyObj( directoryArray[k].getName(), longe + " Bytes", "", "" + fileDate ) );
                             (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);
              // tableModel.fireTableDataChanged();          
              // tableModel.fireTableRowsInserted(0,1);
              table.revalidate();
              table.validate();               
    class MyTableModel extends DefaultTableModel
              int totalRows;
              int totalCols;
              public MyTableModel()
                   super();
                   setColumnIdentifiers (columnNames);
                   this.totalRows = data.size();
                   this.totalCols = columnNames.length;
              // this will return the row count of your table
              public int getRowCount()
                   return totalRows;
              // this return the column count of your table
              public int getColumnCount()
                   return totalCols;
              // this return the data for each cell in your table
              public Object getValueAt(int row, int col)
                   MyObj obj = (MyObj)data.elementAt( row );
                   if( obj != null )
                        if( col == 0 ) return( obj.first );
                        else if( col == 1 ) return( obj.last );
                        else if( col == 2 ) return( obj.third );
                        else if( col == 3 ) return( obj.fourth );
                        else return( "" );
                   return "";
              // if you want your table to be editable then return true
              public boolean isCellEditable(int row, int col)
                   return false;
              // if your table is editable edit the data vector here and
              // call table.tableChanged(...)
              public void setValueAt(Object value, int row, int col)
              protected void deleteSelections (int rows)
                   try
                        removeRow(rows);
                   catch(ArrayIndexOutOfBoundsException e)
                        System.out.println("The error in the row index " + rows);
                   fireTableDataChanged() ;
    class MyObj
              String first;
              String last;
              String third;
              String fourth;
              public MyObj( String f, String l, String t, String fo )
                   this.first = f;
                   this.last = l;
                   this.third = t;
                   this.fourth = fo;
    #####################################

    The following code works fine but it doesn't show me the new updated date in my JTable. I tried to print the values that I am getting and it does give the values on the prompt but doesn't show me on the JTable only first two are shown and the rest of the table is filled with the same values. I don't know what's going on and am tired of this TableModel thing so pla. take a time to give me some suggestions. Thanks
    import javax.swing.*;
    import javax.swing.event.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.table.*;
    import javax.swing.border.*;
    import java.io.*;
    import java.text.SimpleDateFormat;
    import java.util.*;
    public class SimpleTable extends JPanel {
         /** Formats the date */
         protected SimpleDateFormat           formatter;
    /** two-dimensional array to hold the information for each column */
    protected Object                     data[][];
    /** variable to hold the date and time in a raw form for the directory*/
    protected long                          dateDirectory;
    /** holds the readable form converted date for the directories*/
    protected String                     dirDate;
    /** holds the readable form converted date for the files*/
    protected String                     fileDate;
    /** variable to hold the date and time in a raw form for the file*/
    protected long                          dateFile;
    /** holds the length of the file in bytes */
    protected long                         totalLen;
    /** convert the length to the wrapper class */
    protected Long                         longe;
    /** Vector to hold the sub directories */
    protected Vector                     subDir;
    /** holds the name of the selected directory */
    protected String                    dirNameHold;
    /** converting vector to an Array and store the values in this */
    protected File                     directoryArray[];
    /** hashtable to store the key-value pair */
    protected static Hashtable hashTable = new Hashtable();
    /** refer to the TableModel that is the default*/
    protected DefaultTableModel      model;
    /** stores the path of the selected file */
    protected static String               fullPath;
    /** stores the currently selected file */
    protected static File selectedFilename;
    /** stores the extension of the selected file */
    protected static String           extension;
    protected Vector                     m = new Vector(0,1);
    /** holds the names of the columns */
    protected final String columnNames[] = {"Name", "Size", "Type", "Modified"};
    public SimpleTable(File directoryArray[])
              this.setLayout(new BorderLayout());
              this.setBorder( BorderFactory.createEmptyBorder( 0, 0, 0, 0 ) );
              (SimpleTable.hashTable).clear();
              data = new Object[this.getRowTotal(directoryArray)][this.getColumnTotal()];
              formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm aaa");
              for(int k = 0; k < directoryArray.length; k++)
                   if(directoryArray[k].isDirectory())
                        data[k][0] = directoryArray[k].getName();
                        data[k][2] = "File Folder";
                        dateDirectory = directoryArray[k].lastModified();
                        dirDate = formatter.format(new java.util.Date(dateDirectory));
                        data[k][3] = dirDate;
                        (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);                    
                   else if(directoryArray[k].isFile())
                        data[k][0] = directoryArray[k].getName();
                        totalLen = directoryArray[k].length();
                        longe = new Long(totalLen);
                        data[k][1] = longe + " Bytes";
                        dateFile = directoryArray[k].lastModified();
                        fileDate = formatter.format(new java.util.Date(dateFile));
                        data[k][3] = fileDate;
                        (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);
    model = new DefaultTableModel();
    model.addTableModelListener( new TableModelListener(){
              public void tableChanged( javax.swing.event.TableModelEvent e )
                   System.out.println("************ I am inside the table changed method ********" );
              final JTable table = new JTable(model);
              table.getTableHeader().setReorderingAllowed(false);
              table.setRowSelectionAllowed(false);
              table.setBorder( BorderFactory.createEmptyBorder( 0, 0, 0, 0 ) );
              table.setShowHorizontalLines(false);
              table.setShowVerticalLines(false);
              table.addMouseListener(new MouseAdapter()
    /* public void mousePressed(MouseEvent e)
    //System.out.println("The clicked component is " + table.rowAtPoint(e.getPoint()) + "AND the number of clicks is " + e.getClickCount());
    /* if(e.getClickCount() >= 2 &&
    (table.getSelectedColumn() == 0) &&
    ((table.getColumnName(0)).equals(columnNames[0])))
         //System.out.println("The clicked component is " + table.rowAtPoint(e.getPoint()) + "AND the number of clicks is " + e.getClickCount());
         upDateTable(table);
    public void mouseReleased(MouseEvent e)
    //System.out.println("The clicked component is " + table.rowAtPoint(e.getPoint()) + "AND the number of clicks is " + e.getClickCount());
    /* if(e.getClickCount() >= 2 &&
    (table.getSelectedColumn() == 0) &&
    ((table.getColumnName(0)).equals(columnNames[0]))) */
         //System.out.println("The clicked component is " + table.rowAtPoint(e.getPoint()) + "AND the number of clicks is " + e.getClickCount());
         upDateTable(table);
              /** set the columns */
              for(int c = 0; c < columnNames.length; c++)
                   model.addColumn(columnNames[c]);
              /** set the rows */
              for(int r = 0; r < data.length; r++)
                   model.addRow(data[r]);
              DefaultTableCellRenderer D_headerRenderer = (DefaultTableCellRenderer ) table.getTableHeader().getDefaultRenderer();
              table.getColumnModel().getColumn(0).setHeaderRenderer(D_headerRenderer );
              ((DefaultTableCellRenderer)D_headerRenderer).setToolTipText("File and Folder in the Current Folder");
    //Create the scroll pane and add the table to it.
    JScrollPane scrollPane = new JScrollPane(table);
    //Add the scroll pane to this window.
    this.add(scrollPane, BorderLayout.CENTER);
    * Returns the number of columns
    public int getColumnTotal()
         return columnNames.length;
    * Returns the number of rows
    public int getRowTotal(Object directoryArray[])
         return directoryArray.length;
    private void upDateTable(JTable table)
    if((table.getSelectedColumn() == 0) && ((table.getColumnName(0)).equals(columnNames[0])))
         dirNameHold =(String) table.getValueAt(table.getSelectedRow(),table.getSelectedColumn());
                   File argument = findPath(dirNameHold);
                   if(argument.isFile())
                        CMRDialog.fileNameTextField.setText(argument.getName());
                        try
                             fullPath = argument.getCanonicalPath();                          
                             selectedFilename = argument.getCanonicalFile();                          
    CMRDialog.filtersComboBox.removeAllItems();
                             extension = fullPath.substring(fullPath.lastIndexOf('.'));
                             CMRDialog.filtersComboBox.addItem("( " + extension + " )" + " File");
                        catch(IOException e)
                             System.out.println("THE ERROR IS " + e);
                        return;
                   else if(argument.isDirectory())
                        String path = argument.getName();
                             //find the system dependent file separator
                             //String fileSeparator = System.getProperty("file.separator");
                        CMRDialog.driveComboBox.addItem(" " + path);
              subDir = Search.subDirs(argument);
              /**TBD:- needs a method to convert the vector to an array and return the array */
              directoryArray = new File[subDir.size()];
                   int indexCount = 0;
                   /** TBD:- This is inefficient way of converting a vector to an array */               
                   Iterator e = subDir.iterator();               
                   while( e.hasNext() )
                        directoryArray[indexCount] = (File)e.next();
                        indexCount++;
              /** now calls this method and clears the previous data */
              clearTableData(table);     
                   (SimpleTable.hashTable).clear();
                   data = new Object[this.getRowTotal(directoryArray)][this.getColumnTotal()];
                   formatter = new SimpleDateFormat("mm/dd/yyyy hh:mm aaa");
                   m.clear();
                   data = null;
                   data = new Object[this.getRowTotal(directoryArray)][this.getColumnTotal()];
                   for(int k = 0; k < directoryArray.length; k++)
                        if(directoryArray[k].isDirectory())
                        System.out.println("Inside the if part");
                             data[k][0] = directoryArray[k].getName();
                             table.setValueAt(directoryArray[k].getName(),k,0);
                             //model.fireTableCellUpdated(k,0);
                             data[k][2] = "File Folder";
                             table.setValueAt("File Folder",k,2);
                             //model.fireTableCellUpdated(k,2);
                             dateDirectory = directoryArray[k].lastModified();
                             dirDate = formatter.format(new java.util.Date(dateDirectory));
                             data[k][3] = dirDate;
                             table.setValueAt(dirDate,k,3);
                             //model.fireTableCellUpdated(k,3);
                             (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);
                             m.add(data);
                             model.addRow(m);
                             model.fireTableDataChanged();                              
                        else if(directoryArray[k].isFile())
                   System.out.println("******* Inside the else part *******");
                             data[k][0] = directoryArray[k].getName();
                   System.out.println("The Name is == " + data[k][0]);
                             table.setValueAt(directoryArray[k].getName(),k,0);
                   System.out.println("The table cell value of the name is == " + table.getValueAt(k,0));
                             //model.fireTableCellUpdated(k,0);
                             totalLen = directoryArray[k].length();
                             longe = new Long(totalLen);
                             data[k][1] = longe + " Bytes";
                   System.out.println("The length == " + data[k][1]);
                             table.setValueAt(longe + " Bytes",k,1);
                   System.out.println("The table cell value of the length is == " + table.getValueAt(k,1));
                             //model.fireTableCellUpdated(k,0);
                             dateFile = directoryArray[k].lastModified();
                             fileDate = formatter.format(new java.util.Date(dateFile));
                             data[k][3] = fileDate;
                   System.out.println("The modified date == " + data[k][3]);
                             table.setValueAt(fileDate,k,3);
                   System.out.println("The table cell value of the name is == " + table.getValueAt(k,3));
                             //model.fireTableCellUpdated(k,0);
                             (SimpleTable.hashTable).put(directoryArray[k].getName(), directoryArray[k]);                    }
                             m.add(data);
                             model.addRow(m);
                             model.fireTableDataChanged();     
              // model.fireTableDataChanged();          
              // model.fireTableRowsInserted(0,1);
              table.revalidate();
              table.validate();               
         else
    * Searches the Hashtable and returns the path of the folder or the value.
    public File findPath(String value)
         return (File)((SimpleTable.hashTable).get(value));
    * This clears the previous data in the JTable
    public void clearTableData(JTable table)
         for(int row = 0; row < table.getRowCount() ; row++)
                   for (int col = 0; col < table.getColumnCount() ; col++)
                        table.setValueAt(null, row , col);
              model.fireTableStructureChanged();
    ###

Maybe you are looking for

  • DOES ICLOUD WORK WITH WINDOWS VISTA

    can I use Icloud with my pc which has windows vista?

  • Special Characters in include file

    When I use special characters �� �� in jsp it works fine. However, when I've these characters in a different file an d use include directive to include that file it doesn't show up(shows garbage). Any idea ? Case 1: jsp1: contains �� �� works fine Ca

  • Detail section in Report Viewer Control rendered bad in IE 6/7 ???

    Hi, independent of checking the "no printer" option or select the same printer in Visual Studio Report Designer as on the deployment server the details section of Crystal Report Viewer Control is not rendered correctly in IE 6/7!!! But looks fine in

  • Plz provide tutorial to learn the Module pool programing?

    Hello, Please provide me with the Tutorials which will be helpful to learn Module Pool Programming. If any one can provide me with the screen shots then it would be great! ANy help would be appreciated...... Thank You! Krishna Chaitanya

  • Problem in Service manager ( VISTA)

    hi all       i tried to install B1 in a laptop ( OS - VISTA),every thing get installed but the service manager get freezes,i m not able to open the Backup or license manager.Please anyone give me a solution.