SUBPARTITION to drop and add data give ora-14300

11.2.0.4

RHEL

create a table partitioned by date, sous-partitionnée by the key 2 N, Y values

Insert a record for sysdate, key_value = 'Y '.

Insert a record for sysdate, key_value = ' don't


2 subparts create ok.

Drop the subparts to this date where value = N.

Re-insert the record for sysdate, key_value = ' not and generates the error

ORA-14300: partitioning key in a score cards outside the maximum number of partitions "" ""


Manually add the subpartition (alter table add) high value N for the data to be inserted again for this partition.

Is this expected behavior?  I can understand if the model was not there, but it is.  Probably a quirk to treat the scores of void


SQL> drop table part_test;




Table dropped.


SQL> SQL> CREATE TABLE part_test
  2  (
  3    ID                  NUMBER(9)     NOT NULL,
  4    create_ts                       date default sysdate,
  5    keep_flag               varchar2(1) default 'Y'
  6  )
  7  COMPRESS BASIC 
  8      PARTITION BY range (create_ts)     INTERVAL (NUMTODSINTERVAL(1,'DAY'))
  9   SUBPARTITION BY list (keep_flag)
 10     subpartition template
 11         (
 12           subpartition sp_date1_list_y values ('Y'),
 13            subpartition sp_date1_list_n values ('N')
 14          )
 15       ( partition p1_date1 values less than (to_date('01-01-2015','DD-MM-YYYY'))
 16       );


Table created.


SQL>       
SQL>     
SQL> insert into part_test
  2  (id, create_ts, keep_flag)
  3  values
  4  (1, sysdate-1, 'Y');




1 row created.


SQL> SQL> insert into part_test
  2  (id, create_ts, keep_flag)
  3  values
  4  (2, sysdate-1, 'N');


1 row created.


SQL> 
SQL> 
SQL> insert into part_test
  2  (id, create_ts, keep_flag)
  3  values
  4  (3, sysdate, 'Y');


1 row created.


SQL> 
SQL> insert into part_test
  2  (id, create_ts, keep_flag)
  3  values
  4  (4, sysdate, 'N');


1 row created.


SQL> 
SQL> commit;


Commit complete.


SQL> 
SQL> 
SQL> set lines 180
SQL> col high_value format a5
SQL> 
SQL> select partition_name, subpartition_name, high_value
  2   from dba_tab_subpartitions
  3  where table_name = 'PART_TEST';


PARTITION_NAME                 SUBPARTITION_NAME              HIGH_
------------------------------ ------------------------------ -----
P1_DATE1                       P1_DATE1_SP_DATE1_LIST_Y       'Y'
P1_DATE1                       P1_DATE1_SP_DATE1_LIST_N       'N'
SYS_P248743                    SYS_SUBP248741                 'Y'
SYS_P248743                    SYS_SUBP248742                 'N'
SYS_P248746                    SYS_SUBP248744                 'Y'
SYS_P248746                    SYS_SUBP248745                 'N'


6 rows selected.




-- drop the last subpartition
SQL> alter table part_test drop subpartition SYS_SUBP248745;


Table altered.


SQL> 
SQL> insert into part_test
  2  (id, create_ts, keep_flag)
  3  values
  4  (4, sysdate, 'N');
insert into part_test
            *
ERROR at line 1:
ORA-14300: partitioning key maps to a partition outside maximum permitted number of partitions




-- manually add the subpartition


SQL> 
SQL> alter table part_test modify partition SYS_P248746 add subpartition sub_partN values('N');


Table altered.


SQL> 


-- and now the data goes in and we can see the subpartition is created
SQL> insert into part_test
  2  (id, create_ts, keep_flag)
  3  values
  4  (4, sysdate, 'N');


1 row created.


SQL> commit;


Commit complete.


SQL> 
SQL> select partition_name, subpartition_name, high_value
  2   from dba_tab_subpartitions
  3  where table_name = 'PART_TEST';


PARTITION_NAME                 SUBPARTITION_NAME              HIGH_
------------------------------ ------------------------------ -----
P1_DATE1                       P1_DATE1_SP_DATE1_LIST_Y       'Y'
P1_DATE1                       P1_DATE1_SP_DATE1_LIST_N       'N'
SYS_P248743                    SYS_SUBP248741                 'Y'
SYS_P248743                    SYS_SUBP248742                 'N'
SYS_P248746                    SYS_SUBP248744                 'Y'
SYS_P248746                    SUB_PARTN                      'N'


