<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%@page contentType="text/html; charset=UTF-8"%> <%@page import="com.csc.library.entry.*,com.csc.library.system.*,com.csc.library.utilities.*,com.csc.library.session.*,com.csc.library.database.*,com.csc.library.components.*,java.util.*"%> <jsp:useBean id="PRU170" class="com.csc.library.system.Task" scope="page" /> <jsp:useBean id="SALATYPE" class="com.csc.library.system.Task" scope="page" /> <% CheckNull chk = new CheckNull(); PRU170.setChannel(request ,response); ProcessEntry screen=(ProcessEntry)PRU170.process("ProcessEntry","Process"); screen.process(); SALATYPE.setChannel(request, response); HelpEntry salatype = (HelpEntry) SALATYPE.process("HelpEntry","MSALATYPE0HELP"); String tname = "สร้าง Data บัญชีแยกประเภท"; String ename = "Generate Payroll Journal Voucher Data"; salatype.getInquiry().setFilter("COMPANYID = '"+salatype.getUProfile().get("companyid")+"' AND ACTIVE_STATUS ='1'"); salatype.getInquiry().setOrderBy("codeid asc"); salatype.getInquiry().refresh(); salatype.referLangOn(); String jvid = chk.chkNullString(request.getParameter("__condition$jvid"),""); DbInquiry mbranch = new InitialInquiry(salatype.getUProfile()).getDbInquiry("MBRANCH"); mbranch.setColumn("*"); DbInquiry mjvsqno = new InitialInquiry(salatype.getUProfile()).getDbInquiry("MJVSEQUENCENUMBER"); mjvsqno.setColumn("*"); DbInquiry jvdatasetup = new InitialInquiry(salatype.getUProfile()).getDbInquiry("MJVDATASETUP"); jvdatasetup.setColumn("*"); jvdatasetup.setFilter("COMPANYID = '"+salatype.getUProfile().get("companyid")+"' AND JVID ='"+jvid+"'"); jvdatasetup.setOrderBy("JVID ASC"); jvdatasetup.putChild(mbranch); jvdatasetup.putChild(mjvsqno); jvdatasetup.refresh(); jvdatasetup.next(); jvdatasetup.referLangOn(); %> <html ng-app="myHR"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <link type="text/css" rel="stylesheet" href="../CSS/TISCO.css"/> <link href="../CSS/bootstrap.css" rel="stylesheet" type="text/css"> <link href="../CSS/bootstrap_csc_backend.css" rel="stylesheet" type="text/css"> <script type="text/javascript" src="../JS/jquery-2.1.3.min.js"></script> <script type='text/javascript' src="../JS/bootstrap.js"></script> <script language="JavaScript" src="../JS/SCREEN.js"></script> <script src="../JS/angular-1.3.15/angular.js" type="text/javascript"></script> <script src="../JS/ANGULAR/SCREEN_ANGULAR.js" type="text/javascript"></script> <script src="../JS/jquery-1.11.2.js" type="text/javascript"></script> <script src="../JS/jquery-ui-1.11.4.js" type="text/javascript"></script> <script type='text/javascript' src='/hr/dwr/interface/SearchDWR.js'></script> <script type='text/javascript' src='/hr/dwr/engine.js'></script> <script language="javascript">setLang("<%=screen.getUProfile().get("lang")%>");</script> <script language="javascript">getTitleName();</script> <script language="javascript"> function process() { with(document.cscform){ if(chkReq()){ var jvid = __condition$jvid.value; var filter = "jvid = '"+jvid+"'"; SearchDWR.search1(new Array("mjvdatasetup", "jvid", filter, ""), function(data){ var pass = true; if(data[0] === jvid){ var lang = '<%=screen.getUProfile().get("lang")%>'; var msg = "JV ID has Duplicate\nDo you want process again?"; if(lang === 'tha'){ msg = "JV ID ซ้ำ\nคุณต้องการประมวลผลซ้ำหรือไม่?"; } pass = confirm(msg); } if(pass){ bCon=confirm("Generate Payroll Journal Voucher Data"); if (bCon==true) { setBeforeSave(); __condition$salatype.value = getSalatype(); __cmd.value = "save"; submit(); } } else { __condition$jvid.focus; } }); } } } function deleteprocess() { with(document.cscform){ if(__condition$jvid.value === ""){ var msg = '<%=screen.getUProfile().get("lang")%>' === "THA" ? "กรุณาเลือก JV ID." : "Please Select JV ID."; alert(msg); __condition$jvid.focus; } else { bCon=confirm("Do you want to delete JV Data?"); if (bCon==true) { __condition$deletejvid.value = "1"; __cmd.value = "save"; submit(); } } } } function chkReq(){ with(document.cscform){ var lang = '<%=screen.getUProfile().get("lang")%>'; if(__condition$jvid.value === "") { var label = 'JV ID'; if(lang === 'tha'){ alert("กรุณากรอกข้อมูล "+label); } else { alert("Please input "+label); } __condition$jvid.focus; return false; } setBeforeSave(); if(__condition$periodcurrent.value === "" && __condition$periodprevious.value === ""){ var label = 'Period'; if(lang === 'tha'){ alert("กรุณาเลือก "+label); } else { alert("Please choose "+label); } return false; } return true; } } function goHelp(helpName,inputName){ var fixCon; var helpReturn; if(inputName=="__condition$branchid" ){ document.cscform.__chkhelp.value = ""; helpReturn="__condition$branchid:branchid,MBRANCH@EDESC|DESC"; linkHelp_Return(helpName,helpReturn); } else if (inputName=="__condition$sqcode" ){ document.cscform.__chkhelp.value = ""; helpReturn="__condition$sqcode:sqcode,MJVSEQUENCENUMBER@SQNAME"; linkHelp_Return(helpName,helpReturn); } else if (inputName=="__condition$jvid" ){ document.cscform.__chkhelp.value = "HELP"; fixCon = ""; helpReturn="__condition$jvid:jvid,__condition$desc:description,__condition$salatype:salatype,__condition$periodcurrent:pcurrent,__condition$periodcurrent:pprevious,__condition$branchid:branchid,__condition$sqcode:sqcode,MBRANCH@EDESC|DESC,MJVSEQUENCENUMBER@SQNAME"; jvidreturn(helpName,helpReturn,fixCon); } } function jvidreturn(help,input, fixCon){ with(document.cscform){ var nInput = input; var filter = fixCon || __fixCon.value; if(input.indexOf(":")>0){ nInput=input.substring(0,input.indexOf(":")); } obj = eval("document.cscform."+nInput); if((obj=="")||(obj.value=="")){ var param="PRU084.jsp?__helpName="+help+"&__helpReturn="+input+"&__pageCall="+__screen.value+"&__fixCon="+filter+"&__checkVerify=off"; }else{ var param="PRU084.jsp?__helpName="+help+"&__helpReturn="+input+"&__pageCall="+__screen.value+"&__fixCon="+filter+"&__checkVerify=off"; } win = window.open(param,"Help","left=150,top=150,width=1200,height=400,toolbar=no,status=yes,scrollbars=yes,resizable=yes"); if(window.focus){win.focus();} } } function postReturn(){ // how to use it,, An Override in your Page. with( document.cscform ){ if(__chkhelp.value === "HELP"){ __chkhelp.value = ""; __cmd.value = "HELP"; submit(); } } } </script> <script> //--------------------------- add MyOption----------------------- // Compare two options within a list by VALUES function compareOptionValues(a, b){ // Radix 10: for numeric values // Radix 36: for alphanumeric values var sA = parseInt( a.value, 36 ); var sB = parseInt( b.value, 36 ); return sA - sB; } // Compare two options within a list by TEXT function compareOptionText(a, b){ // Radix 10: for numeric values // Radix 36: for alphanumeric values var sA = parseInt( a.text, 36 ); var sB = parseInt( b.text, 36 ); return sA - sB; } function setBeforeSave(){ with(document.cscform){ addList2Field(__asperiodcurrent,__condition$periodcurrent); addList2Field(__asperiodprevious,__condition$periodprevious); } } function addList2Field(listname,fieldname){ with(document.cscform){ fieldname.value=""; for(var i=0;i<listname.length;i++){ fieldname.value+=listname.options[i].value; if(i<listname.length-1){ fieldname.value+=","; } } } } function findKey(objOption,myList){ var msg = ""; var lang = '<%=screen.getUProfile().get("lang")%>'; if(lang === 'tha'){ msg = " มีอยู่ในรายการแล้ว\nกรุณาตรวจสอบ!!"; } else { msg = " Duplicate data\nPlease check!!"; } for ( var j = 0 ; j < objOption.length; j++ ){ for(var i=0;i < myList.length;i++){ if(objOption[j].value == myList.options[i].value){ alert(myList.options[i].value + msg); return true; }//if }//for }//for return false; } function getElement(str){ if(str=="__condition$periodcurrent"){ return document.forms[0].__condition$periodcurrent }else if(str=="__condition$periodprevious"){ return document.forms[0].__condition$periodprevious } return null; } function delteOption(objmyList_temp){ var objmyList = getMyChildoption(objmyList_temp) for(i=objmyList.length;i > 0;i--){ if(objmyList.options[i-1].selected == true){ objmyList.options[i-1] = null; } } } function setMyaslist(objmyList){ var myStr=""; for(i=0;i <objmyList.length;i++){ if(objmyList.options[i].value.indexOf("#")>-1){ myStr+=objmyList.options[i].value; } } return myStr; } function getMyParenastype(){ return window.parent.getMyastype(); } function setmFixcon(){ return "astype='"+getMyParenastype()+"'"; } function getMyChildoption(ele){ if(ele=="__asperiodcurrent"){ document.forms[0].__ele.value="__condition$periodcurrent"; return document.forms[0].__asperiodcurrent; }else if(ele=="__asperiodprevious"){ document.forms[0].__ele.value="__condition$periodprevious"; return document.forms[0].__asperiodprevious; } } function onmyDblClick(objmyList){ for(i=objmyList.length;i > 0;i--){ if(objmyList.options[i-1].selected == true){ document.cscform.__tmpClick.value=objmyList.options[i-1].value; showAnswer(setmFixcon(),objmyList.options[i-1].value); } } } function writeToOption(newDestList,destList){ var tempData=""; for ( var j = 0; j < newDestList.length; j++ ){ if ( newDestList[ j ] != null ){ destList.options[ j ] =new Option(newDestList[ j ].text,newDestList[ j ].value); tempData+=newDestList[ j ].value+","; } } tempData = tempData.substring(0,tempData.length-1); setValue(tempData,getElement(document.forms[0].__ele.value)); } function setValue(data,objEle){ objEle.value=data; } function insertList(){ if('<%=chk.chkNullString(jvdatasetup.getString("pcurrent"),"null")%>'!="null"){ setSelectList('<%=jvdatasetup.getString("pcurrent")%>','__asperiodcurrent'); } if('<%=chk.chkNullString(jvdatasetup.getString("pprevious"),"null")%>'!="null"){ setSelectList('<%=jvdatasetup.getString("pprevious")%>','__asperiodprevious'); } } function setSelectList(listArr,elementName){ addOption(addlist(listArr,elementName),elementName); } function addlist(listArr,elementName){ var dataList = listArr.split(","); var cCount= dataList.length; var eleSelect = getMyChildoption(elementName); var j=0; with(document.cscform){ newDatalist = new Array(cCount); for(i=0;i<cCount;i++){ newDatalist[ j++ ] = new Option( dataList[i],dataList[i] ); } } return newDatalist; } function addOption(objOption,ele){ addToOption(objOption,getMyChildoption(ele)) ; } function addToOption(objOption,destList){ var lengthAll=parseInt(objOption.length)+parseInt(destList.options.length); newDestList = new Array( lengthAll ); var clen=0; for( len = 0; len <destList.options.length; len++ ){ if ( destList.options[ len ] != null ){ newDestList[ len ] = new Option( destList.options[ len ].text, destList.options[ len ].value, destList.options[ len ].defaultSelected, destList.options[ len ].selected ); clen++; } } for ( var j = 0 ; j < objOption.length; j++ ){ if ( objOption[ j ] != null ){ newDestList[ clen ] = objOption[ j ]; clen++; } } newDestList.sort( compareOptionValues ); for( var i = destList.options.length - 1; i >= 0; i-- ){ if ( destList.options[i] != null ){ destList.options[i] = null; } } writeToOption(newDestList,destList); } function showHelp(ele){ var invalue = getSalatype(); var __helpName=""; if(ele=="__asperiodcurrent"){ __helpname="TPYTRAN1_DISTINCTGENDATE"; }else if(ele=="__asperiodprevious"){ __helpname="MEMPL_TAXM_DISTINCTGENDATE"; } invalue = invalue.replace(/,/g,"','"); //console.log(invalue); window.open("PRU170_HELP.jsp?ele="+ele+"&__helpName="+__helpname+"&invalue="+invalue,"Help","left=150,top=150,width=700,height=500,toolbar=no,status=no,scrollbars=no"); } </script> <%! public String getWhereCuz(String dataList){ String data[] = dataList.split(","); String whereCuz=""; for(int i=0;i<data.length;i++){ String value[] = data[i].split(" #"); whereCuz+="'"+value[0]+"',"; } whereCuz=whereCuz.substring(0,whereCuz.length()-1); return whereCuz; } public String getWhereCuz2(String dataList){ String data[] = dataList.split(","); String whereCuz=""; for(int i=0;i<data.length;i++){ String value[] = data[i].split(" #"); whereCuz+="'"+value[1]+"',"; } whereCuz=whereCuz.substring(0,whereCuz.length()-1); return whereCuz; } public String insertSelectOption(String __tableName,String __pkField,String dataLable,UIManager screen,Task ts,DbInquiry inq){ String optionStr=""; try{ DbInquiry pos = new InitialInquiry(screen.getUProfile()).getDbInquiry(__tableName); pos.setColumn(__pkField+",salatype"); String list=""; if(ts.getValue("cmd").equals("save")) list=ts.getValue(dataLable); else list=inq.getString(dataLable); String cuz=getWhereCuz(list); String cuz2=getWhereCuz2(list); pos.setFilter(__pkField+" in ("+cuz+") and salatype in ("+cuz2+")"); pos.refresh(); while(pos.next()){ String salatype = pos.getString("salatype"); String id = pos.getString(__pkField) + " #" + salatype; DbRecord msalatype = new InitialRecord(screen.getUProfile()).getDbRecord("MSALATYPE0"); msalatype.setColumn("codeid,tdesc,edesc"); msalatype.set("codeid", salatype); msalatype.search(); String detail = ""; if(screen.getUProfile().get("lang").equals("tha")){ detail = msalatype.getString("tdesc"); } else { detail = msalatype.getString("edesc"); } optionStr+="<option value='"+id+"' >"+id+" "+detail+"</option>"; } }catch(Exception e){ System.out.print(e); } return optionStr; } %> <script> $(function(){ $('input[name="__condition$jvid"]').keydown(function(event){ if (event.which === $.ui.keyCode.SPACE) { console.log( "SPACE" ); event.preventDefault(); } }); $(".selectall").change(function(){ var value = $(".selectall").prop('checked'); $(".salarytype").prop('checked',value); }); $(".salarytype").change(function(){ setSelectAll(); }); var cmd = '<%=chk.chkNullString(request.getParameter("__cmd"),"")%>'; if( cmd === "HELP"){ setSelectAll(); } }); function setSelectAll(){ var check = true; $(".salarytype").each(function(){ if(!$(this).prop('checked')){ check = false; } }); if(check){ $(".selectall").prop('checked',true); } else { $(".selectall").prop('checked',false); } } function getSalatype(){ var salatype = ""; $(".salarytype").each(function(){ if($(this).prop('checked')){ if(salatype !== ""){ salatype += ","; } salatype += $(this).val(); } }); return salatype; } </script> </head> <body leftmargin="0" topmargin="0" > <div align="center"> <div id="toolTipLayer" style="position:absolute; visibility: hidden"></div> <script language="javascript">initToolTips();</script> <form name="cscform" method="post" action="PRU170.jsp"> <input type="hidden" name="__cmd" value=""/> <input type="hidden" name="__screen" value="PRU170"/> <input type="hidden" name="__help" value=""/> <input type="hidden" name="__companyid" value="<%=screen.getUProfile().get("companyid")%>"/> <input type="hidden" name="__notNull" value=""/> <input type="hidden"name="__fixCon" value=""/> <input type="hidden" name="__referPage" value=""/> <input type="hidden" name="__process" value=""/> <input type="hidden" name="__tname" value="<%=tname%>"/> <input type="hidden" name="__ename" value="<%=ename%>"/> <input type="hidden" name="__ptype" value=""/> <input type="hidden" name="__chkhelp" value=""/> <input type="hidden" name="__prclass" value="GeneratePayrollJVData"/> <input type="hidden" name="__condition$periodcurrent" value=""/> <input type="hidden" name="__condition$periodprevious" value=""/> <input type="hidden" name="__condition$salatype" value=""/> <input type="hidden" name="__condition$deletejvid" value=""/> <input type="hidden" name="__ele" value=""/> <%=screen.getTagConfirm()%> <br> <table> <tr> <td class="header" colspan="2" >PRU170, <span swlang code="SW012726">Generate Payroll Journal Voucher Data</span> </td> </tr> <tr> <td> <table cellspacing="0" cellpadding="0"> <tr> <td class="blankspace"></td> </tr> <tr> <td> <table cellpadding="0" cellspacing="0"> <% int maxLine = 3; int round = 1; %> <tr> <td class="columnlabel"><script language="JavaScript">swapLang("JV ID");</script> * </td> <td class="columndata" colspan="<%=maxLine%>"> <input type="text" name="__condition$jvid" size="15" maxlength="15" value="<%=jvdatasetup.getString("jvid")%>"/> <a onmouseover="MM_swapImage('__condition$jvid_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)" onmouseout="MM_swapImgRestore()" href="javascript:goHelp('MJVDATASETUPHELP','__condition$jvid');"><img name="__condition$jvid_image" width="20" height="20" align="absmiddle" alt="SEARCH" src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" border="0"></a> </td> </tr> <tr> <td class="columnlabel"><script language="JavaScript">swapLang("Description");</script> </td> <td class="columndata" colspan="<%=maxLine%>"><input type="text" name="__condition$desc" value="<%=jvdatasetup.getString("description")%>" size="55" maxlength="100"></td> </tr> <tr> <td class="columnlabel"><script language="JavaScript">swapLang("Salary Type");</script> </td> <td class="columndata" colspan="<%=maxLine%>"><input type="checkbox" value="ALL" class="selectall"/> <span swlang code="SW002185">Select All</span></td> </tr> <% String salatypevalue = chk.chkNullString( jvdatasetup.getString("salatype"),"" ); List<String> salatypelist = Arrays.asList(salatypevalue.split(",")); while(salatype.nextRec()){ if( round == 1 ){ %> <tr> <td class="columnlabel"></td> <% } %> <td class="columndata"><input type="checkbox" value="<%=salatype.getDataLabel("codeid")%>" class="salarytype" <%if(salatypelist.contains(salatype.getDataLabel("codeid"))){%>checked<%}%>/> <%=salatype.getDataLabel("tdesc")%></td> <% if( round == maxLine ){ %> </tr> <% round = 1; } else { round++; } } %> <tr> <td class="columnlabel"><span swlang code="SW011908">Period Current</span><!-- <script language="JavaScript">swapLang("Period Current");</script> --> </td> <td class="columnobject1" colspan="<%=maxLine%>"> <select name="__asperiodcurrent" style="width:75%; height:70px;" size="10" multiple> <%=insertSelectOption("TPYTRAN1_DISTINCTGENDATE","GENDATE","PCURRENT",screen,PRU170,jvdatasetup)%> </select> <a href="javascript:showHelp('__asperiodcurrent');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image43','','../IMAGES/BUTTON/SWAP/HELP_SWAP20.gif',1)" ><img src="../IMAGES/BUTTON/MAIN/SEARCH24.gif" alt="" name="Image161" width="24" height="24" border="0" align="absmiddle" id="Image161"></a> <a href="javascript:delteOption('__asperiodcurrent')"><img src="../IMAGES/BUTTON/MAIN/DEL24.gif" alt="" name="Image161" width="24" height="24" border="0" align="absmiddle" id="Image161"></a> </td> </tr> <tr> <td class="columnlabel"><span swlang code="SW011909">Period Previous</span><!-- <script language="JavaScript">swapLang("Period Previous");</script> --> </td> <td class="columnobject1" colspan="<%=maxLine%>"> <select name="__asperiodprevious" style="width:75%; height:70px;" size="10" multiple> <%=insertSelectOption("MEMPL_TAXM_DISTINCTGENDATE","GENDATE","PPREVIOUS",screen,PRU170,jvdatasetup)%> </select> <a href="javascript:showHelp('__asperiodprevious');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image43','','../IMAGES/BUTTON/SWAP/HELP_SWAP20.gif',1)" ><img src="../IMAGES/BUTTON/MAIN/SEARCH24.gif" alt="" name="Image161" width="24" height="24" border="0" align="absmiddle" id="Image161"></a> <a href="javascript:delteOption('__asperiodprevious')"><img src="../IMAGES/BUTTON/MAIN/DEL24.gif" alt="" name="Image161" width="24" height="24" border="0" align="absmiddle" id="Image161"></a> </td> </tr> <tr> <td class="columnlabel"><script language="JavaScript">swapLang("Company Branch");</script> </td> <td class="columnobject1" colspan="<%=maxLine%>"> <input name="__condition$branchid" type="text" size="5" value="<%=jvdatasetup.getString("branchid")%>"> <a onmouseover="MM_swapImage('__condition$branchid_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)" onmouseout="MM_swapImgRestore()" href="javascript:goHelp('MBRANCHHELP','__condition$branchid');"><img name="__condition$branchid_image" width="20" height="20" align="absmiddle" alt="SEARCH" src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" border="0"></a> <input name="MBRANCH@EDESC|DESC" type="text" disabled value="<%=jvdatasetup.getString("MBRANCH","EDESC")%>" size="40"> </td> </tr> <tr> <td class="columnlabel"><span swlang code="SW012725">JV SQ. No.</span><!-- <script language="JavaScript">swapLang("JV SQ. No.");</script> --> </td> <td class="columnobject1" colspan="<%=maxLine%>"> <input name="__condition$sqcode" type="text" size="5" value="<%=jvdatasetup.getString("sqcode")%>"> <a onmouseover="MM_swapImage('__condition$sqcode_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)" onmouseout="MM_swapImgRestore()" href="javascript:goHelp('MJVSEQUENCENUMBERHELP','__condition$sqcode');"><img name="__condition$sqcode_image" width="20" height="20" align="absmiddle" alt="SEARCH" src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" border="0"></a> <input name="MJVSEQUENCENUMBER@SQNAME" type="text" disabled value="<%=jvdatasetup.getString("MJVSEQUENCENUMBER","SQNAME")%>" size="40"> </td> </tr> </table> </td> </tr> <tr> <td class="buttonline" colspan="7"><div align="center"> <button type="button" class="btn btn-primary width100" swlang code="SW000123" onClick="deleteprocess();">DELETE</button> <button type="button" class="btn btn-primary width100" swlang code="SW013173" onClick="process();">PROCESS</button> </div> </td> </tr> <tr> <td class="blankspace"></td> </tr> </table> </td> </tr> <tr > <td class="bottom" > </td> </tr> </table> <script language="JavaScript">checkConfirm();</script> </form> </div> </body> </html>