Can I write to a collection or data table with Sienna?

Hello all,
First of all, it will be painfully obvious that I am not a developer. I have some knowledge an can do that I want when it come to tracking information with Excel but I'd like to dabble in Sienna and see if I can make a simple little app.
With Sienna, can the Text Input boxes be used to write to a table in an excel file, so I can then apply Fx to the data and display it in the app?
For example, a user enters in a number in the app. It get's written to a table, then an fx is applied ( such as  simply subtracting 10 from the inputted value) and the result is displayed to the user.
Thanks,
Ryan

Hi Ryan,
That is one of the motivations for building Siena and so we are happy to have you, developer or not!
Is there a specific reason for wanting to write back to Excel, other than for subtraction? Siena is perfectly capable of pulling Excel data, you won't be able to write back to the Excel file, but you can manipulate the imported data within Siena.
In any case, consider the following example where we use a slider to perform the subtraction and display the results for each column. I used the following sample data from excel - the table the data is contained in is called 'Table8':
Column1      Column2
239029       78989
23147         2374893
278432793 37893
238729       382397
1) Add a Slider, called Slider1
Set the Min to the lowest value your user will subtract the excel data by, and
Max to the highest value your user will subtract the excel data by. I picked 10 for my min and 100 for my max
2) Import the data
3) Custom Gallery, called Gallery1 - It's the option at the bottom right of the "Galleries" group
3) Set the Select Gallery1 as a whole and set the 'Items'
under the 'Data' group to 'Table8'
4) Click "Add Visual" on the first item in the Gallery and add a Label, called
Label1. This label will also have its Text automatically set to
ThisItem!Column1. Change this to ThisItem!Column1 - Slider1!Value.
5) Click "Add Visual" on the first item in the Gallery again and add a second Label, called
Label2. This label will also have its Text automatically set to
ThisItem!Column2. Change this to ThisItem!Column2 - Slider1!Value
6) Now drag Slider1, back and forth an notice the values both in
Label1 and Label2 change as the slider is adjusted.
If there is a need to store the manipulated data, then 
LoadData() and
SaveData() expressions could be leveraged within Siena.
Hope this helps.

