""){ $centerid = $_POST[center]; $strsqlcenter = " and centerid = '$_POST[center]'"; } else { $centerid = $centerdata[0][1]; $strsqlcenter = " and centerid = '$centerid'"; } $cname = GetListdata($centerdata,$centerid,0); $shimetime = GetListdata($centerdata,$centerid,2); //在庫型締め時間 // $shimetime2 = GetListdata($centerdata,$centerid,3); //通過型締め時間 if ($shimetime<1000) { $shimestr = substr($shimetime, 0, 1).":".substr($shimetime, 1, 2); } else { $shimestr = substr($shimetime, 0, 2).":".substr($shimetime, 2, 2); } $shime = $strtitle."締め時間は".$strtitle2."日の前日 ".$shimestr." (在庫型)です。 "; //入荷締め切り判定 if ($lead>0) { //入荷入力日が明日以降 $scheck = "OK"; } elseif ($lead<0) { //入荷入力日が昨日 if ($userdata["kengen"] < 30) { //管理者tradexはいつでも入力可能。 $scheck = "OK"; //$msg_shime = " 管理者権限でいつでも入力可能"; } else { //締め時間を過ぎている if(($userdata["kengen"]==20) and (1700>=(int)date("Gi")) and ($lead==-1)){ //$scheck = "OK";//debug 管理者20だけ当日17時までOKとする //$msg_shime = " 管理者権限で当日17:00まで入力可能"; $scheck = "NG"; } else { $scheck = "NG"; } } } else { //入荷入力日が当日 在庫型 if ($userdata["kengen"] < 30) { //管理者tradexはいつでも入力可能。 //$msg_shime = " 管理者権限"; $scheck = "OK"; } else { if((int)$shimetime <= (int)date("Gi")) { //時間単位 Giで2359 //締め時間を過ぎている $scheck = "NG"; } else { //締め時間前 $scheck = "OK"; } } } if ($scheck=="NG") { $msg_shime_err = "入力期限を過ぎているので入力ができません。 ".$strtitle2."日を変更して下さい。
"; } else { //$msg_shime = "入力出来ます。".$msg_shime."
"; } $errcount = 0; //エラーカウント $okcount = 0; //エラーカウント $errmsg = ""; //エラーメッセージ //アップロード更新処理 if (!empty($_FILES)) { //ファイル名の移動先の指定 $filename = $datalocation."upload/0700-".$userdata["honbuid"]."-".$userdata["tid"]."-".date("YmdGi"); move_uploaded_file($_FILES['userfile']['tmp_name'],$filename); $errcount = 0; //エラーカウント $okcount = 0; //エラーカウント $errmsg = ""; //エラーメッセージ $y = 1; //カウント //ファイルの読み込み //センターコード、商品コード、入荷予定日、賞味期限日、入荷予定数 $fp=fopen($filename,"r"); if (!$fp){ print "

SORRY!

FILEハンドルエラー

