⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 billoutstock.js

📁 进销存软件源代码
💻 JS
📖 第 1 页 / 共 2 页
字号:
function EnterKeyDo(doFun){if (window.event.keyCode==13)doFun();}

function printClick(fun){
	if (bdID.value.length==0) alert ('请打开要打印的单据!!');
	else
		if (!fun) window.open('/server/'+RootID+'/Print/default.asp?ID='+bdID.value+'&t='+new Date().valueOf(),'_blank');
		else window.open('/server/'+RootID+'/Print/default.asp?Preview=1&ID='+bdID.value+'&t='+new Date().valueOf(),'_blank');
}

var gDetail,iPanelx=0,iPanely=0;
bdPanel.style.left=0;
bdPanel.style.top=0;
bdPanel.style.backgroundColor=document.bgColor;

function panelShow(idCtrl,idPanel,idChild,dir){
	var coll=idPanel.all.tags('div');
	for (i=0;i<coll.length;i++){
		if (coll(i)==idChild)
			coll(i).style.display='block';
		else
			coll(i).style.display='none';
	}
	idPanel.style.display='block';
	var rect=idCtrl.getBoundingClientRect();
	var rectPanel=idPanel.getBoundingClientRect();
	switch(dir){
		case 1:
			idPanel.style.left=rect.right-(rectPanel.right-rectPanel.left);
			idPanel.style.top=idCtrl.getBoundingClientRect().top;
			break;
		case 2:
			idPanel.style.left=rect.left;
			idPanel.style.top=rect.bottom;
			break;
		case 3:
			idPanel.style.left=rect.right-rectPanel.right-rectPanel.left;
			idPanel.style.top=rect.bottom;
			break;
		default:
			idPanel.style.left=rect.left;
			idPanel.style.top=rect.top;
	}
	idPanel.style.left=parseInt(idPanel.style.left)+document.body.scrollLeft;
	idPanel.style.top=parseInt(idPanel.style.top)+document.body.scrollTop;
}

