Problem using Excel

I am trying to use Excel as my source/target file. I have completed the pre-requisite steps ie.
1} Creating ODBC
2} Creating data server,physical schema and logical schema.
I am able to create a model(of excel technology) also and reverse the required sheet BUT
a) While reversing the excel sheets they come as system tables not as tables. Why?
b) I am unable to view the data present inside the sheet from designer. It gives the following error-
See com.borland.dx.dataset.DataSetException error code: BASE+66
com.borland.dx.dataset.DataSetException: *[Microsoft][ODBC Excel Driver] Syntax error in FROM clause.*
at com.borland.dx.dataset.DataSetException.a(Unknown Source)
at com.borland.dx.dataset.DataSetException.throwException(Unknown Source)
at com.borland.dx.dataset.DataSetException.SQLException(Unknown Source)
at com.borland.dx.sql.dataset.Database.createPreparedStatement(Unknown Source)
at com.borland.dx.sql.dataset.o.a(Unknown Source)
at com.borland.dx.sql.dataset.o.d(Unknown Source)
at com.borland.dx.sql.dataset.o.f(Unknown Source)
at com.borland.dx.sql.dataset.QueryProvider.e(Unknown Source)
at com.borland.dx.sql.dataset.JdbcProvider.provideData(Unknown Source)
at com.borland.dx.dataset.StorageDataSet.refresh(Unknown Source)
at com.borland.dx.sql.dataset.QueryDataSet.refresh(Unknown Source)
at com.sunopsis.graphical.frame.b.ja.dj(ja.java)
at com.sunopsis.graphical.frame.b.ja.<init>(ja.java)
at com.sunopsis.graphical.frame.b.jc.<init>(jc.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.sunopsis.graphical.frame.bb.b(bb.java)
at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)
Chained exception:
java.sql.SQLException: [Microsoft][ODBC Excel Driver] Syntax error in FROM clause.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLPrepare(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcConnection.prepareStatement(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcConnection.prepareStatement(Unknown Source)
at com.borland.dx.sql.dataset.Database.createPreparedStatement(Unknown Source)
at com.borland.dx.sql.dataset.o.a(Unknown Source)
at com.borland.dx.sql.dataset.o.d(Unknown Source)
at com.borland.dx.sql.dataset.o.f(Unknown Source)
at com.borland.dx.sql.dataset.QueryProvider.e(Unknown Source)
at com.borland.dx.sql.dataset.JdbcProvider.provideData(Unknown Source)
at com.borland.dx.dataset.StorageDataSet.refresh(Unknown Source)
at com.borland.dx.sql.dataset.QueryDataSet.refresh(Unknown Source)
at com.sunopsis.graphical.frame.b.ja.dj(ja.java)
at com.sunopsis.graphical.frame.b.ja.<init>(ja.java)
at com.sunopsis.graphical.frame.b.jc.<init>(jc.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.sunopsis.graphical.frame.bb.b(bb.java)
at com.sunopsis.graphical.tools.utils.swingworker.v.call(v.java)
at edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
at com.sunopsis.graphical.tools.utils.swingworker.l.run(l.java)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Unknown Source)

Hello Sameer, How you configured your ODBC access? I've ODI installed in Linux, having my source Excel files in a separated MS Windows server where I already defined my ODBC Data Source.
Any idea how to setup the connection in Linux to MS Windows server? Thanks in advance, Taher

Similar Messages

  • Problem using excel file as odbc data source

    hi, I have followed the instruction in
    "Creating a Repository Using the Oracle Business Intelligence Administration Tool"
    [http://www.oracle.com/technology/obe/obe_bi/bi_ee_1013/bi_admin/biadmin.html]
    and established a odbc data source using an excel file.
    however, I found that the Microsoft Excel Driver always unable to handle complex column formula.
    for example,
    FILTER(sourceTable$.NoOfItem USING (sourceTable$.Kind = 'Lemon'))
    when there are two columns using FILTER, there is an error about the ODBC driver.
    =============================================================
    Odbc driver returned an error (SQLExecDirectW).
    Error Details
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 16001] ODBC error state: 37000 code: -3100 message: [Microsoft][ODBC Excel Driver] Syntax error (missing operator) in query expression 'sum(case when T3552.[Kind] = 'Orange' then T3552.[NoOfItem] end )'.. [nQSError: 16014] SQL statement preparation failed. (HY000)
    SQL Issued: SELECT "sourceTable$".Market saw_0, FILTER("sourceTable$".NoOfItem USING ("sourceTable$".Kind = 'Orange')) saw_1, FILTER("sourceTable$".NoOfItem USING ("sourceTable$".Kind = 'Lemon')) saw_2 FROM excel_source ORDER BY saw_0
    =============================================================
    However, I change the data source using SQL SERVER, no error occurs and it shows the result correctly.
    how to slove this problem?

    I have the same issue. Does anyone know how to solve it?

  • Ever since I installed Lion, I have problems using Excell

    Ever since I installed Lion, when ever I open Excell ,30 files open and I have to close them before I can start using it. WTH is wrong ?

    Disconnect all wired peripherals except the drive in question. The drive should be connected to a built-in USB port, not a hub, and it should have an external power source. Make sure the USB cable is securely seated at both ends. Boot in safe mode.
    Test. Same problem? Connect it to a different built-in USB port. Same problem now? Try a different USB cable. Still the same?
    After testing, reboot as usual (not in safe mode.)
    If you have the same problem with the drive in all the above tests, then test it with another Mac, if possible.
    Mac OS X: Starting up in Safe Mode

  • Excel Retrieve problem using Default Aliases

    Using version 5.0.2 patch 14 on Windows 2000 client.When option "use aliases" is selected in Excel, we have started experiencing inconsistant and unreliable retrieves.Example:After first retrieve and zoom on Parent, display is:Parent__Child A__Child B__Child CRetrieve again, results:Parent__Child A__Child C__Child CLost the retrieve for Child B.Missing rows and zeros are NOT selected.Has anyone experienced this issue?

    Thanks for the reply, Sergey. I have solved my problem using different approach.
    First suggestion is ok and helpful which after I forgot to add in when I post this thread.  Second suggestion would result on this:
    <Styles>
        <Style ss:ID="" ss:Name="Normal"> --- Attribute ID would be empty
          <Alignment ss:Vertical="Bottom" />
          <Font />
          <Interior />
          <NumberFormat />
          <Protection />
        </Style>
      </Styles>
    I modified previous approach and here is my code:
    [code]
    xmlTextWriter.WriteStartElement("Styles");
    xmlTextWriter.WriteStartElement(string.Empty, "Style", sheet);
    xmlTextWriter.WriteAttributeString("ID", sheet, "Default");
    xmlTextWriter.WriteAttributeString("Name", sheet, "Normal");
    xmlTextWriter.WriteStartElement("Alignment");
    xmlTextWriter.WriteAttributeString("Vertical", sheet, "Bottom");
    xmlTextWriter.WriteEndElement();//End Alignment
    xmlTextWriter.WriteStartElement("Font");
    xmlTextWriter.WriteEndElement();//End Font
    xmlTextWriter.WriteStartElement("Interior");
    xmlTextWriter.WriteEndElement();//End Interior
    xmlTextWriter.WriteStartElement("NumberFormat");
    xmlTextWriter.WriteEndElement();//End NumberFormat
    xmlTextWriter.WriteStartElement("Protection");
    xmlTextWriter.WriteEndElement();//End Protection
    xmlTextWriter.WriteEndElement();//End Style
    xmlTextWriter.WriteEndElement();//End Styles
    xmlTextWriter.WriteStartElement(string.Empty,"WorkSheet", sheet);
    xmlTextWriter.WriteAttributeString(string.Empty,"Name", sheet, "Sheet1");
    xmlTextWriter.WriteStartElement(string.Empty, "Table", sheet);
    xmlTextWriter.WriteAttributeString("ExpandedColumnCount", sheet, "2");
    xmlTextWriter.WriteAttributeString("ExpandedRowcount", sheet, "2");
    xmlTextWriter.WriteAttributeString("FullColumns", excel, "3");
    xmlTextWriter.WriteAttributeString("FullRows", excel, "1");//To be modified
    [/code]

  • Excel export problem using craxddrt

    Hi,
    I'm using craxddrt v.11.5 in our intranet application to export rpt.reports to different formats. My code works well with PDF and text exports, but when it comes to Excel after the .Export(false) method executes the browser window just goes into idle then the session finally expires. I never catch any error. I have tried several export options with no prevail.
    I suspect the Excel export is missing some info to complete and it is trying to prompt me, but no visible prompt gets displayed/answered so it just expires.
    Could anyone help me out. I've spent several days researching and fixing the code and ran out of ideas.
    Sincerely
    Steve Komaromi

    Hi Steve, Is there some reason you are posting this question over and over again?
    Try looking at your same post: Excel export problem using craxddrt
    Also, RDC is legacy product. Look for you answer where you posted the exact same question in the legacy forum.

  • Printing Excel Instance from InfoView using Excel 2003

    Hi
    I have problem with printing Excel instance within InfoView. We are using Active X as viewer - but when user schedules report in Excel and when it opens that instance - it opens in Web Excel viewer within InfoView. At that point there is no standard menu if user uses Office 2003 or actually Excel 2003 on its own machine so user cannot print instance. Can anybody help with this. If you try to open instance on machine that has Office 2007 there are no problems since instance gets open in full Excel.
    Thanks

    What version of Crystal Reports are you using?  Any service packs or hot fixes installed?
    Can you open other xls files with 2007?  
    Have you ever exported to excel before?
    I export to -excel (97-2003) data only- and open the files with Excel 2007 with no problems. Excel 2007 complains about the old format (xls) and wants to convert it to the new excel format. I alsways ignor it.
    Maybe the 'garbage' you are seeing is because the layout of your crystal report is not working for the export. Is all the data there but you have extra cells and/or lines, or the data is pushed to the left? I find that I must have the fields packed tightly with no space between them and no space above or below the fields, or I get extra cells between and lines above or below them.
    Most of my exports are detail lines with a single line header and columns are set to match the detail line. When exporting multiple lines where the fields do not line up exactly with the ones above them, I may use one or more empty text fields that matches the size of the fields above them to fill the empty space. Sort of like:
    line 1:{field1.}{field2...}{field 3}
    line 2:(text...}{text.....}{field 4)
    And you may need to turn off 'can grow' on all fields as they may cause miss-alignment. All the data will be there when you export it, even what you can not see in Crystal. You will just need to format the cells in Excel to see it.
    Debi  (hi Don)

  • Retrieving sample basic using  Excel add in

    Hi I am having problems accessing the sample basic database using excel, I see the sample basic in Application/Database and I get an error which states that "Unable to load database[Basic]". I get this error for all the the sample databases. The system administrator said the databases were installed with the essbase, but I still can't retrieve them. Anyone has any suggestions as to why this may be occurring.Thanks,

    It's not a problem with the Add-In.The database was not Installed correctly. You need to rebuild the Sample Basic application. Can you check to see if all the DB files were installed.Look in the C:\essbase\app\Sample\Basic directory you should see these files, or atleast the outline.Basic.otlBasic.indBasic.esmBasic.tctEss000001.INDEss000001.PAGDo you know how to do this? If you want e-mail me and I'll walk you through it.Regards,Corey BidmeadClarity [email protected]

  • Error 1003 when using excel reprt, but not Word

    I am trying to use the MS Office Report vi to send my data to an Excel. I am using Labview 7.1. 
    When I place the VI on the block diagram I get the following message: (Also attached)
    Error 1003 occurred at Open VI Reference in ex_RGT_Get
    Bookmarks and named cells.vi->Configure MS Office
    Report.vi->Confugure MS Office Report.vi.ProxyCaller
    Possible Reason(s):
    The VI is not executable. (OK Dialog box)
    If I click OK, the " Configure MS Office Report pop up window is mostly grayed out . If I select "Basic report for Word" I have no error message.
    I am using Excell 2003.  The problem is with a laptop computer I am using. I do not see this problem with a desktop computer. 
    Thanks,
    Bill
    Attachments:
    MS Report 8-24.doc ‏80 KB

    Hello Bill,
    You are not trying to build an executable, just use the Express VI in a regular development VI, right?  If so, this link describes the troubleshooting steps to get rid of this error.
    Regards,
    Clint M
    National Instruments

  • When Creating a universe using excel, universe is blank.

    Hi,
    I want to create a universe using excel sheet, my server is 64bit windows, and business objects is 3.1 SP 3 FP 2.6,
    I created an ODBC connection; these are the steps I followed
    1)  I Navigated to C:, windows, syswow64 and ran the application odbcad32
    (Windows server 2008 64 bit) and created a ODBC connection using a Excel sheet 2003.
    2) Then i did the following change
    <Parameter Name="Transactional Available">No</Parameter> is set to Yes under the Generic ODBC Data Source in below location
    ...\Business Objects\BusinessObjects Enterprise 12.0\win32_x86\dataAccess\connectionServer\odbc\odbc.sbo
    3) Then went to universe created connection using under database middle ware as microsoft -MS Excel 2003 - Odbc drivers- and selected the data source connection, test the connection server is working fine.
    4) i created a universe using the connection.
    But the problem is i canu2019t see the values, dimensions and measures in my universe it blank.
    Please help me to overcome the issue.
    Regards
    Aflal

    Hi,
    i went to table browser and created the universe, and exported it to the BO server, when i run the report in webi i am getting the following error.
    "Microsoft Odbc driver manager data source not found and no default driver specified"
    Please help.
    Regards
    Aflal

  • Problem using a conditional suppress in a cross-tab ?

    is there a problem using a conditional suppress in a cross-tab on a row  or summarized field  in crystal XI?
    I am using the following conditional suppress on a summarized field and its rows
             If {@SortCode}=4 then true;
    Sortcode is a group sorting formula field
    the summarized field is a formula field as well.
    All of the summarized fields are suppressed although the cross- tab performs correctly on @Sortcode  and the summarized field when not using the condition        
    it seems to me to be a reporting flow issue although i've included "whileprintingrecords" and "evaluateafter" with no success.
    i have also moved the cross-tab from the report header to group header and applied a conditional suppress on the group header through section expert.
    this supresses the group i dont want but includes grand totals for each group and also varys the number of columns
    i can't filter on sortcode because one of the grand total calculations requires those records and a subreport or second cross-tab does not contain the same number of columns
    the cross-tab is necessary as a client may have columns spanning one to many pages
    thanks for your help

    Hi I have a similar problem,
    I have an clock in solution, where i have some dates with data such as, various entries for a date eg, 01/11/2010 1hr, 01/11/2010 3 hrs etc, 03/11/2010 2hrs , 05/11/2010 4.5hrs, 05/11/2010 4 hrs so i need total for each day and highlight only those days, where total is less than 4.5, including days which donu2019t have records eg 02/11/2010 & 04/11/2010, I summarise in totals using a cross tab, to get summarised output for each day as,
                Totals
    01/11/2010    4
    03/11/2010    2
    05/11/2010    8.5
    in order to get the dates which didnu2019t have records, i added a dataset from Excel spreadsheet where i just have a sequential dates for the year , and use record selection to select only those dates in range which i need to display, so the result i get
    01/11/2010    4
    02/11/2010    0
    03/11/2010    2
    04/11/2010    0
    05/11/2010    8.5
    so far so good, all using cross tab, now i want to suppress rows which have total > 4.5 so the result should be
    01/11/2010    4
    02/11/2010    0
    03/11/2010    2
    04/11/2010    0
    How can i do that?

  • Useing Excel table genarate the report in bi publisher 11g

    Hi All,
    Can anyone share your ideas pls...
    Using Excel files we upload the data into data set excel but could't generate the reports in Bi-Publisher 11g...we are getting the error :"Null".
    We are using open office...is this could be a problem..?
    Rgds..DCB
    Edited by: DCB on Dec 30, 2010 5:30 AM

    check the below
    http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/bi//bip/advancedbip/advancedbip.htm#t3
    http://www.youtube.com/watch?v=NPbKRnSkDVM
    using rtf template
    http://bipconsulting.blogspot.com/2010/02/drill-down-to-detail-or-another-report.html

  • Problem in Excel after extracting data from SAP Report

    Hello,
    I have a problem with Excel file after extracting it from one of the SAP report.
    When my client extracted data from SAP in to excel he is coming across minus symbol on both sides of the number.
    for ex:        -447492177-
    When i extracted same SAP report in to excel i didnt face any such problem.
    Please share your inputs on what could be the problem.

    1. Make sure your client and you are using the same version of Microsoft Excel
    2. Let your client try to OPEN the exported xls file from a existed workbook instead of double-clicking the file directly.
    Atom

  • Using Excel macros & change properties

    Hi,
    1) my program use Excel macro via a runtime.exec(cmd). I want to use JWS to deliver new versions of application but if I have to put my macros in a jar file how can I reach them (no problem with a file propertie or with gif ressources).
    2) how can I change default properties ("Dossier des applications" in French maybe Applications dir in advanced) wich is enabled in the window.
    thanks a lot
    Sophie

    1) my program use Excel macro via a runtime.exec(cmd).
    I want to use JWS to deliver new versions of
    application but if I have to put my macros in a jar
    file how can I reach them (no problem with a file
    propertie or with gif ressources).You have a lot of options how to do this.
    I would try to use the I/O APIs that reads the macro file
    from a web server (InputStream is = url.openStream()) and put it
    in a local file (FileOutputStream = new FileOutputStream(file)).
    Of course you would need a local location where to store it, could
    be hardwired, or asked from the user.
    2) how can I change default properties ("Dossier des
    applications" in French maybe Applications dir in
    advanced) wich is enabled in the window.I do not understand what you want to do. Explain again.
    Regards,
    Marc

  • Problem with Excel 2013 on W8 and WD NAS

    With my W8 laptop, I get a lot of problem saving excel file on my NAS. I get "we can't save filename.xlsx because the file is in read-only. To keep your changes you'll need to save the workbook with a new name or in a different location..."
    I'm alone using the file. Not being use by anyone else.
    Exemple: load file "A" from the NAS, can't save it back on the NAS. I save it as "B" on my desktop. Open "B" do some change and try to save it... get " that someone else is using the file....
    Only way is to save it one a 3rd name...
    I have this issue often but not all the time..
    Don't see this with W7pro laptops...
    Thank you 

    Hi FGauthier,
    Have you ever try to save Document ,PPT file or Text file to the NAS? Does this issue only occurs with excel file?
    what will happen if you copy the file to NAS instead of use the 'save as' feature within excel?
    When you open the excel file, if it flagged as read-only, try to right-click the file, check if the read-only option is ticked. Also you can try to save the file as different file format to test this issue.
    Also please check if you enable the preview pane, try to disable it . 
    a) Open File Explorer.
    b) Click on View Tab.
    c) Click on Preview Pane to view\hide it.
    Wind Zhang
    TechNet Community Support

  • Problems using Labview as ActiveX Server

    Hello,
           I have been having difficulty using Labview as an AcvtiveX server. I have reviewed all the postings on this subject and most are either pre Labview 8.2 and thus do not account for the changes made between 8.2 and 8.5 which broke the Activex server functions. I have looked at the recommendations for changing the to code to export (exported vi's in a DLL or Source distribution) and have tried these with no success. The closest example I have found was posted here http://forums.ni.com/ni/board/message?board.id=170&thread.id=283417 the example code they posted does ont work for me and still generates and error 3005.
          What i need is simple. I want to turn my applicaiton into a Vi server.. Expose a vi that acceses elements in the Vi server.. (controls, queues, Globals etc) that are in the Vi server context. I would then like to build a vi .. or dll that calls the 'exposed' vi in the vi server to pass data to or from the vi server. The V test.zip example file in the above indicated post is a pretty good example of this .. it just does not seem to work when i build it in 8.5. Are there any GOOD and 'current' examples of using labview as the ActiveX server (Compiled) and calling exposed vis from an external application Labivew, Visual Basic.. etc??  I am only interested in cases where Labview is the Sever. or both client and server.
           I have used a tool "ActiveXplorer" to examine the registered "exe" when the viserver is run. It always shows that there is no Type Library associated and the object is not creatable. There is a .tlb created by the project build however, where as the previous version 8.2.1 of Labview did not build that correctly. I have also tried this on 8.6 with similar error 3005 generated. sooooo what am i missing?
          Thanks
           Louis Ashford

    Mike,
           Thank you for your response to my question. The problem is that the example you site does not use the Labview vi as the Server. Excel is actually the vi server and the automation open is using and excel automation object. I am sure that Excel creates proper automation objects .. Labview however does not seem to. So while this example shows how labview can function as a client it is not an example of a compiled Labview Sever being accessed by a 'laview vi'. Possibly I am not looking at the vi that you are thinking of.
           The examples i am aware of:
                        "ActiveX Event Callback for Excel.vi... (Excel is server not Labview vi)
                        "ActiveX Event Callback for IE.vi (same Labview vi is client)
                        "Write Table to XL.vi" ( again excel is the server)
                        "3D Graph Properties - Torus.vi" (accesses an activex Control 'not' and Activex EXE)
                        "3D Lorenz Attractor Draw at Compeltion using 3D Curve.vi (Uses an activex  control not activex Exe server)
                        "3D Parametric Surface - Ribbon.vi (Uses an activex  control not activex Exe server)
                        "3D Surface Example - Fluctuating Sine Wave.vi (Uses an activex  control not activex Exe server)
                        "Excel Macro Example.vi (Uses excel as automation server..not Labview)
                        "FamilyTree.vi (uses MSComctlLib.ITreeView object not Labview as server)
                        "SlideShow.vi" (uses PowerPoint._Application not Laview as server)
          Most of the posts I have seen are for versions prior to  Labview version 8.2 (where the ActiveX server was broken) I have seen only a few posts that actually address the issue i am talking about. however thus far no real solution has been offered. I get the same results when compiling and testing this with 8.6..  as well. So have you tried this Mike? Possibly i am missing something very simple..
          The example i did find and gave the link to is a pretty simple one. This does not work on my machine at all. You can select the automation server that is registered with windows after running the server one time and this then breaks the client vi.. I have found by reselecting the GetViReference property node in the Client vi that it will the 'fix' the client vi as far as labview is concerened and it no longer shows and error. Now when you run the Client vi it will infact find the vi server and will launch it ok. However. The open automation object then hangs.. for quite some time then returns the error
    "Error -2146959355 occurred at Server execution failed
     in Client_reader.vi" Obviously the automation Exe (server) was seen because it was opened yet it did not return a valid reference so the subsequent property nodes in the client.vi will fail. Something is wrong with Labviews opening of or creating of automation objects..
              Thanks,,
                    Louis Ashford

Maybe you are looking for