/*************************************************************** * 계약서 항목 추가되는 데 사용 *======================================================>>>>>>> ***************************************************************/ /** * 금액 숫자(소수점 포함)인지 체크 * formObject : 금액항목 */ function amt_Format(formObject, sMsg){ var amt ; amt = formObject.value ; if(!isNumberChk(amt)){ showMessage( "[" + sMsg + "]\n", "CO032", false); formObject.value = ""; formObject.focus(); return false; } return true; } /** * 금액 숫자(순수하게 숫자)인지 체크 * 계약서 양식폼 작성시 * formObject : 금액항목 */ function amt_FormatNum(formObject, sMsg){ var amt ; amt = formObject.value ; if(!isNumber(amt)){ showMessage( "[" + sMsg + "]\n", "CO032", false); formObject.value = ""; formObject.focus(); return false; } return true; } /** * 금액 숫자(- 숫자포함)인지 체크 * 계약서 양식폼 작성시 * formObject : 금액항목 */ function amt_FormatNumChk(formObject, sMsg){ var amt ; amt = TrimNumChk(formObject.value) ; if(!isNumMinusChk(amt)){ showMessage( "[" + sMsg + "]\n", "CO032", false); formObject.value = ""; formObject.focus(); return false; } return true; } /** * 금액 포커스 받으면 금액형식을 숫자형식으로 표시하기 * formObject : 금액항목 */ function amt_Focus(formObject){ formObject.value = TrimNumChk(formObject.value); } /** * 금액 onBlur시 숫자형식을 금액형식으로 표시하기 * formObject : 금액항목 */ function amt_Blur(formObject, sMsg, chkGn){ // 객체 값이 있으면 if(formObject.value != ""){ if(chkGn == '1'){ // 금액이 숫자타입인지 체크 if(amt_FormatNum(formObject, sMsg)){ formObject.value = CommaNum(formObject.value); } }else if(chkGn == '2'){ // 금액이 숫자(-포함)타입인지 체크 if(amt_FormatNumChk(formObject, sMsg)){ formObject.value = CommaNum(formObject.value); } }else if(chkGn == '9'){ // 세금계산서 작성시의 사업자번호 유효성 체크 // 금액이 숫자(-포함)타입인지 체크 if(!isNumberMinus(formObject.value)){ showMessage( eval("CO999") + "["+sMsg+"]\n", "CO014", false); formObject.value = ""; return; } } } } function passnext(num, c, n) { var inum = num; if( !isNumber(c.value) && c.value != '') { alert("숫자만 입력하세요"); c.value = ""; return; } if ( c.value.length == num) { n.focus(); return; } } /** * 수량 입력하고 OnBlur시 단가 곱하여 공급가액 표시하기 * obj1 : 수량 * obj2 : 매입단가 * obj3 : 합계 * sMsg : 오류메시지 */ function list_Item_Quan(obj1, obj2, obj3, sMsg, gbn_code){ //= 수량이 있으면 if(obj1.value != ""){ // 수량이 숫자타입인지 체크 if(amt_FormatNum(obj1, sMsg)){ obj1.value = CommaNum(FormatRound(obj1.value, 0)); //= 수량,, 소수점 0자리 } } obj3.value = CommaNum(list_Item_AmouFill(obj1, obj2, obj3)); //= 공급가액 입력 /************************** * 총금액 표시 **************************/ auto_TotCal(gbn_code); } /** * 단가금액 입력하고 OnBlur시 금액형식 표시 및 수량 곱하여 공급가액 표시하기 * obj1 : 수량 * obj2 : 매입단가 * obj3 : 합계 * sMsg : 오류메시지 */ function list_Basi_Amou(obj1, obj2, obj3, sMsg, gbn_code){ //= 단가금액이 있으면 if(obj2.value != ""){ if(amt_FormatNumChk(obj2, sMsg)){ obj2.value = CommaNum(FormatRound(obj2.value, 0)); //= 매입단가 금액,, 소수점 0자리 // form1["list_Item_Amou"+num].value = CommaNum(list_Item_AmouFill(num)); } } obj3.value = CommaNum(list_Item_AmouFill(obj1, obj2, obj3)); //= 합계 입력 /************************** * 총금액 표시 **************************/ auto_TotCal(gbn_code); } /** * 공급가액 입력하고 OnBlur시 금액표시하기 * obj3 : 합계 * sMsg : 오류메시지 */ function list_Item_Amou(obj3, sMsg, gbn_code){ if(obj3.value != ""){ if(amt_FormatNumChk(obj3, sMsg)){ obj3.value = CommaNum(FormatRound(obj3.value, 0)); //= 합계액,, 소수점 0자리 } } /************************** * 총금액 표시 **************************/ auto_TotCal(gbn_code); } /** * 매입단가와 수량을 구하여 합계 정하기 * obj1 : 수량 * obj2 : 매입담가 */ function list_Item_AmouFill(obj1, obj2, obj3){ var list_item_quan ; //= 수량 var list_basi_amou; //= 단가 var list_item_amou = ""; //= 공급가액 list_item_quan = TrimNumChk(obj1.value); // 수량 list_basi_amou = TrimNumChk(obj2.value); // 단가 // 새롭게 추가 list_item_amou = TrimNumChk(obj3.value); // 합계 if(list_item_quan == "" || list_item_quan=="0") list_item_quan = "1"; if(list_basi_amou != "" && isNumberMinus(list_basi_amou) && list_basi_amou != "0" && list_item_quan != "" && isNumberChk(list_item_quan) && list_item_quan != "0") { if(list_basi_amou != "" && isNumberMinus(list_basi_amou) && list_item_quan == ""){ // 단가금액은 있고 수량이 없을경우 list_item_amou = FormatRound(eval(list_basi_amou), 0); //= 소수점 0자리 } if(list_basi_amou != "" && isNumberMinus(list_basi_amou) && list_item_quan != "" && isNumber(list_item_quan)){ // 단가금액과 수량이 모두 있을경우 list_item_amou = FormatRound(eval(list_basi_amou * list_item_quan), 0); //= 소수점 0자리 } } return list_item_amou; } /** * 합계 */ function auto_TotCal(gbn_code){ var form1 = document.contForm; var list_item_quan = "0"; //= 수량 var list_basi_amou = "0"; //= 매입단가 var list_item_amou = "0"; //= 합계 var tbody = document.getElementById('prodTable').getElementsByTagName("TBODY")[0]; var all_el = tbody.all.tags("input"); for(var i=0; i< all_el.length; i++){ // 수량 if(all_el[i].name.indexOf("A")>-1){ if(TrimNum(all_el[i].value) != "") list_item_quan = eval(list_item_quan) + eval(TrimNum(all_el[i].value)) ; } // 매입단가 if(all_el[i].name.indexOf("B")>-1){ if(TrimNumChk(all_el[i].value) != "") list_basi_amou = eval(list_basi_amou) + eval(TrimNumChk(all_el[i].value)) ; } // 합계 if(all_el[i].name.indexOf("C")>-1){ if(TrimNumChk(all_el[i].value) != "") list_item_amou = eval(list_item_amou) + eval(TrimNumChk(all_el[i].value)) ; } } form1[gbn_code+"_cont_attrQ01"].value = CommaNum(list_item_quan); form1[gbn_code+"_cont_attrP01"].value = CommaNum(list_basi_amou); form1.cont_amt.value = CommaNum(list_item_amou); } /****************** E N D ********************/ /**************************************************************/