"; $errcount++; } else { while (!feof ($fp)) { $buffer = fgets($fp, 4096); $buffer = str_replace("\"","",$buffer); $arraydata = explode(",",$buffer); //センターコード if ($userdata["kengen"] <> 30) { $centercode = trim($arraydata[0]); //各処理行で入力 } //UPLOAD判定 //日付が本日より後、商品コードがある、明日ならセンターデータリストにある //商品コードが無いものは飛ばす if ($arraydata[1] <> "") { //該当の商品を削除 $strsql="DELETE from comeindata where honbucode=".$userdata["honbuid"]." and centercode='".$centercode."' and shohincd='".trim($arraydata[1])."' and comeindate='".trim($arraydata[2])."' and shomi= '".trim($arraydata[3])."' and comeinflg=0 limit 1"; $result=mysql_query($strsql,$my_con); Testecho ($y.$strsql); //debug //該当の商品を追加 //新規挿入時は商品賞味期限チェック(在庫で一番新しい賞味期限より古い賞味期限の入力を阻止する) $shomidata = dbselect("shomi","stockdata","shohincd = '".trim($arraydata[1])."' and honbucode = '".$userdata["honbuid"]."' and centercode='".trim($arraydata[0])."' and stockqty>0","shomi desc",1); // if (sizeof($shomidata)==0) {//件数チェック、件数有りなら賞味期限をチェックする $shomicheck ="OK"; //0件なら入荷OK } else { if (($userdata["kengen"] <= 20) or (IntervalDate(trim($arraydata[2]),$shomidata[0][0])>=0)) { //在庫のより賞味期限が同じまたは新しいので入荷OK(管理者権限はエラーチェックなし) $shomicheck ="OK"; } elseif((trim($arraydata[2])=="9999-12-31") or (trim($arraydata[2])=="9999/12/31")) { //賞味期限管理不要の9999-12-31はエラーチェック無しとする 2007/11/26追加 $shomicheck ="OK"; } else { //在庫のより賞味期限が古いので入荷NG $shomicheck ="NG"; } } if ($shomicheck =="OK") { $strsql="INSERT INTO comeindata(honbucode,centercode,shohincd,comeindate,shomi,comeinqty,kakuteiqty,creater,createdate,comeinprice,comeinpricetotal) values (".$userdata["honbuid"].",".trim($arraydata[0]).",'".trim($arraydata[1])."','".trim($arraydata[2])."','".trim($arraydata[3])."','".trim($arraydata[4])."','".trim($arraydata[4])."','".$userdata["tid"]."',now(),0,0)"; $result=mysql_query($strsql,$my_con); $errcode =mysql_errno(); if($errcode==1062) { Testecho ("既に登録されています\n"); $errcount++; $errmsg .= $y."行目 修正登録不可 ".$buffer."
\n"; } elseif($errcode==1064) { Testecho ("どこか、不正なデータがあり、登録に失敗しました。"); $errcount++; $errmsg .= $y."行目 不正データ ".$buffer."
\n"; } elseif($errcode==0) { $okcount++; } else { $errcount++; $errmsg .= $y."行目 不明エラー ".$buffer."
\n"; } Testecho ($y.$strsql." ERR=".$errcode."
") ; //debug } else { //$shomicheck ="NG"; //在庫のより賞味期限が古いので入荷NG $errcount++; Testecho ("賞味期限の逆転で、登録に失敗しました。"); $errmsg .= $y."行目 不正データ 最新在庫より古い賞味期限のデータが入力されました ".$buffer."
\n"; } } $y++; } fclose ($fp); } } //変更処理(画面)新規・訂正 if (($_POST[update] <> "") and ($scheck == "OK")){ Testecho ($y." UPDATE
"); #debug For ($y=1;$y<(int)$_POST[max];$y++) { Testecho ($y." ".$_POST{"shohincd".$y}." LOOP
"); #debug if ($_POST{"shohincd".$y} == "") break; #$a = "qty".$y; //if ((int)$_POST{"flg".$y} ==0 ) { //更新可能 0:入荷確定前、1:入荷確定済、2:締め済み if ($_POST{"qty".$y}=="") { //0空欄は何も更新しない。 } elseif (Numchecker3($_POST{"qty".$y})=="CHR") { //0.数値欄に文字が入れられたら何も更新しない。 $errmsg .= "数値以外の入力値がありましたので、更新できない商品がありました。[".$_POST{"shohincd".$y}."]
";$errcount++; } elseif ((Numchecker2($_POST{"qty".$y}) == 0) and ($_POST{"comeinid".$y} <>"")) { //削除 IDがあり、新データが0 $strsql = "DELETE from `".$company."comeindata`"; $strsql .= " WHERE comeinid = '".$_POST{"comeinid".$y}."' limit 1"; $result=mysql_query($strsql,$my_con); Testecho ($y." ".$strsql."
"); #debug mysql_sql_log($strsql,mysql_affected_rows(),$_SERVER['SCRIPT_NAME'].":".__LINE__); $okcount++; } elseif((Numchecker2($_POST{"qty".$y}) > 0) and ($_POST{"comeinid".$y} =="")) { //新規挿入 IDなしで、新データが0以上 //データNULL CHECK if (!(ChkdateB($_POST{"shomi".$y},$shomicheckflg))) { $errcount++; $errmsg .= "#".$errcount." ".$_POST{"shohincd".$y}." 未入力項目または不正日付[".$_POST{"shomi".$y}."]が有りました。YYYYMMDDで入力します
"; } else { //商品賞味期限チェック(在庫で一番新しい賞味期限より古い賞味期限の入力を阻止する) if($_POST{"shomi".$y}<>"") { $shomidata = dbselect("shomi","`".$company."stockdata`","shohincd = '".$_POST{"shohincd".$y}."' and centerid='".$centerid."' and stockqty>0 and validflg=1 and shomi > '".$_POST{"shomi".$y}."'","shomi desc",1); // Testecho($strsqldbselect); } if ((($_POST{"shomi".$y}<>"") and (sizeof($shomidata)==0)) or ($_POST{"shomi".$y}=="")) {//賞味期限入力有りなら、在庫より古いものではないかをチェックする // if (($_POST{"shomi".$y}<>"") and (sizeof($shomidata) == 0)) {//賞味期限入力有りなら、在庫より古いものではないかをチェックする //在庫のより賞味期限が同じまたは新しいので入荷OK if (!(Chkdate($_POST{"shomi".$y}))) { $shomi = "NULL"; } else { $shomi = "'".$_POST{"shomi".$y}."'"; } $locationdata = dbselect("loccode","`".$company."shohinlocation`","centerid='".$centerid."' AND shohincd='".$_POST{"shohincd".$y}."'",-1,-1); $pricedata = dbselect("price_buy,makercode","`".$company."shohinmaster`","shohincd='".$_POST{"shohincd".$y}."'",-1,-1); $strsql = "INSERT INTO `".$company."comeindata`(centerid,shohincd,supplyerid,comeindate,shomi,comeinqty,kubun,loccode,creater,createdate,comeinprice,comeinpricetotal) VALUES('".$centerid."','".$_POST{"shohincd".$y}."','".$pricedata[0][1]."',DATE_ADD(CURDATE(),INTERVAL $orderdate DAY),".$shomi.",'".Numchecker2($_POST{"qty".$y})."','".Numchecker2($_POST{"kubunold".$y})."','".$locationdata[0][0]."','".$userdata["tid"]."',now(),'".$pricedata[0][0]."','".((int)$pricedata[0][0] * Numchecker2($_POST{"qty".$y}))."')"; $result=mysql_query($strsql,$my_con); $errcode =@mysql_errno(); $okcount++; Testecho ($y.$strsql."
"); #debug mysql_sql_log($strsql,mysql_affected_rows(),$_SERVER['SCRIPT_NAME'].":".__LINE__); } else { //在庫のより賞味期限が古いので入荷NG $errcount++; $errmsg .= "#".$errcount." ".$_POST{"shohincd".$y}." 入力日=".$_POST{"shomi".$y}." 最新在庫(".$shomidata[0][0].")より古い期日が入力されました。
"; } } } elseif(($_POST{"comeinid".$y} <>"") and ( Numchecker2($_POST{"qty".$y})<>(int)$_POST{"qtyold".$y}) or ($_POST{"shomiold".$y}<>$_POST{"shomi".$y})) { //更新 IDがあり、旧データと新データが異なる //データNULL CHECK if (!(ChkdateB($_POST{"shomi".$y},$shomicheckflg))) { $errcount++; $errmsg .= "#".$errcount." ".$_POST{"shohincd".$y}." 未入力項目または不正日付のため更新できませんでした。
"; } else { if (!(Chkdate($_POST{"shomi".$y}))) { $shomi = "NULL"; $okcount++; $strsql = "UPDATE `".$company."comeindata` set comeinqty='".Numchecker2($_POST{"qty".$y})."',kubun='".Numchecker2($_POST{"kubunold".$y})."',updater='".$userdata["tid"]."',shomi=".$shomi; $strsql .= " where comeinid = '".$_POST{"comeinid".$y}."' limit 1"; $result=mysql_query($strsql,$my_con); Testecho ($y." ".$strsql."
"); #debug } else { $shomi = "'".$_POST{"shomi".$y}."'"; $shomidata = dbselect("shomi","`".$company."stockdata`","shohincd = '".$_POST{"shohincd".$y}."' and centerid='".$centerid."' and stockqty>0 and validflg=1 and shomi>'".$_POST{"shomi".$y}."'","shomi desc",1); if(sizeof($shomidata)==0) { $okcount++; $strsql = "UPDATE `".$company."comeindata` set comeinqty='".Numchecker2($_POST{"qty".$y})."',kubun='".Numchecker2($_POST{"kubunold".$y})."',updater='".$userdata["tid"]."',shomi=".$shomi; $strsql .= " where comeinid = '".$_POST{"comeinid".$y}."' limit 1"; $result=mysql_query($strsql,$my_con); Testecho ($y." ".$strsql."
"); #debug } else { $errcount++; $errmsg .= "#".$errcount." ".$_POST{"shohincd".$y}." 入力日=".$_POST{"shomi".$y}." 最新在庫(".$shomidata[0][0].")より古い期日が入力されました。
"; } } mysql_sql_log($strsql,mysql_affected_rows(),$_SERVER['SCRIPT_NAME'].":".__LINE__); } } /*} elseif((int)$_POST{"flg".$y} ==1 ) { //ロケーション更新可能 更新可能 0:入荷確定前、1:入荷確定済、2:締め済み if((Numchecker2($_POST{"qty".$y}) > 0) and (($_POST{"location".$y}<>$_POST{"locationold".$y}) )) { //更新 $okcount++; $strsql = "UPDATE comeindata set location='".$_POST{"location".$y}."',updater='".$userdata["tid"]."',updatedate=now()"; $strsql .= " where comeinid = '".$_POST{"comeinid".$y}."' limit 1"; $result=mysql_query($strsql,$my_con); Testecho ($y." ".$strsql."
"); #debug } }*/ } } //レコードの指定 if ($_POST[pagenum] == "") { $page = 1; } else { $page = (int)$_POST[pagenum]; } //データ取得数 $limit = " LIMIT ".($pageset*($page - 1)).",$pageset"; //検索用語 $strsql = ""; if ($sw<>"") { $strsqlsearchword = " and searchword like '%".$sw."%'"; } //サプライヤーコード if ($userdata["supplyerid2"] <> "") { //10Tradex,20本部、30センター、40サプライヤー、50納品先 $strsqlmaker = " and makercode in (".$userdata["supplyerid2"].") "; $makerdata = dbselect("companyname,companyid","company","companyid in (".$userdata["supplyerid2"].") ","companyid",-1); Testecho ($strsqldbselect); } elseif ($userdata["supplyerid"] <> "") { $strsqlmaker = " and makercode = '".$userdata["supplyerid"]."'"; $makerid = $userdata["supplyerid"]; } if (($_POST[maker]<>"all") and ($_POST[maker]<>"")){ $strsqlmaker = " and makercode = '".$_POST[maker]."'"; $makerid = $_POST[maker]; } //商品のリストを取り出す(shohin in 句用&総合計数用) $strsql1 = "SELECT shohincd FROM `".$company."shohinmaster` WHERE ryutu_type=1 and zaiko=1 ".$strsqlmaker.$strsqlsearchword." ORDER BY shohincd"; //商品マスタ+サプライヤ情報 //SELECT * FROM (SELECT FROM 商品マスタ、サプライヤ on makeracode=companyid) AS mas $strsql2 = "SELECT shohincd, shohinmei, kikaku, irisuu, aisuu, code, juryo, nisugata,shomiflg, makercode ,companyname FROM `".$company."shohinmaster` AS sho INNER JOIN `company` ON sho.makercode=company.companyid ".dbselectin($strsql1.$limit,"and sho.shohincd in ")." ORDER BY shohincd"; //全数 $result=@mysql_query($strsql1,$my_con); $maxrow=@mysql_num_rows($result); Testecho ($y." $errcode ".$strsql1); #debug mysql_sql_log2($strsql1,$_SERVER['SCRIPT_NAME'].":".__LINE__); //データ1ページ分 $result=@mysql_query($strsql2,$my_con); Testecho ($y." $errcode ".$strsql2); #debug $row=@mysql_num_rows($result); mysql_sql_log2($strsql2,$_SERVER['SCRIPT_NAME'].":".__LINE__); ?> 0) { ?>onLoad="document.sw.qty1.focus()" >
$strtitle データアップロード
センターコード、商品コード、 $strtitle2 予定日、賞味期限日、 $strtitle2 予定数

"; ?>
0) { if ($okcount > 0 ){ $msgok= "$okcount 件のデータを更新しました。"; } if ($errcount > 0 ){ $msgerr= "登録エラーが $errcount 件有りました。
".$errmsg; } PrintMsg($msgerr,$msgok,700); } if (($msg_shime<>"") or ($msg_shime_err<>"") ){ PrintMsg($msg_shime_err,$msg_shime,700); } ?>
日:  =0) { echo $shime; //締め時間アナウンス } if ($sw<>""){ echo "商品検索:".$sw." "; } PrintList($makerdata,$makerid,0); echo " 該当件数:".$maxrow."件 "; ?>

0) and ($scheck == "OK")) { ShowNavBar3($maxrow,$pageset,$page,"75%",$order); ?>
No サプライヤー 商品コード 商品名 規格 合数 入数 入力
検索結果はゼロ件でした。
0) { //入荷実績済み ?> 0) { //入荷実績済み ?> 0) { //入荷実績済み ?>
予定数 備考
">
"") {$trans = dbselect("companyname","company,`".$company."transdata` as td","transid='".$data3[transid]."' and company.companyid = td.centerid",-1,-1);echo $trans[0][0]."から移動分";} ?>
3) and (int)$row3< 22) { ?> >