print "Setting Database Connection to CDW-P02.....\n"; # setting up database connection to CDW-V my $dbv = DBI->connect( 'dbi:Oracle:Test' , "$user1" , "$passw") || die "Database connection not made: $DBI::errstr"; # Query To find APR Decline $apr_decl = "SELECT CRAC_EVNT_DATA_T, COUNT(*)\n". "FROM CAMMGR.CRAC_EVNT_FCT a, CAMMGR.CRAC_DIM B\n". "WHERE A.CRAC_DIM_I =B.CRAC_DIM_I\n". "AND CRAC_EVNT_SCRN_I = 'RDGR '\n". "AND CRAC_EVNT_D >= TO_DATE('$first_date','YYYYMMDD')\n". "AND CRAC_EVNT_D <= TO_DATE('$last_date','YYYYMMDD')\n". "GROUP BY CRAC_EVNT_DATA_T\n"; #Opens files to write to die("Cannot open SAS file to write to.") unless(open(APR, ">APR_Decline_$today.csv")); # Runs Query @ap = &run_query($apr_decl); print APR "CRAC_EVNT_DATA_T, Number Declined\n"; print APR "@ap"; close(APR); # Query captures credit line determinator declines by reason $decl_reason = "SELECT CRAC_EVNT_DATA_T, COUNT(*)\n". "FROM CAMMGR.CRAC_EVNT_TYPE A, CAMMGR.CRAC_EVNT_FCT B, CAMMGR.CRAC_DIM C\n". "WHERE A.CRAC_EVNT_TYPE_C =B.CRAC_EVNT_TYPE_C\n". "AND B.CRAC_DIM_I = C.CRAC_DIM_I\n". "AND A.CRAC_EVNT_TYPE_C = 500\n". "AND CRAC_EVNT_DATA_T LIKE ' +00000000000.00CL00%'\n". "AND CRAC_EVNT_D >= TO_DATE('$first_date','YYYYMMDD')\n". "AND CRAC_EVNT_D <= TO_DATE('$last_date','YYYYMMDD')\n". "GROUP BY CRAC_EVNT_DATA_T\n"; #Opens files to write to die("Cannot open SAS file to write to.") unless(open(REASON, ">Decline_Reason_$today.csv")); # Runs Query @reason = &run_query($apr_decl); print REASON "CRAC_EVNT_DATA_T, Number Declined\n"; print REASON "@reason"; close(REASON); sub run_query { my ($query) = @_; # Run Query print "$query\n"; ### Prepare a SQL statement for execution $prepare_exe = $dbv->prepare( "$query"); ### Execute the statement in the database $prepare_exe->execute; # Each element will be comma seperated while ( @row = $prepare_exe->fetchrow_array( ) ) { $string = join(",", @row); $string = $string."\n"; #print "$string\n"; # Will contain all rows push(@new_row, $string); } return @new_row; $prepare_exe->finish; }