function ecbDetail(eo,szEvent,x,y){
	if (szEvent=='MOUSECLICK'){
		if (bdPanel.style.display=='block') return panelHide();
		iPanelx=gDetail.showpos+x;
		iPanely=y;
		if (iPanelx>=gDetail.data.length)
			return;
		//有数据
		switch(y){
			case 0:
			case 1:
			case 2:
			case 3:
				panelShow(eo.grid.rows(x+1).cells(y+1),bdPanel,bdPanelProduct,1);
				break;
			case 5:
				txtNumeric.value=gDetail.data[iPanelx][iPanely];
				panelShow(eo.grid.rows(x+1).cells(y+1),bdPanel,bdPanelNumeric);
				txtNumeric.focus();
				break;
			case 6:
				txtNumeric.value=gDetail.data[iPanelx][iPanely];
				panelShow(eo.grid.rows(x+1).cells(y+1),bdPanel,bdPanelNumeric);
				txtNumeric.focus();
				break;
			case 8:
				txtNumeric.value=gDetail.data[iPanelx][iPanely];
				panelShow(eo.grid.rows(x+1).cells(y+1),bdPanel,bdPanelNumeric);
				txtNumeric.focus();
				break;
			case 10:
				txtNumeric.value=gDetail.data[iPanelx][iPanely];
				panelShow(eo.grid.rows(x+1).cells(y+1),bdPanel,bdPanelNumeric);
				txtNumeric.focus();
				break;
			case 14:
				txtMemo.value=gDetail.data[iPanelx][iPanely];
				panelShow(eo.grid.rows(x+1).cells(y+1),bdPanel,bdPanelMemo);
				txtMemo.focus();
				break;
		}
	}
}
function cbStockSelect(ifrid, fun, data){
	if (fun=='data'){
		gDetail.data[iPanelx][13]=data[1];
		gDetail.refreshAll(1,0);
		return;
	}
	return defcbiFrame(ifrid, fun, data);
}
function panelHide(){bdPanel.style.display='none';}
function panelDelete(){
	panelHide();
	gDetail.remove(iPanelx);
	gDetail.refreshAll(1,0);
}
function panelMemoModify(){
	panelHide();
	if (iPanelx<gDetail.data.length){
		gDetail.data[iPanelx][iPanely]=txtMemo.value;
		gDetail.refreshAll(1,0);
	}
}
function panelNumericModify(){
	panelHide();
	if (iPanelx<gDetail.data.length){
		if (isNaN(parseFloat(txtNumeric.value)))
			gDetail.data[iPanelx][iPanely]=0;
		else
			gDetail.data[iPanelx][iPanely]=txtNumeric.value;
		switch(iPanely){
			case 5:
				 gDetail.data[iPanelx][7]=fixFloat((parseFloat(gDetail.data[iPanelx][4])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][9]=fixFloat((parseFloat(gDetail.data[iPanelx][8])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][11]=fixFloat((parseFloat(gDetail.data[iPanelx][10])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][13]=fixFloat((parseFloat(gDetail.data[iPanelx][11])-parseFloat(gDetail.data[iPanelx][7])),4);
				 break;
			case 6:
				 gDetail.data[iPanelx][4]=fixFloat((parseFloat(gDetail.data[iPanelx][8])/fixFloat(1+parseFloat(gDetail.data[iPanelx][6]))),4);
				 gDetail.data[iPanelx][7]=fixFloat((parseFloat(gDetail.data[iPanelx][4])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][10]=fixFloat((parseFloat(gDetail.data[iPanelx][10])*fixFloat(1+parseFloat(gDetail.data[iPanelx][6]))),4);
				 gDetail.data[iPanelx][11]=fixFloat((parseFloat(gDetail.data[iPanelx][10])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][13]=fixFloat((parseFloat(gDetail.data[iPanelx][11])-parseFloat(gDetail.data[iPanelx][7])),4);
				break;
			case 8:
			     gDetail.data[iPanelx][4]=fixFloat((parseFloat(gDetail.data[iPanelx][8])/fixFloat(1+parseFloat(gDetail.data[iPanelx][6]))),4);
				 gDetail.data[iPanelx][7]=fixFloat((parseFloat(gDetail.data[iPanelx][4])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][9]=fixFloat((parseFloat(gDetail.data[iPanelx][8])*parseFloat(gDetail.data[iPanelx][5])),4);
				 gDetail.data[iPanelx][13]=fixFloat((parseFloat(gDetail.data[iPanelx][11])-parseFloat(gDetail.data[iPanelx][7])),4);
				 break;
			case 10:
				gDetail.data[iPanelx][11]=fixFloat((parseFloat(gDetail.data[iPanelx][10])*parseFloat(gDetail.data[iPanelx][5])),4);
				gDetail.data[iPanelx][13]=fixFloat((parseFloat(gDetail.data[iPanelx][11])-parseFloat(gDetail.data[iPanelx][7])),4);
				break;
		}
		gDetail.calcTotal();
		gDetail.refreshAll(1,0);
	}
}

function productdetailproc(method,ebo){
	switch (method){
		case EBO_GET:
			outdata[outdata.length]=ebo.serversidename+'_rows';
			outdata[outdata.length]=ebo.id.data.length;
			outdata[outdata.length]=ebo.serversidename+'_cols';
			outdata[outdata.length]=ebo.id.data.length;
			for (var i=0;i<ebo.id.data.length;i++){
				for (var j=0;j<ebo.id.data[i].length;j++){
					if (j==1||j==2||j==3) continue;
					outdata[outdata.length]=ebo.id.title[j+1].param+i;
					outdata[outdata.length]=ebo.id.data[i][j];
				}
			}
			break;
		case EBO_SET:
			var rows=parseInt(indata.item(ebo.serversidename+'_rows'));
			var cols=parseInt(indata.item(ebo.serversidename+'_cols'));
			ebo.id.data.length=0;
			for (var i=0;i<rows;i++){
				ebo.id.data[i]=new Array();
				for (var j=0;j<cols;j++){
					ebo.id.data[i][j]=indata.item(ebo.id.title[j+1].param+i);
					//if (j==10) ebo.id.data[i][9]=fixFloat((ebo.id.data[i][10]-ebo.id.data[i][8]),2);
				}
			}
			break;
		default:
			break;
	}
	return (true);
}

gDetail = new ZYDGRID(new ZYDGRIDFORIEBUG(),bdBodyDetail,10,15,'100%','',1,testUndefine,testUndefine,ecbDetail);
function InitTitle(t){
t[0].text='№';
t[1].text='序号';
t[1].width=1;
t[1].param='Detail_0_';
t[2].text='编号';
t[2].width=80;
t[2].param='Detail_1_';
t[3].text='名称';
t[3].width=160;
t[3].param='Detail_2_';
t[4].text='规格';
t[4].width=60;
t[4].param='Detail_3_';
t[5].text='进价';
t[5].width=60;
t[5].isNumeric=1;
t[5].formAlign='right';
t[5].param='Detail_4_';
t[6].text='数量';
t[6].width=60;
t[6].isNumeric=1;
t[6].formAlign='right';
t[6].param='Detail_5_';
t[7].text='税率';
t[7].width=40;
t[7].isNumeric=1;
t[7].formAlign='right';
t[7].param='Detail_6_';
t[8].text='进价金额';
t[8].width=80;
t[8].isNumeric=1;
t[8].isTotal=1;
t[8].formAlign='right';
t[8].param='Detail_7_';
t[9].text='含税进价';
t[9].width=80;
t[9].isNumeric=1;
t[9].isTotal=1;
t[9].formAlign='right';
t[9].param='Detail_8_';
t[10].text='进价含税金额';
t[10].width=100;
t[10].isNumeric=1;
t[10].isTotal=1;
t[10].formAlign='right';
t[10].param='Detail_9_';
t[11].text='含税零售价';
t[11].width=100;
t[11].isNumeric=1;
t[11].isTotal=1;
t[11].formAlign='right';
t[11].param='Detail_10_';
t[12].text='零售价含税金额';
t[12].width=120;
t[12].isNumeric=1;
t[12].isTotal=1;
t[12].formAlign='right';
t[12].param='Detail_11_';
t[13].text='零售价';
t[13].width=1;
t[13].param='Detail_12_';
t[14].text='进销差额';
t[14].width=80;
t[14].isNumeric=1;
t[14].isTotal=1;
t[14].formAlign='right';
t[14].param='Detail_13_';
t[15].text='备注';
t[15].width=80;
t[15].param='Detail_14_';

}
InitTitle(gDetail.title);
gDetail.refreshAll();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -