The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

CGI::AppBuilder::PLSQL - Oracle PL/SQL Procedures

SYNOPSIS

  use CGI::AppBuilder::Define;

  my $sec = CGI::AppBuilder::PLSQL->new();
  my ($sta, $msg) = $sec->exe_sql($ar); 

DESCRIPTION

This class provides methods for reading and parsing configuration files.

new (ifn => 'file.cfg', opt => 'hvS:')

This is a inherited method from CGI::AppBuilder. See the same method in CGI::AppBuilder for more details.

def_inputvars($ar)

Input variables:

  $ar   - array ref containing the following variables:
        pid             : project id such as ckpt, owb, dba, etc.
        task            : task name required such as task1,task2,etc.
        target(sel_sn1) : select one (DB/server name) defining sid
        args(sel_sn2)   : select two (Arguments)
        task_fn         : task file name containing all the tasks defined
        svr_conn        : host/server connection info
        db_conn         : db connection info for each target/server
        task_conn       : special connection for tasks. 
                          It overwrites db_conn for the task
        HA_*            : hash array

  

Variables used or routines called:

  None

read_text_file($fn, $dvr)

sub read_text_file { my $s = shift; my ($fn, $dvr) = @_; if (!$fn) { carp " No file name is specified."; return; } if (!-f $fn) { carp " File - $fn does not exist!"; return; }

    my ($t);
    open FILE, "< $fn" or
        croak "ERR: could not read to file - $fn: $!\n";
    while (<FILE>) {
        # skip comment and empty lines
        next if $_ =~ /^\s*#/ || $_ =~ /^\s*$/; 
        s/\s*[^'"\(]#[^'",\)].*$//;     # remove inline comments
        chomp;                          # remove line break
        $t .= $_;
    }
    close FILE;
    return $t;
}