Subversion Repositories Sigmater

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
6 Andrea 1
<?php
2
 
3
function insert_TI11(&$file_blob) {
4
 
5
    global $conn, $ocierr, $progiscrizione, $periodo_da, $periodo_a, $keydett, $progiscrizioneass, $flag_ass, $idfile;
6
 
7
    $lob   = OCINewDescriptor($conn, OCI_D_LOB);
8
 
9
    $sql = "INSERT INTO S3_TI11_FILEINTERSCAMBIO ".
10
    $sql .= "(TI11_PROGISCRIZIONE, TI11_PERIODO_DA, TI11_PERIODO_A, TI11_FLAG_ASS, ";
11
    $sql .= "TI11_BLOB, TI11_KEYDETT, TI11_IDFILE, TI11_TIPODATO, TI11_PROGISCRIZIONEASS) values (";
12
    $sql .= "'$progiscrizione', to_date('$periodo_da', 'dd/mm/yyyy'), to_date('$periodo_a', 'dd/mm/yyyy'), ";
13
    $sql .= "$flag_ass, EMPTY_BLOB(), $keydett, $idfile, NULL, '$progiscrizioneass') ";
14
    $sql .= "returning TI11_BLOB into :doc";                          
15
 
16
    $stmt = OCIParse($conn, $sql);
17
    if ($stmt === false) {
18
    	$msg = ' OCIParse fallita';
19
    	$ocierr = array('message' => $msg, 'code' => 'OCIPARSE', 'sqltext' => $sql);
20
       return false;
21
    }
22
 
23
     	OCIBindByName($stmt, ':doc', $lob, -1, OCI_B_BLOB);
24
 
25
    $ret = @OCIExecute($stmt, OCI_DEFAULT);
26
 
27
    if(!$ret) {
28
 
29
        $ocierr = OCIError($stmt);
30
        return false;
31
    }    
32
 
33
    if (!$lob->save($file_blob)) {
34
	$msg = ' Salvataggio Blob fallito';
35
	$ocierr = array('message' => $msg, 'code' => 'SAVEBLOB', 'sqltext' => $sql);
36
       return false;	
37
    }	
38
 
39
    $lob->free(); 
40
    return true;
41
}
42
 
43
function update_servizidettaglio($opt, $keyerrore = 0, $autocommit = 1) {
44
 
45
	global $conn, $progiscrizione, $periodo_da, $periodo_a, $keydett, $flag_ass;
46
	global $idfile, $n_file_tot, $presenza_file;
47
 
48
	$up_TI04 = 1;
49
 
50
	$sql = "update S3_TI04_SERVIZIDETTAGLIO set ";
51
 
52
	if ($opt == 'LOG') {
53
 
54
		$up_TI04 = 0;
55
 
56
		$riavviabile = select_catalogoerrori($keyerrore);
57
 
58
		if ($riavviabile === false) {
59
			wlog(20025, 1);
60
			$codstato = 2;
61
		}
62
		elseif ($riavviabile == '1') {
63
			$codstato = 3;
64
		}
65
		else {
66
			$codstato = 2;
67
		}
68
 
69
		$sql .= "TI04_CODSTATO = $codstato, TI04_N_FILE = $idfile, ";
70
                if((!empty($n_file_tot))&& ($n_file_tot <>'')) 
71
			$sql .= "TI04_N_FILE_TOT = $n_file_tot, TI04_PRESENZA_FILE = $presenza_file ";
72
                else
73
			$sql .= "TI04_N_FILE_TOT = NULL, TI04_PRESENZA_FILE = $presenza_file ";
74
		$err = 20004;
75
	}
76
	elseif ($opt == 'NFILE') {
77
		$sql .= "TI04_N_FILE = $idfile, TI04_PRESENZA_FILE = 1 ";
78
		$err = 20021;
79
	}
80
	elseif ($opt == 'RIAVVIO') {
81
		$sql .= "TI04_PRESENZA_FILE = 0 ";
82
		$err = 20024;
83
	}	
84
	elseif ($opt == 'NFILETOT') {
85
		$sql .= "TI04_N_FILE_TOT = $n_file_tot ";
86
		$err = 20022;
87
	}
88
 
89
	$sql .= "where TI04_PROGISCRIZIONE = '$progiscrizione' and ";
90
	$sql .= "to_char(TI04_PERIODO_DA, 'dd/mm/yyyy') = '$periodo_da' and ";
91
	$sql .= "to_char(TI04_PERIODO_A, 'dd/mm/yyyy') = '$periodo_a' and ";
92
	$sql .= "TI04_KEYDETT = $keydett and TI04_FLAG_ASS = $flag_ass";
93
 
94
	if (!exec_sql($conn, $sql, $autocommit)) {
95
 
96
		OCIRollback($conn);
97
		wlog($err, 1, '', $up_TI04);
98
		return false;
99
	}
100
	else {
101
 
102
		return true;	
103
	}	
104
}
105
 
