CSV and JDBC

Is there a jdbc driver for a csv file. I want to implement a database on a client machine without them having to install a database back end.
(actually the csv is extracted from a vision database which i've never once heard of, does anyone know if vision is a commercial database, i have a feling its a companies proprietry database!)
Pete

The post you are responding to is 2.5 YEARS OLD!
And he's been coding all this time.
Way past my bedtime,
Dylan

Similar Messages

  • How to populate budget files file_budget.csv and file_acct_budget.csv

    Hi, we have implemened Financial Analytics 7.9.5 on EBS system. We have successfully loaded all the Data except Budget information. Recently I came to know that there is no Budget ETL in ORAR12..and need to use Universal Adapator for populating the budget information.
    According to this guideline I'm supposed to populate file_budget.csv and file_acct_budget.csv files manually and start the extract. Now I'm having trouble filling these files. These files exoect many IDs to be filled in like ORG_ID etc..and documentation says these IDs shoule be same as one in Warehouse..I don't understand how to fill this. Has anybody done this already..if so please guide us how to fill these files and appreciate if you can post a sample record for each of these files.
    Thanks.

    You need to go to the corresponding dimensions and see how the integration_id is populated for this dimension. For this, you will have to open the corresponding SDE mapping in Informatica and trace back the integration_id. The document says which table's integration_id to look for, for each of the ids in the fact. For eg:
    GL_ACCOUNT_ID
    GL Account identifier. Populate with integration_id from w_gl_account_d.
    PRODUCT_ID
    Product identifier. Populate with integration_id from w_product_d.
    COMPANY_ORG_ID
    Company Org identifier. Populate with integration_id from w_int_org_d where company_flg = Y.
    For example, if w_gl_account_d's integration_id is formed from gl_code_combinations.code_combination_id in EBS, you need to populate the code_combination_id (from EBS) of your budget record, for each row in the budget fact csv file.

  • Help on RFC to JDBC and JDBC to RFC

    Help on RFC to JDBC and JDBC to RFC
    Hi Gurus
    I have the scenario where an RFC will be triggered in SAP , to write to a DB2 database and insert new records in a table
    and vice versa the JDBC has to read som data from a table based on a primary key, mark them as read for not be read next time and send the data to an RFC where a table in SAP will be updated.
    I have never worked with JDBC before , pls advice.
    is there any new issue to consider in PI 7.0 regarding JDBC
    Thanks.

    The requirement looks standard,
    SEARCH IN SDN FOR JDBC scenarios,you will find many docs for sender as well as Receiver.
    >
    > is there any new issue to consider in PI 7.0 regarding JDBC
    >
    no issue with PI7.0.
    Regards,
    Raj

  • Creating a service ; What needs to be added to tnsnames.ora and JDBC url?

    DB version: 11.2.0.2
    OS platform : Solaris 10
    We have a 2 node RAC.
    DB name   = mbsprd
    Instance1  = mbsprd1
    Instance2  = mbsprd2I want Instance 1 (mbsprd1) to be used for our OLTP application and Instance 2 (mbsprd2) to be used for another application of DSS nature.
    Based on the syntax
    srvctl add service -d <dbname> -s <ServiceName> -r <Preferred Instance> -a <Available Instance>I am going to create 2 services
    -- Creating a service called OLTP
    srvctl add service -d mbsprd -s OLTP  -r mbsprd1 -a mbsprd2-- Creating a service called DSS
    srvctl add service -d mbsprd -s DSS  -r mbsprd2 -a mbsprd1-- Starting the services
    srvctl start service -d mbsprd -s OLTP
    srvctl start service -d mbsprd -s DSSI guess the above steps are enough to configure a service at the server side.
    I would like to know what needs to be done at the client side.
    Currently the tnsnames.ora file and JDBC url used by our clients are shown below. What needs to be added to tnsnames.ora file and jdbc URL to start using services configured above?
    -- SCAN based TNS entry
    mbsprd =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (COMMUNITY = tcp.world)
            (PROTOCOL = TCP)(Host = p148149-scan.tpam.net) (Port = 36964))
        (CONNECT_DATA =
          (SERVER       = DEDICATED)
          (SERVICE_NAME = mbsprd)
          (FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC))
    -- TNS entry based on local listener
    -- Instance 1
    mbsprd1 =
    (DESCRIPTION =
       (ADDRESS_LIST =
       (ADDRESS =(PROTOCOL = TCP)(HOST = hsolarp148-vip)(PORT = 36973))
       (CONNECT_DATA =
             (SERVICE_NAME = mbsprd)
             (INSTANCE_NAME = mbsprd1)
    -- Instance 2
    -- TNS entry based on local listener
    mbsprd2 =
    (DESCRIPTION =
       (ADDRESS_LIST =
       (ADDRESS =(PROTOCOL = TCP)(HOST = hsolarp149-vip)(PORT = 36973))
       (CONNECT_DATA =
             (SERVICE_NAME = mbsprd)
             (INSTANCE_NAME = mbsprd2)
    )JDBC entry for RAC
    jdbc:oracle:thin:@p148149-scan.tpam.net:36964:mbsprd -- Alternative version used by some clients because the above had 'some issues'
    jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=p148149-scan.tpam.net) (PORT=36964))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=mbsprd)(FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 10))))

    OLTP =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = p148149-scan.tpam.net)(PORT = your_port_number))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = OLTP)
    DSS =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = p148149-scan.tpam.net)(PORT = your_port_number))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = DSS)
      )JDBC entry for RAC
    jdbc:oracle:thin:@p148149-scan.tpam.net:36964:service_name
    jdbc:oracle:thin:@new_tns_entry_description(if you would like to connect the database with particular service)
    try this and let us know any issues,

  • Double click to open CSV and TSV in Excel 2013

    We have someone (John Doe) that would like to open TSV (tab delimited text file) files automatically in Excel without using the import wizard.
    Our goal: Basically the file is provided by a website (an export of data) and it downloads to the temp file location, then have it open in Excel automatically.
    We have tsv associated with Excel, and excel opens. However it just goes to the beginning screen where you have to select a blank workbook. We never see that data opened into Excel.  If we save the file,
    open excel, tell excel to open the TSV we can go through the import wizard to open the data into a spreadsheet. But this is not our goal. :)
    We know this can be done for two reasons.  There is another employee (Jane Doe, no relation) that has this working according to our goal. She can even double click on a TSV and it opens right up into an Excel spreadsheet with the data parsed properly.
    If we double click on a TSV file on John's computer it opens excel, but goes right to the option to open a blank workbook. None of the tsv data comes in.  Unfortunately Jane does not recollect how this started working on her computer. I have compared
    Excel settings and addins on both computers but am not finding a difference.
    Second reason I know this can work. I used to have the same issues on my computer with CSV files. I would have to open a blank Excel, then have Excel open the CSV and go through the import wizard to configure the data parsing.  For about 6-12 months
    now I have been able to just double click on a CSV and it opens into an Excel spreadsheet with the data parsed properly. Unfortunately I do not recall ever doing anything to my computer to make this happen... Granted that could be a memory issue on my part.
    Any ideas on this would be greatly appreciated.
    Thank you
    90% of the laws are made because of 10% of the people.

    THat sounds like a track pad issue - check you track pad preference settings
    LN

  • IDoc to JDBC  and JDBC to IDoc Scenario

    Dear All,
    I am working on IDoc to JDBC and JDBC to IDoc Scenario.
    I have to send Idoc from SAP to Non SAP system(.NET application) i almost configured in XI but still i don't know when my INTEGRATION will INVOKE how my data will proceed from IDOC to Oracle database(Through JDBC) and in case of revese how and when Data flow will start.
    Does anyone have completed STEP by STEP scenario document for this?
    How my Idoc will sent to XI?
    How XI will pick up data from IDoc?
    How XI will Convert data to JDBC and UPDATE in Oracle Database?
    And i reverse case(JDBC to IDoc) when my INTEGRATION will INVOKE?
    Where and When i can watch my process and data?
    How can i test the whole integration?
    I AM GETTING ERROR WHILE TESTING CONFIGURATION IN Integration Directory "Error while refreshing the XI runtime cache" and when i check this in SXI_CACHE  it gives me error
    "Unable to refresh cache "NO_BUSINESS_SYSTEM"
    "Error during last refresh to cache"LCR_GET_OWN_BUSINESS_SYSTEM - NO_BUSINESS_SYSTEM"
    Please solve all the above problems i will reward u points
    thanks,
    RP

    Hi,
    While we working on IDOC to JDBC interface..
    We have to deploy JDBC Drivers?
    Go through this links,
    /people/varadharajan.krishnasamy/blog/2007/02/27/configuring-jdbc-connector-service-to-perform-database-lookups
    http://searchsap.techtarget.com/tip/0,289483,sid21_gci1246926,00.html
    To install JDBC driver follow the how to guide.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/xi/xi-how-to-guides/how%20to%20install%20and%20configure%20external%20drivers%20for%20jdbc%20and%20jms%20adapters.pdf
    Configuration of JDBC Adapter for SQL Server
    JDBC Driver = com.microsoft.jdbc.sqlserver.SQLServerDriver
    Connection = jdbc:microsoft:sqlserver://hostname:<port>;DatabaseName=<DBName>
    UserID and Password.
    If the connection is not working find the correct port number.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40b92770-db81-2a10-8e91-f747188d8033
    JDBC- X I -  R/3 Scenario
    /people/bhavesh.kantilal/blog/2006/07/03/jdbc-receiver-adapter--synchronous-select-150-step-by-step
    /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30
    Please check the driver path as mentioned below.
    JDBC Driver : sun.jdbc.odbc.JdbcOdbcDriver
    Connection:jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=//location of DB table.mdb;
    No JDBC driver required.
    Receiver JDBC scenario MS access - /people/sameer.shadab/blog/2005/10/24/connecting-to-ms-access-using-receiver-jdbc-adapter-without-dsn
    follow this thread
    Re: Problem when connecting to MS Access through JDBC Adapter.
    SAP Note 850116 has details
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Configuring the Sender JDBC Adapter
    http://help.sap.com/saphelp_nw04/helpdata/en/1d/756b3c0d592c7fe10000000a11405a/content.htm
    Configuring the Receiver JDBC Adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/b0/676b3c255b1475e10000000a114084/content.htm
    Idoc Reveiver adapter..
    http://help.sap.com/saphelp_erp2004/helpdata/en/b9/c5b13bbeb0cb37e10000000a11402f/content.htm
    Thanks,
    Satya Kumar
    /people/michal.krawczyk2/blog/2005/12/04/xi-idoc-bundling--the-trick-with-the-occurance-change
    Edited by: SATYA KUMAR AKKARABOYANA on May 8, 2008 5:51 PM

  • CSV and PDF export in interactive report

    Hello all,
    how can I make some of my columns which are visible in the report, not visible in the CSV and PDF exports. And how can I customize the width of the PDF export columns. In the normal reports it is possible in the print report settings but here I don't see such option.
    Regards!

    Hi,
    First, i am sorry for my bad english ;)
    well, there is my problem, i have a dashboard and when i want to export it to excel, no problem, all is perfect !! but if i want to export it to CSV file, i have nothing !!!
    have you any idea for the problem ?
    Thanck you and have a good day :)
    nbibil

  • How to avoid hardcoding in RFC Lookup and JDBC Lookup during transport...

    Hi All,
      We have RFC and JDBC Lookups in some of our scenarios(JDBC to RFC synch)....Now problem is during transport of design objects, we have to change the business system and channel name manually in UDF in target environment....as it wont change although we define the target group in SLD.....we want to avoid this hardcoding.....one idea is we can use a business service inspite of business system and assign the comm channel to it.....this business service will be generic for all environment(dev,qua and prod)...and hence we dnt hav to hardcode....pls let me knw how to achieve or its possible or not....
    waiting for ur inputs....
    Regds,
    Pinangshuk.

    Hi,
    For RFC lookup you might be doing hardcoding for Business system and RFC channel name.
    Options are
    1) Create value mapping for Business system. So you can maintain it in Directory part.
    2) Keep the RFC channel name same for all system (Development, Quality, Production)
        The details of channel can be changed in the Directory part of the respective system

  • Import-CSV and Takeown.

    I'm currently trying to come up with a way to search an entire folder directory to find all objects that a particular user is owner to, export that list to csv, then import that csv and using takeown to grant local Administrators Owner.
    Scouring the internet, I've been able to come up with this Powershell script to scan a directory and export the findings to a csv.
    param(
    [string]$username = "NameofUserSearchingFor",
    [string]$logfile
    Set-ExecutionPolicy Unrestricted
    if ($logfile -eq "") {
    $logfile = "c:\" + $username + "-Owner.csv"
    Write-Host "Setting log file to $logfile"
    #Path to search in
    [String]$path = "c:\TestFolder"
    [String]$AD_username = "Domain\" + $username
    #check that we have a valid AD user
    if (!(Get-ADUser $AD_username)){
    Write-Host "ERROR: Not a valid AD User: $AD_username"
    Exit 0
    Write-Output "$username" | Out-File -FilePath $logfile
    $files = Get-ChildItem $path -Recurse
    ForEach ($file in $files)
    $f = Get-Acl $file.FullName
    if ($f.Owner -eq $AD_username)
    Write-Output $file.FullName | Out-File -FilePath $logfile -Append
    exit 0
    That script exports data in the form of:
    NameofUserSearchingFor
    C:\TestFolder\TestFolder1
    C:\TestFolder\TestFolder2
    C:\TestFolder\TestFolder1\test1.txt
    C:\TestFolder\TestFolder2\test2.txt
    I'd like to use takeown to read each line of text and take ownership for local Administrators.  
    The script i'm trying to use doesn't do anything though.
    #Local Admininstrator Take Ownership
    $rows = Import-Csv "c:\NameofUserSearchingFor-Owner.csv"
    ForEach ($row in $rows)
    takeown /A /F $row
    Perhaps I'm going about this all wrong.  I'm relatively new to Powershell and have been trying to come up with a way to do this for the past 3 days.
    Any assistance would be greatly appreciated!
    *Update*
    If I reconfigure the takeown portion a bit to this:
    #Local Admininstrator Take Ownership
    $Path = "c:\NameofUserSearchingFor-Owner.csv"
    $rows = Import-Csv $Path
    ForEach ($line in $rows)
    takeown /A /F $Path
    The result is:
    SUCCESS: The file (or folder): "c:\NameofUserSearchingFor-Owner.csv" now owned by the administrators group.
    But will repeat as many times as there are lines of text in the csv.  So if there are 4 lines of text in the csv, that line will repeat 4 times.  I find it interesting that it knows how many lines there are but instead of granting local Administrator
    the owner to the path specified in the line it will instead grant local Administrator to the csv file.

    That is because you are takingownership of the CSV.
    ForEach ($line
    in$rows){
        takeown /A
    /F $Path
    should be:
    ForEach ($line
    in$rows){
        takeown /A
    /F $line
    ¯\_(ツ)_/¯

  • Any difference in the dbms and jdbc drivers btw oracle 8i lite and 9i lite

    Is there any significant difference between oracle 8i lite and oracle 9i lite in terms of database and jdbc drivers?
    If not, it may be better off using oracle8i.

    According to Oracle , 9i lite is more powerful than 8i Lite.
    one thing, 8i Lite is not certified for windows 2000.
    jothi

  • Problem between SOAP Sender and JDBC Receiver

    Hi,
    I have a asynchronous scenary between SOAP Sender and JDBC Receiver.
    The idea is sending an ID for updating one register.
    Table structure is:
    TABLE AS_PERSONA
        (P_RUT                         VARCHAR2(10) NOT NULL,
        P_NOMBRE                       VARCHAR2(50),
        P_APELLIDO                     VARCHAR2(50))
    The ID is the P_RUT field.
    The structure of message that I send by SOAP, is the following:
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <SOAP-ENV:Body>
              <m:MT_CONS_SOAP xmlns:m="urn:prueba:voliva">
                   <CONSULTA>
                        <P_RUT>15445</P_RUT>
                   </CONSULTA>
              </m:MT_CONS_SOAP>
         </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    The JDBC receiver structure is:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_CONS_PERSONA xmlns:ns0="urn:prueba:voliva">
         <Statement>
              <AS_PERSONA action="UPDATE">
                   <table>AS_PERSONA</table>
                   <access>
                        <P_NOMBRE>DELETE_BY_XI</P_NOMBRE>
                        <P_APELLIDO>DELETE_BY_XI</P_APELLIDO>
                   </access>
                   <key>
                        <P_RUT>15445</P_RUT>
                   </key>
              </AS_PERSONA>
         </Statement>
    </ns0:MT_CONS_PERSONA>
    When I do a call to SOAP by XMLspy, it returns a message without data, that means succesfull reply.
    I see message monitor and see the succesfull flag. But in the database it doesn't update the register.
    This scenario was proved using the File Sender and same JDBC Receiver, then result was succesfull.
    I proved SOAP Sender with a File Receiver, storing information from SOAP sender in an archive, and works well.
    Then I imagine that exist some problem between SOAP and JDBC. what could be happening ?
    Thanks.

    Hi,
    Looks like the problem is with the JDBC receiver...try updating the value in the table by using a File-JDBC scenario..does it work..check the adapter monitor in RWB..
    Regards,
    Sushumna

  • Need information about Mail  and JDBC Adapter

    Hi Guys,
    I am just started learning XI. Can any you provide any document how to use Mail and JDBC adapters in step-by-step way.
    Thanks & Regards
    Surendra M

    hi,
    Check these links
    Mail Adapter
    http://help.sap.com/saphelp_nw70/helpdata/en/ad/bf93409c663228e10000000a1550b0/frameset.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/9e6c7911-0d01-0010-1aa3-8e1bb1551f05
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6d967fbc-0a01-0010-4fb4-91c6d38c5816
    JDBC Adapter
    http://help.sap.com/saphelp_nw70/helpdata/en/22/b4d13b633f7748b4d34f3191529946/frameset.htm
    Receiving Mail attachments using additional files of file adapter
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1685 [original link is broken] [original link is broken] [original link is broken]
    FILE to JDBC Adapter using SAP XI 3.0
    /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30
    Tips and Tutorial for Sender JDBC Adapter
    /people/yining.mao/blog/2006/09/13/tips-and-tutorial-for-sender-jdbc-adapter
    Sachin
    Message was edited by:

  • File to Idoc and Jdbc

    Hi Guys,
                 Can I implement a scenario wherein the data is sent to Idoc and JDBC parallelly without using BPM?
    Regards,
    Ashish

    Ashish,
    ><i>If i add multiple recievers in receiver determination step without any condition, then how do i add multiple interface determinations in the area below?</i>
    Once you add multiple Receivers and save the same, the Receivers will be available in the Window Below and you would need to create an Interface Determination for each of these Receivers.
    As you do not have any condition, no need to add conditions.
    ><i>created seperate Receiver determinations</i>
    You would need only ONE RECEIVER DETERMINATION and this receiver determination would in turn have multiple Interface Determinations.
    Like mentioned, add multiple receivers save the Receiver Determination and in the window below, you will nopw be able to add an Interface determination for each of the receiver.
    Regards,
    Bhavesh

  • JMS and JDBC Adapter in PI7.1

    Hi All,
    Kindly tell me about the blogs for JMS and JDBC adapter.
    Please tell me about the Message Types in JMS adapter.
    Thanks in advance.

    Hi Shwetambari,
    Thanks for the reply.
    We need to mention the Adapter Modules while configuring the communiucation channels in JMS
    e.g. Adapter/ConvertJMSMessageToBinary,Adapter/ConvertBinaryToXMBMessage etc.
    So please tell me whether we need to write the cide for the same in JAVA or it is already there ?If it is there then whre can we get it?Do we need to decompile the archeve ?If so, then how to do it?
    Can you give me the Adaqpter Modules for which the code is already there?
    The JMS adapter (Java Message Service) enables you to connect messaging systems to the Integration Engine or the PCK.
    What are the different types of Messaging Systems?Or what is meant by the Messaging System in JMS?
    What are the different types of Messages used?
    Thanks in advance.
    Edited by: Shweta Kullkarni on Sep 4, 2009 5:22 AM

  • How to upload an html file using jsp and jdbc

    Hi,
    im trying to upload an html page using JSP and jdbc. but of no success.
    my aim is to keep some important html pages in the database.the file size can vary.the file has to be selected from a local machine (through the browser) and uploaded to a remote machine(where the databse resides).
    any help/sample code or pointer to any helpful link is appreciated.
    thanks in advance
    javajar2003

    When uploading a file, I use a byte array as a temporary buffer..
    So, you should then be able to store the byte array in the
    database as binary data.
    example>
    //Temporary Buffer To Store File
    byte[] tmpbuffer = new byte[860];
    //Some Code To Upload File...
    //File Should Now Be In Byte Array
    //Get DB Connection and execute Prepared Statement
    Connection con=//GET DB CONNECTION;
    String sql=insert into TABLE(page) values(?);
    PreparedStatement ps=con.prepareStatement(sql);
    ps.setBytes(1,tempbuffer);
    ps.executeUpdate();
    //Close PS and Free DB Connection
    ..... and this method looks like you dont even have
    to store the file in a byte array, you can just give
    it the input stream.
    ps.setBinaryStream(int, inputStream, int);
    You may have to make several attempts at this. I have
    uploaded a file and temporarily stored it in a byte array,
    but have never from there stored it in the DB as binary
    data.. but this looks like it'll work.
    Good Luck!

Maybe you are looking for

  • How to set the number of contents in list area of t:selectOneMenu

    Hi all Can any one plz suggest me how to fix size of number listed elements in <h:selectOneMenu> or <t:selectOneMenu>. I want to set this size to 10 so that i can control dropdown list size, which appeared quite long and shadows large screen area as

  • Design Console SSL problems for OIM 9.1.0.2

    Hi there, I have installed the design client for OIM 9.1.0.2, patched it and activated SSL using the instructions in: http://download.oracle.com/docs/cd/E14049_01/doc.9101/e14062.pdf However, when I attempt to log in, I get the following error at the

  • The specified name is already in use,

    Hi, Am deploying SPD reusable workflow. Am getting below error. The specified name is already in use. The document or folder name was not changed. To change the name to a different value, close this dialog and edit the properties of the document or f

  • Character  information at the candidate window in the pinyin input system.

    While learning writing chinese characters with the pinyin input system at an apple store, I found that at the candidate window, already selected a character, the window showed the pinyin with the tone number, the code, the radical and the components

  • Using a external laser wireless mouse with MacBook Pro

    Recently I have been having a couple situations where when I move my wireless mouse the pointer lags around and is very jumpy. Not precise at all. This happens only when using the external and not the track pad at all. I want to say it is because the