按網上流傳的方法新建好的觸發器,添加自定義的PHP代碼,可以用於判斷數據正確性
用於流程結束後對上海百勝軟件的ERP2自動新增對應的單據
<script>
jQuery.ajaxSetup({
type:"POST",
dataType:"json",
async:false,
cache:false
});
function chkSubIsOver_before_callBack_<?php echo $PRCS_KEY_ID;?>(){
var run_id=jQuery("input[name='run_id']:eq(0)").val(); //獲取流水號
var flow_id=jQuery("input[name='flow_id']:eq(0)").val(); //獲取流程ID號
//獲取表單內控件值 如果需要對錶單某個數據做較驗,可以使用以下部份
// var myform=jQuery(window.frames["work_form_data"].document).find("form[name='form1'");
// var val=myform.find(":input[name='DATA_2']").val();
/*
//檢查子件是否結束
var chckflag=true;
jQuery.ajax({
url:"/userext/index.php?c=workflow&m=chkSubisOver",
data:{flow_id:flow_id,run_id:run_id},
success:function(res){
if (!res){
alert("獲取子件數據失敗");
chckflag=false;
}
if (!res.rescode){
alert("該母件的子件還未結束\r子件流水號:\r"+res.resmsg);
chckflag=false;
}
}
});
if (!chckflag){
return false;
} */
}
</script>
<?php
$serverName = "192.168.1.xxx";
$connectionInfo = array( "Database"=>"y", "UID"=>"", "PWD"=>"");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
//$run_id=jQuery(window.frames["work_form_data"].document).find("form[name='form1'");
include_once ("inc/auth.inc.php");
ob_end_clean();
include_once ("../plugin.inc.php");
$RUN_DATA = getRunData($RUN_ID);
//var_dump($RUN_DATA);
$hostname = gethostbyaddr("127.0.0.1");
$spdm=$RUN_DATA['報損明細']['1']['0']; //商品條碼
$sddm=$RUN_DATA['申請人ID']; //商店代碼
$data=$RUN_DATA['申請時間']; //申請日期
$zsl="-".$RUN_DATA['總件數']; //報損數量
$id=$RUN_ID; //流程ID
//var_dump($RUN_DATA['報損明細']);
//echo count($RUN_DATA['報損明細']);
$sql_djh="select djh from DJBHWH WHERE DJMC='CKTZD' AND BMFS='0' AND DM='0'"; //查詢調整單單號
$stmt = sqlsrv_query( $conn, $sql_djh );
$row_djh = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC);
$sql_mxbh="select max(mibh)+1 as 編號 from cktzdmx"; //查詢調整單單號
$stmt = sqlsrv_query( $conn, $sql_mxbh );
$row_mxbh = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC);
$today = date("Y-m-d");
//echo $row_djh['djh'];
echo "<br>";
//echo $row_mxbh['編號'];
echo "<br>";
$djh=$row_djh['djh']+1;
switch(strlen($row_djh['djh'])){
case 4:
$djbh="KA500".$row_djh['djh'];
break;
case 5:
$djbh="KA50".$row_djh['djh'];
break;
case 6:
$djbh="KA5".$row_djh['djh'];
break;
}
//echo $id; //流水號
//插入調整單代碼
$sql_pdd="insert into cktzd(djbh,rq,djxz,dm1,dm2,dm2_1,qddm,ygdm,sl,je,tj,xc,ys,jz,js,sh,shrq,zdr,shr,llr,rq_4,bz,byzd1,byzd2,byzd5,byzd6,byzd12,zs)values ('".$djbh."','".$today."',0,100,'".$sddm."','000','000','000','".$zsl."','-239',0,0,1,0,0,1,'".$today."','".$_SESSION["LOGIN_USER_NAME"]."','".$_SESSION["LOGIN_USER_NAME"]."',0,'".$today."','OA:".$id."','3',0,'".$_SESSION["LOGIN_USER_NAME"]."','".$hostname."',1,0)";
$stmt = sqlsrv_query( $conn, $sql_pdd );
if (!$stmt){
echo "插入單據號失敗,請檢查!";
}else{
//$row_pdd = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC);
//echo $sql_pdd;
//djh+1更新寫入djbhwh
$sql_djh1="update DJBHWH set djh='".$djh."' WHERE DJMC='CKTZD' AND BMFS='0' AND DM='0'";
$stmt = sqlsrv_query( $conn, $sql_djh1 );
$mibh=0;
for($x=1;$x<count($RUN_DATA['報損明細']);$x++)
{
$baosunKeys = array_values( $RUN_DATA['報損明細'][$x] );
$tm=substr((array_values($baosunKeys)[0]),0,10);
//$tm='2150509018';
$ys=substr((array_values($baosunKeys)[0]),-3,2);
$cm=substr((array_values($baosunKeys)[0]),-1,1);
$sl="-".(array_values($baosunKeys)[2]);
$mibh=$mibh+1;
//插入明細數據
$sql_mx="insert into CKTZDmx (djbh,mibh,spdm,gg1dm,gg2dm,sl,byzd1)values('$djbh','$mibh','$tm','$ys','$cm','$sl',1)";
$stmt = sqlsrv_query( $conn, $sql_mx );
if(!$stmt){
//echo "插入明細數據失敗!請檢查";
echo "<script language=\"JavaScript\">alert(\"插入單據號失敗,請檢查!\");</script>";
echo "<br>";
echo $tm."<br>";
echo $ys."<br>";
echo $cm."<br>";
$sql_del="delete from cktzd where djbh='".$djbh."'"; //插入明細數據失敗,則刪除對應的調整單
echo $sql_del;
$stmt = sqlsrv_query( $conn, $sql_del );
}else{
//$row_mx = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC);
//刷新價格
$sql1 = "update CKTZDmx set ckj=(select bzsj from shangpin where shangpin.spdm=CKTZDmx.spdm) where DJBH='".$djbh."';";
$sql2 = "update CKTZDmx set zk='1.0' where DJBH='".$djbh."';";
$sql3 = "update CKTZDmx set dj=ckj,dj_1=ckj where DJBH='".$djbh."';";
$sql4 = "update CKTZDmx set je=sl*(select bzsj from shangpin where shangpin.spdm=CKTZDmx.spdm) where DJBH='".$djbh."';";
$sql5 = "update CKTZDmx set bzje=sl*(select bzsj from shangpin where shangpin.spdm=CKTZDmx.spdm) where DJBH='".$djbh."';";
$sql6 = "update CKTZD set je=(select sum(je) from CKTZDmx where djbh='".$djbh."') where djbh='".$djbh."';";
$sql7 = "update CKTZD set bzje=(select sum(bzje) from CKTZDmx where djbh='".$djbh."') where djbh='".$djbh."';";
$stmt = sqlsrv_query( $conn, $sql1 );
$stmt = sqlsrv_query( $conn, $sql2 );
$stmt = sqlsrv_query( $conn, $sql3 );
$stmt = sqlsrv_query( $conn, $sql4 );
$stmt = sqlsrv_query( $conn, $sql5 );
$stmt = sqlsrv_query( $conn, $sql6 );
$stmt = sqlsrv_query( $conn, $sql7 );
echo $djbh."單據添加成功!";
$sql_rz = "INSERT INTO XTRZB(GUID,IP,JQ,DT,CZDX,DJMC,DJBH,YDJH,CZ,ZYMC,MODULE,EXECMODULE) VALUES('','','".$hostname. "',getdate(),'1','cktzd','".$djbh."','','INSERT','".$_SESSION["LOGIN_USER_NAME"]."',0,'分銷')";
$stmt = sqlsrv_query( $conn, $sql_rz );
}
}
}
?>