Complies with Hipaa Siri?

My technologists tell me that Siri is encrypted in transit, encrypted in place.  I guess that Apple would not sign a BAA, but is compatible for use with PHI Siri?

Siri is not HIPAA compliant, because they will not sign a BAA. Their technology "can" achieve the level of compliance that need, but they will have to participate with this agreement. I would like to keep all your PHI away from Siri.

Tags: iPhone

Similar Questions

  • EchoSign complies with 21 CFR Part 11?

    EchoSign complies with 21 CFR Part 11?

    Hello

    Please find attached the documentation in support of the 21 CFR Part 11 Compliance.

    Thank you

  • I have an iPad with iOS 9.3.2 but with no Siri 3. Please tell me how to get this app for my iPAD.

    NO Siri on my iPad 3

    According to the guidelines of your other post, you have an iPad 2, so no Siri.

  • Why is it not possible to use SIRI on my apple TV remote to control the HomeKit products? I should be able to control all the devices with my Apple TV remote and SIRI HomeKit!

    Why is it not possible to use SIRI on my apple TV remote to control the HomeKit products? I should be able to control all the devices of HomeKit with my SIRI voice remote control and using Apple TV!

    If the new apple TV can act as a concentrator HomeKit and I use SIRI on my iPhone to control my locks, thermostat, lights, etc. Why am I not able to do the same thing with SIRI via voice commands on my Apple TV remote? When is this going to work?

    Also, when Apple will come out with a response to the echo of Amazon? I've tired to wait... do it already! If you build it, they will come...

    Thank you!

    This is a community to a user, and Apple will not see your rant. If you have suggestions about Apple TV, Siri and HomeKit the best thing to do is to submit your comments here. http://www.Apple.com/feedback/AppleTV.html

  • We have problems with Adobe Acrobat DC - document cloud services and how it relates to the HIPAA.  Everyone is working through these issues?

    We have the Cloud of Document with Acrobat DC services issues.  We are considering turning off the cloud feature to stay in compliance with HIPAA.  Everyone is working through these issues?

    Hi mikem82897618,

    You can view the following link to see what can be done with Adobe Document Services cloud when you work in Acrobat DC:

    Store files online, share & access wherever you are. Adobe Acrobat.com

    Also, visit this link to learn more about how Adobe Document Cloud services comply with HIPAA security standards:

    Signatures digital signatures electronic vs. services of Adobe eSign

    Please specify the same details why you should turn off the cloud feature.

    What and where exactly are you facing trouble?

    Let me know.

    Kind regards

    Ana Maria

  • Siri works do not since ios 9.3.2 update

    I updated my iPhone 6 more to ios 9.3.2 now siri and most will not work my dictation software, I checked the front microphone and it works via voice recorder so it doesn't seem like the microphone if it is more likely a software problem. It's very frustrating because I use Siri all the time to the dictation and my applecarplay. I reset the phone, I did a clean system install - nothing works.  any ideas?

    Same problem, but only with Hey Siri, it stops working after the update of 9.3.2 on my iphone more than 6

  • Grammar of Siri

    How can I suggest to Apple to improve Siri grammar? For example, rather than "What can help you with?" Siri should not ask "How may I help you?" In this way Siri would contribute to the proper use of English grammar.

    You can suggest features to Apple via this link: http://www.apple.com/feedback

  • Power problem with LG TV

    Hello

    I bought my Apple TV Gen 4 a few weeks ago and there is something I don't understand.

    It might be a nice feature, ATV turns the TV off automatically placing him on standby... but Apple thinks to, only users ATV maybe still a few other devices connected to their TVs? Maybe I'm too old fashioned, if I have not my Sky scrap / Sam receiver or my old Playstation 3, while having this little black box connected to my TV now, but I'm the only one?

    This feature works sometimes and sometimes it doesn't (so my TV turns on and says that there is no signal, what I want it to do).

    But there is still one thing, what bothers me more than above mentioned:

    Whenever I have disable my TV (after I watch satellite or using my PS3 TV), ATV wakes in sleep mode! So, I have to turn the ATV "blind" buttons in the right order every night.

    My TV is a LG LED 2011 (European version), and I don't have any problems with other devices, such as those mentioned above and the Amazon fire TV-Stick. The ATV is directly connected via HDMI to the TV (no HDMI switch or such).

    Someone else has the same problem or is anyone know how to solve?

    Thank you very much and best regards from the Germany

    Michael

    Looks like you need to disable the HDMI-CEC. Many users have no other connected devices, and therefore, the option is useful for them. Others who have not they have the ability to disable additional devices...

    Control your TV or your receiver with your Siri or Apple TV Remote - Support Apple Remote control

    In settings > remote controls and devices, you can choose the following:

    • Turn on your TV or receiver: decide if your Siri or Apple TV Remote Remote control automatically turns on your TV or receiver.
    • Volume control: decide if your Siri or Apple TV Remote Remote control the volume of your TV or receiver. You can also select this option to learn, change, or remove learned volume controls.

  • ISE 1.1.2 change of authorization with Avaya switches (5520)

    Hello

    I'm ise configuration to make the assessment of posture. I saw avaya my LAN and Core switches. The idea is once the user is authenticated using 802. 1 x, then it will be moved to qurantine vlan and after that it complies with the policy of the company then it will be moved to the vlan real. I have configured the switch avaya to accept the assigned vlan and also configured RADIUS authentication dynamic 802. 1 x. Currently, RADIUS assigned qurantine vlan works but once the nac scan agent and mark the status of compatible PC then the CoA is not the case, and user is not moved to the vlan real.

    I tested the same authorization of the ise policy to assign dynamically VLANS on switches cisco and it worked perfectly, but the same thing is not happening on avaya switch.

    Any idea on this?

    Kind regards

    Akhtar

    Akhtar,

    Posture with ISE flows have only been tested with Cisco switches:

    http://www.Cisco.com/en/us/docs/security/ISE/1.1.1/compatibility/ise_sdt.html

    The RFC says that port 3799 is for CoA, but due to a conflict, we use port 1700 so that my have something to do with it. That said we don't pretend to support 3rd party switches currently.  If you do not want to see this please contact your Cisco account team to check the status of the part 3 switch support or request the feature.

    -Jesse

  • Insertion fails with not enough big column.

    I am confused I have a column on a table declared as NUMBER (21,16) However, when I tried to insert the number following (150000) in this column, I get an error.

    SQL Error: ORA-01438: value larger than specified precision allowed for this column
    01438. 00000 -  "value larger than specified precision allowed for this column"
    *Cause:    When inserting or updating records, a numeric value was entered
               that exceeded the precision defined for the column.
    *Action:   Enter a value that complies with the numeric column's precision,
               or use the MODIFY option with the ALTER TABLE command to expand
               the precision.
    

    What am I missing? It seems to me that the column is large enough to treat this number?.

    Any help would be greatly appreciated.

    Hello

    mlov83 wrote:

    I am confused I have a column on a table declared as NUMBER (21,16) However, when I tried to insert the number following (150000) in this column, I get an error.

    1. SQL error: ORA-01438: value larger than the precision specified for the column
    2. 01438 00000 - "value greater than the precision specified for the column.
    3. * Cause: When inserting or updating records, a numeric value has been entered
    4. which exceeded the precision defined for the column.
    5. * Action: Enter a value that is consistent with the precision of the numeric column,
    6. or use the option CHANGE with the ALTER TABLE command for expand
    7. the precision.

    What am I missing? It seems to me that the column is large enough to treat this number?.

    Any help would be greatly appreciated.

    (21: 16) NUMBER is NOT to say that you can have up to 21 digits before the comma.

    Average number (21: 16) you can have up to 21 digits in total, of which 16 will be after the comma.  There are only 5 digits before the comma.  150000 needs 6.

  • HIPAA

    Sends files to doctors using Adobe send HIPAA compliant?

    If this is not the case, does Adobe offer any solution for sending large files by e-mail in accordance with HIPAA?  A simple connection type password at the end of doctors would fix it right?

    Sending Adobe is not HIPAA compliant, and as far as I know, Adobe does not offer a consistent with HIPAA service to communicate medical information. There are many more HIPAA that just require a login and a password.

    I suggest you to contact your doctors to see what system they recommend to communicate electronically with them.

  • Naming of the ESX hosts with the underscore. Best practices?

    I was curious as to what that the general eager to name the ESX hosts with underscores "_". I found an old post in 2006 related to it:

    http://communities.vmware.com/thread/64885

    In the thread, it is usually frowend against because she not compling with DNS internet naming standards. The underscore character is not recognized by the Web servers.

    He has been wondering if there would be no advantage to include similar underscore characters with no routable ip subnets, 192.168.x, 10, etc...

    If you have designed it correctly you already have your hosts on a subnet that is not routable, so you would get no real benefit.

    Beyond this thought experiment, there are problems with your esx host with ESX, vSphere, vCenter naming universe underscores?

    Just an info

    All my guests have underscore in them. I had to replace all of them with a dashboard because ESX 4.1 will not accept underscore after upgrade to the console.

  • OBIEE11g Installation with Windows 2008

    Hey,.

    I intend to OBIEE 11.1.1.5-* 64 * in a server with this configuration:

    OS: Windows Server 2008 R2 Standard
    Installed memory RAM: 24 GB
    System type: 64-bit operating system
    Java: jdk 1.7.0
    DB: Sql 2005


    I read it is possible to install the OBI 11 g with this configuration, but also it has not confirmed Administration BI tools in 64-bit, can someone confirm that please? If this is the case, what is the procedure suggested to install everything 64-bit, with the exception of Directors BI tools? Also, which type of installation I'll take? I read all the Simple options, Standard and configuration. Thank you much for the help.

    Kind regards
    RG

    RG,

    Your specifications for WIndows 2008 64 bit good machine look. I would double check the JDK and stick to the version of JDK 1.6 to stay in compliance. You should always check each component of your server complies with the matrix of product certification of the Oracle that you want to install.

    Regarding the Oracle BI 11 g Admin tool running on a windows 64-bit machine, it is possible. The only thing you have to watch out is that when you create a connection ODBC system DSNS on a server Oracle BI remote that you use the correct driver like Win 2008 64 bit allows a distinction and a console that is different to handle 32-bit drivers / 64-bit.

  • How to move from records in a procedure with Table Type as a parameter block

    Hello

    How can I move all records in a block of PL/SQL procedure with argument of Type Table or Refcursor.

    I created a procedure in the backend with a parameter of Type table. Of the form, I want to call this procedure with the argument that ALL of the records in BULK.

    Y at - it a simple method for it.


    Thanks in advance

    Rizly

    Rizly,
    I recently put in place a level of forms audit process that uses this method very - package of database, which takes an array of Records as a parameter. Forms 10 G supports this nicely. We have sought to implement this through a set of database triggers (update, insert, delete) but due to our requirements, it was not the best place to do so that we have implemented this in forms.

    Brief history on my form. The main block was based on a table, and the block has been marked NOT can, Insert and Delete. If the user wants to insert, update, or delete a record they clicked on Insert, Update, or Delete button that opens a popup form where they seized a reason Code and a Description of the transaction and then clicked a button Save.

    Here's what I did.
    Database side *.
    1 package database with a Record of PL/SQL and PL/SQL records in the Table variable declared in the Package specification.
    2. create INSERT_?, warning? and DELETE_? package procedures to manage integration, updates and deletions.
    Secondary forms *.
    1 create a table (control) Non-Base with all fields block
    2. create a button that performs a loop on the block and all values assigns to the variable of records in the Table (ToR) forms (typed off the DB package)
    3. pass the ToR to the appropriate database package procedure.

    Here is an example of the code I wrote:
    Database side *.
    Package specifications * (Note: replace with your database schema name) also note, I use PL/SQL Developer with the PLDoc plug-in so I documentation tags in my code.

    CREATE OR REPLACE PACKAGE .Transaction_Log_pkg IS
    -- Package Global Variables
    -- ------------------------
    TYPE rec_T_Log IS RECORD (
        table_name          .transaction_log.table_name%TYPE
       ,trans_type          .transaction_log.trans_type%TYPE
       ,trans_key           .transaction_log.trans_key%TYPE
       ,action              .transaction_log.action%TYPE
       ,column_name         .transaction_log.column_name%TYPE
       ,old_value           .transaction_log.old_value%TYPE
       ,new_value           .transaction_log.new_value%TYPE
       ,trans_date          .transaction_log.trans_date%TYPE
       ,user_id             .transaction_log.user_id%TYPE
       ,reason_code         .transaction_log.reason_code%TYPE
       ,comments            .transaction_log.comments%TYPE
       );
    
    TYPE tbl_T_Log IS TABLE OF rec_T_Log INDEX BY BINARY_INTEGER;
    
       -- Insert_Record --------------------------------------------------------------------------------
       /** Procedure adds "INSERT" audting records in to the CIR.TRANSACTION_LOG table
       %param      p_t_log      TABLE_OF_RECORDS
       %desc       You can pass a single record or a group of records.  Allows you to package up all of
                   the values inserted in a table and send them to the Insert_Record procedure as a
                   group rather than as individual transactions.
       -- ---------------------------------------------------------------------------------------------- */
       PROCEDURE Insert_Record (p_t_log tbl_T_Log );
    
       -- Update_Record --------------------------------------------------------------------------------
       /** Procedure adds a "UPDATE" record(s) in the CIR.TRANSACTION_LOG table
       %param      p_t_log      TABLE_OF_RECORDS
       %desc       You can pass a single record or a group of records if more than one value in a row is updated.
       -- ---------------------------------------------------------------------------------------------- */
       PROCEDURE Update_Record (p_t_log tbl_T_Log );
    
       -- Delete_Record --------------------------------------------------------------------------------
       /** Procedure adds "DELETE" records in to the CIR.TRANSACTION_LOG table
       %param      p_t_log      TABLE_OF_RECORDS
       %desc       You can pass a single record or a group of records.  Allows you to package up all of
                   the values inserted in a table and send them to the Delete_Record procedure as a
                   group rather than as individual transactions.
       -- ---------------------------------------------------------------------------------------------- */
       PROCEDURE Delete_Record (p_t_log tbl_T_Log );
    
    END Transaction_Log_pkg;
    

    Package body *.

    -- Beginning of Package Body -------------------------------------------------------------------------
    -- ---------------------------------------------------------------------------------------------------
    CREATE OR REPLACE PACKAGE BODY .Transaction_Log_pkg AS
       -- Package EXCEPTIONS
       -- ------------------
       null_table              EXCEPTION;
       null_table_name         EXCEPTION;
       null_trans_type         EXCEPTION;
       null_trans_key          EXCEPTION;
       null_action             EXCEPTION;
       null_column_name        EXCEPTION;
       null_value              EXCEPTION;
       null_user_Id            EXCEPTION;
       null_reason_code        EXCEPTION;
       null_comments           EXCEPTION;
    
       -- Package Variables
       -- -----------------
       vErrMsg                 VARCHAR2(1000);
       vSQL                    VARCHAR2(2000);
    
       -- ----------------------------------------------------------------------------------------------
       PROCEDURE Insert_Record (p_t_log tbl_T_Log ) IS
    
       BEGIN
          IF ( NVL(p_t_log.COUNT,0) = 0 ) THEN
             RAISE null_table;
          ELSE
    
             FOR i IN p_t_log.first .. p_t_log.last LOOP
                vSQL := 'INSERT INTO .transaction_log (seq_no,table_name,trans_type,trans_key,action'
                            ||',column_name,old_value,new_value,trans_date,user_id,reason_code,comments)'
                            ||' VALUES (.TRANSACTION_NO_SEQ.nextval';
    
                -- Build Insert Statement
                IF ( p_t_log(i).table_name IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).table_name||'''';
                ELSE
                   RAISE null_table_name;
                END IF;
                IF ( p_t_log(i).trans_type IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).trans_type||'''';
                ELSE
                   RAISE null_trans_type;
                END IF;
                IF ( p_t_log(i).trans_key IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).trans_key||'''';
                ELSE
                   RAISE null_trans_key;
                END IF;
                IF ( p_t_log(i).action IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).action||'''';
                ELSE
                   RAISE null_action;
                END IF;
                IF ( p_t_log(i).column_name IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).column_name||'''';
                ELSE
                   RAISE null_column_name;
                END IF;
                IF ( p_t_log(i).old_value IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).old_value||'''';
                ELSE
                   vSQL := vSQL||',NULL';
                END IF;
                IF ( p_t_log(i).new_value IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).new_value||'''';
                ELSE
                   RAISE null_value;
                END IF;
    
                --transaction_date
                vSQL := vSQL||',sysdate';
    
                IF ( p_t_log(i).user_id IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).user_id||'''';
                ELSE
                   RAISE null_user_id;
                END IF;
                IF ( p_t_log(i).reason_code IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).reason_code||'''';
                ELSE
                   RAISE null_reason_code;
                END IF;
                IF ( p_t_log(i).comments IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).comments||'''';
                ELSE
                   RAISE null_comments;
                END IF;
    
                vSQL := vSQL||')';
    
                dbms_output.put_line('vSQL = '||vSQL);
    
                EXECUTE IMMEDIATE vSQL;
    
                vSQL := NULL;
    
             END LOOP;
    
             -- The COMMIT is intentionally left out to force the calling
             -- application to perform the commit and complies with the
             -- basics of encapsulation.
             -- ---------------------------------------------------------
    
          END IF;
    
       EXCEPTION
          WHEN null_table THEN
             vErrMSg := 'The p_t_log Collection cannot be null!';
             RAISE_APPLICATION_ERROR(-20990,vErrMsg);
          WHEN null_table_name THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20991,vErrMsg);
          WHEN null_trans_type THEN
             vErrMSg := 'Transaction Type cannot be null!';
             RAISE_APPLICATION_ERROR(-20992,vErrMsg);
          WHEN null_trans_key THEN
             vErrMSg := 'Transaction Key cannot be null!';
             RAISE_APPLICATION_ERROR(-20993,vErrMsg);
          WHEN null_action THEN
             vErrMSg := 'Action cannot be null!';
             RAISE_APPLICATION_ERROR(-20994,vErrMsg);
          WHEN null_column_name THEN
             vErrMSg := 'Column Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20995,vErrMsg);
          WHEN null_value THEN
             vErrMSg := 'Value cannot be null!';
             RAISE_APPLICATION_ERROR(-20996,vErrMsg);
          WHEN null_user_Id THEN
             vErrMSg := 'User ID cannot be null!';
             RAISE_APPLICATION_ERROR(-20997,vErrMsg);
          WHEN null_reason_code THEN
             vErrMSg := 'Reason Code cannot be null!';
             RAISE_APPLICATION_ERROR(-20998,vErrMsg);
          WHEN null_comments THEN
             vErrMSg := 'Comments cannot be null!';
             RAISE_APPLICATION_ERROR(-20999,vErrMsg);
       END Insert_Record;
       -- ------------------------------------------------------------------------------------------------
    
       PROCEDURE Update_Record (p_t_log tbl_T_Log ) IS
    
       BEGIN
          IF ( NVL(p_t_log.COUNT,0) = 0 ) THEN
             RAISE null_table;
          ELSE
    
             FOR i IN p_t_log.first .. p_t_log.last LOOP
                vSQL := 'INSERT INTO .transaction_log (seq_no,table_name,trans_type,trans_key,action'
                            ||',column_name,old_value,new_value,trans_date,user_id,reason_code,comments)'
                            ||' VALUES (.TRANSACTION_NO_SEQ.nextval';
    
                -- Build Insert Statement
                IF ( p_t_log(i).table_name IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).table_name||'''';
                ELSE
                   RAISE null_table_name;
                END IF;
                IF ( p_t_log(i).trans_type IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).trans_type||'''';
                ELSE
                   RAISE null_trans_type;
                END IF;
                IF ( p_t_log(i).trans_key IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).trans_key||'''';
                ELSE
                   RAISE null_trans_key;
                END IF;
                IF ( p_t_log(i).action IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).action||'''';
                ELSE
                   RAISE null_action;
                END IF;
                IF ( p_t_log(i).column_name IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).column_name||'''';
                ELSE
                   RAISE null_column_name;
                END IF;
                IF ( p_t_log(i).old_value IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).old_value||'''';
                ELSE
                   vSQL := vSQL||',NULL';
                END IF;
                IF ( p_t_log(i).new_value IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).new_value||'''';
                ELSE
                   RAISE null_value;
                END IF;
    
                --transaction_date
                vSQL := vSQL||',sysdate';
    
                IF ( p_t_log(i).user_id IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).user_id||'''';
                ELSE
                   RAISE null_user_id;
                END IF;
                IF ( p_t_log(i).reason_code IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).reason_code||'''';
                ELSE
                   RAISE null_reason_code;
                END IF;
                IF ( p_t_log(i).comments IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).comments||'''';
                ELSE
                   RAISE null_comments;
                END IF;
    
                vSQL := vSQL||')';
    
                dbms_output.put_line('vSQL = '||vSQL);
    
                EXECUTE IMMEDIATE vSQL;
    
                vSQL := NULL;
    
             END LOOP;
    
             -- The COMMIT is intentionally left out to force the calling
             -- application to perform the commit and complies with the
             -- basics of encapsulation.
             -- ---------------------------------------------------------
    
          END IF;
    
       EXCEPTION
          WHEN null_table THEN
             vErrMSg := 'The p_t_log Collection cannot be null!';
             RAISE_APPLICATION_ERROR(-20990,vErrMsg);
          WHEN null_table_name THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20991,vErrMsg);
          WHEN null_trans_type THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20992,vErrMsg);
          WHEN null_trans_key THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20993,vErrMsg);
          WHEN null_action THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20994,vErrMsg);
          WHEN null_column_name THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20995,vErrMsg);
          WHEN null_value THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20996,vErrMsg);
          WHEN null_user_Id THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20997,vErrMsg);
          WHEN null_reason_code THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20998,vErrMsg);
          WHEN null_comments THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20999,vErrMsg);
       END Update_Record;
       -- ------------------------------------------------------------------------------------------------
    
       PROCEDURE Delete_Record (p_t_log tbl_T_Log ) IS
    
       BEGIN
          IF ( NVL(p_t_log.COUNT,0) = 0 ) THEN
             RAISE null_table;
          ELSE
    
             FOR i IN p_t_log.first .. p_t_log.last LOOP
                vSQL := 'INSERT INTO .transaction_log (seq_no,table_name,trans_type,trans_key,action'
                            ||',column_name,old_value,new_value,trans_date,user_id,reason_code,comments)'
                            ||' VALUES (.TRANSACTION_NO_SEQ.nextval';
    
                -- Build Insert Statement
                IF ( p_t_log(i).table_name IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).table_name||'''';
                ELSE
                   RAISE null_table_name;
                END IF;
                IF ( p_t_log(i).trans_type IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).trans_type||'''';
                ELSE
                   RAISE null_trans_type;
                END IF;
                IF ( p_t_log(i).trans_key IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).trans_key||'''';
                ELSE
                   RAISE null_trans_key;
                END IF;
                IF ( p_t_log(i).action IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).action||'''';
                ELSE
                   RAISE null_action;
                END IF;
                IF ( p_t_log(i).column_name IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).column_name||'''';
                ELSE
                   RAISE null_column_name;
                END IF;
                IF ( p_t_log(i).old_value IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).old_value||'''';
                ELSE
                   vSQL := vSQL||',NULL';
                END IF;
                IF ( p_t_log(i).new_value IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).new_value||'''';
                ELSE
                   RAISE null_value;
                END IF;
    
                --transaction_date
                vSQL := vSQL||',sysdate';
    
                IF ( p_t_log(i).user_id IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).user_id||'''';
                ELSE
                   RAISE null_user_id;
                END IF;
                IF ( p_t_log(i).reason_code IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).reason_code||'''';
                ELSE
                   RAISE null_reason_code;
                END IF;
                IF ( p_t_log(i).comments IS NOT NULL ) THEN
                   vSQL := vSQL||','''||p_t_log(i).comments||'''';
                ELSE
                   RAISE null_comments;
                END IF;
    
                vSQL := vSQL||')';
    
                dbms_output.put_line('vSQL = '||vSQL);
    
                EXECUTE IMMEDIATE vSQL;
    
                vSQL := NULL;
    
             END LOOP;
    
             -- The COMMIT is intentionally left out to force the calling
             -- application to perform the commit and complies with the
             -- basics of encapsulation.
             -- ---------------------------------------------------------
    
          END IF;
    
       EXCEPTION
          WHEN null_table THEN
             vErrMSg := 'The p_t_log Collection cannot be null!';
             RAISE_APPLICATION_ERROR(-20990,vErrMsg);
          WHEN null_table_name THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20991,vErrMsg);
          WHEN null_trans_type THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20992,vErrMsg);
          WHEN null_trans_key THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20993,vErrMsg);
          WHEN null_action THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20994,vErrMsg);
          WHEN null_column_name THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20995,vErrMsg);
          WHEN null_value THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20996,vErrMsg);
          WHEN null_user_Id THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20997,vErrMsg);
          WHEN null_reason_code THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20998,vErrMsg);
          WHEN null_comments THEN
             vErrMSg := 'Table Name cannot be null!';
             RAISE_APPLICATION_ERROR(-20999,vErrMsg);
       END Delete_Record;
       -- ------------------------------------------------------------------------------------------------
    
    END Transaction_Log_pkg; -----------------------------------------------------------------------------
    -- ---------------------------------------------------------------------------------------------------
    

    Secondary forms * (all this coding was limited to the Insert, update or delete buttons.) The following example is the Insert button)

    /* When-Button-Pressed Trigger */
    DECLARE
         vBlockName     VARCHAR2(20) := 'REPORT_CATEGORIES';
         vBlockItem     VARCHAR2(61);
         vCurrItem      VARCHAR2(61);
         nRecCnt        NUMBER := 1;
    
         /* Here is where you create your Forms Variable TYPEd off the Package Table of Records (ToR) */
         /* Since it is a table of records, you could easily add multiple rows to the ToR if your form uses a multi-record block */
         p_tlog         cir.transaction_log_pkg.tbl_t_log;    
    
    BEGIN
         vCurrItem := vBlockName||'.'||Get_Block_Property(vBlockName,FIRST_ITEM);
    
         Go_Item(vCurrItem);
    
         -- 1. Endure each field if populated.
            -- 2. Check for Duplicates (Handled in W-V-I)
    
         IF ( Name_In(:system.Cursor_Item) IS NULL ) THEN
              --Fail the form at the field that is NULL
              send_alert.msg('s','All fields are required.  Please enter a unique value.');
              RAISE Form_Trigger_Failure;
         END IF;
    
         WHILE ( vCurrItem IS NOT NULL ) LOOP
              vBlockItem := :system.cursor_item;
    
              -- Loop through the block and CALL Insert_Record for each Block Item.
              /* 1 */ p_tlog(nRecCnt).table_name := vBlockName;
              /* 2 */ p_tlog(nRecCnt).trans_type := Name_In(vBlockName||'.CAT_TYPE');
              /* 3 */ p_tlog(nRecCnt).trans_key := Name_In(vBlockName||'.ID');
              /* 4 */ p_tlog(nRecCnt).action := 'INSERT';
              /* 5 */ p_tlog(nRecCnt).column_name := substr(vBlockItem,instr(vBlockItem,'.')+1,length(vBlockItem));
              /* 6 */ p_tlog(nRecCnt).old_value := NULL;
              /* 7 */ p_tlog(nRecCnt).new_value := Name_In(vBlockItem);
              /* 8 */ p_tlog(nRecCnt).trans_date := sysdate;
              /* 9 */ p_tlog(nRecCnt).user_id := :Global.userid;
              /*10 */ p_tlog(nRecCnt).reason_code := Name_In(vBlockName||'.REASON_CODE');
              /*11 */ p_tlog(nRecCnt).comments := Name_In(vBlockName||'.COMMENTS');
    
              vCurrItem := Get_Item_Property(vBlockItem,NEXTITEM);
              next_item;
              nRecCnt := nRecCnt + 1;
         END LOOP;
    
         -- 3. Insert
      -- Call TRANSACTION_LOG_PKG.Insert_Record
      -- --------------------------------------
      .transaction_log_pkg.insert_record(p_t_log => p_tlog);
    
         -- 4. Commit
         Commit;  
    
         -- 5. Clear Block
         Clear_Block(Ask_Commit);
    
         -- 6. Close Form
         Hide_Window('REPORT_CATEGORIES');
         -- 7. ReQuery RC_DISP Block
         Go_Block('REPORT_CATEGORIES_DISP');
         Clear_Block(No_Validate);
         Execute_Query;
         -- 8. Done
    END;
    

    I knew not when I started this process of forms if she was going to work because I tried to do something similar to this when I was working with Forms 6i and Oracle Enterprise Business Suite and Forms 6i supported not Ref Cursor and Table of documents very well so I didn't know at first if it would work. Search in forms documentation, I found that Forms 10 g has supported this type of functionality and this process works very well and it was surprisingly fast - at least in my usage, it is very fast. :)

    I hope this helps.
    Craig...

    If I or someone elses answer was useful, please mark accordingly

  • HIPAA, Sarbanes-Oxley and the Oracle Database private virtual

    ORACLE VPD is compatible with HIPAA, Sarbanes-Oxley?
    ORACLE VPD is not compatible with a certification?

    Thanks in advance,
    Alexandre Bailly

    user8716187 wrote:
    ORACLE VPD is compatible with HIPAA, Sarbanes-Oxley?
    ORACLE VPD is not compatible with a certification?

    This forum is used is discussions on the Certifications issued by Oracle (OCA, OCP, OCÉ, OCP) in individuals who have satisfied the requirements of Certification.

    Sox etc are not disccused here.

    The following link may or may not be useful [http://www.oracle.com/technology/deploy/security/index.html]

    I suspect that the general database imen forum is the best place for your question... others know maybe more appropriate.

    In general, it is often discussed in respect of the security.

    11 GR 2 also has features that can better support certain aspects of the compliance of socks.

Maybe you are looking for

  • How to use a graphic file (jpg, png) as an active link in the body of an email?

    When I go to insert/link I would like to use a graphic file instead of text. I can paste the actual url in the location of link but space can you use text in the text area of the link where he asks me "Enter the text to display for the link. Is it po

  • Serious problems iMac (late 2012)

    I have an iMac (end of 2012), who has had the most serious problems lately. For about a month, he would often see the spinning beach-ball-of-death for even the simplest of actions. As of today, however, it has gotten worse about 1,000 times. Now, eve

  • Faces of Mac app

    Hello My face went from my Mac app. I can always pick up on Mac and iOS. But when I browse it through Albums-> faces I'm presented with a dialog box "Get Started." I think I've reinstalled my Mac and downloaded all the photos in iCloud again half a y

  • Qosmio G30-161: can I use the Docking Station?

    Is there a docking station that I can use with my G30? I'm looking for something that will have USB, network and monitor connection to perform docking the G30 on my desk a faster and easier connection (more connection a load of cables each time)? Tha

  • Problems with my timed State machien

    Hi all The project I'm trying to create a timed state machine that can scroll through a series of cooling-then-heating cycles, where every cold or heat function occurs during a specific period of time.For example, if I set the number of cycles to 20