106
function select_dati_servizio($progiscrizione) {
107
 
108
	global $conn;
109
 
110
	$sql = "select distinct TI03_KEYSERVIZIO, TI02_NOME_XSD ";
111
	$sql .= ", (select TI02_NOME_XSD from S3_TI02_SERVIZI where TI02_KEYSERVIZIO = 8) INC_TER_XSD ";
112
	$sql .= ", TI03_PERIODICITA from S3_TI04_SERVIZIDETTAGLIO, S3_TI03_SERVIZIRICHIESTI, S3_TI02_SERVIZI ";
113
	$sql .= "where TI03_PROGISCRIZIONE = TI04_PROGISCRIZIONE and TI02_KEYSERVIZIO = TI03_KEYSERVIZIO ";
114
	$sql .= "and TI03_PROGISCRIZIONE = '$progiscrizione'";
115
 
116
	$r_ks = exec_select_format($conn, $sql, 1);
117
 
118
	if (!$r_ks || $r_ks == 'NODATA') {
119
 
120
		return false;
121
	}
122
	else {
123
 
124
		return array($r_ks[0]['TI03_KEYSERVIZIO'], $r_ks[0]['TI02_NOME_XSD'], $r_ks[0]['INC_TER_XSD'], $r_ks[0]['TI03_PERIODICITA']);
125
	}	
126
}		
127
 
128
function select_catalogoerrori($keyerrore) {
129
 
130
	global $conn;
131
 
132
	$sql = "select TI08_RIAVVIO from S3_TI08_CATALOGOERRORI ";
133
	$sql .= "where TI08_KEYERRORE = $keyerrore";
134
 
135
	$r = exec_select_format($conn, $sql, 1);
136
 
137
	if (!$r || $r == 'NODATA') {
138
 
139
		return false;
140
	}
141
	else {
142
 
143
		return $r[0]['TI08_RIAVVIO'];
144
	}	
145
}	
146
 
147
function delete_TI11($T11_file) {
148
 
149
	global $conn, $progiscrizione, $periodo_da, $periodo_a, $keydett, $flag_ass;
150
 
151
	$sql = "delete S3_TI11_FILEINTERSCAMBIO ";
152
	$sql .= "where TI11_PROGISCRIZIONE = '$progiscrizione' and ";
153
	$sql .= "to_char(TI11_PERIODO_DA, 'dd/mm/yyyy') = '$periodo_da' and ";
154
	$sql .= "to_char(TI11_PERIODO_A, 'dd/mm/yyyy') = '$periodo_a' and ";
155
	$sql .= "TI11_KEYDETT = $keydett and TI11_FLAG_ASS = $flag_ass and ";
156
	$sql .= "TI11_IDFILE = $T11_file";
157
 
158
	// NO AUTOCOMMIT		
159
	if (!exec_sql($conn, $sql, 0)) {
160
 
161
		return false;
162
	}	
163
 
164
	return true;
165
 
166
}	
167
?>