Similar Messages

  • How can I write new objects to the existing file with already written objec

    Hi,
    I've got a problem in my app.
    Namely, my app stores data as objects written to the files. Everything is OK, when I write some data (objects of a class defined by me) to the file (by using writeObject method from ObjectOutputStream) and then I'm reading it sequencially by the corresponding readObject method (from ObjectInputStream).
    Problems start when I add new objects to the already existing file (to the end of this file). Then, when I'm trying to read newly written data, I get an exception:
    java.io.StreamCorruptedException
    at java.io.ObjectInputStream.readObject0(Unknown Source)
    at java.io.ObjectInputStream.readObject(Unknown Source)
    Is there any method to avoid corrupting the stream? Maybe it is a silly problem, but I really can't cope with it! How can I write new objects to the existing file with already written objects?
    If anyone of you know something about this issue, please help!
    Jai

    Here is a piece of sample codes. You can save the bytes read from the object by invoking save(byte[] b), and load the last inserted object by invoking load.
    * Created on 2004-12-23
    package com.cpic.msgbus.monitor.util.cachequeue;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.RandomAccessFile;
    * @author elgs This is a very high performance implemention of Cache.
    public class StackCache implements Cache
        protected long             seed    = 0;
        protected RandomAccessFile raf;
        protected int              count;
        protected String           cacheDeviceName;
        protected Adapter          adapter;
        protected long             pointer = 0;
        protected File             f;
        public StackCache(String name) throws IOException
            cacheDeviceName = name;
            f = new File(Const.cacheHome + name);
            raf = new RandomAccessFile(f, "rw");
            if (raf.length() == 0)
                raf.writeLong(0L);
         * Whne the cache file is getting large in size and may there be fragments,
         * we should do a shrink.
        public synchronized void shrink() throws IOException
            int BUF = 8192;
            long pointer = getPointer();
            long size = pointer + 4;
            File temp = new File(Const.cacheHome + getCacheDeviceName() + ".shrink");
            FileInputStream in = new FileInputStream(f);
            FileOutputStream out = new FileOutputStream(temp);
            byte[] buf = new byte[BUF];
            long runs = size / BUF;
            int mode = (int) size % BUF;
            for (long l = 0; l < runs; ++l)
                in.read(buf);
                out.write(buf);
            in.read(buf, 0, mode);
            out.write(buf, 0, mode);
            out.flush();
            out.close();
            in.close();
            raf.close();
            f.delete();
            temp.renameTo(f);
            raf = new RandomAccessFile(f, "rw");
        private synchronized long getPointer() throws IOException
            long l = raf.getFilePointer();
            raf.seek(0);
            long pointer = raf.readLong();
            raf.seek(l);
            return pointer < 8 ? 4 : pointer;
         * (non-Javadoc)
         * @see com.cpic.msgbus.monitor.util.cachequeue.Cache#load()
        public synchronized byte[] load() throws IOException
            pointer = getPointer();
            if (pointer < 8)
                return null;
            raf.seek(pointer);
            int length = raf.readInt();
            pointer = pointer - length - 4;
            raf.seek(0);
            raf.writeLong(pointer);
            byte[] b = new byte[length];
            raf.seek(pointer + 4);
            raf.read(b);
            --count;
            return b;
         * (non-Javadoc)
         * @see com.cpic.msgbus.monitor.util.cachequeue.Cache#save(byte[])
        public synchronized void save(byte[] b) throws IOException
            pointer = getPointer();
            int length = b.length;
            pointer += 4;
            raf.seek(pointer);
            raf.write(b);
            raf.writeInt(length);
            pointer = raf.getFilePointer() - 4;
            raf.seek(0);
            raf.writeLong(pointer);
            ++count;
         * (non-Javadoc)
         * @see com.cpic.msgbus.monitor.util.cachequeue.Cache#getCachedObjectsCount()
        public synchronized int getCachedObjectsCount()
            return count;
         * (non-Javadoc)
         * @see com.cpic.msgbus.monitor.util.cachequeue.Cache#getCacheDeviceName()
        public String getCacheDeviceName()
            return cacheDeviceName;
    }

  • How can i write the trigger for Global Temporary Table

    Hi Grus,
    How can i write the trigger for Global Temporary Table.
    I was created the GTT with trigger using the below script .
    CREATE GLOBAL TEMPORARY TABLE GLOBAL_TEMP
    EMP_C_NAME VARCHAR2(20 BYTE)
    ON COMMIT PRESERVE ROWS;
    CREATE OR REPLACE TRIGGER TRI_GLOBAL_TEMP
    BEFORE DELETE OR UPDATE OR INSERT
    ON GLOBAL_TEMP
    REFERENCING NEW AS NEW OLD AS OLD
    FOR EACH ROW
    BEGIN
    INSERT INTO EMPNAME VALUES (:OLD.EMP_C_NAME);
    END;
    trigger was create successfully, but the wouldn't insert into to EMPNAME Table..
    Please guide whether am correct or not? if not kindly give a correct syntax with example
    Thanks in Advance,
    Arun M M

    BEGIN
    INSERT INTO EMPNAME VALUES (:OLD.EMP_C_NAME);
    END;
    you are referencing old value in insert stmt.
    BEGIN
    INSERT INTO EMPNAME VALUES (:new.EMP_C_NAME);
    END;then run ur application it works fine...
    CREATE GLOBAL TEMPORARY TABLE GLOBAL_TEMP
    EMP_C_NAME VARCHAR2(20 BYTE)
    ON COMMIT PRESERVE ROWS;
    CREATE OR REPLACE TRIGGER TRI_GLOBAL_TEMP
    BEFORE DELETE OR UPDATE OR INSERT
    ON GLOBAL_TEMP
    REFERENCING NEW AS NEW OLD AS OLD
    FOR EACH ROW
    BEGIN
    dbms_output.put_line(:OLD.EMP_C_NAME||'yahoo');
    INSERT INTO EMPNAME VALUES (:new.EMP_C_NAME);
    dbms_output.put_line(:OLD.EMP_C_NAME);
    END;
    create table EMPNAME as select * from GLOBAL_TEMP where 1=2
    insert into GLOBAL_TEMP values('fgfdgd');
    commit;
    select * from GLOBAL_TEMP;
    select * from EMPNAME;
    output:
    1 rows inserted
    commit succeeded.
    EMP_C_NAME          
    fgfdgd              
    1 rows selected
    EMP_C_NAME          
    fgfdgd              
    1 rows selectedgot it Arun
    Edited by: OraclePLSQL on Dec 28, 2010 6:07 PM

  • How can i write and read the same data

    hi,
             i have attached my program to this mail. i have some problems in this program.
    problems:
    1. I want to select the threshold for the rms,varience and s.d.
    But what i used is not doing that. i want to fix the upper threshold value and lower threshold value.
     when ever the input crosses upper threshold value i want the output and it will remains uptill the value above the lower threshold value.
    Once it come down the lower threshold value the output should be stopped.
    2. I want to write this in to a  file and i want to read this file. is this possible or not. 
                please try to help me i am very new with lab view6i
           REGARDS
    CHAMARTHY KOMAL DILEEP.
       [email protected]
    Attachments:
    dileep.vi ‏93 KB

    The easiest way to perform a certain action (such as file I/O) based on a certain condition (such as whether a value has passed a certain threshold) is to use a comparison VI in combination with a case structure. Then you can specify that if your rms, standard deviation and variance are above a threshold then perform a certain action.
    Also consider using shift registers to keep track of data from the last loop. If I understand you correctly, you want to start logging data when an upper threshold has been passed. Then you want to continue logging data until a lower threshold is passed. I have attached a non-functional but explanatory VI that will help explain how to implement logic to that effect. It also demonstrates that you can indeed write and read from the same file in a loop. The best way to do this is to open the file before the loop, do all the necessary writing and reading in the loop, and then close the file after the loop.
    Hope this helps!
    Jarrod S.
    National Instruments
    Attachments:
    dileep_example.vi ‏61 KB

  • Can I create member log-in and data storage with my Muse account?

    I'm looking into the Muse product for a possible new client who will need to collect member data and post it onto the site. I want to know if this function can be created in Muse and with my Muse account.

    Hi,
    Please refer to the following link Re: Password/login
    Regards,
    Aish

  • Can i write a server for PC  that connects with WIFI?

    hello,
    i need to write a server - client with wifi connection.
    The server will be at the PC and the client is a mobile with android OS. Can i write it in java? if yes can you give a starting point please.
    thanks

    avicohen33 wrote:
    thank's for the answer.
    but i still don't understand how i configure that it's WIFI connection: i just open a socket on the server and the client is trying to connect to the server by its host name, ip by wifi itself. So the server don't care how the connection is established?Right. It doesn't care. You have a client and a server on your local WiFi network. Or maybe the client is in the WiFi and the server is out on the internet. Regardless, you write exactly the same code, and neither the client nor the server knows that there's WiFi involved. Just like when you talk on the phone, you don't know or care if you're talking over fiber or underground cables or above-ground cables or satellite, or some combination, similarly, at all the layers above the Link layer the networking code doesn't know or care what's underneath. Your app just opens a socket connection to an IP address.
    The one case where it gets tricky, but your app still doesn't know the difference, is of the client is on the internet and your server is on your LAN. It has nothing to do with whether the LAN is WiFi, however. It's because you will most likely not have a public IP address, so you'll have to do port forwarding from your router (assuming it actually does have a public IP address, which is common in my experience, but not guaranteed).
    Edited by: jverd on Apr 3, 2010 11:49 AM

  • How can i make indexes on the Master data table

    Hi Gurus,
    I got a query, in this one i have an Infoobject with many values, like to say invoice number, and i filter and need a lot of Nav Attr of this IO, for this reason the query performance its really bad but i dont know what to do, some friend advice me this : So I would suggest some indexes on the Master data table of your IO for the navigationnal attributer you want to use.
    what else can you tell me? if i put this IO in Line item dimension? , or just with flag high cardinality ? help guys.....

    Hi Jorge.....
    Look.........Line item dimension and High Cardinality r related to each other..............Characteristic which has High Cardinality..we will use it as Line item dimension..........But........A dimension marked as a line item cannot subsequently include additional characteristics.......... This is only possible with normal dimensions...........If u r very sure.............then u can go for Line item dimension............no issues........
    U can also try to Create index..............
    Check this...........
    Re: Indexes on Master Data tables
    Regards,
    Debjani..........

  • How can I write the chinese characters in a web with my magic mouse?

    How can I write the chinese characters in the search box with my magic mouse?

    You can do it with a trackpad but I am not sure about the mouse.  Take a look at his link, http://support.apple.com/kb/HT4288

  • Can I use my existing verizon phone data plan with my iPad 2?

    I have a data plan with my verizon smart phone.  I want to buy an iPad 2 with 3G capabilities but I would hate have 2 bills for 3G service.  Can I use my existing phone data plan with my iPad or do I have to set up a seperate data plan for my iPad?

    Your best answer will come from Verizon' customer service.

  • How can I implement the equivilent of a temporary table with "on commit delete rows"?

    hi,
    I have triggers on several tables. During a transaction, I need to gather information from all of them, and once one of the triggers has all the information, it creates some data. I Can't rely on the order of the triggers.
    In Oracle and DB2, I'm using temporary tables with "ON COMMIT DELETE ROWS" to gather the information - They fit perfectly to the situation since I don't want any information to be passed between different transactions.
    In SQL Server, there are local temporary tables and global.  Local temp tables don't work for me since apparently they get deleted at the end of the trigger. Global tables keep the data between transactions.
    I could use global tables and add some field that identifies the transaction, and in each access to these tables join by this field, but didn't find how to get some unique identifier for the transaction. @@SPID is the session, and sys.dm_tran_current_transaction
    is not accessible by the user I'm supposed to work with.
    Also with global tables, I can't just wipe data when "operation is done" since at the triggers level I cannot identify when the operation was done, transaction was committed and no other triggers are expected to fire.
    Any idea which construct I could use to acheive the above - passing information between different triggers in the same transaction, while keeping the data visible to the current transaction?
    (I saw similar questions but didn't see an adequate answer, sorry if posting something that was already asked).
    Thanks!

    This is the scenario: If changes (CRUD) happen to both TableA and TableB, then log some info to TableC. Logic looks something like this:
    Create Trigger TableA_C After Insert on TableA {
      If info in temp tables available from TableB
            Write info to TableC
       else
           Write to temp tables info from TableA
    Create Trigger TableB_C After Insert on TableB {
      If info in temp tables available from TableA
            Write info to TableC
       else
           Write to temp tables info from TableB
    So each trigger needs info from the other table, and once everything is available, info to TableC is written. Info is only from the current transaction.
    Order of the triggers is not defined. Also there's no gurantee that both triggers would fire - changes can happen only to TableA / B and in that case I don't want to write anything to TableC.
    The part that gets and sets info to temp table is implemented as temp tables with "on commit delete rows" in DB2 / Oracle.
    What do you think? As I've mentioned, I could use global temp tables with a field that would identify the transaction, but didn't find something like that in SQL Server. And, the lifespan of local temp tables is too short.

  • Join Master Data table with fact table

    Hello gurus.
    I have a requirement on a characteristic. I have to obtain the description of those values that are not filled with data in the cube, the example looks like this:
    Data in the cube:
    Characteristic 1 |  charactersitic 2 |  value
    AU                           HPDV              200
    TB                           OPPG              500
    TC                           HPDV              900
    TR                           OPMR             400
                                   HPDV              300
                                   OPMR             200
                                   OPPG             100
    Master Data Table:
                                Description
    HPDV    AU       Auditoria  
    OPPG    TB       Servicios Logisticos
    HPDV     TC       Occidente
    OPMR    TR       Oriente
    HPDV     AI        Punta Norte
    OPGS    CV       Escandón
    HPDV    QR       Barquisimeto
    HPDV    MM      Valencia
    HPDV    DT        Barcelona
    I need to display in the query only the description of the characterstic whose data is not in the cube, according to the example the values that are missing in the cube are:
    HPDV     AI        Punta Norte
    OPGS    CV       Escandón
    HPDV    QR       Barquisimeto
    HPDV    MM      Valencia
    HPDV    DT        Barcelona
    How can i achive this ?? 
    Thank you in advance.

    Hi Guillermo,
    I think you are trying to achieve this: To display characteristic values for which no transaction data or only low values exist for the selected period.
    See here for the solution details:
    http://help.sap.com/saphelp_nw04/helpdata/en/3a/d1603d13b5c72ee10000000a114084/content.htm
    Hope this helps...

  • Data table with fixed column with

    I have a data table bound to a row set , and I would like the table to have fixed column widths to avoid unpleasant display shifts when paging through it.
    The column component does not have too many properties I can work with (maybe this can be fixed in a future release??). Therefore I tried setting the style property of the output text object inside the column. The result looks good in the IDE, but reverts to variable column widths in the browser. I even tried setting the style property at runtime, with no luck.
    Unfortunately I can't pad the column header with spaces, because output text has the annoying habit of converting any group of more than one blank space character to one char only (by the way, any remedy to that?). Trying to drop a grid or group panel in place of the column header and pad the column title with invisible (i.e. color: white) output texts did not work either...
    Any ideas??
    Thanks,
    Luca

    I took a look at the html encoder for data table and here's a trick you can use:
    Go to your stylesheet (by default resources/stylesheet.css: open the Resources node in the project navigator and double click on stylesheet.css).
    Let's say you want three columns - so add something like the following to the stylesheet:
    .colwidth1 { width: 200px }
    .colwidth2 { width: 400px }
    .colwidth3 { width: 300px }
    Save the stylesheet (ctrl-S).
    Now, back in the designer, right click and select "Refresh" to ensure that the new stylesheet edits are discovered.
    Then go to the designer surface, and select the data table (make sure it's selected, not one of its children like columns or output texts - if so hit Escape to pop to parent, or just click on it directly in the app outline.)
    Go to the "columnClasses" property in the property sheet - and enter "colwidth1, colwidth2, colwidth3". Note - no dots here. If you have more than 3 columns you would obviously add additional columns here.
    The table should now use the desired column widths - including the browser.

  • HTML Data Table with cell-level inline messages?

    Hi all.
    I'm not suprised by this, but I am wondering if anyone has figured out a slick/elegant way around the "problem"
    Basically, the problem I want to solve is:
    how to get corresponding validation error messages to show up in the data table cell that contains the (editiable) ui component representing the "offending" value?
    The naive first approach would be simply to place an inline message component just before or after the corresponding data table column's row value presentation component.
    But obviously, this won't work, primarily because the inline message component id will not be unique (does not pick up the currentRow to make it unique) asd well as due to the issue of binding the inlineMessage component's "for" attribute to the correct row (as well as column).
    So, the naive first approach results in a thrown exception:
    javax.servlet.ServletException: Duplicate component id: 'form1:personDataTable:firstNameValidationInlineMessage'
    Now, I know I could add "virtual" columns to my data table to hold validation errors so that they correspond to the correct row/columns and I know I can bind the rendered attribute, style etc, for corresponding presentation elements, but then I've basically side-stepped the whole faces message functionality built into the JSF framework.
    Also, if I have to use "virtual" columns, then I've complicated life for myself, since I ordinarily want to bind the data table to a list of bean instances (i.e. we are using hibernate persistence) or even a row set (difficulty setting a column value that is not updateable in data source, i.e. corresponds to no table/column and maybe involves dynamically adding "virtual" column to data cache?).
    Now, I know I can place a message list on the page instead (this is currently what I am doing), and I know I can change the application so that I provide a separate *single row" edit page, both of which provide a semi-adequate alternative.
    I like the first alternative (the one I'm using), because in-place editing of data table rows is so much more compact and elegant, both in terms of presentation and coding.
    Using this first alternative, I am currently adding to the validation error messages the currentRow attrubute so that users can see it an trace back to the corresponding row in the data table to correct the data entry.
    However, everyone, users, project drivers and developers (including myself), are grumbling a bit over such a "hackish" approach.
    Any thoughts? Am I missing something obvious?

    Well I'll be damned!
    What's done in the sample app is, of course, the intuitively obvious choice and is exactly what I started out trying to do the first time round.
    But as I mentioned before, when I first tried it (yes: I'm pretty sure I set the "for" attribute on the inlineMessage components), I got the non-unique component id exception for the inlineMessage component(s) after adding the second (but not the first) row to the page.
    Anyway, after dragging my inlineMessages to the exact same position as those in the AppModel example, now things work fine (except I think I'd like a line break before the message and to change the row/column styles so the values and messages line up properly...the look is rather ugly in the AppModel example when there are validation messages displayed).
    Not sure, but I'm thinking maybe there was an issue with where the inline message markup was placed, my first time through, relative to the data table value bound component and the column header facet?
    I was using the application view drag 'n drop feature the first time round and dragged the inlineMessage component to the spot just below the data table value bound component and hence just above the column header facet. In the AppModel example, OTOH, the inline messages are placed just after the column header facet.
    Of course, I will now try to duplicate the original exception.
    If I can (and it is an issue with placement), I will post back some sort of bug report or RFE. Otherwise, I'll post back declaring what a bone head I've been...;-)
    Anyway, thanks for the quick response, v.
    Campbell

  • Master data tables with unwanted records from transaction data upload

    Hi Friends,
      I have a master data table for infoobject 'C' with compounding characteristics 'A' & 'B'.  I upload this master data with values given below:
        <i><u> A,              B,              C,           Short text,                        Long text</u></i>
           <b>  <b>P,          10,           BBB,         Apple,                              Big Apples
             Q,             20 ,           XYZ  ,       Tomatoes    ,                    Red Tomatoes</b></b>
      When I load data into ODS from a source system, I may not necessarily have data for all these 3 fields in these transaction record.  Example:
      <i><u>     A,                B,             C,             D,            E</u></i>    
         <b> P                -1            FFF</b>          20           30            
         <b> Q                10           GGG        </b> 10           40
       The problem is when I upload the above transaction data, it populates the <b>master data table</b> too with these two new records <b>1 -1 FFF</b> and  <b>2 10 GGG</b>, which I would like to avoid.
       Is there any way?
       Will assign full points to anyone who helps me here.
       Thanks,
       JB

    Hi JB,
    If you want to load transactional data and still want to prevent the population of the master data table, I don't think it is possible, as it is goes aginst the data consistency in the warehouse.
    However, if you can afford not to load transactional data for such cases, you can activate referential integrity check for the infoobject C. Then neither transactional data nor masterdata enter the datawarehouse until you maintain masterdata yourself for the infoobject C.
    hope this helps.

  • How to create dynamic data tables with ADF 10g

    Hi,
    Can anyone provide sample code for creating dynamic data table in adf where column & row will be added dynamically according to the data coming from the Array List of data.
    I appreciate your help here.

    I think you've posted to the wrong forum. This one is for WebLogic Portal questions.
    Try the ADF/DVT forum:
    http://myforums.oracle.com/jive3/forum.jspa?forumID=1565

Maybe you are looking for

  • APEX Report to balance a column of data over 3 columns

    I have an sql report that outputs a code and description e.g. 1  Ape 2  Boar 3  Cat 4  Dog 5  Elephant 6  Goat 7  Hare 8  Ibis 9  Jackel 10 Kangaroo 11 Lion 12 Mouse 13 Numbat I need the following output where the number of records can change but I a

  • Reduce Redo

    Hi Folks RDBMS: 11gR1 we have a finance controlling database in archivelog mode which performs huge calculations from time to time. the size of the db is 10gb, but when such a report run it generates ~100gb in a couple of hours. our goal is to reduce

  • Trouble synching Photo Album with 1600+ photos and videos

    I have a very big album with over 1600 pics and videos. At some point after 1200 or so, I started getting error messages when trying to synch my photos to my computer. I am terrified to loose my pictures and want them on my phone at all times (they r

  • Prompt on close closing on no

    I am not sure what I am doing wrong here but if the user clicks no the program closes anyway. //Sets a propmt for closing the window          setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);          addWindowListener( new WindowAdapter()            @O

  • E71 WLAN problems after upgrade to 110.07.127 firm...

    Hi, recently I've upgraded my E71 to 110.07.127 firmware and all WLAN operations became very unstable. For example, when I open WLAN wizard it might show that there's no networks - while were are some for sure, when I press Refresh it starts showing