Blame | Last modification | View Log | Download | RSS feed
<?php
function insert_TI11(&$file_blob) {
global $conn, $ocierr, $progiscrizione, $periodo_da, $periodo_a, $keydett, $progiscrizioneass, $flag_ass, $idfile;
$lob = OCINewDescriptor($conn, OCI_D_LOB);
$sql = "INSERT INTO S3_TI11_FILEINTERSCAMBIO ".
$sql .= "(TI11_PROGISCRIZIONE, TI11_PERIODO_DA, TI11_PERIODO_A, TI11_FLAG_ASS, ";
$sql .= "TI11_BLOB, TI11_KEYDETT, TI11_IDFILE, TI11_TIPODATO, TI11_PROGISCRIZIONEASS) values (";
$sql .= "'$progiscrizione', to_date('$periodo_da', 'dd/mm/yyyy'), to_date('$periodo_a', 'dd/mm/yyyy'), ";
$sql .= "$flag_ass, EMPTY_BLOB(), $keydett, $idfile, NULL, '$progiscrizioneass') ";
$sql .= "returning TI11_BLOB into :doc";
$stmt = OCIParse($conn, $sql);
if ($stmt === false) {
$msg = ' OCIParse fallita';
$ocierr = array('message' => $msg, 'code' => 'OCIPARSE', 'sqltext' => $sql);
return false;
}
OCIBindByName($stmt, ':doc', $lob, -1, OCI_B_BLOB);
$ret = @OCIExecute($stmt, OCI_DEFAULT);
if(!$ret) {
$ocierr = OCIError($stmt);
return false;
}
if (!$lob->save($file_blob)) {
$msg = ' Salvataggio Blob fallito';
$ocierr = array('message' => $msg, 'code' => 'SAVEBLOB', 'sqltext' => $sql);
return false;
}
$lob->free();
return true;
}
function update_servizidettaglio($opt, $keyerrore = 0, $autocommit = 1) {
global $conn, $progiscrizione, $periodo_da, $periodo_a, $keydett, $flag_ass;
global $idfile, $n_file_tot, $presenza_file;
$up_TI04 = 1;
$sql = "update S3_TI04_SERVIZIDETTAGLIO set ";
if ($opt == 'LOG') {
$up_TI04 = 0;
$riavviabile = select_catalogoerrori($keyerrore);
if ($riavviabile === false) {
wlog(20025, 1);
$codstato = 2;
}
elseif ($riavviabile == '1') {
$codstato = 3;
}
else {
$codstato = 2;
}
$sql .= "TI04_CODSTATO = $codstato, TI04_N_FILE = $idfile, ";
if((!empty($n_file_tot))&& ($n_file_tot <>''))
$sql .= "TI04_N_FILE_TOT = $n_file_tot, TI04_PRESENZA_FILE = $presenza_file ";
else
$sql .= "TI04_N_FILE_TOT = NULL, TI04_PRESENZA_FILE = $presenza_file ";
$err = 20004;
}
elseif ($opt == 'NFILE') {
$sql .= "TI04_N_FILE = $idfile, TI04_PRESENZA_FILE = 1 ";
$err = 20021;
}
elseif ($opt == 'RIAVVIO') {
$sql .= "TI04_PRESENZA_FILE = 0 ";
$err = 20024;
}
elseif ($opt == 'NFILETOT') {
$sql .= "TI04_N_FILE_TOT = $n_file_tot ";
$err = 20022;
}
$sql .= "where TI04_PROGISCRIZIONE = '$progiscrizione' and ";
$sql .= "to_char(TI04_PERIODO_DA, 'dd/mm/yyyy') = '$periodo_da' and ";
$sql .= "to_char(TI04_PERIODO_A, 'dd/mm/yyyy') = '$periodo_a' and ";
$sql .= "TI04_KEYDETT = $keydett and TI04_FLAG_ASS = $flag_ass";
if (!exec_sql($conn, $sql, $autocommit)) {
OCIRollback($conn);
wlog($err, 1, '', $up_TI04);
return false;
}
else {
return true;
}
}
function select_dati_servizio($progiscrizione) {
global $conn;
$sql = "select distinct TI03_KEYSERVIZIO, TI02_NOME_XSD ";
$sql .= ", (select TI02_NOME_XSD from S3_TI02_SERVIZI where TI02_KEYSERVIZIO = 8) INC_TER_XSD ";
$sql .= ", TI03_PERIODICITA from S3_TI04_SERVIZIDETTAGLIO, S3_TI03_SERVIZIRICHIESTI, S3_TI02_SERVIZI ";
$sql .= "where TI03_PROGISCRIZIONE = TI04_PROGISCRIZIONE and TI02_KEYSERVIZIO = TI03_KEYSERVIZIO ";
$sql .= "and TI03_PROGISCRIZIONE = '$progiscrizione'";
$r_ks = exec_select_format($conn, $sql, 1);
if (!$r_ks || $r_ks == 'NODATA') {
return false;
}
else {
return array($r_ks[0]['TI03_KEYSERVIZIO'], $r_ks[0]['TI02_NOME_XSD'], $r_ks[0]['INC_TER_XSD'], $r_ks[0]['TI03_PERIODICITA']);
}
}
function select_catalogoerrori($keyerrore) {
global $conn;
$sql = "select TI08_RIAVVIO from S3_TI08_CATALOGOERRORI ";
$sql .= "where TI08_KEYERRORE = $keyerrore";
$r = exec_select_format($conn, $sql, 1);
if (!$r || $r == 'NODATA') {
return false;
}
else {
return $r[0]['TI08_RIAVVIO'];
}
}
function delete_TI11($T11_file) {
global $conn, $progiscrizione, $periodo_da, $periodo_a, $keydett, $flag_ass;
$sql = "delete S3_TI11_FILEINTERSCAMBIO ";
$sql .= "where TI11_PROGISCRIZIONE = '$progiscrizione' and ";
$sql .= "to_char(TI11_PERIODO_DA, 'dd/mm/yyyy') = '$periodo_da' and ";
$sql .= "to_char(TI11_PERIODO_A, 'dd/mm/yyyy') = '$periodo_a' and ";
$sql .= "TI11_KEYDETT = $keydett and TI11_FLAG_ASS = $flag_ass and ";
$sql .= "TI11_IDFILE = $T11_file";
// NO AUTOCOMMIT
if (!exec_sql($conn, $sql, 0)) {
return false;
}
return true;
}
?>