OSP:
PROCEDURE Add_GFS_cmpdocs (
FIN_C IN VARCHAR2,
ACCT_OU_C IN VARCHAR2,
COUNTRY_ISO3_C IN VARCHAR2,
DOCNAME_N IN VARCHAR2,
DOCFILE_X IN BLOB,
UPDATED_BY_CIN VARCHAR2,
Error_Num OUT NUMBER,
Error_Msg OUT VARCHAR2)
IS
DOCID_R NUMBER(4);
BEGIN
SELECT MAX(GFSA08_DOCID_R) + 1
INTO DOCID_R
FROM MGFSA08_cmpdocs;
IF DOCID_R IS NULL THEN
DOCID_R := 1;
END IF;
INSERT INTO lpdevl.MGFSA08_cmpdocs
(GFSA08_DOCID_R,
ACCT_FIN_C,
ACCT_OU_C,
COUNTRY_ISO3_C,
GFSA08_DOCNAME_N,
GFSA08_DOCFILE_X,
GFSA08_UPDATED_BY_C,
GFSA08_UPDATE_S)
VALUES (
DOCID_R,
FIN_C,
ACCT_OU_C,
COUNTRY_ISO3_C,
DOCNAME_N,
-- '',
DOCFILE_X,
UPDATED_BY_C,
SysDate);
Error_Num := 0;
Error_Msg := 'Success';
return;
EXCEPTION
WHEN OTHERS THEN
Error_Num := SQLCODE;
Error_Msg := SUBSTR(SQLERRM, 1, 100);
END Add_GFS_cmpdocs;
Perl Code:
sub addGlobalDocs
{
my( $acct_fin_c, $acct_ou_c, $country_iso3_c, $gfsa08_docname_n,
$in, $u
serid) = @_;
my @dbHandle;
my $sql, $csr;
my $err_num = "";
my $err_msg = "";
Insert Blob from Server
my $ua = new LWP::UserAgent;
$ua->timeout(1);
$url = "http://webdev.globalfleetsolutions.ford.com/images/test.pdf";;
my $curl = url("http");
my $forms = new CGI;
my $req = new HTTP::Request 'GET', $url;
if ( $response->is_success)
if ( $response->is_success)
{
$PDF_BLOB = $response->content;
$dbHandle[1]->{LongReadLen} = length($PDF_BLOB) + 1024;
}
# END ##
$sql = "BEGIN
gfs.gfs_sp_package_x.add_gfs_cmpdocs(:1,:2,:3,:4,:5,:6,:,
:8); END;";
@dbHandle = &openGFSDb();
return "Error" if (! $#dbHandle );
$dbHandle[1]->{LongReadLen} = length($PDF_BLOB) + 2048;
$dbHandle[1]->{LongTruncOk}=1;
$csr = $dbHandle[1]->prepare ($sql) || die $csr->errstr;
my %attrib = ();
$attrib{'ora_type'} = 24;
$csr->bind_param(1,$acct_fin_c);
$csr->bind_param(2,$acct_ou_c);
$csr->bind_param(3,$country_iso3_c);
$csr->bind_param(4,$gfsa08_docname_n);
$csr->bind_param(5, $PDF_BLOB, {ora_type => ORA_BLOB} );
$csr->bind_param(6,$userid);
$csr->bind_param_inout(7,\$err_num,100);
$csr->bind_param_inout(8,\$err_msg,1000);
$err_num = "";
$err_msg = " ";
$cnt = $csr->execute () || "Execute failed : $DBI::errstr";
print "Count1: $cnt";
$cnt = $csr->finish () || "Finish failed : $DBI::errstr";
print "Count2: $cnt";
# $cnt = $dbHandle[1]->commit || "Commit failed : $DBI::errstr";
print "Count3: $cnt";
if ($dbHandle[0] == 1) { $dbHandle[1]->disconnect;}
}
sub openGFSDb
{
my ($user,$password,$database,$dbh,$drv);
my (@ret_results);
$drv = 'Oracle';
#if ("apollo" eq $ENV{"SERVER_NAME"}) {
# $user = 'fleet@orcl';
# $password = 'fleet';
# $database = '';
#}
$user = 'XXX';
$password = 'XXX';
$database = 'eccdb39_mssp7.world';
#$database = '19.5.38.97';
$database = 'eccdb8_mssdevl.world';
if ( $ENV{"SERVER_NAME"} eq "webdev.globalfleetsolutions.ford.com" )
{
$database = 'eccdb8_mssdevl.world';
}
else
{
$database = 'eccdb39_mssp7.world';
}
if ($dbh = DBI->connect($database,$user,$password,$drv))
{
#$dbh->{AutoCommit} = 0;
push(@ret_results, 1);
push(@ret_results, $dbh);
}
else
{
$error = $module_name . " " . $DBI::errstr;
print "Unable to open the database, $database; user, $user
(ORACLE_HOME
$ENV{'ORACLE_HOME'} ) in module $module_name due to the following error: " .
$DB
I::errs push(@ret_results, 0);
}
return(@ret_results);
}
>From: "Sterin, Ilya" <[EMAIL PROTECTED]>
>To: 'Mathew Varghese ' <[EMAIL PROTECTED]>, "'[EMAIL PROTECTED] '"
><[EMAIL PRO