/var/www/enzatesting.onesolution.hk/cn_rm_modify.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php 
$formid 
"Order";
require_once 
"inc/configure.php";
require_once 
"inc/ord_cn_rm_func.php";

$refid                 = (int) filter_var($_REQUEST['refid'], FILTER_SANITIZE_STRING);

if( 
$_POST['action']=="cn_rm_modifyform" && $refid && $main=getDB("cn_rm_main"$refid) ){
//vdump($_REQUEST);//exit;

    
$supplier_status    filter_var($_REQUEST['supplier_status'], FILTER_SANITIZE_STRING);        
    
$supplier_remarks    filter_var($_REQUEST['supplier_remarks'], FILTER_SANITIZE_STRING);
    
$issue_cnnbr        = !empty($_REQUEST['issue_cnnbr']);    
    
$ext_cn_nbr            filter_var($_REQUEST['ext_cn_nbr'], FILTER_SANITIZE_STRING);

    
$createby            filter_var($_SESSION['user'], FILTER_SANITIZE_STRING);
    
$lastupby            filter_var($_SESSION['user'], FILTER_SANITIZE_STRING);

    
$cn_nbr                $main['cn_nbr'];
    
$seq                $main['seq'];
    
    
$sql_param = array(    ':supplier_status' => $supplier_status
                            
':supplier_remarks' => $supplier_remarks,
                            
':cn_approvedby' => null,
                            
':cn_nbr' => $cn_nbr,
                            
':seq' => $seq,
                            
':refid' => $refid,
                            
':lastupby' => $lastupby);    
    
    if( 
$issue_cnnbr && empty($cn_nbr) ){
        list(
$cn_nbr$seq) = cusivc_getNewIvcNbrSeq("ivc_rawmat"$main['cn_supplier'], 'CN');
        
$sql_param['cn_nbr'] = $cn_nbr;
        
$sql_param['seq'] = $seq;
        
$sql_issuedate 'cn_issuedate = GETDATE(),';
        
//vdump($cn_nbr, $seq);
    
} elseif ($ext_cn_nbr) {
        
//user input credit note number for external supplier
        
$sql_param['cn_nbr'] = $ext_cn_nbr;
        
$sql_param['seq'] = null;
    }
    
    if( (
$supplier_status=='APPROVED' || $supplier_status=='SENT')&& empty($main['cn_approvedby']) ){
        
$sql_param[':cn_approvedby'] = filter_var($_SESSION['user'], FILTER_SANITIZE_STRING);
        
$sql_approveddate 'cn_approveddate = GETDATE(),';
    }
    
    
$dbh->beginTransaction();

    
//update main
    
$sql "UPDATE cn_rm_main SET
                supplier_status = :supplier_status, 
                supplier_remarks = :supplier_remarks,
                cn_approvedby = :cn_approvedby,
                
$sql_issuedate
                
$sql_approveddate
                cn_nbr = :cn_nbr,
                seq = :seq,
                lastupby = :lastupby,
                lastupdate = GETDATE()
            WHERE refid = :refid "
;
                
    
$sth $dbh->prepare($sql);
    
$q $sth->execute$sql_param );
    
//echo $sth->getSQL( $sql_param ) . HTML_EOL;    
    
pdo_showerror($sth$q$sql_param);
//exit;
    //cnr_markAllUnused($refid);
    
foreach($_REQUEST['material'] as $key=>$mat_item){
        
//vdump($key, $mat_item);
        
if( $key>&& !empty($mat_item['approve']) ){ //valid row
            //echo "update $key".HTML_EOL;
            
cn_updateDtl($refid$mat_item$supplier_status);
        }
    }    

    if( 
$supplier_status=='SENT' && datef($main['supplier_sent_time'])=='' ) {
        
cn_setCNSenttime($refid);
    }
    
    
cn_updateSummary($refid);
        
//exit;
$dbh->commit();    

//exit;
    
form_dest($_REQUEST['godest'], $_REQUEST['formdest']);
    
header("Location: cn_rm_modifyform.php?refid=$refid&msg=Saved.");
    print 
"Saved.";
    exit;
    
    
}
print 
"Invalid Request";


?>