Can we pass objects to pl/sql block

hi,
can we pass objects to pl/sql block.i think we can.how to pass it.help me in getting the examples of "passing objects to pl/sql block"

What exactly do you mean ? You can pass objects like any other parameters
into and out from procedures/functions:
SQL> create or replace procedure get_object(myobj in out nocopy my_obj)
  2  is
  3  begin
  4   dbms_output.put_line('ID : ' || myobj.empno);
  5   dbms_output.put_line('Salary : ' || myobj.sal);
  6   dbms_output.put_line('Department : ' || myobj.deptno);
  7   myobj.sal := myobj.sal*2;
  8  end;
  9  /
Procedure created.
SQL> declare
  2   mo my_obj := my_obj(1,1000,10);
  3  begin
  4   get_object(mo);
  5   dbms_output.put_line('New salary : ' || mo.sal);
  6  end;
  7  /
ID : 1
Salary : 1000
Department : 10
New salary : 2000
PL/SQL procedure successfully completed.Rgds.

Similar Messages

  • Can i pass output from PL/SQL Block (Urgent)

    Dear All,
    I am calling ABC.sql from Shell Script using input parameters.
    eg.
    Declare
    X varchar(12) := &1;
    Begin
    Select..........................
    Exception
    End;
    This &1 parameter i am passing from shell script.
    Like that, is it possible to pass output parameter to Shell script.
    Thanks,
    Vikas

    I don't usually do Windows but ...
    C:\TEMP>type t.bat
    @@echo off
    for /f %%D in ('sqlplus -s user/password@instance @t.sql 1') do (
       set res=%%D)
    echo result is %res%
    C:\TEMP>type t.sql
    var x VARCHAR2(10);
    set pages 0 feedback off echo off verify off;
    BEGIN
       SELECT 'Hello' INTO :x
       FROM dual
       WHERE 1 = &1;
    END;
    print x;
    exit;
    C:\TEMP>t.bat
    result is Hellosprings to mind as one way to do it.
    Amiel:
    Yes, you can use the sqlplus exit command to return a value but there are couple of limitations. The return value must be a number (enforced by sqlplus), and it must be less than 256, and on some operating systems less than 128.
    John

  • How can I pass objects across neywork?

    How can I pass a ObjectOutputStream to a ObjectInputStream, across a socket?
    Thanks in advance for your posts!

    Or maybe I am misunderstanding your question?-Probably
    Lets see: ObjectOutputStream passes data trought aout
    Stream; ObjectInputStream receives data trought a in
    Stream: so, I suppose that they can use as streamsthe
    connections betwen two sockets, in one point the
    ObjectOutputStream sending, an in another the
    ObjectInputStream receiving.Yes. The sockets provide the connections, and you can
    call getInputStream or getOutputStream on the sockets
    to read what the other guy is sending, or to write to
    the other guy. You don't actually pass the sockets or
    streams back and forth--they're just the channels by
    which you pass your data.I knew that, thanks anyway. But my question is how can I pass objects throught that streams.
    Anyone knows?
    Thanks

  • How to pass parameter to pl/sql block

    Hi,
    I am getting following error when trying to create staging table from shell script by passing parameter.
    SQL*Loader-941: Error during describe of table T1_1DAY_STG
    ORA-04043: object T1_1DAY_STG does not existThis is PL/SQL block being called inside shell script
    begin
    execute immediate 'create table t1_&1._stg as select * from t1_rpt_tmt';
    endShell Script Call
    load_data_to_oracle()
    for i in 1DAY 7DAY 15DAY
    do
    ${ORACLE_HOME}/bin/sqlplus ${ORACLE_USER}/${ORACLE_PASSWD}@${ORACLE_SID} << EOF > ${TMP_LOG_FILE} 2>&1
    set serveroutput on
    @${CREATE_STAGE_SQL} "$i"
    COMMIT;
    QUIT;
    EOF
    ########Main#######
    load_data_to_oraclethanks
    sandy

    i dont understand why you want run it from shell script. you can write procedure like this :
    SQL>
    SQL> CREATE OR REPLACE PROCEDURE mytestProc(p_in VARCHAR2) AS
      2  begin
      3    FOR i IN (select REGEXP_SUBSTR(p_in,'[^,]+',1,ROWNUM) tblName
      4                from dual
      5                CONNECT BY INSTR(p_in, ',', 1, level - 1) > 0)
      6    LOOP
      7      execute immediate 'create table t1_'||i.tblname||'_stg as select * from myt2';
      8    END LOOP;
      9  end;
    10  /
    Procedure createdand run it
    SQL> exec mytestProc('1day,7day,15day');
    PL/SQL procedure successfully completed
    SQL> select * from t1_15day_stg
      2  union all
      3  select * from t1_1day_stg
      4  union all
      5  select * from t1_7day_stg;
    T                  N
    SQL>
    SQL> drop table t1_15day_stg;
    Table dropped
    SQL> drop table t1_1day_stg;
    Table dropped
    SQL> drop table t1_7day_stg;
    Table dropped
    SQL> purge table t1_15day_stg;
    Done
    SQL> purge table t1_1day_stg;
    Done
    SQL> purge table t1_7day_stg;
    Done
    SQL>

  • Pass parameter to pl/sql block

    Hi,
    I am getting following error when trying to create staging table from shell script by passing parameter.
    SQL*Loader-941: Error during describe of table T1_1DAY_STG
    ORA-04043: object T1_1DAY_STG does not existThis is PL/SQL block being called inside shell script
    begin
    execute immediate 'create table t1_&1._stg as select * from t1_rpt_tmt';
    end Shell Script Call
    load_data_to_oracle()
    for i in 1DAY 7DAY 15DAY
    do
    ${ORACLE_HOME}/bin/sqlplus ${ORACLE_USER}/${ORACLE_PASSWD}@${ORACLE_SID} << EOF > ${TMP_LOG_FILE} 2>&1
    set serveroutput on
    @${CREATE_STAGE_SQL} "$i"
    COMMIT;
    QUIT;
    EOF
    ########Main#######
    load_data_to_oracleThanks
    Sandy

    It is probably a permission issue. Are you the owner of the table you are trying to select from in your PL/SQL block? if not, do you have select permission granted specifically?
    Here is my test:
    test > create table T_ABC (a number, b number);
    Table created.
    test > @t_abc Hello
    test > begin
    2
    3 execute immediate 'create table t1_&1._stg as select * from t_abc';
    4
    5 end;
    6 /
    old 3: execute immediate 'create table t1_&1._stg as select * from t_abc';
    new 3: execute immediate 'create table t1_Hello_stg as select * from t_abc';
    PL/SQL procedure successfully completed.
    test > desc t1_Hello_stg
    Name
    A
    B
    test > desc T_ABC
    Name
    A
    B
    test >

  • Unable to pass object from pl-sql to wps

    Hi Team
    I am trying to pass an object to a different system via WPS 6.2. I am using WPS 6.2 and Oracle 10g.
    I want to pass an array of objects returned from a Pl Sql procedure as an output to WPS. However, am unable the object values are not being currently received by WPS. WPS calls this procedure (PlSql), which returns an array of objects. However, it reads the object values as '???'. We tried to write them in an XML
    <FetchGENEVACustomerOutput>
    <ResponseHeader>
    <Status>0</Status>
    <ErrorMessage>Accounts Details found for Customer with CRN=525Test_SP_TAM</ErrorMessage>
    </ResponseHeader>
    <GenevaCustomerDetails>
    <AccountNumber>???</AccountNumber>
    <ProfileID>???</ProfileID>
    <BillingCurrency>???</BillingCurrency>
    <InfoCurrency>???</InfoCurrency>
    <City>???</City>
    <State>???</State>
    <BillTerm>???</BillTerm>
    <PaymentDueDate>???</PaymentDueDate>
    I hope I am posting the question in a comprehensive manner. Never worked with WPS before, it is a different team in our organization. Both of us are trying to solve the issue.
    Thanks in anticipation

    Mohan,
    Have you tried using UTL_SMTP? It uses UTL_TCP and encapsulates a lot of the stuff you're doing manually, so might be easier. Let me know if you need an example.
    Hope this helps,
    -Dan
    http://www.compuware.com/products/devpartner/db/oracle_debug.htm
    Debug PL/SQL and Java in the Oracle Database

  • How can I convert this small pl/sql block in a single query?

    Hello,
    I need to have a single SQL query which gives the same output as the following piece of code, which uses a cursor to iterate on the rows in order to get the informations I need:
    declare
    cursor c(p varchar2) is
    select context_id, id, parent_id
    from CONTEXT_CONTEXT
    start with parent_id is null
    and context_id = p
    connect by prior id = parent_id
    and context_id = p;
    begin
    for r in (select context_id from ALL_CONTEXTS where context_type in ('MYTYPE'))
    loop
    for j in c(r.context_id)
    loop
    -- I want to obtain the values of the following colums from a query:
    dbms_output.put_line(j.context_id || ' ' || j.id || ' ' || j.parent_id);
    end loop;
    end loop;
    end;
    Additional informations:
    CONTEXT_CONTEXT.context_id references ALL_CONTEXTS.id
    CONTEXT_CONTEXT.id references ALL_CONTEXTS.id as well
    CONTEXT_CONTEXT.parent_id references ALL_CONTEXTS.id as well
    id is primary key of ALL_CONTEXTS
    (context_id, id) is primary key of CONTEXT_CONTEXT
    */

    user10047839 wrote:
    Unfortunately, the CONNECT_BY_ROOT is not supported by my version of the DB 9i.
    SELECT  context_id,
            SUBSTR(
                   SYS_CONNECT_BY_PATH(context_id,'/'),
                   2,
                   INSTR(
                         SYS_CONNECT_BY_PATH(context_id,'/') || '/',
                         1,
                         2
                        ) - 2
                  ) AS parent_context_id
      FROM  CONTEXT_CONTEXT
      START WITH parent_id IS NULL
        AND context_id IN (
                           SELECT  context_id
                             FROM  all_contexts
                             WHERE context_type IN ('MYTYPE')
      CONNECT BY PRIOR ID = parent_id
             AND context_id = PRIOR context_id;SY.

  • SQL within PL/SQL block

    This question sound funny. I just want to make sure this rule. In Oracle database before 10g, we can only use DML and transaction control code within PL/SQL block. We can not use DDL or other control languages within PL/SQL block. How about 10g? can I use DDL in PL/SQL block in 10g?
    I have created a procedure to drop all materialized view. Drop object is DDL. I used a piece of code like this:
    v_sql_stmt1 := 'DROP MATERIALIZED VIEW'||v_schema||'.'||x.mview_name;
    EXECUTE IMMEDIATE v_sql_stmt1;
    The procedure was compiled successfully. However, when I run this SP, it generate ORA-00905 missing keyword error on EXECUTE IMMEDIATE statement part. Is this caused by missing keyword in sql statement or DROP as DDL can not be used in PL/SQL block? If it is first one, what is the keyword for DROP MATERIALIZED VIEW statement?

    The versions of Oracle that run on this planet have been able to do DDL in PL/SQL for quite some time now. The DBAs who blasted off into space with you and worked in a vacuum the past however many years you feel you've been limited by this need to be replaced or re-introduced to Oracle.
    For what it's worth, the error looks like you're missing a space.

  • Resolved: Use value from select list in pl/sql block

    Hello,
    I have a form with a select list: P18_BONUSTYPE, the values of which come from a LOV.
    When the user clicks a button, a page process is used to insert a row into a table.
    When I use the :P18_BONUSTYPE bind variable in my insert statement I get an error "Invalid number" I get an "Invalid number" error. I assume that APEX is using the displayed text in that bind variable, not its actual (html option) value.
    I checked the HTML of the page, and the correct values are in the select list.
    Can someone tell me how to get the value into a bind variable that can be used in a pl/sql block for a page process?
    Thanks
    Message was edited by:
    Neeko
    Issue was a value in another item.

    Did you tried changing the value using "to_number"? (i.e. to_number(:P18_BONUSTYPE)).
    Max.

  • Construct a Sql block using With Clause to improve the performance

    I have got four diff parametrized cursor in my Pl/Sql Procedure. As the performance of the Procedure is very pathetic,so i have been asked to tune the Select statements used in those cursors.
    So I am trying to use the With Clause in order to club all those four Select Statements.
    I would appreciate if anybody can help me to construct the Sql Block using With Clause.
    My DB version is..
    Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
    PL/SQL Release 11.1.0.7.0 - Production
    Four Diff cursors are defined below.
    CURSOR all_iss (
          b_batch_end_date   IN   TIMESTAMP,
       IS
          SELECT isb.*
                FROM IMPLMN_STEP_BREKPN  isb
               , ISSUE iss
          WHERE isb.issue_id = iss.issue_id
           AND iss.issue_status_id  =  50738
           AND ewo_no IN
          (SELECT TO_CHAR(wo_no)
            FROM MGO_PLANT_AUDIT
           WHERE dml_status = 'U' OR dml_status = 'I')
          UNION ALL
          SELECT isb.*
           FROM IMPLMN_STEP_BREKPN  isb
            , ISSUE iss
           WHERE isb.issue_id = iss.issue_id
           AND iss.issue_status_id  =  50738
           AND CAST (isb.last_updt_timstm AS TIMESTAMP) >=
                                                                  b_batch_end_date;
          CURSOR ewo_plant  ( p_ewo_no IN  IMPLMN_STEP_BREKPN.ewo_no%TYPE)
          IS
          SELECT DISTINCT wo_no ,
          plant_code
          FROM MGO_PLANT
          WHERE TO_CHAR(wo_no) = p_ewo_no;
          CURSOR iss_ewo_plnt (
          p_issue_id IN IMPLMN_STEP_BREKPN.issue_id%TYPE ,
          p_ewo_no IN IMPLMN_STEP_BREKPN.EWO_NO%TYPE,
          p_plnt_code IN IMPLMN_STEP_BREKPN.PLT_FACLTY_ID%TYPE)
          IS
          SELECT *
          FROM IMPLMN_STEP_BREKPN
          WHERE issue_id = p_issue_id
          AND ewo_no = p_ewo_no
          AND
          (plt_faclty_id = p_plnt_code
          OR
          plt_faclty_id IS NULL);
          CURSOR iss_ewo_plnt_count (
          p_issue_id IN IMPLMN_STEP_BREKPN.issue_id%TYPE ,
          p_ewo_no IN IMPLMN_STEP_BREKPN.EWO_NO%TYPE,
          p_plnt_code IN IMPLMN_STEP_BREKPN.PLT_FACLTY_ID%TYPE)
          IS
          SELECT COUNT(*)
          FROM IMPLMN_STEP_BREKPN
          WHERE issue_id = p_issue_id
          AND ewo_no = p_ewo_no
          AND
          (plt_faclty_id = p_plnt_code
          OR
          plt_faclty_id IS NULL);

    Not tested. Some thing like below. i just made the queries as tables and given name as a,b,c and substituted columns for the parameters used in the 2nd cursor and third cursor. Try like this.
    CURSOR all_iss (
    b_batch_end_date IN TIMESTAMP,
    IS
    select a.*,b.*,c.* from
    ( SELECT isb.*
    FROM IMPLMN_STEP_BREKPN isb
    , ISSUE iss
    WHERE isb.issue_id = iss.issue_id
    AND iss.issue_status_id = 50738
    AND ewo_no IN
    (SELECT TO_CHAR(wo_no)
    FROM MGO_PLANT_AUDIT
    WHERE dml_status = 'U' OR dml_status = 'I')
    UNION ALL
    SELECT isb.*
    FROM IMPLMN_STEP_BREKPN isb
    , ISSUE iss
    WHERE isb.issue_id = iss.issue_id
    AND iss.issue_status_id = 50738
    AND CAST (isb.last_updt_timstm AS TIMESTAMP) >=
    b_batch_end_date) a,
    ( SELECT DISTINCT wo_no ,
    plant_code
    FROM MGO_PLANT
    WHERE TO_CHAR(wo_no) = p_ewo_no) b,
    ( SELECT *
    FROM IMPLMN_STEP_BREKPN
    WHERE issue_id = p_issue_id
    AND ewo_no = p_ewo_no
    plt_faclty_id IS NULL) c
    where b.wo_no = c.ewo_no and
    c.issue_id = a.issue_id ;
    vinodh
    Edited by: Vinodh2 on Jul 11, 2010 12:03 PM

  • PL/SQL block to generate i/o

    Dear all,
    10.2.0.4 on solaris
    I want to generate I/O on a table. how can I create a a PL/SQL block which loops into and inserts/updates/deletes and commits on this table and thereby testing the I/O on the table ?
    Kai

    KaiS wrote:
    I want to generate I/O on a table. how can I create a a PL/SQL block which loops into and inserts/updates/deletes and commits on this table and thereby testing the I/O on the table ?What about the db buffer cache? What about Oracle attempting to optimise I/O performance by reducing physical I/O? What about the file system used and the o/s file system cache that does the exact same thing?
    How do you now "+test+" I/O? What exactly are you testing? The Oracle buffer cache? The o/s file system cache? The speed of the file system? The speed of the disk(s)?
    And if you get a result like "+100 inserts/per second+" - just what does that mean? How are you going to use this number to determine performance for application code, determine potential bottlenecks and so on?
    A journey can only start when you know the route and most importantly, the destination. Else you're just wandering around without a clue.

  • Stop a pl/sql block

    Hi guys,
    I would like to know, how can I stop an anonymus pl/sql block (what is the command, what rights do I need in order to execute the command, etc). We use TOAD for PL/SQL programming and I know that administrators can stop processes from Enterprise Manager.
    But yesterday I started a block which is in an infinite loop and the administrator is on holiday, and the table is growing bigger and bigger and the tablespace will be full sooner or later.
    So help pls.
    Thanks,
    Gabor

    TOAD has a cancel button for SQL commands, but for PL/SQL blocks it doesn't show up.
    The tablespace will fill up certainlly for monday, but it happened me for several times that I wanted to stop a pl/sql script and each time I had to call the administration. This is what I don't want to do all the time, so it would be nice to have the right to stop my bad PL/SQL scripts myself.
    A different question whether the administrator will grant me those rights to stop a PL/SQL script. But maybe , because we work on a developer server, not on the real one.
    Regards,
    Gabor

  • Reg : print spaces in pl/sql block

    Hi friends,
    How can i print spaces in pl/sql block .
    Eg :
    1
    'onespace '1
    '2 spaces'1
    '3spaces'1
    etc..
    Thanks in Advance,
    Chinnu.
    Edited by: chinnu on Jul 8, 2009 10:55 PM
    Edited by: chinnu on Jul 8, 2009 10:56 PM

    Can you please elaborate more on your requirement?
    What data is in your tables? What outcome do you expect?
    Use around your code to preserve formatting..
    Edited by: Alex Nuijten on Jul 9, 2009 8:00 AM                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • DDL inside PL/SQL Block

    Is there anyone knows if DDL statement can be include inside the PL/SQL block?
    I mean, creating a table, doing DML in that table and then dropping it? I have to do this because I'm having integrity constraint errors (ORA-02291) in the tables I will use.
    I need to
    update table_1 set id = 2 where id = 1
    but it it found child records in table_2.
    when i tried:
    update table_2 set id = 2 where id = 1
    Of course I cannot as well update table_2 because it will not found parent record in table_1, as it had an error earlier and there were more records in table_1 than table_2.
    table_1 records = 374 rows
    table_2 records = 38 rows
    I did some strange logic below:
    a. Creating a temporary table,
    b. inserting there records in table_1,
    c. updating the temp table,
    d. delete the records i got in table_1,
    e. update table_2 (can now do an update since no child records in table_1 will be found after the delete),
    f. insert records from temp table to table_1
    g. drop the temp table.
    BUT, I cannot create, manipulate, and drop that temp table inside the PL/SQL table.
    Any thoughts.
    Thanks in advance!

    Another scenario is to create your constraints as deferred. I'v recently blogged about another deferred constraint usage here
    http://gplivna.blogspot.com/2007/05/deferred-constraint-real-life-scenario.html
    but your case also is appropriate.
    But the ultimate problem BTW is that you need to update your PK values and that's at least very questionable (ok to my mind bad) design.
    Gints Plivna
    http://www.gplivna.eu

  • Passing objects by reference in PL/SQL

    Hi,
    I have come across an unexpected problem using object types in PL/SQL that is causing me some grief. I'm from a Java background and am relatively new to Oracle Objects but what I'm trying to do is fairly trivial, I think. The code below illustrates the problem.
    --- cut here ---
    CREATE OR REPLACE TYPE test_obj_t AS OBJECT
    num INTEGER,
    CONSTRUCTOR FUNCTION test_obj_t RETURN SELF AS RESULT
    CREATE OR REPLACE TYPE BODY test_obj_t IS
    CONSTRUCTOR FUNCTION test_obj_t RETURN SELF AS RESULT IS
    BEGIN
    num := 0;
    RETURN;
    END;
    END;
    CREATE OR REPLACE PACKAGE test_obj_ref AS
    PROCEDURE init(o IN test_obj_t);
    PROCEDURE inc;
    FUNCTION get_num RETURN INTEGER;
    END;
    CREATE OR REPLACE PACKAGE BODY test_obj_ref IS
    obj test_obj_t;
    PROCEDURE init(o IN test_obj_t) IS
    BEGIN
    obj := o;
    END;
    PROCEDURE inc IS
    BEGIN
    obj.num := obj.num + 1;
    END;
    FUNCTION get_num RETURN INTEGER IS
    BEGIN
    RETURN obj.num;
    END;
    END;
    --- cut here ---
    The object type test_obj_t holds a integer and the test_obj_ref package holds a 'reference' to an instance of the object.
    To test the above code I run this PL/SQL block:
    declare
    obj test_obj_t;
    begin
    obj := test_obj_t;
    test_obj_ref.init(obj);
    dbms_output.put_line('obj.num='||obj.num);
    dbms_output.put_line('test_obj_ref.get_num='||test_obj_ref.get_num);
    test_obj_ref.inc;
    dbms_output.put_line('obj.num='||obj.num);
    dbms_output.put_line('test_obj_ref.get_num='||test_obj_ref.get_num);
    test_obj_ref.inc;
    dbms_output.put_line('obj.num='||obj.num);
    dbms_output.put_line('test_obj_ref.get_num='||test_obj_ref.get_num);
    end;
    giving the output:
    obj.num=0
    test_obj_ref.get_num=0
    obj.num=0
    test_obj_ref.get_num=1
    obj.num=0
    test_obj_ref.get_num=2
    It appears that the object held by the test_obj_ref package is being incremented as expected, but I would have expected the object declared in the PL/SQL block to be pointing to the same object and so should report the same incremented values.
    I suspect that the object is copied in the call to test_obj_ref.init() so I end up with two object instances, one that is held by the test_obj_ref package and one in the anonymous block. Although, I thought that all IN parameters in PL/SQL are passed by reference and not copied!
    Am I right?
    Is passing objects by reference possible in PL/SQL, if so how?
    I'm using Oracle 10.2.0.3.
    Cheers,
    Andy.

    the object being passed to the test_obj_ref.init+ procedure is passed by reference; however, when you assign it to your package variable obj it is being copied to a new instance. you can pass object instances as parameters to procedures using the +IN OUT [NOCOPY]+ *calling mode, in which case modifications to the attributes of the passed object will be reflected in the calling scope's instance variable.
    oracle's only other notion of an object reference is the +"REF &lt;object-type&gt;"+ datatype, which holds a reference to an object instance stored in an object table or constructed by an object view.
    hope this helps...
    gerard

Maybe you are looking for

  • Help, my lappy crashed and I can't sync my iPhone and iTunes

    Hi, Recently my laptop crashed and I had to reformat it. Now when I plug in my iPhone, I think I am going to lose all my mp3s in the iPhone. I don't want to lose the music because I hadn't got the chance to back up the music on my iTunes before it cr

  • My WiFi signal takes 60 Seconds for MacMini to see

    I just upgrades to Snow Leopard last week from Leopard. Leopard found and recognized my Airport Extreme as my primary WiFi very quickly after waking up/starting MiniMac. Now, with Snow Leopard, my MacMini sees a neighbor's signal fairly quickly, but

  • Apple tv app ?

    I know it says you can watch via your pc or mac but mac apps and appletv apps are different is bt going to work with the apple tv ? I do not want yet another box under my tv just for a couple of channels the youveiw box is useless in my area as signa

  • How to convert CLOB to BLOB with SQL Developer migration wizard?

    Hi, According to our requirement, we need to only migrate data from SQL Server 2008 to Oracle 11. I use the SQL Developer 3.0.04 migration wizard to do it. I do migration from SQL Server (database name: SCDS41P2) to Oracle (User name: HCDS41P2). My m

  • Keyboard strokes not "keeping up"

    Hello, My wife's iBook 1.2GHz is about 2.5 years old and has experienced few problems so far. However, she is noticing now that when she is typing, it takes awhile for the key strokes to be accepted. So for instance she will type a sentence, but it w