6 rows selected.


SQL> 

































































































Perhaps more reasonable to expect ORA-14400: inserted partition key is not mapped with any partition?

The subpartition template applies only to the subpartitions automatically created when the partition is created.

Tags: Database

Similar Questions

  • When I try to sign and add dates in pdf forms, as I USED to be able to do...

    When I try to sign and add dates in pdf forms, as I USED to be able to do until I'm so-called 'improved', by selecting "fill and sign", the page will just blank and I'm drunk. What's wrong?

    Windows 7 Pro.

    Screenshot simply shows nothing else that a header with a tab said "Document" that would bring back me to the pdf document. All the pdf documents I've tried, and that was the most I've saved.

    Unfortunately, it came to my attention when I had little time and was both deal with the Australian Taxation office AND fill in the dates and sign and return that some docs of annual audit my accountants.

    Solved the problem simply uninstall the DC version and stalking a version of X Adobe Reader online and installation. Hey presto, everything fixed. As usual the lesson learned is: if it's not broken, don't fix it "." It happened because I agreed a recommended update. Like so many others, Adobe seems to have problems with the "newer".

    I now put on ' manually search for updates (so-called non recommended) and that's the way it will stay, and I do not seek. Also, if I try in the future, I keep the Setup program in a folder in my downloads, so I can come back easily, where an agency decides to remove older versions of availability.

  • Read multiple files in the folder and add data to a file

    Hello world

    Normal 0 false false false MicrosoftInternetExplorer4 / * Style Definitions * / table. MsoNormalTable {mso-style-name: "Table Normal" "; mso-knew-rowband-size: 0; mso-knew-colband-size: 0; mso-style - noshow:yes; mso-style-parent:" ";" mso-padding-alt: 0 cm 0 cm 5.4pt 5.4pt; mso-para-margin: 0 cm; mso-para-margin-bottom: .0001pt; mso-pagination: widow-orphan; do-size: 10.0pt; do-family: "Times New Roman"; mso-ansi-language: #0400; mso-fareast-language: #0400; mso-bidi-language: #0400 ;} "}

    I have several (hundreds) text files in a folder. I want to combine the data of the files into a single file. It must of course begin to file the oldest and sequentially read the files to the latest changes and add all the data in a new txt file.

    Here are the typical two consecutive files comma separated data:

    2009-02-17, 23:17:04, ff1c, 00ff, 0093, 0000, 0100 and 0001-ffff, d3ae, 0cce, 0 cd 4, DC 4, 00 c 2 0, 000 a, 09e4, 0609, 0000 and 0000, 17 c 7
    2009-02-17, 23:17:06, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3af, DC 0 5, 0 cd 7, 0ccf, 00C 2, 000e, 09e6, 0608, 0003, 0000, 17 c 7
    2009-02-17, 23:17:09, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b0, 0 cd 2, cd 0 1, 0 cd 5, 00bb, 000d, 09f1, 0608, 0000 and 0000, 17 c 7
    2009-02-17, 23:17:11, ff1c, 00ff, 0093, 0000, 0100 and 0001-ffff, d3b1, 0c 21, 0ccf, 0 cd 3, 00 c 2, 000 a, 09e3, 0608, 0000 and 0000, 17 c 7
    2009-02-17, 23:17:14, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b2, 0cc9, DC 0 5, 0 cd 7, 00 c 4, 0008, 09e4, 0608, 0000, 0002, 17 c 8
    2009-02-17, 23:17:16, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b3, 0 cd 2, cd 0 6, 0 cd 7, 00bf, 000d, 09eb, 0608, 0000 and 0000, 17 c 8
    2009-02-17, 23:17:19, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b4, 0cc9, 0 cd 8, 0 cd 2, 00 c 2, 0009, 09ea, 0608, 0000 and 0000, 17 c 8
    2009-02-17, 23:17:21, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b5, 0 cd 2, cd 0 1, 0 cd 1, 00 c 2, 0009, 09e8, 0608, 0000, 0001, 17 c 8

    2009-02-17, 23:17:24, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b6, 0 cd 3, cd 0 3, 0 cd 3, 00, 000d, 09eb, 0608, 0001, 0001, 17 c 9
    2009-02-17, 23:17:26, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b7, 0ccd, 0 cd 8, 0 cd 4, 00bc, 0006, 09e6, 0608, 0001, 0003, 17 c 8
    2009-02-17, 23:17:29, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b8, 0 cd 2, cd 0 3, 0 cd 3, 00C6, 000d, 09e9, 0608, 0001, 0001, 17 c 9
    2009-02-17, 23:17:31, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3b9, 0ccf, DC 0 3 0 cd 4, 00ba, 000d, 09e8, 0608, 0000 and 0000, 17 c 8
    2009-02-17, 23:17:34, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3ba 0c1b, 0 cd 3, cd 4 0, 00 c 0, 0009, 09e9, 0607, 0001, 0000, 17 c 8
    2009-02-17, 23:17:36, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3bb, 0 cd 3, cd 4 0, 0 DC 3, 00 c 2, 000 a, 09e8, 0607, 0001, 0003, 17 c 9
    2009-02-17, 23:17:39, ff1c, 00ff, ffff 0093, 0000, 0100, 0001, d3bc, 0 cd 4 0 DC 4, DC 0-2, 00b 5, 000d, 09e9, 0607, 0001, 0002, 17 c 9
    2009-02-17, 23:17:41, ff1c, 00ff, ffff 0093 0100, 0000, 0001, d3bd, 0cbd, 0 cd 4, 0 DC 7, 00 c 2, 0009, 09e8, 0607, 0001, 0001, 17 c 9

    Text files have no header just the RAW file as seen above.

    Would appreciate any help. Thank you in advance.

    Concerning

    Dan

    Hi Dan,.

    I don't know what version of LabVIEW u using, I have attached the vi in the 8.5 v. My vi sorts the file names by order alphabetical use get info file vi to do sorting like u mentioned

  • Open the spreadsheet at the request and add data

    Using a cDAQ 9172 and Labview 8.2, I collect four channels of noisy pressure and temperature data collected during a product test.  The data are shown live on the band on the front panel cards after be smoothed by the average feature of the sample Compression Express vi.  All this works pretty well.

    Data are presented to the test operator so that he can see when the test conditions have stabilized, which usually takes 3 to 5 minutes.  After stabilization, I want to be able to press a button on the front panel so that a spreadsheet is open (ideally, with the original opening time as part of the file name) and a scan of the four data channels are added to the spreadsheet (with a timestamp).  Then, ongoing test for 1 or 2 minutes, I want to again push the button every 10 or 15 seconds or so to add more data analysis, so that we can see later that the conditions had really stabilized.  The exact date and the number of analyses of additional data is not critical, I just want to be able to connect to another 4 to 8 lines of data before you complete the test.

    I have a kind of sort of do this, shown on the seal 'on demand spreadsheet.vi' below.  Noisy signals are shown here numbers just under the random name embedded in a table (which is how my data writing to a spreadsheet file in my actual program).  The problem with this arrangement is that the spreadsheet file is created each time that I start the vi and there are several times during execution of tests and data are not collected for some reason any.  Accordingly, we would end up with a large number of files with no or data without meaning .xls.  I just want to create the worksheet file when I press the button (s) during a successful test after conditions have stabilized.

    I tried a slightly different approach in the joint 'on demand spreadsheet 2.vi' below where I added a switch to toggle to activate a case to open the spreadsheet, and an additional button to save data.  It seems like it should work, but I don't get all the lines of data, only the headers.

    I'm still pretty new to all this and I have spent days trying to figure this out.  Any help is greatly appreciated.

    I don't have 8.2.  You can either save my vi and publish it on the thread Downconvert VI ask, or you could look at just the image:

  • Insert and add data to the table to a batch file

    Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production
    PL/SQL Release 11.1.0.7.0 - Production
    CORE Production 11.1.0.7.0
    AMT for 32-bit Windows: Version 11.1.0.7.0 - Production
    NLSRTL Version 11.1.0.7.0 - Production


    My patch to input file looks like this:

    A0397990002000001
    A0459380377000075
    A1291115796000002
    C0483110026000080
    D0491114923000004
    A0348400660000000
    G0209111373-

    Separate columns look like this:

    A0397 990002 000001

    account amount of IDN


    I'm new to PL/SQL and having a problem changing or adding a record in a table. Don't know how to check if a record exists in the table change if not
    Insert the record.

    If the quantity is 000000 or - the record should be deleted. I have code in place to do this however, don't know how to handle change or add the part.

    Here is the code I have so far and thanks for looking:

    Set serveroutput on
    create or replace directory user_dir as 'c:\dataformats\incoming\ ';


    DECLARE


    v_filename VARCHAR2 (100); -The name of the data file
    v_file_exists boolean;
    number of v_file_length;
    number of v_block_size;
    f utl_file.file_type;
    s varchar2 (200);
    lineString varchar (200);

    -not used c_ *.
    c_account ID_REQ_STG.account%TYPE;
    c_IDN ID_REQ_STG. IDN % TYPE;
    c_quantity ID_REQ_STG.quantity%TYPE;

    ID_REQ_TUPLE ID_REQ_STG % ROWTYPE;

    v_account varchar (5);
    v_IDN varchar (6);
    V_quantity varchar (6);

    BEGIN
    v_filename: = ' PTCLICK. MANUAL.12SERIES.TXT';


    DBMS_OUTPUT. Put_line (v_filename); -the name of the file


    UTL_FILE.fgetattr ("USER_DIR", v_filename, v_file_exists, v_file_length, v_block_size);

    IF v_file_exists THEN

    dbms_output.put_line ("'File Exists");

    f: = utl_file.fopen ("USER_DIR", v_filename, "R");

    IF utl_file.is_open (f) THEN

    LOOP
    BEGIN
    UTL_FILE.get_line (f, s);
    lineString: = s;

    dbms_output.put_line (lineString);

    v_account: = substr (lineString, 1, 5);
    v_IDN: = substr (lineString, 6, 6);
    V_quantity: = substr (lineString, 12.6);


    dbms_output.put_line (v_account);
    dbms_output.put_line (v_IDN);
    dbms_output.put_line (V_quantity);

    -REMOVE

    IF v_quantity = '000000' GOLD v_quantity = '-'
    THEN
    REMOVE FROM ID_REQ_STG
    WHERE account = v_account and
    IDN = v_IDN;
    commit;
    dbms_output.put_line ('Deleted the folder' | v_account |) «and» | v_IDN);
    END IF;


    -CHANGE



    -ADD



    EXCEPTION
    WHEN NO_DATA_FOUND THEN
    dbms_output.put_line ("' no data found");
    EXIT;
    END;

    END LOOP;

    END IF; -is open

    UTL_FILE.fclose (f);


    ON THE OTHER

    dbms_output.put_line ('file does not exist');

    END IF; -file exists

    EXCEPTION

    WHEN UTL_FILE. THEN ACCESS_DENIED
    DBMS_OUTPUT. Put_line ("' no access!");
    WHEN UTL_FILE. INVALID_PATH THEN
    DBMS_OUTPUT. PUT_LINE ('PATH DOES NOT EXIST');
    WHILE others THEN
    DBMS_OUTPUT. PUT_LINE ("SQLERRM: ' |") SQLERRM);



    END;
    /

    Hello

    Looks like a good candidate for a MERGER with an external table.

    The external table:

    create table ext_table (
     account varchar2(5),
     idn number(6),
     quantity varchar2(6)
    )
    organization external (
      type oracle_loader
      default directory user_dir
      access parameters (
        records delimited by newline
        fields (
          account position(1:5) char(5),
          idn position(6:11) char(6),
          quantity position(12:17) char(6)
        )
      )
      location ('test.txt')
    )
    reject limit unlimited;
    

    Then a simple MERGER should perform all your needs:

    MERGE INTO id_req_stg t
    USING (
     SELECT account,
            idn,
            decode(quantity, '-', 0, to_number(quantity)) as quantity
     FROM ext_table
    ) v
    ON ( t.account = v.account AND t.idn = v.idn )
    WHEN MATCHED THEN
      UPDATE SET t.quantity = v.quantity
      DELETE WHERE t.quantity = 0
    WHEN NOT MATCHED THEN
      INSERT (account, idn, quantity)
      VALUES (v.account, v.idn, v.quantity);
    

    Documentation related to the MERGER: http://download.oracle.com/docs/cd/E11882_01/server.112/e10592/statements_9016.htm#SQLRF01606
    and on the outdoor tables: http://download.oracle.com/docs/cd/E11882_01/server.112/e10595/tables013.htm#ADMIN12896

    Published by: odie_63 on June 10, 2010 14:26 (added docs)

  • Add data in the header of a .wav file

    Hello guys,.

    I seek your help for a small problem that I can't spend during my internship.

    Here's what I want to do: I acquire signals that I write a .wav file. What I would do then is to reopen this .wav file and add data in the header, such as the sensitivity of the microphone for example. I am doing this is because it's one of our program of works, it can resume the pressure vs time signal using this information. I already have the hex code I need to add, but I was not able to determine if such a thing is possible or not after a day of research ideas would be greatly appreciated. I wonder if Matlab might do the trick but I prefer to stay with the 'normal '... screws

    Thank you very much for your help.

    To insert data into the middle of a file, you will need to rewrite the entire file after that point, as Gerd said in the linked post.  I would do the following:

    1. Search for the location you want to put your new piece
    2. Read 65 000 bytes from forward and store in a local cache (shift registers work well for this, or just a wire at this point).
    3. Write your new piece, taking note of how long it is
    4. Give your data buffered less the length of your new song
    5. Read a 65 000 other bytes and put it in a new buffer
    6. Write the end of the old buffer and a part of the new buffer until you get to 65 000 bytes
    7. Repeat 4 to 6 until you reach the end of the file
    8. Update the offsets in the header to match the new locations of piece, since you have moved things

    You can probably do it with both data pads in a pair of registers at offset in a loop.  The 65 000 bytes is chosen for best performance.  You can use other sizes, but your speed can suffer.  Let us know if you encounter any problems.

  • How can I find and add drops to my favorites in the Finder window?

    How can I find and add drops to my favorites in the Finder on my MacBook Air window?

    Assuming that your MacBook Air and OS X version can support AirDrop, use the menu on the Finder to go to Finder > Preferences > sidebar and tick the box 'parachuting '.

  • Is it possible to add the location and the date on the pictures in a slide show?

    Is it possible to add the place and the date on the pictures in a slide show?

    Only if you manually add a title slide t photo and enter this information manually.  There is no automatic way in Photos.

    Click on the button "+" at the right end of the slide show to add a title slide.

  • Can I add start and end dates to flex in WCS assets?

    Hi all

    I have to add the start and end dates to my flex belt and make it visible on the plus edition + inspect mode. For the Fund, it is STANDARD, but I have an obligation to do so for other assets that is not active promotion.

    Is there any doc/blog I can do? Help, please.

    Hi Avi.

    Dates of start and end standards are OOTB field in the metadata of the asset. So they you must set the cs.sitepreview property in the file futuretense.ini in the 'management '.

    CS.sitepreview = ContentManagement

    You can check out the documentation for more details about this property: futuretense.ini - 11 g Release 1 (11.1.1.8.0)

    If you need something different, maybe you need create your own attributes Start Date and end using types date: Data Design: active models - 11 g Release 1 (11.1.1.8.0)

    Kind regards

    Raul.

  • When I used to press the fill and sign that I'd get a drop down add initials, place check, create a signature now when I click on fill and sign all the I can do is to fill in information and create a signature digital-how can I pick up my old options? Tha

    When I used to press the fill and sign that I'd get a drop down add initials, place check, create a signature now when I click on fill and sign all the I can do is to fill in information and create a signature digital-how can I pick up my old options? Thank you

    It seems that you have empty fields of Digital Signature in the form.  Acrobat Reader DC complete and sign will add a signature of annotation with a PDF file that has Acrobat form fields or fields of Digital Signature in it.  Test it by opening a PDF file that has no form fields or fields of Digital Signature in it and who is not protected by security permissions.

  • How to delete and add traces data?

    In my code below, I would add two buttons by clicking on a button ("Remove") that it will remove a trace of data and plot it back by clicking on the button ("Add") as in the examples:

    Complete data plotted by the class running

    [http://s13.postimage.org/gw5bz9ak3/A02773.jpg]

    Now with a simple click on a last given to remove button point to disappear

    [http://s13.postimage.org/u87pzxsc3/A02774.jpg]

    another click and last data point disappear and so on

    [http://s2.postimage.org/fjxevg1ph/A02775.jpg]

    The reverse operation would be performed by clicking on the 'Add' button: each click will be add a data point
    import javafx.application.Application; 
    import javafx.beans.property.SimpleDoubleProperty; 
    import javafx.event.EventHandler;  
    import javafx.scene.chart.NumberAxis; 
    import javafx.scene.chart.XYChart; 
    import javafx.stage.Stage; 
    import javafx.scene.Scene; 
    import javafx.scene.chart.LineChart; 
    import javafx.scene.control.Button;
    import javafx.scene.input.MouseEvent; 
    import javafx.scene.layout.BorderPane; 
    
    public class XYMove extends Application {
    
    BorderPane pane; 
    XYChart.Series series1 = new XYChart.Series(); 
    
    SimpleDoubleProperty rectinitX = new SimpleDoubleProperty(); 
    SimpleDoubleProperty rectX = new SimpleDoubleProperty(); 
    SimpleDoubleProperty rectY = new SimpleDoubleProperty(); 
    
    @Override 
    public void start(Stage stage) { 
     
    final NumberAxis xAxis = new NumberAxis(12, 20, 1);
    
    double max = 12;
    double min = 3;
    
    max *= (1+((double)3/100));
    min *= (1-((double)3/100));
    
    final NumberAxis yAxis = new NumberAxis(min, max, 1); 
    
    xAxis.setAnimated(false);
    yAxis.setAnimated(false);
    
    yAxis.setTickLabelFormatter(new NumberAxis.DefaultFormatter(yAxis) { 
    
        @Override 
        public String toString(Number object) { 
            return String.format("%2.0f", object); 
        } 
    }); 
    
    final LineChart<Number, Number> lineChart = new LineChart<Number, Number>(xAxis, yAxis); 
    
    lineChart.setCreateSymbols(false); 
    lineChart.setAlternativeRowFillVisible(false); 
    lineChart.setAnimated(false); 
    lineChart.setLegendVisible(false);
    
    series1.getData().add(new XYChart.Data(1, 3)); 
    series1.getData().add(new XYChart.Data(2, 8)); 
    series1.getData().add(new XYChart.Data(3, 6)); 
    series1.getData().add(new XYChart.Data(4, 7)); 
    series1.getData().add(new XYChart.Data(5, 5)); 
    series1.getData().add(new XYChart.Data(6, 6)); 
    series1.getData().add(new XYChart.Data(7, 4)); 
    series1.getData().add(new XYChart.Data(8, 7)); 
    series1.getData().add(new XYChart.Data(9, 6)); 
    series1.getData().add(new XYChart.Data(10, 7));
    series1.getData().add(new XYChart.Data(11, 6)); 
    series1.getData().add(new XYChart.Data(12, 7));
    series1.getData().add(new XYChart.Data(13, 6));
    series1.getData().add(new XYChart.Data(14, 12)); 
    series1.getData().add(new XYChart.Data(15, 10)); 
    series1.getData().add(new XYChart.Data(16, 11)); 
    series1.getData().add(new XYChart.Data(17, 9)); 
    series1.getData().add(new XYChart.Data(18, 10));
    
    pane = new BorderPane(); 
    pane.setCenter(lineChart); 
    Scene scene = new Scene(pane, 800, 600); 
    lineChart.getData().addAll(series1); 
    
    stage.setScene(scene);         
    
    scene.setOnMouseClicked(mouseHandler); 
    scene.setOnMouseDragged(mouseHandler); 
    scene.setOnMouseEntered(mouseHandler); 
    scene.setOnMouseExited(mouseHandler); 
    scene.setOnMouseMoved(mouseHandler); 
    scene.setOnMousePressed(mouseHandler); 
    scene.setOnMouseReleased(mouseHandler); 
    stage.show();
    } 
    
    EventHandler<MouseEvent> mouseHandler = new EventHandler<MouseEvent>() { 
    
    @Override 
    public void handle(MouseEvent mouseEvent) { 
    
        if (mouseEvent.getEventType() == MouseEvent.MOUSE_PRESSED) {             
            rectinitX.set(mouseEvent.getX()); 
        } 
        else if (mouseEvent.getEventType() == MouseEvent.MOUSE_DRAGGED || mouseEvent.getEventType() == MouseEvent.MOUSE_MOVED) { 
            LineChart<Number, Number> lineChart = (LineChart<Number, Number>) pane.getCenter(); 
            NumberAxis xAxis = (NumberAxis) lineChart.getXAxis(); 
    
            double Tgap = xAxis.getWidth()/(xAxis.getUpperBound() - xAxis.getLowerBound()); 
            double newXlower=xAxis.getLowerBound(), newXupper=xAxis.getUpperBound();             
            double Delta=0.3;
            
            if(mouseEvent.getEventType() == MouseEvent.MOUSE_DRAGGED){
            if(rectinitX.get() < mouseEvent.getX()&& newXlower >= 0){    
                newXlower=xAxis.getLowerBound()-Delta;
                newXupper=xAxis.getUpperBound()-Delta;
            }
        else if(rectinitX.get() > mouseEvent.getX()&& newXupper <= 22){    
                newXlower=xAxis.getLowerBound()+Delta;
                newXupper=xAxis.getUpperBound()+Delta;
            }    
            xAxis.setLowerBound( newXlower ); 
            xAxis.setUpperBound( newXupper );                        
            }                                        
            rectinitX.set(mouseEvent.getX());                                 
         } 
      } 
    }; 
        public static void main(String[] args) {
            launch(args);
        }
    }
    Thank you!

    I would use an ObservableList (probably supported by LinkedList) of XYChart.Data to store the collection of data "deleted". Create buttons as usual; handler of your button 'Delete' should remove the last element of the series and add it to the first element of data deleted messages points. The 'Add' button should delete the first item in the deleted data points and add it at the end of the series. You can bind the property of 'disable' the delete and Add button at Bindings.isEmpty (series1.getData ()) and Bindings.isEmpty (deletedDataPoints), respectively.

    Something like

    ObservableList> deletedDataPoints = FXCollections.observableList(new LinkedList>());
    ...
    removeButton.setOnAction(new EventHandler() {
      @Override
      public void handle(ActionEvent event) {
        deletedDataPoints.add(0, series1.getData().remove(series1.getData().size()-1));
      }
    });
    addButton.setOnAction(new EventHandler() {
      @Override
      public void handle(ActionEvent event) {
        series1.getData().add(deletedDataPoints.remove(0));
      }
    });
    removeButton.disableProperty().bind(Bindings.isEmpty(series1.getData()));
    addButton.disableProperty().bind(Bindings.isEmpty(deletedDataPoints));
    

    Another approach would be to use a separate list for all data points and keep an integer variable storing the number of data points are displayed. The "delete" button would decrement the displayed number, and your button 'Add' would increment the number in the display. Both would also call

    series1.getData().setAll(allDataPoints.sublist(0, numberOfDisplayedPoints));
    

    You might even be able to make the numberOfDisplayedPoints an IntegerProperty and bind the property data of the series in a pleasant way. This approach runs probably and the previous approach (using a stack of removed points), because you do not directly offer the graph as much more information on what has changed.

    Two approaches to problems (in the sense that you must carefully define your application logic and then to implement) if the underlying data is likely to change.

  • Plenty of data store: can I remove the complete class and add a new?

    Hi all

    We have a pool that has 4 data warehouses with one having only 15G left. I would like to know if I can delete that one full and add a new lun in the pool of data warehouses. Can I do this?

    I think I can as existing workstations will continue to live and those newly created will be created on the new Lun. I'm just curious if someone did in a live production environment. I looked in the docs but did not find any info on it.

    Kind regards...

    You should not have problems with this.   I think 15 GB free on a data store is really cut close.  Are these complete images or related clones?

    If you have found this device or any other useful post please consider the use of buttons useful/correct to award points

  • Save the file with the data from field and add more information

    I'm looking to create a button that will be a button Save and add the data in a field to it when I save it.  So it would be a click event in javascript and inside of the "saveFile" information adds TextField1 and "text that I make up" which would create the name of the saved file.

    Hello

    Not sure if you have this sorting.

    But this could be done by using the function of trust

    create your form as usual

    then create a further subform and getting in to a record in the box (just add a textfield and little text and a button)

    have the save button on the form simply call the saveas subform

    SaveAs.Presence = "visible";

    then the button in the subform saveas have the following (under the click in javascript event)

    SaveAs.Presence = 'hidden ';

    event.target.saveasFunc ();

    to get this feature work, you must create a Notepad with the following code .js file

    saveasFunc = app.trustedFunction (function () {}
    app.beginPriv ();

    var text1 = event.target.xfa.resolveNode (".saveform form1 [0] [0].") ("TextField1 [0]") .rawValue;
    Text2 = event.target.xfa.resolveNode var ("form1 .saveform [0] [0] .saveas [0].") ("TextField2 [0]") .rawValue;

    try {}
    event.target.saveAs ("/ c/forms /" + text1 + "" + Text2 + ".pdf" ");
    } catch (err) {}
    App.Alert ("Error:" + err);
    }
    app.endPriv ();
    });

    Obvisously properly the objectives and the backup directory

    then save this file as name then place you like .js for example (saveas.js) this file in the c:\program files\adobe\acrobat\javascripts or similar, but with the player if you use adobe reader software.

    If you intend to use this file in the drive then you will need to activate features extended drive on the file using Adobe Acrobat.

    OK above is only available where you can load the .js file in the correct directory.

    I use it by creating a simple installation file that has placed the .js file in the right directory and Ontario form right end users computer.

    It may or may not work for you.

    If I can help others let me know.

  • AppleScript set the string to date and add 30 minutes

    I am filling 2 boxes of time on a website in Safari, using Applescript from buttons selected by the user.

    My current Applescript is:

    Value dialog box to display the dialog box buttons ' when did your first departure case? {"07:30, ' 08:00, ' 08:30" "" "}

    definition of the first button returned of the result

    inputByName ("time 1", 0, start)

    the value of test for '07:30 ' - assuming that the user has selected '07:30 ' in the dialog box

    Test date - do not know how to assign 07:30 as an hour

    Finishing to test set + (30 * minutes)

    inputByName ("2", 0, finishing)

    The error return is number 'Invalid date and time date 07:30 < < script > >.' -30720

    Any help would be greatly appreciated!

    Thank you

    s

    You must use a complete date in the date/time of your machine settings.  A simple way is to simply get the current date (which returns a full date object) and manipulate that, for example:

    tell (current date)
      set its time to (7 * hours) + (30 * minutes)
      set someDate to it
    end tell
    return time string of someDate
    
  • Cannot lock and send data to an Excel add-in planning application

    Hi all

    One of our customers uses Essbase 7.1 version and planning 4.0.1

    The question is when one of their user tries to lock and send data to an application of addin planning Excel Gets the following error:

    "You don't have sufficient access to perform a lock on this database"

    But he is able to lock and send through a form web planning without any problem.

    The user belongs to a group that was supplied with some filter access that the planning application and write permission is given for this filter. The filter has been created from the side planning and was rejected.

    Also in excel, under Essbase-> Options-> tab Mode, the "Update Mode" option is not checked.

    Can someone help me on this topic.

    Thank you
    Raja

    Hello

    What is a recent thing? I guess they use these versions for some time? If it's a recent thing then I would start by looking at what has recently changed on the server.

    One of our clients had a problem with a version a little older (3.3 planning and Essbase 6.5.4.2) where each user had 2 filters in Essbase. "User1" was the filter of planning and "User1_" was the Essbase filter for the same user. Whenever an update of the planning was made he re - create the Essbase filter such as users could not run calc scripts or perform locking and send in Excel.

    We had to use a script MaxL to replace the underscore (essbase) filter with the filter of planning and which meant that users can write to Essbase.

    I may be the line of underscores and no line underscore filter the worng way round, it was a long time ago!

    Hope this helps
    Stuart Game
    www.Analitica.co.uk

Maybe you are looking for