var SEARCH_JAN_CNT = 1; //JAN検索でヒットした商品コード数を取得 var ZdcCustGetPrdProcessing = false; function custStartPrdProc() { // var e = document.getElementById('custProc'); // if (e) e.style.display = 'block'; ZdcCustGetPrdProcessing = true; } function custEndPrdProc() { // var e = document.getElementById('custProc'); // if (e) e.style.display = 'none'; ZdcCustGetPrdProcessing = false; } //商品コードから商品名取得 function custInitAll() { //入力値の初期化 var pnm_disp = document.getElementById('custPrdName'); if (pnm_disp) pnm_disp.innerHTML = '商品コードを入力してください'; var prd_id = document.getElementById('prd_id'); if (prd_id) prd_id.value = ''; var prd_input= document.getElementById('custPrdInput'); if (prd_input) prd_input.innerHTML = ''; var jan_input = document.getElementById('custJanInput'); if (jan_input) jan_input.value = ''; var prd_ids = document.getElementById('prd_ids'); if (prd_ids) prd_ids.value = ''; var prd_cnt = document.getElementById('custPrdCnt'); if (prd_cnt) prd_cnt.innerHTML = ''; } //商品コードから商品名取得 function custGetPrdName(pid) { if (!pid) return; var cid = document.getElementById('D_DATA_CID'); if (!cid) return; custStartPrdProc(); if (pid.value == '') { //入力値の初期化 custInitAll(); custEndPrdProc(); } else { ZdcGetPrd(cid.value, pid.value, custCallbackPrd); } } function custCallbackPrd(result) { var pnm_disp = document.getElementById('custPrdName'); var prd_input= document.getElementById('custPrdInput'); var prd_id = document.getElementById('prd_id'); //JAN検索クリア var jan_input = document.getElementById('custJanInput'); if (jan_input) jan_input.value = ''; var prd_cnt = document.getElementById('custPrdCnt'); if (prd_cnt) prd_cnt.innerHTML = ''; var prd_ids = document.getElementById('prd_ids'); if (prd_ids) prd_ids.value = ''; //エラー if(result.status != 0 && result.status != 3 && result.status != 5 && result.status != 9) { custInitAll(); custEndPrdProc(); alert(result.status); return; } //正常時 if (result.items && result.items.length) { pnm_disp.innerHTML = result.items[0].pnm; prd_id.value = result.items[0].pid; prd_input.value = result.items[0].pid; //エラー、検索結果なし } else { pnm_disp.innerHTML = '登録されていない商品です'; prd_id.value = ''; // prd_input.value = ''; } custEndPrdProc(); } //「検索」実行 function custOnSubmit(frm) { if (ZdcCustGetPrdProcessing) return false; var prd_id = document.getElementById('prd_id'); if (!prd_id || prd_id.value == '') { alert('商品コードを入力してください'); return false; } var hid = document.createElement("input"); hid.setAttribute("type", "hidden"); hid.setAttribute("name", "p_s1"); hid.setAttribute("value", prd_id.value); frm.appendChild(hid); //商品コード複数件 検索 var prd_ids = document.getElementById('prd_ids'); if (prd_ids && prd_ids.value != '') { hid = document.createElement("input"); hid.setAttribute("type", "hidden"); hid.setAttribute("name", "p_s4"); hid.setAttribute("value", prd_ids.value); frm.appendChild(hid); } var prd_name = document.getElementById('custPrdName'); if (prd_name) { hid = document.createElement("input"); hid.setAttribute("type", "hidden"); hid.setAttribute("name", "p_s2"); hid.setAttribute("value", prd_name.innerHTML); frm.appendChild(hid); } return true; } function custSleep(ms) { var d1 = new Date().getTime(); var d2 = new Date().getTime(); while( d2 < (d1 + ms) ) { d2 = new Date().getTime(); } return; } /* ---------------------------------------------------------- */ //JANコードから商品一覧取得(数値入力時) function onClickGetPrmCnt(jan) { SEARCH_JAN_CNT = 0; custGetPrdListfromJan(jan.value); } //JANコードから商品一覧取得(数値リンク押下時) function onClickPrmCnt(jan) { SEARCH_JAN_CNT = 1; custGetPrdListfromJan(jan); } //JANコードから商品一覧取得 function custGetPrdListfromJan(jan) { var cid = document.getElementById('D_DATA_CID'); if (!cid) return; custStartPrdProc(); if (!jan || jan == '') { custInitAll(); custEndPrdProc(); } else { ZdcGetPrdJan(cid.value, jan, custCallbackJan); } } function custCallbackJan(result) { var item = new Array(); if(result.status != 0 && result.status != 3 && result.status != 5 && result.status != 9) { custEndPrdProc(); alert(result.status); return; } if (result.items && result.items.length) { //商品数検索時 if(SEARCH_JAN_CNT == 0){ setSearchResultCnt(result); }else{ item = result.items; openSearchResultList(item, result.options.jan); } } else { /* 入力内容クリア */ var pnm_disp = document.getElementById('custPrdName'); if (pnm_disp) pnm_disp.innerHTML = '登録されていない商品です'; var prd_input= document.getElementById('custPrdInput'); if (prd_input) prd_input.value = ''; var prd_id = document.getElementById('prd_id'); if (prd_id) prd_id.value = ''; var prd_cnt = document.getElementById('custPrdCnt'); if (prd_cnt) prd_cnt.innerHTML = ''; // var jan_input = document.getElementById('custJanInput'); // if (jan_input) jan_input.value = ''; } custEndPrdProc(); } /* 商品コード数を画面に設定する */ function setSearchResultCnt(prm) { //ソート上位の値を画面に設定 var pnm_disp = document.getElementById('custPrdName'); if (pnm_disp) pnm_disp.innerHTML = prm.items[0].pnm; var prd_input = document.getElementById('custPrdInput'); if (prd_input) prd_input.value = prm.items[0].pid; var prd_id = document.getElementById('prd_id'); if (prd_id) prd_id.value = prm.items[0].pid; var prd_cnt = document.getElementById('custPrdCnt'); if (prd_cnt){ if(1 < prm.items.length){ SEARCH_TYPE_JAN = 0; html = ''; html += ""; html += prm.items.length; html += ""; prd_cnt.innerHTML = html; setSearchPrdIds(prm.items); }else { //JANにて商品コード1件以下の場合、既存通り商品コード検索 var prd_id = document.getElementById('prd_id'); if (prd_id) prd_id.value = prm.items[0].pid; prd_cnt.innerHTML = prm.items.length; } } } /* JANコード検索対応 */ function setSearchPrdIds(items) { //prd複数検索対応 var ids = ''; //OR検索データ設定 for(i=1; i"; html += ""; html += "商品コード一覧"; html += ""; html += ""; html += ""; html += "商品コード"; html += "商品名"; html += "JANコード"; html += ""; /* 商品数ループ */ for(i=0; i"; /* 商品コード */ html += items[i].pid; html += ""; html += ""; /* 商品名 */ var pid = items[i].pid.toString(); html += items[i].pnm; html += ""; html += ""; /* JANコード */ html += prm; html += ""; html += ""; } html += "閉じる"; html += ""; /* 一覧データ表示 */ prd_list.innerHTML = html; prd_list.style.display = "block"; } /* 検索結果一覧を閉じる */ function closeSearchResultList() { /* 一覧を閉じる */ var prd_list = document.getElementById('searchPrdList'); if (!prd_list){ return; } prd_list.style.display = "none"; prd_list.innerHTML = ""; /* 一覧背景を閉じる */ var bak = document.getElementById("searchPrdListWrapper"); if (bak){ bak.style.display = "none"; } }